将消息队列值读入rcvbuf0;
sendto(gatewayfd,rcvbuf0,sizeof(struct rcvbuf0),(struct sockaddr *)&cliaddr,clilen); }//将 UDP报文发送到以太网
else return;
4应用
该网关应用于基于 CAN总线的监测监控系统和测控设备接入以太网的场合,已经在江苏徐州大屯煤电公司姚桥煤矿得到了应用,目前设备运行良好。应用本网关可以解决现场总线设备接入以太网的问题,真正实现了大范围的数据采集和管理,满足了煤矿企业的现代化管理要求。CAN-Ethernet网关在井下监测监控系统中的位置如图 4所示。
5结束语
本文的创新点:本文设计的 CAN-Ethernet网关,采用ARM 处理器,软件上采用消息队列机制实现不同进程间通信,实现了基于CAN总线的煤矿井下监控系统与矿井综合业务数字网的互联,为煤矿企业信息化建设奠定了基础。本设计实现的 CAN-Ethernet通信程序,无须另外添加转换接口设备,在原有硬件基础上仅通过软件修改即可实现 CAN与以太网的互联。