micro_ros配置记录

Published: less than 1 minute read, with 127 words. 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
    

image-20220712132926096.png

  • 报图中这样的命令是正常的;
  • 至此,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文件:

    image-20220712135225273

  • 在示例中找到micro_ros_arduino,里面有很多example code,这里以publisher为例:

    image-20220712135350815

  • 编译并上传

3. 下位机连接上位机

  • 将下位机硬件连接到上位机,采用lsusb命令观察是否正确连接,我这里正确识别了下位机M5 stack Atom Lite

image-20220712135548613

  • 确保连接成功的前提下,首先给usb串口提升读写权限:

    sudo chmod -R 777 /dev/ttyUSB0
    
  • 不给usb串口提权限的话,会报下面的错

    image-20220712135928257

  • 然后在ubuntu ros2中,首先source一下ros环境,再source一下安装的micro_ros_agent的环境

  • 正式运行micro-agent:

    ros2 run micro_ros_agent micro_ros_agent serial --dev /dev/ttyUSB0
    
  • 运行成功是这样的:

  • image-20220712140011702

此时,按一下下位机的复位or重启按钮

  • 重新打开一个终端,source一下环境。然后运行ros2 topic list,出现了下位机程序中的publisher相关的topic

    image-20220712140130020

  • 利用ros2 topic echo打印publisher发布的内容:

  • image-20220712140236157

    至此,micro_ros的环境就算配置完成了。


Tags: , ,

Categories:

Comments