远程告警通信系统架构
来源:用户上传
作者:楚宁
摘 要:CANBus告警通信网路在于建构出以CAN为传输接口的分布式监控系统,利用多种传感器与致动器做为外部物理量的输出入,并使用CAN功能的微控制器PIC18F458制作节点模组,由微控制器上类比/数位(A/D)转换器将传感器感测值转换后,将资料送至CAN汇流排上,最后由主控制室接收资料,经过计算与逻辑判断等等,最后将结果显示在LCD面板上。另外,亦可由主控制室设定比较默认值来控制节点模块上装置,或利用开关按钮发出讯息对制动器制动、关闭,以达到自动监视与控制的目的。
关键词:远程 告警 通信方式 系统 架构
CAN于1986年由德国RobertBoschGmbH最先提出[1],且Philips与Intel也同时参与发展并于之后开发出CAN控制芯片。研究开发CAN汇流排最初的动机就是为了解决现代汽车中庞大电子控制装置之间的复杂通信及减少不断增加的信号线,于是设计出一个独立的网路汇流排,使所有的周边装置都可以直接挂接在该汇流排上,CAN通信协议因而诞生。
1 CAN通信方式
CAN采取广播通信的方式,而不是使用地址的方式传递资料,也就是说我们将资料送至汇流排上,在汇流排上每个节点都能接收讯息。这些定义的讯息是由讯息辨识码(ArID)来进行辨识,其中还包括讯息优先权的仲裁判断。所以,辨识码在于网路上必须是单独且唯一的,这影响到多个讯息竞争汇流排的使用权,因而显得非常重要。
1.1 讯息发送与节点的扩充和维护
所谓广播通信是指针对讯息(Message)制定的机制,设定讯息过滤器(Filter)与讯息屏蔽(Mask)来决定节点是否要接收在汇流排上的讯息。讯息屏蔽决定讯息识别码与讯息过滤器的相对应位是否要进行比较;而讯息过滤器上相对应的位则为比较的内容。简单来说,可将Filter视为被触发的事件,而Mask则决定哪些位是可以被忽略的。当Mask的值为”1”时使用Filter来过滤此位,而当值为“0”时则无条件接受。若在未设置讯息过滤器及屏蔽的情况下,节点将会接收到每笔汇流排上的讯息。如此一来,将使得CAN不需要建立节点与节点之间的通信连结关系,这也让汇流排上的节点彼此能够共享讯息。
1.2 低传输延迟
在CAN汇流排系统中,允许节点请求传输讯框,请求传输讯框也按照优先权顺序的重要性运行,当发生超过负载的情况且有高优先权的节点立即需要信息时,该节点可以立即传送请求传输讯框请求资料。透过优先权顺序的运行,使得请求节点可以取得实时响应,并存取到所需的信息,也使系统每个节点各自等待的时间较少。
1.3 错误检验、错误通报、错误回复
CAN汇流排上错误的侦测、处理及要求资料的再传送都是由硬件来处理,同时也使用位填充的技术来做双重的讯号保护。当传送的讯息资料中连续出现五个相同准位的讯号时,不管是强势位(0)或弱势位(1),都会自动充填一个相反的位,而接收方在接收资料时更会自动把此相反位元拿掉,如此一来将更可以保证资料的完整性。在错误的侦测上,CAN会侦察五种的错误型式[2],分别为
(1)BitError:在讯框传送过程中,如果汇流排上侦察的位与传送出的位不同时,即发生BitError而停止传送。但只有用在DLC、Datafield和传送端的CRCField。
(2)StuffError:传送的资料有五个连续相同准位的位时,就自动插入一个相反的位。而当汇流排侦测到有五个连续相同准位的位时即表示发生Stufferror。
(3)CRCError:当接收端发现接收计算后的循环冗位检查(CyclicRedundancyCheck,CRC)值与实际传送的资料不一样时即表示发生CRCError。
(4)FormError:在CAN的讯框中某些栏位有其特殊指定的位值,只要这些位与规定值不同时即表示发生FormError。
(5)AcknowledgmentError:当传送端侦察到汇流排上的回应(ACKSlot)不为“0”时,表示接收端无正确的回应,即发生AcknowledgmentError,将重新传送此次的资料。
1.4 容错机制
一般的汇流排系统中,任何一个错误的节点可能会造成整个网路系统瘫痪,但是CAN能自动将有错误的节点由汇流排上排除,以避免这方面的破坏。因为CAN定义每个节点都必须执行传送错误与接收错误两个计数器,当传送错误发生时便将传送错误计数值加1,而成功时便减1;接收的错误计数值也相同。而当错误计数值超过255时,该节点将自动进入“BusOff”状态,中止任何与该节点间的传送与接收动作以维持带宽[3]。计数值小于128时为“ErrorActive”状态;大于128而且小于255时为“ErrorPassive”状态,此两种状况还不会影响该节点的正常动作,故汇流排仍将运行在“On”的状态。
2 CAN在工业的应用
CAN在工业上的应用,主要都是依使用者需求而去定义各自的形式,也就是对应用层的设计开发,在国外主要的高层协议有CANopen、DeviceNet、SDS三種开放式系统标准,相当成熟,也获得支持。CANopen在通信和系统服务以及网路管理方面,使用了CAL子集。其标准设备功能性是以“设备子协议”的形式规定,并借助于对象目录、对象索引和基于设备功能性来描述。DeviceNet高层协议是根据抽象对象模型来定义这个高层协议模型,为了建立可用的通信服务和对象的外部可见行为,以不同的设备子协议去规范不同种类设备的行为。
3 CANBus告警网路实验架构
3.1 瓦斯气体感测模块
在瓦斯感测节点模块上,我们将TGS-800R的输出电压接至节点模块且具有1颗LED警示灯。瓦斯传感器会将感测电压值送至该节点模块,透过微控制器类比/数位转换计算后,将讯号送至主控制室做逻辑判断,若此值超出我们所预定的值,主控制室则会判定有瓦斯异常,并送一讯号至该节点模块将LED致动,我们即可由LED的亮起以及主控制节点上LCD所显示的讯息得知瓦斯外泄的警报。
3.2 振动感测模块
震动传感器(ShockSensor01S),具有微振动感测的功能且无振动方向上的限制,并在耐久性上可承受至少六千万次的振动量测,且只需花费低成本的电路即可调整其灵敏度。在振动感测节点模块上,当振动(位移)发生时,震动传感器会产生一脉冲方波输出,此一方波讯号在经过滤噪声、微分和积分等处理后,传送至节点电路模块的微分控制器上,再由节点模块程序将此一讯息送至CANBus上由主控制模块接收并显示于LCD面板。
4 结语
分布式监控即“集中监视、分散控制”之意,此种架构必须运用到分散式控制系统(DCS)的技术。工厂使用机器来降低人类的负荷并增加产能,因此使用者必须随时了解机器的状况,以便知道如何因应,这就是“监视”。在了解机器或设备的相关讯息后,使用者可以针对补同的状况下达不同的输出指令,以达到系统设计的要求。将厂房或实验室现场状况传回系统控制者,其再依一定的判断法则作出相对应的控制输出,就形成了一个“监控系统”。
参考文献
[1] 赵帅帅,陈成军,王锦,等.基于STM32的波浪能发电装置远程监测系统[J].制造业自动化,2014,36(22):108-111,156.
[2] 李蒙,高仲合.基于ZigBee和GPRS的远程抄表系统设计[J].电子技术,2014,43(10):40-42,33.
[3] 张海波,史绍领.大型PLC系统不停产升级改造方法[J].港口装卸,2014(5):50-51.
转载注明来源:https://www.xzbu.com/1/view-15185399.htm