Turtlebot3入门教程-OpenCR软件设置
Turtlebot3入门教程-OpenCR软件设置
说明:
- 介绍OpenCR软件设置
- 默认下OpenCR已经做了固件烧录,如果不是升级或更新固件,可以跳过此步
OpenCR
- OpenCR根据SBC的指令控制Dynamixels。为此,应在板中构建特定的固件。请参阅说明并配置设置。
OpenCR的ArduinoIDE设置
- 按照说明在远程PC上获得OpenCR Arduino开发环境
USB端口设置
- 使OpenCR USB端口能够在没有root权限的情况下上传Arduino IDE程序。
- 执行如下命令:
wget https://raw.githubusercontent.com/ROBOTIS-GIT/OpenCR/master/99-opencr-cdc.rules
sudo cp ./99-opencr-cdc.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules
sudo udevadm trigger
编译器设置
- 由于OpenCR库是为32位平台构建的,64位PC需要用于Arduino IDE的32位编译器相关内容:
- 执行如下命令:
sudo apt-get install libncurses5-dev:i386
安装Arduino IDE
- OpenCR需Arduino IDE 1.16.0及之后的版本
- 从官方的arduino主页下载最新版本,地址:https://www.arduino.cc/en/Main/Software
- 将下载的文件解压缩到所需的文件夹比如用户的根目录下tools,并从终端执行安装文件。如下:
mkdir ~/tools
wget https://www.arduino.cc/download_handler.php?f=/arduino-1.8.3-linux64.tar.xz
cd ~/tools/arduino-1.16.0
./install.sh
- 增加路径到环境中:
gedit ~/.bashrc
export PATH=$PATH:$HOME/tools/arduino-1.16.0
source ~/.bashrc
运行Arduino IDE
- 在linux下,新终端执行:
arduino
- 或直接运行
~/tools/arduino-1.16.0/arduino
- 图示:
将OpenCR板移植到Arduino IDE
(1)增加Boards Manager
- 运行IDE,点击File → Preferences, 复制如下内容到Additional Boards Manager URLs:
https://raw.githubusercontent.com/ROBOTIS-GIT/OpenCR/master/arduino/opencr_release/package_opencr_index.json
- 如图:
(2)通过Boards Manager安装OpenCR软件包
- 点击Tools → Board → Boards Manager.
- 图示:
- 在文本框中键入OpenCR以查找包。找到OpenCR by ROBOTIS后,点击Install.
- 图示:
- 安装后,将显示“INSTALLED”
- 图示:
- OpenCR Board列在Tools → Board 中。
- 图示:
- 注意:可能第一次会下载会不成功,可以先安装老版本,在安装新版本。
(3)端口设置
- 此步骤显示程序上传的端口设置。
- OpenCR应通过USB端口连接到PC和OpenCR板。
- 选择Tools → Port → /dev/ttyACM0.
- 图示:
- /dev/ttyACM0的值可能会根据不同PC环境有差异。
更新Bootloader
- 默认不需要刷bootloader,出厂已经刷好。
(1)Bootloader写入
- STM32F7xx用于OpenCR板上的主MCU,支持DFU(设备固件升级)
- 这使MCU的内置引导加载程序本身能够通过使用USB引导DFU协议,主要用于引导加载程序初始化,恢复模式和引导加载程序更新
- 最大的优点是让用户能够使用USB引导加载程序,无需其他JTAG设备
- 使用嵌入在MCU中的DFU模式写入固件,而无需编写/调试设备,例如STLink。
(2)Programmer 设置
- 选择Tools → DFU-UTIL
- 图示:
(3)运行DFU模式
按下Boot键再按一下Reset同时,就能激活DFU模式
图示:
可以查看lsusb,有DFU字样显示
(4)下载bootloader
- 点击Tools → Burn Bootloader
- 图示:
OpenCR烧录ROS固件
将TurtleBot3固件添加到OpenCR中
用于ROS的OpenCR固件(或源)是控制ROS中的Dynamixel和传感器。
固件位于OpenCR示例中,也由board manager下载。
初级版本:点击File → Examples → turtlebot3 → turtlebot_basic → turtlebot3_core
高级版本:点击File → Examples → turtlebot3 → turtlebot_premium → turtlebot3_core
点击Upload上传到OpenCR板
图示:
- 出现jump_to_fw字样代表烧录成功了。
获取最新文章: 扫一扫右上角的二维码加入“创客智造”公众号