485通信讲解(附案例)
三菱fx3u485无协议通讯程序详解(含程序)

串行通讯指令(FNC 80 RS)1、指令格式: [RS D0 K8 D10 K8]发送数据帧起始地址和数目↓接收数据帧起始地址和数目2、功能和动作:※ RS指令是为使用RS232C、RS-485功能扩展板及特殊适配器,进行发送和接收串行数据的指令。
※传送的数据格式在后面讲述的特殊寄存器D8120设定。
RS指令驱动时即使改变D8120的设定,实际上也不接收。
※在只发送的系统中,可将接收数设定为K0。
(K表示常数)※在只接收的系统中,可将发送数设定为K0。
※在程序中可以多次使用RS指令,但在同一时间必须保证只有一个RS指令被驱动。
※在一次完整的通讯过程中,RS指令必须保持一直有效,直至接收数据完成。
D8120说明:※根据MD320的通讯协议,无帧头和帧尾,则(bit9,bit8)=(0,0)。
※ bit13~15是计算机链接通讯时的设定项目,使用RS指令时必须设定为0。
※ RS485未考虑设置控制线的方法,使用FX2N-485-BD、FX0N-485ADP时,(bit11,bit10 )=(1,1)。
※若PLC和变频器之间的通讯参数如下:8位数据位,无校验,2位停止位,波特率9600,无帧头无帧尾,无协议模式,则D8120=H0C89(H表示16进制)(0000 1100 1000 1001B)M8002│──||────────── [ MOV H0C89 D8120 ]5、相关标志位:一.基本指令介绍※ M8122:数据发送请求标志当PLC处于接收完成状态或接收等待状态时,用脉冲触发M8122,将使得从D0开始的连续8个数据被发送。
当发送完成后,M8122自动被复位。
当RS指令的驱动输入X0变为ON状态时,PLC就进入接收等待状态。
※ M8123:数据接收完成标志当M8123置位时,表明接收已经完成,此时需要将接收到的数据从接受缓冲区转移到用户指定的数据区,然后手工复位M8123。
复位M8123后,则PLC再次进入接收等待状态。
RS485通讯基础及通讯方式

RS485通讯基础及通讯方式1、什么是通讯,如图要搞清楚RS485通讯我们要先搞明白什么是通讯,通讯就是两个设备之间0、1代码的传递、0-低电平 1-高电平举例:plc 向变频器从机1和变频器从机2传递数据,首先变频器从机1和变频器从机2设备之间必须通过电缆连接(硬件连接)。
如果变频器从机1和变频器从机设备发送101010这样一串代码,那么变频器从机1就要在他的通讯端口产生如下图所示的高低电平的组合,通过电缆这个介质变频器从机2设备的通讯端口就会接收到A设备发出高低电平的组合,同时就会将接收到的高低电平组合翻译成101010,这就完成了PLC 向两台变频器从机1设备数据的传递。
2、与通讯有关的概念描述:1、全双工与半双工】全双工是通讯端口在发送数据的同时可以接收数据。
而半双工指的是同一时刻通讯端口要么只能发送数据,要么只能接收数据。
举例全双工:打电话时双方都可以说。
半双工:对讲机-同一时刻只能一个人说另一个人听。
单双工:只能是设备发送数据,另一台设备只能接受设备,不具备发送(例如打印机)如图2、通讯速率:通讯速率也叫通讯波特率是1S内通讯端口发送0、1。
代码(或者说是高、低电平)的数量。
举例:我们说通讯速率是9.6kbps,就表示通讯端口每秒发送9600个bit的数据,也就是每秒可以产生9600个高低电平(注意:是高低电平总共加起来9600个)比特传输速率每秒钟通过信道传输的信息量称为比特传输速率,记作rb。
单位是比特/秒(b/s),简称比特率。
3、主从通讯是在一个通讯网络中一个站点是主站,其他站点作为从站。
主站和从站之间可以直接进行数据的传递,但是从站与从站之间不能直接进行数据的传递。
如果需要从站之间交换数据也必须要通过主站进行转发。
如下图所示3、 RS485的接口定义:明白了通讯的基本概念后再理解485通讯就相对容易了,下面我们从通讯介质、通讯方式、通讯类型、物理层四个方面来介绍485通讯。
485通信讲解(附案例)解析

2
3
4
状 态 字
5
实际 运行 数据
6
实际 运行 数据
7
异 或 校 验
校验
起 始 字 节
从 状 机 态 地 字 址
字节定义 头 地址 状态区
数据区
RS485通讯协议
长帧(起始字节=02H)
发送顺序 1 (字节) 控制器至变频器:
2 3 4 5 6 7 8 9 10 11
起 始 字 节
从 功 命 功能 机 能 令 码设 地 码 字 定值 址 号
1 0
RS485通讯协议
响应字定义 控制字 (位)
bit5
值
1 0
含义
停机2状态 非停机2状态
功能描述
变频器执行停机2命令,处于停机状态
bit6
1 0
控制禁止状态 控制允许状态 上位机控制 本地控制方式
到达设定频率/ 速度 未到达设定频率 /速度
因停机1或停机2或变频器故障或异常命令使变 频器停机的状态,需控制字恢复到准备运行状态 使其复位
bit9
1 0
bit10
1 0
变频器只允许本地控制(面板和端子)
RS485通讯协议
响应字位定义 控制字 (位)
bit11
值
1 0
含义 变频器运行状态 变频器停止状态 变频器接受出错
功能描述
bit15
1
0
bit0 bit7~8 bit12~1 4,
变频器接收正确
预留 预留 预留
本位表示来自控制器的通讯帧经 校验出错,控制器应再次发送该 帧。
RS485通讯协议
控制字定义 控制字 (位) bit0 值 1 0 bit1 含义 运行命令 方式0停车 功能描述 起动变频器 减速停车
485通信讲(附案例)

RS485通讯协议
校验和
数据含义:数据帧校验和计算结果。 数据类型:16进制,单字节。 计算方法:连续异或。
数据帧格式示意图
起始字节 (字节)
从机地址 (字节)
功能码操作
命令/响应 (字节)
功能码号 (字节)
功能码设 定/实际值
(字)
控制/状 态字
(字)
主设定/ 实际值
异或校验
(字) (字节)
进行异或计算
RS485通讯协议
响应字定义
控制字 (位)
值
含义
bit1 1 准备工作状态
功能描述 变频器就绪
bit2
0 非准备工作状态 1 变频器输出允许
bit3
0 变频器禁止输出 1 变频器有故障
0 变频器无故障
以所能达到的最快方式停车
bit4 1
停机1状态
变频器执行停机1命令,处于停机状态
0 非停机1状态
RS485通讯协议
起始字节 (字节)
从机地址 (字节)
功能码操作
命令/响应 (字节)
功能码号 (字节)
功能码设 定/实际值
(字)
控制/状 态字
(字)
主设定/ 实际值
异或校验
(字) (字节)
帧头
参数数据
用户数据
过程数据
帧尾
RS485通讯协议
特殊报文(起始字节=68H),用于获取从站的软件版本和机器型号
发送顺序
(字节) 1 2 3 4 5 6
RS485 通讯
目录
RS485基础 通讯协议 通讯案例 超级终端
RS485基础
通信接口方式 RS485接口:异步,半双工,串行
485通信讲解(附案例)

8 ~15 预留
RS485通讯协议
响应字(码)
参数操作错误(响应字=7时)内容定义列表
错误号
内容描述
0 非法参数号
1 参数不允许设置(参数只读)
2 参数数值超限
12 密码错误
101 参数数据无法更改(运行中不可更改)
其它 预留
RS485通讯协议
功能码设定/实际值(2个字节,16BIT) 对应功能码号的参数值或错误参数代码。当功能码操作正确时,功能码的实际 返回值用一个字(2个字节)表示;如果功能码操作不正确则用低字节返回操 作错误代码,此时高字节为0;遵循先发高字节,再发低字节的原则
7 6 5432 1 0
RS485案例
应用案例
说明:使用通信控制变频器时,请先检查硬件是否连接好。同时,将变频器 的通信数据格式,波特率,以及通信地址设置好。如果是用在PROFIBUS上, 还需选定PPO参数(F9参数组)。本文例子中默认变频器使用长桢进行通信 。
1、以50Hz运行2#变频器。(此例需要将变频器频率设定成F0.03=6)
数据帧格式示意图
起始字节 (字节)
从机地址 (字节)
功能码操作 命令/响应 (字节)
功能码号 (字节)
功能码设 定/实际值
(字)
控制/状 态字
(字)
主设定/ 实际值
(字)
异或校验 (字节)
1514 13 12 1110 9 8 7 6 5 4 3 2 1 0
RS485通讯协议
故障代号
故障代号 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
=68H:特殊报文 =7EH:短帧 =02H:长帧
RS485通讯协议
从机地址 数据含义:从机的本机地址 从机地址范围2 ~126,127为广播地址,0、1号地址保留。从站数目超出29个, 要求使用中继器,同时中继器将占用从机数目。从机的群组地址与本机地址不 同时使用。地址字节最高位为0表示是本机的单机地址,为1表示是群组地址。
MODBUS实例485通讯解析

用RS485端口控制TVF2000使用说明:一、硬件连接:1.RS485/RS485:(1)终端设备:将J2用终端方式短接;(2)非终端设备:将J2用非终端方式短接;(3)A、B、AGND对接;(4)如果使用屏蔽线,SCR对接。
2.RS485/RS232(PC机):(1)用RS485/RS232转换器;(2)PC机串口与转换器RS232口连接;(3)TVF2000的CN1与转换器的RS485口的A、B、AGND连接。
二、用MODBUS与TVF2000通讯(RTU方式):1.TVF2000键盘设置:a)键盘菜单设置说明:i.1001=10:外端子1用通讯控制;ii.5005=2:标准MODBUS通讯方式;iii.5201=1-247:从机号(缺省=1);iv.5202=5:通讯速度为9600bps(缺省=5);v.5203=0:无效验(缺省=0);vi.其它=缺省值;b)键盘具体操作:i.9952 = 1:参数初始化;ii.1001 = 10;iii.5005 = 2;这样设置后,就可以与TVF2000通讯了。
2.TVF2000使用的MODBUS命令:a)读存储寄存器:03命令;b)写单个寄存器:06命令;c)写多个寄存器:16命令;3.MODBUS单寄存器写入命令说明(其它说明见附录):a)主机发送:i.[地址]:从机地址1-247;ii.[命令]:06,单寄存器写入命令;iii.[寄存器地址_H]:寄存器地址高8位;iv.[寄存器地址_L]:寄存器地址低8位;v.[数据_H]:写入数据高8位;vi.[数据_L]:写入数据低8位;vii.[CRC_H]:CRC效验高8位;viii.[CRC_L]:CRC效验低8位;b)从机返回(正常):i.[地址]:从机地址1-247(相同地址);ii.[命令]:06,单寄存器写入命令;iii.[寄存器地址H]:寄存器地址高8位;iv.[寄存器地址L]:寄存器地址低8位;v.[数据_H]:写入数据高8位;vi.[数据_L]:写入数据低8位;vii.[CRC_H]:CRC效验高8位;viii.[CRC_L]:CRC效验低8位;c)通讯具体操作(菜单1102=7为例):i.主机发送:[01][06][04][4E][00][07][CRC_H][CRC_L];ii.从机返回(正常):[01][06][04][4E][00][07][CRC_H][CRC_L];4.用通讯命令设置菜单值(调速前必须设置):i.1102=7;外部1有效;ii.1103=8;由串行通讯给定;iii.0002=初始频率;如果不设置,为菜单1104的值;iv.0001=0x06;命令寄存器:0001;v.0001=0x0f;vi.0001=0x2f;启动;vii.0001=0x6f;到达设定频率;5.用通讯命令调速(给定寄存器1:0002):i.0002=0-20000;调速:0对应1104的值,20000对应1105的值;ii.通过03命令读取状态寄存器(0004)的值;iii.通过03命令读取保持寄存器(0005、0006)的值;iv.用通讯命令停车:0001 = 0x06;6.7.给定寄存器1:0002(MODBUS为40002)说明如下:i. 输出频率与给定值成正比例;ii. 输出频率=(0002的值)*(1105的值)/20000;8.状态寄存器:0004(MODBUS为40004)说明如下:9.保持寄存器:0005(MODBUS为40005):实际输出频率(单位:Hz);10.保持寄存器:0006(MODBUS为40006):实际输出电流(单位:0.1A);11.状态寄存器、保持寄存器均为只读;12.如果想保存通讯设置,必须用键盘设置菜单1607=1。
RS485通信原理图及程序实例详解

RS485通信原理图及程序实例详解RS232 标准是诞⽣于 RS485 之前的,但是 RS232 有⼏处不⾜的地⽅:接⼝的信号电平值较⾼,达到⼗⼏ V,使⽤不当容易损坏接⼝芯⽚,电平标准也与TTL 电平不兼容。
传输速率有局限,不可以过⾼,⼀般到⼀两百千⽐特每秒(Kb/s)就到极限了。
接⼝使⽤信号线和 GND 与其它设备形成共地模式的通信,这种共地模式传输容易产⽣⼲扰,并且抗⼲扰性能也⽐较弱。
传输距离有限,最多只能通信⼏⼗⽶。
通信的时候只能两点之间进⾏通信,不能够实现多机联⽹通信。
针对 RS232 接⼝的不⾜,就不断出现了⼀些新的接⼝标准,RS485 就是其中之⼀,它具备以下的特点:采⽤差分信号。
我们在讲 A/D 的时候,讲过差分信号输⼊的概念,同时也介绍了差分输⼊的好处,最⼤的优势是可以抑制共模⼲扰。
尤其当⼯业现场环境⽐较复杂,⼲扰⽐较多时,采⽤差分⽅式可以有效的提⾼通信可靠性。
RS485 采⽤两根通信线,通常⽤ A 和 B 或者 D+和D-来表⽰。
逻辑“1”以两线之间的电压差为+(0.2~6)V 表⽰,逻辑“0”以两线间的电压差为-(0.2~6)V 来表⽰,是⼀种典型的差分通信。
RS485 通信速率快,最⼤传输速度可以达到 10Mb/s 以上。
RS485 内部的物理结构,采⽤的是平衡驱动器和差分接收器的组合,抗⼲扰能⼒也⼤⼤增加。
传输距离最远可以达到 1200 ⽶左右,但是它的传输速率和传输距离是成反⽐的,只有在 100Kb/s 以下的传输速度,才能达到最⼤的通信距离,如果需要传输更远距离可以使⽤中继。
可以在总线上进⾏联⽹实现多机通信,总线上允许挂多个收发器,从现有的 RS485芯⽚来看,有可以挂 32、64、128、256 等不同个设备的驱动器。
RS485 的接⼝⾮常简单,与 RS232 所使⽤的 MAX232 是类似的,只需要⼀个 RS485转换器,就可以直接与单⽚机的 UART 串⼝连接起来,并且使⽤完全相同的异步串⾏通信协议。
RS485通讯

精通RS485通讯系列教程一、通讯基础知识1.1什么是通讯要搞清楚RS485通讯我们要先搞明白什么是通讯,通讯就是两个设备之间0、1代码的传递,0-低电平1-高电平。
举例:A设备向B设备传递数据,首先A设备和B设备之间必须通过电缆连接(硬件连接)。
如果A设备要向B设备发送101010这样一串代码,那么A设备就要在他的通讯端口产生如下图所示的高低电平的组合,通过电缆这个介质B设备的通讯端口就会接收到A设备发出高低电平的组合,同时就会将接收到的高低电平组合翻译成101010,这就完成了A设备向B设备数据的传递,B 设备向A设备数据传递也是同样的道理。
与通讯有个的概念。
【全双工与半双工】全双工是通讯端口在发送数据的同时可以接收数据。
而半双工指的是同一时刻通讯端口要么只能发送数据,要么只能接收数据。
举例:全双工-打电话时双方都可以说。
半双工:对讲机-同一时刻只能一个人说另一个人听。
【通讯速率】通讯速率也叫通讯波特率是1S内通讯端口发送01代码(或者说是高低电平)的数量。
举例:我们说通讯速率是9.6kbps,就表示通讯端口每秒发送9600个bit的数据,也就是每秒可以产生9600个高低电平(注意:是高低电平总共加起来9600个)。
【主从通讯】是在一个通讯网络中一个站点是主站,其他站点作为从站。
主站和从站之间可以直接进行数据的传递,但是从站与从站之间不能直接进行数据的传递。
如果需要从站之间交换数据也必须要通过主站进行转发。
如下图所示1.2、485通讯定义明白了通讯的基本概念后再理解485通讯就相对容易了,下面我们从通讯介质、通讯方式、通讯类型、物理层四个方面来介绍485通讯。
通讯介质:屏蔽双绞线,也就是我们通常用的带有屏蔽层的两心电缆如下图所示。
通讯方式:半双工通讯类型:主从通讯物理层:9针接口,需要注意的是通常情况下485通讯的9针接口,只需要将两芯电缆接到3号脚和8号脚上,3是信号“﹢”,8是信号“-”。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
7
6
5
4
3
2
1
0
=68H:特殊报文 =7EH:短帧 =02H:长帧
RS485通讯协议
从机地址 数据含义:从机的本机地址
从机地址范围2 ~126,127为广播地址,0、1号地址保留。从站数目超出29个,
要求使用中继器,同时中继器将占用从机数目。从机的群组地址与本机地址不 同时使用。地址字节最高位为0表示是本机的单机地址,为1表示是群组地址。
机 器 型 号
6
异 或 校 验
变频器至控制器:
RS485通讯协议
短帧(起始字节=7EH)
发送顺序 1 (字节) 控制器至变频器:
2
3
4
控 制 字
5
运行 数据 设定
6
运行 数据 设定
7
异 或 校 验
校验
起 始 字 节
从 控 机 制 地 字 址
字节定义 头 地址 控制区
数据区
发送顺序 1 (字节) 变频器至控制器:
2
3
4
状 态 字
5
实际 运行 数据
6
实际 运行 数据
7
异 或 校 验
校验
起 始 字 节
从 状 机 态 地 字 址
字节定义 头 地址 状态区
数据区
RS485通讯协议
长帧(起始字节=02H)
发送顺序 1 (字节) 控制器至变频器:
2 3 4 5 6 7 8 9 10 11
起 始 字 节
从 功 命 功能 机 能 令 码设 地 码 字 定值 址 号
RS485 通讯
目录
RS485基础 通讯协议 通讯案例 超级终端
RS485基础
通信接口方式 RS485接口:异步,半双工,串行 数据格式 1位起始位、8位数据位、1位停止位、无校验 1位起始位、8位数据位、1位停止位、奇校验 1位起始位、8位数据位、1位停止位、偶校验 波特率 1200bps、2400bps、4800bps、9600bps、19200bps、38400bps、125K 当与现场总线适配器PROFIBUS连接时采用默认数据格式:见上黑粗体
数据帧格式示意图
起始字节 (字节) 从机地址 (字节) 用户数据 异或校验 (字节)
7
6
5
4
3
2
1
0
单机地址或群组地址 =0:单机地址 =1:群组地址
RS485通讯协议
命令字(响应字)+功能码号(2个字节,16BIT)
数据含义:主机发送的命令或从机对命令的应答。 功能码组号范围0~16(BIT8~BIT11),功能码的范围0~99(BIT0~BIT7),参见 TD3000 先发高字节,再发低字节的原则 数据帧格式示意图
命令字(码)
命令字(码) 0 1 2 14 3~13,15 无任务 请求读取功能码参数数据 请求更改功能码参数数据 请求更改功能码参数并存储至EEPROM 预留
功能描述
响应字(码)
响应字(码) 0 1 2~6 7 8 ~ 15
内容描述 无响应 功能码参数操作正确(读取或更改) 预留 无法执行,错误信息用功能码实际值的低字节表示(此时并不返回功能码值) 预留
异 功能 控 控 运行 运行 或 码设 制 制 数据 数据 校 定值 字 字 设定 设定 验
控制区
7 8
字节定义 头 地址 命令区
发送顺序 1 (字节) 变频器至控制器:
2 3 4 5
参数区
6
数据区
9 10
校验
11
起 始 字 节
从 功 响 功能 机 能 应 码实 地 码 字 际值 址 号
异 功能 状 状 实际 实际 或 码实 态 态 运行 运行 校 际值 字 字 数据 数据 验
在短帧中没有参数数据。 过程数据:主机控制命令/从机状态响应、主机运行主设定/从机运行实际值。
数据帧格式示意图
起始字节 (字节) 从机地址 (字节)
功能码操作 命令/响应 (字节)
功能码号 (字节)
功能码设 定/实际值 (字)
控制/状 态字 (字)
主设定/ 实际值 (字)
异或校验 (字节)
参数数据
过程数据
帧头
用户数据
帧尾
RS485通讯协议
特殊报文(起始字节=68H),用于获取从站的软件版本和机器型号
发送顺序 (字节)
1
起 始 字 节
2
从 机 地 址
3
A A H
4
5 5 H
5
A 5 H
6
异 或 校 验
控制器至变频器:
发送顺序 (字节)
Hale Waihona Puke 1起 始 字 节2
从 机 地 址
3
软 件 版 本
4
软 件 版 本
5
控制区 数据区 校验
字节定义 头 地址 命令区
参数区
RS485通讯协议
帧头 帧头:一个字节 帧头是主机发布命令或从机回应主机响应的第一个字节,不论是主机还是从 机,都在收到该字节后开始记录有效数据。 为确保能准确识别报文头,要求两个通信帧之间保持2个字节传输时间以上的 总线空闲时间。
数据帧格式示意图
起始字节 (字节) 从机地址 (字节)
功能码操作 命令/响应 (字节)
功能码号 (字节)
功能码设 定/实际值 (字)
控制/状 态字 (字)
主设定/ 实际值 (字)
异或校验 (字节)
1514 13 12 1110 9 8 7 6 5 4 3 2 1 0
功能码号 功能码组号 命令/响应字(码)
RS485通讯协议
从机在最近一次对主机轮询的应答帧中上报当前故障信息。
通信准备 用从机键盘设置变频器串行接口通信参数:本机地址、波特率、数据格式。 具备RS232的主机可以使用通信接口转换器( OCI-6A)完成到RS485的转换。
RS485通讯协议
数据帧结构 帧头:起始字节、从机地址。 帧尾:校验数据(异或校验)。 用户数据:参数数据和过程数据两部分。 参数数据:功能码操作命令/响应、功能码号、功能码设定/实际值。
RS485通讯协议
响应字(码)
参数操作错误(响应字=7时)内容定义列表
错误号 0 1 2 12 101 其它
内容描述 非法参数号 参数不允许设置(参数只读) 参数数值超限 密码错误 参数数据无法更改(运行中不可更改) 预留
RS485通讯协议
功能码设定/实际值(2个字节,16BIT) 对应功能码号的参数值或错误参数代码。当功能码操作正确时,功能码的实际 返回值用一个字(2个字节)表示;如果功能码操作不正确则用低字节返回操 作错误代码,此时高字节为0;遵循先发高字节,再发低字节的原则
RS485基础
主机为PC RS232 OCI-6A
或
主机为PLC
主机为PC RS232 OCI-6A
RS485
RS485 TD3000 TD3000 单主机单从机
TD3000
TD3000
TD3000
单主机多从机
RS485基础
通信方式 采用主机“轮询”,从机“应答”的点对点通信方式,变频器为从机。 主机使用广播地址发送命令时,从机不允许应答。