基于CAN总线的煤矿实时通信协议研究.pdf
236 基于基于 CAN 总线的煤矿实时通信协议研究总线的煤矿实时通信协议研究 孙彦景孙彦景1,李,李 燕燕1,钱建生,钱建生1,马晓栋,马晓栋2(1.中国矿业大学信息与电气工程学院,徐州 221008;2.中国矿业大学计算机学院,徐州 221008)摘摘 要:要:根据煤矿监控系统中周期数据和非周期数据对时间的不同要求,在 CAN 总线非破坏性优先权逐位仲裁规则的基础上,提出一种节点传递法则,有效地减小数据碰撞的概率,解决帧传输延时的不确定性,提高信道的使用率和传输数据的实时性,介绍该实时通信协议,给出例外事件的处理方法,讨论并分析帧最大传输延时的具体计算方法。关键词:关键词:节点传递法则;最大传输延时;CAN 总线;实时通信协议 Research on Coalmine Real-time Communication Protocol Based on CAN Bus SUN Yan-jing1,LI Yan1,QIAN Jian-sheng1,MA Xiao-dong2(1.School of Information and Electrical Engineering,China University of Mining&Technology,Xuzhou 221008;2.School of Computer,China University of Mining&Technology,Xuzhou 221008)【Abstract】According to the different demands of periodic and aperiodic data,the regulation of node transfer is presented based on non-destroyed priority bit-by-bit arbitrate regulation.The probability of data collision is minished effectually,and a limited transmission time is ensured.The maximum delay time is made adjustable and the real-time of the data communication is improved.The real-time protocol is described detailedly and the method of exception is given.View of the new protocol,the calculating methods of maximum transmitting delay is discussed and analyzed.【Key words】node transfer rule;maximum transmission delay;CAN bus;real-time communication protocol 计计 算算 机机 工工 程程 Computer Engineering第第36卷卷 第第10期期 Vol.36 No.10 2010 年年 5 月月May 2010工程应用技术与实现工程应用技术与实现 文章编号:文章编号:10003428(2010)10023603文献标识码:文献标识码:A 中图分类号:中图分类号:N9451 概述概述 CAN总线作为系统各设备之间的通信网络,具备很多优点,是煤矿安全监控系统方案设计中比较理想的选择,因此,近年来涌现出大量基于CAN总线的煤矿安全监控系统。然而CAN通信方式大多是主站轮询或是像TTCAN协议一样基于时间定时触发,在确保数据实时性方面有一定的局限性。分析煤矿系统中数据的特点1,可将数据分3类:第1类为报警信号、重要状态值、事件等突发性硬实时数据;第2类为周期性的信号数据,这类数据以一定的周期采样,刷新频率较高;第3类数据为发布的控制命令,设置信息等命令数据。本文讨论一种新型的实时性协议CSMA/NT(Carrier Sense Multiple Access with Node Transfer),对于周期性数据和突发性数据的特点,侧重于解决突发性硬实时数据的实时性,它结合了非破坏性优先权逐比特仲裁规则和节点传递法则,有效减少数据的碰撞概率及数据延时,提高信道的利用率,保证突发性硬实时数据的实时性。2 非破坏性优先权逐比特仲裁规则非破坏性优先权逐比特仲裁规则 当总线空闲时,任何节点均可开始发送帧,并且发送标志字段的节点,同时也在监测信道。若有2个或更多的节点同时发送帧,则可能产生冲突。解决的办法是采用非破坏性优先权逐比特仲裁规则。仲裁期间,每个发送器将自身发送的位电平同总线上监测到的电平进行比较。若相等,则节点可以继续发送。当送出一个“隐性”电平,而监测到的为“显性”电平时,表明节点丢失仲裁,并且不应再送更多位。当送出“显性”电平,而监测到“隐性”电平时,表明节点检测出位 错误2-3。如图1给出一个CAN协议仲裁过程实例,参入者13在点同时开始仲裁过程,参入者2在点失去总线访问权,而参入者1在点,且分别转成接收模式;在仲裁阶段结束点,只有参入者3拥有总线的访问权,并继续向总线发送报文。图图1 CAN协议仲裁过程实例协议仲裁过程实例 3 节点传递法则节点传递法则 现做如下规定:基金项目:基金项目:国家“863”计划基金资助项目(2007AA06Z114);江苏省高新技术基金资助重大项目(BG2007012);中国矿业大学科研基金资助项目(OC080303)作者简介:作者简介:孙彦景(1977),男,副教授,主研方向:监测监控系统,实时系统;李 燕,硕士研究生;钱建生,教授、博士生导师;马晓栋,硕士 收稿日期:收稿日期:2009-12-30 E-mail:yanjingsun_ 237(1)CAN总 线 上 各 节 点 的 节 点 号 依 次 设 定,如1n,2n,in,nn(为便于表述,节点和节点号都用in表示),中间不允许有漏号。节点的传递只与节点号有关,与节点的物理位置无关。(2)各节点发送数据时携带本节点的节点号。(3)突发性数据的优先级大于周期性数据的优先级。节点传递法则(node transfer)描述如下:各节点的突发性数据随时可以上传,即监测到危险数据,立即上传报警信号。各节点只有符合了本节点传递周期数据的判断条件才能发送周期性数据,如图2所示,图2(a)为首节点1n发送周期性数据的条件,图2(b)为其他节点(2nnn)发送周期性数据的条件。xnnn=(a)首节点发送数据的条件 1ixnn=+(b)其他节点发送数据的条件 图图2 节点发送周期性数据的判断条件节点发送周期性数据的判断条件 CSMA/NT的执行流程如下:当总线上节点in正在发送周期性数据时,这时除了节 点in外的其他节点都为接收模式,节点1in+监测到自己符合发送周期性数据的判断条件,于是发送本节点的周期性数据。接着节点2in+发送周期性数据,即一个节点接着一个节点传送数据。而当节点in正在发送周期性数据时,节点xn产生报警信号,当总线一旦空闲,节点1in+和节点xn会同时向总线上发送数据,由于突发性数据的优先级设置为最高,节点xn通过总线仲裁得到总线的访问权,突发性数据得以优先发送,保证了硬实时数据的实时性。节点xn发送完突发性数据,节 点1in+的周期性数据继续发送。4 事件处理事件处理 由于节点传递法则是每个节点在收到前一节点的周期性数据后才启动本节点发送周期帧,若某一节点出现故障,则它以后的节点都将无法发送,即某一节点失效了。网络运行过程中还会遇见新节点申请加入的情况。4.1 节点失效节点失效 这里规定,任一节点如果监测到接收的数据是周期性数据,且其节点号xn加2等于本节点的节点号in,则启动定时器,定时时间为传送1个突发帧和1个周期帧的时间,若定时时间到,还没有接收到数据,则向前一节点1in发送命令帧,要求其发送周期帧,若仍然没有收到数据,则认定该节点出现故障,则修改本节点发送周期性的判断条件为:2ixnn=+。如图3所示。图图3 节点失效处理过程节点失效处理过程 4.2 新节点的加入新节点的加入 这里规定,若当前网络中最大节点号为nn,则新加入的节点只能设定其节点号为1nn+。当新节点加入时,新加入的节点发送命令帧给首节 点1n,修改首节点中储存的最大节点号nn为1nn+。5 CSMA/NT最大传输延时的分析最大传输延时的分析 由文献4可得现场总线的简化传输延时数学模型为 delayTblockT+frameT (1)由文献5可知,单个扩展数据帧和标准数据帧的传输延迟分别表示为 5486485framebitconsnTnTP+=+(2)3484485framebitconsnTnTP+=+(3)在CSMA/NT中,对于突发帧,阻塞时间blockT就是突发帧产生时,当前周期帧的发送时间,因此,当一周期帧刚开始发送时突发帧产生,则突发帧的传输延迟时间最大,从而得到突发帧的最大传输延时模型。max()()()frameframeTparTperTpar=+(4)其中,max()Tpar表示突发帧的最大传输延时,表示()frameTper周期帧的发送时间;()frameTpar表示突发帧的帧时间。对于周期帧,阻塞时间blockT就是周期帧与突发帧发生冲突退避后突发帧的发送周期,因此,可计算出周期帧的最大传输延时为 max()()()frameframeTperTparTper=+(5)为了方便分析,假设周期帧和突发帧的帧时间相同都为frameT,于是,周期帧和突发帧的最大传输延时相同,记为 max2frameTT=(6)结合式(2)、式(3)、式(6)可得扩展帧和标准帧的最大传输延时分别为 max5482 6487489655nnnTBB+=(7)238 max3482 4485089655nnnTBB+=(8)由式(7)、式(8)可知,maxT与帧格式(标准帧或扩展帧)、字节数以及总线的波特率有关。显然扩展帧的最大传输延时总是大于标准帧的传输延时。然而由于标准帧的标识符只有11位,不足以表示足够的信息,因此在实际应用中,应多用扩展帧传输数据。图4给出了扩展帧最大传输延时在不同波特率下随字节数变化的情况。可以看出,当帧的字节数增加时,最大传输延时跟着增大;当总线的波特率增加时,帧的最大传输延时减小,而且当总线的位传输速率很高时,报文的最大传输延时只有零点几毫秒,传输延时非常小,实时性很高。图图4 字节数和波特率对传输延时的影响字节数和波特率对传输延时的影响 分析最坏情况下报文的延时,假设数据帧为扩展帧格式,总线的波特率为100 Kb/s,数据长度为8个字节,由式(8)得报文的最大传输延时maxT=3.032 ms。在实际应用中,总线的波特率远大于100 Kb/s,而且突发帧和周期帧的数据长度也不总是8个字节,因此,延时时间更小。6 结束语结束语 本文采用节点传递法则和非破坏性优先权逐比特仲裁规则,既提高信道的利用率,又能够确定帧的最大传输延时时间,保证实时数据的实时性,尤其体现在硬实时突发数据的实时性上。参考文献参考文献 1 孙彦景,钱建生,裴立瑞,等.基于工业以太网的KJ82矿井综合监控系统J.计算机工程,2008,34(5):237-240.2 薛 雷,李德华,关景火.基于分布式动态优先权队列实时可调的 MAC 协议J.通信学报,2003,24(5):64-71.3 张凤登.现场总线技术与应用M.北京:科学出版社,2008.4 佟为明,高洪伟,陈培友.CAN 总线传输延时特性的研究J.仪器仪表学报,2007,28(4):295-297.5 Wu Hao,Zhu Yuan,Tian Guangyu,et al.An Improved CAN Protocol Implemented in a Fuel Cell VehicleC/Proceedings of the 20th Electric Vehicle Symposium.Long Beach,CA,USA:EVS Press,2003.编辑 陈 文(上接第200页)4.1 实验环境与数据实验环境与数据 本文的FCM和RSDIFC-GEP算法由C+编写实现,并与ENVI 4.2中的K-Means和IsoData对比。研究区为南宁市区2006年获得的分辨率为30 m的邕江河谷盆地,含7个波段的TM遥感影像,选取7431波段的512512个像元。4.2 实验参数实验参数 为了便于对比,本文均聚类为5类。FCM的参数:0.001,T100,m2.5。RSDIFC-GEP中GEP的主要参数:种群为100,最大进化代数为2 000,基因头长为10,基因数为5,连接函数为“+”,变异率取0.044,各插串率为0.1,各重组率为0.3。K-Means和IsoData的参数:除聚类数外其他默认。4.3 结果图结果图 K-Means/IsoData,FCM,RSDIFC-GEP聚类图分别如 图2图4所示。当聚类数为5时,K-Means和IsoData的聚类图完全相同1。图图2 K-Means/图图3 FCM聚类图聚类图 图图4 RSDIFC-GEP IsoData聚类图聚类图 聚类图聚类图 4.4 结果分析结果分析 由表2可知,对总体精度而言,FCM比K-Means/IsoData高23.9%;RSDIFC-GEP比FCM高7.7%。对Kappa系数而言,K-Means/IsoData的Kappa系数为0.52;FCM的Kappa系数为0.71,而RSDIFC-GEP的Kappa系数为0.78。通过对比可知,RSDIFC-GEP算法优于FCM算法,而FCM算法优于K-Means/IsoData算法。表表2 总体分类精度、总体分类精度、Kappa系数对比表系数对比表 算法 总体分类精度/(%)Kappa系数K-Means/IsoData61.8 0.52 FCM 76.6 0.71 RSDIFC-GEP 82.5 0.78 5 结束语结束语 为了弥补遥感数字图像传统聚类算法的不足,本文引入遗传计算家族革命性的新成员GEP,结合FCM来处理遥感数字图像。该算法利用外层GEP算法的全局寻优能力,确定最佳分类数和初始聚类中心,再利用内层FCM算法的模糊聚类和局部快速收敛的特性获得对应遥感数字图像的最优聚类。经过实验表明聚类精度提高显著,达到了预期效果。但是将GEP算法应用于遥感数字图像聚类处理是一个全新的研究方向,尚有诸多问题需要进一步的研究与完善。参考文献参考文献 1 韦玉春,汤国安,杨 昕,等.遥感数字图像处理教程M.北京:科学出版社,2007.2 曾志远.卫星遥感图像计算机分类及典型地域应用研究M.北京:科学出版社,2004.3 马建文,李启青,哈斯巴干,等.遥感数据智能处理方法与程序设计M.北京:科学出版社,2005.4 陈 瑜,唐常杰,叶尚玉,等.基于基因表达式编程的自动聚类方法J.四川大学学报:工程科学版,2007,39(6):107-112.5 侯惠芳,刘素华.一种改进的基于遗传算法的模糊 C-均值算 法J.计算机工程,2005,31(17):152-154.编辑 任吉慧