DMX协议和RDM协议

1 DMX协议

1、 DMX512协议特点:

(1)采用RS-485总线收发器,差分电压进行传输的,抗干扰能力强,信号可以进行长距离传输;
(2)不论调光数据是否需要改变,主机都必须发送控制信号。
(3)由于数据帧之间的时间小于1s,所以在1s内没有收到新的数据帧,说明信号已经丢失;
(4)因为是数据是调光用的,使用环境是不做安全要求的设备, 并且是不间断传输的,所以不需要复杂的校验。

2、 波特率:250000

一个bit位 4us
8个位(Slot:x) 4*8=32us,x是从1到512

3、下面是一帧数据的顺序
break                    88us(范围是88μs——1ms)
MAB(Mark After Break) 8us 两个bit位的时间,高电平
start bit               4us 是低电平
Start Code(SC)        32us,8个位,是一段低电平,必须要有,串口表现中数据是0,接收时作头的一部分
stop            8us 两位结束,是高电平
MTBP    0-1s(MARK Time aftet slot),一包数据结束到下一包数据Break的时间,(有的控制台是每一个数据间隔的空闲时间,是高电平,可以不要。)

数据头完。

5、 一帧数据包括 start + Slotx: + stop + MTBP = 4+32+8+0=44us
MTBP 空闲时间TX都是高电平,数据停止位也是高电平。

2、RDM协议

2.1 DMX512和RDM异同
协议 DMX512 RDM
传输方向 单向 双向
Break 88-352(us) 176~352(us)
数据槽0值(起始码SC) 0×00 0×CC
数据长度 定长,513字节 不定长,最长257字节
2.2 RDM命令格式

RDM数据包第3到8个共6个字节是接收端ID信息(UID),从机通过UID判断是否接收数据。
UID 由2字节制造商ID和4字节设备ID(1~0x7FFF)组成。
第20个数据是命令类型(CC)。
第21和22个数据是参数类型(PID),从机通过CC和PID判断要做的事情。

下面是一帧数据的顺序

 BreakMAB(Mark After Break)start bitSC(Start Code)MTBP   一包数据结束到下一包数据Break的时间。数据:起始代码子起始代码消息长度目标UID(48位)源UID(48位)传输编号(TN)端口ID/回复类型队列消息计数子设备ID(16位)消息数据块(MDB)-|命令类型(CC)-|命令参数ID(PID)-|参数长度 (PDL)-|参数值(PD可有可无,最多231字节)校验码(16位)

RDM 数据帧构成

字节顺序号 描述 字节数
0 RDM识别码(SC) 1
1 RDM数据结构ID(Sub-Start Code) 1
2 数据帧长度 1
3 信息接收方ID(destination UID) 6
9 信息发送方ID(source UID) 6
15 发送序号(transaction Number) 1
16 发送端口号/应答类型(Port ID/Response Type) 1
17 数据包计数(message Count) 1
20 信息数据块MDB(message Data Block) 4~235
nnn 校验码(checksum) 2
 其中:RDM识别码固定为0xCCRDM数据结构ID为0x01数据帧长度,不包括最后2字节的检验码,最小值为24,最大为255。信息块由4个部分组成,最小4这季节,最大235字节  字节顺序号         描述20              -命令类型(CC)、21                -命令参数ID(PID)、23             -参数长度 (PDL)、24              -参数值(PD,最多231字节,参数长度为0时可无)
2.3 RDM信时间要求
2.3.1 RDM信号时段要求
Break MAB 相邻字节间
最小 176(μs) 12(μs) 0(μs)
最大 352(μs) 88(μs) 2ms(μs)

全帧数据最大值 [440+(n*44)+((n-1)*76)(μs)
其中,n是数据帧中需要传输的字节总数。

2.3.2 RDM控制设备端口相邻数据帧间隔时间
相邻数据帧类型 方向切换 最小间隔 最大间隔
查找命令帧——应答帧 176μs 2.8ms
查找命令帧——其它发送帧 5.8ms 1s
应答需求RDM命令帧——命令帧 176μs 2.8ms
应答帧——任意发送帧 176μs 1s
应答需求RDM命令帧——任意帧 3ms 1s
无应答需求广播帧 176μs 1s
无应答非需求RDM帧 176μs 1s
2.3.3 应答设备端口相邻数据帧间隔时间要求
相邻帧数据类型 方向切换需求 最小间隔 最大间隔
应答需求RDM命令帧——应答帧 176μs 2s
查找命令帧——应答帧 176μs 2s
2.4 RDM设备命令响应能力

RDM不要求设备响应所有命令集,但要求必须响应基本控制指令。
要求应答设备响应的指令

PID描述                   PID编号        备注
DISC_UNIQUE_BRANCH      0001        应答数据帧特殊定义
DISC_MUTE               0002
DISC_UN_MUTE            0003
SUPPORTED_PARAMETERS    0050        仅在响应本表以外的PID是用
parameter——DESCRIPTION  0051        仅在有自定义PID时用
DEVICE_INFO             0060
SOFTWARE_VERSION_LABLE  00C0
DMX_START_ADDRESS       00F0        在使用DMX512控制时使用
IDENTIFY_DEVICE         0100

参考资料

DMX协议和RDM协议相关推荐

  1. Bytom BIP-32协议和BIP-44协议解读

    我们知道HD(分层确定性)钱包,基于 BIP-32:多币种和多帐户钱包,基于 BIP-44:最近比原社区的钱包开发者对比原的BIP-32和BIP-44协议有疑问,所以我今天就专门整理了一下该协议的内容 ...

  2. 3.7 PPP协议和HDLC协议

    3.7 PPP协议和HDLC协议

  3. RabbitMQ MQTT协议和AMQP协议

    RabbitMQ MQTT协议和AMQP协议 1        序言... 1 1.1     RabbitMq结构... 1 1.2     RabbitMq消息接收... 4 1.3     Ex ...

  4. 计算机网络(二十)-广域网-PPP协议和HDLC协议

    一.广域网 广域网,通常跨接很大的物理范围,所覆盖的范围从几十公里到几千公里,它能连接多个城市或国家,远距离通信,形成国际性的远程网络. 广域网的通信子网主要使用分组交换技术.广域网的通信子网可以利用 ...

  5. fx5u mc协议_SLMP协议和MC协议

    一.概述 SLMP(Seamless Message Protocol)是在以太网中使用的协议.MC协议则包含了串口以及以太网的通信协议,范围更广. SLMP的3E帧或4E帧(3)的报文格式与MC协议 ...

  6. 485通讯协议_HART协议和RS485协议有什么区别?

    HART协议和RS485协议的区别如下: 1.概念不同 HART协议是采用基于Bell202标准的FSK频移键控信号,在低频的4-20mA模拟信号上叠加幅度为0.5mA的音频数字信号进行双向数字通讯: ...

  7. STM8单片机串口同时识别自定义协议和Modbus协议

      在单片机开发中,串口是最常用的和外界交换数据的渠道,要使用串口,那必不可少的就是通信协议,通信协议就是单片机和外界通信的语言,要想正常和其他设备正常交流,首先语言必须相通.   在实际开发过程中由 ...

  8. nginx websocket wss 连接失败 failed_浅谈WebSocket协议、WS协议和WSS协议原理及关系

    现如今,一些游戏,网站,APP,支付行业的网络经常会收到DDOS和CC,因此这个事情也变得不足为奇了.但在防护方案中有多种不同的方案.如,今天有几个同事在针对高防CDN问题讨论的时,谈到WebSock ...

  9. tcp协议和udp协议区别_TCP和UDP协议有什么区别?

    tcp协议和udp协议区别 TCP and UDP are two protocols that are part of the transport layer in a TCP/IP model o ...

  10. MODBUS ASCII协议和RTU协议的比较 -----和利时PLC采用Modbus RTU

    通过比较可以看到,ASCII协议和RTU协议相比拥有开始和结束标记,因此在进行程序处理时能更加方便,而且由于传输的都是可见的ASCII字符,所以进行调试时就更加的直观,另外它的LRC校验也比较容易.但 ...

最新文章

  1. JavaScript—— 前端编程语言
  2. Opencv实现透视形变
  3. 教你打包Java程序,jar转exe随处可跑
  4. 杜新会一个精彩占例之反推
  5. SPRING CLOUD服务网关之ZUUL
  6. [转]Velocity脚本摘要
  7. 使用Guava CharMatcher和Apache Commons Lang StringUtils确定字符串中字符或整数的存在
  8. sqlserver查看索引_SQL Server页中行物理存储
  9. 定时执行java程序_如何让Java程序定时运行
  10. oracle服务器支持ipmi带外管理,ipmi带外管理
  11. Windows 8 Directx 开发学习笔记(八)要有光
  12. 机器学习之数据转换(七)——降维
  13. 【Linux】最常用命令:简单易学,但能解决95%以上的问题
  14. 基于H5的移动端APP开发框架
  15. 创建一个基础WDM驱动,并使用MFC调用驱动
  16. 01.网络工程师常识
  17. 在Android上使用TensorFlow Lite结果和AI危害检测
  18. 大学计算机课程教学建议,计算机应用基础课程教学的建议
  19. prod和probor在matlab,智能控制讲义第六章Matlab在模糊控制中的应用.
  20. xpath中ends-with无法定位问题的解决办法

热门文章

  1. 信号课组(一) 信号与系统 Review 1 信号与系统综述
  2. redis客户端下载(windos版本)
  3. 今天来黑一黑Intel的傲腾
  4. adb重启是什么意思
  5. 第四届全国大学生GIS应用技能大赛开发题答案(非官方)
  6. python-微信自动发送信息
  7. 【数模】模糊综合评价模型
  8. 怎么在客户端远程计算机关闭,怎么样实现电脑远程控制开机或关机
  9. MySQL-JDBC
  10. 烽火狼烟丨PHP远程代码执行漏洞(CVE-2022-31625、CVE-2022-31626)风险提示