您的位置 > 资源库 > 文献
在线服务资源库
基于小型嵌入式RTOS的EPA电动执行机构
【摘要】介绍了基于电动执行机构的硬件结构和工作原理,以及基于小型嵌入式RTOS的EPA电动执行机构的模块化的软件设计,主要包括小型嵌入式RTOS的软件设计、EPA协议栈软件等主要模块。从而使电动执行机构具有基于EPA标准的工业以太网通信能力,实现远程组态、远程标定和远程故障诊断等功能,达到了执行机构设备智能化、数字化和网络化的目的,具有广阔的应用前景。 引言

      目前基于现场总线的智能电动执行机构的研究是工业控制和自动化领域的主要研究问题之一。由于现场总线适应了工业控制系统向分散化、网络化和智能化发展的方向,并且促使目前的自动化仪表、DCS和PLC等产品所面临体系结构和功能结构的重大变革,导致工业自动化产品的又一次更新换代。

      尽管现场总线获得了巨大的成功,然而现场总线这类专用实时通信网络具有成本高、速度低和支持的应用有限等缺陷,如何利用COTS(Commercial off the shelf)技术来满足工业控制需要,是目前迫切需要解决的问题[1]。其中,如何把以太网应用到工业已经成为工业控制和实时通信研究的热点。

    1 EPA--应用于工业现场的以太网技术

      EPA(Ethernet for Process Automation)实时以太网,是我国完全具备自主知识产权的适用于工业现场设备的开放性实时以太网标准,是满足广大仪器仪表开发企业与最终用户的要求,将大量成熟的IT技术扩展到工业控制领域,以高效、稳定、标准的以太网和UDP/IP协议的确定性通信调度策略为核心,应用于工业控制现场设备(如变送器、执行机构等)间的实时通信,并在此基础上,建立应用于工业现场设备间通信的开放网络通信平台从而实现以太网统一企业信息化系统中从底层的现场设备层到上层的控制层、管理层间的“E网到底”的过程控制系统模式。

    2 电动执行机构的硬件设计及工作原理

     EPA电动执行机构采用了先进的以太网总线控制技术,利用数字集成芯片、机电一体化的设计,支持远程总线操作和现场手动操作。

    2.1 电动执行机构硬件结构

    如图1所示,电动执行机构的控制电路主要由控制电路板、EPA通信模块、隔离电路、相序检测单元等部分组成。其中控制电路板又大致包括报警输入/输出、电源模块、数字/模拟转换模块、通信模块、驱动电路和远控信号处理模块6个部分。

    2.2 电动执行机构工作原理

     电动执行机构的通信模块接收标准的EPA控制信号,即开关量控制信号,与阀位传感器的位置信号相比较,将执行机构的输出轴定位于控制系统预先设置的位置,完成定位控制,又可以根据连锁控制、两线控制或事件信号定位于控制系统预先设定的位置,除非在运动过程中发生执行机构的输出轴转矩值大于额定转矩值或设定的转矩值,否则执行机构的智能控制器将满足系统的要求,发出正确的指令,触发继电器,使电动机接通电源,驱动执行机构正常运行。

    3 电动执行机构的软件设计

      Linux、UC/OS-II、Unix等是时下比较流行的嵌入式操作系统,已经被广泛地用于民用电子产品,在工业产品上还很少被用到,为了大幅度提高执行器的工作性能和稳定性,在进行软件设计时采用了性能更高更可靠的嵌入式操作系统,但是由于使用这几类操作系统的代码空间会增加ROM的用量,内核本身的数据结构会增加RAM的用量,更主要的是程序的预算量会大大加重执行器CPU的运算负担,这就对执行器的硬件性能提出了更高的要求。为了减少内存资源、CPU的运算负担一些不必要的开销,执行器在软件设计时就要求对操作系统的代码进行裁剪,因此在满足执行器功能要求的基础上,设计了一种小型嵌入式RTOS,具有速度快、系统开销小等特点,既提高了执行器的性能又不会增加额外的硬件负担。

电动执行机构控制电路

图1 电动执行机构控制电路

    3.1 小型嵌入式RTOS设计

    电动执行器小型嵌入式RTOS流程如图2所示。

小型嵌入式RTOS流程图

图2 小型嵌入式RTOS流程图

      该嵌入式系统使用的是无优先级时间片轮询法,每个任务使用相同大小的基本时间片,基本时间片的大小在代码初始化阶段编写代码voidSCH_Init_Time(void)设置为8ms。在基本时间片设置完成后,编写相关的API函数,实现任务创建、任务删除、任务调度以及任务运行等功能。编写的相应API接口函数定义如下:

    Int SCH_Create_Task(void(*pFunction)(void),intTime,intPeriod);

    Int SCH_Delete_Task(intTASK_INDEX);

    voidSCH_Start(void);

    SIGNAL(SIG_OVERFLOW);

    voidSCH_RUN_Tasks(void)

      (1)SCH_Create_Task(void(*pFunction)(void),int Time,intPeriod):任务创建函数,*pFunction为任务入口地址,Time为任务等待时间,Period为任务运行周期,Time+Period

      即为任务使用的最大时间片。而且在此函数中为进程控制块PCB赋值。

      (2)SCH_Delete_Task(intTASK_INDEX):任务删除函数,即删除进程控制块PCB中的值。

      (3)SCH_Start(void):任务运行函数,开始任务调度。

      (4)SIGNAL(SIG_OVERFLOW):信号量查询函数,根据Time(任务等待时间)判断是否为任务释放信号量RunMe:当等待时间未到时不释放信号量,当等待时间到时释放信号量。

      (5)SCH_RUN_Tasks(void):任务调度函数,判断信号量(RunMe)是否被释放,信号量被释放后代码跳转任务函数入口地址*pFunction执行相关任务,任务完成或运行时间超过Per-iod后释放信号量,交由下一个任务获得信号量。

      在以上API函数编写好之后,小型嵌入式RTOS也就搭建完成了。

    3.2 EPA协议的通信功能实现

      在小型嵌入式RTOS平台搭建好之后,采用交互式开发方式实现EPA通信功能,即采用双CPU的方案,将EPA通信模块与电动执行器通过串口UART进行双CPU的数据交互通信,并按照特定的串口通信协议编写通信代码。

      如图3所示,系统采用主从通信技术,电动执行器的CPU作为主设备,EPA模块作为从设备。主设备可以对EPA模块进行初始化变量,并发出查询指令;EPA模块根据主设备查询指令实现相应的功能。由于系统采用的时间片轮询法定义串口通信代码500ms执行1次,即数据更新1次。

系统通信示意图

图3 系统通信示意图

EPA协议的串口通信流程图

图4 EPA协议的串口通信流程图

    程序运行流程图如图4所示。

      (1)系统初始化,依据EPA串口通信协议发送命令进行变量映射,当收到变量映射成功的正响应报文后停止发送变量映射命令。

      (2)进行数据查询,查询消息报文中的CMD值告之被选中的从设备要实现何种功能。数据段包含了从设备要实现功能的任何附加信息,即读取或修改的变量对象索引值、数据长度、数据数量以及CRC校验。CRC校验为从设备提供了一种验证消息内容是否正确的方法。

      (3)如果从设备产生一个响应报文,则响应报文中的CMD值是查询消息的回应,CMD值会告之从设备响应是否成功。若从设备响应成功则收到正响应报文,数据段包括了写变量成功的信息或从设备读变量的数据值及响应变量对象的索引值;若从设备响应失败则收到负响应报文,数据段内的信息告知主设备响应失败的原因,主设备会根据失败的原因做出不同的处理,CRC校验用于主设备判断响应帧内容的正确性。

     EPA串口通信协议帧如下:

    主设备查询帧:

    主设备查询帧

    从设备应答帧:

    从设备应答帧

    当主设备查询从设备时,它收到几种报文后的处理方法:

      (1)从设备收到了主设备的查询,且全部校验正确,从设备就产生正响应报文,主设备收到正响应报文后提取相关信息进行正常数据处理。

      (2)在变量映射时,从设备收到了主设备的变量映射命令,且全部CRC校验正确,但是从设备无内存开辟映射变量或变量映射命令的数据格式不符合通信协议,主设备就会收到从设备发出的映射变量失败确认信息,主设备停止对此变量的变量映射命令及与此变量有关的所有命令。

      (3)在读/写变量时,由于设备掉电再上电造成设备信息丢失等问题,从设备发出映射变量不存在的负响应报文,主设备就会重新发送变量映射命令,收到映射变量成功的确认信息后停止发送。

      (4)在读变量时,由于从设备发送的数据值没有修改,主设备就会收到从设备发出的数据未更新的确认信息,主设备将不做处理。

    4 测试

     使用交叉编译器编译、链接电动执行器程序,使之生成可执行代码,然后移植到电动执行器的目标平台上。为了测试电动执行器的运行效果,利用EPA远程组态、标定及故障诊断软件通过网络的远程控制对EPA执行机构进行组态、标定和故障诊断。远程组态如图5所示,可以通过上位机对电动执行器进行各种操作。

 执行器远程组态界面

图5 执行器远程组态界面

    5 结束语

      EPA标准是我国完全具有自主知识产权的基于工业以太网的现场总线国际标准,文中设计的符合EPA标准的高性能智能电动执行机构,使其具有以太网通信功能,并具有EPA标准的多信息传输能力,实现电动执行机构的远程组态、远程标定和远程故障诊断等功能,达到现场设备智能化、数字化和网络化的目的。


摘自互联网