EDA9033E智能三相电参数数据综合采集模块
使用说明书
目录
一,产品介绍
二,模块的外形图及端子定义
三,模块测量精度说明
四,EDA9033E模块典型应用接线说明
五,EDA9033E模块应用说明
六,EDA9033E模块ASCII码通讯指令集及参数计算说明
(一),命令集
(二),EDA9033E-ASCII码指令集及参数计算说明
七,EDA9033E模块十六进制LC-02通讯指令集及参数计算说明
八,EDA9033E模块广播命令的使用说明
EDA9033E模块MODBUS通讯协议说明
一,EDA9033E模块Modbus通讯规约简介
二,EDA9033E模块Modbus-ASCII通讯协议说明
三,EDA9033E模块Modbus-RTU通讯协议说明
四,EDA9033E模块Modbus协议的功能码与所对应的数据表
五,EDA9033E模块的数据计算
六,Modbus通讯规约介绍
(一)MODBUS通讯规约简介
(二)MODBUS的两种传输方式
(三)Modbus消息帧
(四)MODBUS通讯错误检测方法
EDA9033E 智能三相电参数数据综合采集模块订购指南
一,产品介绍
EDA9033E系列模块是EDA9033A模块的升级替代产品,增加了四象限有功,无功功率的测量,频率测量,正反向有功无功电能的计量,及显示驱动接口.
EDA9033E模块是一智能型三相电参数数据综合采集模块;三表法准确测量三相三线制或三相四线制交流电路中的三相电流,三相电压(真有效值),有功功率,无功功率,功率因数,频率,正反向有功电度,正反向无功电度等电参数.
其输入为三相电压(0-500V),三相电流(0-1000A);输出为RS-485或RS-232接口的数字信号,支持的通讯规约有4种:(ASCII码)研华ADAM兼容通讯协议,十六进制LC-02协议,MODBUS-ASCII,MODBUS-RTU.
EDA9033E模块可广泛应用于各种工业控制与测量系统及各种集散式/分布式电力监控系统.
EDA9033E模块是一款高性价比的智能电参数变送器,他能替代过去的电流,电压,功率, 功率因数,电量等一系列变送器及测量这些变送器标准输出信号的模入模块,可大大降低系统成本, 方便现场布线,提高系统的可靠性. 其485总线输出与兼容于NuDAM,ADAM等模块的ASCII码指令集,使其可与其他厂家的控制模块挂在同一485总线上,且便于计算机编程,使你轻松地构建自己的测控系统.
采用电磁隔离和光电隔离技术,电压输入,电流输入及输出三方完全隔离.
其主要的功能与技术指标如下:
输入信号
三相交流50/60Hz电压,电流.输入频率:45~75Hz.
电压量程(相电压):10V,20V,50V,60V,100V,200V,250V,300V,400V,500V可选.
电流量程: 1A,2A,3A,5A,10A,20A,(50A,100A,200A,500A,1000A)等可选.
信号处理:16位A/D转换,6通道,每通道均以4KHz速率同步交流采样,模块实时数据为1秒的真有效值(每秒刷新1次).
过载能力:1.4倍量程输入可正确测量;瞬间(10周波)电流5倍,电压3倍量程不损坏.
通讯输出
输出数据:三相相电压Ua,Ub,Uc;三相电流Ia,Ib,Ic;有功功率P,无功功率Q,功率因数PF,频率f,各相有功功率Pa,Pb,Pc;各相无功功率Qa,Qb,Qc;正向有功电度,反向有功电度,正向无功电度,反向无功电度等电参数.
输出接口:RS-485 二线制 ±15KV ESD保护, 或RS-232 三线制 ±2KV ESD保护.
通讯速率(Bps):1200,2400,4800,9600,19.2K
通讯协议:(ASCII码)研华ADAM兼容通讯协议,十六进制LC-02协议,MODBUS-ASCII,MODBUS-RTU.
测量精度
电流,电压:0.2级 ; 其它电量:0.5级.
参数设定
模块地址,通讯速率,通讯协议,电压变比,电流变比,有功无功电量底数均可通过通讯接口设定.
模块供电电源 +5V±10%,+8~30V,AC60~265V可选其一 功耗:0.5度时,可保证0.2级的精度.
4,无功功率:0.5级
5,功率因数:0.5级
6,电量:0.5级
注:有功功率,无功功率,功率因数,电量等的精度,都是与电流,电压输入相关的,即输入电压小于20%量程时,不能保证以上几个参数的精度等级.
四,EDA9033E模块典型应用接线说明
EDA9033E模块可应用于三相三线制或三相四线制电路.在三相三线制电路中,UGND端可不连接或接地;在三相四线制电路中,UGND端接零线.
EDA9033输出电压Ua ,Ub, Uc都是相电压(每相对UGND端的电压).
LED指示灯:模块正常运行状态下,指示灯每2秒闪烁1次.
电流输入的方向如图示;每相的电流与电压应如图示相对应接入,否则将导致错误的功率与累计电量.
5,EDA9033E模块典型接线图如下:
五,EDA9033E模块应用说明
EDA9033E模块能连接到所有计算机和终端并与之通讯.
EDA9033E模块出厂时,都已经过校准及高低温老化测试.
EDA9033E模块出厂时,地址设定为01号,波特率为9600Bps,电压变比,电流变比为1.模块地址从0-255(00-FFH)可随意设定;波特率有1200,2400,4800,9600,19200Bps五种可使用.模块地址与波特率等参数修改后,其值存于EEPROM中.
波特率设置: BaudRate 通讯波特率,其值为03---07,对应波特率见下表:
波特率代码
波特率(Bps)
03
1200
04
2400
05
4800
06
9600
07
19200
RS-485网络:最多可将64个EDA9033E挂于同一485总线上,但通过采用RS-485中继器,可将多达256个模块连接到同一网络上,最大通讯距离达1200m.主计算机通过EDA485(RS-232/RS-485)转换器用一个COM通讯端口连接到485网络.
配置:将EDA9033E安装入网络前,须对其配置,将模块的波特率与网络的波特率设为一致,地址无冲突(与网络已有模块的地址不重叠).配置一个模块应有:EDA485转换器,带RS-232通讯口的计算机和本公司提供的EDA90系列测试软件.通过EDA90系列测试软件可最容易地进行配置,你也可根据指令集进行配置.
数据采集:将模块正确连接,主机发读数据命令,模块便将采集的数据回送主机.EDA9033E模块内数据每1S更新一次(电流电压等参数为1S的时间内的真有效值).
电量为从上电后一直累加,掉电10年内不丢失,收到电量底数设定指令后重设定电量底数.电量一直累计15年不会溢出.
量程选择:你可根据实际测量需要选择电压量程(10-500V)与电流量程(1-1000A).EDA9033E模块可正确测量满量程1.4倍的电流,电压输入信号,超过满量程1.4倍的输入会逐渐饱和,测量值偏小,不能准确测量.不超过3倍满电压量程与10倍满电流量程的瞬时(<0.1S)输入信号不会导致模块的损坏,但要注意电源不要接反或接错.
数据以标称满量程的百分数形式输出.ASCII码协议下电流,电压等参数的数据格式为一位符号位+或-,5位数据位和一个小数点,其转换公式如下所示:
设标程电压量程U0,电流量程为I0,则:
相电压U=输出数据U *U0 V
电流I=输出数据I *I0 A
单相有功功率Pa=输出数据Pa *U0*I0 W
有功功率P=输出数据P *U0*I0*3 W
单相无功功率Qa=输出数据Qa *U0*I0 Var
无功功率Q=输出数据Q *U0*I0*3 Var
功率因数COSФ=输出数据COSФ PF
电量=电量输出数据/(10000/9)*U0*I0/(3*1000*3600) 度
各线电压的计算:;;
各相视在功率:Sa=Ua*Ia ; Sb=Ub*Ib ; Sc=Uc*Ic; 总视在功率:
各个参数的详细计算公式请参见通讯协议说明中所列的计算公式及例子.
六,EDA9033E模块ASCII码通讯指令集及参数计算说明
(一),命令集
命令语法
命令响应
功 能
说 明
$(ADDR) M
!(ADDR)(9033E)
读模块名
查找模块
$(ADDR) 2
!(ADDR)(00)(BPS)(00)
读配置
读地址,波特率
%(ADDR)(NEW ADDR)(00)
(BPS)(00)
!(ADDR)
写配置
改地址,波特率
$(ADDR)3
!(ADDR)(U0)(I0)(UBB)(IBB)
读模块参数
读电压,电流的量程,变比
%(ADDR)(UBB)(IBB)
! (ADDR)
设置模块参数
设置电压,电流变比
#(ADDR) A
> (DATA)
读数据
读电流,电压功率等测量值
#(ADDR) P
> (DATA)
读数据
读各相有无功功率,频率值
#(ADDR) W
> (DATA) (CHK)
读电量数据
读取正反向有无功总电量
&(ADDR)(DATA)(CHK)
! (ADDR)
配置电量底数
配置正反向有无功总电量
(ADDR):地址,00~FF(两位ASCII码表示的十六进制数)
$,%,#,&,!,> :为定界符
M,2,3,A,P,W : 为读参数或读数据命令字
(BPS):表示波特率 03~07表示1200BPS~19200BPS
:回车(0DH)
数据格式为:1位起始位0,8位数据位,1位停止位1.
若模块接收到的地址不符,命令错,或校验和(带校验和的)错等,则没有回答.
(二),EDA9033E-ASCII码指令集及参数计算说明
1,读模块名: 从一指定地址读出模块名
命令: $ (ADDR) M
响应: ! (ADDR) (9033E)
例:命令: $01M
响应: !019033E
9033E :EDA9033E 模块名
2,读配置: 从一指定地址读出模块配置
命令: $ (ADDR) 2
响应: ! (ADDR) (00) (BPS) (00)
例:命令: $ 012
响应: !01000600〈CR〉
3,写配置: 配置EDA9033E模块的通讯地址,波特率
命令: % (ADDR) (NEW ADDR) (00) (波特率) (00)
响应: ! (ADDR)
(NEW ADDR): 新地址00~FFH (若不改变地址则使新地址等于原地址 ) 2字节
(00): 必须为00 2字节
例:命令: $ 01 02 00 06 00
响应: !02〈CR〉
该例为将1号模块地址改为2号,波特率为9600BPS,回答表示改地址成功.
4,读模块参数: 读模块电压,电流的量程,变比:
命令: $ (ADDR) 3
响应: ! (ADDR) (U0) (I0) (UBB) (IBB)
(U0) (I0) (UBB) (IBB) : 各2字节ASCII码表示的1字节(8位)十六进制数.
U0: 电压量程,其值为1~250表示2~500V,即输出值乘以2为实际电压量程.
I0: 电流量程,其值为1~200表示1~200A.
UBB:电压变比,1~200
IBB:电流变比,1~250
例:命令: $ 01 3
响应: !01 32 05 01 01〈CR〉
该例为读1号模块的电压,电流的量程,变比,读出的电压量程为100V,电流量程为5A,变比都为1.
5,设置模块电压,电流变比:
命令: % (ADDR) (UBB) (IBB)
响应: ! (ADDR)
(UBB) (IBB): 各2字节ASCII码表示的1字节(8位)十六进制数.
UBB:电压变比,1~200
IBB:电流变比,1~250
例:命令: % 01 3C C8
响应: !01〈CR〉
该例为将1号模块的电压变比设置为60,电流变比设置为200.回答表示设置成功.
6,读数据: 读出EDA9033E模块实时电压,电流,总有功,无功,功率因数等数据,数据输出顺序为:UA,IA,UB,IB,UC,IC,P,Q,COSФ
命令: # (ADDR) A
响应: > (DATA)
(DATA)为:UA,IA,UB,IB,UC,IC,P,Q,COSФ,9个参数.每个参数为7字节ASCII码值,格式为一位符号位+或-,5位十进制数据位和一个小数点.其数值为标称满量程的百分数(COSФ为实际测量值).
各个参数的含义及计算如下:
(UA): A相电压值. 实际值=(UA)*(U0)*(UBB) V
(UB): B相电压值. 实际值=(UB)*(U0)*(UBB) V
(UC): C相电压值. 实际值=(UC)*(U0)*(UBB) V
(IA): A相电流值. 实际值=(IA)*(I0)*(IBB) A
(IB): B相电流值. 实际值=(IB)*(I0)*(IBB) A
(IC): C相电流值. 实际值=(IC)*(I0)*(IBB) A
(P): 总有功功率值. 实际值=(P)*3*(U0)*(I0)*(UBB)*(IBB) W
(Q): 总无功功率值. 实际值=(Q)*3*(U0)*(I0)*(UBB)*(IBB) Var
(COSФ):总功率因数值.实际值=(COSФ) PF
7,读数据: 读各单相有功功率,各单相无功功率,频率,数据输出顺序为 PA,PB,PC,QA,QB,QC,F
命令: # (ADDR) P
响应: > (DATA)
(DATA)为: PA,PB,PC,QA,QB,QC,F ,7个参数.每个参数为7字节ASCII码值,格式为一位符号位+或-,5位十进制数据位和一个小数点.其数值为标称满量程的百分数(F频率为实际测量值).
各个参数的含义及计算如下:
(PA): A相有功功率值. 实际值=(PA)*(U0)*(I0)*(UBB)*(IBB) W
(PB): B相有功功率值. 实际值=(PB)*(U0)*(I0)*(UBB)*(IBB) W
(PC): C相有功功率值. 实际值=(PC)*(U0)*(I0)*(UBB)*(IBB) W
(QA): A相无功功率值. 实际值=(QA)*(U0)*(I0)*(UBB)*(IBB) Var
(QB): B相无功功率值. 实际值=(QB)*(U0)*(I0)*(UBB)*(IBB) Var
(QC): C相无功功率值. 实际值=(QC)*(U0)*(I0)*(UBB)*(IBB) Var
(F): 频率值. 实际值=(F)Hz 为线电压UAB的频率
8,读电量数据: 读正向有功总电能,反向有功总电能,正向无功总电量,反向无功总电量
命令: # (ADDR) W
响应: > (DATA) (CHK)
(DATA)为:正向有功总电能,反向有功总电能,正向无功总电量,反向无功总电量 ,4个参数.每个参数为12字节ASCII码表示的6字节(48位)十六进制数.
(CHK):为从">"开始(包括>)的所有数据累加和的1字节十六进制数用2字节ASCII码表示.
EDA9033E可输出累计正反向有无功电量,EDA9033E上电后即开始测量,电量从原掉电前的电量值开始累计.电压电流输入满量程时,各电量参数的最小累计时间为15年,超过此时间可能产生溢出.电量数据掉电10年内不丢失.收到电量底数设定指令后重设定电量底数.
各个参数的含义及计算如下:
(正向有功总电能):实际值=(正向有功总电能)/(10000/9)*(U0)*(I0)*(UBB)*(IBB)/3000/3600 度
(反向有功总电能):实际值=(反向有功总电能)/(10000/9)*(U0)*(I0)*(UBB)*(IBB)/3000/3600 度
(正向无功总电量):实际值=(正向无功总电量)/(10000/9)*(U0)*(I0)*(UBB)*(IBB)/3000/3600 度
(反向无功总电量):实际值=(反向无功总电量)/(10000/9)*(U0)*(I0)*(UBB)*(IBB)/3000/3600 度
(有功总电能)=(正向有功总电能)-(反向有功总电能)
(无功总电能)=(正向无功总电能)-(反向无功总电能)
9,配置电量底数:配置正向有功总电能,反向有功总电能,正向无功总电量,反向无功总电量
命令: & (ADDR) (DATA) (CHK)
响应: ! (ADDR)
(DATA)为:正向有功总电能,反向有功总电能,正向无功总电量,反向无功总电量 ,4个参数.
每个参数为12字节ASCII码表示的6字节(48位)十六进制数
(CHK):为从"&"开始(包括&)的所有数据累加和的1字节十六进制数用2字节ASCII码表示.
各个参数的含义及计算如下:
(正向有功总电能):= 正向有功总电能实际值(度)*3000*3600/(U0)/(I0)/(UBB)/(IBB)*(10000/9)
(反向有功总电能):= 反向有功总电能实际值(度)*3000*3600/(U0)/(I0)/(UBB)/(IBB)*(10000/9)
(正向无功总电量):= 正向无功总电量实际值(度)*3000*3600/(U0)/(I0)/(UBB)/(IBB)*(10000/9)
(反向无功总电量):= 反向无功总电量实际值(度)*3000*3600/(U0)/(I0)/(UBB)/(IBB)*(10000/9)
七,EDA9033E模块十六进制LC-02通讯指令集及参数计算说明
EDA9033E的LC-02通讯协议的一般格式为:
命令:4CH,57H, ADDR,CMD,DATA,CHK,0DH
响应:6CH,63H, ADDR,CMD,DATA,CHK,0DH
4CH,57H,6CH,63H: 起始码1,2 2字节
ADDR:地址00H--FFH 1字节
CMD: 命令 1字节
DATA: 数据 0或 n 字节
CHK: 校验和,从地址开始数据累加和 1字节
0DH: 结束码 1字节
若模块接收到的地址不符,命令错,或校验和错等,则没有回答.
读配置:读模块地址,波特率,型号
命令:4CH,57H,ADDR,01H,CHK,0DH
响应:6CH,63H,ADDR,01H,波特率,型号,CHK,0DH
波特率:通讯波特率 03~07表示1200BPS~19200BPS 1字节
型号: 9033 E001 4字节
2,写配置: 配置模块地址,波特率
命令:4CH,57H,ADDR,02H,NEW ADDR,波特率,00H,CHK,0DH
响应:6CH,63H,ADDR,02H,CHK,0DH
NEW ADDR:模块新地址 00~0FFH 1字节
波特率:通讯波特率 03~07表示1200BPS~19200BPS 1字节
读模块电压,电流的量程与变比:
命令: 4CH,57H,ADDR,03H,CHK,0DH
响应: 6CH,63H,ADDR,03H,(U0),(I0),(UBB),(IBB),CHK,0DH
(U0)(I0)(UBB)(IBB): 各1字节(8位)十六进制数.
U0: 电压量程,其值为1~250表示2~500V,即输出值乘以2为实际电压量程.
I0: 电流量程,其值为1~200表示1~200A.
UBB:电压变比,1~200
IBB:电流变比,1~250
例:命令: 4CH,57H,01H,03H,04H,0DH
响应: 6CH,63H,01H,03H,32H,05H,01H,01H,3DH,0DH
该例为读1号模块的电压,电流的量程,变比,读出的电压量程为100V,电流量程为5A,变比都为1.
4,设置模块电压,电流变比:
命令: 4CH,57H,ADDR,04H,(UBB),(IBB),CHK,0DH
响应: 6CH,63H,ADDR,04H,CHK,0DH
(UBB)(IBB): 各1字节(8位)十六进制数.
UBB:电压变比,1~200
IBB:电流变比,1~250
5,读数据:读电流,电压,总有功,无功,功率因数 ,各相有功,各相无功,频率
命令: 4CH,57H,ADDR,05H,CHK,0DH
响应: 6CH,63H,ADDR,05H,(DATAN),CHK,0DH
(DATAN)为:UA,IA,UB,IB,UC,IC,P,Q,COS,PA,PB,PC,QA,QB,QC,F,共16个参数.每个参数为2字节(16位) 十六进制数据,高字节在前低字节在后;标称满量程值为10000(2710H).其中P,Q,COS,PA,PB,PC,QA,QB,QC等 9个参数为有符号数,其最高位(BIT15)为符号位,1为负,0为正;计算时,先取出符号位(即判断最高位作为此参数的符号,然后将最高位置为0)后再计算.
各个参数的含义及计算公式如下:(以下带符号位的取出符号位)
(UA): A相电压值. 实际值=(UA)/10000*(U0)*(UBB) V
(UB): B相电压值. 实际值=(UB)/10000*(U0)*(UBB) V
(UC): C相电压值. 实际值=(UC)/10000*(U0)*(UBB) V
(IA): A相电流值. 实际值=(IA)/10000*(I0)*(IBB) A
(IB): B相电流值. 实际值=(IB)/10000*(I0)*(IBB) A
(IC): C相电流值. 实际值=(IC)/10000*(I0)*(IBB) A
(P): 总有功功率值. 实际值= +(P)/10000*3*(U0)*(I0)*(UBB)*(IBB) W
(Q): 总无功功率值. 实际值= +(Q)/10000*3*(U0)*(I0)*(UBB)*(IBB) Var
(COSФ):总功率因数值.实际值= +(COSФ)/10000 PF
(PA): A相有功功率值. 实际值= +(PA)/10000*(U0)*(I0)*(UBB)*(IBB) W
(PB): B相有功功率值. 实际值= +(PB)/10000*(U0)*(I0)*(UBB)*(IBB) W
(PC): C相有功功率值. 实际值= +(PC)/10000*(U0)*(I0)*(UBB)*(IBB) W
(QA): A相无功功率值. 实际值= +(QA)/10000*(U0)*(I0)*(UBB)*(IBB) Var
(QB): B相无功功率值. 实际值= +(QB)/10000*(U0)*(I0)*(UBB)*(IBB) Var
(QC): C相无功功率值. 实际值= +(QC)/10000*(U0)*(I0)*(UBB)*(IBB) Var
(F): 频率值. 实际值=(F)/100 Hz 为线电压UAB的频率
6,读电量数据:读正向有功总电能,反向有功总电能,正向无功总电量,反向无功总电量
命令: 4CH,57H,ADDR,06H,CHK,0DH
响应: 6CH,63H,ADDR,06H,(DATAN),CHK,0DH
(DATAN)为:正向有功总电能,反向有功总电能,正向无功总电量,反向无功总电量 ,共24个字节,4个参数. 每个参数为6字节(48位)十六进制数.
EDA9033E可输出累计正反向有无功电量,EDA9033E上电后即开始测量,电量从原掉电前的电量值开始累计.电压电流输入满量程时,各电量参数的最小累计时间为15年,超过此时间可能产生溢出.电量数据掉电10年内不丢失.收到电量底数设定指令后重设定电量底数.
各个参数的含义及计算如下:
(正向有功总电能):实际值=(正向有功总电能)/(10000/9)*(U0)*(I0)*(UBB)*(IBB)/3000/3600 度
(反向有功总电能):实际值=(反向有功总电能)/(10000/9)*(U0)*(I0)*(UBB)*(IBB)/3000/3600 度
(正向无功总电量):实际值=(正向无功总电量)/(10000/9)*(U0)*(I0)*(UBB)*(IBB)/3000/3600 度
(反向无功总电量):实际值=(反向无功总电量)/(10000/9)*(U0)*(I0)*(UBB)*(IBB)/3000/3600 度
(有功总电能)=(正向有功总电能)-(反向有功总电能)
(无功总电能)=(正向无功总电能)-(反向无功总电能)
7,配置电量底数:配置正向有功总电能,反向有功总电能,正向无功总电量,反向无功总电量
命令: 4CH,57H,ADDR,07H,(DATAN),CHK,0DH
响应: 6CH,63H,ADDR,07H,CHK,0DH
(DATAN)为:正向有功总电能,反向有功总电能,正向无功总电量,反向无功总电量 ,共24个字节,4个参数.
各个参数的含义及计算如下:
(正向有功总电能): = 正向有功总电能实际值(度)*3000*3600/(U0)/(I0)/(UBB)/(IBB)*(10000/9)
(反向有功总电能): = 反向有功总电能实际值(度)*3000*3600/(U0)/(I0)/(UBB)/(IBB)*(10000/9)
(正向无功总电量): = 正向无功总电量实际值(度)*3000*3600/(U0)/(I0)/(UBB)/(IBB)*(10000/9)
(反向无功总电量): = 反向无功总电量实际值(度)*3000*3600/(U0)/(I0)/(UBB)/(IBB)*(10000/9)
八,EDA9033E模块广播命令的使用说明
EDA9033E模块提供了2条广播命令:读与写模块当前地址,波特率,通讯协议.该命令的使用为用户在不知模块的当前地址与协议时可容易地得到模块的地址,协议等参数,并可容易地配置模块地址,通讯波特率,通讯协议等参数.
本公司提供的EDA9033E模块测试软件有此项功能,用户可用此软件来测试与配置模块.
此广播命令不论模块当前协议如何,均可使用.
在使用此2条广播命令时,必须确保只有一块模块接入,否则将导致错误.
此协议的数据格式介绍如下:
1,读模块当前地址,波特率,通讯协议
命令: 0F9H,0CAH,0A5H,4CH,57H,0FFH(广播地址),01H,00H,0DH
响应: 6CH,63H,ADDR,BPS,XY,(CHK),0DH
2,写模块当前地址,波特率,通讯协议
命令: 0F9H,0CAH,0A5H,4CH,57H,0FFH(广播地址),02H,ADDR,BPS,XY,(CHK),0DH
响应: 6CH,63H,ADDR,BPS,XY,(CHK),0DH
ADDR: 当前地址 00~FF 1字节十六进制数
BPS: 当前波特率 03~07 表示1200~19200BPS 若=00,则只改变协议 1字节
XY: 当前协议,1字节 00~03H,83H
00: ASCII 01: HEX LC-02 02: MODBUS-ASCII
03: MODBUS-RTU -11位,1起始位0,8数据位,2停止位1
83: MODBUS-RTU -10位,1起始位0,8数据位,1停止位1
(CHK): 从地址开始,数据累加和 1字节
EDA9033E智能三相电参数数据综合采集模块
MODBUS通讯协议说明
目录
一,EDA9033E模块Modbus通讯规约简介
二,EDA9033E模块Modbus-ASCII通讯协议说明
三,EDA9033E模块Modbus-RTU通讯协议说明
四,EDA9033E模块Modbus协议的功能码与所对应的数据表
五,EDA9033E模块的数据计算
六,Modbus通讯规约介绍
(一)MODBUS通讯规约简介
(二)MODBUS的两种传输方式
(三)Modbus消息帧
(四)MODBUS通讯错误检测方法
一,EDA9033E模块Modbus通讯规约简介
EDA9033E模块同时支持的通讯规约有4种:(ASCII码)研华ADAM兼容通讯协议,十六进制LC-02协议,MODBUS-ASCII,MODBUS-RTU.各通讯规约的转换可由公司提供的"EDA90系列模块测试软件"来进行设置.
EDA9033E模块的"MODBUS通讯协议说明"描述了串行口通讯的读,写命令格式及内部信息数据的定义,数据计算,以便第三方开发使用.
EDA9033E模块的MODBUS通讯规约是与Modicon系统相兼容的Modbus通讯规约.
二,EDA9033E模块MODBUS-ASCII通讯协议说明
1,EDA9033E模块MODBUS-ASCII协议中每个字节的位:
1个起始位
8个数据位,最小的有效位先发送
无奇偶校验位
1个停止位
错误检测域:
LRC(纵向冗长检测)
2,EDA9033E模块MODBUS-ASCII协议中的通讯波特率:1200,2400,4800,9600,19200BPS.
模块的通讯波特率及地址改变可由公司提供的"EDA90系列模块测试软件"来进行设置,或根据通讯协议来进行设置.
3,EDA9033E模块MODBUS协议中的功能域代码:
功能码
含义
功能
03
读保持寄存器
读测量数据
06
预置单寄存器
设置通讯地址,波特率,电压,电流变比
10
预置多寄存器
设置电能底数
4,EDA9033E模块MODBUS-ASCII协议格式:
上位机发送:
: 单元地址 功能码 起始地址 读取点数 LRC校验 CR LF
下位机响应:
: 单元地址 功能码 字节数 数据 LRC校验 CR LF
命令格式:
呼叫 :AA FF SSSS NNNN LL
应答 :AA FF XX HHHH..... LL
其中: : 为起始符
AA 模块地址
FF 功能号
SSSS 起始通道
NNNN 通道数
XX 数据字节长度
HHHH 数据字节
LL 校验和
回车
换行
5,功能码03:读保持寄存器,读测量数据
数据起始地址: 00~1E
数据长度: 1~0C ,超出范围无效; 数据起始地址+数据长度 不大于1F,超过范围命令无效.
说明: 读取的是16位数据,高位在前,低位在后.
数据定义: 见功能码与数据对照表1.
例1,读测量数据:
命令: : 01 03 00 00 00 02 LRC 17字节
ADDR 功能 开始地址 寄存器个数 LRC校验
响应: : 01 03 04 64 05 01 01 LRC 19字节
ADDR 功能 数据字节长度 U0 I0 UBB IBB LRC校验
6,功能码06:预置单寄存器,设置通讯地址,波特率,电压,电流变比
数据起始地址: 0000或0001
数据长度: 01 , 不等于01命令无效.
说明: 设置模块通讯地址,波特率或设置模块电压,电流变比.
数据定义:见功能码与数据对照表2.
例2,预置模块通讯地址,波特率(将1号模块地址设置为2号,波特率为9600BPS)
命令: : 01 06 0000 0001 02 02 06 LRC
ADDR 功能 开始地址 寄存器个数 字节计数 预置数据 LRC校验
响应: : 01 06 0000 0001 LRC
ADDR 功能 开始地址 寄存器个数 LRC校验
例3,预置电压,电流变比(将1号模块的电压变比设置为60,电流变比设置为20)
命令: : 01 06 0001 0001 02 3C 14 LRC
ADDR 功能 开始地址 寄存器个数 字节计数 预置数据 LRC校验
响应: : 01 06 0001 0001 LRC
ADDR 功能 开始地址 寄存器个数 LRC校验
7,功能码10:预置多寄存器,设置电能底数
数据起始地址: 0000
数据长度: 0C , 不等于0C命令无效.
说明: 预置电能底数
数据定义:见功能码与数据对照表3.
例4,预置电能底数
命令: : 01 10 00 00 00 0C 18 (DATA 24*2字节) LRC
ADDR 功能 开始地址 寄存器个数 字节计数 预置数据 LRC校验
响应: : 01 10 00 00 00 0C LRC
ADDR 功能 开始地址 寄存器个数 LRC校验
三,EDA9033E模块MODBUS-RTU通讯协议说明
代码系统:
8位二进制,十六进制数0...9,A...F.每个8位的信息域中包含2个十六进制字符.
2,EDA9033E模块MODBUS-RTU协议中每个字节的位:
1个起始位
8个数据位,最小的有效位先发送
无奇偶校验位
2个停止位
错误检测域:
CRC(循环冗长检测)
3,EDA9033E模块MODBUS-RTU协议中的通讯波特率:1200,2400,4800,9600,19200BPS.
模块的通讯波特率及地址改变可由公司提供的"EDA90系列模块测试软件"来进行设置,或根据通讯协议来进行设置.
4,EDA9033E模块MODBUS协议中的功能域代码:
功能码
含义
功能
03
读保持寄存器
读测量数据
06
预置单寄存器
设置通讯地址,波特率,电压,电流变比
10
预置多寄存器
设置电能底数
MODBUS-RTU的帧结构:
在RTU模式中,新的信息总是以至少3.5个字符的静默时间开始.紧接着传送第一个域:设备地址.
整帧的信息必须以一个连续的数据流进行传输.如果信息结束前存在超过1.5个字符以上的间隔时间,则出错.
一帧信息的标准结构如下:
开始 地址域 功能域 数据域 CRC校验 结束
T1-T2-T3-T4 8位 8位 n*8位 16位 T1-T2-T3-T4
地址域: 从机的有效地址范围为0~247 ,0为广播地址
功能域: 有效编码为1~255
数据域: 数据域由多组这样的数据构成:两个十六进制数为一组,范围在00-FF之间.这些数据产生于一个RTU字符.
主机发给从机的数据域中包括了从机完成功能域的动作时必须的附加信息.可能包括这样一些项目,
如:数字寄存器和保持寄存器地址,将要处理的项目数量,和实际的数据字节数.
例如:主机要求从机读一组保持寄存器,数据域就指定了起始寄存器,需要读多少个寄存器;
如果主机要向从机中的一组寄存器写入数值,数据域就规定了起始寄存器,要向多少个寄存器写入数据,数据字节数,以及写入寄存器什么样的数据.
CRC校验: CRC生成后,低字节在前,高字节在后.
6,功能码03:读保持寄存器,读测量数据
数据起始地址: 0000~001E
数据长度: 0001~000C ,超出范围无效; 数据起始地址+数据长度 不大于1F,超过范围命令无效.
说明: 读取的是16位数据,高位在前,低位在后.
数据定义: 见功能码与数据对照表1.
例1,读测量数据:
命令: 01 03 00 00 00 02 CRC 8字节
ADDR 功能 开始地址 寄存器个数 CRC校验
响应: 01 03 04 64 05 01 01 CRC 9字节
ADDR 功能 字节计数 U0 I0 UBB IBB CRC校验
7,功能码06:预置单寄存器,设置通讯地址,波特率,电压,电流变比
数据起始地址: 00 00或00 01
数据长度: 01 , 不等于01命令无效.
说明: 设置模块通讯地址,波特率或设置模块电压,电流变比.
数据定义:见功能码与数据对照表2.
例2,预置模块通讯地址,波特率(将1号模块地址设置为2号,波特率为9600BPS)
命令: 01 06 00 00 00 01 02 02 06 CRC
ADDR 功能 开始地址 寄存器个数 字节计数 预置数据 CRC校验
响应: 01 06 00 00 00 01 CRC
ADDR 功能 开始地址 寄存器个数 CRC校验
例3,预置电压,电流变比(将1号模块的电压变比设置为60,电流变比设置为20)
命令: 01 06 00 01 00 01 02 3C 14 CRC
ADDR 功能 开始地址 寄存器个数 字节计数 预置数据 CRC校验
响应: 01 06 00 01 00 01 CRC
ADDR 功能 开始地址 寄存器个数 CRC校验
8,功能码10:预置多寄存器,设置电能底数
数据起始地址: 0000
数据长度: 0C , 不等于0C命令无效.
说明: 预置电能底数
数据定义:见功能码与数据对照表3.
例4,预置电能底数
命令: 01 10 0000 000C 18 (DATA 24字节) CRC
ADDR 功能 开始地址 寄存器个数 字节计数 预置数据 CRC校验
响应: 01 10 0000 000C CRC
ADDR 功能 开始地址 寄存器个数 CRC校验
四,EDA9033E模块MODBUS协议的功能码与所对应的数据表
表1:功能码03H与数据对照表:
地址
数据内容
数据说明
0000
U0,I0
高8位数据*2后为电压量程,低8位为电流量程
0001
UBB,IBB
高8位为电压变比,低8位为电流变比
0002
UA
A相电压
0003
IA
A相电流
0004
UB
B相电压
0005
IB
B相电流
0006
UC
C相电压
0007
IC
C相电流
0008
P
总有功功率
0009
Q
总无功功率
000A
COS
总功率因数
000B
PA
A相有功功率
000C
PB
B相有功功率
000D
PC
C相有功功率
000E
QA
A相无功功率
000F
QB
B相无功功率
0010
QC
C相无功功率
0011
F
频率
0012
正向有功总电能
正向有功总电能48位计数器高16位
0013
正向有功总电能48位计数器中16位
0014
正向有功总电能48位计数器低16位
0015
反向有功总电能
反向有功总电能48位计数器高16位
0016
反向有功总电能48位计数器中16位
0017
反向有功总电能48位计数器低16位
0018
正向无功总电能
正向无功总电能48位计数器高16位
0019
正向无功总电能48位计数器中16位
001A
正向无功总电能48位计数器低16位
001B
反向无功总电能
反向无功总电能48位计数器高16位
001C
反向无功总电能48位计数器中16位
001D
反向无功总电能48位计数器低16位
001E
S
总视在功率
表2:功能码06H与数据对照表.
地址
数据内容
数据说明
0000
ADDR,BPS
高8位为模块通讯地址,地址范围为01~F7H;低8位为通讯波特率,数值为03~07H,表示1200~19200BPS
0001
UBB,IBB
高8位为电压变比,低8位为电流变比
表3:功能码10H与数据对照表.
地址
数据内容
数据说明
0000
正向有功总电能
正向有功总电能48位计数器高16位
0001
正向有功总电能48位计数器中16位
0002
正向有功总电能48位计数器低16位
0003
反向有功总电能
反向有功总电能48位计数器高16位
0004
反向有功总电能48位计数器中16位
0005
反向有功总电能48位计数器低16位
0006
正向无功总电能
正向无功总电能48位计数器高16位
0007
正向无功总电能48位计数器中16位
0008
正向无功总电能48位计数器低16位
0009
反向无功总电能
反向无功总电能48位计数器高16位
000A
反向无功总电能48位计数器中16位
000B
反向无功总电能48位计数器低16位
五,EDA9033E模块的数据计算
1,UA,IA,UB,IB,UC,IC,P,Q,COS,PA,PB,PC,QA,QB,QC,共15个参数.每个参数为2字节(16位) 十六进制数据,高字节在前低字节在后;标称满量程值为10000(2710H).其中P,Q,COS,PA,PB,PC,QA,QB,QC等 9个参数为有符号数,其最高位(BIT15)为符号位,1为负,0为正;计算时,先取出符号位(即判断最高位作为此参数的符号,然后将最高位置为0)后再计算.
各个参数的含义及计算公式如下:(以下带符号位的取出符号位)
(UA): A相电压值. 实际值=(UA)/10000*(U0)*(UBB) V
(UB): B相电压值. 实际值=(UB)/10000*(U0)*(UBB) V
(UC): C相电压值. 实际值=(UC)/10000*(U0)*(UBB) V
(IA): A相电流值. 实际值=(IA)/10000*(I0)*(IBB) A
(IB): B相电流值. 实际值=(IB)/10000*(I0)*(IBB) A
(IC): C相电流值. 实际值=(IC)/10000*(I0)*(IBB) A
(P): 总有功功率值. 实际值= +(P)/10000*3*(U0)*(I0)*(UBB)*(IBB) W
(Q): 总无功功率值. 实际值= +(Q)/10000*3*(U0)*(I0)*(UBB)*(IBB) Var
(COSФ):总功率因数值.实际值= +(COSФ)/10000 PF
(PA): A相有功功率值. 实际值= +(PA)/10000*(U0)*(I0)*(UBB)*(IBB) W
(PB): B相有功功率值. 实际值= +(PB)/10000*(U0)*(I0)*(UBB)*(IBB) W
(PC): C相有功功率值. 实际值= +(PC)/10000*(U0)*(I0)*(UBB)*(IBB) W
(QA): A相无功功率值. 实际值= +(QA)/10000*(U0)*(I0)*(UBB)*(IBB) Var
(QB): B相无功功率值. 实际值= +(QB)/10000*(U0)*(I0)*(UBB)*(IBB) Var
(QC): C相无功功率值. 实际值= +(QC)/10000*(U0)*(I0)*(UBB)*(IBB) Var
(F): 频率值. 实际值=(F)/100 Hz 为线电压UAB的频率
2,正向有功总电能,反向有功总电能,正向无功总电量,反向无功总电量 ,共24个字节,4个参数. 每个参数为6字节(48位)十六进制数.
(正向有功总电能):实际值=(正向有功总电能)/(10000/9)*(U0)*(I0)*(UBB)*(IBB)/3000/3600 度
(反向有功总电能):实际值=(反向有功总电能)/(10000/9)*(U0)*(I0)*(UBB)*(IBB)/3000/3600 度
(正向无功总电量):实际值=(正向无功总电量)/(10000/9)*(U0)*(I0)*(UBB)*(IBB)/3000/3600 度
(反向无功总电量):实际值=(反向无功总电量)/(10000/9)*(U0)*(I0)*(UBB)*(IBB)/3000/3600 度
(有功总电能)=(正向有功总电能)-(反向有功总电能)
(无功总电能)=(正向无功总电能)-(反向无功总电能)
3,配置电量底数时输出电能的计算
每个参数为6字节(48位)十六进制数,各个参数的含义及计算如下:
(正向有功总电能): = 正向有功总电能实际值(度) *3000*3600/(U0)/(I0)/(UBB)/(IBB)*(10000/9)
(反向有功总电能): = 反向有功总电能实际值(度) *3000*3600/(U0)/(I0)/(UBB)/(IBB)*(10000/9)
(正向无功总电量): = 正向无功总电量实际值(度) *3000*3600/(U0)/(I0)/(UBB)/(IBB)*(10000/9)
(反向无功总电量): = 反向无功总电量实际值(度) *3000*3600/(U0)/(I0)/(UBB)/(IBB)*(10000/9)
六,MODBUS通讯规约介绍
(一)MODBUS通讯规约简介
Modbus 协议是应用于电子控制器上的一种通用语言.通过此协议,控制器相互之间,控制器经由网络(例如以太网)和其它设备之间可以通信.它已经成为一通用工业标准.有了它,不同厂商生产的控制设备可以连成工业网络,进行集中监控.
此协议定义了一个控制器能认识使用的消息结构,而不管它们是经过何种网络进行通信的.它描述了一控制器请求访问其它设备的过程,如果回应来自其它设备的请求,以及怎样侦测错误并记录.它制定了消息域格局和内容的公共格式.
当在一Modbus网络上通信时,此协议决定了每个控制器须要知道它们的设备地址,识别按地址发来的消息,决定要产生何种行动.如果需要回应,控制器将生成反馈信息并用Modbus协议发出.在其它网络上,包含了Modbus协议的消息转换为在此网络上使用的帧或包结构.这种转换也扩展了根据具体的网络解决节地址,路由路径及错误检测的方法.
1,在Modbus网络上传输
标准的Modbus口是使用一RS-232C兼容串行接口,它定义了连接口的针脚,电缆,信号位,传输波特率,奇偶校验.控制器能直接或经由Modem组网.
控制器通信使用主—从技术,即仅一设备(主设备)能初始化传输(查询).其它设备(从设备)根据主设备查询提供的数据作出相应反应.典型的主设备:主机和可编程仪表.典型的从设备:可编程控制器.
主设备可单独和从设备通信,也能以广播方式和所有从设备通信.如果单独通信,从设备返回一消息作为回应,如果是以广播方式查询的,则不作任何回应.Modbus协议建立了主设备查询的格式:设备(或广播)地址,功能代码,所有要发送的数据,一错误检测域.
从设备回应消息也由Modbus协议构成,包括确认要行动的域,任何要返回的数据,和一错误检测域.如果在消息接收过程中发生一错误,或从设备不能执行其命令,从设备将建立一错误消息并把它作为回应发送出去.
(二)MODBUS的两种传输方式
控制器能设置为两种传输模式(ASCII或RTU)中的任何一种在标准的Modbus网络通信.用户选择想要的模式,包括串口通信参数(波特率,校验方式等),在配置每个控制器的时候,在一个Modbus网络上的所有设备都必须选择相同的传输模式和串口参数.
ASCII模式
:
地址
功能代码
数据数量
数据1
…
数据n
LRC高字节
LRC低字节
回车
换行
RTU模式
地址
功能代码
数据数量
数据1
…
数据n
CRC高字节
CRC低字节
所选的ASCII或RTU方式仅适用于标准的Modbus网络,它定义了在这些网络上连续传输的消息段的每一位,以及决定怎样将信息打包成消息域和如何解码.
1,ASCII模式
当控制器设为在Modbus网络上以ASCII(美国标准信息交换代码)模式通信,在消息中的每个8Bit字节都作为两个ASCII字符发送.这种方式的主要优点是字符发送的时间间隔可达到1秒而不产生错误.
代码系统:
十六进制,ASCII字符0~9,A~F
消息中的每个ASCII字符都是一个十六进制字符组成
每个字节的位:
1个起始位
7个数据位,最小的有效位先发送
1个奇偶校验位,无校验则无
1个停止位(有校验时),2个Bit(无校验时)
错误检测域:
LRC(纵向冗长检测)
2,RTU模式
当控制器设为在Modbus网络上以RTU(远程终端单元)模式通信,在消息中的每个8Bit字节包含两个4Bit的十六进制字符.这种方式的主要优点是:在同样的波特率下,可比ASCII方式传送更多的数据.
代码系统
8位二进制,十六进制数0...9,A...F
消息中的每个8位域都是一个字节的两个十六进制字符组成
每个字节的位
1个起始位
8个数据位,最小的有效位先发送
1个奇偶校验位,无校验则无
1个停止位(有校验时),2个Bit(无校验时)
错误检测域
CRC循环冗长检测
(三)Modbus消息帧
两种传输模式中(ASCII或RTU),传输设备以将Modbus消息转为有起点和终点的帧,这就允许接收的设备在消息起始处开始工作,读地址分配信息,判断哪一个设备被选中(广播方式则传给所有设备),判知何时信息已完成.部分的消息也能侦测到并且错误能设置为返回结果.
1,ASCII帧
使用ASCII模式,消息以冒号(:)字符(ASCII码 3AH)开始,以回车换行符结束(ASCII码 0DH,0AH).
其它域可以使用的传输字符是十六进制的0...9,A...F.网络上的设备不断侦测":"字符,当有一个冒号接收到时,每个设备都解码下个域(地址域)来判断是否发给自己的.
消息中字符间发送的时间间隔最长不能超过1秒,否则接收的设备将认为传输错误.一个典型消息帧如下所示:
起始位
设备地址
功能代码
数据
LRC校验
结束符
1个字符
2个字符
2个字符
n个字符
2个字符
2个字符
2,RTU帧
使用RTU模式,消息发送至少要以3.5个字符时间的停顿间隔开始.在网络波特率下多样的字符时间,这是最容易实现的(如下图的T1-T2-T3-T4所示).传输的第一个域是设备地址.可以使用的传输字符是十六进制的0...9,A...F.网络设备不断侦测网络总线,包括停顿间隔时间内.当第一个域(地址域)接收到,每个设备都进行解码以判断是否发往自己的.在最后一个传输字符之后,一个至少3.5个字符时间的停顿标定了消息的结束.一个新的消息可在此停顿后开始.
整个消息帧必须作为一连续的流传输.如果在帧完成之前有超过1.5个字符时间的停顿时间,接收设备将刷新不完整的消息并假定下一字节是一个新消息的地址域.同样地,如果一个新消息在小于3.5个字符时间内接着前个消息开始,接收的设备将认为它是前一消息的延续.这将导致一个错误,因为在最后的CRC域的值不可能是正确的.一典型的消息帧如下所示:
起始位
设备地址
功能代码
数据
CRC校验
结束符
T1-T2-T3-T4
8Bit
8Bit
n个8Bit
16Bit
T1-T2-T3-T4
3,地址域
消息帧的地址域包含两个字符(ASCII)或8Bit(RTU).可能的从设备地址是0...247 (十进制).单个设备的地址范围是1...247.主设备通过将要联络的从设备的地址放入消息中的地址域来选通从设备.当从设备发送回应消息时,它把自己的地址放入回应的地址域中,以便主设备知道是哪一个设备作出回应.
地址0是用作广播地址,以使所有的从设备都能认识.当Modbus协议用于更高水准的网络,广播可能不允许或以其它方式代替.
4,如何处理功能域
消息帧中的功能代码域包含了两个字符(ASCII)或8Bits(RTU).可能的代码范围是十进制的1...255.当然,有些代码是适用于所有控制器,有些是应用于某种控制器,还有些保留以备后用.
当消息从主设备发往从设备时,功能代码域将告之从设备需要执行哪些行为.例如去读取输入的开关状态,读一组寄存器的数据内容,读从设备的诊断状态,允许调入,记录,校验在从设备中的程序等.
当从设备回应时,它使用功能代码域来指示是正常回应(无误)还是有某种错误发生(称作异议回应).对正常回应,从设备仅回应相应的功能代码.对异议回应,从设备返回一等同于正常代码的代码,但最重要的位置为逻辑1.
例如:一从主设备发往从设备的消息要求读一组保持寄存器,将产生如下功能代码:
0 0 0 0 0 0 1 1 (十六进制03H)
对正常回应,从设备仅回应同样的功能代码.对异议回应,它返回:
1 0 0 0 0 0 1 1 (十六进制83H)
除功能代码因异议错误作了修改外,从设备将一独特的代码放到回应消息的数据域中,这能告诉主设备发生了什么错误.
主设备应用程序得到异议的回应后,典型的处理过程是重发消息,或者诊断发给从设备的消息并报告给操作员.
5,数据域
数据域是由两个十六进制数集合构成的,范围00...FF.根据网络传输模式,这可以是由一对ASCII字符组成或由一RTU字符组成.
从主设备发给从设备消息的数据域包含附加的信息:从设备必须用于进行执行由功能代码所定义的所为.这包括了象不连续的寄存器地址,要处理项的数目,域中实际数据字节数.
例如,如果主设备需要从设备读取一组保持寄存器(功能代码03),数据域指定了起始寄存器以及要读的寄存器数量.如果主设备写一组从设备的寄存器(功能代码10十六进制),数据域则指明了要写的起始寄存器以及要写的寄存器数量,数据域的数据字节数,要写入寄存器的数据.
如果没有错误发生,从从设备返回的数据域包含请求的数据.如果有错误发生,此域包含一异议代码,主设备应用程序可以用来判断采取下一步行动.
在某种消息中数据域可以是不存在的(0长度).例如,主设备要求从设备回应通信事件记录(功能代码0B十六进制),从设备不需任何附加的信息.
6,错误检测域
标准的Modbus网络有两种错误检测方法.错误检测域的内容视所选的检测方法而定.
ASCII
当选用ASCII模式作字符帧,错误检测域包含两个ASCII字符.这是使用LRC(纵向冗长检测)方法对消息内容计算得出的,不包括开始的冒号符及回车换行符.LRC字符附加在回车换行符前面.
RTU
当选用RTU模式作字符帧,错误检测域包含一16Bits值(用两个8位的字符来实现).错误检测域的内容是通过对消息内容进行循环冗长检测方法得出的.CRC域附加在消息的最后,添加时先是低字节然后是高字节.故CRC的高位字节是发送消息的最后一个字节.
7,字符的连续传输
当消息在标准的Modbus系列网络传输时,每个字符或字节以如下方式发送(从左到右):
最低有效位...最高有效位
使用ASCII字符帧时,位的序列是:
有奇偶校验
起始位
1
2
3
4
5
6
7
奇偶位
停止位
无奇偶校验
起始位
1
2
3
4
5
6
7
停止位
停止位
使用RTU字符帧时,位的序列是:
有奇偶校验
起始位
1
2
3
4
5
6
7
8
奇偶位
停止位
无奇偶校验
起始位
1
2
3
4
5
6
7
8
停止位
停止位
(四)MODBUS通讯错误检测方法
标准的Modbus串行网络采用两种错误检测方法.奇偶校验对每个字符都可用,帧检测(LRC或CRC)应用于整个消息.它们都是在消息发送前由主设备产生的,从设备在接收过程中检测每个字符和整个消息帧.
用户要给主设备配置一预先定义的超时时间间隔,这个时间间隔要足够长,以使任何从设备都能作为正常反应.如果从设备测到一传输错误,消息将不会接收,也不会向主设备作出回应.这样超时事件将触发主设备来处理错误.发往不存在的从设备的地址也会产生超时.
1,奇偶校验
用户可以配置控制器是奇或偶校验,或无校验.这将决定了每个字符中的奇偶校验位是如何设置的.
如果指定了奇或偶校验,"1"的位数将算到每个字符的位数中(ASCII模式7个数据位,RTU中8个数据位).例如RTU字符帧中包含以下8个数据位:
1 1 0 0 0 1 0 1
整个"1"的数目是4个.如果使用了偶校验,帧的奇偶校验位将是0,使得整个"1"的个数仍是4个.如果使用了奇校验,帧的奇偶校验位将是1,使得整个"1"的个数是5个.
如果没有指定奇偶校验位,传输时就没有校验位,也不进行校验检测.代替一附加的停止位填充至要传输的字符帧中.
2,LRC检测
使用ASCII模式,消息包括了一基于LRC方法的错误检测域.LRC域检测了消息域中除开始的冒号及结束的回车换行号外的内容.
LRC域是一个包含一个8位二进制值的字节.LRC值由传输设备来计算并放到消息帧中,接收设备在接收消息的过程中计算LRC,并将它和接收到消息中LRC域中的值比较,如果两值不等,说明有错误.
LRC方法是将消息中的8Bit的字节连续累加,丢弃了进位.
3,CRC检测
使用RTU模式,消息包括了一基于CRC方法的错误检测域.CRC域检测了整个消息的内容.
CRC域是两个字节,包含一16位的二进制值.它由传输设备计算后加入到消息中.接收设备重新计算收到消息的CRC,并与接收到的CRC域中的值比较,如果两值不同,则有误.
CRC是先调入一值是全"1"的16位寄存器,然后调用一过程将消息中连续的8位字节各当前寄存器中的值进行处理.仅每个字符中的8Bit数据对CRC有效,起始位和停止位以及奇偶校验位均无效.
CRC产生过程中,每个8位字符都单独和寄存器内容相异或(XOR),结果向最低有效位方向移动,最高有效位以0填充.LSB被提取出来检测,如果LSB为1,寄存器单独和预置的值(A001H)异或一下,如果LSB为0,则不进行.整个过程要重复8次.在最后一位(第8位)完成后,下一个8位字节又单独和寄存器的当前值相异或.最终寄存器中的值,是消息中所有的字节都执行之后的CRC值.
CRC添加到消息中时,低字节先加入,然后高字节.
EDA9033E 智能三相电参数数据综合采集模块订购指南
欢迎使用山东力创科技有限公司的产品.
在您选用EDA9033E模块前,请先根据系统要求确定:
通讯接口,供电电源,电压,电流量程,通讯协议等参数.
模块按通讯接口不同有: RS-485,RS-232,串口TTL电平.
可选供电电源有:+5V,+8~30V,AC60~265V .
可选电压量程(相电压)有:10V,20V,50V,60V,100V,200V,250V,300V,400V,500V等.
可选电流量程有:1A,2A,3A,5A,10A,20A,(50A,100A,200A,500A,1000A)等.
可选通讯协议规约4种:(ASCII码)研华ADAM兼容通讯协议,十六进制LC-02协议,MODBUS-ASCII,MODBUS-RTU.
ASCII码格式数据便于计算机编程.如果您的终端是单片机系统,LC-02协议则更适合.
您若购买EDA90系列模块,还可选用本公司的EDA系列RS-232/RS-485转换器.
EDA9033E模块的测量电压Ua Ub Uc都是相电压(每相对UGND端的电压),因此,在110V线路中,可选电压量程为60V或100V的模块;在380V线路中,可选电压量程为250V的模块;在660V线路中,可选电压量程为500V(或400V)的模块.正确选择量程可保证测量的精度.
因电压测量为电阻分压输入,小于满量程十分之一的输入电压不能保证其精度,一般应用中,电压的动态范围都较小,本模块可完全满足要求.
电流为高精度穿心式互感输入,在满量程百分之一的输入动态范围下,可保证其测量精度.
力创科技产品系列之-------EDA9033E智能三相电参数数据综合采集模块
http://www.sdlckj.com E-mail:lwlckj@163.com Tel: 0634-6251390/1/2 Fax:0634-6251399 第 页
- 模电数电期末试题 > EDA9033E智能三相电参数数据综合采集模块
-
EDA9033E智能三相电参数数据综合采集模块
下载该文档 文档格式:DOC 更新时间:2005-09-02 下载次数:0 点击次数:1文档基本属性 文档语言: Simplified Chinese 文档格式: doc 文档作者: 汪运来 关键词: 主题: 备注: 点击这里显示更多文档属性 经理: 单位: 力创科技 分类: 创建时间: 上次保存者: 修订次数: 编辑时间: 文档创建者: 修订: 加密标识: 幻灯片: 段落数: 字节数: 备注: 演示格式: 上次保存时间:
- 下载地址 (推荐使用迅雷下载地址,速度快,支持断点续传)
- DOC格式下载
- 更多文档...
-
上一篇:认识数控电火花机床
下一篇:EDA9011G智能单相电参数采集模块
点击查看更多关于模电数电期末试题的相关文档
- 您可能感兴趣的
- 考研模电数电电路试题 数电模电视频教程下载 关于模电数电笔试题 模电数电 数电模电课本 模电数电基础知识 模电数电题答案 模电数电基教学视频 清华大学数电模电考试
- 大家在找
-
- · 2011年成都区县gdp
- · 2012年陕西百家碎戏
- · 中国下一任书记
- · 大学英语四级试卷
- · 实况足球2010怎么控制
- · 褜褎褕写褞泻谐
- · 中国民营企业发展现状
- · 洛阳催花牡丹
- · 李嘉诚朝鲜日报
- · 索尼dsct70
- · 两台路由器连接
- · 教育案例分析范文
- · lpe5lpe8
- · 汽车自动变速器的毕业论文
- · 女旦菊之助
- · 小型永磁吸盘
- · 女用充气仿真
- · 蟋蟀的住宅这课怎么上
- · 新还珠格格电视剧98集
- · vf教材课后题答案
- · 新疆大学画法几何课课件
- · 变压器故障
- · 哈工大电工实验
- · 心理学课件ppt
- · www.hk777.com
- · 路基工程技术课件
- · 如何做好乡镇信访工作
- · 分解因式法练习题
- · 广西水利电业集团
- · 金华二手手机
- · 全科医学图书
- · 会计继续教育习题答案
- · 求表带招钻孔师傅
- · 初中电学实验题及答案
- · 奔驰c630
- · 天正给排水8.0破解版
- · 控制电机课件
- · 大一建筑学课程下载
- · 0.25等于几分之几
- · 广告招贴设计作品欣赏
- 赞助商链接