聪普智能对接三方面板之“控制”与“反馈”编程

[复制链接]
WSTAR 发表于 2019-1-27 15:28:08 | 显示全部楼层 |阅读模式
本帖最后由 WSTAR 于 2019-1-27 15:40 编辑

第三方设备对接,可能是大部分智能技术最头疼的事情。在这里我想告诉大家的是:你用心学习了,研究了,一切都变的那么简单、那么轻松,经验就是在实战中积累起来的,闲话不多说,我们直奔主题。
我在这里讲的是聪普和思悦面板的对接编程中该如何写程序,如何正确的运用逻辑块
我用到的逻辑块有Serial I/O,stepper,one shot等逻辑块如下图 逻辑块.png 逻辑块内容1.png 逻辑块内容2.png 逻辑块内容3.png 逻辑块内容4.png
我讲解一下为什么用stepper后面输出的是灯光的clock,而不是set,reset。
因为写set和reset的时候,如果你安装了思悦面板和聪普面板混合的,而聪普面板和思悦面板都有一个按键控制同一个灯光,聪普面板写的内容是灯光clock,思悦面板写的是两个指令一个开set,关reset,当你用聪普面板的一键开关clock时,思悦面板就不会有状态反馈,另一方面,如果是多控制设备控制一盏灯,控来控去,思悦面板的状态可能会改变也可能没有改变,当没改变的时候(就第一种情况),再按思悦面板他会执行开的命令,恰好灯光是开的,你的这次操作就不会有动作执行
而我用stepper输出clock的时候,不管思悦面板发出任何指令我主机都会执行动作,好了,执行动作完美解决,问题来了,那我状态反馈该怎么写呢?这个简单,我们想想,不管我用什么控制:比如聪普面板,聪普app,set,reset,clock,自复位面板,场景等等,最终变化的都是继电器的变量,toggle中的out变量,所以,我们就用继电器out的变化来给思悦面板发送状态反馈指令。
怎么用呢?开灯:out变量是从低电平0到高电平1的变化,那我们就用one shot这个逻辑块中的“上升沿这个变量触发开灯的状态指令。相反,关灯out变量是从高电平1到低电平0的变化,那我们就用one shot这个逻辑块中的“下降沿这个变量触发灯的状态指令(如果我们toggle中写的有out*变量,我们也可以用out*的上升沿触发关灯的状态指令)




讲到这里,大家会问那跳光灯的怎么写呢?
下面我就再把调光的程序讲解一下
和上面重复步骤不在讲解了,开关型用的是out和out*,而调光的out是一个模拟量,怎么用呢,我们要思考一下,我们需要把模拟量转换成数字量,用比较这个逻辑块来实现,首先:我们要用Analog Initial这个逻辑块赋比较值为0,再用Analog Comparison这个逻辑块和0比较,当灯光从0变化后大于0的时候就发开灯状态指令,当灯光大于0时变化到等于0时就发关灯状态指令


赋值.png 调光比较.png

思悦面板对接就讲解到这里,有什么不懂得欢迎大家交流学习,在此,给大家拜个早年,祝大家 新年快乐!阖家幸福!万事如意!身体健康!生意兴隆!


cx.rar

228.49 KB, 下载次数: 896

crodigy1030 发表于 2019-1-28 13:54:21 | 显示全部楼层
回复

使用道具 举报

13228751750 发表于 2019-2-12 12:53:26 | 显示全部楼层

感谢楼主分享,辛苦了!!!
回复

使用道具 举报

13228751750 发表于 2019-2-12 13:11:21 | 显示全部楼层
嘻嘻嘻嘻嘻嘻嘻
回复

使用道具 举报

小叮当 发表于 2019-2-28 11:27:19 | 显示全部楼层
不错
回复

使用道具 举报

饶绍荣 发表于 2019-2-28 14:13:35 | 显示全部楼层
顶顶顶
回复

使用道具 举报

yang_vg6X6 发表于 2019-3-1 16:24:26 | 显示全部楼层
楼主辛苦了,感谢分享
回复

使用道具 举报

rosyzc7 发表于 2019-11-14 10:23:24 来自手机 | 显示全部楼层
谢谢 分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则