很久以来,我就想做类似的项目了。但是手机集成工作的复杂性让我感到害怕。而且如果以后我有新的想法,也很难再重新利用这个项目。
现在,有了Blynk,这一切变得易如反掌:)
因此,我花了一个晚上,完成了这个项目。我希望大家会对这个项目感兴趣。
为了让这个项目正常工作,你需要:
1. 硬件
-
四轴飞行器(无需调整飞行器)
-
ESP8266 模组(ESP-07,ESP-12或者类似的开发板)
-
USB <-> TTL串口转换器(3.3V)
-
面包板 + 跳线
-
Amic A7105无线收发器模组
2. 软件
- Arduino IDE v1.6.5
[download here] - ESP8266 support for Arduino IDE
[setup instuctions here] - Blynk App
(在我的指导性文件中已经包括了安装过程)
3. 技能
-
可能需要进行简单的焊接(取决于你使用的硬件)
-
将固件上传至 ESP8266
[good example here]
参考资料和致谢
· Hubsan X4 协议破解:http://www.rcgroups.com/forums/showthread.php?t=1...
· ESP8266 脚位对应关系:http://esp8266.ru/esp8266-pin-register-strapping/
· 原始的 Arduino 库+ A7105 引脚分配表:https://github.com/napsternxg/coptermanager-arduin...
· 这份非常有用的指导性文件:http://www.instructables.com/id/Easy-Android-contr...
好的,让我们开始吧!
第一步:设置 Blynk 应用程序
Tricoder: multifunction hand-held device used for sensor scanning, data analysis, and recording data.
Blynk 带有不同的部件(比如按钮、滑动装置、显示装置)。
你可以执行你想要执行的动作。这是一个通用遥控器,也可以显示和绘制数据。
下面是如何开始的一些简单步骤:
1. 安装 Blynk 应用程序:
1. Android
2. iOS
(iOS 系统的软件目前还没有操纵杆配置,但在未来两周内将添加该配置)
2. 创建 Blynk 账户。
按下登入界面的“创建账户”按钮。
3. 将 Blynk 库安装到Arduino IDE中:https://github.com/blynkkk/blynk-library/releases(如果你忘记如何安装 Arduino 库的话:请 点击这里)
(可选步骤)
你可以安装本地 Blynk 服务器,以获得最佳操控性能和响应。点击这里关于这方面的内容: https://github.com/blynkkk/blynk-server/blob/mast...
顺便说一下,我们现在是通过 BT 4.0 BLE 、随后通过WiFi添加直接连接,以清除服务器连接(专门为类似情况设置)。
第二步:用导线连接 A7105 和 ESP8266
ESP8266 and A7105 的运行电压都是3.3V,我们无需使用任何变压器,直接将它们连接起来即可。
顺便说一下,这也是我选择使用 ESP8266的原因之一。另外一个原因就很明显了: ESP8266 带有WiFi连接功能。:)
你可能需要焊接少数几条导线或者使用实验板确保连接稳定。
第三步:配置 Blynk 项目
1. 创建一个新项目,选择 ESP8266
2. 按下按钮,发送认证令牌到你的邮箱
3. 添加Button部件
将其命名为“Bind”并连接到虚拟管脚1。
设定模式为“Switch”
4. 添加另外一个Button部件
将其命名为“Lights”并连接到虚拟管脚6。
设定模式为“Switch”
5. 添加两个操纵杆部件,安装图示内容配置
提示:你可以通过改变参数值来控制灵敏度/移位。
第四步:编写代码&上传固件
我会帮你剩下一些时间:这是一个草图,你可以按照这个草图给你的设备编写程序:)
事实上,我花了好几个小时向 ESP8266 上移植和修复原始的coptermanager,每次coptermanager不能正常工作或者崩溃的时候我都百思不得其解^_^
但一旦我成功地让 ESP8266 和 Hubsan 一起工作,让 Hubsan X4 和 Blynk 交互就是一件易如反掌的事情了
不到15分钟!
Everything I needed was to map commands of the coptermanager to the Blynk Virtual Pins:
现在我要做的就是把commands of the coptermanager到Blynk Virtual Pins。
V1 - COPTER_BIND Binds and returns the copter ID V2 - COPTER_THROTTLE (range 0x00 - 0xFF) throttle (top/down) V3 - COPTER_RUDDER (range 0x34 - 0xCC) rudder (rotate left/right) V4 - COPTER_AILERON (range 0x45 - 0xC3) aileron (drift left/right) V5 - COPTER_ELEVATOR (range 0x3E - 0xBC) elevator (forward/backward) v6 - COPTER_LED (1 or 0) enable/disable LEDs
然后:
1. 在 Arduino IDE中打开提供的草图
2. 更新 Blynk 认证令牌(来自email),更新coptermanager.ino文件夹中的WiFi证书
3. 将它上传到你的 ESP8266中!
第五步:飞起来!
不管你信不信,这样就搞定啦:)
1. 给你的 ESP8266 上电,确保它连接到 Blynk 服务器。
2. 给你的Hubsan X4上电。
3. 轻按应用程序中的“Run”按钮(三角形,位于右上角)
4. 轻按“BIND”按钮。四轴飞行器上的灯此时应当停止闪烁。非常棒!
5. 使用第二个按钮尝试打开和关闭灯。哇哦!
6. 现在……小心地……把你的手指轻轻地放到这两个操纵杆上……