本站小编为你精心准备了通信系统的硬件设计方案参考范文,愿这些范文能点燃您思维的火花,激发您的写作灵感。欢迎深入阅读并收藏。
主从式矿用组合开关通信系统用于实现组合开关控制系统上、下位机系统的信息传输,其CPU为组合开关控制系统的主控芯片C8051F040。
C8051F040内部设有UART0和UART1两个串行通信口。通信系统中均采用其UART0口。UART0为增强型串行通信总线,其接收数据缓冲区为双重缓冲区,保证在接收数据时,即使软件尚未读完接收数据,第二个数据仍能完整接收。UART0通信可通过查询TI0和RI0位或中断来控制。
C8051F040为COMS集成电路芯片,其串口的收发信号都是CMOS电平,驱动能力和抗干扰性有限。针对环境恶劣、干扰源多的煤矿井下,通信系统选用RS485总线实现多机互联。RS485总线采用平衡差分传输方式,抗干扰性好,可互连多达128个单片机,适合组成多机通信系统[2]。C8051F040不支持符合RS485协议的电平信号,所以采用MAX485总线驱动芯片[2]设计了信号电平转换接口模块,如图2所示。
MAX485是MAXM公司推出的适用于恶劣环境下的低功耗收发器,数据传输速率可达2.5Mbit/s,其内部有1个输入接收器和1个输出驱动器,二者的使能引脚在不使能情况下均处于高阻状态。MAX485采用平衡发送和差分接收方式实现与C8051F040的通信。C8051F040通过发送端TX0将COMS电平信号发送至MAX485进行转换,生成的差分信号经A、B端口输出,接收端RX0将差分信号还原成CMOS信号。
光电隔离电路实现通信信号与CPU的隔离,同时抑制MAX485芯片A、B端口之间的静电冲击,使通信系统更加安全可靠。通信系统多机通信结构如图3所示。上位机系统与下位机系统通过信号电平转换接口模块连接在RS485总线上。显示屏支持RS485协议信号,不需要接信号电平转换接口模块。RS485总线上只能有1个节点成为主节点而处于发送状态,其它节点必须处于接收状态。如果同一时刻有2个或2个以上的节点处于发送状态,将导致所有发送方的数据发送失败,即总线冲突。为了避免总线冲突问题,提高可靠性,通信系统采取了以下措施:(1)采用主从式结构,RS485总线工作在主从模式下,从机不主动发送命令或数据,一切由主机控制。在本通信系统中,主机为上位机系统,从机为主线路与支线路1~n。(2)在信号电平转换接口模块中设置C8051F040的P2.0端口来控制MAX485的收发状态。在通信系统复位时,主/从机均处于接收状态。
通信系统的实现
主从式矿用组合开关通信系统包括两部分:上位机系统与主线路和各支线路的通信,以及上位机系统与显示屏的通信。在多机通信中,在保证通信可靠性的前提下,还要提高总线的通信效率和实时性[],因此需要选择合适的通信协议和完善的通信软件。
1主机与从机通信的实现
本通信系统中,参考Modbus协议[4]制定了一种满足组合开关控制系统通信要求的主从式通信协议。该协议规定每一个从机要知道自身地址,识别按地址发来的消息,以及决定要产生何种行动。以下为通信协议规则:(1)串行通信波特率为19200bit/s,字符特征为8数据位,1起始位,1停止位,无校验位。(2)协议定义了信息格式和差错控制。主/从机数据帧结构(图4)包括线路地址(2B)、功能代码(2B)、数据域(30B)和校验码(2B),均为16进制。主机和从机采用相同的帧结构,不同之处在于主机数据帧结构中的数据域为系统整定的运行参数和运行方式,从机数据帧结构中的数据域为主线路和各支线路的工作状态量。主机和从机信息包均为36B的定长帧。在数据帧结构中,线路地址用以选择主机与从机中的当前通信线路;功能码表明主机对本次通信回路的操作类型,操作约定见表1;校验码为16位的CRC校验码。(3)标准Modbus协议采用间隔时间判断方法捕捉数据帧,这需要占用CPU的计数器/定时器源,还需对检测到的串口接收时间片进行逻辑处理。本通信系统中,通过判断地址码位和功能码位来确定帧的开始,理由是地址码和功能码是主机请求数据帧的内容,而主机和从机都知道这两位数据。采用该判断原则后,从机不必判断主机帧之间的间隔是否大于3.5个字符传输时间。图5为基于该原则的帧捕捉逻辑流程,其中res[j]为帧接收数据数组,res[0]与res[1]为地址位,res[2]与res[3]为功能码位,Sflag为一帧数据帧捕捉成功标志。程序初始化时需设置res[0]=res[2]=0x00,Sflag=0,j=0。在成功接收且使用完本次通信数据后,要对res[j]数组清零,以防止其被内存残留数据干扰而无法判断帧的起始。主机采用轮询方式与从机中主线路及各支线路通信,如果主机发完信息后100ms内没有接收到从机的响应信息,则认为本次通信失败;从机采用中断方式接收整个消息帧,接收完毕进行错误检测,若校验正确则根据命令码调用相应的操作,否则不予响应。
2主机与显示屏通信的实现
显示屏负责实时显示被控电动机的状态信息和控制系统的操作指示信息。在主机与显示屏的通信中,显示屏只需将接收的数据信息实时显示在相应的界面上即可,不需要进行信息回馈,为单向通信。制定的通信协议如下:(1)串行通信波特率为19200bit/s,字符特征为8数据位,1起始位,1停止位,无校验位。(2)对应的主机数据帧结构如图6所示。该数据帧结构中,界面地址负责切换显示界面,包括系统显示主界面、系统整定界面及系统自诊断界面及一些提示界面;光标地址区别显示界面中的具体显示元素。控制系统选用台达显示屏,其不支持CRC校验,因此主机与显示屏的通信中采用偶校验方式。采用ScreenEditor画面编辑软件配置显示屏通信端口(设置通信口为COM2,通信界面为RS485,数据位为8bit,校验为Even,停止位为1bit,波特率为19200bit/s)、编辑显示画面、设定画面地址及画面中各元素对应的存储器地址。
实验及结果分析
实验一:在C8051F040软件集成开发环境IDE界面下观察一次通信过程。上位机与支线路6进行一次通信的数据如图7所示。从图7(a)、(b)可看出,上位机发起通信请求,与支线路6建立通信,线路地址码为0x00f6,代表与支线路6通信;功能码为0x00e1,表示读取支线6的工作状态信息;16位CRC校验码为0x2dec。图7(c)、(d)为支线路6回传的数据。实验二:系统正常运行显示实验。图8(a)为上位机发送给显示屏的数据。界面地址为0x0003,当前显示画面为主界面;光标地址为0x0001,显示第一回路内容。图8(b)为显示屏示界面,显示第一回路电动机为启动状态,工作电流为400A。可见显示结果与通信数据一致。在测试和实际应用中,主从式组合开关通信系统的上位机可通过发送配置信息成功配置下位机系统,主线路与各支线路能将系统工作状态实时反馈给上位机,上位机可将反馈信息传送给显示屏显示。整个系统运行稳定可靠,能够满足组合开关控制系统对通信效率和实时性的要求。
结语
根据3.3kV智能型矿用组合开关控制系统的特点,设计了基于C8051F040和RS485总线的通信系统,根据制定的通信协议编写了通信软件。该通信系统硬件设计合理,构造简单,经测试和实践证明其数据传输准确,运行可靠。系统涉及的通信接口设计、通信协议规划和通信程序设计对于开发类似主从式通信结构具有一定的参考价值。
作者:闫世军宋建成徐杰郑丽君单位:太原理工大学电气与动力工程学院天地(常州)自动化股份有限公司