工作的那些小事(测试篇之对modbus的理解)
2014-09-12 21:59
176 查看
测试的日子是那么漫长,对于一个底层开发的人来说。因为习惯了在学校一上来就写代码,那时候认为开发就是要写代码。但是渐渐明白了测试或许可以让自己以后开发更加容易和清晰。时间所有的事情都是平衡的,你为这件事情付出得到的同时其他事情可能就会失去尝试的机会。今天决定要在通信测试这方面花一些时间,对于上位机和机器的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是一个支持一台主机多台从机进行通信的协议。通过RS485形成一个半双工的通信,只有主机发命令给从机进入等待状态,从机先判断地址是否跟自己本身相等,相等则对功能码和数据会做相应的动作,否则返回空闲状态。在处理数据的过程中会进行校验如果错误则返回一个错误码,正常给主机回应一个功能码一致的信号。主机等待从机信号也是有一个超时时间out_time的,如果在超时时间内接收到数据并且进行校验,错误则可以进行重发。如果接收的数据不是来自期望的从机,则继续进行超时等待。对于modbus通信最重要的机制是每一帧数据字符之间的传输时间要小于1.5个字符,连续帧之间的时间要小于3.5个字符才认为是连续的帧数据。1.5char的时间是根据波特率有关的,一般1.5char
= 1/9600*(1+8+1)。
相关文章推荐
- 软件测试——工作一年半对软件测试的理解
- 一个工作5年的软件测试员工的对软件测试的理解和总结【精品文章】
- 工作的那些小事(测试篇)
- 7.STM32中对DMA_Config()函数的理解(自定义)测试DMA传输数据时CPU还可继续工作其他的事
- 你理解的软件测试是什么?将决定你的工作内容和工作方式。
- 工作那些小事(异步串行通信)
- [项目管理]测试人员的工作如何衡量
- 加强测试度量工作和缺陷分析工作,不断的改进测试
- [鹿鸣推荐]需求阶段测试工作的开展
- 关于测试代码必须做以下几件事情的下厨做菜理解法。
- 生活工作无小事
- 测试工作流程图
- 招聘计算机(本地化)测试工程师, 出国工作1-3月,急
- [转贴]工作习惯测试—选你最喜欢的(根据四大名著分析习惯)
- 测试类型的理解和实际操作
- 工作之余测试一下自己的智商吧,别忘了告诉我你的分数
- 理解了塔吊是如何工作的
- 理解JSP中的include(一):include-file 指令测试
- 需求阶段测试工作的开展
- 帮助理解的测试类