91在线观看视频-91在线观看视频-91在线观看免费视频-91在线观看免费-欧美第二页-欧美第1页

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

ZMC900E控制器之ROS2環境安裝指南

ZLG致遠電子 ? 2024-04-29 08:24 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

ZMC900E是致遠電子研發的最新一代高性能EtherCAT控制器,支持ROS2系統,兼備強大功能和實時性,為工業應用帶來新的可能。本文將詳述ROS2特點和安裝,助力用戶在機器人上的二次開發和應用。

圖1ZMC900E高性能EtherCAT主站控制器

ZMC900E是ZLG致遠電子開發的最新一代EtherCAT主站控制器,其核心采用多核異構的應用處理器,內核包括4+1個64位的ArmCortex-A55核,主頻2GHz;3個Cortex-R5F內核,主頻800MHz。同時板載4GB LPDDR4、8GB eMMC以及32KB FRAM。

ZMC900EEtherCAT主站控制器為了滿足不同的自動化應用需求,集成1路專用EtherCAT口、3路通用以太網、1路CANFD、1路RS485、1路TF卡、1路USB3.0 Host、1路HDMI接口、16路Dl數字輸入、16路DO數字輸出等接口,靈活滿足自動化設備應用需求。

e84fa194-05be-11ef-9118-92fbcf53809c.jpg

圖2ZMC900E接口

ROS因其強大的功能而備受機器人應用開發者的歡迎,而新一代的ROS2更具有產品化特性,結合新一代高性能的ZMC900E EtherCat控制器將給工業應用帶來更多想象力。下面就詳細介紹ROS特性以及ROS2在ZMC900E上的安裝步驟。

e86c9fba-05be-11ef-9118-92fbcf53809c.jpg ?ROS是什么?

ROS(Robot Operating System),這一為機器人軟件程序編寫的軟件架構,展現了其獨特的靈活性。其起源可追溯到斯坦福大學的STanford Artificial Intelligence Robot(STAIR)與Personal Robotics(PR)項目,象征著機器人領域的創新與探索。
在機器人行業,工業界與學術界在軟件工具的使用上呈現出截然不同的態度。工業界傾向于構建封閉的生態系統和設置高技術壁壘,以保護其核心優勢。而學術界則更偏向于擁抱開源社區,選擇現有的工具進行研發,其中,ROS便是學術界廣受歡迎的開源工具。自2010年首個ROS版本發布以來,它基于PR2機器人構建了一系列基礎軟件包,并不斷進行迭代更新。隨著Ubuntu系統長期支持(LTS)版本的演進,ROS也逐步升級,目前最新的版本已經與Ubuntu 20.04 LTS完美兼容。盡管ROS的CI測試主要在Ubuntu上進行,但社區成員的努力使得ROS在其他Linux版本、Mac OS X、Android、Windows等平臺上也具備一定的兼容性,盡管功能支持可能受到一些限制。e8741844-05be-11ef-9118-92fbcf53809c.png圖3ROS軟件集合

e87831ea-05be-11ef-9118-92fbcf53809c.jpg ?ROS的的優缺點分析

ROS作為一種廣泛使用的機器人軟件架構,為開發者提供了許多便利,但同時也存在一些明顯的問題和挑戰。以下是對ROS的優缺點進行的分析:

1. 優點

  • 松散耦合的機制提供框架:ROS采用了一種松散耦合的設計,使得各個組件之間的通信更加靈活和方便。這種設計使得開發者可以根據需要輕松地添加、刪除或修改功能,而無需對整個系統進行大規模的修改。
  • 豐富的機器人功能庫:ROS提供了大量的機器人功能庫,涵蓋了感知、導航、控制、定位、建圖等多個方面。這些庫為開發者提供了豐富的資源,可以加速機器人應用的開發進程。
  • 龐大的用戶群體:ROS在機器人領域擁有龐大的用戶群體,這意味著開發者可以更容易地找到幫助、解決問題和分享經驗。同時,這也促進了ROS社區的發展,使得ROS不斷完善和進步。

  • 免費開源:ROS是一個開源項目,這意味著任何人都可以免費地使用其中的代碼、庫和工具。這為開發者提供了更多的選擇和靈活性,同時也促進了機器人技術的普及和發展。

  • 便利的數據記錄、分析、仿真工具:ROS提供了一系列的數據記錄、分析和仿真工具,使得開發者可以更方便地進行機器人系統的測試、調試和優化。

2. 缺點:

  • 通信實時性能有限:由于ROS的通信機制是基于消息的發布/訂閱模式,因此在實際應用中可能會遇到實時性能有限的問題。特別是在高負載或復雜場景下,通信延遲和丟包等問題可能會影響系統的性能。
  • 系統穩定性尚不滿足工業級要求:雖然ROS在學術界和科研領域得到了廣泛應用,但在工業級應用中,其系統穩定性仍然存在一定的不足。這主要是因為ROS在設計時更多地考慮了靈活性和可擴展性,而在穩定性方面的考慮相對較少。
  • 安全性上沒有防護措施:ROS的安全性是另一個值得關注的問題。由于ROS是一個開源項目,缺乏統一的安全標準和防護措施,因此在實際應用中可能會面臨一定的安全風險。例如,惡意攻擊者可能會利用ROS的漏洞進行攻擊或破壞。
  • 僅支持Linux(Ubuntu):雖然ROS在Linux系統上得到了廣泛的支持和應用,但這也限制了其在其他操作系統上的使用。這可能會使得一些開發者在選擇ROS時面臨一些挑戰和限制。
  • 核心機制的性能沒有優化占用資源:ROS的核心機制在某些情況下可能存在性能瓶頸和資源占用過高的問題。這可能會影響系統的整體性能和效率,尤其是在資源有限的嵌入式系統或移動機器人上。


e87831ea-05be-11ef-9118-92fbcf53809c.jpg ?ROS2:推動ROS進入產業化與產品化時代ROS在學術界和科研領域取得了顯著的成就。然而,對于工業界和產業應用而言,原始的ROS版本(即ROS1)存在一些明顯的不足,阻礙了其真正的產業化與產品化進程。為了解決這些問題,ROS社區推出了ROS2,一個更為成熟、穩定和適應產業化需求的版本。1. 實時化與分布式通信

ROS2的核心改進之一是實現了實時化和分布式通信。在ROS1中,所有的節點通信都依賴于一個中心化的Master節點。這意味著如果Master節點發生故障,整個系統的通信將中斷,導致所有節點功能失效。這種設計限制了ROS1在需要高可靠性和穩定性的工業環境中的應用。

e884bd2a-05be-11ef-9118-92fbcf53809c.png

圖4ROS1和ROS2比較

為了克服這一挑戰,ROS2引入了Data Distribution Service(DDS)作為其通信基礎。DDS是一種廣泛應用于國防、民航、工業控制等領域的實時系統數據發布/訂閱標準解決方案。通過DDS,ROS2實現了去中心化的通信方式,允許節點之間進行直接通信,無需依賴于Master節點。這種分布式通信方式不僅提高了系統的可靠性和穩定性,還有助于解決多機器人系統中的通信問題。

2. 適應全平臺與低性能硬件

除了實時化和分布式通信外,ROS2還致力于提高其對不同平臺和硬件的適應性。在ROS1中,由于其對特定操作系統(如Ubuntu)的依賴,使得其在其他平臺上的應用受到限制。而ROS2則致力于實現跨平臺兼容性,支持更多的操作系統和硬件平臺。此外,ROS2還針對低性能硬件(如MCU+RTOS)進行了優化。這意味著在資源有限的嵌入式系統或移動機器人上,ROS2仍然能夠保持良好的性能和效率。3. 數據加密與現代編程語言支持

在數據安全方面,ROS2引入了數據加密機制,確保通信過程中的數據安全性。這一特性對于需要高度安全保護的工業應用至關重要。

同時,ROS2還支持現代編程語言,如C++Python。這使得開發者能夠使用更加高效和靈活的編程工具來開發機器人應用。

通過引入實時化、分布式通信、跨平臺兼容性、低性能硬件適應性、數據加密以及現代編程語言支持等特性,ROS2為機器人技術的產業化與產品化奠定了堅實的基礎。隨著ROS2的不斷發展和完善,我們有理由相信它將在未來的機器人領域中發揮更加重要的作用。

e87831ea-05be-11ef-9118-92fbcf53809c.jpg ?ROS2環境安裝ZMC900E支持ROS2的開發,本地安裝的系統是Ubuntu 18.04,可以安裝對應的eloquent版本的ROS2。依次按以下步驟操作。1. 更換apt源

sudo cp -a /etc/apt/sources.list /etc/apt/sources.list.baksudo vi /etc/apt/sources.list

2. 替換成以下內容

deb http://mirrors.huaweicloud.com/ubuntu-ports/ bionic main multiverse restricted universedeb http://mirrors.huaweicloud.com/ubuntu-ports/ bionic-backports main multiverse restricted universedeb http://mirrors.huaweicloud.com/ubuntu-ports/ bionic-proposed main multiverse restricted universedeb http://mirrors.huaweicloud.com/ubuntu-ports/ bionic-security main multiverse restricted universedeb http://mirrors.huaweicloud.com/ubuntu-ports/ bionic-updates main multiverse restricted universedeb-src http://mirrors.huaweicloud.com/ubuntu-ports/ bionic main multiverse restricted universedeb-src http://mirrors.huaweicloud.com/ubuntu-ports/ bionic-backports main multiverse restricted universedeb-src http://mirrors.huaweicloud.com/ubuntu-ports/ bionic-proposed main multiverse restricted universedeb-src http://mirrors.huaweicloud.com/ubuntu-ports/ bionic-security main multiverse restricted universedeb-src http://mirrors.huaweicloud.com/ubuntu-ports/ bionic-updates main multiverse restricted universe

3.安裝aptitude包

sudo apt update && sudo apt install aptitude

4. 設置語言環境

sudo apt update && sudo apt install localessudo locale-gen en_US en_US.UTF-8sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 export LANG=en_US.UTF-8

5. 需要將ROS2apt存儲庫添加到系統中,為此,首先使用apt授權GPG密鑰

sudo apt update && sudo apt install curl gnupg2 lsb-releasecurl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -

6. 然后將存儲庫添加到源列表

sudo sh -c 'echo "deb [arch=$(dpkg --print-architecture)] http://packages.ros.org/ros2/ubuntu $(lsb_release -cs) main" > /etc/apt/sources.list.d/ros2-latest.list'

7.安裝ROS2軟件包,設置存儲庫后,更新apt存儲庫緩存,安裝桌面版

sudo apt update && sudo aptitude install ros-eloquent-desktop

注:安裝過程可能出現問題。

問題1:

GPGerror:http://packages.ros.org/ros2/ubuntubionicInRelease:Thefollowingsignaturescouldn'tbeverifiedbecausethepublickeyisnotavailable:NO_PUBKEYF42ED6FBAB17C654

方案1:

sudoapt-keyadv--keyserverkeyserver.ubuntu.com--recv-keysF42ED6FBAB17C654

經過上述操作, eloquent版ROS2安裝完成。


e87831ea-05be-11ef-9118-92fbcf53809c.jpg ?ROS2測試

在終端中,更新配置文件,運行talker:

source /opt/ros/eloquent/setup.bashros2rundemo_nodes_cpptalker

在另一個終端中,更新配置文件,運行listener:

source /opt/ros/eloquent/setup.bashros2 run demo_nodes_py listener

可以看到talker發布Publishing消息,同時listener接收并告知I heard消息, 如下圖所示,說明安裝成功。e893a72c-05be-11ef-9118-92fbcf53809c.png

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 控制器
    +關注

    關注

    114

    文章

    17113

    瀏覽量

    184371
  • 機器人
    +關注

    關注

    213

    文章

    29748

    瀏覽量

    212952
  • ROS
    ROS
    +關注

    關注

    1

    文章

    288

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    迅為RK3576開發板NPUrknn-toolkit2環境搭建和使用docker環境安裝

    迅為RK3576開發板NPUrknn-toolkit2環境搭建和使用docker環境安裝
    的頭像 發表于 06-18 15:22 ?503次閱讀
    迅為RK3576開發板NPUrknn-toolkit<b class='flag-5'>2</b><b class='flag-5'>環境</b>搭建和使用docker<b class='flag-5'>環境</b><b class='flag-5'>安裝</b>

    迅為RK3576開發板NPU例程測試-rknn-toolkit2環境搭建和使用

    迅為RK3576開發板NPU例程測試-rknn-toolkit2環境搭建和使用
    的頭像 發表于 06-17 13:46 ?533次閱讀
    迅為RK3576開發板NPU例程測試-rknn-toolkit<b class='flag-5'>2</b><b class='flag-5'>環境</b>搭建和使用

    ros2教程

    電子發燒友網站提供《ros2教程.pdf》資料免費下載
    發表于 05-23 09:12 ?1次下載

    如何使用VSCode+gdbserver遠程調試ZMC900E

    由于嵌入式設備資源受限,通常無法在其上安裝龐大的IDE調試程序,且許多嵌入式系統并無桌面環境。為了方便調試自開發程序,本文介紹利用VSCode與gdbserver進行嵌入式設備上程序的遠程調試方法
    的頭像 發表于 05-22 11:40 ?227次閱讀
    如何使用VSCode+gdbserver遠程調試<b class='flag-5'>ZMC900E</b>

    不借助Linux系統,在Windows下如何搭建ZMC900E交叉編譯環境

    不需要依賴笨重的虛擬機,也不需要安裝雙系統。拋開繁瑣的環境準備,在Windows上輕松搭建交叉編譯環境。本文將介紹如何在Windows上搭建交叉編譯環境,不借助Linux系統,直接進行
    的頭像 發表于 05-21 11:34 ?251次閱讀
    不借助Linux系統,在Windows下如何搭建<b class='flag-5'>ZMC900E</b>交叉編譯<b class='flag-5'>環境</b>

    【「# ROS 2智能機器人開發實踐」閱讀體驗】視覺實現的基礎算法的應用

    SLAM在結構化環境中更穩定,而視覺SLAM(如ORB-SLAM3)更適合動態場景。 SLAM Toolbox的實踐應用 SLAM Toolbox是ROS2中輕量級的SLAM解決方案,書中詳細介紹了其在
    發表于 05-03 19:41

    【「# ROS 2智能機器人開發實踐」閱讀體驗】+ROS2應用案例

    地圖構建,包括算法原理介紹、安裝與配置方法、仿真環境中的SLAM以及真實機器人上的SLAM。 這一過程不僅涉及到計算機視覺和機器人學的知識,還需要對ROS 2的節點管理和數據處理有一定
    發表于 04-27 11:42

    如何使用cubeide配置stm32H750環境

    如何使用cubeide配置stm32H750環境,但是在SYS中沒有debug選項,也就選不了serial wire
    發表于 04-23 07:55

    ZMC600E,多核異構如何成就機器人精準控制

    導讀ZMC600E主站控制器憑借其多核異構處理的強大性能,實現了高算力與高實時性的完美平衡,讓機器人動作流暢、精準無誤。接下來,讓我們深入了解其內核結構的奧秘。在ZMC600E主站
    的頭像 發表于 02-24 11:37 ?311次閱讀
    <b class='flag-5'>ZMC600E</b>,多核異構如何成就機器人精準<b class='flag-5'>控制</b>?

    簡單易用緊湊型總線運動控制器ZMC432M

    簡單易用的32軸總線運動控制器ZMC432M!助您輕松學握運動控制
    的頭像 發表于 01-21 11:04 ?287次閱讀
    簡單易用緊湊型總線運動<b class='flag-5'>控制器</b>:<b class='flag-5'>ZMC</b>432M

    ZMC600E運動控制器直線和圓弧插補算法詳解

    導讀想深入了解ZMC600E運動控制器的插補算法嗎?空間直線插補適用于精確定位,圓弧插補提供平滑曲線過渡。合理應用這些算法,能提升多軸協同能力,保障工作精度與可靠性,讓工業自動化更高效、更智能
    的頭像 發表于 01-20 11:39 ?584次閱讀
    <b class='flag-5'>ZMC600E</b>運動<b class='flag-5'>控制器</b>直線和圓弧插補算法詳解

    使用myCobot 280機械臂結合ROS2系統搭建機械分揀站

    這篇文章是來自Automatic Addison的開源項目,已獲作者授權轉載自github。本項目的主要內容是使用myCobot 280機械臂結合ROS2系統搭建機械分揀站。
    的頭像 發表于 01-15 09:22 ?815次閱讀
    使用myCobot 280機械臂結合<b class='flag-5'>ROS2</b>系統搭建機械分揀站

    在Mac上使用Docker構建noVNC環境并運行MyCobot

    這篇文章主要內容是關于如何在 Ros2 環境中構建在 Mac 上模擬 Mycobot 280 M5 的環境
    的頭像 發表于 01-15 09:17 ?789次閱讀
    在Mac上使用Docker構建noVNC<b class='flag-5'>環境</b>并運行MyCobot

    ZMC600E運動控制器T型、S型速度規劃詳解

    導讀想深入了解ZMC600E運動控制器的速度規劃嗎?T型線性加減速簡潔高效,S型過渡自然減震,避免沖擊。通過合理的規劃選擇,可有效提升設備精度、效率與性能。深入探索其核心,為工業自動化設備的控制賦能
    的頭像 發表于 12-30 11:40 ?614次閱讀
    <b class='flag-5'>ZMC600E</b>運動<b class='flag-5'>控制器</b>T型、S型速度規劃詳解

    使用OPT4003-Q1環境光傳感進行光源檢測

    電子發燒友網站提供《使用OPT4003-Q1環境光傳感進行光源檢測.pdf》資料免費下載
    發表于 08-28 09:31 ?1次下載
    使用OPT4003-Q1<b class='flag-5'>環境</b>光傳感<b class='flag-5'>器</b>進行光源檢測
    主站蜘蛛池模板: 小说老卫陈红张敏陈法蓉 | 黄网站色视频免费看无下截 | 成人黄网大全在线观看 | 久操视频在线播放 | 高清视频一区二区 | 在线看片地址 | 亚洲国产成人精品久久 | 中文字幕一区二区三区 精品 | 伊人久久大香线蕉综合bd高清 | 天天插一插| 三级黄色免费网站 | 天堂在线中文字幕 | 天天操国产| 九九热精品国产 | 91精品欧美激情在线播放 | 老师你好大好白好紧好硬 | 免费手机黄色网址 | 男女交性视频播放视频视频 | 老熟女一级毛片 | 一级毛片真人免费播放视频 | 色婷婷影视 | 国产成人综合自拍 | 黄色短视频免费观看 | aⅴ天堂 | 四虎国产精品永久在线看 | 深爱激情小说网 | 色视频大全 | 三级视频国产 | 亚洲精品美女久久久aaa | 五月婷婷激情网 | 国产剧情麻豆三级在线观看 | 五月天激情综合网 | 色视频在线网站 | 久久久综合色 | 国产精品欧美精品国产主播 | cijilu刺激 国产免费的 | 欧美性xxxx极品高清 | 射菊吧 | 色播欧美 | 靠比久久 | 性做久久久久久久免费观看 |