论文部分内容阅读
CAN(Controller Area Network)总线采用差分信号传输,能实现:工作现场各种各类的仪表相互间的通信,但其弱点是远程通信能力较弱。以太网之所以作为当今的主流网络,是因为其远程通信能力很强。可以将这两类通信技术优势相结合,通过以太网远程功能可以监控工业控制系统,此系统是基于CAN总线的,要实现CAN总线上的数据与以太网的数据互联,必须设计CAN/以太网转换装置。本文设计了一个CAN/以太网协议转换装置:选择STM32F107作为主控制器,选择UDP(User Datagram Protocol)协议作为TCP/IP传输层的协议,实现CAN与UDP协议之间的相互转换。提出了一种设计CAN/以太网协议转换器的方法,由于所针对的传输层协议是UDP,因此,实际上设计的是CAN总线协议与UDP协议的转换网关[1]。系统根据功能划分为三部分,分别是:协议转换模块(主控制芯片部分),CAN收发数据部分,以太网收发数据部分。获取工作地点仪器设备的信息,与主控制芯片部分之间的数据传递是通过CAN收发数据部分完成的;CAN协议数据包与UDP协议数据包进行转换协议是由转换模块实现;以太网通信模块主要负责协议转换模块与以太网之间的数据传输。当工作中的仪表仪器有数据要与以太网上的控制机进行通信时,CAN收发模块将采集仪器仪表(CAN节点)的数据,并将获取的数据存放在数据缓冲区,再由协议转换模块(STM32F107主控芯片)作为协议转换器完成协议转换:它可以将存储在数据缓冲区的CAN协议数据包转变成可以在以太网上传输的UDP协议数据包,最后经由以太网通信模块发送给以太网,实现不同网络间的互联;当要实现相反流程时,即将工作站的指令从以太网传送到工作中的仪器设备,以太网数据收发部分从以太网上接收到传输来的信息(UDP协议数据包),并将数据放入数据缓冲区,然后主控芯片部分把从以太网上收到的UDP协议形式的数据包转换成CAN协议形式的数据包,最后通过CAN数据收发部分将数据包发送给相应的工作仪器设备,从而实现对工作仪器设备的远程控制。到目前为止,整个转换器已经制作完成,可以使用,系统具有不错的使用价值。