1大连科迪矩阵控制协议基本功能描述:控制器或计算机通过RS232接口发出指令,包括查询指令,切换指令,锁定解锁指令等等,矩阵的控制板在收到这些指令之后,将这些数据通过485总线转发给对应的视音频切换板〔或其他电路板〕,并将结果回传给发出指令的控制器或计算机。控制器或计算机发出切换指令之后,还要自动发出查询指令,以检验指令的执行情况是否正确。TCP/IP网络通讯协议与串口通讯协议相同。通讯协议字符定义:SOH:ASCII码“*”,起始标志字符EOT:ASCII码“#”结束标志字符ACK:ASCII码“06”正确应答字符NAK:ASCII码“0x15”错误应答字符‘N’代表矩阵所有层,’V’代表视频,’A’代表音频左声道,’B’代表音频右声道。默认速率为9600,N,8,1控制线连接方式为2、3交叉,5接5。测试推荐使用本公司随设备提供的控制电缆。注意:为方便串口调试,校验和用2个横线“――”代替。播出切换器的切换协议详见相关说明。控制器(计算机)与矩阵通讯协议1:查询指令SOH‘RD’‘N’〔V,A,B,D,S,Y〕‘0’‘0’CHECK-SUMEOT这里,‘RD’为查询指令的关键字,‘RD’后面的’N’代表查询矩阵所有层,该字符可能的替换字符为V,A,B,D,S,Y中的一个,其中,’V’表示模拟复合视频,’A’表示音频,’B’表示音频右声道,’D’表示SDI数字视频,’S’表示RS422控制层,’Y’表示YUV分量视频,如果是’V’则表示只查询视频,’A’表示只查询音频。‘0’‘0’代表输出口第一路,如果是第二路则为‘0’‘1’,‘0’‘A’是16进制的10代表第11路,‘0’‘F’代表第16路,依此类推。CHECK_SUM为校验和,关于校验和的算法见后面。――应答指令如下:(不同矩阵应答数据可能不同)SOH‘DR’‘U’〔L〕‘V’‘0’‘0’‘A’‘0’‘0’‘B’‘0’‘0’CHECK-SUMEOT‘DR’表示对‘RD’指令的应答,’U’表示该路未被锁定可以进行操作,’L’表示被锁定,不能进行切换。’V’代表视频,‘A’代表音频,‘B’代表音频右声道,下同。’V’后面的’0’‘0’表示被查询输出口的视频输入路数为第一路,同样,音频的左右声道输入都是第一路,如果是第二路则为‘0’‘1’,下同。如果出现错误,例如,视频板没有应答,则结果如下:SOH‘DR’‘U’〔L〕‘V’‘T’‘O’‘A’‘0’‘0’‘B’‘0’‘0’CHECK-SUMEOT‘T’‘O’是TIMEOVER即超时的意思,表示在规定的时间内没有收到应答信号,或者是板子不存在,或者是板子故障。如果音频板故障,则应答‘A’‘T’‘O’。22:切换指令SOH‘WR’‘N’〔V,A,B,D,S,Y〕‘x’‘0’‘0’‘y’‘0’‘0’CHECK-SUMEOT这里,‘WR’为切换指令的关键字,’x’(小写字母)表示目的即输出数,’y’(小写字母)表示源即输入路数,’x’‘0’‘0’‘y’‘0’‘0’表示把输入1切换至输出1,’x’‘0’‘F’‘y’‘0’‘F’表示把输入16切换至输出16。16X16以下矩阵一次最多只能发送2组切换数据,16X16以上矩阵最多可发送16组数据,不可超过此限制!――应答指令如下:ACK:数据正确接收。注意:作为播出切换器使用时,输出路数仅可操作1、2两路(当查询、切换路数大于2时,通讯无效);输出1相当于播出路(PGM),输出2相当于预监路(PST),播出路切换时应切换到预监路,因此,输出1切换时也应切换到输出2的输入路数,任意对输出1的切换操作,都与指令中的输入路数无关,必将切换到输出2的输入路数(相当于面板上的take键)。例如:1、设初始状态:输出1为输入4,输出2为输入6;2、先对输出2(PST)进行切换操作,指令为:SOH‘WR’‘N’‘x’‘0’‘1’‘y’‘0’‘2’CHECK-SUMEOT状态:输出1为输入4,输出2为输入3(输出2由输入6切换为输入3);3、间隔400ms时长,以等待同步稳定4、再对输出1(PGM)进行切换操作,指令为:SOH‘WR’‘N’‘x’‘0’‘0’‘y’‘0’‘5’CHECK-SUMEOT状态:输出1为输入3,输出2为输入4(切换路数与指令中的输入路数无关,只是相当于执行了面板上的take键功能,输出1由输入4切换到输出2的输入路数即输入3;输出2由输入3切换到输出1的输入路数即输入4)。以上指令可以通过串口调试助手发送以下指令进行测试:先发送指令*WRNx01y02--#间隔400ms后,再发送指令*WRNx00y05--#完成整个切换过程。注意1:由于矩阵型号的不同,上述的‘N’可能是’V’模拟复合视频,’A’音频,’D’表示SDI数字视频等。注意2:对于双路时基切换器,由于数字处理芯片需要一定的处理时间,所以在预监切换之后,对播出进行切换时一定要有400ms以上的时间间隔。注意3:一次切换超过16路,需要分两次切换。例如要切换18路,先发送*WRNx00y00x01y01x02y02x03y03x04y04x05y05x06y06x07y07x08y08x09y09x0Ay0Ax0By0Bx0Cy0Cx0Dy0Dx0Ey0Ex0Fy0F--#间隔500ms后,再发送指令*WRNx10y10x11y11--#每次切换之后,矩阵主机都会发出更新指令,通过该指令,用户可确认切换是否被正确执行。3刷新路数指令(此指令从主机发来)SOH‘*’‘V’‘A’‘D’‘-’‘0’‘1’‘0’‘2’CHECK-SUMEOT该命令对某个输出口的内容进行刷新。当矩阵状态被其他计算机或控制面板切换后,会向其他控制口发出数据刷新指令,表示当前状态已经发生改变。“*”代表刷新指令,‘V’‘A’‘D’代表对应的层数,‘-’表示相应的层无数据更新,‘0’‘1’代表输出数,‘0’‘2’代表输入数。多路刷新路数指令(新增)SOH‘+’‘V’‘A’‘B’‘-’‘-’‘-’‘-’‘-’‘U’〔L〕‘0’‘0’‘0’‘1’‘U’〔L〕‘0’‘1’‘0’‘2’……‘U’〔L〕‘0’‘F’‘1’‘2’CHECK-SUMEOT‘U’〔L〕后面的4位数字依次是2位输出数和2位输入数视矩阵型号和软件版本不同,更新指令为上述2者之一。3:锁定和解锁指令锁定:SOH‘LK’‘N’〔V,A,B,D,S,Y〕‘0’‘0’CHECK-SUMEOT:解锁:SOH‘UK’‘N’〔V,A,B,D,S,Y〕‘0’‘0’CHECK-SUMEOT:该命令对某个输出口进行锁定或解锁,控制板在收到该命令后,就在相应的路数上作个标记,表示该路数暂时不能被切换,即使其他控制器或计算机发出切换指令也不能执行,直到收到解锁命令为止。――应答指令如下:ACK:数据正确接收。NAK‘1’:数据接收校验错误。NAK‘2’:数据接收错误,无起始位。NAK‘3’:数据接收错误,无结束位或数据超长,超过128字节。4:读写IP地址指令(2005-12-13新增,TCP控制为选配件)写IP地址指令:*‘W’‘I’‘1’‘9’‘2’‘.’‘1’‘6’‘8’‘.’‘0’‘.’‘2’‘3’‘4’--#该命令修改矩阵的IP地址。‘W’‘I’代表指令关键字,192.168.0.234代表修改后的IP地址。读IP地址指令:*‘R’‘I’--EOT该命令读矩阵的IP地址。‘R’‘I’代表指令关键字。――应答指令如下:SOH‘IR’‘1’‘9’‘2’‘.’‘1’‘6’‘8’‘.’‘0’‘.’‘2’‘3’‘4’CHECK-SUMEOT‘IR’表示对‘RI’指令的应答,192.168.0.234代表矩阵的IP地址。网络连接握手指令:使用网口控制时,控制软件通过网口每隔20秒发送指令*?#,设备网口回复*@#以保持网络连接,若控制软件30秒内未给网口发送此指令,网络连接将自动断开。*产品出厂默认的IP地址为192.168.0.247,端口号为“22,23,24”端口号不可更改!!!!每次更改完IP地址后必须重新上电。4附录1切换指令实例为确保编程成功,请注意以下几点:1:确认串口号、波特率等设置正确。2:注意大小写,“x”和“y”都是小写。3:注意大于9的路数时10进制和16进制是不同的。4:切换之前请先使用RDN指令查询一下是否有锁定路数。5:时基切换器请仔细参考协议说明部分,另外请注意预监和播出之间的时间间隔要大于300mS。6:为方便调试,在升级的版本中可用2个“――”字符代替校验码,也可以“*”“#”分别代替起始字符和结束字符(见下面例子)。但早期软件版本必须计算正确校验码。调试时可先不计算校验码,如果无法切换再计算校验码。常见指令实例:(一)查询指令1:*RDN00--#;查询输出第1路状态2:*RDN0A--#;查询输出第10路状态(二)切换指令1:*WRNx00y00--#;切换输入1至输出1,视音频同时切换2:*WRVx01y01--#;切换输入2至输出2,只切换视频3:*WRNx01y0F--#;切换输入16至输出24:*WRNx02y03x03y04--#;连续切换输入3至输出2,输入4至输出35:*WRNx00y07x01y06x02y05x03y04x04y03x05y02x06y01x07y00--#连续切换8路输入输出6:连续切换16路信号*WRNx00y00x01y01x02y02x03y03x04y04x05y05x06y06x08y08x09y09x0Ay0Ax0By0Bx0Cy0Cx0Dy0Dx0Ey0Ex0Fy0Fx10y10--#7:需要连续发送超过16组指令时,需把指令分隔为16个1组,先发送*WRNx00y00x01y01x02y02x03y03x04y04x05y05x06y06x07y07x08y08x09y09x0Ay0Ax0By0Bx0Cy0Cx0Dy0Dx0Ey0Ex0Fy0F--#间隔500ms后,再发送指令*WRNx10y10x11y11--#5以下只针对早期产品(2008年以前),一般用户可忽略模拟矩阵切换示例(带校验码计算)WR:切换输出端口(DESTINATION)状态以将输出端口1切换到输入端口1为例:格式:SOH‘WR’‘N’‘x’‘0’‘0’‘y’‘0’‘0’CHECK-SUMEOTChecksum=“W”XOR“R”XOR“N”XOR“x”XOR“0”XOR“0”XOR“y”XOR“0”XOR“0”=0x4A〔16进制〕无校验时发送指令如下:*WRNx00y00--#WR:切换输出端口(DESTINATION)状态以将输出端口3切换到输入端口4为例:格式:SOH‘WR’‘N’‘x’‘0’‘2’‘y’‘0’‘3’CHECK-SUMEOTChecksum=“W”XOR“R”XOR“N”XOR“x”XOR“0”XOR“2”XOR“y”XOR“0”XOR“3”=0x4B〔16进制〕WR:切换输出端口(DESTINATION)状态将输出端口11切换到输入端口16为例:当路数大于9路时,采用16进制表示,如实际路数为11路时,软件中对应的数字为0A路;实际路数为16路时,软件中对应的数字为0F起始命令层输出数输入数校验字节结束SOHWRNx00y004AEOT0x010x570x520x4E0x780x300x300x790x300x300x340x410x04起始命令层输出数输入数校验字节结束SOHWRNx02y034BEOT0x010x570x520x4E0x780x300x320x790x300x330x340x420x04起始命令层输出数输入数校验字节结束SOHWRNx0Ay0F4DEOT0x010x570x520x4E0x780x300x410x790x300x460x340x440x046WR:切换输出端口(DESTINATION)状态单独将模拟视频输出端口11切换到输入端口16为例:数字矩阵切换示例WR:切换输出端口(DESTINATION)状态将输出端口1切换到输入端口1(切换数字视频层D):将输出端口11切换到输入端口