您好!欢迎访问厦门宇电自动化科技有限公司网站!
全国服务咨询热线:

18030056903

当前位置:首页 > 新闻中心 > 宇电仪表AIBUS通讯协议说明(V7.0)

宇电仪表AIBUS通讯协议说明(V7.0)

更新时间:2016-03-04      点击次数:8062

AIBUS通讯协议说明(V7.0)

 

AIBUS是厦门宇电自动化科技有限公司为AI系列显示控制仪表开发的通讯协议,能用简单的指令实现强大的功能,并提供比其它常用协议(如MODBUS)更快的速率(相同波特率下快3-10倍),适合组建较大规模系统。AIBUS采用了16位的求和校正码,通讯可靠,支持4800、9600、19200等多种波特率,在19200波特率下,上位机访问一台AI-7/8系列高性能仪表的平均时间仅20mS,访问AI-5系列仪表的平均时间为50mS。仪表允许在一个RS485通讯接口上连接多达80台仪表(为保证通讯可靠,仪表数量大于60台时需要加一个RS485中继器)。AI系列仪表可以用PC、触摸屏及PLC作为上位机,其软件资源丰富,发展速度极快。基与PC的上位机软件广泛采用WINDOWS作为操作环境,不仅操作直观方便,而且功能强大。的工业平板触摸屏式PC的应用,更为工业自动化带来新的界面。这使得AIDCS系统价格大大低于传统DCS系统,而性能及可靠性也具备比传统DCS系统更优越的潜力,V7.X版本AI-7/8系列仪表允许连续写参数,写给定值或输出值,可利用上位机将仪表组成复杂调节系统。

一、接口规格

AI系列仪表使用异步串行通讯接口,接口电平符合RS232C或RS485标准中的规定。数据格式为1个起始位,8位数据,无校验位,1个或2个停止位。通讯传输数据的波特率可调为4800~19200 bit/S,通常用9600 bit/S,单一通讯口所连接仪表数量大于40台或需要更快刷新率时,推荐用19200bit/S,当通讯距离很长或通讯不可靠常中断时,可选4800bit/S。AI仪表采用多机通讯协议,采用RS485通讯接口,则可将1~80台的仪表同时连接在一个通讯接口上。

RS485通讯接口通讯距离长达1KM以上(部分实际应用已达3-4KM),只需两根线就能使多台AI仪表与计算机进行通讯,优于RS232通讯接口。为使用普通个人计算机PC能作上位机,可使用RS232/RS485或USB/RS485型通讯接口转换器,将计算机上的RS232通讯口或USB口转为RS485通讯口。宇电为此专门开发了新型RS232/RS485及USB/RS485转换器,具备体积小、无需初始化而可适应任何软件、无需外接电源、有一定抗雷击能力等优点。

按RS485接口的规定,RS485通讯接口可在一条通讯线路上连接zui多32台仪表或计算机。需要联接更多的仪表时,需要中继器,也可选择采用75LBC184或MAX487等芯片的通讯接口。目前生产的AI仪表通讯接口模块通常采用75LBC184,这种芯片具备一定的防雷击和防静电功能,且无需中继器即可连接约60台仪表。

AI仪表的RS232及RS485通讯接口采用光电隔离技术将通讯接口与仪表的其他部分线路隔离,当通讯线路上的某台仪表损坏或故障时,并不会对其它仪表产生影响。同样当仪表的通讯部分损坏或主机发生故障时,仪表仍能正常进行测量及控制,并可通过仪表键盘对仪表进行操作,工作可靠性很高。16位校验码的正确性是简单奇偶校验的30000倍,基本能保证数据可靠性。并且同一网络上有其他公司也采用主从方式通讯的产品时,如PLC、变频器等,多数情况下AI系列仪表都不会受其它公司产品通讯干扰,不会产生采集数据混乱或无法通讯的问题。但是AI仪表协议并不能保证其它公司产品能否正常工作,所以除非万不得已,不应将AI仪表与其它产品混在一个RS485通讯总线上,而应分别使用不同的总线。

二、通讯指令

AI仪表采用16进制数据格式来表示各种指令代码及数据。AI仪表软件通讯指令经过优化设计,标准的通讯指令只有两条,一条为读指令,一条为写指令,两条指令使得上位机软件编写容易,不过却能*完整地对仪表进行操作;标准读和写指令分别如下:

读: 地址代号+52H(82)+要读的参数代号+0+0+校验码

写: 地址代号+43H(67)+要写的参数代号+写入数低字节+写入数高字节+校验码

地址代号:为了在一个通讯接口上连接多台AI仪表,需要给每台AI仪表编一个互不相同的通讯地址。有效的地址为0~80(部分型号为0~100),所以一条通讯线路上zui多可连接81台AI仪表,仪表的通讯地址由参数Addr决定。仪表内部采用两个重复的128~208(16进制为80H~D0H)之间数值来表示地址代号,由于大于128的数较少用到(如ASC方式的协议通常只用0-127之间的数),因此可降低因数据与地址重复造成冲突的可能性。

AI仪表通讯协议规定,地址代号为两个相同的字节,数值为(仪表地址+80H)。例如:仪表参数Addr=10(16进制数为0AH,0A+80H=8AH),则该仪表的地址代号为:8AH  8AH

参数代号:仪表的参数用1个8位二进制数(一个字节,写为16进制数)的参数代号来表示。它在指令中表示要读/写的参数名。

校验码:校验码采用16位求和校验方式,其中读指令的校验码计算方法为:

要读参数的代号×256+82+ADDR

写指令的校验码计算方法为以下公式做16位二进制加法计算得出的余数(溢出部分不处理):

要写的参数代号×256+67+要写的参数值+ADDR

公式中ADDR为仪表地址参数值,范围是0~80(注意不要加上80H)。校验码为以上公式做二进制16位整数加法后得到的余数,余数为2个字节,其低字节在前,高字节在后。要写的参数值用16位二进制整数表示。

返回数据:无论是读还是写,仪表都返回以下10个字节数据:

测量值PV+给定值SV+输出值MV及报警状态+所读/写参数值+校验码

其中PV、SV及所读参数值均各占2个字节,代表一个16位二进制有符号补码整数,低位字节在前,高位字节在后,整数无法表示小数点,要求用户在上位机处理;MV占一个字节,按8位有符号二进制数格式,数值范围-110~+110,状态位占一个字节,校验码占2个字节,共10个字节。

 

不同型号仪表返回各数据含义如下:

仪表型号

调节器

温控器

AI-708M巡检仪

AI-708H/808H

流量通道

AI-808H

温度/压力通道

AI-301M频率调节器/IO模块

PV

测量值PV

测量值

瞬时流量测量值

 

温度测量值,单位为0.1℃

测量值PV

SV

当前给定值SV

通道号

(1-6)

累积流量低位

或批量控制测量值

压力测量值,单位为0.001MPa

当前给定值SV

MV

输出值MV

状态字节B

状态字节B

累积流量高位

或批量控制给定值

补偿前流量或频率值,单位0.1Hz

调节输出值MV

状态字节

状态字节A

状态字节A

状态字节A

参数值

表示要读或写的参数的值

 

返回校验码:PV+SV+(报警状态*256+MV)+参数值+ADDR按整数加法相加后得到的余数。计算校验码时,每2个8位字节组成1个16位二进制整数进行加法运算,溢出数忽略,余数作为校验码。

状态字节A表示仪表部分状态,其含义如下(位7固定为0):

 

调节器及单显表(V7.0)

AI-702M/704M/706M

调节器、温控器及单显表(V7.5)

位0

上限报警(HIAL)

上限报警(HIAL)

HIAL

位1

下限报警(LoAL)

下限报警(LoAL)

LoAL

位2

正偏差报警(dHAL)

0

HdAL

位3

负偏差报警(dLAL)

0

LdAL

位4

输入超量程报警(orAL)

超量程报警(orAL)

orAL

位5

AL1状态,0为动作

0

备用(0)

位6

AL2状态,0为动作

0

0表示MV为输出值,1为状态字B

 

巡检仪具备状态字节B,对于V7.5版本以上调节器、温控仪、单显表,MV则可交替代表MV值及状态字节B(由状态字节A的位6决定)。状态字节B的位0~6分别表示OP1、OP2、AL1、AL2、AU1、AU2及MIO口的输入状态,0表示为未接通或未输出,1表示外部开关接通或有输出,OUTP或AUX做调节输出时则对应位固定为0。利用功能可将对应端口作为上位机开关量的输出或输出,应用ALP参数设置没有用到的报警端口均可作为I/O端口,利用修改NONC(常开/常闭)参数即可实现对开关量的输出,作为开关量输入时,应将nonc对应位设置为常开,若读入信号为1,则表示外部开关闭合或有信号输入。

 

AI仪表可读/写的参数代号表:

表一

参数代号

调节器

巡检仪

10进制

16进制

AI-518/708/808/518P/708P/808P

AI-519/719/719P

AI-501/701

AI-702M/704M/706M

0

00H

 SV给定值/SteP程序段

 SV给定值/SteP程序段

 (空)

 (空)

1

01H

 HIAL上限报警

 HIAL上限报警

 HIAL上限报警

 HIAL上限报警

2

02H

 LoAL下限报警

 LoAL下限报警

 LoAL下限报警

 LoAL下限报警

3

03H

 dHAL正偏差报警

 HdAL偏差上限报警

 HdAL第二上限报警

 (空)

4

04H

dLAL负偏差报警

LdAL偏差下限报警

 LdAL第二下限报警

 (空)

5

05H

 dF回差

 CHYS控制回差

 AHYS报警回差

 dF回差

6

06H

 Ctrl控制方式

 Ctrl控制方式

 (空)

 (空)

7

07H

 M5保持参数

 P比例带

 (空)

 (空)

8

08H

 P 速率参数

 I积分时间

 (空)

 (空)

9

09H

 t滞后时间

 d微分时间

 (空)

 (空)

10

0AH

 CtI控制周期

 CtI控制周期

 (空)

 Cn测量路数

11

0BH

 Sn输入规格

 InP输入规格

 InP输入规格

 Sn 输入规格

12

0CH

 dIP小数点位置

 dPt小数点位置

 dPt小数点位置

 dIP小数点位置

13

0DH

 dIL输入下限显示值

 SCL信号刻度下限

 SCL信号刻度下限

 dIL输入信号刻度下限

14

0EH

 dIH输入上限显示值

 SCH信号刻度上限

 SCH信号刻度上限

 dIH输入信号刻度上

15

0FH

 ALP报警输出定义

 AOP报警输出定义

 AOP报警输出定义

 ALP报警输入定义

16

10H

 Sc输入平移修正

 Scb输入平移修正

 Scb输入平移修正

 Sc输入平移修正

17

11H

 OP1输出方式

 OPt主输出类型

 OPt主输出类型

 OPn变送输出通道号

18

12H

 oPL输出下限

 OPL输出下限

 (空)

 oPL变送输出电流下限

19

13H

 oPH输出上限

 OPH输出上限

 (空)

 oPH变送输出电流上限

20

14H

 CF功能选择

 AF功能代码

 (空)

 AF功能代码

21

15H

 仪表特征码/程序控制字(运行:0 暂停:4 停止:12)

 仪表特征码/程序控制字(运行:0 暂停:4 停止:12)

 仪表特征码(与SV的值一样,且可修改)

 仪表特征码

22

16H

 仪表地址(读/写

 仪表地址(读/写

 仪表地址(读/写

 仪表地址(读/写

23

17H

 dL数字滤波

 FILt输入数字滤波

 FILt输入数字滤波

 dL数字滤波

24

18H

 run运行参数

 A-M自动/手动控制选择

 (空)

 nonc常开/常闭选择

25

19H

 Loc参数封锁

 Loc参数封锁

 Loc参数封锁

 Loc参数封锁

26

1AH

 C01

(AI-808写入时设置MV值)

 C01(AI-519/719写入时设置MV值)

 

 

27

1BH

 t01 

 t01 

 

 

28

1CH

 C02

 C02

 

 

29

1DH

 t02

 t02

 

 

30

1EH

 C03

 C03

 

 

31

1FH

 t03

 t03

 

 

32

20H

 C04

 C04

 

 

33

21H

 t04

 t04

 

 

34

22H

 C05

 C05

 

 

35

23H

 t05

 t05

 

 

36

24H

 C06

 C06

 

 

37

25H

 t06

 t06

 

 

38

26H

 C07

 C07

 

 

39

27H

 t07

 t07

 

 

40

28H

 C08

 C08

 

 

41

29H

 t08

 t08

 

 

42

2AH

 C09

 C09

 

 

43-85

2BH-55H

 t09-C30程序数据

 t09-C30程序数据

 

 

86

56H

 当前程序段运行时间

 当前程序段运行时间

 

 

 

表二

参数代号

流量积算仪

AI-301M

四路PID调节器

10进制

16进制

AI-708H/Y/808H)

频率测量/开关量

AI-7048

0

00H

 SV批量控制给定值

 SV频率控制给定值

 SP给定值

1

01H

 FHIA瞬时流量上限报警

 HIAL上限报警

 HIAL上限报警

2

02H

 FloA瞬时流量下限报警

 LoAL下限报警

 LoAL下限报警

3

03H

 SPE批量控制流量累积速率时间

 dHAL正偏差报警

 

4

04H

 Act批量控制继电器动作时间

 dLAL负偏差报警

 

5

05H

 Sn输入规格

 dF回差

 AHYS回差

6

06H

 FSc流量信号测量平移修正

 CtrL控制方式

 At自整定开关

7

07H

 PdIH压力测量量程定义

 M5保持参数

 P比例带

8

08H

 CSc温度测量平移修正

 P速率参数

 I积分时间

9

09H

 CdIH温度测量量程定义

 t滞后时间

 d微分时间

10

0AH

 Cut流量小信号切除比率

 CtI控制周期

 

11

0BH

 FdIH流量测量量程定义

 Frd频率量程

 InP输入规格

12

0CH

 FdIP流量小数点

 dIP小数点位置

 dPt小数点位置

13

0DH

 PA大气压力/温度补偿系数

 dIL下限显示值

 SCL信号刻度下限

14

0EH

 Po流量传感器设计工作压力

 dIH上限显示值

 SCH信号刻度上限

15

0FH

 Co流量传感器设计工作温度

 ALP报警输出选择

 AOP报警输出定义

16

10H

 Frd频率信号上限

 开关量状态

 Scb输入平移修正

17

11H

 CF功能选择参数

 oP1输出方式

 

18

12H

 bC温压补偿类型

 OPL输出下限

 

19

13H

 IoL变送输出电流下限

 OPH输出上限

 OPH输出上限

20

14H

 FoH变送输出流量量程

 CF功能选择

 AF功能代码

21

15H

 仪表特征码

 仪表特征码

 仪表特征码

22

16H

 仪表地址(读/写)

 仪表地址(读/写)

 仪表地址(读/写

23

17H

 IoH变送输出电流上限

 dL数字滤波

 FILt输入数字滤波

24

18H

 FdL流量信号数字滤波强度

 run运行参数

 Nonc常开/常闭选择

25

19H

 Loc参数封锁

 Loc参数封锁

 Loc参数封锁

26

1AH

 (空)

 MV手动输出值

 Cn测量路数

27

1BH

 FdF瞬时流量报警回差

 

 

28

1CH

 CHIA温度上限报警

 

 

29

1DH

 CLoA温度下限报警

 

 

30

1EH

 PHIA压力上限报警

 

 

31

1FH

 PLoA压力下限报警

 

 

32

20H

 ALP报警输出定义

 

 

33

21H

 FSb批量控制给定值偏移

 

 

34

22H

 CdIP温度小数点

 

 

35

23H

 PdIP压力小数点

 

 

36

24H

 PSc压力测量信号平移修正

 

 

37

25H

 CLn清零次数(只读)

 

 

38

26H

 FLJH累积流量高4位(只可清零)

 

 

39

27H

 FLJL累积流量低4位(只可清零)

 

 

40

28H

 EJH(补前流量高)

 

 

41

29H

 EJL(补前流量低)

 

 

42

2AH

 批量累积值清零位

 

 

43-85

2BH-55H

 

 

 

86

56H

 

 

 

 

说明:

1、如果向仪表读取参数代号在表格中参数以外,则仪表不会返回任何数据。AI-501/701型仪表不具备表格中所有参数,当读写实际参数表以外的参数或备用参数时,仪表实际均对SP1参数操作。

2、带手动调节功能的仪表处于手动状态时,可通过写1AH参数来调节手动输出值。

3、AI-7048型4路控制器占4个地址,比如Addr=5,则5,6,7,8分别为4个回路的通讯地址。

4、程序控制字:对于AI-518P/708P/808P等型号程序仪表,15H返回程序控制字,其高位字节数值为0,低位字节数据则如下:

 (X)(X)(X)(X)(EV2)(EV1)(HOLD)(STOP)

前4位(BIT)目前暂不用,程序中应允许其为任意值;HOLD及STOP=0,则程序运 STOP=0,HOLD=1,则程序暂停;S,HOLD=1,则程序停止;EV1、EV2表示事件输出状态,为1时表示事件输出动作,为0时表示事件输出无效。

5、累积流量清零:AI-708H/808H的流量累积参数FLJH及FLJL只能清零,不能改写,清零方法是向FLJH写入30808(占2个地址时,必须是用*个地址),即可清零累积流量FLJH、FLJL及补偿前流量累积EJH及EJL,同时CLn值加1,CLn为只读,不可改写。向参数代号2AH写入31808,则可清除批量控制累积值,同时复位批量控制输出继电器。

三、编程方法

系统采用主从式多机通讯结构,每向仪表发一个指令,仪表返回一个数据。编写上位机软件时,注意每条有效指令仪表应在0~150mS内作出应答,而上位机也必须等仪表返回数据后,才能发新的指令,否则将引起错误。如果仪表超过zui大响应时间(150mS)仍没有应答,则原因可能无效指令、通讯线路故障,仪表没有开机,通讯地址不合等,此时上位机应重发指令或跳过改地址仪表。例如,将地址(参数ADDR)为1的仪表的给定值(参数代号0)写为100.0℃(整数为1000),用VB的编程方法如下:

1、初始化通讯口,包括与仪表相同的波特率,数据位8,停止位2,无校验。注意某些厂家的RS232/RS485通讯转换器对RTS、DTR等控制线有一定的要求,上位机软件必须对这些控制线进型编程。用本公司生产的RS232/RS485转换器则可免去对这些线进行编程。

2、VB编程指令(写SV为1000)为:

Dim Cmdout (0 To 7) As Byte

 

  Cmdout(0)=129

  Cmdout(1)=129

  Cmdout(2)=67

  Cmdout(3)=0

  Cmdout(4)=232

  Cmdout(5)=3

  Cmdout(6)=44

  Cmdout(7)=4

COMM1.OUTPUT=Cmdout

 

仪表返回数据:

Dim instring() as byte

  Dim pv as integer, sv as integer, mv as integer, alm as integer, cs as integer, crc as integer

 

  instring = MSComm1.Input    '假设已经有数据返回

 

  pv= Join2Byte(instring(0), instring(1))

  sv= Join2Byte(instring(2), instring(3))

  mv= (instring(4))

alm= integer(instring(5))

cs= Join2Byte(instring(6), instring(7))

crc= Join2Byte(instring(8), instring(9))

 

Public Function Join2Byte(lowbyte As Byte, highbyte As Byte)

Dim c As Integer

c = highbyte

If c > 127 Then

  c = (c - 256) * 256

Else

  c = c * 256

End If

Join2Byte = c + lowbyte

End Function

 

 

注:对于AI-5XX系列仪表,写入参数周期不易低于2分钟,否则可能导致仪表在5年保修期内损坏存储单元损坏。

 

厦门宇电自动化科技有限公司
地址:福建省厦门市火炬高新区火炬北路17号宇电科技大厦
邮箱:2484289854@qq.com
传真:86-0592-5651630转115
关注我们
欢迎您关注我们的微信公众号了解更多信息:
欢迎您关注我们的微信公众号
了解更多信息