吴洪坤,付小娟,吴振远,郭艳影
(广州民航职业技术学院飞机电子与部件系,广东广州510403)
基于RS485总线的BACnet MS/TP状态机实现
吴洪坤,付小娟,吴振远,郭艳影
(广州民航职业技术学院飞机电子与部件系,广东广州510403)
摘要:对主从/令牌传递协议(BACnet MS/TP)的工作流程和工作状态转换过程由浅入深地进行了描述。该协议属于BACnet数据链路层协议,运行于RS485总线之上。通过对协议工作状态转换的深入分析,给出了MS/TP状态机的实现方法。经验证表明,基于该状态机采用C语言设计的软件在总线设备数量为60个,RS485波特率为38.4 kbps的条件下,工作稳定。
关键词:BACnet;RS485;状态机;主从/令牌传递
BACnet(A Data Communication Protocol for Building Automation and Control Network)是一种楼宇自动化控制网络的通信协议,最初是由美国冷暖空调工程师协会标准项目委员会为楼宇控制中的暖通控制项目制定的一个行业标准,颁布于1995年6月份。其目的就是使不同厂家生产的暖通空调设备之间能够实现设备的互操作,这样在一个项目中就可以采购不同厂商的设备来组成一个完整的系统。BACnet标准在数据链路层上支持以太网、ARCnet、MS/TP、PTP、LonTalk和BACnet/IP。
本文将对基于RS485总线的数据链路层协议MS/TP(Master Slave/Token Passing),即主从/令牌传递协议的工作流程进行描述,并对其状态机进行设计。
BACnet MS/TP建立在主从通讯的基础上,任意时刻,在总线上只有一个节点拥有令牌,拥有令牌的节点才可以发起通信,这就是主设备,其他节点就为从设备。主节点的任务完成后,要主动将令牌传递给下一个站点。这种通信协议有一个非常好的机制,即插即用性。……