项目简介
本项目利用开源硬件构建家庭云信息系统,借助Arduino Yun开发板从互联网获取各类常用信息(如天气预报等),并在TFT显示屏上进行显示。
项目的主要特性和功能
- 从互联网获取常用信息,如天气预报。
- 通过TFT显示屏展示获取到的信息。
- 支持触摸屏交互操作。
- 可通过Spacebrew进行网络通讯和远程控制。
安装使用步骤
硬件安装
- 将矽递 2.8" TFT触摸屏扩展卡插入Arduino Yun开发板,然后用Micro USB连接线连接电脑和Arduino。
- 参照http://arduino.cc/en/Guide/ArduinoYun 的描述安装驱动程序和设置WiFi。
软件安装与配置
- 下载并安装Ardunio IDE (http://arduino.cc/en/Main/Software),Arduino Yun要求1.5.5以上版本。
- 运行IDE,选择“Tools->Board->Ardiuno Yun”;“Port->选择Ardiuno Yun所在的端口”。
- 选择“Sketch->Import Library...”,在弹出框选择本项目里面arduino-src/libraries/SeeedTFTv2目录;同样方式选择SeeedTouchScreen目录。
运行调试
- 运行样例程序: 选择“File->Examples->SeeedTFTv2->drawCircle”,然后进行Verify和Upload操作,完毕后可在屏幕上看到不同颜色的圆形;也可用同样方式测试其他样例程序。
Spacebrew服务器安装配置(可选)
若仅作为测试,可使用sandbox.spacebrew.cc,此步骤可跳过。服务器需使用运行linux系统的托管或云服务器,以Ubuntu为例:
1. 安装node.js:
bash
curl -sL https://deb.nodesource.com/setup | sudo bash -
sudo apt-get install -y nodejs
2. 安装ws:
bash
npm install ws
3. 安装forever module:
bash
npm install forever-monitor
sudo npm install forever -g
4. 安装git:
bash
sudo apt-get install git
5. 复制Spacebrew代码库:
bash
6. 运行Spacebrew:
bash
cd spacebrew
forever start node_server.js
7. 测试浏览器访问(替换<hostname>
为实际ip地址)。
客户端(Arduino Yun)Spacebrew安装
- 下载源代码。
- 拷贝python文件到yun:
bash scp -r ./spacebrew root@arduino.local:/usr/lib/python2.7
- 拷贝shell文件到yun:
bash scp ./run-spacebrew root@arduino.local:/usr/bin
- ssh到yun,修改文件权限:
bash chmod 0755 /usr/bin/run-spacebrew
- 导入arduino lib:在Arduino IDE选择“Sketch->Import Library...->Add Libaray...”,选择源代码目录“arduino/SpacebrewYun”。
- 测试:在Arduino IDE选择“File->Examples->SpacebrewYun->spacebrewBoolean”。
- 在
sb.connect()
行修改服务器地址参数为实际部署服务器的地址。 - 通过usb上传到arduino。
- 运行serial monitor查看log,等待片刻,如出现“onnected to: xx.xx.xx.xx”,表示连接成功。
- 打开spacebrew admin界面,应有“SpacebrewYun”的客户端出现,将其subscriber连接到任何可测试的publisher,用publisher进行测试,观察serial monitor,会有相应log打印。也可增加代码到
handleBoolean()
,如:cpp if(value) { digitalWrite(13, HIGH); } else { digitalWrite(13, LOW); }
此时可观察到LED在控制下开/关,在wifi连接下测试,延时小于1秒。
项目测试
- 将TFT显示屏插入Arduino Yun。
- 用Arduino IDE打开 main/YunHome/YunHome.ino,编译并上传到Arduino。
- 在Arduino IDE打开 Serial Monitor。
- 在admin界面上将YunHome应用和testButton、testString应用的testButton/testString的publisher连接到YunHome对应的subscriber。
- 测试testButton页面,点击按钮,显示屏幕显示“ON”,松开按钮,显示"OFF"。
- 测试testString页面,发送英文字符串,屏幕显示对应的字符。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】