The Drone Pi :用树莓派做无人机

[复制链接]

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册用户

x
(一)——材料准备
152651n7ihjdkoed3eexe1.png.thumb.jpg 152714nlfae5dfldlqi7o4.png.thumb.jpg 152728ntttaha3vq1n3hv7.png.thumb.jpg
要做一个图片上的无人机,需要用到什么材料呢?
173815ufvv0u56hzhllule.jpg.thumb.jpg
154704gvjjyzz7yyycmv9x.png.thumb.jpg
154927eh09dlll1chhqtt7.png.thumb.jpg
154758of9hvfjw1i1f9whw.png.thumb.jpg
所需材料:
  • 1个框架:直径0.45M的X型框架(做四轴飞行器),中间的不同层次用来放树莓派、电池和电子调速器等等
  • 4个马达
  • 4个电子调速器
  • 电池:本教程用的是Turnigy 3S 3300mAh
  • 电池监控器:当电量下降时会响,本教程用的是Hobbyking battery monitor 3S
  • 配电板:用来把电子调速器连到电池,本教程用的是Hobbyking四轴飞行器配电板
  • 3.5mm连接器:连马达和电子调速器
  • 4.5mm连接器:把旧的配电板连接器换成这个
  • 螺旋桨:选择符合框架的螺旋桨,这里使用的是4个0.1M的螺旋桨
  • Multiwii:这个控制器是用来给马达下命令和分配电力的,这里使用的是CRIUS AIO PRO Multiwii
  • 垫片:由于马达会制造大量震动,所以要在Multiwii下面装上垫片减震
  • 树莓派 2 B型:欢迎大家测试其他型号
  • 树莓派相机:录像和拍照。PS:只能用于树莓派
  • WIFI KEY:它连接到Raspi并创建一个WiFi网络,传递来自智能手机App的信息到Raspi
  • U盘:用来保存视频
  • 遥控和遥控接收器:把遥控接收器连到Multiwii




(二)——工作原理和框架构造
工作原理:

092259va49clw31gxxxlqk.png.thumb.jpg

Multiwii:
Multiwii是法国一个基于Arduino的开源项目,由于他是开源的所以我们可以找到很多种Multiwii,本教程使用的是类似于CRIUS AIO PRO V2的版本。它是一个飞行控制器,发送速度信号保持飞行器在空中。
树莓派:
树莓派在本教程中是重要角色。首先他创建一个带DHCP服务器(以获得IP地址)的私人wifi网络,这个网络没有互联网接入,只能与智能手机连接。Websocket连系服务器(树莓派)和用户(智能手机app),它接受来自app的命令,然后通过USB连接到Multiwii,向Multiwii发送来自智能手机的命令信息。
App:
App用cordova做成 html、css和javascript。Cordova能用网络技术创建兼容安卓、ios和其他一些系统的app。


框架构造:


095659uxphh69gpxhuux0h.jpg.thumb.jpg 095734y8dijnfyn8fqmffd.jpg.thumb.jpg 095752hfgqp5jzc9wrsqkk.jpg.thumb.jpg 095811vvloqqclc3vt33cs.jpg.thumb.jpg 095825cx8kmxbbxbkw7d7l.jpg.thumb.jpg 095835lmbokr9n92r4vrov.jpg.thumb.jpg 095848wuzlern7mmt0fmdt.jpg.thumb.jpg 095859hvcd0n0dp6q37pyd.jpg.thumb.jpg



要造一个好的框架需要用到尽可能轻的材料。框架的直径是0.45M是因为这里做的是能让相机稳定拍照的飞行器,而不是竞速的。X型框架的中间有三层,用来放置控制器、ESCs和电池。
我在飞行器的顶部为Multiwii做了一个平台(图2),在底部为电池做了一个平台(图7和8)以方便换电池。因为要连接树莓派和Multiwii,所以把树莓派放在Multiwii下面,一起安在顶部。
最后,我安了4个支脚让飞行器能够登陆,用防震的材料比较好。
回复

举报 使用道具

全部回帖
(三)——推进和飞行控制




推进:
101641jqpyynlyyc1l6hvn.png.thumb.jpg

102017gz0qftqpkf8js0h1.png.thumb.jpg 102631igzmxxn6yubnxue7.png.thumb.jpg 103024ddi4jfv0cxo0c0xh.png.thumb.jpg 103037bzbdh2uij2bthnnh.jpg.thumb.jpg 103052jkt0da0hj28v44d0.jpg.thumb.jpg 103247nbj53lljqjixqjff.png.thumb.jpg 103500v7pgqgaez7y4ye7q.png.thumb.jpg



飞行控制器和树莓派:


104044gqlqlnvjggno7s7a.png.thumb.jpg 104124ivflz44btl9piixv.jpg.thumb.jpg 104142rim3vmigakmnvsig.jpg.thumb.jpg 104153hifhbh2jofff7ibf.jpg.thumb.jpg 104205yiujak85gjtxiitx.jpg.thumb.jpg 104215fimpwm9zvpyipqq3.jpg.thumb.jpg


如图所示安装Multiwii和树莓派,接下来把multiwii固件编译到板上,首先通过USB把multiwii连接电脑。
配置multiwii:
  • 下载multiwii固件
  • 下载arduino软件
  • 打开Arduino的项目“Multiwii.ino”
  • 改 "Tools">"Board">"Arduino Mega 2560 or Mega ADK"
  • 选择端口"Tools">"Serial Port"> 然后选择multiwii端口
  • 打开文件 "config.h"
  • 在文件开始行搜索 "//#define QUADX" 然后取消掉(删掉"//")
  • 搜索 "//#define CRIUS_AIO_PRO"并取消
  • 保存文件,开始编译
  • 用 MultiwiiConf校准所有传感器



(完)——树莓派部分


105759sl1990kfnlck9f1v.jpg.thumb.jpg 105818joan6aaoqsh8aar8.jpg.thumb.jpg


安装Debian:
跟着w-w-w。去掉-更换。raspberrypi.org/help/noobs-setup/用noobs安装raspbian
启动raspi-config 然后启用pi-camera
IP配置:
sudo nano /etc/network/interfaces 删除所有为wlan0的配置然后编辑:allow-hotplug wlan0iface wlan0 inet static        address 192.168.10.1        netmask 255.255.255.0        gateway 192.168.10.1安装Hostapd:开始之前更新:sudo apt-get update && sudo apt-get upgrade安装Hostapd:sudo apt-get install hostapd测试最低配置:sudo hostapd hostapd.conf在智能手机上看到这个网络就说明成功了,不过先不要连接。安装DHCP服务器:安装DHCP服务器为无线客户端提供IP地址sudo apt-get install isc-dhcp-server运行这个命令来编辑文件:sudo nano /etc/dhcp/dhcpd.conf找到写有option domain-name "example.org";option domain-name-servers ns1.example.org, ns2.example.org;的行,在前面加上 "#" 安装usbmount:我们需要usbmoun安装密匙,用来保存视频:sudo apt-get install usbmount现在所以密匙在 "/media/"文件夹里安装Python四轴飞行器程序:sudo apt-get install python-pip build-essential python-devsudo pip install tornado然后复制git project:git clone [url=]h-t-t-p去掉-s://github。C0m 替换。和0/reglisse44/Multiwii-raspberry-drone-server.git[/url] multiwiiControll提示:到这一步要开始 python程序你需要:
  • 连接 相机,激活raspi-config
  • multiwii板连接到树莓派USB端口的名称为“ttyUSB0“
然后输入命令:sudo hostapd -B /etc/hostapd/hostapd.confsudo ifconfig wlan0 192.168.10.1sudo service isc-dhcp-server restartsudo python multiwiiControll/main.py在启动时自动化:打开编辑器:sudo crontab -e在文件最后写:@reboot /home/pi/multiwiiControll/autostart.sh@reboot sudo python /home/pi/multiwiiControll/main.py &
退出、重启。以上,就全部完成啦。开动思维想想还有什么能改进的地方吧~

发表于 2016-1-19 19:51:36

举报 回复 支持 反对 使用道具

您需要登录后才可以回帖 登录 | 注册用户
快速回复 返回顶部 返回列表