咨询电话

ENGLISH0755-86329511
学习专题

咨询电话

0755-86329511
您的位置:首页 > 学习专题 > 专业技术专题 > 工业自动化称重仪表>详情页

称重仪表通讯故障的诊断与排除

发布时间:2020-10-20 10:44:24 |来源:网络转载

1概述
衡器使用中经常需要与计算机、PLC和DCS系统通讯,以实现自动控制、计算机管理等需求。衡器仪表的通讯也是经常出故障的环节。本文就衡器仪表通讯中常用的RS232和RS485串行接口的通讯故障现象、原因及排除方法做了一些介绍,希望对衡器的安装调试人员和使用维护人员有一些帮助。
2通讯总线与通讯协议
按通讯接口的电气特性,可分为RS-232和RS-485o
称重仪表的RS-232接口通常是简化的版本,仅使用发送TxD、接收RxD两根数据线和地线GNDORS-232采用不平衡传输方式,信号线对地-3V到-15V表示逻辑1,+3V到+18V表示逻辑0。不平衡传输方式的干扰抑制能力较差,容易受到共地噪声和外部干扰的影响,一般用于低速、短距离的通讯,通讯距离W15m。
RS-485采用两线平衡传输方式,一般称同相端为A,反相端为B。发送端当数据为1时,A电平相对B电平为+2V~+6V,为0时,A电平相对B电平为-2V~-6V;在接收端当A电平比B电平高于200mV时,输出为1,当A电平比B电平低于200mV时,则输出为0;信号线的共模电压范围为-7V~+12V。RS485总线抗共模干扰能力较强,最大传输速率为10Mbps,传输速率与传输距离成反比,在100Kbps的传输速率以下,可以达到1200m通信距离,如果需传输更长的距离,需要加485中继器。RS-485总线一般最大支持32个节点,如果使用特制的485芯片,可以达到128个或者更多的节点。RS485一般采用终端匹配的总线型结构,不要用环形或星形网络。在传输率较高且通讯距离较长时需要加终端电阻,防止反射造成误码。因为大多数双绞线电缆特性阻抗大约在100Q~12011之间,故终端电阻一般取12011o称重仪表通讯接口一般采用异步串行方式,有4个重要参数必须双方一致:波特率、数据位个数、停止位个数和奇偶校验。数据位一般为7位或8位,停止位有1位、1.5位或2位,奇偶校验有无校验、偶校验、奇校验或校验位置1、置0等几种方式。通讯接口的传输率一般有300pbs、600pbs、]200pbs直到数Mpbs。
通讯协议就像通讯双方交流的语言,必须双方一致才能正确交流。许多称重仪表都有自己的通讯协议,所以必须按仪表生产厂规定的协议格式才能进行通讯。为了保证数据传输正确,许多协议采用了校验和,校验和的计算方法和表示方法也各不相同,上位机通讯软件编程时需要仔细推敲。
Modbus协议是标准的通讯协议,采用Modbus协议的仪表,只要知道需要数据的地址即可读取,可方便地与PLC或组态软件通讯,组建自动化控制系统。串口通信的Modbus协议分RTU模式和ASCII模式。RTU是必备的模式,传输效率较高;ASCII是可选的模式。使用组态软件编程时要注意,许多组态软件按照一些PLC厂商的习惯,将Modbus功能码与变量地址结合起来作为变量的地址,例如西门子和莫迪康系列用Odddd表示输出线圈,Idddd表示输入位寄存器,3dddd表示输入寄存器,4dddd表示保持寄存器,dddd表示地址,范围按系统不同为1~9999或1~65535,读写时系统自动选用相应的功能码。中航电测和上海耀华的C602、C606+等系列仪表的说明书则按GBfT19582.1的方式定义变量的地址,变量地址从0开始计算,因此使用组态软件时要进行相应的转换。比如读C602仪表整数表示的净重,按C602说明书为输入寄存器0和保持寄存器0,按西门子或莫迪康系列则为30001和40001o另外变量的表示形式是整数还是浮点数,高低位的排列次序,变量的长度等也要特别注意。C602的数据是按高位字节、次高位、次低位、最低字节排列。
3通讯故障常见原因
仪表通讯的调试是比较麻烦的事情,许多因素会影响正常的通讯功能。下面按安装调试和使用的不同的阶段分析可能的故障原因,为排除通讯故障提供一些思路。
3.1在系统安装与调试阶段容易出现的故障原因有:
3.1.1接线错误
比如RS232通讯中,仪表的TxD要与上位机的RxD连接,仪表的TxD与上位机的RxD连接,仪表的GND与上位机的GND连接。常见的现象是一端RxD和TxD接反。
RS485总线经常出现的现象是A、B两线接反。需要注意的是,有的厂家A、B的定义与通常的习惯不一致。比如HBM公司的AD104等数字模块就是A为反向端,B为同相端,与一般的习惯相反。有的仪表如耀华的C602等RS485采用四线制总线,如果要接两线制RS485总线,要将仪表的T+与R+,T-与R-端子分别短接,再与A、B连接。虽然RS485采用两线平衡的方式传输,理论上不需要连接地线,但是如果共模电压超出了规定的-7V-+12V范围轻则会干扰通讯,重则会损坏接口器件。我们曾实测连接一台使用开关电源的仪表的接地线与一台计算机接地线之间连线的电流,在接通仪表电源的瞬间,流过连接线电流的最大峰值会达到数安培。如果仪表与计算机通讯接口接地线没有连接,这个电流将流过接口信号线,极可能会损坏器件。
3.1.2通讯协议不一致
如前所述,如果双方的通讯协议不一致,是无法进行有效的通讯的,在大多数情况下,哪怕是错一个空格符都能造成通讯故障。有时一些与协议有关的隐性问题也会影响通讯。曾遇到一个系统的通讯故障的原因是由于某型号的PLC在发出查询命令后没有及时释放RS485总线,而仪表响应时间太短,造成总线冲突、通讯失败。后来修改了仪表通讯程序,延迟响应PLC的指令才正常通讯。
3.1.3连接方式不合适
RS485要采用总线连接方式,即用一根双绞线连接所有的设备。特别是当波特率较高、设备分散的情况,釆用星型连接将使通讯非常不稳定,这时如果必须用星型连接的话,要通过RS485集线器连接。通讯距离较长、通讯速率较高或干扰较大的场合,通讯线要选用专门的RS485电缆,两端要加上终端电阻。如果是多线对的RS485电缆,一个总线一定要接同一对双绞线。
3.1.4空闲时的总线状态
RS485总线如果没有适当的上拉或下拉,会使总线电平在一个不确定或错误的状态,影响通讯的稳定性或不能通讯。在总线空闲状态,应确保信号线A的电平高于B的电平,即逻辑电平处于“1”的状态。
3.2在系统投产以后出现故障的常见原因有
3.2.1接口电路的故障
接口电路损坏的情况比较常见,许多原因会损伤接口电路如静电放电、带电插拔接口的连接件、电源线上浪涌电流的冲击、接口电路没有连接地线等等。接口电路损坏是使用中通讯故障的主要原因。
3.2.2线路故障
由于各种原因使通讯线路断路、短路,接插件氧化、松动造成接触不良都会使通讯中断。
3.2.3设置错误
仪表或上位机的通讯设置被操作人员无意中错误修改,也是通讯故障的一个原因。
4通讯故障的诊断与排除
有一些合适的工具对排除通讯故障会有很大的帮助。常用的工具有:万用表、示波器、通讯监控软件、监控计算机等,最起码也要有一块万用表。
下面以XK3190-C602仪表为例,按故障诊断排査的次序介绍各种方法。
首先要检查核对接线是否有错误,C602有两个通讯口,通讯口1是RS232接口,通讯口2是RS232/RS485共用,用主板上的跳线选择通讯模式。出厂时为RS232模式,如果用RS485模式要将主板上的JP4跳线改在RS485的位置上。如果采用两线制RS485,接线时要将R+、T+和R-、T-分别短接。排除了接线错误才可以进行下一步的调试工作。再次强调要特别注意RS485总线的地线是否接好。
在调试仪表与上位机通讯时,调试时首先设置和检査仪表波特率、数据位、停止位和校验位等通讯参数,应与上位机的设置一致。如果上位机工作软件通讯异常,可用串口调试软件测试通讯接口。网络上有许多免费的串口调试软件可下载使用。如果上位机软件是采用指令方式通讯而收不到仪表的应答,可先将仪表设置为连续发送模式。上位机能收到仪表的数据后再调试指令通讯方式。如果上位机软件采用比较复杂的协议如Modbus协议,可先把串口2设置为指令方式,将仪表地址设置为“1”,用串口调试软件按十六进制方式发送“024141303003”即"握手”指令,上位机应能收到同样的返回数据,即表示仪表与计算机的双向通讯是正常的。如果收不到返回数据,将串口1关闭,看上位机发送时仪表“通讯”指示灯是否点亮,如果指示灯亮但没有返回数据,可能是波特率、地址、校验等通讯参数不对;如果“通讯”不亮,则可能是接线错误、接口损坏等原因。
如果通讯口2的RS485通讯不正常,可先用RS232方式测试,如果RS232方式通讯正常而RS485方式不正常,则检查接线是否有问题,主机侧的RS232/RS285转换器或USB/RS485转换器是否正常。
不能通讯而目测找不到接线和设置错误,可以通过测量总线电压来进一步检查。
检测RS232接口,在总线空闲即仪表和上位机均未发送数据时,用万用表直流电压档在仪表端子上测量RS-232接口RxD、TxD对GND端子的直流电压,正常情况两线的电压在-5V--10V之间。如果RxD电压接近0V,即表示该线没有与上位机RS-232发送端连接,可能是两线接反、线路短路或断路。如果TxD电压接近0V,将线路断开再测量电压,如果仍接近0V,是仪表接口损坏,如果电压恢复正常了,则是线路短路。两线电压正常但不能通讯,将仪表设置为连续发送状态,用万用表交流电压档测量TxD端子与GND端子的电压,应有几百mV到几V的电压。如果有交流电压而上位机没有收到数据,检查上位机串口的设置是否正确。如果没有交流电压,检查仪表串口的设置是否正确。
检测RS485接口,在总线空闲时用万用表直流电压档在仪表端子上测量T+、T_之间的电压,没有加总线终端电阻时电压应在3V以上。如果是四线制接法,还要测量R+、R-之间的电压。如果电压为0V左右,可以加适当的上拉电阻。C602主板上JP3跳线1~2、5~6之间短接为接收端上下拉电阻有效,3~4短接为120Q终端电阻有效。电压正常但不能通讯时,将仪表设置为连续发送状态,用万用表交流电压档测量T+、T_之间的电压,应有几百mV以上的电压。如果有交流电压而上位机没有收到数据,检查上位机串口的设置是否正确,RS485转换器是否失效。检测接收电路可参照上述RS232的方法,看通讯指示灯是否点亮来判断是否收到上位机数据。
可用万用表测量通讯接口端子对地线端子的电阻大致判断接口电路是否损坏。用数字万用表测量正常的RS232接口端子和没有上下拉电阻的RS485接口端子对地的电阻大于兆欧级,如果某接口电阻异常小,只有数千欧甚至更低,则该接口已经损坏。
有时复杂的通讯故障需要用示波器等仪器检测,可以方便地发现总线冲突、接口电路性能下降等较软的故障。特别是有的示波器有协议分析的功能,更方便检测软件方面的故障。
用串口调试软件可以通讯但用上位机软件不能正常通讯,可咨询软件供应商解决。调试应用软件与仪表的通讯时可以用CommMonitor、ComskyAccessPort等串口监控工具软件采集应用软件如与仪表串口的通讯数据,协助分析故障的原因。
调试PLC与称重仪表的通讯时可参考上述方法,也可以用一台监控计算机采集PLC与仪表之间的通讯数据,分析通讯故障原因。

 

文章来源于网络转载,侵删

分享到