编写示例—空调485控制逻辑编写思路梳理

[复制链接]
crodigy 发表于 2018-12-27 14:44:12 | 显示全部楼层 |阅读模式
本帖最后由 crodigy 于 2019-3-4 13:55 编辑

一、空调控制逻辑编写思路

1、如果是通过485协议控制空调状态的改变,则需要确定一个485接口,根据协议要求配置该485的通讯格式。
k1.png

2、添加一个“serial I/O”填写控制协议,将输出关联到配置的485串口条目上。

k2.png
在这里,空调的每个状态都需要一个对应的命令。每一个温度值也都对应一个命令。

3、添加APP块进行关联

1、添加APP块,APP块右侧侧变量和“serial I/O”左侧变量保持一致

2、APP块输出的温度转换
k3.png
由于APP块输出的温度是模拟量,但“serial I/O”上温度孔子条目是数字量触发方式,那么需要经过“analog equate”将模拟量转换成数字量输出。

二、空调状态查询思路编写

1、确定查询命令,在“serial IO”中填写查询协议(可以是每台内机一个查询命令,也可以是多台内机批量查询命令)。
2、当触发查询命令发送出去后,通过主机485串口的“rx”会展示空调返回的状态数据。
k4.png

3、接下来我们需要对返回的数据进行处理。因为所有的数据都是从一个口进来的,那么在这里我们要区分出来每一台内机的状态数据。

a、是一台空调的状态:

(1)通过“serial check”对返回的数据进行校验,确定是哪一台内机的状态。
k5.png
根据内机ID所在的字节,填写校验,进行区分。
(2)通过“serial to byte”分离出空调各状态所在的字节。
k6.png
(3)然后将输出的“开关状态”、“模式状态”、“风速状态”的模拟量通过“analog equate”转换成数字量进行空调状态的反馈,填写在APP块的左侧。
(4)返回回来的设置温度不需要再次转换。

b、是多台空调的状态
k7.png

(1)同样是使用“serial check”区分出该返回的数据是不是插叙回来的结果。
(2)然后用“serial to byte”分离出这多台内机的所有状态
(3)再将输出的模拟量分别转换成数字量。





饶绍荣 发表于 2019-1-19 10:35:28 | 显示全部楼层
感谢分享!!!!
回复

使用道具 举报

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

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

使用道具 举报

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

使用道具 举报

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

本版积分规则