智能家居开源平台——智汀家庭云(架构概述)

智汀家庭云是一个基于Linux的开源智能家居系统,采用Apache 2.0协议。它能离线运行在局域网内,也可绑定到智汀云获取更多功能。系统通过Docker部署,插件以gRPC和HTTP服务运行,由SA管理。项目遵循特定的设计规则和目录结构,鼓励社区参与开发。
摘要由CSDN通过智能技术生成

智汀家庭云,立项于2021年,结合国内智能家居各厂商软件特点,研发“智汀家庭云”,并对该生态系统全面开源,为国内首个采用智能家居系统全生态开源协议(Apache License, Version 2.0)的软件。

1. 应用场景

智汀家庭云可以离线运行在局域网内,也可以通过绑定到智汀云来获取更强大的功能。运行在局域网环境时,用户可以通过智汀APP发现与管理智汀家庭云,安装插件来对设备进行管理与控制。

用户也可以通过在智汀云上面注册账号,将智汀家庭云设备关联到云端,然后通过云端中转的方式支持在外网对设备进行控制。

智汀云同时提供设备直接接入云端虚拟家庭的功能,方便无智汀家庭云设备的用户使用;智汀云也提供
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
家庭信息YunHome 本项目使用开源硬件组建家庭信息系统,该系统可以从Internet获取各类常用信息(如天气预报等),并且在一个TFT显示屏上显示。 目前该项目使用两个硬件: 1. 一块Arduino Yun开发板(http://arduino.cc/), 你可以从Arduino 中国代理的天猫商店上购买到:http://xidikaiyuanshuma.tmall.com/ 2. 一块矽递 2.8" TFT触摸屏扩展卡,也可以从该商店购买到:http://xidikaiyuanshuma.tmall.com 硬件安装配置: 1. 将触摸屏扩展卡插入Arduino开发板,然后用Micro USB连接线连接电脑和Arduino。 2. 参照http://arduino.cc/en/Guide/ArduinoYun 的描述安装驱动程序和设置WiFi。 3. 下载并安装Ardunio IDE (http://arduino.cc/en/Main/Software), Arduino Yun要求1.5.5以上版本。 4. 运行IDE,Tools->Board->选择Ardiuno Yun;Port->选择Ardiuno Yun所在的端口。 5. Sketch->Import Library...,在弹出框选择本项目里面arduino-src/libraries/SeeedTFTv2目录;同样方式选择SeeedTouchScreen目录。 运行调试: 1. 运行样例程序: File->Examples->SeeedTFTv2->drawCircle,然后Verify, Upload,完毕后可以看到屏幕上出现不同颜色的圆形;同样方式可以测试其他样例程序。 Spacebrew服务器安装配置(如果仅作为测试,可以使用sandbox.spacebrew.cc,此步骤可以跳过) 服务器可使用任何托管或者服务器,运行linux系统。服务器使用spacebrew(http://docs.spacebrew.cc/),本节以Ubuntu为例,介绍如何安装运行spacebrew. 1. 安装node.js(https://github.com/joyent/node/wiki/Installing-Node.js-via-package-manager#ubuntu-mint-elementary-os): curl -sL https://deb.nodesource.com/setup | sudo bash - sudo apt-get install -y nodejs 2. 安装ws: npm install ws 3. 安装forever module npm install forever-monitor sudo npm install forever -g 4. 安装git sudo apt-get install git 5. 克隆Spacebrew代码库 git clone https://github.com/Spacebrew/spacebrew.git 6. 运行Spacebrew cd spacebrew forever start node_server.js 7. 测试浏览器访问(替换为实际ip地址): http://spacebrew.github.io/spacebrew.js/spacebrew_button/index.html?server=&name=button2 8. 测试浏览器访问(替换为实际ip地址):http://spacebrew.github.io/spacebrew/admin/admin.html?server= 客户端(Arduino Yun)Spacebrew 安装 ArduinoYun 端采用开源库yunSpacebrew(https://github.com/julioterra/yunSpacebrew),安装测试方法: 1. 下载源代码 2. 拷贝python文件到yun: scp -r ./spacebrew root@arduino.local:/usr/lib/python2.7 3. 拷贝shell文件到yun: scp ./run-spacebrew root@arduino.local:/usr/bin 4. ssh到yun,修改文件权限: chmod 0755 /usr/bin/run-spacebrew 5. 导入arduino lib: 在Arduino IDE选"Sketch->Import Library...->Add Libaray...", 选择源代码目录"arduino/SpacebrewYun" 6. 测试: 在Arduino IDE选"File->Examples->SpacebrewYun->spacebrewBoolean" 7. 在sb.connect()行修改服务器地址参数为实际部署服务器的地址 8. 通过usb上传到arduino 9. 运行serial monitor查看log,等待片刻,如出现: onnected to: xx.xx.xx.xx,表示连接成功 10. 这时打开spacebrew admin界面,应该有"SpacebrewYun"的客户端出现,将其subscriber连接到任何可测试的publisher,用publisher 进行测试,观察serial monitor,会有相应log打印。也可以增加代码到handleBoolean(), 如 if(value) { digitalWrite(13, HIGH); } else { digitalWrite(13, LOW); } 将观察到LED在控制下开/关,在wifi连接下测试,延时小于1秒,效果非常理想。 项目测试 1. 将TFT显示屏插入Arduino Yun 2. 用Arduino IDE打开 main/YunHome/YunHome.ino, 编译并上传到Arduino 3. 在Arduino IDE打开 Serial Monitor 4. 浏览器打开测试bool消息页面:http://spacebrew.github.io/spacebrew.js/spacebrew_button/index.html?server=sandbox.spacebrew.cc&name=testButton 5. 浏览器打开测试string消息页面: http://spacebrew.github.io/spacebrew.js/spacebrew_string/index.html?server=sandbox.spacebrew.cc&name=testString 6. 浏览器打开spacebrew admin:http://spacebrew.github.io/spacebrew/admin/admin.html?server=sandbox.spacebrew.cc 7. 在admin界面上将看到YunHome应用和testButton, testString应用,testButton/testString的publisher连接到YunHome对应的subscriber 8. 测试testButton页面,点击按钮,显示屏幕显示“ON”,松开按钮,显示"OFF" 9. 测试testString页面,发送英文字符串,发送,屏幕显示对应的字符
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值