树莓派上安装ubuntu Mate 版本 https://ubuntu-mate.org/raspberry-pi/
使用SD Card Format格式化SD卡和Win32DiskImager制作镜像
系统安装完之后修改ipv6设置
sudo gedit /etc/sysctl.d/10-ipv6-privacy.conf
将net.ipv6.conf.default.use_tempaddr改为0
重新加载 sudo sysctl --system
修改host 使得git 访问加快
sudo gedit /etc/hosts
添加下列两行
151.101.44.249 github.global.ssl.fastly.net
192.30.253.113 github.com
然后刷新 sudo /etc/init.d/networking restart
ros的安装 http://wiki.ros.org/kinetic/Installation/Ubuntu
安装base版本 sudo apt-get install ros-kinetic-ros-base
还需要安装djiosdk依赖的两个ros包
sudo apt-get install ros-kinetic-image-transport ros-kinetic-tf
djiosdk的安装 https://developer.dji.com/onboard-sdk/documentation/sample-doc/sample-setup.html#ros-onboard-computer
编译过程会出现虚拟内存耗尽的情况,需要挂在swap空间
fdisk -l # 查看磁盘使用的情况,找到空间大的磁盘比如/dev/zero
dd if=/dev/zero of=/swap bs=1024 count=1M #创建一个大小为1G的文件/swap
mkswap /swap #将/swap作为swap空间
swapon /swap #enable /swap file for paging and swapping
echo "/swap swap swap sw 0 0" >> /etc/fstab #Enable swap on boot, 开机后自动生效
注册开发者账号,获得APP ID
用M100测试
电脑装DJI Assistant2通过usb线与M100相连;树莓派通过USB转TTL线和UART线与M100相连;手机装DJI GO后通过usb线与遥控器相连。
首先打开遥控,电源短按一下长按两秒开机,然后打开智能电池,在电脑上的DJI Assistant2上修改波特率和其他数据,按照Onboard-SDK-ROS里的ReadMe修改
修改之后保存,重启M100生效。
需要在室外GPS信号好的地方测试。