工作的那些小事(测试篇之对modbus的理解)
来源:互联网 发布:债券逆回购 知乎 编辑:程序博客网 时间:2024/05/29 02:51
测试的日子是那么漫长,对于一个底层开发的人来说。因为习惯了在学校一上来就写代码,那时候认为开发就是要写代码。但是渐渐明白了测试或许可以让自己以后开发更加容易和清晰。时间所有的事情都是平衡的,你为这件事情付出得到的同时其他事情可能就会失去尝试的机会。今天决定要在通信测试这方面花一些时间,对于上位机和机器的rs485接口通信modbus协议都是很陌生的。所以只能从modbus协议文档开始了,modbus是工业、智能仪表中用的最多的。modbu大概分为RTU、ASCII、TCP/IP这三种方式进行传输数据,对于RTU是传输大数据速率低的,因为要将一个字节拆成两个ASCII即16进制的数表示,这样就降低了速率。ASCII传输是一个16进制的数,速率是RTU的两倍理论上。不过每一帧数据都包括了地址码、功能码、数据区、校验区,RTU是通过CRC校验的,ASCII是通过LCR校验的只是简单的多项式方法。。。续未完
modbus是一个支持一台主机多台从机进行通信的协议。通过RS485形成一个半双工的通信,只有主机发命令给从机进入等待状态,从机先判断地址是否跟自己本身相等,相等则对功能码和数据会做相应的动作,否则返回空闲状态。在处理数据的过程中会进行校验如果错误则返回一个错误码,正常给主机回应一个功能码一致的信号。主机等待从机信号也是有一个超时时间out_time的,如果在超时时间内接收到数据并且进行校验,错误则可以进行重发。如果接收的数据不是来自期望的从机,则继续进行超时等待。对于modbus通信最重要的机制是每一帧数据字符之间的传输时间要小于1.5个字符,连续帧之间的时间要小于3.5个字符才认为是连续的帧数据。1.5char的时间是根据波特率有关的,一般1.5char = 1/9600*(1+8+1)。
- 工作的那些小事(测试篇之对modbus的理解)
- 工作的那些小事(测试篇)
- android之有关Activity的那些小事
- Intent的那些小事
- hibernate的那些小事
- const的那些小事
- 那些数据库的小事
- 工作那些小事(异步串行通信)
- Android strings 的那些小事
- 关于vue的那些小事
- Modbus协议的理解
- 对工作的理解
- 对工作的理解
- 一件工作上的小事
- 集合篇-----ArrayList与LinkedList之间的那些小事
- 编程的那些小事(1)内敛函数_指针
- 测试之美(1)对测试的几点理解----对谁是最好的?
- 对测试的理解
- JSON
- 笔记本中Ubuntu12.04 网络配置的问题
- 阿里巴巴实习生电话面试
- erlang不同节点进程如何通讯的
- 一切成功源于积累——20140912 五个月 六年 美加 美日 一时风光无两
- 工作的那些小事(测试篇之对modbus的理解)
- MATLAB7.0安装 the installer cannot read the mwinstall.dll
- POJ 3020 Antenna Placement (二分匹配, 带花树, 状压dp)
- PE文件格式笔记
- 直接上一段用于内网获取本机ip地址的方法,更全面的可以先获取本机网络类型,在获取ip
- c#成员访问声明
- 阿里实习生转正面试记
- 余凯谈百度大脑与深度学习最新发展
- 基于MCP2515的Linux CAN总线驱动程序设计