你的位置:首页 > ASP.net教程

[ASP.net教程]【工业串口和网络软件通讯平台(SuperIO)教程】八.SuperIO通讯机制与设备驱动对接的说明


1.1    通讯机制说明

      通讯的总体机制采用呼叫应答方式,就是上位机软件主动发送请求数据命令,下位机终端接收到命令后,并校验成功,返回相应的数据。

(1)串口通讯机制包括:轮询模式。

      串口总线涉及到一对一的通讯、一对多的通讯,为了避免总线上数据的冲突问题以及环境干扰的问题,在保障通讯稳定性的前提下,只采用轮询通讯机制。一个设备发送、接收完成数据后,才进行下一个设备的通讯。但是这种通讯效率比较低,如果要提高通讯效率,可以增加串口服务器,在SuperIO平台上实现一个串口对应多台现场设备进行通讯,也就是把现场的所有设备平衡负载到不同的串口上。

(2)网络通讯机制包括:轮询模式、并发模式和自控模式。

       轮询模式与串口通讯机制中的轮询模式相同,但是对于网络通讯时,这个操作模式的效率是非常低,不能体现网络通讯的优势。基于这样的考虑,在轮询模式的基础上,增加了并发模式和自控模式。

       并发模式,由SuperIO的内部来协调实现,通过调用IRunDevice设备接口的GetSendBytes函数获得发送的命令包,集中发送所有设备的数据。接收数据部分采用异步监听方式,接收相应设备的数据。并发模式的通讯周期由SuperIO平台统一进行调度,不能自主控制请求数据的周期,在此基础上增加了自控模式。

       自控模式,二次开发者在开发设备驱动时,可以定时通过OnSendDataHandler发送请求数据命令,接收数据部分采用异步监听方式,接收相应设备的数据,做到即时请求即时响应。

另外一种情况,现场硬件终端会主动发送状态字数据给上位机软件,这时候就需要能够主动监听接收数据事件,这是轮询模式做不到的。遇到这类情况,建议使用自控模式进行通讯。

 

1.2    通讯机制与设备驱动对接

     SuperIO包括两大部分:通讯部分和设备驱动部分。

(1)    通讯部分如何与设备驱动协调工作?两部分主要是通过IRunDevice接口实现两部分之间的协调工作,线程、异步、同步等机制由SuperIO内部来完成。

(2)    通讯部分接收到数据后如何传输到相应的设备上?轮询模式不存在这个问题,主要涉及到并发模式和自控模式,因为这两部分采用的是异步监听数据的方式。解决这个问题有两种方式:第一种、通过接收协议驱动获得设备ID来识别相应的设备。第二种、通过设备设置的IP地址来识别相应的设备。现在的SuperIO平台采用的是第二种方式。

(3)    并发模式和自控模式如何实现通讯中断状态?在链路不通的情况下,发送请求命令,没有返回相应的数据,也不过触发运行设备的接口,所以通讯状态也不会改变,也不会做出任何反应。解决这个问题的方式是,发送请求数据命令超过3次,每次都没有返回相应的数据,就会触发运行设备接口,来完成运行设备的整个流程。

 

作者QQ:504547114

交流QQ群:54256083


官方网址:http://www.bmpj.net

源文章地址:http://www.bmpj.net/index.php?m=article&f=view&id=8




办理毛里求斯旅游签证跟团毛里求斯旅游需要多少钱几月份去毛里求斯旅游最好什么时候去毛里求斯旅游最便宜去毛里求斯旅游跟团要多少钱泰国曼谷十月份天气如何?穿什么衣服好? 去泰国之前要准备哪些东西?要带什么? 去曼谷旅游一次最低要花多少钱? 去马尔代夫旅游一次最低要花多少钱? 包装的北京烤鸭怎么吃? 北京烤鸭怎么吃好?需要什么作料的? 元旦放假深圳周边好玩的地方推荐 中国最忙的城市和最悠闲的城市是哪个城市? 马尔代夫的特色海上游乐项目都有哪些? 马尔代夫浮潜会不会有鲨鱼? 8月份泰国天气如何?适合穿什么? 马尔代夫浮潜要注意什么? 2015东部华侨城圣诞节有什么活动?深圳东部华侨城2015圣诞节活动介绍? 2015深圳东部华侨城12月份有什么活动?东部华侨城12月活动介绍? 2015-2015深圳欢乐谷圣诞节活动介绍?深圳欢乐谷圣诞节有哪些活动? 上海绝佳特色泡汤地图:清花池温泉会等 1206SA121KAT1A Datasheet 1206SA121KAT1A Datasheet 1206SA121KAT2A Datasheet 1206SA121KAT2A Datasheet 1206SA150JAT1A Datasheet 1206SA150JAT1A Datasheet 火车票可以提前几天买票 火车票可以提前几天买票 火车票可以提前几天买票 观澜版画村好玩吗 观澜版画村好玩吗 观澜版画村好玩吗 深圳儿童公园好玩吗 深圳儿童公园好玩吗 深圳儿童公园好玩吗