0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

采用HDL语言编程和FPGA器件实现悬挂运动物体的精确控制设计

电子设计 来源:郭婷 作者:电子设计 2019-07-29 08:02 次阅读

在现代的工业控制、车辆运动和医疗设备等系统中,悬挂运动系统的应用越来越多,在这些系统中悬挂运动部件通常是具体的执行机构,因而悬挂部件的运动精确性是整个系统工作效能的决定因素,而在实际中实现悬挂运动控制系统的精确控制是非常困难的。靠改变悬挂被控对象的绳索长短来控制被控对象运动轨迹的悬挂运动控制系统,在生产控制等领域有很广的应用范围,但受技术上的制约,使用也有一定限制。传统的悬挂控制系统设计是采用单片机作为系统控制器,通过软件编程实现各种算法和逻辑控制,但由于其芯片资源有限,运算速率慢和易受干扰等因素,因而在较大系统的开发上受到限制。FPGA可实现各种复杂的逻辑功能,密度高,体积小,稳定性高,运算速度快,还可进行软件仿真和调试,适合作为大规模实时系统的控制核心。本文采用Verilog FPGA设计悬挂运动控制系统的控制器,通过输入模块传送控制参数,采用HDL语言编程实现的控制算法,驱动步进电机,对悬挂运动物体进行精确的控制。

1 系统设计方案

本设计具体设计目标为控制系统能够通过键盘或其他方式任意设定物体坐标点参数,且物体在80 cm×100 cm的范围内做自行设定的运动,运动轨迹既有曲线(圆),也有直线(任意两点和定点),物体在运动时能够在板上画出运动轨迹,限制在一定的时间内完成。根据设计指标,需要实现勾画设定轨迹和对设定轨迹的搜寻功能,并能实时地显示物体中画笔所在位置坐标。其系统方案框图如图1所示。

采用HDL语言编程和FPGA器件实现悬挂运动物体的精确控制设计

控制模块是整个系统的核心,键盘输入模块产生按键信号,按键信号送人FPGA对物体进行设置校正以及轨迹参数设定,FPGA对送来的信号进行分析、运算、处理,将控制信号输送到电机驱动模块,控制电动机的转速,使物体的运动轨迹得以控制,同时由显示模块显示物体中画笔的坐标。

2 系统各模块的设计与实现

2.1 控制模块

系统结构图如图2所示。其中,控制模块是系统设计的核心,由FPGA实现。此模块是通过HDL硬件描述语言,在智能型可编程逻辑器件开发试验系统KH- 310的硬件平台来控制设计的,利用FPGA芯片可实现对步进电机的控制功能。功能包括:步进电机的正转、反转、定位功能及调速等功能。FPGA由输入的数据来计算物体要移动的距离,直接发出控制脉冲控制电机的转动,进而控制物体的运动方向。由于少了反馈电路,系统的精度只与FPGA采用的算法准确性有关,此种方式电路结构简单,成本低且易于调整和维护,是一种较理想的方式。

采用HDL语言编程和FPGA器件实现悬挂运动物体的精确控制设计

2.2 键盘模块

键盘是实现人机交流的一种装置。在本系统中,采用4×4矩阵式键盘共阳极接法。键盘上的每一个按键其实就是一个开关电路,当某键被按下时,该按键的接点会呈现0的状态设置键;反之,未被按下时则呈现逻辑1的状态。键盘各键布局及功能介绍如图3所示。

采用HDL语言编程和FPGA器件实现悬挂运动物体的精确控制设计

“0”~“9”:数字输入,用于设定一个坐标点的X,Y值;而且键1、键2、键3、键4、键5、键6和键9具有第二功能。

“A”:启动键,用于所选运行方式的开始运行控制键。

“B”:复位,用于各项初始化。

“C”:确定键,用于设置、方式输入值的确定。

“D”:停止,用于停止步进电机转动。

“E”:设置键,手动对位或任意设定坐标点参数键,按上、下、左、右键进行手动对位控制,再按确认键确认(图4所示)。

采用HDL语言编程和FPGA器件实现悬挂运动物体的精确控制设计

“F”:方式键:首先按下方式键,然后按数字键选择方式再确认(如图5所示),方式有以下几种:

方式1:归位,让物体自行回到原点。

方式2:做自行设定的运动。

方式3:画圆,首先利用数字键设置圆半径进行确认后,再按启动键运行。

方式4:定点运动,首先利用数字键设置一个坐标点的X,Y值进行确认后,再按启动键运行。

方式5:寻迹,首先让物体运行在轨迹起点,按下启动键开始寻迹。

2.3 电机驱动模块

采用功率驱动电路L298内含4通道逻辑驱动电路,分别控制步进电机四组线圈A,/A,B,/B通电与否。步进电机的激磁信号则由智能型可编程逻辑器件开发试验系统KH-310试验平台上的JP4的信号输入控制,分别驱动步进电机的A,/A,B,/B线圈,采用两相激磁方式。

2.4 电机电路

电机是整个系统实现功能的主要载体之一,它的主要功能是通过对缠绕其上的绳子的伸缩来实现悬挂物体的运动。步进电机是一种将电脉冲转化为角位移的执行机构。本系统使用42BYG型号步进电机,其原理是将电脉冲信号转换成角位移,它的转子的转角与输入的电脉冲数成正比,转速与输入的电脉冲的频率成正比,旋转方向由脉冲的分配顺序决定,可以通过控制脉冲个数控制步进电机的角位移量,从而达到准确定位的目的。

2.5 显示模块

液晶显示器是将液晶置于两片导电玻璃之间,靠两个电极间电场的驱动,引起液晶分子扭曲向列的电光效应,在电源的开关之间控制光源透射或遮蔽,产生明暗两种效果。本系统采用16×2 LCD液晶显示屏作为人机对话的友好界面。系统设计实现物体所在坐标和画笔所画线段的长度的动态显示,并有输入光标跟随和开机等待提示等人性化功能。

3 系统软件设计

设计系统的总流程相对比较简单,采用VerilogHDL语言。为达到设计指标的控制精度和响应时间,针对各项功能设计相应的控制算法。系统流程图如图6所示。

采用HDL语言编程和FPGA器件实现悬挂运动物体的精确控制设计

3.1 两点运动算法与实现

采用数学建模法,运用几何知识把物体运动轨迹和两个电机所在的位置联系起来,通过坐标用数学表达式表示出来,并转换成电机所要转动的偏移量,最后把偏移量转化为电机所要转的速度。结合图7说明,设L1为左绳在d点的线长,L2为右绳在d点的线长,L1‘为左绳在e点的线长,L2’为右绳在e点的初始线长,被控对象物体的受限区域的顶点坐标分别为a(xa,ya),b(xb,yb), c(xc,yc),o(0,0),当悬挂物从d点运动到e点时,左绳和右绳的长短必然发生变化,电机M1的收放线长度为△L1,当△L10时,电机反转。电机M2的收放线长度为△L2,当△L20时,电机正转。计算如下:

采用HDL语言编程和FPGA器件实现悬挂运动物体的精确控制设计

从键盘输入起始坐标值(xd,yd),将(xd,yd)代入式(1)和式(2)中计算出L1和L2,再从键盘输入终点坐标值(xe,ye)代入式(3)和式(4)中计算出L1‘和L2’,两点(定点)运动算法流程图如图8所示。

采用HDL语言编程和FPGA器件实现悬挂运动物体的精确控制设计

3.2 做圆运动的算法和实现

本系统设计指标悬挂物能够画一个圆,采用微分曲线直线逼近法,首先将圆周等分为N 份,将每小份弧线段等效为直线段画出,N越大,曲线就越光滑。设所画圆的圆心坐标为(x0,y0),半径为25 cm,(x,y)为圆周上的任意一点,由此确定圆的方程为:(x-x0)2+(y-y0)2=252。若直接使用该方程来求圆上点的坐标,算法复杂;若采用圆的参数方程:X=x0+25cosθ,Y=y0+25sinθ,则圆的坐标仅与参数θ有关。因此,使角度以θ某一设定的角度步长ω累加,使θ+pω在周期[θ,θ+2π]内变化,其中p为累加值。这样就可以采样到圆上均匀的点,显然,角度步长ω越小,在圆周上取得点越多,控制也会更精确。根据圆的参数方程,计算圆上点的坐标,通过调用定点程序来实现。画圆流程图如图9所示。

采用HDL语言编程和FPGA器件实现悬挂运动物体的精确控制设计

4 结 语

系统硬件在智能型可编程器件实验系统KH-310集成开发,软件设计在QuartusⅡ环境下。系统各组成模块通过Modelsim进行仿真,选用优化效率和兼容性好的综合器Synplify对程序进行综合,用A1tera公司的EPEC6Q24OC8L作为编程芯片,系统在1 MHz下工作,经现场实验,其结果表明:该系统可以通过键盘任意设置悬挂运动物体的位置;在规定时间和运动区域的情况下,可以快速地完成运动距离;可以完成运动坐标点的显示和电机启/停功能。

本文设计的基于FPGA控制的步进电机悬挂运动控制系统具有可靠的硬件和优良的软件设计支持,可实现对悬挂运动的精确定位。利用FPGA实时控制能力和步进电机的精确定位能力,完全可以设计出高性能高精度的控制系统,例如改善人工清洗高楼幕墙容易发生危险状况,将悬挂物设置成清洗机构。在现代工业、农业和国防建设中,使用和推广这种系统,有着十分重要的现实意义。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1624

    文章

    21608

    浏览量

    601088
  • 芯片
    +关注

    关注

    452

    文章

    50150

    浏览量

    420513
  • 控制系统
    +关注

    关注

    41

    文章

    6497

    浏览量

    110364
收藏 人收藏

    评论

    相关推荐

    超声波测距 实现动物体与非活动物体的判别

    有个问题想请教下各位大虾能否用超声波测距 实现动物体 与 非活动物体的判别呢? 我最初的想法是 用超声波对同一物体进行两次测距 之后比较两次测距结果 进而判别活
    发表于 04-25 10:17

    通过传感器来捕捉运动物体信号,并驱动电机,追踪移动...

    简单介绍要求如下,通过一个传感器来捕捉一个运动物体,获得运动的轨迹,并且驱动一个电机来和移动物体,同步转动,(可在运动物体上面携带发射信号源方便捕捉信号),当然如果能不通过发射源,能直
    发表于 01-11 22:54

    请教一个关于运动物体轮廓检测系统的问题

    :用液晶屏呈现被检测物体的大致轮廓图像。基本要求: ( 1 )传感器单列线性分布,传感器数量不超过二十个,实际装置高度不超过两米。(2)自行设计制作控制电路,控制运动物体二维信息的捕
    发表于 09-03 09:17

    【创龙C66x开发板申请】运动物体捕获系统

    项目名称:运动物体捕获系统试用计划:德州仪器的c6000dsp主要运用于数字图像领域,尤其在航天领域,以及各种夜视设备中,本人主要想试用下8核开发中c6000的图像处理能力,通过opencv实现
    发表于 01-05 15:02

    怎么设计悬挂运动控制系统?

    在现代的工业控制、车辆运动和医疗设备等系统中,悬挂运动系统的应用越来越多,在这些系统中悬挂运动
    发表于 08-12 08:21

    怎么采用Verilog FPGA设计悬挂运动控制系统的控制

    本文采用Verilog FPGA设计悬挂运动控制系统的控制器,通过输入模块传送
    发表于 05-06 07:11

    光电鼠标芯片组在无接触检测运动物体中的应用

    安捷伦公司的ADNS-2051 芯片广泛应用在光电鼠标中,是一种高性能的运动检测器件。本文介绍了一种基于ADNS-2051 芯片组、单片机等器件组成的系统,能够在无接触条件下检测运动物体
    发表于 08-29 11:28 119次下载

    基于运动估计的运动物体检测技术研究

    运动物体检测是图像处理和分析系统的关键技术,为了能够更准确的检测视频流中的运动物体,本文提出了一种基于运动估计的运动物体检测方法,该方法以运动
    发表于 12-14 13:37 16次下载

    基于运动矢量的运动物体提取方法

    为提高视频运动物体提取的准确性,提出了一种新的基于运动矢量信息的视频运动物体提取方法。将与运动矢量信息相关的分割因子用于运动物体提取的判据,
    发表于 11-26 16:05 0次下载
    基于<b class='flag-5'>运动</b>矢量的<b class='flag-5'>运动物体</b>提取方法

    跟踪运动物体轨迹算法的研究

    基于移动基站对运动物体的跟踪研究,通过对运动物体轨迹的检测、提取、识别和跟踪,获得了运动物体运动参数以及运动物体的轨迹,并对其参数进行进一
    发表于 03-09 14:46 56次下载
    跟踪<b class='flag-5'>运动物体</b>轨迹算法的研究

    基于ARM11的视频图像中运动物体检测跟踪系统

    通过深入研究国内外视频图像运动目标的跟踪技术现状,基于目前对视频图像中运动物体进行检测与跟踪设备的便携性差、耗电量高等缺点,本系统利用ARM11平台搭载Linux系统实现相关应用的方法,完成了一套较
    发表于 01-22 14:37 215次下载
    基于ARM11的视频图像中<b class='flag-5'>运动物体</b>检测跟踪系统

    如何快速地创建图像处理流水线,实时检测运动物体

    这段视频中,我们将向您演示如何快速地创建一个简单的图像处理流水线,实时检测运动物体。把运动物体边缘勾勒并实时地插入到视频流中,视频帧速是1080p每秒60帧 。
    的头像 发表于 11-27 06:07 2585次阅读

    如何使用单片机进行悬挂运动控制系统的设计

    悬挂轨迹控制系统是一电机控制系统, 控制物体在 80cm×100cm的范围内作直线、圆、寻迹等运动
    发表于 05-05 08:00 6次下载
    如何使用单片机进行<b class='flag-5'>悬挂</b><b class='flag-5'>运动</b><b class='flag-5'>控制</b>系统的设计

    实现含有运动物体的图像拼接方法论文免费下载

    中的区域精确匹配、光照差、噪声点及图像融合问题。实验表明对含有运动物体的图像采用该方法进行拼接可以获得较满意的视觉效果。
    发表于 10-17 16:01 4次下载
    <b class='flag-5'>实现</b>含有<b class='flag-5'>运动物体</b>的图像拼接方法论文免费下载

    使用OpenCV的视频对象实现运动物体检测追踪的资料说明

    在计算机视觉研究领域里, 运动物体跟踪广泛应用于智能视频监控, 基于目标的视频编码, 人机交互,自主导航等方面。
    发表于 10-25 14:28 10次下载
    使用OpenCV的视频对象<b class='flag-5'>实现</b><b class='flag-5'>运动物体</b>检测追踪的资料说明