micro_ros配置记录
Published: Post views:micro_ros配置记录
参考:https://github.com/micro-ROS/micro_ros_setup
https://manzurmurshid.medium.com/how-to-connect-teensy-3-2-with-micro-ros-and-ros2-foxy-6c8f99c9b66a
https://fishros.org.cn/forum/topic/20/%E5%B0%8F%E9%B1%BC%E7%9A%84%E4%B8%80%E9%94%AE%E5%AE%89%E8%A3%85%E7%B3%BB%E5%88%97
0. 安装环境
- ubuntu20.04
- ros2 foxy
- 下位机:M5stack Atom Lite(ESP32 core)
- 网络环境:务必能够访问github,最好科学上网
- git(必备)
- rosdep(必备),可使用
wget http://fishros.com/install -O fishros && . fishros
安装针对国内用户的rosdepc
1. micro_ros安装
- 首先source一下ros2的环境
source /opt/ros/$ROS_DISTRO/setup.bash
- 新建文件夹,并拉取代码
mkdir microros_ws
cd microros_ws
git clone -b $ROS_DISTRO https://github.com/micro-ROS/micro_ros_setup.git src/micro_ros_setup
- 更新软件源并安装所需依赖
sudo apt update && rosdep update
rosdep install --from-path src --ignore-src -y
- 若无pip,安装pip
sudo apt-get install python3-pip
- 进行编译
colcon build
source install/local_setup.bash
- 编译成功后,创建ros agent
ros2 run micro_ros_setup create_agent_ws.sh
-
编译ros agent
ros2 run micro_ros_setup build_agent.sh source install/local_setup.bash
- 报图中这样的命令是正常的;
- 至此,ros2中的操作告一段落;
2. micro_ros_arduino安装
首先安装arduino IDE,自行解决。。。
我这里采用的是M5 stack Atom Lite的开发板,是基于esp32的芯片,也可以用arduino框架来开发,所以下位机程序就基于arduino了
这里有基于不同框架的micro_ros嵌入式对应的代码:https://github.com/orgs/micro-ROS/repositories
-
下载micro_ros_arduino代码
在这个链接https://github.com/micro-ROS/micro_ros_arduino/releases
下载对应ros2版本的代码zip压缩文件,比如我用的foxy,那么下载v2.0.5-foxy
-
在arduino中添加下载的zip文件:
-
在示例中找到micro_ros_arduino,里面有很多example code,这里以publisher为例:
-
编译并上传
3. 下位机连接上位机
- 将下位机硬件连接到上位机,采用lsusb命令观察是否正确连接,我这里正确识别了下位机M5 stack Atom Lite
-
确保连接成功的前提下,首先给usb串口提升读写权限:
sudo chmod -R 777 /dev/ttyUSB0
-
不给usb串口提权限的话,会报下面的错
-
然后在ubuntu ros2中,首先source一下ros环境,再source一下安装的micro_ros_agent的环境
-
正式运行micro-agent:
ros2 run micro_ros_agent micro_ros_agent serial --dev /dev/ttyUSB0
-
运行成功是这样的:
此时,按一下下位机的复位or重启按钮
-
重新打开一个终端,source一下环境。然后运行
ros2 topic list
,出现了下位机程序中的publisher相关的topic -
利用ros2 topic echo打印publisher发布的内容:
-
至此,micro_ros的环境就算配置完成了。
Categories: 机器人技术
Comments