文档介绍:MODBUS协议在单片机与触摸屏通信中的应用张芬(西安航空职业技术学院,陕西西安710089【摘要】文章介绍了自主开发的智能配电系统的硬件构成,重点讲述基于MODBUS通讯协议的触摸屏与单片机系统的通讯方法。该方法降低了系统设计成本,并提高了设备的通用性。目前该系统已通过用户的验收并投入使用。【关键词】MODBUS;单片机;触摸屏【中图分类号】TP29【文献标识码】A【文章编号】1008-1151(200907-0023-02(一引言目前,计算机机房的配电系统大都使用不停电系统(UPS,保证了机房的可靠供电。UPS系统下的每一路电流采用自动空气断路器进行过流保护,这种保护是有效的,但这种保护不具备智能,不能设置,不会报警,更没有供电及故障报警信息的纪录,与高可靠性的要求不相符,有进一步改造的必要和需求。我们为计算机机房开发的一套智能配电系统iPDS(IntelligentPowerDistributionSystem很好的满足了以上要求,具有智能化、人性化两大特点。(二系统构成本智能系统对机房内各路电源的电流值、漏电流值、零地电压、自动空气断路器的运行状态等信息进行实时监测、显示。具有实时报警、详细记录等功能,并可以根据用户要求灵活的配置各路监测信息。可以在显示屏上查询机房各路电源的使用情况,尽早发现和消除隐患,实时处理故障情况,进一步提高了系统的可靠性。系统由数据处理单元、数据采集节点、LED显示节点、触摸屏等组成,具体系统结构如图1所示。数据处理单元有两个CPU,单片机AT89C52和P87C591,二者通过双口RAM进行数据的交换,其中AT89C52与触摸屏通过RS-485通讯,处理触摸屏上的显示和设置信息,P87C591处理CAN总线上的交互信息。图1智能配电系统结构图通常情况,触摸屏支持与多种PLC通讯时的相应的驱动程序,但和单片机通讯时,内部并无相应的驱动程序,需要借助MODBUS协议来完成二者之间的通讯。故编制程序前,首先应该对MODBUS协议有较深刻的理解和认识。(。该协议是一种标准的串行通讯协议,使用标准的串行接口(RS485,数据通讯采用主/从方式,主设备可单独和从设备通信,也能以广播方式和所有从设备通信。通过此协议,控制器之间、控制器通过网络和其他设备之间可以实现串行通信。该协议已经成为通用工业标准。采用MODBUS协议,不同厂商生产的控制设备可以互连成工业网络,实现集中监控。,称为报文,每一条报文包括三部分:报文头(包括:站址、命令码和字节数、数据和检验码。串行通讯时是以一个字符(加上特定附加位构成一“帧”作为最小传送单位的,在MODBUS协议的报文中,每帧包括11位:1个起始位、1个校验位、1个停止位和8个数据位(1个字符。报文头、数据和校验码由若干个字符组成。本系统使用MODBUS的RTU传输模式完成触摸屏和单片机系统的通讯功能。使用RTU模式,。传输的第一个域是设备地址。网络设备不断侦测网络总线,包括停顿间隔时间内。当第一个域(地址域接收到,每个设备都进行解码以判断是否发往自己的。在最后一个传输字符之后,。一个新的报文可在此停顿后开始。在实际应用中,一般采用4个字符的传输时间标志报文的起始和结束。一个典型的报文结构如表1所示。表1RTU报文结构起始间隔设备地址功能代码数据CRC校验结束间隔T1-T2-T3-T41个字节1个字节n个字节2个字节T1-T2-T3-T4MODBUS网络只有一个主机,所有通信都由他发起。在本系统中,单片机是主机,触摸屏是从机。,报文包括了一基于CRC方法的错误检测域。CRC域检测了整个报文的内容。CRC域是两个字节,包含一16位的二进制值。它由发送设备计算后加入到报文中。接【收稿日期】2009-05-08【作者简介】张芬(1980-,女,陕西渭南人,西安航空职业技术学院教师,硕士研究生,研究方向为现场总线、运动控制、计算机控制。收设备重新计算收到报文的CRC,并与接收到的CRC域中的值比较,如果两值不同,则有误。正常的通讯过程中由于涉及了CRC校验问题,而这个校验过程是需要占用软件时间的,它将影响终端的应答速度。如果采用标准的CRC计算公式来做接收和发送报文的CRC校验码,需要占用较多的时间,在使用较高速度通讯时是不允许的。本设计采用了查表法计算CRC,速度非常快,能够满足高速通讯的需要。(四系统参数设置本系统人机界面所有画面均采用EasyBuilder500全中文软件进行组态。系统将单片