一种基于USB总线的PLC通讯方法技术

技术编号:7785912 阅读:260 留言:0更新日期:2012-09-21 06:42
本发明专利技术一种基于USB总线的PLC通讯方法,具体涉及一种采用USB3.0串行总线通讯的PLC背板通讯方法;解决的技术问题是:提供一种通信速度快、实时性高的PLC通讯方法;采用的技术方案是:USB总线背板为设置有多个USB集线器,采用USB3.0串行总线通讯的背板,主控制器、USB扩展外设模块和背板电源均安装在USB总线背板上,USB扩展外设模块包括通讯模块、输入模块和输出模块,主控制器和USB扩展外设模块均通过与各自相连的USB集线器接入USB3.0串行总线完成数据通讯,主控制器与上位机相连,主控制器实现与上位机的数据交互和对下行USB扩展设备的控制,本发明专利技术广泛适用于通讯领域。

【技术实现步骤摘要】

本专利技术一种基于USB总线的PLC通讯方法,具体涉及一种采用USB3. 0串行总线通讯的PLC背板通讯方法。
技术介绍
在工业控制过程中,需要对多种高低速信号进行连续长时间的同步采集、记录和实时处理,并要求数据网上综合。目前PLC中一般采用PCI总线、CAN总线和以太网总线来完成与扩展模块的连接,PCI总线虽具有较高的传输速度(132Mbps)和“即插即用〃的功能,但其缺点是插拔麻烦, 且扩展槽有限,一般为5 6个;CAN总线数据通信具有可靠性、实时性和灵活性等优点,同时也存在与上位机无法直接连接,不能实现远程信息共享等问题;以太网总线的技术虽然传输速率可到100Mbps,技术也相对成熟,但是以太网采用CSMA/⑶,无法保证数据传输的实时性要求。
技术实现思路
本专利技术克服现有技术存在的不足,所要解决的技术问题是提供一种通信速度快、实时性高的PLC通讯方法。为解决上述技术问题,本专利技术所采用的技术方案是一种基于USB总线的PLC通讯方法,包括主控制器、USB总线背板、USB扩展外设模块和背板电源,所述USB总线背板为设置有多个USB集线器,采用USB3. 0串行总线通讯的背板,所述主控制器、USB扩展外设模块和背板电源均安装在USB总线背板上,背板电源给整个背板供电,所述USB扩展外设模块包括通讯模块、输入模块和输出模块; 所述主控制器和USB扩展外设模块均通过与各自相连的USB集线器接入USB3. 0串行总线完成数据通讯,主控制器与上位机相连,主控制器实现与上位机的数据交互和对下行USB扩展设备的控制; 所述主控制器的控制方法按以下步骤进行 第一步,主控制器启动,系统初始化,主控制器判断是否有设备加入或退出系统,如果有设备加入系统,则进入第二步,如果有设备退出系统,则进入第三步; 第二步,主控制器分配增加设备内存,然后进入第四步; 第三步,主控制器释放该退出设备所占内存; 第四步,主控制器判断新增设备的类型,如果新增设备为通讯模块,则进入第五步,如果新增设备为输入模块,则进入第六步,如果新增设备为输出模块,则进入第七步; 第五步,主控制器主动发送查询包,然后等待接收通讯模块发送的启动包,所述启动包的信息包括插槽位置和通讯协议,主控制器接收到通讯模块的启动包后发送可操作状态包通知通讯模块进入正常操作状态,接着主控制器发送配置信息包,然后等待上传数据,所述配置信息包包括通讯模块连接设备的地址、数据上传时间和数据上传字节数,最后主控制器进行数据处理为上位机软件提供所需数据; 第六步,主控制器等待接收输入模块的启动包,主控制器接收到启动包后发送应答帧,然后等待接收输入模块发送的数据并判断收到数据的类型,如果收到数据为正常数据包,则发送心跳包给输入模块并解析数据包,提供给上位机,如果收到数据为错误帧,则发送复位命令给输入模块,使输入模块复位重启; 第七步,主控制器等待接收输出模块的启动包,主控制器接收到启动包,则发送输出控制包和心跳包给收输出模块,主控制器判断收到数据包是否为错误帧,如果主控制器接收到不是错误帧,则主控制器继续发送输出控制包和心跳包给收输出模块,如果主控制器接收到错误帧,则发送复位命令,使输出模块复位重启。所述通讯模块与主控制器的通讯方法按以下步骤进行 第一步,通讯模块启动后,等待接收主控制器的查询包,然后进入第二步; 第二步,通讯模块判断5秒内是否收到主控制器的查询包,如果5秒内收到主控制器的查询包,则进入第三步,如果5秒内没有收到主控制器的查询包,则主动进入第三步; 第三步,通讯模块发送启动包给主控制器,然后等待接收主控制器发送的可操作状态包,如果收到配置信息包,则进入第四步,如果没有收到配置信息包,则重新发启动包给主控制器; 第四步,通讯模块按照配置信息包内容设置通讯的地址、数据上传字节数、数据上传时间间隔和采集周期,然后进入第五步; 第五步,通讯模块按照配置信息内容,进行数据采集和上传,同时通讯模块在指定时间判断是否接收到主控制器发送的主控心跳包,如果收到,则继续进行数据传输,如果没有收至IJ,则通讯模块复位重启。所述输入模块与主控制器的通讯过程按以下步骤进行 第一步,输入模块启动后,主动给主控制器发送启动包,然后进入第二步; 第二步,输入模块等待接收主控制器的应答信号,如果收到主控制器的应答信号则进入第三步,如果没有收到主控制器的应答信号,则返回第一步; 第三步,输入模块判断收到的应答信号是否为正常通讯包,如果应答信号为正常通讯包,则进入第四步,如果应答信号为复位帧,则输入模块进行复位启动操作; 第四步,输入模块采集输入信号并上传正常数据包给主控制器,然后监测是否接收到主控心跳包,如果收到主控心跳包,则继续采集输入信号并上传正常数据包给主控制器,如果没有接收到主控心跳包则进行错误处理,发送错误帧给主控制器。所述输出模块与主控制器的通讯过程按以下步骤进行 第一步,输出模块启动后,主动给主控制器发送启动包,然后进入第二步; 第二步,输出模块等待接收主控制器的应答信号,如果收到主控制器的应答信号则进入第三步,如果没有收到主控制器的应答信号,则返回第一步; 第三步,输出模块判断收到的应答信号是否为正常通讯包,如果应答信号为正常通讯包,则进入第四步,如果应答信号为复位帧,则输出模块进行复位启动操作; 第四步,输出模块解析通讯包,按照输出控制包进行输出控制,然后监测是否接收到主控心跳包,如果收到主控心跳包,则继续解析通讯包,按照输出控制包进行输出控制,如果没有接收到主控心跳包,则进行错误处理,发送错误帧给主控制器,通知主控制器通讯发生异常。所述USB集线器为具有I个上行端口和4个USB下行端口的USB3. OHUB。所述通讯模块包括RS232通讯模块、RS485通讯模块、以太网接口通讯模块和CAN接口通讯模块,所述输入模块包括模拟量输入采集模块和数字量输入采集模块,所述输出模块包括模拟量输出模块和数字量输出模块。本专利技术与现有技术相比具有的有益效果是 一、本专利技术采用USB3.0串行总线通讯,将USB总线方式应用到PLC中,可在混合速度USB环境中提供最佳数据吞吐量,每个下行端口最大工作电流可为500mA,最高速率为5. OGbps,是一种通信速度快、实时性高的PLC通讯方法; 二、本专利技术采用USB3.0串行总线,USB是真正的“即插即用”设备,连接或拔出时,USB自动检测、识别设备,加载或卸载驱动程序;USB协议从多方面考虑了数据传输的准确性和鲁棒性的保障措施,数据传输可靠性高;USB在3ms内没有总线活动,会自动进入挂起状态,电流消耗不超过500m,能够有效保护电源;与其他接口总线比较,USB接口价格低廉,整个装置,成本较低; 三、本专利技术支持RS232、RS485、RJ45和CAN等工业上的主流通讯接口,支持传输速率为5G/S的超高速USB3. 0,480 Mbps的高速USB2. O、传输速率为12Mbps的全速USB1. I和传输速率为1.5 Mbps的低速USB1. 0,兼容性强,扩展方便,可用于各种数据通讯场合。附图说明下面结合附图对本专利技术的具体实施方式作进一步详细的说明 图I是本专利技术中USB总线的物理拓扑结构示意 图2是本发本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于USB总线的PLC通讯方法,包括主控制器(I)、USB总线背板、USB扩展外设模块和背板电源,其特征在于所述USB总线背板为设置有多个USB集线器(2),采用USB3. O串行总线通讯的背板,所述主控制器(I)、USB扩展外设模块和背板电源均安装在USB总线背板上,背板电源给整个背板供电,所述USB扩展外设模块包括通讯模块(3)、输入模块(4)和输出模块(5); 所述主控制器(I)和USB扩展外设模块均通过与各自相连的USB集线器(2)接入USB3. O串行总线完成数据通讯,主控制器(I)与上位机(6)相连,主控制器(I)实现与上位机(6)的数据交互和对下行USB扩展设备的控制; 所述主控制器(I)的控制方法按以下步骤进行 第一步,主控制器(I)启动,系统初始化,主控制器(I)判断是否有设备加入或退出系统,如果有设备加入系统,则进入第二步,如果有设备退出系统,则进入第三步; 第二步,主控制器(I)分配增加设备内存,然后进入第四步; 第三步,主控制器(I)释放该退出设备所占内存; 第四步,主控制器(I)判断新增设备的类型,如果新增设备为通讯模块(3),则进入第五步,如果新增设备为输入模块(4),则进入第六步,如果新增设备为输出模块(5),则进入第七步; 第五步,主控制器(I)主动发送查询包,然后等待接收通讯模块(3)发送的启动包,所述启动包的信息包括插槽位置和通讯协议,主控制器(I)接收到通讯模块(3)的启动包后发送可操作状态包通知通讯模块(3)进入正常操作状态,接着主控制器(I)发送配置信息包,然后等待上传数据,所述配置信息包包括通讯模块连接设备的地址、数据上传时间和数据上传字节数,最后主控制器(I)进行数据处理为上位机软件提供所需数据; 第六步,主控制器(I)等待接收输入模块(4)的启动包,主控制器(I)接收到启动包后发送应答帧,然后等待接收输入模块(4)发送的数据并判断收到数据的类型,如果收到数据为正常数据包,则发送心跳包给输入模块(4)并解析数据包,提供给上位机(6),如果收到数据为错误帧,则发送复位命令给输入模块(4),使输入模块(4)复位重启; 第七步,主控制器(I)等待接收输出模块(5)的启动包,主控制器(I)接收到启动包,则发送输出控制包和心跳包给收输出模块(5),主控制器(I)判断收到数据包是否为错误帧,如果主控制器(I)接收到不是错误帧,则主控制器(I)继续发送输出控制包和心跳包给收输出模块(5),如果主控制器(I)接收到错误帧,则发送复位命令,使输出模块复位重启。2.根据权利要求I所述的一种基于USB总线的PLC通讯模块,其特征在于所述通讯模块(3)与主控制器(I)的通讯方法按以下步骤进行 第一步,通讯模块(3 )启动后,等待接收主控制器(I)的查询包,然后进入第二步; 第二步,通讯模块(3)判断5秒内是否收到主控制器(I)的查询包,如果5秒内收到主控制器(I)的查询包,则进入第三步,如果5秒内没有收到主控制器(I)的查询包,则主动进入第二步; 第三步,通讯模块(...

【专利技术属性】
技术研发人员:李玮吴晓闯孟郁金王玉宏王耀华田涛李峰于东伟
申请(专利权)人:山西联华伟业科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1