科讯网

您现在的位置是:首页 > 品牌专题 > CRESTRON

CRESTRON

后台-插件-广告管理-手机广告位-内容正文顶部468X60

Prodigy产品深化编程培训教程

2021-02-24 04:06:17CRESTRON
Prodigy 主机与第三方设备集成 Prodigy 主机与 crestron 主机数据交换 您可以双击网络通讯设备槽(PMC3ENET-1),然后滚动列表添加设备。 从滚动列表中添加“Ethernet intersystem communications”
SIMPL Windows  
Prodigy 产品深化编程培训教程  
1 页 共 24 页  
SIMPL Windows  
2 页 共 24 页  
SIMPL Windows  
Prodigy 主机与第三方设备集成  
Prodigy 主机与 crestron 主机数据交换  
您可以双击网络通讯设备槽(PMC3ENET-1),然后滚动列表添加设备。  
从滚动列表中添加Ethernet intersystem communications”  
设置 Ethernet intersystem communications IP 地址:192.168.1.200,此 IP CRESTRON 主机网络地址。  
同理在 CRESTRON 主机中添加“Ethernet intersystem communications”  
以上都设置完成后,在程序中实现数据映如图:dig-01 dig-02 PMC3 主机给控制命令到 MC3 主机,dig-i3  
dig-i4 PMC3 主机接收到 MC3 主机命令。  
3 页 共 24 页  
 
 
SIMPL Windows  
MC3 主机接收控制命令,并且通过此命令去执行相应动作。MC3 主机也可以发送控制命令给 PMC3 主机。  
4 页 共 24 页  
SIMPL Windows  
PMC3/MC3 主机动态域名设置  
首先在 IE 输入 http://192.168.1.200/setup/,此 IP MC3 主机的 ip 地址。弹出下图  
点击“setup”进入设置界面  
5 页 共 24 页  
 
SIMPL Windows  
6 页 共 24 页  
SIMPL Windows  
地暖温控器控制  
地暖温控器通讯协议  
波特率:9600  
数据位:8  
停止位:1  
校验位:none  
通讯格式:  
COMMAND + ID0 + ID1 + Data0 + Data1 + Data2 + Data3 + CheckSum  
COMMAND 定义:  
读取:PC 读取温控器资料  
写入:PC 设定温控器数据  
COMMAND 为指令操作码,size: 8 Bit ,有如下指令:  
PC->温控器发命令  
[0XA0] --> PC 读取温控器全部数据  
[0XA1] --> PC 设定温控器部分数据  
[0XA2] --> :设定传感器类型  
[0XA3] --> :设定阀门控制选择  
[0XA4] --> :设定开关机  
[0XA5] --> :设定面板锁定  
[0XA6] --> :设定低温保护相关 设定高温保护相关  
[0XA7] --> :设定启动温差  
[0XA8] --> :设定补偿温度  
7 页 共 24 页  
 
SIMPL Windows  
[0XA9] --> :设定设置温度  
[0XAA] --> :设定时钟  
CheckSum 定义:  
CheckSum 为操作码、ID0ID1 及 操作数之数值求和后逻辑与 0XFF 后逻辑异或 0XA5 之数值,size: 8  
Bits  
CheckSum = (COMMAND + ID0 + ID1 + Data0 + Data1 + Data2 + Data3) & 0xFF ^ 0xA5  
ID0 , ID1 定义:  
ID0,ID1 为温控器地址标示,范围十六进制数值表示从 0X0000 ~ 0XFFFF 其中:  
ID0 ID1=> 0X0000 为广播地址,是指所有的温控器,但不应答  
ID0 ID1=> 0X0001-0XFFFF 为用户地址,ID0:地址低位 ID1:地址高位  
温控器地址可以通过温控器面板手动设置后解析控制协议制协议解析完成后们可以通过串口调试助  
手先进行测试。  
温控器地址 00 01  
读取全部数据  
\xA0\x01\x00\x00\x00\x00\x00\x04  
解析数据内容:  
1.开关机状态 Data0 bit4  
2.负载状态 Data1 bit2  
3.设置温度 Data3  
4.室内温度 Data6  
5.外置温度 Data7  
开机控制  
\xA4\x01\x00\x10\x00\x00\x00\x10  
关机控制  
\xA4\x01\x00\x00\x00\x00\x00\x00  
设定设置温度  
22 : \xA9\x01\x00\x00\x00\x00\x16\x65  
23 : \xA9\x01\x00\x00\x00\x00\x17\x64  
24 : \xA9\x01\x00\x00\x00\x00\x18\x67  
25 : \xA9\x01\x00\x00\x00\x00\x19\x66  
26 : \xA9\x01\x00\x00\x00\x00\x1A\x61  
27 : \xA9\x01\x00\x00\x00\x00\x1B\x60  
28 : \xA9\x01\x00\x00\x00\x00\x1C\x63  
29 : \xA9\x01\x00\x00\x00\x00\x1D\x62  
30 : \xA9\x01\x00\x00\x00\x00\x1E\x6D  
31 : \xA9\x01\x00\x00\x00\x00\x1F\x6C  
32 : \xA9\x01\x00\x00\x00\x00\x20\x6F  
33 : \xA9\x01\x00\x00\x00\x00\x21\x6E  
34 : \xA9\x01\x00\x00\x00\x00\x22\x69  
35 : \xA9\x01\x00\x00\x00\x00\x23\x68  
串口调试助手测试图解  
8 页 共 24 页  
SIMPL Windows  
以上控制内容,通过串口调试助手测试完成后方可写入主机控制程序中,首先我们对主机串口端口 COM2 进行  
设置,如图  
双击 COM2:PMC3 Two-way ,弹出对话框,根据温控器协议通讯波特率,数据位,停止位,校验位等设置  
设置完成后,点击确定,然后进入设备编程界面,在 Program View 选中 COM-02 并双击,在 Detail View 填写发  
送接收的变量名称  
9 页 共 24 页  
SIMPL Windows  
接着从最左边这栏“Symbol Library”拖取相应函数功能块到“Logic”进行编程,如图  
函数 Serial I/O 分别有几个参数:串量发送<tx$> 串量接收<rx$> <enable> 输入<i1> <iN>  
10 页 共 24 页  
SIMPL Windows  
如上图,当<enable>1 时,其中<i1> <iN>只要有个变量产生上升沿,就会将变量对应的字符串通过<tx$>  
发送出去。数据发送都有对应的数据返回,返回数据字符串通过<rx$>接收。  
温控器开关控制程序,用 interlock 实现开关机状态反馈互锁  
Floor_heating_open 为上升沿时,温控器开状态被锁定 Floor_heating_open_fb 值为 1,同时开机命令码  
\xA4\x01\x00\x10\x00\x00\x00\x10由串口 COM2 发送出去,执行开机动作,关机命令同开机。  
温控器温度设定程序,需要以下几个函数组合实现:  
首先通过 Analog Increment 函数实现温度的加减控制,需要设置的参数如图,其中把最低温度设定在了 22 度,  
最高温度设定在了 35 度,增减幅度为 1 度,起始默认值为 26 度。  
模拟量 Floor_heating_setup_temp 输出到函数 Analog Equate ,此函数功能是当输入的模拟量值与所填写的 Value  
值相同时,对应的输出数字量输出值变为高电平,如 Floor_heating_setup_temp=23d, Floor_heating_temp23_in 的  
值持续为 1,直到 Floor_heating_setup_temp 值发生变化。  
11 页 共 24 页  
SIMPL Windows  
Multiple One Shots 函数将持续为高电平输入的<in>值,变成脉冲信号输出的变量,脉冲持续的时间由 pulse_time  
设定  
为什么要将这个输出的值转化成上升沿信号,因为需要这个变量去触发 Serial I/O,此函数的输入值需要用上升沿  
来触发。这个变量同时触发 2 Serial I/O,一个是将温度设定代码发送到设备,另一个是用作设定温度显示。  
12 页 共 24 页  
SIMPL Windows  
温控器室内温度,开关机状态的读取程序,因为无论是开关机控制,还是温度设定,当控制代码发送下去时,都  
会有一串数据代码返回些代码并不是我们需要的数据此我们需要把控制命令返回码和读取命令返回码区  
分开,所以在此需要用到 Oscillator 可以持续产生交替信号,用来查询 RS-232 设备状态信息。如图  
每隔 1 read_data_out 产生一个上升沿信号是此信号暂时触发不了读取命令代码够触发的条件是 NOR  
函数输入值都为低电平时,输出 get_high 才会由 0 1,通过 get_high 值来触发 Delay 函数,从而使输出值  
get_high_out 产生上升沿,时间参数由 delay1 设定  
13 页 共 24 页  
SIMPL Windows  
此时 read_data_out 把信号传递到 read_data,就把读取命令代码发送出去。  
14 页 共 24 页  
SIMPL Windows  
下图将返回的数据进行处理,读取数据内容有,温控器开关机状态,负载状态,设定温度,室内温度等  
工作状态进一步解析,判断状态是开机,还是关机  
15 页 共 24 页  
SIMPL Windows  
负载状态进一步解析,判断是否带负载,还是零负载  
窗帘电机控制  
窗帘电机通讯协议  
波特率:9600  
数据位:8  
停止位:1  
校验位:none  
通讯格式:  
设备地址获取方式:通过串口调试助手设置好通讯方式,给电机上电,主动返回电机地址信息。  
测试电机上电后接收的数据:55 01 57 00 7F FF 1F D3 AA ,电机地址为:01 57 因此电机控制指令为:  
16 页 共 24 页  
 
SIMPL Windows  
窗帘打开:\xA5\x01\x57\xFF\x00 \xAA  
窗帘关闭:\xA5 \x01 \x57\x FE \x01 \xAA  
窗帘停止:\xA5\x 01 \x57 \x00\x FF\x AA  
串口 COM1 的设置方式同温控器,控制程序如图  
网络转串口模块使用  
首先将设备与电脑 PC 连接上,设备出厂的 IP 地址为:192.168.1.xx,因此需要将电脑设置一个固定 IP  
17 页 共 24 页  
 
SIMPL Windows  
配置设备参数信息:安装配置软件,打开软件,点击扫描按钮,设备 IP 地址,MAC 地址将显示在左侧空白处  
如需更改 IP 信息,在 IP 地址信息栏更改,模块端口号更改等。  
18 页 共 24 页  
SIMPL Windows  
根据被控设备的串口参数设置,波特率,数据位,停止位等。  
点击网口配置对话框中的“连接,弹出  
点击“配置”将设定好的参数加载到模块,此时即可与 Prodigy 主机对接。  
指纹门锁控制  
指纹门锁协议  
波特率:9600  
数据位:8  
停止位:1  
校验位:none  
命令集:  
1.门锁对码:从门锁到中控  
包头  
1 字节 1 字节 1 字节 4 字节  
0XAA 0X07 0XC0  
包长度 命令码 命令内容  
CRC 检验  
1 字节  
包尾  
1 字节  
0XBB  
门锁的序列号  
8 CRC  
说明:先在转接模块上按一下设置键,然后在门锁上按设置键四下,输入主钥匙,门锁会发回一个门锁对码  
命令,里面包含着新的门锁的序列号。之后的通信就要用新的序列号。  
例:AA07C010425038EABB  
2.清除对码:从门锁到中控  
包头  
1 字节 1 字节 1 字节 4 字节  
0XAA 0X07 0XC1  
包长度 命令码 命令内容  
CRC 检验  
1 字节  
包尾  
1 字节  
0XBB  
门锁的序列号  
8 CRC  
说明:在转接模块上按住设置键三秒钟,转换模块会清除门锁序列,清除后门锁序列为全 0XFF.  
例:AA07C1FFFFFFFFE7BB  
3.中控开锁:从中控到门锁  
包头  
1 字节 1 字节 1 字节 4 字节  
0XAA 0X07 0X24  
包长度 命令码 命令内容  
CRC 检验  
1 字节  
包尾  
1 字节  
0XBB  
门锁的序列号  
8 CRC  
例:AA0724104250382FBB  
4.中控应急开锁:从中控到门锁  
包头  
包长度 命令码 命令内容  
CRC 检验  
1 字节  
包尾  
1 字节 1 字节 1 字节 4 字节  
1 字节  
19 页 共 24 页  
 
SIMPL Windows  
0XAA  
0X07  
0X25  
0XBB  
门锁的序列号  
8 CRC  
例:AA072510425038E2BB  
5。中控关锁:从中控到门锁  
包头  
包长度 命令码 命令内容  
CRC 检验  
1 字节  
包尾  
1 字节 1 字节 1 字节 4 字节  
1 字节  
0XBB  
0XAA  
0X07  
0X26  
门锁的序列号  
8 CRC  
例:AA072610425038ACBB  
6.查询门锁状态:从中控到门锁  
包头  
1 字节 1 字节 1 字节 4 字节  
0XAA 0X07 0X27  
例:AA07271042503861BB  
包长度 命令码 命令内容  
CRC 检验  
1 字节  
包尾  
1 字节  
0XBB  
门锁的序列号  
8 CRC  
7.发送门锁状态信息:从门锁到中控,发送门锁的开关状态和电量状态信息。当门锁开或关后,或收到查询门  
锁状态的命令后,会发出门锁状态信息。  
包头  
1 字节 1 字节 1 字节 4 字节  
0XAA 0X07 0XFX  
包长度 命令码 命令内容  
CRC 检验  
1 字节  
包尾  
1 字节  
0XBB  
门锁的序列号  
8 CRC  
说明:命令码为 0XFX,其中 X 根据门锁开关状态和电量不同而不同。  
0 位表示的是门锁的开关状态,为 0,则表示是关,为 1,表示是开。  
1 位表示的是电量,为 0,则表示电量正常,为 1,表示电量不足。  
2 和第 3 位保留。  
F2 的二进制不是 11110010 吗  
倒数第 2 1 是表示电量  
例:如果当前的门锁是开而电量正常,0XFX 的值应该为 0XF1.  
例:AA07F110425038A3BB  
8.门锁消警:从中控到门锁  
包头  
1 字节 1 字节 1 字节 4 字节  
0XAA 0X07 0X28  
包长度 命令码 命令内容  
CRC 检验  
1 字节  
包尾  
1 字节  
0XBB  
门锁的序列号  
8 CRC  
例:AA0728104250380EBB  
9. 非法钥匙开锁:从门锁到中控  
包头  
1 字节 1 字节 1 字节 4 字节  
0XAA 0X07 0X31  
包长度 命令码 命令内容  
CRC 检验  
1 字节  
包尾  
1 字节  
0XBB  
门锁的序列号  
8 CRC  
例:AA07311042503881BB  
10. 挟持开锁:从门锁到中控  
包头  
包长度 命令码 命令内容  
CRC 检验  
1 字节  
包尾  
1 字节 1 字节 1 字节 4 字节  
1 字节  
20 页 共 24 页  
SIMPL Windows  
0XAA  
0X07  
0X32  
0XBB  
门锁的序列号  
8 CRC  
例:AA073210425038CFBB  
11.撬门报警:从门锁到中控  
包头  
包长度 命令码 命令内容  
CRC 检验  
1 字节  
包尾  
1 字节 1 字节 1 字节 4 字节  
1 字节  
0XBB  
0XAA  
0X07  
0X33  
门锁的序列号  
8 CRC  
例:AA07331042503802BB  
12. 门锁布防:从门锁到中控  
包头  
1 字节 1 字节 1 字节 4 字节  
0XAA 0X07 0X34  
例:AA07341042503853BB  
包长度 命令码 命令内容  
CRC 检验  
1 字节  
包尾  
1 字节  
0XBB  
门锁的序列号  
8 CRC  
13. 指定编号钥匙开锁:从门锁到中控。当编号为 90 99 的钥匙开锁后,门锁会发出信息,用于监控钥匙使用  
者的进出情况,如小孩的放学。  
包头  
1 字节 1 字节 1 字节 4 字节  
0XAA 0X07 0X9X  
包长度 命令码 命令内容  
CRC 检验  
1 字节  
包尾  
1 字节  
0XBB  
门锁的序列号  
8 CRC  
说明:命令码为 0X9X,其中 X 根据钥匙的编号不同而不同,例:如果编号为 95,则命令码为 0X95;  
例:AA079510425038ADBB  
数据解析:  
门锁序列号:AA 07 C0 62 24 10 0A A8 BB  
发送-开锁: \XAA\X07\X24\X62\X24\X10\X0A\X6D\XBB  
女儿指纹开门信号返回:\XAA\X07\X91\X62\X24\X10\X0A\XF0\XBB  
儿子指纹开门信号返回:\XAA\X07\X92\X62\X24\X10\X0A\XBE\XBB  
程序编写如图  
21 页 共 24 页  
SIMPL Windows  
如上图:当女儿指纹开门返回的数据与我们在 Str2 中的数据代码相匹配时变量 daughter 将持续为高电平信号,  
直到 door_control_rx 串量数据发生变化此我们可以用匹配后产生的高电平作为下一命令的触发值如触发  
短信报警模块发送女儿回家信息到指定号码。  
悠达背景音乐控制  
悠达功放通讯协议  
波特率:4800  
数据位:8  
停止位:1  
校验位:none  
控制命令解析:  
开机:\xB9\x00\x03\x00\x03  
关机:\xB9\x00\x04\x00\x04  
播放/暂停:\xA3\x00\x02\x00\x02  
返回码 播放:\xE9 \x00 \x02 \x00 \x02 暂停:\xE9 \x00 \x02 \x01 \x03  
音源切换:\xDF\x00\x00\x00\x00  
音源切换为 AUX1\xB9\x00\x05\x00\x05  
音源切换为 FM\xB9\x00\x05\x01\x04  
音源切换为 MP3\xB9\x00\x05\x02\x07  
音源切换为 AUX2\xB9\x00\x05\x03\x06  
静音/静音取消:\xA3\x00\x04\x00\x04  
音效设置  
正常:\xB9\x00\x0A\x00\x0A  
流行:\xB9\x00\x0A\x01\x0B  
柔和:\xB9\x00\x0A\x02\x08  
古典:\xB9\x00\x0A\x03\x09  
爵士:\xB9\x00\x0A\x04\x0E  
摇滚:\xB9\x00\x0A\x05\x0F  
音量 0\xB9\x00\x07\x00\x07  
音量 1\xB9\x00\x07\x01\x06  
音量 2\xB9\x00\x07\x02\x05  
音量 3\xB9\x00\x07\x03\x04  
22 页 共 24 页  
 
SIMPL Windows  
音量 4\xB9\x00\x07\x04\x03  
音量 5\xB9\x00\x07\x05\x02  
音量 6\xB9\x00\x07\x06\x01  
音量 7\xB9\x00\x07\x07\x00  
音量 8\xB9\x00\x07\x08\x0F  
音量 9\xB9\x00\x07\x09\x0E  
音量 10\xB9\x00\x07\x0A\x0D  
音量 11\xB9\x00\x07\x0B\x0C  
音量 12\xB9\x00\x07\x0C\x0B  
音量 13\xB9\x00\x07\x0D\x0A  
音量 15\xB9\x00\x07\x0F\x08  
音量 18\xB9\x00\x07\x12\x15  
开关机控制命令程序,其他控制内容雷同  
界面状态反馈程序  
短信模块控制  
协议解析  
波特率:9600  
数据位:8  
停止位:1  
校验位:none  
AT+CMGF=0 回车  
23 页 共 24 页  
 
SIMPL Windows  
\X41\X54\X2B\X43\X4D\X47\X46\X3D\X30\X0D\X0A  
AT+CMGS=38 回车 备注:编码长度 38 除掉 00 1A 除以 2  
\X41\X54\X2B\X43\X4D\X47\X53\X3D\X33\X38\X0D\X0A  
手机号码 15857172166  
客厅窗口位置发生闯入报警  
前缀 0031000B8 手机号码 15158172761F6 附加码 0008A7 内容编码长度 18 内容编码 5BA2 5385 7A97 53E3  
4F4D 7F6E 53D1 751F 95EF 5165 62A5 8B66 后缀 1A  
\X30\X30\X33\X31\X30\X30\X30\X42\X38\X31\X35\X31\X35\X38\X31\X37\X32\X37\X36\X31\X46\X36\X30\X30\  
X30\X38\X41\X37\X31\X38\X35\X42\X41\X32\X35\X33\X38\X35\X37\X41\X39\X37\X36\X32\X33\X37\X34\X46\  
X34\X44\X37\X46\X36\X45\X35\X33\X44\X31\X37\X35\X31\X46\X39\X35\X45\X46\X35\X31\X36\X35\X36\X32\  
X41\X35\X38\X42\X36\X36\X1A  
程序控制所需函数  
报警信号触发函数“steppertrig  
依次发送指令  
24 页 共 24 页  
后台-插件-广告管理-手机广告位-内容正文底部468X60

文章评论