迅维网
标题: [讨论]家电联网协议的探讨(如何把家电连接在一起) [打印本页]
作者: yzz163 时间: 2009-11-24 10:17
标题: [讨论]家电联网协议的探讨(如何把家电连接在一起)
最近,一直在学习485、modbus协议的实现,想把家里的电器设备联网(用AVR的串口+485方式),上位机用PC(DELPHI写上位机程序)。设想是:
(1)、每间房间一个控制器控制灯、各种开关、传感器(如防盗、温度等),可设置4路输入、8/12路输出。
(2)、每个电器一个控制器,比如:洗衣机、风扇、电冰箱、电视机、音响等
(3)、协议,这个是最麻烦的。物理层就用便宜、成熟可靠的485,缺点是要布线(至少3根,可用普通网线)。想借鉴modbus,搞成模块化,每种电器一个协议。对上位机/主机要求较高,要能解析每种电器的协议。
一、开关的控制:每个房间的灯、和开关的控制。有2种模式:(1)普通开/关(2)定时开/关(3)模拟量开关。
二、其他电器控制:
(1)、风扇控制:风速控制,1-6挡,自然风等模式
(2)、电视机:遥控协议
(3)、音响:音源切换选择、音量(模拟量)
。。。。。。。。待续。
作者: 丁宗海 时间: 2009-11-24 10:27
这种内容貌似电信还是网通内部搞过,为什么没推广就不知道了,估计在国外已经有很多人在用了
作者: 心在飞翔 时间: 2009-11-24 10:34
余哥,好好研究吧,出方案了告诉我一下,我装修用。
作者: yzz163 时间: 2009-11-24 11:12
modbus 协议
RTU模式(一个字节)
1起始位,8数据位,奇/偶效验1位(或无),停止位1位
modbus帧(一个数据包)
作者: yzz163 时间: 2009-11-24 11:21
为什么没推广就不知道了
--------------------------
就目前的情况,这个还不能商品化,有很多东西要改造(普通用户无法完成的)。
除非现在的家用电器全部统一联网的协议,并且每个电器都必须配备联网的接口。
作者: yzz163 时间: 2009-11-24 13:21
一、功能码01,读线圈状态
作者: yzz163 时间: 2009-11-24 13:29
二、功能码02 ,读输入位的ON/OFF状态。
三、功能码03,读保持寄存器状态。
----------------------------------------------------------
这两个功能包(查询和应答)同01,就不重复发具体的协议字节了。
作者: yzz163 时间: 2009-11-24 13:44
四、功能码05,强制单个线圈
作者: 宇光 时间: 2009-11-26 09:34
国外公司有搞出专门通信协议的,但好像不对外开放。我有一个朋友以前在大庆一家公司搞过这个项目,但没推开。
作者: yzz163 时间: 2009-11-26 12:20
每个电器生产商也不愿意提供自己的协议,所以要联网很困难。如果要做,不开源的,不考虑使用。
下面是我对协议的设想:
控制器分为通用和专门控制器,用地址来区别不同的控制器。专门控制器(下位机)可只解码自己的功能代码,可定义自己的子协议。
第一步,把通用控制器完成,上位机程序完成。
模型:
1、房间数:20
2、通用控制器:
每房间2个通用控制器(控制灯开关、门磁开关等),每控制器4-8输入,8-12输出。
3、专用控制器:
(1)电视机 2台
(2)音响 1台
(3)电话 2台(有线/无线各一)
(4)风扇 4台
(5)空调 2台
(6)洗衣机 2台
(7)冰箱/柜 2台
(8)微波炉、电磁灶、煤气灶、电脑电饭褒、洗碗机、消毒柜,。。。各一台。
(9)摄象机(云台) 4台
(10)指纹/磁卡 门锁 4个
作者: yzz163 时间: 2009-11-26 12:32
由于家用控制器的总数量不多,类型较多,想到用 地址字节 来区分不同的控制器。比如,用地址10-20表示通用控制器,地址21-22表示电视机等等。。。
利用功能字节/数据字段实现不同类型控制器的子协议,兼容更多的功能。
作者: yzz163 时间: 2009-11-29 19:18
确定用 地址字节 来区分不同类型的控制器。
地址10-20,定义为房间通用控制器。
地址50,开始定义为各“专门”电器控制器。
接下来,以M8/M16为下位机,485方式,上位机用DELPHI实现这个协议。
作者: 风劲草 时间: 2009-12-1 11:56
国内有企业在做智能家居了,例如安居宝,可以参考下他们的产品
作者: 猪头四 时间: 2009-12-1 19:21
俺的挫见:感觉做智能协议比较困难。比较不是标准器件。相对来说,家庭内控制的家电大多是开关动作。而其他带预设或者遥控的需要另外想办法。
只能在普通的地址定义上面做文章,控制家电的开启关闭等功能。
而干扰信号源将成为你后续的艰难工作。
周边可以多使用感应器(人体红外感应器,温度感应器,声控等。。。)
作者: yzz163 时间: 2009-12-2 13:38
做智能协议比较困难
---------------------------
是的。目前没有标准,只能自己定义。只能是尽自己的认知能力来做了。
而干扰信号源将成为你后续的艰难工作。
------------------------------------
如果用 485 总线就没这个问题了。用无线、载波的方式,抗干扰和安全问题不太好解决。
周边可以多使用感应器(人体红外感应器,温度感应器,声控等。。。)
---------------------------------------------------
在家庭应用中,传感器的种类也是很多的。比如:温度、湿度、煤气、红外(主动、被动)、无线、门磁等。
为和更好的体现每个房间的不同需求,我采用了每个房间多个控制器、每个电器一个控制器(需要后面自己给电器开膛破肚),允许不断加入网络的方法。这只能是给动手能力强的爱好者使用。
国内有企业在做智能家居了,例如安居宝,可以参考下他们的产品
---------------------------------------------------
如果是开源的可以考虑,否则是浪费时间。
作者: 猪头四 时间: 2009-12-4 23:12
用无线、载波的方式会更困难。考虑到调制线路等一系列的东西。。。
国内哪家在做,给点链接看看 。
作者: yzz163 时间: 2009-12-4 23:31
先贴两张图:
作者: 宇光 时间: 2009-12-7 20:39
昨天刚好看到2篇国外关于自动化家居标准的文章,其中1篇介绍了3个开放标准——X10、KNX、DigitalSTROM,余版感兴趣的话不妨看看。
[local]1[/local]
作者: 宇光 时间: 2009-12-7 20:46
文件在这,论坛老出问题。
STD.pdf
(758.28 KB, 下载次数: 25)