ASI通讯协议——ASI2x1

简介: <p><strong>通讯协议——<span style="font-family:Times New Roman">ASI2x1</span></strong></p> <p><strong>基本功能描述</strong></p> <p><span style="font-size:14px">计算机或控制器通过以太网口或者<span style="font-family:Times

通讯协议——ASI2x1

基本功能描述

计算机或控制器通过以太网口或者RS232接口发出指令,包括查询指令,切换指令等,主机箱中的控制板在收到这些指令之后,将这些数据通过485总线转发给对应的主板,并将结果回传给发出指令的计算机或控制器。控制器或计算机发出切换指令后,等待主机箱中的控制板发出刷新指令,以改变显示。主机箱中,控制板以一定时间为间隔不断查询主板的状态,并发出刷新指令将查得的信息更新给计算机或控制器。

通过网络控制时,网管软件必须每隔在30秒内向切换器发出如下字符:   

     *?#    (其中*#分别是起始字符和结束字符)

网络模块应答 *@#

切换器端如果在30秒内没有收到此握手字符或者其他有效字符(任何按照协议规定的切换或查询指令),将断开TCP网络连接,控制软件必须重新建立网络连接

 

通讯协议

字符定义:SOH ASCII码“*”,起始标志字符

EOT ASCII码“#”,结束标志字符

ACK ASCII码“0x06”,正确应答字符

NAK ASCII码“0x15”,错误应答字符

默认速率为 9600N81

以下协议中蓝色部分为关键字,棕褐色部分为变量;带单引号‘’的是ASCII码。

注意区分大小写字母SOH之后的3个字母一般为大写字母。

 

 

1:状态查询指令

    (1) 主板状态查询指令

SOH  ‘R’‘D’  ‘Z’‘0’  CHECKSUM  EOT

该指令的作用是查询指定的某一块主板的状态。

这里,‘RD’为查询指令的关键字。

‘Z’ 后面一位十六进制数表示要查询的板号。因每个机箱最多可插入8块切换板,该数为0~7之间的数。

CHECK_SUM为校验和,现为预留。可用‘--’代替。下同。

――应答指令如下:

SOH ‘D’‘R’ ‘Z’‘0’‘S’ ‘0’ ‘0’ CHECKSUM  EOT

‘DR’表示对 ‘RD’指令的应答。

‘Z’后面一位十六进制数表示要查询的板号。

‘S’后面两位十六进制数(8个比特位)。其中,

   比特0(最低位)表示手动或自动:1——表示手动,0——表示自动;

比特1表示当前输出路数:0——代表主路,1——代表备路;

比特2表示主路信号状态:1——表示有,0——表示无;

比特3表示备路信号状态:1——表示有,0——表示无;

比特4表示主路同步错误:1——表示有同步错误,0——表示无同步错误;

比特5表示备路同步错误:1——表示有同步错误,0——表示无同步错误;

       比特6表示主路PID丢失:1——表示有PID丢失,0——表示无PID丢失;

              比特7表示备路PID丢失:1——表示有PID丢失,0——表示无PID丢失。

如果出现错误,例如,电路板没有应答,则应答结果如下:

SOH  ‘D’ ‘R’ ‘Z’‘0’‘T’ ‘O’  CHECKSUM  EOT

‘T’ ‘O’ TIME OVER即超时的意思,表示在规定的时间内没有收到应答信号,或者是板子不存在,或者是板子故障。

     (2) PID状态查询指令

SOH  ‘R’‘Q’  ‘Z’‘0’  CHECKSUM  EOT

该指令的作用是查询指定的某一块主板的某一路TS流里某一个PID的状态。

这里,‘RQ’为查询指令的关键字。

 ‘Z’ 后面一位十六进制数(4个比特位)。其中,

3(比特0~2)表示要查询的板号;

最高位(比特3)表示主路或备路:0——代表主路,1——代表备路。

――应答指令如下:

SOH ‘Q‘R’ ‘Z’‘0’ ‘S’ ‘0’ ‘0’ ‘W’ ‘0’ ‘0’ ……CHECKSUM  EOT

‘Z’ 后面一位十六进制数(4个比特位)。其中,

3(比特0~2)表示要查询的板号;

最高位(比特3)表示主路或备路:0——代表主路,1——代表备路。

        ‘S’后面两位十六进制数表示所检测的PID数量;

        ‘W’后面的十六进制数表示对应PID状态有无。

                第一个数代表第一到第四个检测PID的状态,

                            4 比特数据:

                                   比特0 表示第一个PID状态 :0—表示无此PID1---表示有此PID

                                   比特1 表示第二个PID状态 :0—表示无此PID1---表示有此PID

                                   比特2 表示第三个PID状态 :0—表示无此PID1---表示有此PID

                                   比特3 表示第四个PID状态 :0—表示无此PID1---表示有此PID

                     第二个数代表第五个到第八个PID状态同样低位为先;以此类推。

如果出现错误,例如,电路板没有应答,则应答结果如下:

SOH  ‘Q’ ‘R’ ‘Z’‘0’‘T’ ‘O’  CHECKSUM  EOT

‘T’ ‘O’ TIME OVER即超时的意思,表示在规定的时间内没有收到应答信号,或者是板子不存在,或者是板子故障。

 

2PID列表查询指令

SOH  ‘R’ ‘P’  ‘Z’‘0’  CHECKSUM  EOT

该指令的作用是查询指定通道TS流里PID的列表。

这里,‘RP’PID列表查询指令的关键字。

‘Z’ 后面一位十六进制数(4个比特位)。其中,

3(比特0~2)表示要查询的板号;

最高位(比特3)表示主路或备路:0——代表主路,1——代表备路。

――应答指令如下:

SOH  ‘P’ ‘R’‘Z’‘0’  ‘nn’ y××××y××××y××××…… CHECKSUM  EOT

‘PR’表示对 ‘RP’指令的应答。

‘Z’ 后面一位十六进制数(4个比特位)。其中,

3(比特0~2)表示要查询的板号;

最高位(比特3)表示主路或备路:0——代表主路,1——代表备路。

‘nn’ 是两位十六进制数,8比特数据:

 比特0至比特5 6比特二进数字代表PID数量范围0-63

  比特 7 代表后面所开始的PID的序号,00 代表其后为第一个PID

                                                                        01代表其后为第17PID

10代表其后为第33PID

11代表其后为第49PID

                     每条指令最多传输16PID值。

y’后面的××××是四个十六进制数,表示PID的值,低13位有效,高位为先。

序号依次加一。

如果出现错误,例如,电路板没有应答,则应答结果如下:

SOH  ‘P’ ‘R’ ‘Z’‘0’‘T’ ‘O’  CHECKSUM  EOT

‘T’ ‘O’ TIME OVER即超时的意思,表示在规定的时间内没有收到应答信号,或者是板子不存在,或者是板子故障。

注:该指令得到的是自上次清空指令之后,码流之中存在过的所有PID列表,未必是实时结果,如果想得到即时结果,请与清空指令组合使用。

 

3:所设置PID列表查询指令

SOH  ‘R’ ‘O’  ‘Z’‘0’  CHECKSUM  EOT

该指令的作用是查询指定通道TS流里PID的列表。

这里,‘RO’PID列表查询指令的关键字。

‘Z’ 后面一位十六进制数(4个比特位)。其中,

3(比特0~2)表示要查询的板号;

最高位(比特3)表示主路或备路:0——代表主路,1——代表备路。

――应答指令如下:

SOH  ‘O’ ‘R’‘Z’‘0’  ‘nn’ y××××y××××y××××…… CHECKSUM  EOT

‘OR’表示对 ‘RO’指令的应答。

‘Z’ 后面一位十六进制数(4个比特位)。其中,

3(比特0~2)表示要查询的板号;

最高位(比特3)表示主路或备路:0——代表主路,1——代表备路。

‘nn’ 是两位以ASCII码表示的十六进制数,8比特数据:

 比特0至比特5 组成6比特二进数字代表PID数量范围0-63

  比特 7 代表后面所开始的PID的序号:

00代表其后为第一个PID

                   01代表其后为第17PID

10代表其后为第33PID

11代表其后为第49PID

                     每条指令最多传输16PID值。

××××是四个十六进制数,表示PID的值,低13位有效,高位为先。

‘y’为分割每个PID的标识字符。

如果出现错误,例如,电路板没有应答,则应答结果如下:

SOH  ‘O’ ‘R’ ‘Z’‘0’‘T’ ‘O’  CHECKSUM  EOT

‘T’ ‘O’ TIME OVER即超时的意思,表示在规定的时间内没有收到应答信号,或者是板子不存在,或者是板子故障。

 

4:查询自动切换设置指令

a. 查询自动切换使能指令

SOH  ‘R’ ‘Y’ Z’ ‘0’ ‘y’ CHECKSUM  EOT

该指令的作用是查询某一块主板是否允许靠信号有无、同步错误、PID丢失自动切换。

――应答指令如下:

SOH  ‘Y’ ‘R’ Z’ ‘0’ ‘y’ ‘0’ CHECKSUM  EOT

‘Z’ 后面一位十六进制数表示要查询的板号。

‘y’后面一位十六进制数 4比特数字:注:y为小写字母。

         比特0表示是否允许靠信号有无自动切换:1 表示允许,0表示不允许

                     比特1表示是否允许靠同步错误自动切换:1 表示允许,0表示不允许

         比特2表示是否允许靠PID丢失自动切换:1 表示允许,0表示不允许

           最高位(比特3)保留。

b. 查询自动切换时间指令

SOH  ‘R ‘Y’ Z’ ‘0’ ‘t’ CHECKSUM  EOT

该指令的作用是查询某一块主板出现错误切换时间。注:t为小写字母。

――应答指令如下:

SOH  ‘Y’ ‘R’ Z’ ‘0’ ‘t’ ‘0’ ‘0’ CHECKSUM  EOT

‘Z’ 后面一位十六进制数表示要查询的板号。

‘t’后面两位十六进制数表示出现错误切换时间,范围1-200,单位秒。

c. 查询单独pid使能指令

SOH  ‘R’ ‘Y’ Z’ ‘0’ ‘q’CHECKSUM  EOT

该指令的作用是查询某一块主板所检测的PID是否依靠对应PID切换。

――应答指令如下:

SOH  ‘Y’ ‘R’ Z’ ‘0’ ‘q’ ‘0’ ‘0’‘p’ ‘0’ ‘0’ ……CHECKSUM  EOT

‘Z’ 后面一位十六进制数表示要查询的板号。

‘q’后面两位十六进制数表示所检测的PID数量。注:p,q为小写字母。

‘p’后面的十六进制数表示是否依靠对应PID切换:

          第一个数代表第一到第四个检测的PID的状态,

                     4 比特数据:

                           比特0 表示是否靠第一个PID切换:1 表示允许,0表示不允许;

                            比特1 表示是否靠第二个PID切换:1 表示允许,0表示不允许;

                            比特2表示是否靠第三个PID切换:1 表示允许,0表示不允许;

                            比特3 表示是否靠第四个PID切换:1 表示允许,0表示不允许。

                     第二个数代表第五个到第八个PID设置状态同样低位为先;以此类推。

           事实上,‘q’后面两位十六进制数表示的PID数量(a)与‘p’后面ASCII码的数量(b)具有如下关系:当a>0,b=(a-1)/4+1;当a=0,b=0

如果出现错误,例如,电路板没有应答,则以上三条指令的应答结果都如下:

SOH  ‘Y’ ‘R’ ‘Z’‘0’‘T’ ‘O’  CHECKSUM  EOT

‘T’ ‘O’ TIME OVER即超时的意思,表示在规定的时间内没有收到应答信号,者是板子不存在,或者是板子故障。

 

5:自动切换设置指令

a.自动切换使能指令

SOH  ‘W’ ‘Y’ Z’ ‘0’ ‘y’ ‘0’ CHECKSUM  EOT

该指令的作用是设置某一块主板是否允许靠信号有无、同步错误、PID丢失自动切换。

‘Z’ 后面一位十六进制数表示要查询的板号。

‘y’后面一位十六进制数 4比特数字:(注:y为小写字母。)

         比特0表示是否允许靠信号有无自动切换:1 表示允许,0表示不允许;

                     比特1表示是否允许靠同步错误自动切换:1 表示允许,0表示不允许;

         比特2表示是否允许靠PID丢失自动切换:1 表示允许,0表示不允许;

     最高位(比特3)保留。

b.自动切换时间指令

SOH  ‘W’ ‘Y’ Z’ ‘0’ ‘t’ ‘0’ ‘0’ CHECKSUM  EOT

该指令作用是设置某一块主板出现错误切换时间。

‘Z’后面一位十六进制数表示要查询的板号。

‘t’后面两位十六进制数表示出现错误切换时间,范围1-200,单位秒。注:t为小写。

c.自动切换pid使能指令

SOH  ‘W’ ‘Y’Z’ ‘0’‘q’ ‘0’ ‘0’ ‘p ‘0’ ‘0’…… CHECKSUM  EOT

该指令作用是自动切换某一块主板所检测的PID是否依靠对应PID切换。

‘Z’后面一位十六进制数表示要查询的板号。

‘q’后面两位十六进制数表示所检测的PID数量;

p后面的十六进制数表示是否依靠对应PID切换;

       第一个数代表第一到第四个检测的PID的状态。注:p、q为小写字母。

       4 比特数据:

                    比特0 表示是否靠第一个PID切换:1 表示允许,0表示不允许;

                     比特1 表示是否靠第二个PID切换:1 表示允许,0表示不允许;

                     比特2表示是否靠第三个PID切换:1 表示允许,0表示不允许;

                     比特3 表示是否靠第四个PID切换:1 表示允许,0表示不允许。

              第二个数代表第五个到第八个PID设置状态同样低位为先;以此类推。      

――所有切换指令应答指令如下:

ACK :数据正确接收。

NAK ‘1’:数据接收校验错误。

NAK ‘2’:数据接收错误,无起始位。

NAK ‘3’:数据接收错误,无结束位或数据超长,超过128字节。

 

6PID列表清空指令

SOH  ‘W’ ‘P’  ‘Z’‘0’  CHECKSUM  EOT

该指令用来清空PID列表,重新搜索。

 ‘Z’ 后面一位十六进制数(4个比特位)。其中,

3(比特0~2)表示要处理的板号;

最高位(比特3)表示主路或备路:0——代表主路,1——代表备路。

――PID列表清空指令应答指令如下:

ACK :数据正确接收。

NAK ‘1’:数据接收校验错误。

NAK ‘2’:数据接收错误,无起始位。

NAK ‘3’:数据接收错误,无结束位或数据超长,超过128字节。

 

7:切换指令

SOH  ‘W’ ‘R’ Z’ ‘0’ ‘y’ ‘0’  CHECKSUM  EOT

该指令用来切换自动或手动和主路或备路。

这里,‘WR’为切换指令的关键字。

‘Z’后面一位十六进制数表示要查询的板号。

‘Z’后面为‘X’(大写)时,表示切换所有8块板。

‘y’后面一位十六进制数 4比特数字,(注:y为小写字母。)

         比特0表示自动或手动切换:1 表示手动,0表示自动;

            比特1表示主路或备路切换:0 表示主路,1表示备路。

――所有切换指令应答指令如下:

ACK :数据正确接收。

NAK ‘1’:数据接收校验错误。

NAK ‘2’:数据接收错误,无起始位。

NAK ‘3’:数据接收错误,无结束位或数据超长,超过128字节。

 

8:连续设置PID指令

SOH ‘W’‘O’ ‘Z’‘0’ ‘nn’ y××××y××××y××××…… CHECKSUM  EOT

该指令的作用是向指定主板的指定通道里依次写PID

这里,‘WO’为写PID指令的关键字,其它字符的含义同PID列表查询指令。

‘Z’后面一位十六进制数表示要查询的板号。

nn’ 是两位十六进制数,8比特数据:

         比特0至比特5 组成6比特二进制数字代表PID数量范围0-63;此数量值是多少其后就应该严格的有多少个‘y’,否则指令将不被识别。

     比特 7 代表后面所开始的PID的序号,00 代表其后为第1PID

                                                                         01代表其后为第17PID

10代表其后为第33PID

11代表其后为第49PID

总共最多可设置63PID值,每条指令最多可设置16PID值。

‘y’后面四位十六进制数表示对PID修改的结果;16比特数字中,低13位有效(数据范围0-1FFFH)。(注:y为小写字母。)

――应答指令如下:

ACK :数据正确接收。

NAK ‘1’:数据接收校验错误。

NAK ‘2’:数据接收错误,无起始位。

NAK ‘3’:数据接收错误,无结束位或数据超长,超过128字节。

 

9:单独设置PID指令

SOH ‘W’‘S’ ‘Z’‘0’ ‘n’ ‘x’‘××’‘y’‘××××’  ‘x’‘××’‘y’‘××××……CHECKSUM  EOT

该指令的作用是设置指定主板的指定通道里的指定PID

这里,‘WS’为设置PID指令的关键字。

‘Z’后面一位十六进制数表示要查询的板号。

‘n’为一位16进制数据表示此指令修改多少个(1~8)PID,单指令最多修改8PID值。‘n’的值为多少就应该严格的有多少对‘xy’,否则指令将不被识别。

‘x’后面两位十六进制数表示对第几个PID进行修改;范围1-63

‘y’后面四位十六进制数表示对PID修改的结果,16比特数字中低13位有效高位为先。

注意:‘x’后面为’00’时,‘y’后面四位十六进制数代表所检测PID数量(此时只有低两位十六进制数字有效,范围0-63。为0时表示不检测PID)。(注:x,y为小写字母。)

――应答指令如下:

ACK :数据正确接收。

NAK ‘1’:数据接收校验错误。

NAK ‘2’:数据接收错误,无起始位。

NAK ‘3’:数据接收错误,无结束位或数据超长,超过128字节。

 

10:状态刷新指令(此指令从主机发来)

SOH ‘+’  ‘Z’‘0’‘S’ ‘0’ ‘0’ CHECKSUM  EOT

该指令的作用是对某个状态变化的内容进行刷新。当主板状态发生改变时,控制板会自动发出状态刷新指令。

这里,‘+’是刷新指令关键字。‘Z’ 后面一位十六进制数表示要对应的板号。

 ‘S’后面两位十六进制数(8个比特位)。其中,

   比特0(最低位)表示手动或自动:1——表示手动,0——表示自动;

比特1表示当前输出路数:0——代表主路,1——代表备路;

比特2表示主路信号状态:1——表示有,0——表示无;

比特3表示备路信号状态:1——表示有,0——表示无;

比特4表示主路同步错误:1——表示有同步错误,0——表示无同步错误;

比特5表示备路同步错误:1——表示有同步错误,0——表示无同步错误;

       比特6表示主路PID丢失:1——表示有PID丢失,0——表示无PID丢失;

              比特7表示备路PID丢失:1——表示有PID丢失,0——表示无PID丢失。

如果出现错误,例如,电路板没有应答,则刷新内容如下:

SOH  ‘+’ ‘Z’‘0’‘T’ ‘O’  CHECKSUM  EOT

‘T’ ‘O’ TIME OVER即超时的意思,表示在规定的时间内没有收到应答信号,或者是板子不存在,或者是板子故障。

 

11:读写IP地址指令

   IP地址指令:

SOH  ‘W’ ‘I’‘1’ ‘9’ ‘2’ ‘.’ ‘1’ ‘6’ ‘8’ ‘.’ ‘0’ ‘.’ ‘2’ ‘3’ ‘4’ CHECKSUM  EOT  

该指令的作用是修改主机的IP地址。

这里,‘W’ ‘I’代表指令关键字,192.168.0.234代表修改后的IP地址。

IP地址指令:

SOH  ‘R’ ‘I’ CHECKSUM  EOT  

该指令的作用是读取主机的IP地址。

这里,‘R’ ‘I’代表指令关键字。

――应答指令如下:

SOH  ‘IR’ ‘1’ ‘9’ ‘2’ ‘.’ ‘1’ ‘6’ ‘8’ ‘.’ ‘0’ ‘.’ ‘2’ ‘3’ ‘4’  CHECKSUM  EOT

‘IR’表示对 ‘RI’指令的应答,192.168.0.234代表矩阵的IP地址。

 

 

1当操作指令与该协议中的不一致时,将不被系统识别,系统回复:SOH  ‘?’  EOT  

2产品出厂默认的IP地址为 192.168.0.247,端口号为“222324”。

端口号不可更改!每次更改完IP地址后必须重新上电!!!

[]

相关实践学习
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。 &nbsp; &nbsp; 相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
运维 监控 安全
【网络安全】护网系列-社工&溯源
【网络安全】护网系列-社工&溯源
1310 0
|
8月前
|
人工智能 自动驾驶 数据安全/隐私保护
《人工智能新质生产力:GDP增长的未来引擎,究竟能贡献多少?》
在科技飞速发展的时代,人工智能作为新质生产力的代表,正以前所未有的态势推动全球经济格局变革。据普华永道预测,到2030年AI将带动全球GDP增长14%,相当于15.7万亿美元。在中国,过去三年AI核心产业增速显著,2023年规模达5784亿元,预计2030年超过1万亿元,带动相关产业超10万亿元。AI通过产业升级、消费升级、投资和出口等方面大幅提升生产效率,创造新的经济增长点,尽管存在技术和社会政策的不确定性,但其对GDP的贡献率有望持续提升,为全球经济带来新机遇。
551 5
《人工智能新质生产力:GDP增长的未来引擎,究竟能贡献多少?》
|
API
出现连接超时错误的原因
出现连接超时错误的原因
900 2
IEC104初学者教程,第四章:IEC 104 开发环境搭建
搭建IEC104开发环境涉及两款模拟器:[主站模拟器](https://www.redisant.cn/iec104client) 和 [从站模拟器](https://www.redisant.cn/iec104server)。从站模拟器中,创建连接后添加从站,配置信息对象;主站模拟器同样新建连接并开启,向从站发送总召唤以获取数据。每个步骤配有图示指导操作。
873 14
IEC104初学者教程,第四章:IEC 104 开发环境搭建
|
11月前
|
机器学习/深度学习 人工智能 自然语言处理
人工智能的未来:从机器学习到深度学习的演进
【10月更文挑战第8天】人工智能的未来:从机器学习到深度学习的演进
189 0
|
缓存
IEC61850 调试工具 工程师必备
IEC 61850 是国际电工委员会(IEC)制定的一项国际标准,主要用于电力系统自动化领域,特别是变电站自动化系统。IEC 61850 是电力系统自动化领域的一项重要标准,通过标准化的通信协议和数据模型,显著提升了变电站及其相关系统的互操作性和灵活性。
247 0
IEC61850 调试工具 工程师必备
|
Linux 开发工具 C语言
【研究Qt webengine 模块编译】linux 交叉编译qt5.12的webengine模块成功的条件
【研究Qt webengine 模块编译】linux 交叉编译qt5.12的webengine模块成功的条件
1898 1
|
存储 Linux Android开发
RK3568 Android/Linux 系统动态更换 U-Boot/Kernel Logo
RK3568 Android/Linux 系统动态更换 U-Boot/Kernel Logo
2247 0
|
Linux
linux系统中使用QT实现CAN通信的方法
linux系统中使用QT实现CAN通信的方法
1442 0
|
存储 运维 供应链
能源路由器入门必读:面向能源互联网的架构和功能
能源路由器入门必读:面向能源互联网的架构和功能
2130 0
能源路由器入门必读:面向能源互联网的架构和功能