modbus的协议

在介绍Modbus协议之前,我们要先了解下RS485协议,因为Modbus协议是在RS485这个硬件层协议上搭建的软件层协议。

RS485特性

半双工
用缆线两端的电压差值来表示传递信号。
RS485 的特点包括
1.S485 的电气特性:
逻辑“1”以两线间的电压差为+(2~6)V 表示;
逻辑“0”以两线间的电压差为-(2~6)V 表示
2, 传输速率高。10 米时,RS485 的数据最高传输速率可达 35Mbps,在 1200m 时,传输速度可达 100Kbps。
3, 抗干扰能力强。RS485 接口是采用平衡驱动器和差分接收器的组合,抗共模干扰能力增强,即抗噪声干扰性好。
4, 传输距离远,支持节点多。RS485 总线最长可以传输 1200m 左右,更远的距离则需要中继传输设备支持但这时(速率≤100Kbps)才能稳定传输,一般最大支持 32 个节点,如果使用特制的 485 芯片,可以达到 128 个或者 256 个节点,最大的可以支持到 400 个节点。

RS485的控制方法

在这里插入图片描述
可以到RE和DE通过跳线帽并连起来,RE引脚接受触发器(低电平有效),DE引脚是发送触发器(高电平有效)。
平常将设备处于接受状态,需要发送的时候再置为发送状态,发送完毕,再置回接受状态。

Modbus协议

在RS485协议上规定的软件协议。

通信机制

主机轮询,从机应答的机制
1.系统中只有一个设备是从机:主从通信
2.系统中的从机不可以主动的向从机发送数据
3.系统上电后所有的主从设备都应该处于监听总线的状态,也就是接受状态
4.如果要发送一次,必须由主机主动发送(任何一次的通信或数据交换都必须由主机发起)

数据包格式

发送格式:
在这里插入图片描述

常用功能码:
在这里插入图片描述
发送字节的间隔时间:每个字节发送的时间差不能超过3个字符时间。
即如果以波特9600来发送,一个字符包含一个起始位,一个停止位,8个数据位。
一共10bit,那么3个字符时间大概是3*10/9600=3.125ms.

一般软件写的断帧时间为10ms

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值