《三菱plc通信格式字.doc》由会员分享,可在线阅读,更多相关《三菱plc通信格式字.doc(9页珍藏版)》请在金锄头文库上搜索。
1、 三菱PLC通信格式字 RS485标准接口通信格式,通信格式随控制设备的通信协议不同会有差异,但B0-B7位适用于所有使用RS485总线的控制设备。而b8b15 这里没有定义,留给厂家定义。 菱FX通信规定了“b11 b10 b9” 为控制线选取方式,当使用通信板卡FX2N-485-BD时,这时b11 b10=11 RS485标准接口通信格式 位 内容 0 1 b0 数据长度 7位 8位 b2b1 校验位00:无校验(N)01:奇校验(O)11:偶校验(E) b3 停止位 1位 2位 b7b6b5b4 波特率0011:300, 0100:6000101:1200, 0110:240001111
2、:4800, 1000:96001001:19200 b11b8 未定义 b15b12 无定义三菱PLC FX2N是写入D8120, 台达PLC是写入D1120, 西门子S7-200是写入SMB30或SMB130, 而且仅B0B7这8位二进制在许多控制设备中对通信格式字有一种约定俗成的写法,其约定如下: 7 N 1 9600 _ , _ , _, _ 数据长度 校验位 停止位 波特率b15 b14 b13 b12 b11 b10 b9 b8 b7 b6 b5 b4 b3 b2 b1 b0 0 0 0 0 1 1 0 0 1 0 0 0 0 0 0 0_ _ _ _ 0 C 8 0 参数为7,N
3、,1,9600 =H0C80(所以通信格式字为H0C80) 异步传送的数据格式及常用校验码 起始码 地址码 控制码 信息码 校验码 停止码 在PLC与变频器等智能设备中,其数据信息帧结构都是HDLC信息帧设计的,一个完整的帧结构如图: 一帧数据信息的发送,是从帧头开始到帧尾结束,依次一个字符一个字符地发送,对每个字符则是 从低位b0到高位b7一位一位地连续依次发送,而一个字符一个字符地发送,字符中间是可以有间隔的,了解这一点对将来写通信程序会有所帮助的。通常把异步传送的字符数据格式和波特率一起称为 异步传送通信格式这里把由多个字符组成的数据信息帧结构称为 异步传送数据格式校验码:1求和校验码(
4、取其低8位或全部16位)可用CDD指令 2LRC校验码(这是MODBUS通信协议ASCLL方式的校验方法) 将参与校验的数据(0XH)求和,取低8位的补码为校验码。 补码=求反+1 3CRC校验码(这是MODBUS通信协议RTU方式的校验方法) 4异或校验码(将参与校验的数据依次进行逐位异或运算最后结 果为校验码) MODBUS通信协议ASCLL通信格式:1个起始位;7个数据位;1个奇偶校验位,无校验则无;1个停止位(有校验),2个停止位(无校验)。数据位是确定的,校验位,停止位,其通信格式可能的三种 1):7,E,1 2) :7,0,1 和 3):7,N,2 起始码 地址码 控制码 信息码
5、校验码 停止码“:”4位 8位 8位 n*8位 LRC 8位 8位CR, LF 控制器在MODBUS 网洛上以ASCLL码方式通信,在数据格式中每4位即HEX数1位都转换成ASCLL码发送,也就是每个十六进制字符(09 AF)都转换成ASCLL码。MODBUS 的 RTU通信方式RTU通信格式如下:1个起始位;8个数据位;1个校验位,无校验位;1个停止位(有校验时),2个停止位(无校验时)。同样,MODBUS的RTU方式通信格式只能是:8,E,1和8,0,1和8,N,2 地址码 控制码 信息码 校验码 CRC校验可以发现,RTU方式数据格式没有帧头和帧尾,那设备如何区别这一帧和下一帧呢?规定信
6、息帧的发送至少要以35个字符时间间隔开始,校验码被传送后,又要以35个字符的停顿才标志发送结束。例如:要命令变频器进行正转,它的数据格式中的功能码为06H,但是在发送信息时却不能用06H,这里必须先把0改成30H,把6改成36H,必须把十六进制的数据信息转换成ASCLL码才能发送。 但是在RTU中就不需要转换,所以RTU通信方式比较快。 例如:E = B或H45MODBUS的常用功能码名称和功能: 功能码 名称 功能 H 01 读线圈状态 取线圈状态 H 02 读输入状态 取开关输入状态 H 03 读保持存储器 读一个或多个保持存储器值 H 04 读取存储器 读一个或多个存储器值 H 05 强
7、置单线圈 强置线圈的通断 H 06 写保持存储器 把字写入一个保存存储器 H 07 回送诊断校验 把诊断报告送从站 H 0F 强制多线圈 强置一组连续线圈通断 H 10 预置多存储器 写入一组连续保持存储器值其中在变频器PLC控制系统中,常用的是03H和06H,一个是读,另一个是写。当要监控变频器运行情况时就用03H读取变频器参数值和运行状况;如果想让变频器执行运行命令和改变运行参数,则用06H写入命令即可,读Y ,M等的时候就要用到 01H。 MODBUS的查询和应答MODBUS规定:当PLC查询后,变频器回应时,它使用功能码的变化来指示是否有错误发生。对没有错误的正常应答,变频器仅回应相同
8、的功能代码。对有错或异常的应答,变频器返回相同的功能代码时, 将其最高位b7置1(MODBUS的功能代码是7位二进制数00H7FH,其最高位b7=0)。 例如:功能代码为03H时,正常应答仍为03H,异常应答时则为83H(1000 0011)同时,变频器还应将错误代码放入数据区告诉PLC发生了什么错误,PLC应用程序得到异议应答时,典型的处理是重发信息,或诊断并报告。 通信数据格式的编写 1),运行控制数据格式的编写 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
9、 - - - - - - - - - - - - - - - - - - - - - - - - - 3) PLC对变频器运行进行监控 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 把上面4种情况列成表,方便大家应用: 在PLC与 FR-A700变频器进行MODBUS RTU 通信前,先设置变频器通信参数,由通信参数的设置编写通信格式字,并将通信格式字存到PLC的D8120中。 低8位在前,高8位在后 通信数据格式及其编制 FR-A700的MODBUS RTU协议规定:数据区的首地址 = 保持存储器编号 - 40001(十进制数),得到首地址后,还必须转换成十六进制数才能发送。 和其他校验不同的是,CRC校验码是一个的16位 的校验码,其校验结果为16位二进制数,送入数字格式信息帧是低8位在前,高8位在后。通信传送指令RS进行串行通信时:氨氧化催化剂往往亦可用作醛类氧化催化剂,其原因是由于这两类反应通过类似的历程,形成相同的氧化中间物之故。上列反应中以丙烯氨氧化合成丙烯腈最为重要,下面即以此反应为例进行讨论。