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

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

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

USB通信原理以及ROS2相機(jī)驅(qū)動(dòng)安裝

麥辣雞腿堡 ? 來(lái)源:古月居 ? 作者:古月居 ? 2023-11-24 15:38 ? 次閱讀

電腦上,我們最常用的接口之一,應(yīng)該就是USB了,相比之前講到的外設(shè)通信方法,USB更加復(fù)雜,速度也更快。

USB通信原理

USB不僅是我們生活中最常用的一種接口,也是一種串行總線的通訊方式。他類似于UART,有兩根線用來(lái)傳輸數(shù)據(jù)。

而且USB還有專門(mén)的接口規(guī)范,比如我們常聽(tīng)說(shuō)的USB Type A、Type C。例如這里列出來(lái)的USB口,打印機(jī)常用的B口,手機(jī)上用的C口,都是標(biāo)準(zhǔn)的USB接口。

USB的接口規(guī)范,使用廣泛,很多成熟的外設(shè)都是采用的USB接口。

攝像頭驅(qū)動(dòng)

比如USB攝像頭。

硬件接線

這里我們使用一個(gè)USB攝像頭,通過(guò)一個(gè)相機(jī)驅(qū)動(dòng)把它跑起來(lái),并且可以看到圖像數(shù)據(jù)。

方法有很多中,TogetherROS?·Bot兼容ROS2的所有功能,那我們就先試試ROS2中的標(biāo)準(zhǔn)方法,在旭日X3PI上直接安裝一個(gè)usb_cam功能包。

ROS2相機(jī)驅(qū)動(dòng)

安裝與配置

首先安裝ROS2的相機(jī)驅(qū)動(dòng)包:

# 安裝功能包
$ sudo apt install ros-foxy-usb-cam

安裝好之后,為了讓系統(tǒng)能夠找到該功能包,需要進(jìn)入tros的目錄,建立對(duì)應(yīng)的軟連接。

# 建立軟連接
$ cd /opt/tros
$ sudo python3 create_soft_link.py --foxy /opt/ros/foxy/ --tros /opt/tros/

因?yàn)樾袢誜3Pi可以連接csi攝像頭,設(shè)備名占用了video0-7,所以外接的USB攝像頭會(huì)被自動(dòng)分配到video8,我們需要在ROS2的功能包中修改一下設(shè)備號(hào)。

# 修改配置文件
$ cd /opt/tros/share/usb_cam/config
$ sudo vim params.yaml

圖片

然后給這個(gè)設(shè)備添加權(quán)限,最后再設(shè)置TogetherROS?·Bot的環(huán)境變量就可以使用啦。

# 添加可執(zhí)行權(quán)限
$ sudo chmod 777 /dev/video8
# 添加環(huán)境變量
$ source /opt/tros/local_setup.bash

運(yùn)行相機(jī)驅(qū)動(dòng)

我們來(lái)試一試。

$ ros2 launch usb_cam demo_launch.py     #啟動(dòng)相機(jī),X3Pi
$ ros2 run rqt_image_view rqt_image_view #查看圖像,PC

這里直接在X3Pi中啟動(dòng)usb_cam的launch文件,然后再啟動(dòng)一個(gè)能和他通信的Ubuntu桌面系統(tǒng),打開(kāi)rqt_image_view,選擇對(duì)應(yīng)的話題,就可以看到圖像了。也就是說(shuō)明我們成功的用TROS驅(qū)動(dòng)了這個(gè)USB攝像頭。

圖片

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

    關(guān)注

    210

    文章

    27996

    瀏覽量

    205557
  • usb
    usb
    +關(guān)注

    關(guān)注

    60

    文章

    7850

    瀏覽量

    263321
  • 通信
    +關(guān)注

    關(guān)注

    18

    文章

    5926

    瀏覽量

    135705
  • 驅(qū)動(dòng)
    +關(guān)注

    關(guān)注

    12

    文章

    1813

    瀏覽量

    85050
  • 相機(jī)
    +關(guān)注

    關(guān)注

    4

    文章

    1318

    瀏覽量

    53374
收藏 人收藏

    評(píng)論

    相關(guān)推薦

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

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

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

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

    如何在ROS2中運(yùn)行小烏龜呢

    ROS2中運(yùn)行小烏龜,其實(shí)主要就是安裝兩個(gè)工具,turtlesim和rqt。A: 安裝turtlesim。輸入【sudo apt update】輸入【sudo apt install
    發(fā)表于 11-05 06:08

    RT-Thread實(shí)時(shí)操作系統(tǒng)與ROS2是怎樣進(jìn)行通信

    ,重新再開(kāi)發(fā)一套新的 ROS,這也就是 ROS2。新一代的 ROS2 使用 Data Distribution Service (DDS) 通信,可以自動(dòng)發(fā)現(xiàn)主機(jī),這樣分布式的系統(tǒng)設(shè)計(jì)
    發(fā)表于 04-01 11:38

    基于無(wú)線wifi網(wǎng)絡(luò)的X3派和PC虛擬機(jī)通過(guò)ROS2實(shí)現(xiàn)跨設(shè)備通信

    1、X3派和PC虛擬機(jī)都連接無(wú)線wifi網(wǎng)絡(luò)的情況下通過(guò)ROS2實(shí)現(xiàn)跨設(shè)備通信機(jī)通信ROS
    發(fā)表于 07-13 15:13

    【昉·星光 2 高性能RISC-V單板計(jì)算機(jī)體驗(yàn)】四:在 VisionFive2安裝 ROS2 humble

    在 VisionFive2安裝 ROS2 humble ROS(Robot Operating System)是一種用于編寫(xiě)機(jī)器人軟件的靈活框架。它是一個(gè)工具(tools)、庫(kù)
    發(fā)表于 09-04 03:33

    【昉·星光 2 高性能RISC-V單板計(jì)算機(jī)體驗(yàn)】五:在 VisionFive2 上體驗(yàn) ROS2 humble

    在 VisionFive2 上體驗(yàn) ROS2 humble 一、系統(tǒng)準(zhǔn)備 參考 在 VisionFive2安裝 ROS2 humble
    發(fā)表于 09-04 04:59

    Linux嵌入式開(kāi)發(fā)筆記(六)在ROS2中運(yùn)行小烏龜實(shí)例

    ROS2中運(yùn)行小烏龜,其實(shí)主要就是安裝兩個(gè)工具,turtlesim和rqt。A: 安裝turtlesim。輸入【sudo apt update】輸入【sudo apt install
    發(fā)表于 11-02 15:21 ?10次下載
    Linux嵌入式開(kāi)發(fā)筆記(六)在<b class='flag-5'>ROS2</b>中運(yùn)行小烏龜實(shí)例

    Window10怎么安裝ROS2

    Window10怎么安裝ROS2,以下的操作都要管理員的權(quán)限,我可以提前劇透,我應(yīng)該應(yīng)該是沒(méi)有安裝上DDS,應(yīng)該是算安裝好了80%的樣子。
    的頭像 發(fā)表于 02-22 10:12 ?864次閱讀
    Window10怎么<b class='flag-5'>安裝</b><b class='flag-5'>ROS2</b>

    ROS1的通信架構(gòu)的基礎(chǔ)通信方式及相關(guān)概念

    ROS通信架構(gòu)是ROS的靈魂所在,它包括數(shù)據(jù)處理,進(jìn)程運(yùn)行,消息傳遞等** 。這篇文章主要介紹ROS1的通信架構(gòu)的基礎(chǔ)
    的頭像 發(fā)表于 05-19 17:23 ?3310次閱讀
    <b class='flag-5'>ROS</b>1的<b class='flag-5'>通信</b>架構(gòu)的基礎(chǔ)<b class='flag-5'>通信</b>方式及相關(guān)概念

    X3派和PC虛擬機(jī)之間基于ROS2和wifi的通信

    X3派、PC虛擬機(jī)連接無(wú)線wifi網(wǎng)絡(luò)下,通過(guò)ROS2實(shí)現(xiàn)跨設(shè)備通信……
    的頭像 發(fā)表于 07-13 15:03 ?882次閱讀
    X3派和PC虛擬<b class='flag-5'>機(jī)</b>之間基于<b class='flag-5'>ROS2</b>和wifi的<b class='flag-5'>通信</b>

    DDS在ROS2中的應(yīng)用

    DDS在ROS2中的應(yīng)用 DDS在ROS2系統(tǒng)中的位置至關(guān)重要,所有上層建設(shè)都建立在DDS之上。在這個(gè)ROS2的架構(gòu)圖中,藍(lán)色和紅色部分就是DDS。 剛才我們也提到,DDS是一種通信
    的頭像 發(fā)表于 11-24 17:54 ?807次閱讀
    DDS在<b class='flag-5'>ROS2</b>中的應(yīng)用

    ros1和ros2通信模型

    數(shù)據(jù) ROS2: 參與者(DomainParticipant):一個(gè)參與者Participant就是一個(gè)容器,對(duì)應(yīng)于一個(gè)使用DDS的用戶,任何DDS的用戶都必須通過(guò)Participant來(lái)訪問(wèn)全局
    的頭像 發(fā)表于 11-27 11:26 ?706次閱讀
    <b class='flag-5'>ros</b>1和<b class='flag-5'>ros2</b>的<b class='flag-5'>通信</b>模型

    ROS2中自帶例程測(cè)試

    如果你是一個(gè)ROS2的開(kāi)發(fā)者,可能對(duì)剛才我們使用的ROS2命令比較熟悉,這時(shí)你可能也會(huì)產(chǎn)生一個(gè)問(wèn)題:我們之前也安裝ROS2系統(tǒng),那ROS2
    的頭像 發(fā)表于 11-28 16:29 ?838次閱讀
    <b class='flag-5'>ROS2</b>中自帶例程測(cè)試

    在TogetherROS中如何安裝ROS2功能包

    安裝ROS2功能包 接下來(lái),還有一個(gè)很重要的配置,那就是安裝ROS2功能包,我們說(shuō)TogetherROS是基于ROS2深度優(yōu)化的,很多模塊還
    的頭像 發(fā)表于 12-01 16:02 ?860次閱讀
    在TogetherROS中如何<b class='flag-5'>安裝</b><b class='flag-5'>ROS2</b>功能包