您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > Plc与变频器的通信
Plc与变频器的通信1.通信的基本类型通信类型可以分为两种:并行通信(ParallelCommunication)与串行通信(SerialCommunication)并行通信:是将一个数据的每一个二进制位,均采用单独的导线进行传输,并将发送与接收方进行并行连接;如下图所示•串行通信:是通过一对连接导线,将发送与接收方进行连接,传输数据的每一个二进制位,按规定的顺序,在同一连接导线上,依次进行发送与接收。如下图所示:•通过上面的介绍我们可以知道:所谓的并行通信,就是一次传输8个位(1个字节);而串行通信则一次只传输1个位;两者之间的数据传输量相差8倍,但并不是说串行通信就不好,相反串行通信却被更广泛地应用。那是因为并行通信虽然一次可以传送8个位,但是因为数据电压在传送的过程中容易因线路的因素而发生变化(最常见的是电压衰减的问题),以及信号间串扰的问题,因而使得传输的数据容易发生错误,如果传输线比较长的话,电压衰减效应及串扰问题会更加明显,数据的错误也就会比较容易发生。相比较之下,串行通信一次只传1个位,处理的数据电压只有1个位,因此数据不容易丢失,再加上防范措施后,即可保证通信数据的万无一失了。二、plc的通讯接口•用于通信线路连接的输入/输出线路称为接口。•连接并行通信线路的称谓并行接口;连接串行通信线路的称谓串行接口。•PLC的通信一般都是用串行通信,故PLC作通信时需要标准的串行接口。常用的标准串行接口主要有RS232接口、RS422接口、RS485接口、USB接口等等。•RS232/422/485为PLC系统最为常用的通信接口,最初都是由电子工业协会(EIA)制订并发布的,RS-232在1962年发布,命名为EIA-232-E,作为工业标准,以保证不同厂家产品之间的兼容。•RS-422由RS-232发展而来,它是为弥补RS-232之不足而提出的。为改进RS-232通信距离短、速率低的缺点,RS-422定义了一种平衡通信接口,将传输速率提高到10Mb/s,传输距离延长到4000英尺(速率低于100kb/s时),并允许在一条平衡总线上连接最多10个接收器。RS-422是一种单机发送、多机接收的单向、平衡传输规范,被命名为TIA/EIA-422-A标准。•为扩展应用范围,EIA又于1983年在RS-422基础上制定了RS-485标准,增加了多点、双向通信能力,即允许多个发送器连接到同一条总线上,同时增加了发送器的驱动能力和冲突保护特性,扩展了总线共模范围,后命名为TIA/EIA-485-A标准。•RS232与RS485的区别RS-232的通信中电压的大小代表通信的数据及状态,而地线为电压的基准位。若数据通信中发生干扰,地线接地不会受到干扰,但传输线会被干扰电压所影响而产生较高的电压信号,从而造成数据的传输错误。工业上通信线路因常常与大电力线路距离过近,所以通信RS-232的通信常常受到干扰,因此RS-485的通信方式应运而生。•与RS-232以地线为基准位不同,RS-485采用两条数据线传输线路,而通信中的电器信号时以这两条传输线路的电压相减值来表示,所以RS-485较不易受到干扰。如下图所示。TXDRXDGNDGNDTXDRXDGNDGNDA波形为:A波形为:未收到干扰时受到干扰时波形发生了变化GND波形为:GND波形为:A基于GND波形为:A基于GND波形为:RS232受到干扰前后波形发生变化SDARDASDBRDBRDASDBRDBSDAA-B的波形为:A-B的波形为:A波形为:A波形为:B波形为:B波形为:未收到干扰时受到干扰时波形没有发生变化RS485受到干扰前后波形未发生变化•此外,与RS-232不同,RS-485通信时无法同时完成数据的发送和接受,必须采取“发送”接收发送接收”的半双工通信方式。因此,RS-422的通信方式应用而生。•RS-422通信方式采用两组RS-485的线路避免干扰,并且采用RS-232的发送端(TXD)及接收端(RXD)分别设置传输线的方式,所以在RS-422中有4条设置发送端(TXD)及接收端(RXD)的传输线。RS-422不仅具有避免干扰的功能,并且发送与接受可同时进行,从而提高了通信速度。•综合得知,RS-422及RS-485可在复杂的环境下进行通信,但需要钢管来保护并且钢管本身必须接地;RS-232及RS-422采用全双工的通信方式,即可同时完成发送及接收的动作;而RS-485采用半双工的通信方式,及发送及接收的动作时不可同时实现的。三、ASCII码表•ASCII(AmericanStandardCodeforInformationInterchange,美国信息互换标准代码)是基于拉丁字母的一套电脑编码系统。它主要用于显示现代英语和其他西欧语言。它是现今最通用的单字节编码系统,并等同于国际标准ISO/IEC646。•ASCII的产生在计算机中,所有的数据在存储和运算时都要使用二进制数表示(因为计算机用高电平和低电平分别表示1和0),例如,像a、b、c、d这样的52个字母(包括大写)、以及0、1等数字还有一些常用的符号(例如*、#、@等)在计算机中存储时也要使用二进制数来表示,而具体用哪些二进制数字表示哪个符号,当然每个人都可以约定自己的一套(这就叫编码),而大家如果要想互相通信而不造成混乱,那么大家就必须使用相同的编码规则,于是美国有关的标准化组织就出台了所谓的ASCII编码,统一规定了上述常用符号用哪些二进制数来表示。•ASCII的简介ASCII码使用指定的7位或8位二进制数组合来表示128或256种可能的字符。标准ASCII码也叫基础ASCII码,使用7位二进制数来表示所有的大写和小写字母,数字0到9、标点符号,以及在美式英语中使用的特殊控制字符。0~31及127(共33个)是控制字符或通信专用字符(其余为可显示字符),如控制符:LF(换行)、CR(回车)、FF(换页)、DEL(删除)、BS(退格)、BEL(振铃)等;通信专用字符:SOH(文头)、EOT(文尾)、ACK(确认)等;ASCII值为8、9、10和13分别转换为退格、制表、换行和回车字符。它们并没有特定的图形显示,但会依不同的应用程序,而对文本显示有不同的影响。32~126(共95个)是字符(32sp是空格),其中48~57为0到9十个阿拉伯数字。65~90为26个大写英文字母,97~122号为26个小写英文字母,其余为一些标点符号、运算符号等。四、三菱FX系列PLC串行通信参数设置•1.采用串行通信方式时,必须设置下列各项参数。•①数据发送与接收速度:即设置传输速度。传输的数据是以单位时间内的电位来表示的,其中,单位时间即为传输速度,称为bps(即波特率),指每秒传送的位数(BitPerSecond)。为确保通信的正确,接收端及发送端的接收及发送速度必须一致。•②数据的位数:往往有7位或8位。该数据常常需转换成ASCII码。•③起始位:用于通知接收端开始发送数据,此项以1个位的低电位来表示,一般不须设置。•④停止位:用于通知接收端数据已发送完毕,此项用1、1.5或2个位的低电位表示,而选择方式由接收端决定。•⑤奇偶校验:它用于判定通信的数据是否有错误,可分为奇校验(Oddparity)及偶校验(evenparity)两种,也可不做同位检查(none)。•(I)奇校验:若传送数据“010011O1”,因为“1”的数量为偶数,所以传送端补一个“1”,使得电气信号为“1”+“01001101”,其中,“1”的数量为奇数。接收端接收数据时先判定“1”的数量是否为奇数,若不足奇数则表示通信有错误。•(II)偶校验:若传送数据“01001101”,因为“1”的数量为偶数,所以传送端补一个“0”,使得电气信号为“0”+“0100101”,其中,“1”的数量为偶数。接收端接收数据时先判定“1”的数量是否为偶数,若不是偶数则表示通信有错误。•⑥和校验:在通信的过程中,数据有可能受到干扰而产生错误,那么,接收端如何确认其接收的数据是否正确呢?当然,除了可以使用奇偶检验外,其他最有效的方法就是使用校验和(checksum)。校验和必须依照通信双方设置的规则来使用,使用FX系列PLC的校验和前,发送端必须先将欲传送的字符以ASCII码的十六进制表示值相加,并取后两位数作为校验和。•在通信过程中,当发送端为PLC时,则必须通过编写程序来实现校验和的功能以及接收数据与校验和的合并,从而完成数据的传送;当接收端为PLC时,PLC会自动将数据与校验和作对比。•接收端为PLC时,若校验和有错误,则PLC停止对数据的处理,同时发送一个错误码给接收端。发送端发送“XYZ’,字符转换为ASCII码的十六进制值得58、59及5A相加得“10B的十六进制值取后两位作为校验和得“0B”发送“XYZOB通信接收端“XYZOB”取后两位为扣除后两位的数据后校验和得“0B”得“XYZ”转换为AsCII码的十六进制值得58、59及5A相加得“10B的十六进制值取后两位作为校验和得“0B”相比较,相同接收数据正确接收端(PLC)FX系列PLC的校验和的使用方法发送端发送“XYZ’,字符转换为ASCII码的十六进制值得58、59及5A相加得“10B的十六进制值取后两位作为校验和得“0B”发送“XYZOB接收端“XYZOA”取后两位为扣除后两位的数据校验和得“0A”得“XAZ”转换为AsCII码的十六进制值得58、41及5A相加得“F3的十六进制值取后两位作为校验和得“F3”相比较,不相同停止处理数据发送错误码给发送端接收端(PLC)通信有误传输时FX系列PLC的校验和的使用方法•三菱FX系列PLC通过串行模块与别的设备做数据通信时,必须将PLC与设备的通信参数设为一致,否则通信将无法进行。•三菱FX系列PLC串行通信参数设置可通过对特殊寄存器D8120写入数值而完成。•例:现对通信格式的要求如下:数据长度为8位,偶校验,1个停止位,传输速率为19200bit/s,无起始位和结束位,无校验和,计算机链接协议,RS-232接口,控制协议格式1(帧结束时无回车换行)。•对照上表,可以确定D8120的二进制值为0100100010010111,对应的十六进制值为H4897。注意:设置后了D8120的值后,需对PLC进行断电,重启后PLC的通信参数才正式生效!五、三菱FX系列PLC与通信相关的指令(RS、ASC、ASCI、HEX、CCD指令)•1.RS指令•RS串行通信指令是通信功能扩展板发送和接收串行数据的指令,用于指定从FX可编程控制器发出的发送数据的起始软元件和数据点数,以及保存接收数据软元件,和可以接收的最大点数。•上述程序中,若M0=1,则PLC处于接收等待状态,它接收到数据时,自动地存储在RS指令指定的D200开始的D1个存储区中,当接收完成时,特殊继电器M8123的常开触头自动置1.若要再次接收外部数据,则需要将M8123复位•若要发送数据,则需要将发送出去的数据发在D100所在的D0个存储区中(可不必放满),在M0=1的同时让特殊继电器M8122置1,当PLC扫描到M8122为1时,则通过安装在PLC上的通信模块将数据发送出去,数据发送结束后,M8122自动复位。RS指令发送、接收数据的顺控程序如下:•RS指令使用时,要确定数据模式是16位数据处理模式还是8位数据处理模式当特殊继电器M8161=0时,为16位模式当特殊继电器M8161=1时,为8位模式•由于16位模式及8位模式,RS指令处理数据的过程不一样,因此使用是要特别注意。•具体的16位及8位数据处理传输过程如下:①、16位数据模式时数据传输过程如下:•②、8位数据模式时数据传输过程如下:•2.ASCII指令•ASCI指令是将十六进制数据转成ASCII码的指令。•在PLC与仪表通讯时,有时需要将一些ASCII数据写到仪表内,可以通过ASCI指令将十六进制数据转成ASCII码,然后写入仪表内。•ASCI指令也分为16位模式及8位模式,与RS指令一样通过M8161确定。•①、16位模式转
本文标题:Plc与变频器的通信
链接地址:https://www.777doc.com/doc-3438593 .html