莆田AI系列单电路测控仪表通信协议说明
(V9 .)。x版本)
莆田V9。x以上单电路测量和人工智能控制仪表支持AIBUS和MODBUS两种通信协议。其中,AIBUS是厦门莆田自动化技术有限公司自主开发的通信协议,可以通过简单的指令执行综合功能。此功能可以在写入参数的同时完成读取功能,因此在创建参数时可以使用RS485通信接口,而不会破坏读取的周期时间。通用MODBUS协议具有更广泛的兼容性,V9。x或更高版本的MODBUS协议读取命令一次最多可以读取20个字符的数据,与我们以前的版本相比,通信效率大大提高。V9。x的下一代AI系列仪表在9600传输速率下,上层计算机为V9。访问x仪表的平均时间约为20毫秒,无论数据传输时间如何,在接收到父仪表后,最大延迟时间仅为10毫秒,平均延迟时间仅为2 ~ 3毫秒,比我们以前的版本快得多,易于部署大规模的流程控制系统。所有V9。x版本的新一代AI计允许父计算机的写入次数超过20亿次,以防止仪表内部内存因父计算机频繁写入而受损,并利用父计算机将仪表组成复杂的调节系统。AI系列仪表可以用PC、触摸屏和PLC作为上层计算机,市面上各种配置软件资源丰富。基于PC的父计算机软件广泛使用WINDOWS作为操作环境,不仅直观方便,还提供强大的功能。最新的工业平板触摸屏PC的应用为工业自动化提供了新的接口。这使得采用仪表上位机结构的测控系统的价格大大低于传统DCS系统,分布式结构也提供了较高的可靠性。除了一些新型号外,V9。x版本通信协议在提高性能和功能的同时,还提供了我们的V8。与x通信协议完全兼容,无需修改客户现有的父计算机软件即可直接使用。
一、接口规范
AI系列仪表使用异步串行通信接口,如RS232C或RS485标准中所述。数据格式包括1个起始位、8位数据、无奇偶位、1个或2个停止位。通信传输数据的传输速率可调节到4800到19200位/秒。通常使用9600位/秒。如果连接到单个端口的仪表数超过40个或需要更快的刷新率,也可以使用19200位/秒。如果通信距离较长或通信不稳定,则可以选择4800位/秒
RS485通信接口最多1公里以上的通信距离(一些实际应用程序达到3-4公里),允许多个AI米与计算机通信,只需要两行。普通计算机可以使用RS232/RS485或USB/RS485英寸通信接口转换器将计算机的RS232端口或USB端口转换为RS485端口。莆田RS232/RS485和USB/RS485转换器具有体积小、无需初始化即可适应所有软件的功能、不需要外部电源、防雷功能等优点。根据RS485接口,RS485通信接口最多可以将32台仪表或计算机连接到一条通信线路上。如果需要连接更多仪表,可以需要中继器,也可以选择使用芯片(如1/2或1/4负载)的通信接口,以增加可连接仪表的数量。目前生产的AI仪表通信接口使用低负载芯片和一定的雷电及防静电功能,无需中继器即可连接约60台仪表。
AI仪表的RS232和RS485通信接口使用光电隔离技术将通信接口与仪表的其他部分隔离开来。通信线路上的一个仪表损坏或故障时,不会影响其他仪表。同样,如果仪表的通信部分受损或主机故障,仪表也可以正常测量和控制,可以通过仪表键盘操作仪表,操作可靠性高。如果同一网络上的其他公司(如PLC、逆变器等)也有使用主从通信的产品,请注意,AIBUS协议不能保证其他公司产品正常工作。一般来说,不应将AI计和其他产品与RS485通信总线混淆。相反,必须使用不同的通信线路或使用MODBUS协议。
莆田V9。x版智能仪表使用AFC参数选择协议类型,如果AFC设置为0,请选择本指南中介绍的新MODBUS协议。设置为1:选择莆田AIBUS协议;设置为2:以前的V8。选择x版本测量仪使用的固定读取4位数据MODBUS协议。只能使用常客。某些新发布的型号系统(如AI-226系列)仅支持新版本的MODBUS协议,而不支持AIBUS和现有的MODBUS兼容协议。
二、AIBUS协议通信命令说明
本文档使用代表各种命令代码和数据的十六进制数据格式。AIBUS的通信指令有两个,一个是读指令,一个是写指令,指令的传输字节长度都是8字节,接收字节长度都是10字节,所以很容易编写上层计算机软件,但仍然可以对指令完成各种操作。指令必须连续发送。字节长度不匹配时,仪表没有响应。
仪表地址:AIBUS协议地址范围为0~80,一条通信线路最多可连接81个AI仪表,仪表的通信地址由Addr参数确定。仪表内部是两个重复的128~208(十六进制数为80H~D0H)之间的数值,表示地址代码。在AI仪表内,连续128~208的数量通常不会出现,因此数据和地址不会重复。根据AI米通信协议,地址指令是两个相同的字节,数值是(米地址80H)。例如:如果米参数Addr=10(十六进制数为0AH,0A 80H=8AH),则该米的地址指令为:
8AH 8AH
参数地址:仪器的参数用8位二进制(1字节)参数地址代码表示。指示要在说明中读取和写入的参数名称。各种参数含义如下表所示。
检查代码:检查代码使用16位总和检查方法。其中,读取命令的检查代码计算方法如下:
要读取的参数代码256 82H Addr
写命令的验证码计算方法是对以下公式进行16位二进制加法计算
的余数(溢出部分不处理):要写的参数代号×256+43H+要写的参数值+Addr
返回数据:无论是读还是写,仪表都返回10个字节数据,其中PV、SV及所读参数值均各占2个字节,代表一个16位二进制有符号补码整数,低位字节在前,高位字节在后,整数无法表示小数点,要求用户在上位机处理;MV占一个字节,按8位有符号二进制数格式,数值范围-110~+110,状态位占一个字节,校验码占2个字节,共10个字节。校验码为PV+SV+(报警状态*256+MV)+参数值+Addr按16位整数加法相加后得到的余数,溢出数忽略。
具体交互命令如下:
读参数指令:
地址代号 LSB | 地址代号 | 读功能命令 | 读参数代号 | LSB | MSB | 校验和 LSB | 校验和 MSB |
80H+ 仪表地址 | 80H+ 仪表地址 | 52H | 参见参数代号表 | 00H (固定值) | 00H (固定值) | 参见注1 |
注1:校验和=读参数代号*100H(256)+52H(82)+仪表地址
如读仪表地址1的上限报警值的命令如下:
地址代号 LSB | 地址代号 | 读功能命令 | 读参数代号 | LSB | MSB | 校验和 LSB | 校验和 MSB |
81H | 81H | 52H | 01H | 00H | 00H | 53H | 01H |
校验和=01H*100H+1+52H = 153H,因低字节(LSB)在前,高字节(MSB)在后, 故上表中为53H,01H。
写参数指令
地址代号 LSB | 地址代号 | 写功能命令 | 写参数代号 | 写入值 LSB | 写入值 MSB | 校验和 LSB | 校验和 MSB |
80H+ 仪表地址 | 80H+ 仪表地址 | 43H | 参见参数代号表 | 参见注1 | 参见注2 |
注1:需要写入到仪表中的数据,低字节在前,高字节在后。
注2:校验和=(写参数代号*100H(256)+43H(67)+仪表地址+写入值)&FFFFH 得到的余数
如写仪表地址1的给定值为100.0的命令如下:
地址代号 LSB | 地址代号 | 写功能命令 | 写参数代号 | 写入值 LSB | 写入值 MSB | 校验和 LSB | 校验和 MSB |
81H | 81H | 43H | 00H | E8H | 03H | 2CH | 04H |
校验和=00H*100H+1+1000+43H = 42CH(1068),因低字节(LSB)在前,高字节(MSB)在后, 故上表中为2CH,04H。
返回数据:无论是读命令还是写命令,仪表都返回10个字节的数据
测量值 LSB | 测量值 MSB | 设定值 LSB | 设定值 MSB | 输出值 MV | 状态字节 | 读或写的参数值LSB | 读或写的参数值MSB | 校验和 | 校验和 |
注1 | 注2 |
注1:测量值=(测量值MSB*256)+测值值LSB
设定值及读或写的参数值解析方法相同
注2、校验和=(测量值+设定值+状态字节*256+输出值MV+读或写的参数值+仪表地址)&FFFFH 得到的余数,当通信数据受干扰时,采集时可将返回值中的校验和与计算的校验和比对,两者相同则数据则数据正常,反之有可能因干扰导致异常。
假设仪表地址1的表上此时测量值显示100.0,设定值显示0.0,无报警发生,无输出,读或写设定值为0.0返回的命令如下:
测量值 LSB | 测量值 MSB | 设定值 LSB | 设定值 MSB | 输出值 MV | 状态字节 | 读或写的参数值LSB | 读或写的参数值MSB | 校验和 | 校验和 |
E8H | 03H | 00H | 00H | 00H | 60H | 00H | 00H | E9H | 63H |
状态字节表示仪表报警和报警继电器状态,其含义如下(位7固定为0):
状态字节 | 含义 |
位0 | 上限报警(HIAL) |
位1 | 下限报警(LoAL) |
位2 | 正偏差报警(dHAL) |
位3 | 负偏差报警(dLAL) |
位4 | 输入超量程报警(orAL) |
位5 | AL1状态,0为动作 |
位6 | AL2状态,0为动作 |
三、MODBUS通信协议指令说明
AI系列仪表能支持MODBUS协议下支持03H(读参数及数据)及06H(写单个参数)两条指令。可与其它MODBUS设备相互通信,为保证速率,AI仪表采用RTU(二进制)模式,波特率应设置为9600bit/S,8个数据位,2个停止位,无奇偶校验位,仪表地址范围1~80。
对于03H指令,每次可读取1~20个数据,每个数据2个字节,例如读2个数据指令如下:
仪表地址 | 读指令(功能码) | 读取参数代号地址 | 读取数据长度 | 校验码 |
XXH | 03H | 00H XXH | 00H 02H | CRC |
06H写指令格式为,举例写SV值为100.0(参数dPt=1),则发送的指令为:
仪表地址 | 写指令(功能码) | 写参数代号地址 | 写数据值 | 校验码 |
XXH | 06H | 00H 00H | 03H E8H | CRC |
仪表返回数据格式遵守标准MODBUS协议,通常客户的组态软件都能自行处理。注意写指令不支持返回测量值等信息,只返回本身写入的参数值。由于MODBUS协议的本身的限制,使用写指令无法返回测量值等信息,会导致写入时测量值无法刷新。需要连续写参数时,应采取写一次再交替读一次的方法,避免连续写入时测量值等信息无法及时刷新。此外若程序中存在BUG导致通信写指令若被误调用,可能导致错误的参数写入仪表,因此程序中应尽量减少写指令的使用,以免使得仪表工作不正常。
3、若需要更高效率的读取大量数据,可以使用本公司的Modbus-AIBUS的通信中继控制及协议转换器,或使用自带CPU的S6增强型通信模块,详细信息可参阅相关产品使用手册。
四、参数代号地址及含义(AIBUS和MODBUS协议相同)
AI系列单回路人工智能控制仪表可读/写的参数代号表,不同型号参数数量及功能不同,请按实际购买仪表的说明书参数对应代号表。
参数代号 | 参数名称 | 说明 |
00H | SP1给定值 | 单位同测量值 |
01H | HIAL上限报警 | 单位同测量值 |
02H | LoAL下限报警 | 单位同测量值 |
03H | HdAL正偏差报警 | 单位同测量值 |
04H | LdAL负偏差报警 | 单位同测量值 |
05H | AHYS报警回差 | 单位同测量值 |
06H | CtrL控制方式 | 0,ONOF;1,APID;2,nPID;3,PoP;4,SoP;5,MAnS |
07H | P比例带 | 单位同测量值 |
08H | I 积分时间 | 秒 |
09H | d 微分时间 | 0.1秒 |
0AH | CtI控制周期 | 0.1秒 |
0BH | InP输入规格 | 见使用说明书 |
0CH | dPt小数点位置 | 0,0;1,0.0;2,0.00;3,0.000;如读入的以上数据+128,则表示所有测量值及与测量值使用相同单位的参数(无论是温度或线性信号),均需要除10后4舍5入后再进行显示处理。例如,dPt数值为128+1=129,读入的测量值或相关参数值16位整数值为1000,则实际显示应为10.0,若dPt数值为1,则实际显示的数据为100.0;该参数亦可以写入,但写入时不得加128,写数据范围是0~3。 |
0DH | SCL刻度下限值 | 单位同测量值 |
0EH | SCH刻度上限值 | 单位同测量值 |
0FH | AOP报警输出选择 | 含义见说明书 |
10H | Scb测量平移修正 | 单位同测量值 |
11H | OPt主输出方式 | 0,SSR;1,rELy;2,0-20;3,4-20;4,PHA1;5,nFEd;6,FEd;7,FEAt |
12H | OPL输出下限 | % |
13H | OPH输出上限 | % |
14H | AF功能选择 | 含义见说明书 |
15H | 仪表型号特征字 | 5180(AI-518)或5187(AI-518P)具体见说明6 |
16H | Addr 通讯地址 | 0-80 |
17H | FILt数字滤波 | 0-40 |
18H** | A-M手动/自动选择 | 0,MAN;1,Auto;2,FMAn;3,FAut |
19H | Loc参数封锁 | 含义见说明书 |
1AH** | MV手动输出值 | % |
1BH | Srun 运行/停止选择 | 0,run;1,StoP;2,HoLd |
1CH | CHYS 控制回差 | 单位同测量值 |
1DH | At 自整定选择 | 0,OFF;1,on;2,FoFF;3,AAt |
1EH | SPL 给定值下限 | 单位同测量值 |
1FH | SPH 给定值上限 | 单位同测量值 |
20H | Fru单位及电源频率 | 0,50C;1,50F;2,60C;3,60F |
21H | OEF OPH有效范围 | 单位同测量值 |
22H | Act 正/反作用 | 0,rE;1,dr;2,rEbA;3,drbA |
23H | AdIS 报警选择 | 0,OFF;1,on |
24H | Aut 冷输出规格 | 0,SSR;1,rELy;2,0-20;3,4-20 |
25H | P2 冷输出比例带 | 单位同测量值 |
26H | I2 冷输出积分时间 | 秒 |
27H | d2 冷输出微分时间 | 0.1秒 |
28H | CtI2 冷输出周期 | 0.1秒 |
29H | Et 事件输入类型 | 0,nonE;1,ruSt;2,SP1.2;3,PId2;4,Eact;5,EMan,6,Erun |
2AH*** | SPr 升温速率限制 | 测量值单位/(分钟)(需等同测量值进行单位处理) |
2BH* | Pno 程序段数 | 整数0-30或0-50 |
2CH* | PonP 上电选择 | 0,Cont;1,StoP;2,run1;3,dASt;4,HoLd |
2DH* | PAF 程序参数 | 功能见说明书 |
2EH* | STEP 程序段号 | 整数 |
2FH* | 已运行时间 | 0.1分或0.1小时,由PAF参数决定 |
30H* | 事件输出状态 | 0,无事件输出;1,事件1(AL1)动作;2,AL2动作;3,AL1及AL2动作 |
31H** | OPrt软启动时间 | 定义通电后输出从0%到100%的时间 |
32H** | Strt阀门转动时间 | 定义阀门转动需要的时间 |
33H** | SPSL外给定下限 | 当外给定输入口用于测量阀门反馈信号时,设定阀门定位值1 |
34H** | SPSH外给定上限 | 当外给定输入口用于测量阀门反馈信号时,设定阀门定位值2 |
35H** | Ero故障输出值 | 定义传感器输入故障或超量程时,仪表的输出值 |
36H** | AF2 | 功能参数2,功能见说明书 |
37H | nonc | AU1/AU2/AL1/AL2等报警输出常开常闭选择 |
38~3FH | 备用 | |
40~47H | 备用 | 注:AIBUS为EP1~EP8;新MODBUS协议可依据大客户定制 |
48H** | 阀门位置(只读) | 数值0~25600对应0~100%,读取数除以256为百分比数 |
49H | 备用 | 部分型号仪表为第二路测量值 |
4AH | 测量值(PV) | 数据为2字节整数,小数点位置由dPt参数确定,只读 |
4BH | 给定值(SV) | 实际给定值,外给定,只读 |
4CH | 输出值(MV)+报警状态 | 数值0~25600对应0~100%,读取数除以256方为百分比数 |
4DH | 输出端口状态+工作状态 | BIT0~1:代表运行/停止/暂停状态;BIT2:1代表自整定启动;BIT3;1代表手动状态;BIT4~7,备用;BIT8~12分别代表输出端口状态:OP1/OP2/AU1/AU2/MIO,0代表动作,1代表不动作;BIT13~15,备用 |
4EH | 备用 | 部分型号为读取仪表内部热点偶冷端补偿测量温度(只读) |
4FH | 备用 | |
50~51H | SP 1、t 1 | SP1为给定值1,t1为首段程序值 |
52H~XX | SP2 ~XX 程序段数据,数量由Pno参数定义 |
说明:
1、本系统采用主从式多机通讯结构,每向仪表发一个指令,仪表返回一个数据。编写上位机软件时,注意每条有效指令仪表应在0~10mS内作出应答(注:不包括数据传输时间,此时间要依据不同波特率和数据长度计算),而上位机也必须等仪表返回数据后,才能发新的指令,否则将引起错误。如果仪表超过最大响应时间仍没有应答,则原因可能无效指令、无效的仪表地址或参数地址、通讯线路故障,仪表没有开机,通讯地址不合等,此时上位机应重发指令或跳过改地址仪表。
2、为提升效率,仪表传送的所有数值均为16位二进制补码整数,例如,仪表的给定值为100.0℃传送的数据为整数1000。上位机必须将整数按一定规则转换为带小数点的实际数据,方法是在上位机程序启动后,应优先读取参数dPt(0CH)获得测量信号的小数点位置。注意:如果dPt的数值大于或等于128,则表示所传输的测量值,以及与测量值相同单位的参数应该除以10后进行显示,当对下位机写这类参数值时,则应将显示的数取消小数点成为整数,再乘以10,按16位二进制补码下传数据。
3、如果向仪表读参数代号在表格中以外的参数(无效参数代号或备用参数代号),则仪表返回的参数值为32767,由于AI系列仪表参数最大设置范围是32000,所以32767可以作为读错参数代号的标志,在上位机程序中予以处理;若读取参数代号大于有效程序段的最后一个数值(0B4H),则下位机视同传输出错,不回应。此外部分型号仪表只具备表格中部分参数,例如带一个*星号的参数仅为AI-516P/526P/719P等型号可用,若对AI-516/526/719读写则视为无效参数代号,带**的参数是AI-719等仪表方可使用,各种仪表可读写参数随新型号推出及版本升级将有所改变,客户若有需要可向本公司技术部咨询。
4、如果向仪表写参数代号在表格以外的参数,或者该型号仪表无此参数,仪表并不会报错,而是忽略不会执行写入,并且返回参数值32767,若写入值超仪表内部数值范围,例如设置输出值超过系统允许的输出上限值,则仪表会写入上限值,同时将上限值返回。
5、带手动调节功能的仪表处于手动状态时,可通过写1AH参数来调节手动输出值。
6、15H为仪表的型号特征字,不同型号仪表其数字不同,上位机可用于区分仪表型号,并针对不同型号仪表上位机应对其传输数据可做不同模式处理。仪表型号及特征字表格如下:
仪表型号 | 型号特征字 |
AI-226智能温控器 | 2260 |
AI-226P程序型智能温控器 | 2267 |
AI-228 加热制冷温控器 | 2280 |
AI-500单回路通用型测量仪表 | 5010 |
AI-501单回路通用型测量仪表 | 5010 |
AI-516智能温控器 | 5160 |
AI-516P程序型智能温控器 | 5167 |
AI-526智能温控器 | 5260 |
AI-526P程序型智能温控器 | 5267 |
AI-518智能温控器 | 5180 |
AI-518P程序型智能温控器 | 5187 |
AI-519智能温控器 | 5190 |
AI-580智能阀位控制器 | 5800 |
AI-700单回路通用型测量仪表 | 7010 |
AI-701单回路通用型测量仪表 | 7010 |
AI-716高精度智能温控器 | 7160 |
AI-716P高精度程序型智能温控器 | 7167 |
AI-708高精度智能温控器 | 7080 |
AI-708P高精度程序型智能温控器 | 7087 |
AI-719高精度智能温控器/调节器 | 7190 |
AI-719P高精度程序型智能温控器/调节器 | 7197 |
厦门宇电自动化科技有限公司版权所有
2022年3月
1.《【电源50c是什么意思】莆田AI系列单电路测控仪表通信协议说明V9。x版本》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。
2.《【电源50c是什么意思】莆田AI系列单电路测控仪表通信协议说明V9。x版本》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。
3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/why/3045412.html