前言:我们精心挑选了数篇优质控制软件设计论文文章,供您阅读参考。期待这些文章能为您带来启发,助您在写作的道路上更上一层楼。
本文设计的基于以太网的超声检测多轴运动控制系统是在复杂的多轴运动控制技术之上结合了远程通信技术,以此来实现超声检测的远程自动控制。此系统主要由上位机、多轴运动控制器、步进电机驱动器、步进电机、机械执行装置、限位开关和超声探头等组成,其组成框图如图1所示。由上位机LabVIEW控制系统为多轴运动控制器发送运动指令,并由多轴运动控制器将运动信号拆分为步进信号和方向信号,再将这两种电机控制信号发送给步进电机驱动器,步进电机驱动器将其转化为角位移发送给步进电机,使步进电机转动相应个步距角,以达到使步进电机按指令运动的目的。步进电机上安装有机械执行装置,用以固定超声探头,机械执行装置上安有限位开关,以此控制电机的运动范围,当电机运动到限位开关的位置时,限位开关发出限位信号到多轴运动控制器,运动控制器便停止发出使电机运动的脉冲信号。在进行自动超声检测时,Z轴方向机械执行机构上固定的超声检测探头能够在被检测物体的表面按照上位机运动控制算法设计的运动轨迹进行连续检测,并实时向PC机返回探头的位置信息,并将数据采集卡采集的超声信号与探头返回的位置信息建立起对应关系,最终通过上位机的图像处理系统形成超声检测图像,以此来实现物体的超声检测。
2多轴运动控制器的方案设计
多轴运动控制器可以通过远程以太网通信的方式接收上位机的控制信号,向步进电机驱动器发送脉冲信号和方向信号以完成对电机的运动控制。采用ARM9处理器S3C2440搭建硬件平台,配有DM9000A以太网通信芯片使硬件平台具备远程通信的功能。在Linux操作平台上进行控制系统软件功能设计,并采用UDP通信协议实现上位机与运动控制器之间的远程通信[3]。
2.1多轴运动控制器硬件电路设计
夜上海论坛 本文采用ARM9处理器S3C2440设计了系统中运动控制器的硬件电路部分,并采用DM9000A网络接口控制器设计了运动控制器的以太网接口。运动控制器硬件整体框图如图2所示。运动控制器选用ARM9处理器作为运动控制器的核心芯片可以方便地嵌套Linux操作系统,在操作系统之上实现运动控制器的插补等多轴运动控制算法。选用DM9000A以太网控制芯片实现上位机LabVIEW与运动控制器之间的远程通信,进而实现超声检测的远程自动控制。为了解决步进电机驱动器与主控芯片信号匹配的问题,本文采用光耦器件设计了电压转换模块,负责把主控芯片输出的3.3V电压信号转换至5V电压信号后输入到步进电机驱动器中,同时负责把限位开关发出的24V限位信号转换至3.3V输入到主控芯片中。此外,电路中还搭载了用于存储数据的扩展存储器、以及用于调试的JTAG接口电路和RS232串口电路。
2.2多轴运动控制器软件设计
本课题所用的限位开关为位置可调的限位开关,每个轴有2个限位开关,在每次超声检测前,把每个限位开关调节到被测工件的边缘处,从而使探头移动的范围即为工件所在范围。故此设计运动控制器的软件时便可将限位开关做为边界条件,以此来设计探头的运动范围。其运动控制流程:首先系统初始化,通过上微机控制界面人工控制探头到被测工件的起点,然后X轴正向运动到X轴限位开关处,Y轴正向运动一个探头直径的长度,X轴再反向运动到X轴另一侧的限位开关处,之后Y轴继续正向运动一个探头直径的长度,如此往复运动直至探头到达Y轴的限位开关处,检测结束,探头复位。运动控制软件流程图如图3所示。
夜上海论坛 3多轴运动控制系统上位机软件设计
基于以太网的自动超声检测多轴运动控制系统的上位机软件是以LabVIEW开发平台为基础,使用图形G语言进行编写的,主要包括多轴运动控制软件和以太网通信软件。Lab-VIEW是一款上位机软件,其主要应用于仪器控制、数据采集和数据分析等领域,具有良好的人机交互界面[4]。LabVIEW软件中有专门的UDP通信函数提供给用户使用,用户无需过多考虑网络的底层实现,就可以直接调用UDP模块中已经的VI来完成通信软件的编写,因此编程者不必了解UDP的细节,而采用较少的代码就可以完成通信任务,以便快速的编写出具有远程通信功能的上位机控制软件[5]。上位机LabVIEW软件的远程通信模块、运动控制模块以及数据处理模块相互协调配合,共同构成了超声检测多轴运动控制系统的上位机软件。
3.1运动控制软件设计
夜上海论坛 运动控制系统软件部分主要由运动方式选择、探头位置坐标、运动控制等模块组成,可完成对系统运动方式的选择,运动参数、控制指令的设定以及探头位置信息读取等工作。运动方式选择模块可根据实际需要完成相对运动或是绝对运动两种运动方式的选择,并会依照选择的既定运动模式将X、Y、Z三轴的相应运动位置坐标输出在相应显示栏中,以便进行进一步的参数核对以及设定;运动控制模块可依照检测规则实现对整个系统运动过程的控制,包括:设定相对原点、运行、复位、以及退出等相关操作。相对原点设定可以将探头任意当前位置设为新的原点,并以原点作为下一个运动的起始点,即为探头位置坐标的相对零点,并将此刻相对原点的绝对位置坐标值在文本框中显示出来。运动控制系统软件流程图如图4所示。
夜上海论坛 3.2以太网通信软件设计
以太网通信模块采用无连接的UDP通信协议,通过定义多轴运动控制器与上位机LabVIEW的以太网通信协议,实现下位机与上位机之间的远程通信。具体设计如下:首先使用“UDPOpenConnection”打开UDP链接,使用“UDPWrite”节点向服务器端相应的端口发送命令信息,然后使用“UDPRead”节点读取服务器端发送来的有效回波数据,用于后期处理,最后应用“UDPCloseConnection”节点关闭连接[6]。以太网通信模块的程序框图如图5所示。
4实验及结果
实验平台由步进电机及其驱动器、上位机控制软件和自主研发的多轴运动控制器构成。在上位机的用户控制界面中,首先输入以太网的IP地址并选择运动方式,然后根据用户的检测需求设定运动速度和运动距离,点击运行后探头即按所设定运行。探头运动过程中还可以选择设定当前位置为原点,探头即按照新的原点重新开始运动。同时,在探头运动时会实时显示探头当前所在位置坐标。模拟开关发送选通超声探头信号并发送脉冲信号激励超声探头发射超声波,FPGA控制A/D转换电路对超声回波信号进行转换,并将数据存入双口RAM,存储完成后向ARM发送信号,ARM接收到采集完成信号将数据通过以太网向上位机发送。上位机的LabVIEW用户控制界面如图6所示。
5结束语
系统上电后,风门处于关闭状态,系统周期检测传感器信号,人车运动过程中会触发微波传感器输出信号,系统则根据传感器信号执行开关风门和风门互锁。人车接近风门时,两侧风门的微波传感器检测到有效运动速度信号,首先进行信号竞争,根据竞争结果开启某一风门。2个风门入口信号4选1采取竞争方法进行选择,即微波移动传感器输出信号A1、A4、B1、B4处于竞争状态,一个检测周期内,只有一个信号有效。2个风门各2个方向。
(2)控制策略
夜上海论坛 控制系统风门互锁的控制要求并不复杂,关键是有效判断风门区域人员车辆的状态,并根据状态进行开闭风门。人员在巷道内行进过程是随意的,系统需要根据人员在微波传感器检测区域内的最终状态,对人员行进完成状态估计。如图3所示,根据人员的位置和传感器有效信号可以把人员行进的状态和风门控制策略分成9种,如表1所示。风门控制策略是控制系统的核心,策略制定的优劣直接影响着风门控制的可靠性。表1中根据人员行进的最终位置分为不同的状态估计,结合定时器对人员状态进行状态估计和制定控制策略。
(3)实现方法
有限状态机(FSM)理论是本风门自动控制系统状态转换和控制策略的理论基础。FSM包含有限的状态,但在任一给定时刻必须而且只能处于其中的一个状态,系统的状态变化受事件的驱动,事件是系统的活动或外部输入信号,它受当前状态约束。因此,研究有限状态机的关键就是在其状态空间中找到状态转换的轨迹,这要求在每个状态下全面分析驱动状态转换的事件(包括系统的活动和输入信号)和转换的目的地(即转换后的状态)。每个状态都有其特定的输出(系统的各项功能和性能指标),即系统状态转换伴随着系统的性能指标随时间的变化。风门自动控制系统的动态特性就是通过状态转换表现出来,巷道风门检测区域内人员行进过程中的每个有效位置都相当于一个状态,在任何时刻风门只能处于一个工况状态,工况间的转换受传感器信号即事件的驱动。当传感器信号满足进入某一工况的条件时,风门立即进入该工况下运行,一旦外部事件不受该工况下条件的约束时,风门立即离开该工况寻找另一个工况。每个风门区域可以作为一个对象,该对象有微波传感器和定时器属性,属性取值为开或关。2个操作开门和关门。根据人车通行过程和风门对象属性值的不同组合,可以把工作流程划分为5个状态:初始态,状态1,状态2,状态3,状态4。用统一建模语言中的状态机视图表达,如图4所示。图门状态转移示意图该视图中对不同区域设置不同传感器配合定时器对人车运动状态进行分类。从初始状态开始,当人车运动速度满足最低传感器1阈值接近区域入口时,风门开启,进入状态1,此时开启定时器1;若在定时时间到后区域检测不到信号则判断为人车退出风门区域,返回初始状态;若传感器2信号有效则进入状态2,同时开启定时器2,此时判断人车进入风门,人车的行走不会影响状态的改变,直到传感器3信号有效。状态2和状态3的人员已经进入风门,系统处于等待人车通过风门区域。传感器4有效时进入状态4,此时人车前端已经通过风门,系统等待其他部分通过风门区域。此时如果传感器没有信号则进行短暂延时后关闭风门。下一步就是根据状态机视图为PLC编写梯形图程序了。程序中使用了置位指令SET和复位指令RSET进行状态的切换,有些型号的PLC没有提供置位和复位指令,但都有实现置位和复位指令功能的变通方法,可以根据常开常闭寄存器切换,因此利用该状态机视图编程序具有很好的通用性。
(4)结语
车速传感器可以发出一定占空比的方波信号,设计采用单片机的脉冲模块来捕捉可以用来测量信号的周期。车速采集的程序流程如图2所示。步进电机的转动不但代表汽车的行驶速度,还代表节气门的开度,每转动一定角度就相当于节气门的开度。因此,当输入的实际车速A等于目标车速B时,步进电机将不转动;当输入的实际车速A大于目标车速B时,步进电机会反转,减小节气门开度,从而使实际车速降低至目标车速;当输入的实际车速A小于目标车速B时,步进电机会正转,加大节气门开度,使实际车速升高至目标车速,汽车进入定速巡航控制。
2软件可靠性措施
为了提高软件系统的稳定性和可靠性,采取以下措施:(1)封锁。实际系统中最强的干扰来自自身,如被控的负载电机的通断、状态的变化等,在设计软件时应适当采取措施避开这些干扰。如:当系统要断开或接通大功率负载时应暂停数据采集,等到干扰过去后再继续进行;在适当的地方封锁一些中断源;几个通道互相封锁。这些都是避免或减少干扰的有效方法。(2)程序的失控保护措施。在控制系统中,一般情况下干扰都不会造成计算机系统硬件损坏,但会对软件的运行环境造成不良影响。表现在:数据码和指令码的一些位受到干扰而出现跳变,使程序出现错误,最典型的是程序计数器发生跳变,可能把数据当作指令码。这种程序盲目执行的结果,一方面造成RAM存储器的数据破坏,另一方面可能会进入死循环,使整个系统失效。因此,应采取有效措施避免程序失控。
夜上海论坛 3Proteus仿真验证
夜上海论坛 3.1定速巡航控制系统总体仿真电路设计
设计中定速巡航控制系统的主要参数是车速值及节气门开度,因为进行实物测试有设备要求,设备比较复杂,而且测试结果不够直观,所以设计最终结果通过Proteus仿真来实现。仿真电路如图3所示。Proteus软件的元件库中拥有AT89C52单片机、ULN2003驱动芯片、步进电机等元件,可满足设计研究仿真需要。Proteus软件中的车速采集信号可通过改变脉冲而改变车速,电动机的转速可直观地显示出来,还可体现节气门开度的大小。
夜上海论坛 3.2试验结果与分析
夜上海论坛 在Proteus仿真平台上分别对4种情况进行仿真,即实际车速A等于目标车速B、实际车速A大于目标车速B、实际车速A小于目标车速B及实际车速大于120km/h、小于40km/h,仿真结果分别如图4~7所示。从图4~7可看出:当输入的实际车速A等于目标车速B时,步进电机不转动;当实际车速A大于目标车速B时,步进电动机反转,节气门开度减小;当实际车速A小于目标车速B时,步进电动机正转,节气门开度加大;当实际车速A超过120km/h、低于40km/h(即脉冲频率低于100Hz、高于999Hz)时,巡航控制系统会自动退出,步进电机不转动。表明所设计的软件能实现简单的巡航控制系统指令,满足预定要求。
4结语