基于GPRS及CAN总线的远程电机群控制
设备终端。
嵌入式触控PC作为操作员现场操作的人机交互界面,实时显示各个电机的运行状态,包括转速、转向、报警参数等信息。交互界面上包含参数设置以及控制按钮,可以方便操作人员现场对电机状态监测的同时有效地进行启停与转速控制。
2.2.1 主节点硬件设计
主节点电路的核心部件为STM32F103VET微控制器,便于数字化、智能化、网络化等现场总线连接监控,其抗干扰能力强、精度高、工作性能稳定可靠。在原有的电机控制环节中增加STM32微控制器,同时增加了对外通信的CAN总线接口,用来实现数据的稳定传送,上传电机运行状态信息的同时接收嵌入式触控PC的控制命令。CAN总线控制器采用CTM8 251T,这是一款带隔离的通用CAN收发器芯片,CANG引脚为隔离电源输出地。因此电路中不再需要光耦、DC/DC隔离器等隔离器件。
2.2.2 主节点软件设计
主节点通过3个对外接口来接收从节点上传的电机信息和嵌入式触控PC发出的控制信息,同时向嵌入式触控PC发送状态信息和从控制器发送询问、控制等信息,图3为主节点程序流程图。
GPRS中断函数用来发送和接收GPRS远程命令及状态信息;上位机中断函数用来接收嵌入式触控PC发出的控制命令;CAN中断函数用来接收从板上传的电机状态信息以及控制命令后的响应;TIM2计时中断函数用来集中处理GPRS、嵌入式触控PC发出的命令,包括解析与下发对应的控制命令到目的从节点。
2.2.3 主节点应用层数据格式定义
通过对系统功能分析发现,系统通信需要传递的变量主要有从节点地址、电机状态、电机转速、温度值以及湿度值。依据功能可将数据类型分为询问指令、电机设置指令、系统参数设置指令、急停指令、应答信息以及报警信息。以嵌入式触控PC与主控制板之间RS 232通信为例,其通信数据格式如表1所列,主要包括起始、结束、变量数值以及CRC校验。主节点与GPRS远程收发模块之间的RS 232通信、GPRS远程收发模块之间的短信通信以及主节点与从节点之间的CAN总线通信,其数据类型与通信协议基本相同,在此不再赘述。
3 电机部分
电机部分包含多个从节点,接下来分别从硬件和软件两个方面来说明从节点的设计。
3.1 从节点硬件设计
与主节点类似,从节点的微控制器同样选用STM32F103VET6,从节点原理图如图4所示。温湿度传感器对工作现场进行温度和湿度情况进行信息采集,其串行数据通信接口直接连接微控制器的I/O引脚。从节点通过RS485总线定时向变频器发送电机状态询问指令,收到变频器回复后将电机的运行状态(转向和转速)存储至Flash芯片。如果收到CAN总线上来自主节点的询问请求,则返回电机状态信息。如果收到的是主节点发送的控制命令,则将设定的转速和转向下发至变频器,同时应答主节点的控制指令。
3.2 从节点软件设计
从节点通过与变频器的通信来实现对电机转速、转向的控制,通过CAN总线接收主板下发的控制命令并且返回状态信息(包括电机转向、转速、温度、湿度、报警状态),图5为从节点程序流程图。
4 系统调试
通过对两个三相异步电机Y80L-2测试发现,本方案能够通过现场嵌入式触控PC终端的软件界面、连接GPRS通信模块的上位机和任意能够发送短信的手机这3种途径来实现对多电机信息(包括电机转向、转速、现场温度、湿度)的采集,以及电机转向、转速、报警温度、报警湿度的现场及远程的监测和控制。图6为嵌入式触控PC控制终端显示界面,图7为远程GPRS设备终端上位机界面。
结语
本文基于GPRS及CAN总线技术设计的远程电机群控制系统,结合实际生产情况采用分布式结构和无线数据传输,实现了低成本、高效率的控制系统。无论是在电机工作的工业现场,还是工作人员的办公室或者是任何其他地方,工作人员都可以实时获得电机运行状态的参数并且对其进行控制。这极大地提高了操作的便捷性、降低了控制的复杂性。
为了得到更好的控制效果,还可以加入先进的控制算法。此系统开放灵活,易于扩展和改造,可以将其广泛地应用到实际工业场合,解决许多工业现场的相关问题,具有很高的应用价值。
- WindowsCE.Net下CAN卡的驱动程序设计(04-12)
- 对TTCAN的分析(05-26)
- 嵌入式Win CE中CAN总线控制器的驱动设计与实现(05-01)
- μC/OS-II的多任务信息流与CAN总线驱动(07-11)
- 采用CAN总线实现DSP芯片程序的受控加载(11-08)
- 基于DSP的电动汽车CAN总线通讯技术设计(10-08)