×
嵌入式开发 > 详情

基于CAN总线的智能电动执行器设计

发布时间:2020-06-29 发布时间:
|

0 引言

执行器有气动、液动、电动三类,气动需要气源且难以进行远程控制,液动需要液压调节系统,在解决了防爆和马达保护问题后,电动执行器得到了越来越广泛的应用。电动执行器接收来自调节器的模拟信号(一般是4~20mA的电流信号)或上位机的数字信号,将其转换为电动执行器相对应的机械位移(转角、直线或多转)并自动改变操作变量(调节阀、风门、挡板开度等),以达到对被调参数(温度、压力、流量、液位等)进行自动调节的目的,使生产过程按预定要求进行。
电动执行器是自动控制系统重要的终端设备,它对整个控制系统的安全运行、可靠性及调节品质的优劣都有很大的影响。目前国内生产的电动执行器大多由模拟器件控制,存在的问题有:①精度差;②保护措施使用继电器和机械装置,可靠性差;③大多数电动执行器只能接收模拟信号(4~20mA、1~5V),不能与计算机进行通信;④系统集成度低、维护困难。这就使得现有的电动执行器不便于调试和维护,也不能根据生产的实际需要进行参数的现场调整,不便于实现数字化的分布式控制[9]。
新型智能电动执行器利用微机和现场总线通信技术将伺服放大器与执行机构合为一体,具有双向通信、在线自动标定、自校正与自诊断等多种控制技术要求的功能。可进行现场操作或远程操作,完成手动操作及手动/自动之间无扰动切换[1]。可以说,智能化己经成为电动执行器发展的趋势。

1 控制器选择

目前采用的8位或16位微控制器的智能控制设备、仪器仪表仅可完成简单、低速的数据传输,不能满足工业现场的实时性和可靠性要求,特别连接请求较多或控制任务较复杂时,实时性较差。因此,本文选用功能更强的32位微控制器,运行基于特殊应用的嵌入式实时操作系统进行合理的任务调度,满足工业现场对实时性和可靠性的要求[8]。这里选用了TI公司的带有CAN接口的32位嵌入式微控制器TMS320F2812。
TMS320F2812是TI公司新推出的一款32位定点高速DSP芯片,采用8级指令流水线,单周期32×32位MAC功能,每秒钟最高可执行1150亿条指令(150MIPS),保证了控制和信号处理的快速性和实时性。另外TMS320F2812片上还集成了丰富的外部资源,包括16路12位ADC、16路PWM输出、3个32位通用定时器、128kB的16位Flash存贮器、18 kB RAM存贮器外围中断扩展模块(PIE)可支持45个外围中断、并具有McBSP、SPI、SCI和扩展的CAN总线等接口。TMS320F2812还支持最大1MB的外部存贮器扩展,TMS320F2812的开发平台支持C/C++编程语言。其C语言优化器的C编译效率可达90%,还有虚拟浮点数学函数库提供支持,可以大大地缩短数学运算与控制程序的开发周期。TMS320F2812非常适用于电机控制、电源设计、智能传感器设计等应用领域。
在对执行电机进行状态监测与故障诊断时,首先要对各传感器的信号进行采集。CAN总线具有可靠性强、链路简单、支持优先级处理等优点。因此,我们选择了基于CAN总线的主/从分布式的测量方式,并开发了基于TMS320F2812的智能CAN节点。它具有10路模拟量输入、4路数字量输入,不仅可以根据中心处理主机的命令进行数据采集还可以实现阈值报警、数字滤波、FFT变换等功能,而且可以大大减轻中心处理主机的运算负荷。电动执行器控制系统硬件主要由DSP、CAN总线接口控制器、开关磁阻电动机、检测装置、驱动电路等部分组成,系统功能框图如图1所示。

图1 电动执行器系统功能框图

2 驱动电机简介
新型电动执行器的驱动电机采用开关磁阻电机SRM(switched reluctance motor),它具有结构简单、启动电流低、输出转矩大、定位精度高、无惰走和自刹车等特点。改变了传统电动执行器的体系结构和缺点[4-6],同时,增设了CAN总线和RS-485通信接口,使之成为现场总线控制系统中的一个节点,具有运算、控制、通信等功能。新型电动执行器在功能上、可靠性和性价比上都有大幅度提高,可广泛应用于电力、石油、化工、冶金、交通和机械等行业[7]。

3 CAN通信模块设计
CAN(controller area network)总线是一种先进的串行通信协议,它有效支持分布式控制及实时控制,并采用了带优先级的CSMA/CD协议对总线进行仲裁,允许多站点同时发送。既保证了信息处理的实时性,又使得CAN总线网络可以构成多主结构的系统,保证了系统的可靠性。CAN采用短帧结构,且每帧信息都有校验及其它检错措施,保证了数据的高实时性、低传输出错率,具有很高的位速率和高抗电磁干扰性,而且能够检测出产生的任何错误。当信号传输距离达到10km时,CAN Bus仍可提供高达5kbps的数据传输速率。TMS320F2812中的eCAN控制器集成CAN总线的物理层和数据链路层,支持CAN总线的210A与210B规范[3]。CAN总线可靠的错误检测与处理功能都是由控制器的链路层自动完成,其最大优点就是有32个可以逐位屏蔽,并带有超时监视和传送动态优先级的邮箱。这32个邮箱共有512个字节的存储空间来存放要发送或接收到的数据。eCAN本身与SCC模式相兼容,并且增加了低功率模式,设置MC寄存器中的WUBA位,可实现模块会自动退出低功率模式和工作模式的切换[10]。
本设计选用TI公司的CAN收发器SN65HVD230和TMS320F2812直接连接便可接入CAN总线网络,该收发器工作电压为3.3V,节点上电位移对总线上的其它节点没有影响,在电噪声很大的环境中能可靠地实现与上位机和其它网络节点通信。CAN通信接口电路如图2所示。



在CAN模块驱动程序的软件设计时通信协议遵循DeviceNet规约,使之具有良好的模块性和移植性,通过软件对CAN模块进行参数配置,即可实现应用系统的“即插即用”功能。CAN的驱动程序分为硬件抽象层、功能函数层和应用程序接口层三个层次。硬件抽象层文件CANREGH定义了各CAN控制器寄存器数据格式及读写访问的方法。功能函数层文件CANFUNC.C和CANFUYNC.H包括CAN控制器各种控制功能的实现函数和CAN总线异常中断处理函数,该层的函数利用硬件抽象层中对寄存器操作的接口来访问CAN控制器,来实现各种CAN控制器能提供的功能。应用程序接口层的文件有CANAPP.H和CANAPP.C,供用户实现现场通信,包括如下过程:
① 初始化CAN控制器。包括使能CAN模块、模块时钟设置、配置CAN管脚、初始化CANMC寄存器、清除中断标志位、CAN控制器的工作方式、总线波特率、验收过滤器等,以便让CAN控制器的各个功能与实际的工作相符。



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
RIOS实验室联手Imagination.共同助力RISC-V生态发展