首页自动化eHouse的解码CommManager状态 – 源代码

eHouse 家庭自动化 , 大厦管理 – 在的数据格式CommManager状态二进制代码 . CommManager是 调节器 的eHouse 家庭自动化 系统 , 收集通信功能,是 ” 通往世界的大门 ” 系统的基础上的系统控制器eHouse版本1(485) .
它可以让你免除您的PC,同时保持较高的功能(标准内置 – 在控制器中) .
此外 , 该系统取代了旧版本的ExternalManager ” eHouse 1 ” 和3 InputExtenders , 的代理功能齐全的控制器:滚 , 门和遮阳篷 . 另外,它还集成的报警,允许 控制 通过短信或局域网 .
它也有一个内置 – 在报警通知短信 – 以太网智能家居 – 压路机 , 盖茨 , 网关 – 控制器和安全系统
一混合版本(eHouse 1监督下的CommManager)的控制器收集的所有状态RoomManagers( 家庭自动化 – 房间控制器 )和HeatManager( 锅炉控制器 , 复苏 , 自动绿色能源 ),并将它们发送到控制面板上,通过TCP / IP或UDP .
此外 , 允许你发送UDP广播的局域网上的所有设备的状态 , 让您由任意数量的控制面板和结果可视化跟踪状态和​​无连接的系统状态eHouse , 输入值与实测值的 .
这种类型的广播,不收取额外的CPU的CommManager , 不管多大的面板收到上述数据 .
除了接收到的数据从控制器eHouse 1(RS485上工作) , CommManager附加其当前状态 , 这是报警系统的状态 .
帧状态的二进制代码进行了讨论帖子:
” 智能家居 , 智能建筑eHouse帧的状态的二进制代码 ”
” 智能家居 , 智能建筑eHouse – 帧解码状态 – 源代码 ”
到目前为止,我们“ ; 所投保的帧格式 , 重要的一帧中的比特和字节,并提交源代码,以方便准备的数据进行解码的所有控制器eHouse连接CommManager或应用程序eHouse . exe文件(eHouse 1) .

这 ; 的时间用于软件解码的状态的扩大框架CommManager的, .
虽然状态可以以同样的形式发送TCP / IP和UDP , 我们只会广播UDP , 由于缺乏具有登录到控制器,并增加CPU的负荷 .
通信通过TCP / IP套接字的服务器,我们离开自由地远程移动面板需求 , 在外打工的LAN(智能 , GSM手机) , 使用UDP作为传输的互联网可以是困难的,涉及到很多的错误 , 防止正确的解码状态 , 由于质量差的链接 , 缺乏机制的UDP会话的确认和重复 .
为此 , 在最后的模板德尔福的控制面板,前面已经讨论过的职位: ” 智能家居eHouse , 在Windows XP的源代码控制面板的平板电脑 , 远景 , 7 ”
捆绑改变状态的二进制通过UDP接收数据的支持CommManager
程序TForm1 . binaryDataReceived(发件人:TComponent ; NumberBytes:整数 ; FromIP:字符串 ; 端口:整数) ;
VAR C:数组[0 . . 1024]的字符 ;
MyStream的:TMemoryStream ;
numberb:整数 ;
开始
如果filesystem_status然后退出 ; / /只有当UDP是积极的
MyStream的:TMemoryStream . 创建 ;
二进制 . ReadStream(MyStream的) ;
numberb:NumberBytes ;
如果numberb> ; 1023 numberb:= 1023 / /限制接收的字节数 – 我们的数据缓冲区的大小切
MyStream的 . 阅读(C [0] , numberb) ;
set_rm(C , 1) ; / /解码状态eHouse 1控制器 – RM解码控制器的状态 , HM
set_status_commmanager(C , 0 , 254) ; 控制器/ /解码commanager的状态 – 解码状态commmanagera的
Test_save ; / /测试数据保存到文本文件中的每个RM , HM – 测试结果保存到一个文本文件中的所有控制器eHouse 1(RM , HM)
Test_save_eth ; / /测试数据保存到文本文件的CommManager,每个以太网控制器 – 测试结果保存到一个文本文件的CommManagera和所有控制器EtherneteHouse
update_panel ; / /更新数据的面板,所选的控制器 – 更新数据控制面板
结束 ; :
为CommManagera帧的解码过程中的状态和其他控制器的完整实现执行过程以太网eHouse
set_status_commmanager(C , 0 , 254) ; / /指定的参数的名称和地址的数据缓冲控制器(在过去的两个组成部分的IP地址) .
本程序执行的解码的帧中的二进制状态,然后加载的解码后的数据记录的以太网控制器,该控制器是一个记录的一个实例 ” ethernet_rm_hm_cm_lm ” 被称为 ” ethrm ” .
该指数是自动搜索连接到一个IP地址中的地位 .
这使我们能够:

  • 所有控制器的数据直接分析
  • 创建自己的算法的输出状态 , 输入 , 测量传感器
  • 实施控制系统,专门用于分析现有的系统中任意数量的参数
  • 日志分析软件的开发和eHouse系统状态
  • 软件可以计算出用电量
  • 允许执行独立的控制面板和可视化的模板的基础上,为所有控制器
  • 通信和数据帧的方法,没有需要知识
  • 写高 – 通过实施eHouse系统的软件库级软件(几行源代码) .