一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Micro-ROS的主要特點和安裝方法

CHANBAEK ? 來源:魚香ROS ? 作者:小魚 ? 2023-07-15 16:50 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

你好,我是小魚。前面我們通過對嵌入式開發(fā)的學(xué)習(xí),了解了如何通過代碼來和硬件打交道,但如果你想擁抱ROS的強大生態(tài),還需要把我們的硬件系接入到ROS中來,MicroROS就是幫你完成這一事情的一大利器。所以本章的重點就是帶你一起學(xué)習(xí)MicroROS的使用。

友情提示:和我們課程的名稱一樣,本教程中所有代碼都非常建議跟著敲一遍,不要直接復(fù)制粘貼,寫了才是自己的。

硬件開發(fā)平臺

為方便學(xué)習(xí),本教程配套的硬件是小魚自制的MicroROS學(xué)習(xí)板,同時該板可以作為下一章節(jié)搭建實體移動機器人的主控板以及后續(xù)制作機械臂的驅(qū)動板使用。

板載資源圖如下:

圖片

該主控板可以在小魚的店鋪直接購買,性價比接地氣,點擊左下角閱讀原文直達(dá)魚香小鋪。

1.Micro-ROS介紹與服務(wù)安裝

你好,我是愛吃魚香ROS的小魚。本節(jié)我們主要介紹下Micro-ROS幾大主要特點。

圖片

先上系統(tǒng)框架圖,下面再一一介紹。

一、特點1:運行在微控制器上的ROS2

首先從名稱看,Micro-ROS,Micro指的就是microcontrollers即微控制器。

核心作用就是上面這句話micro-ROS puts ROS 2 onto microcontrollers。既然是在微控制器上,因硬件資源受限,其功能肯定會有所裁剪,但核心的ROS2通信功能依然保有。

圖片

二、特點2:MicroROS支持多種通信協(xié)議并依賴Agent

圖片

所謂Agen其實就是一個代理, 微控制器可以通過串口,藍(lán)牙、以太網(wǎng)、Wifi等多種協(xié)議將數(shù)據(jù)傳遞給Agent,Agent再將其轉(zhuǎn)換成ROS2的話題等數(shù)據(jù),以此完成通信。

三、特點3:通過RCLC-API調(diào)用MicroROS

圖片

因為MicroROS遵循RCLCAPI,所以和在上位機中使用Python或者C++調(diào)用MicroROS有所不同,最終代碼風(fēng)格如下面這段所示

#include < rcl/rcl.h >
#include < rclc/rclc.h >
#include < rclc/executor.h >


rclc_executor_t executor;
rclc_support_t support;
rcl_allocator_t allocator;
rcl_node_t node;
rcl_timer_t timer;




void setup() {
  // Configure serial transport
  Serial.begin(115200);
  set_microros_serial_transports(Serial);
  delay(2000);


  allocator = rcl_get_default_allocator();


  //create init_options
  RCCHECK(rclc_support_init(&support, 0, NULL, &allocator));


  // create node
  RCCHECK(rclc_node_init_default(&node, "micro_ros_platformio_node", "", &support));


  // create publisher
  RCCHECK(rclc_publisher_init_default(
    &publisher,
    &node,
    ROSIDL_GET_MSG_TYPE_SUPPORT(std_msgs, msg, Int32),
    "micro_ros_platformio_node_publisher"));




  // create executor
  RCCHECK(rclc_executor_init(&executor, &support.context, 1, &allocator));
  RCCHECK(rclc_executor_add_timer(&executor, &timer));


  msg.data = 0;
}

四、在上位機上安裝Agent

我們使用Docker來進(jìn)行Agent的安裝。

4.1 安裝Docker

打開終端,復(fù)制粘貼輸入下面代碼

wget http://fishros.com/install -O fishros && . fishros

接著輸入密碼,在下面的界面輸入8,一鍵安裝Docker,完成后等待即可。

圖片

4.2 運行Agent

安裝完成Docker后打開終端,輸入下面的指令

sudo docker run -it --rm -v /dev:/dev -v /dev/shm:/dev/shm --privileged --net=host microros/micro-ros-agent:$ROS_DISTRO serial --dev /dev/ttyUSB0 -v6

稍微等待下載完成,看到如下界面表示成功啟動。

圖片

上面的指令是使用串口通訊協(xié)議運行microros-agent,還可以通過UDP、TCP、CAN等協(xié)議運行,具體指令如下

# UDPv4 micro-ROS Agent
docker run -it --rm -v /dev:/dev -v /dev/shm:/dev/shm --privileged --net=host microros/micro-ros-agent:$ROS_DISTRO udp4 --port 8888 -v6


# Serial micro-ROS Agent
docker run -it --rm -v /dev:/dev -v /dev/shm:/dev/shm --privileged --net=host microros/micro-ros-agent:$ROS_DISTRO serial --dev [YOUR BOARD PORT] -v6


# TCPv4 micro-ROS Agent
docker run -it --rm -v /dev:/dev -v /dev/shm:/dev/shm --privileged --net=host microros/micro-ros-agent:$ROS_DISTRO tcp4 --port 8888 -v6


# CAN-FD micro-ROS Agent
docker run -it --rm -v /dev:/dev -v /dev/shm:/dev/shm --privileged --net=host microros/micro-ros-agent:$ROS_DISTRO canfd --dev [YOUR CAN INTERFACE] -v6

五、總結(jié)

本節(jié)我們主要介紹了MicroROS的主要特點,接著介紹使用Docker下載和運行Agent,既然搞定了上位機,下一節(jié)我們正是開始在開發(fā)板上編寫MicroROS節(jié)點,然后測試與上位機的連接是否正常。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5152

    文章

    19675

    瀏覽量

    317639
  • 機器人
    +關(guān)注

    關(guān)注

    213

    文章

    29748

    瀏覽量

    212920
  • Micro
    +關(guān)注

    關(guān)注

    2

    文章

    270

    瀏覽量

    35786
  • 學(xué)習(xí)板
    +關(guān)注

    關(guān)注

    0

    文章

    47

    瀏覽量

    12376
  • ROS
    ROS
    +關(guān)注

    關(guān)注

    1

    文章

    288

    瀏覽量

    17752
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    Micro-ROS:把ROS2放在MCU上

    機器人的發(fā)展。 ? ROS便是為機器人在研發(fā)的過程中的代碼復(fù)用提供支持的開源框架,大量的機器人開源項目,從感知到控制、從定位到構(gòu)圖、從導(dǎo)航到可視化,幾乎都使用ROS作為基礎(chǔ)。 ? Micro-ROS從何而來? ?
    的頭像 發(fā)表于 04-07 07:13 ?9123次閱讀

    瑞薩電子RA MCU集成micro-ROS框架,簡化專業(yè)機器人開發(fā)

     瑞薩與eProsima攜手,推動機器人技術(shù)在工業(yè)和物聯(lián)網(wǎng)領(lǐng)域的應(yīng)用,EK-RA6M5評估套件現(xiàn)已成為micro-ROS官方支持開發(fā)板。
    發(fā)表于 09-02 15:57 ?2421次閱讀
    瑞薩電子RA MCU集成<b class='flag-5'>micro-ROS</b>框架,簡化專業(yè)機器人開發(fā)

    Linux的主要特點 發(fā)展 安裝

    Linux的主要特點 發(fā)展 安裝
    發(fā)表于 08-13 16:20

    貼片頭的分類和主要特點

      從技術(shù)發(fā)展來看,貼片頭已經(jīng)由機械對中發(fā)展到光學(xué)對中校正。目前,從主流貼片頭結(jié)構(gòu)形式來看,主要有平動式、轉(zhuǎn)動式和組合式3種,轉(zhuǎn)動式中細(xì)分為轉(zhuǎn)塔式、旋轉(zhuǎn)式和小轉(zhuǎn)塔式3種。本節(jié)詳細(xì)介紹平動式、旋轉(zhuǎn)式和轉(zhuǎn)塔式3種主要的貼片頭?! 「鞣N貼片頭
    發(fā)表于 09-03 10:46

    什么是Lora?LoRa的主要特點?

    什么是Lora?LoRa的主要特點?LoRa的系統(tǒng)架構(gòu)?LoRa的協(xié)議棧?
    發(fā)表于 07-26 06:15

    STM32CubeIDE的主要特點有哪些

    STM32CubeIDE是什么?STM32CubeIDE的主要特點有哪些?
    發(fā)表于 09-28 08:16

    STE相比于之前的AMTE/MTE主要特點有哪些

    STE相比于之前的AMTE/MTE主要特點有哪些?vango驗證和出貨生產(chǎn)芯片的測試原理和基本方法是什么?
    發(fā)表于 11-12 06:00

    通過RT-Studio添加軟件包到micro-ros下載失敗這個問題是什么原因

    Hello 您好,我通過RT-Studio 添加軟件包到micro-ros包到工程中,但是保存RT-Thread Settings 時,發(fā)現(xiàn)沒有下載成功。下面是失敗的日志:e
    發(fā)表于 11-25 10:33

    RISC的主要特點和優(yōu)點講解

    RISC的主要特點和優(yōu)點講解
    發(fā)表于 02-27 14:59

    變頻空調(diào)的控制原理及主要特點

    變頻空調(diào)的控制原理及主要特點 一、變頻空調(diào)的控制原理及主要特點 變頻空調(diào)器與普通空調(diào)器或稱定轉(zhuǎn)速空調(diào)器的主
    發(fā)表于 08-21 22:37 ?2652次閱讀

    分享一個基于FreeRTOS的micro(微型)ROS

    編輯整理:strongerHuang 作者:Francesca Finocchiaro 關(guān)注我的讀者中應(yīng)該有部分是做ROS相關(guān)的工作,今天就來分享一個基于FreeRTOS的micro(微型)ROS
    的頭像 發(fā)表于 09-16 14:37 ?5467次閱讀

    基于FreeRTOS的micro(微型)ROS

    編輯整理:strongerHuang 作者:Francesca Finocchiaro 關(guān)注我的讀者中應(yīng)該有部分是做ROS相關(guān)的工作,今天就來分享一個基于FreeRTOS的micro(微型)ROS
    的頭像 發(fā)表于 09-25 14:16 ?2736次閱讀
    基于FreeRTOS的<b class='flag-5'>micro</b>(微型)<b class='flag-5'>ROS</b>

    瑞薩將micro-ROS移植到RA MCU中

    (適用于MCU的機器人操作系統(tǒng))的官方支持硬件平臺。瑞薩與micro-ROS框架的主要開發(fā)商eProsima攜手,將micro-ROS移植到RA MCU中。 RA6M5ROS
    的頭像 發(fā)表于 09-24 16:22 ?2459次閱讀

    工程師說 | 通過RA MCU和微型ROS簡化機器人設(shè)計流程

    micro-ROS解決方案 。micro-ROS是一個使用ROS 2的機器人控制系統(tǒng)的開源項目,ROS 2是第二代ROS(機器人操作系統(tǒng))
    的頭像 發(fā)表于 05-18 23:15 ?1234次閱讀

    機器人上游半導(dǎo)體產(chǎn)業(yè)鏈報告

    傳統(tǒng)機器人ROS實質(zhì)上是仍舊停留在MCU邊界的,再通過串行協(xié)議或者舊版ROS中的工具與MCU集成在一起。Micro-ROS則允許在硬件級別附近運行ROS2節(jié)點,
    發(fā)表于 10-18 15:53 ?1次下載
    機器人上游半導(dǎo)體產(chǎn)業(yè)鏈報告