0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

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

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

ROS的簡單開發(fā)及其理解

麥辣雞腿堡 ? 來源:CSDN博客 ? 作者:lwlv ? 2023-11-21 17:55 ? 次閱讀

ROS初探

剛開始入手ROS的時(shí)候確認(rèn)有點(diǎn)麻煩,第一它運(yùn)行在Ubuntu環(huán)境。

不過還是用Ubuntu比較原生態(tài),而且Ubuntu系統(tǒng)免費(fèi),實(shí)時(shí)性也相對高點(diǎn)??赡苡械娜艘豢?a target="_blank">linux編程就望而卻步,其一沒Windows下的可視化操作方便,目錄結(jié)構(gòu)和文件屬性也很有差別;其二沒有宇宙第一強(qiáng)IDE Visual Studio,很多斷點(diǎn)調(diào)試都非常麻煩。

實(shí)際上關(guān)于Ubuntu系統(tǒng)的安裝教程網(wǎng)上有很多,實(shí)在不行可以在Windows下安裝虛擬機(jī)。

關(guān)于操作系統(tǒng)的使用,大多是以命令行或者腳本的形式進(jìn)行,《鳥哥的linux私房菜》這本書可以看看。

常用指令主要就那些(應(yīng)該不會有太多人再去深究指令背后的含義吧,這個(gè)就涉及到linux內(nèi)核了,越挖越深可能偏離方向了),再不懂的指令邊遇到邊查邊學(xué)也很快。

其實(shí)對于軟件開發(fā)人員,能寫腳本是一項(xiàng)很重要的技能,我發(fā)現(xiàn)老外都很喜歡用指令去操作,有很多大廠的開發(fā)在Windows下也做了很多腳本工具,進(jìn)行編譯、調(diào)試、測試等,它能批處理很多東西,減少很多重復(fù)性的事情,所以盡可能得學(xué)會多用指令或者腳本去操作。

安裝并大致了解完linux操作系統(tǒng),就可以安裝ROS了。

基本也是依葫蘆畫瓢地操作。不過在使用ROS前,可以在ROS官網(wǎng)上看看,了解一下ROS大概是怎么一回事。

為了更快得安裝ROS,我們一般會切換至國內(nèi)的鏡像源比如清華大學(xué)的。ROS的安裝大概需要半個(gè)多小時(shí),安裝完后便可以開始ROS之旅了。

不過在開始之前,我們還可以再細(xì)想一些問題,比如/etc/apt/sources.list是干啥的,下載的安裝包都去哪了?/etc/apt/sources.list 是包管理工具 apt 所用的記錄軟件包倉庫位置的配置文件,同樣的還有位于 /etc/apt/sources.list.d/*.list 的各文件。

通過apt-get命令下載的軟件包,會放在/var/cache/apt/archives 目錄下。而deb格式是Debian系統(tǒng)(包含Debian和Ubuntu)專屬安裝包格式,配合APT軟件管理系統(tǒng),是Linux下非常流行的一種安裝包。

ROS的簡單開發(fā)及其理解

ROS的初級之旅主要從ROS tutorial開始,幾乎也是依葫蘆畫瓢似的創(chuàng)建消息,廣播話題,寫服務(wù)等。市面上大部分教材、博客也是以這里為例并加以拓展。

關(guān)于代碼的編寫,有太多方式,最簡單粗暴的當(dāng)然是用記事本(gedit),但是為了方便跳轉(zhuǎn)和可讀性,wiki上還有專門介紹IDE的,選取一個(gè)自己喜歡的即可。

如果是C++編程,我比較推薦QtCreator,如何配置可參見《三種方法在ROS中加載Qt庫進(jìn)行GUI設(shè)計(jì)》;如果是Python編程,參見《在ROS中利用PyQt寫GUI程序》。關(guān)于這些配置我還是探索了比較久的時(shí)間。

如果自定義消息發(fā)布,保存加載參數(shù),寫服務(wù),用一些指令查看ROS狀態(tài)比如rostopic, rosnode, rosparam, rossrv, rosservice,用一些可視化小工具進(jìn)行分析、監(jiān)控比如rqt_graph, rqt_reconfigure, rqt_plot, rivz, rqt_console等,那么說明ROS的學(xué)習(xí)進(jìn)展得不錯(cuò)。

我相信每個(gè)人在使用編寫或使用上述工具的時(shí)候都會遇到不同的問題和坑,不過有問題不怕,關(guān)鍵是去解決它,并享受解決的過程。

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

    關(guān)注

    211

    文章

    28632

    瀏覽量

    208160
  • 操作系統(tǒng)
    +關(guān)注

    關(guān)注

    37

    文章

    6889

    瀏覽量

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

    關(guān)注

    1

    文章

    280

    瀏覽量

    17061
收藏 0人收藏

    評論

    相關(guān)推薦

    系統(tǒng)鏡像Ubuntu_ROS2中ROS2是什么意思,帶有ROS2開發(fā)環(huán)境嗎?

    請問一下,百度文庫資料里面,下圖所示的系統(tǒng)鏡像Ubuntu_ROS2中ROS2是什么意思,帶有ROS2開發(fā)環(huán)境嗎?與前面4GB版本的鏡像有什么區(qū)別?
    發(fā)表于 03-01 23:06

    簡單開關(guān)電源原理圖

    簡單開關(guān)電源原理圖,最好還有電路講解分析
    發(fā)表于 09-02 11:42

    簡單開關(guān)電源原理圖

    簡單開關(guān)電源原理圖,最好還有電路分析講解,幫忙重謝,可深入討論電路,謝謝
    發(fā)表于 09-02 11:43

    ROS2的安裝與使用 精選資料推薦

    ros2的烏龜仿真turtlesim,介紹topic,service,action等元素及其使用,介紹ros的基本操作
    發(fā)表于 08-30 08:24

    什么是ROS?ROS產(chǎn)生、發(fā)展和壯大的原因和意義

    機(jī)器人操作系統(tǒng)(ROS)入門(嵌入式系統(tǒng)應(yīng)用開發(fā))一、ROS 基本問題1. 什么是 ROS2. ROS 產(chǎn)生、發(fā)展和壯大的原因和意義二、安裝
    發(fā)表于 12-17 06:08

    求分享ESP8266的簡單開源引導(dǎo)加載程序

    ESP8266的簡單開源引導(dǎo)加載程序。
    發(fā)表于 05-22 09:37

    超出預(yù)期的漂亮:999入手紅米Note 4X黑色版,簡單開

    超出預(yù)期的漂亮:999入手紅米Note 4X黑色版,簡單開
    發(fā)表于 03-03 11:25 ?1682次閱讀

    如何通過NVIDIA ISAAC ROS GEMs

    在這篇文章中,我討論了如何使用 NVIDIA ISAAC ROS GEMs 加速機(jī)器人部署。解決方案的重點(diǎn)是使用nanosaur檢測 AprilTags ,這是一種基于 NVIDIA Jetson 平臺的簡單開源機(jī)器人。
    的頭像 發(fā)表于 04-15 16:42 ?2292次閱讀
    如何通過NVIDIA ISAAC <b class='flag-5'>ROS</b> GEMs

    帶有FTDI接頭的ESP8266簡單開發(fā)

    電子發(fā)燒友網(wǎng)站提供《帶有FTDI接頭的ESP8266簡單開發(fā)板.zip》資料免費(fèi)下載
    發(fā)表于 07-29 10:10 ?1次下載
    帶有FTDI接頭的ESP8266<b class='flag-5'>簡單開發(fā)</b>板

    單片機(jī)的上位機(jī)簡單開發(fā)(4)

    單片機(jī)的上位機(jī)簡單開發(fā)(4) 界面設(shè)計(jì)增加了外部的自定義溫度插件,chart圖表插件 1.自定義溫度插件 打開項(xiàng)目,右鍵單擊工具箱中任意一個(gè)控件,彈出右鍵菜單如下:單擊“選擇項(xiàng)”,彈出如下對話框
    發(fā)表于 05-10 11:12 ?0次下載
    單片機(jī)的上位機(jī)<b class='flag-5'>簡單開發(fā)</b>(4)

    單片機(jī)的上位機(jī)簡單開發(fā)(2)

    單片機(jī)的上位機(jī)簡單開發(fā)(2) 界面設(shè)計(jì)增加了GroupBox控件和radio按鈕,我們設(shè)置其默認(rèn)的enabled為false在連接串口之后enabled變?yōu)閠rue groupBox1
    發(fā)表于 05-10 09:36 ?0次下載
    單片機(jī)的上位機(jī)<b class='flag-5'>簡單開發(fā)</b>(2)

    ROS部署PaddlePaddle的CV模型

    paddle_inference_ros_demo功能包是基于paddle_inference_ros開發(fā)的,幫助開發(fā)者快速體驗(yàn)paddle_inference在
    的頭像 發(fā)表于 10-20 17:02 ?768次閱讀
    <b class='flag-5'>ROS</b>部署PaddlePaddle的CV模型

    ROS系統(tǒng)讀取USB相機(jī)圖像數(shù)據(jù)

    現(xiàn)在市面上最常見的還是USB攝像頭,物美價(jià)廉,要想使USB攝像頭在ROS下正常工作,我們就需要一個(gè)軟件包來支持,現(xiàn)在ROS下最常用的usb攝像頭軟件包就是usb_cam了,簡單理解該軟
    的頭像 發(fā)表于 10-29 11:26 ?842次閱讀
    <b class='flag-5'>ROS</b>系統(tǒng)讀取USB相機(jī)圖像數(shù)據(jù)

    ROS核心框架介紹

    ROS核心框架 對于第一個(gè)問題,我也沒仔細(xì)研究過源碼,核心代碼基本由python和C++組成,運(yùn)用了xmlrpc機(jī)制,每個(gè)運(yùn)行的節(jié)點(diǎn)可以理解成一個(gè)進(jìn)程。進(jìn)程間通訊有些是共享內(nèi)存的方式(比如
    的頭像 發(fā)表于 11-21 18:07 ?1041次閱讀
    <b class='flag-5'>ROS</b>核心框架介紹

    ros的基本概念是什么

    關(guān)系。 ROS Graph這里翻譯成了ROS網(wǎng)絡(luò),因?yàn)槲矣X得Graph更加抽象,而網(wǎng)絡(luò)的概念更容易幫助理解其內(nèi)涵。 ROS網(wǎng)絡(luò)(ROS Gr
    的頭像 發(fā)表于 11-27 11:21 ?1872次閱讀

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會員交流學(xué)習(xí)
    • 獲取您個(gè)性化的科技前沿技術(shù)信息
    • 參加活動獲取豐厚的禮品