通讯协议解析基础知识PPT课件_第1页
通讯协议解析基础知识PPT课件_第2页
通讯协议解析基础知识PPT课件_第3页
通讯协议解析基础知识PPT课件_第4页
通讯协议解析基础知识PPT课件_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

通讯协议解析基础知识,2015.02,.,2,一、数字信息的基本概念二、数字通讯的基本形式三、串行通讯的字符四、帧和主-从结构五、通讯协议中的编码方法六、Modbus通讯协议七、CJ/T188通讯协议八、GB/T26831通讯协议,.,3,一、数字信息的基本概念二级制位(比特,bit):数字信息的最小单位。一个bit的值有两种可能:0或者1。字节(Byte):1Byte=8bit例如00000000、11111111、01010101数字信息由诸多Byte组成,进而由诸多bit组成。,.,4,例如“你好”可以按GB2312标准编码为如下数字信息:11000100111000111011101011000011这条数字信息由4个字节组成,并由32个位组成。,.,5,二、数字通讯的基本形式串行通讯在一条数据通道上,一位一位地依次传输字节的各个位。例如串行传输“你好”,则11000100111000111011101011000011,.,6,并行通讯在多条数据通道上,一并传输字节的各个位。例如并行传输“你好”,则11111101011000100010100001110101,.,7,仪表所使用的RS-485、M-bus通讯接口,均属于串行通讯接口。串行通讯更适合于远距离通讯,其线间串扰小,信号完整性优于并行通讯。,.,8,三、串行通讯的字符在串行通讯中,数字信息的基本单元是“字符”。一个“字符”包含以下内容:开始位(1位)数据位(8位,即1字节)校验位(0位或1位)停止位(1位)一个“字符”由10位或11位组成,1字节数据包括在字符中。,.,9,当然,也有7位数据位、2位停止位、附加1位地址位的情况。在通讯解析时,开始位、检验位、停止位等是隐藏的,只有数据字节对我们是可见的。注意,和波特率一样,校验位(无校验/奇校验/偶校验)作为一项通讯参数,在采集设备上的设定必须和仪表保持一致。,.,10,四、帧和主-从结构帧:由若干字节组成,能表达一组完整的信息。目前在仪表上应用的通讯协议,基本均采用主-从结构。即采集设备发出命令帧,仪表返回数据帧。通讯协议的主要内容就是对命令帧和数据帧的帧结构作出说明。,采集设备,仪表,命令帧,数据帧,.,11,五、通讯协议中的编码方法在通讯协议中,字节是以十六进制数表示的。即“xxH”的形式,H表示该数为十六进制。十六进制和十进制的转换(例如地址转换)1)手算转换2)计算器软件转换,.,12,BCD码BCD码有多种,我们采用的是8421码。8421码:用十六进制的表面形式,表达一个十进制数。例如12345678H12345678(十进制)12345678H=305419896(十进制)对8421码,以十六进制观察数据帧是简便的。,表示,.,13,.,14,BCD码例如:仪表响应26H41H4AH00H01H35H79H取出数据部分的第1316字节00H01H35H79H代表十进制数值00013579根据协议,该数值代表135791000=13.579m3,.,15,ASCII码ASCII码是一种英语字符编码。字符中包含大/小写英文字母、数字、符号等,每个字符用1个字节表示。,.,16,ASCII码例如,30H代表字符“0”31H代表字符“1”39H代表字符“9”2DH代表字符“-”(负号)对ASCII码,以字符形式观察数据帧是简便的。,.,17,.,18,ASCII码例如:仪表响应26H3AH00H00H2DH31H32H33H34H35H36H37H31H32H33H取出数据部分的第3547字节并转为ASCII码代表十进制数值-1234567123根据协议,该数值代表-12345671231000=-1234567.123m3,.,19,整型和长整型整型和长整型都是计算机领域基本的数据类型,基本的数据表达方式。整型(int)用2个字节表达一个整数,如27H10H表示10000长整型(long)用4个字节表达一个整数,如07H5BHCDH15H表示123456789,.,20,Modbus协议中使用的整型和长整型都是有符号的。整型转换为十进制数的方法1、在计算器中选择十六进制、单字。2、输入整型码。3、切换至二进制,观察位数,如果位数=16则表明是负数,需要按一下“+/-”键。4、切换至十进制。例如:F9H00H=-179279H00H=30976,.,21,长整型转换为十进制数的方法1、在计算器中选择十六进制、双字。2、输入整型码。3、切换至二进制,观察位数,如果位数=32则表明是负数,需要按一下“+/-”键。4、切换至十进制。例如:FFHF6HF8HBEH=-591682,.,22,浮点型浮点型也是计算机领域基本的数据类型,基本的数据表达方式。仪表中使用的浮点型确切地说是单精度浮点型(float),它用4个字节表示一个浮点数。例如,42HF6HE9H79H表示123.456一般可以使用小工具软件进行转换。,.,23,六、Modbus通讯协议Modbus通讯协议是为PLC(可编程逻辑控制器)拟定的,它是工业通信领域的标准协议。Modbus通讯协议中的数据有ASCII和RTU两种编码方式。仪表采用RTU方式,即使用长整型或浮点型表达数据。仪表仅支持03号命令:读保持寄存器,.,24,六、Modbus通讯协议寄存器:PLC中,每个寄存器占用2个字节由于浮点型和长整型数据占用4个字节,所以需要占用2个寄存器。例如插入式超声热量表Modbus通讯协议中,累积流量占用0002H和0003H两个寄存器;流速占用000AH和000BH两个寄存器。,.,25,六、Modbus通讯协议命令帧格式(均为16进制值)4103000000198AC041设备地址6503功能码:读保持寄存器0000起始寄存器地址=00019读取寄存器数量=258AC0CRC校验,.,26,六、Modbus通讯协议数据帧格式(均为16进制值)410332592B41设备地址6503功能码:读保持寄存器32寄存器数据字节数=50(252)中间为各寄存器数据592BCRC校验,.,27,六、Modbus通讯协议在寄存器中,高字节在前。例如,12345的长整型为00003039H,我们的仪表会按顺序发出00H00H30H39H,而不是39H30H00H00H。00003039高低,.,28,六、Modbus通讯协议在一些软件中,将高字节在前的情况称之为LongInverseFloatInverse练习解析数据帧,.,29,七、CJ/T188通讯协议CJ/T188通讯协议是为户用计量仪表集中抄表而设计的。是城建行业标准。练习解析数据

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论