1 本机参数
操作系统:Ubuntu 18.04(在虚拟机与原生系统基本无差别)
系统架构:基于x64的处理器
更新时间:2020/10/24
2 Olympe配置
创建文件夹,安装repo工具
cd $HOME
mkdir -p code/parrot-groundsdk
cd code/parrot-groundsdk
pwd
repo init -u https://github.com/Parrot-Developers/groundsdk-manifest.git
repo sync
repo 用不了先安装一下
sudo apt install repo
repo init若出现fatal:cannot get 请更换国内源下载
其他未见问题,建议确认已经正确安装pip,pip3
安装方法:
sudo apt-get install python-pip
sudo apt-get install python-pip3
安装clang后编译报错,试试
sudo apt install clang
* 可能的错误:
报错找不到libclang-11-dev:是因为目前没有这个版本,貌似是使用了较新版本的pip导致的,目前的最新版本是libclang-10-dev
以下是笔者目前采取的一种方法:首先手动安装libclang:然后修改这个文件: ~/code/parrot-groundsdk/products/olympe/linux/env/postinst
(1)将大约35行处的 CLANG_VERSION 强制修改为 “10”
(2)然后运行该文件:~/code/parrot-groundsdk/products/olympe/linux/env/postinst
(3)运行完成后手动安装一下最新的libclang
sudo pip install libclang
(4)然后将~/code/parrot-groundsdk/products/olympe/linux/env/postinst文件修改的东西还原再运行一遍
以上步骤可以避免与libclang相关的多个错误
PS:为了避免其他古怪问题(比如缺少一些必要的包)建议手动安装所有可能需要的包(在以上办法无效时):
(1)pdraw的依赖项
sudo apt-get -y install build-essential yasm cmake libtool libc6 libc6-dev \
unzip freeglut3-dev libglfw3 libglfw3-dev libsdl2-dev libjson-c-dev \
libcurl4-gnutls-dev libavahi-client-dev libgles2-mesa-dev
(2) ffmpeg编译依赖项
sudo apt-get -y install rsync
(3)arsdk编译依赖项
sudo apt-get -y install cmake libbluetooth-dev libavahi-client-dev \
libopencv-dev libswscale-dev libavformat-dev \
libavcodec-dev libavutil-dev cython python-dev
(4)olympe编译依赖项
pip3 install clang
(5) olympe python runtime依赖项
pip3 install -r ~/code/parrot-groundsdk/packages/olympe/requirements.txt
echo "export PYTHONPATH=\$PYTHONPATH:~/code/parrot-groundsdk/out/olympe-linux/final/usr/lib/python/site-packages/" >> ~/code/parrot-groundsdk/products/olympe/linux/env/setenv
在~/code/parrot-groundsdk 路径下运行:
./build.sh -p olympe-linux -A all final -j
完成后在目录下尝试打开shell:
source ./products/olympe/linux/env/shell
在shell中输入并运行:
python -c 'import olympe; print("Installation OK")'
正常情况下可见输出 “Installation OK”,此时Olympe完成配置
3 Sphinx配置
设置电脑使之允许接收来自parrot服务器的数据包
echo "deb http://plf.parrot.com/sphinx/binary `lsb_release -cs`/" | sudo tee /etc/apt/sources.list.d/sphinx.list > /dev/null
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 508B1AE5
更新apt并下载安装包
sudo apt update
sudo apt install parrot-sphinx
完成后启动 firmwared.service
sudo systemctl start firmwared.service
对于我的ubuntu18.04,需要输入以下命令启动:
sudo firmwared
注意这一步是阻塞的,也就是说,启动后这个终端在你主动退出前将一直在运行,接下来的步骤需要再开一个新的终端
测试服务开启。
fdc ping
正常情况下可以收到"PONG"
接下来就可以启动仿真了,输入:
sphinx /opt/parrot-sphinx/usr/share/sphinx/drones/anafi4k.drone
anafi4k.drone是一个无人机模型,在路径 /opt/parrot-sphinx/usr/share/sphinx/drones下有好几个仿真文件可供选择
第一次运行会有一个提示:
照着他的指引输入指令就好。 (不起作用就重启)
4 参考网站
【Olympe】 :https://developer.parrot.com/docs/olympe/installation.html#installation