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

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

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

Unity與ROS鏈接介紹

麥辣雞腿堡 ? 來源:古月居 ? 作者:敢敢のwings ? 2023-11-17 17:22 ? 次閱讀

對(duì)于ROS而言,其最常用的就是Topic話題以及Service兩個(gè)了。之前我們?cè)诹私釻nity Robotics Hub時(shí)候就了解到基本的Unity和ROS的通訊,下面我們來詳細(xì)介紹一下Unity與ROS的話題與服務(wù)。

ROS和Unity之間的通信是通過Unity的“ROS-TCP-Connector”軟件包和ROS的“ROS-TCP-Endpoint”軟件包進(jìn)行通信的。

1. Unity與ROS鏈接

ROS方面的準(zhǔn)備步驟如下,首先添加端口號(hào)“10000”“5005”,啟動(dòng)Docker鏡像。

Unity和ROS之間的通信需要端口號(hào)“10000”“5005”。為了在Unity中導(dǎo)入消息文件,也進(jìn)行文件夾的安裝。

docker run -p 6080:80 -p 10000:10000 -p 5005:5005 --shm-size=1024m tiryoh/ros-desktop-vnc:melodic

安裝“ROS-TCP-Endpoint”軟件包,用于ROS程序與Unity通信

cd ~/catkin_ws/src
git clone https://github.com/Unity-Technologies/ROS-TCP-Endpoint
cd ..
catkin build
source ~/catkin_ws/devel/setup.bash

然后就是Unity端準(zhǔn)備步驟如下,首先就是安裝ROS-TCP-Connector。這需要確保Unity的版本在2020.2以上。然后在在Unity菜單“Window→Package Manager”中打開“Package Manager”,“+→Add Package from git URL….”中輸入以下URL,按下“Add”按鈕,然后我們就會(huì)看到ROS-TCP-Connector插件安裝成功

圖片

然后在Unity中完成對(duì)ROS的設(shè)置,首先選擇Unity菜單“Robotics→ROS Settings”

圖片

確認(rèn)以下的設(shè)定是否正確

?Connect on Startup : True

?Protocol : ROS1

?ROS IP Address : 127.0.0.1

?ROS Port : 10000

?Show HUD : True

?KeepAlive time (secs):在指定秒數(shù)以上沒有發(fā)送其他消息的情況下,頻繁測(cè)試連接。這個(gè)時(shí)間越長(zhǎng),ROSConnection認(rèn)識(shí)到Topic停止響應(yīng)所花費(fèi)的時(shí)間就越長(zhǎng)。

?Network timeout (secs):消息發(fā)送超過指定秒數(shù)時(shí),視為連接失敗。這個(gè)時(shí)間越長(zhǎng),ROSConnection認(rèn)識(shí)到Topic停止了響應(yīng)所花費(fèi)的時(shí)間就越長(zhǎng)。

?Sleep time (secs):在確認(rèn)新消息之前,睡眠的秒數(shù)。如果減少這個(gè)時(shí)間,響應(yīng)會(huì)變快,但是會(huì)消耗更多的CPU。

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

    關(guān)注

    18

    文章

    5926

    瀏覽量

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

    關(guān)注

    1

    文章

    276

    瀏覽量

    16919
  • Unity
    +關(guān)注

    關(guān)注

    1

    文章

    127

    瀏覽量

    21739
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    EtherCAT運(yùn)動(dòng)控制器在ROS上的應(yīng)用開發(fā)案例(下)

    本篇文章我們主要介紹正運(yùn)動(dòng)技術(shù)動(dòng)態(tài)鏈接庫(kù)環(huán)境配置以及EtherCAT運(yùn)動(dòng)控制器在ROS下的單軸運(yùn)動(dòng)。
    的頭像 發(fā)表于 03-17 11:11 ?785次閱讀
    EtherCAT運(yùn)動(dòng)控制器在<b class='flag-5'>ROS</b>上的應(yīng)用開發(fā)案例(下)

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

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

    Unity開發(fā)者Arm指南-特效圖形技術(shù)介紹

    本指南介紹了幾種可以在Unity程序中使用的特效技術(shù),包括: ?臟鏡頭效果 ?霧效果 ?冰墻效果 在本指南中,有圖像顯示了如何在示例中使用特效展示了冰洞演示和Nordeus的游戲Spellsouls
    發(fā)表于 08-02 06:07

    UNITY 平臺(tái)介紹

    UNITY 平臺(tái)介紹
    發(fā)表于 12-25 00:26 ?0次下載

    ROS的含義與機(jī)器人操作系統(tǒng)ROS介紹

    為了說明講清楚 ROS,我就從 ROS 是什么,為什么使用 ROS,如何使用 ROS 三個(gè)方面展開。 △出自今年《機(jī)器人視覺與應(yīng)用》課程本人制作的課件 是什么
    發(fā)表于 09-26 14:08 ?12次下載

    unity開發(fā)的數(shù)字游戲可在unity里打開應(yīng)用程序免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是unity開發(fā)的數(shù)字游戲可在unity里打開應(yīng)用程序免費(fèi)下載。
    發(fā)表于 05-28 08:00 ?14次下載

    ROS基本介紹

    近來找到的實(shí)習(xí)主要是做智能車控制,用到的也就是ROS機(jī)器人操作系統(tǒng),ROS需要運(yùn)行在一個(gè)操作系統(tǒng)上,這個(gè)操作系統(tǒng)常用的就是Linux,而公司用的就是Ubuntu,所以Ubuntu-ROS組合就是實(shí)習(xí)的主要學(xué)習(xí)內(nèi)容了。所以我就新開
    的頭像 發(fā)表于 05-19 17:07 ?7221次閱讀
    <b class='flag-5'>ROS</b>基本<b class='flag-5'>介紹</b>

    ROS/ROS 2 介紹

    ROS是機(jī)器人操作系統(tǒng)(Robot Operating System)的英文縮寫。ROS是用于編寫機(jī)器人軟件程序的一種具有高度靈活性的軟件架構(gòu)。ROS的原型源自斯坦福大學(xué)的STanford
    的頭像 發(fā)表于 05-19 17:45 ?4149次閱讀
    <b class='flag-5'>ROS</b>/<b class='flag-5'>ROS</b> 2 <b class='flag-5'>介紹</b>

    ROS部署PaddlePaddle的CV模型

    paddle_inference_ros_demo功能包是基于paddle_inference_ros開發(fā)的,幫助開發(fā)者快速體驗(yàn)paddle_inference在ROS環(huán)境下的推理部署效果的功能包。可以直接進(jìn)入該項(xiàng)目
    的頭像 發(fā)表于 10-20 17:02 ?641次閱讀
    <b class='flag-5'>ROS</b>部署PaddlePaddle的CV模型

    如何初始化ROS并創(chuàng)立鏈接

    ROS1完成了介紹。 對(duì)ROS的Simulink支持包括一個(gè)Simulink塊庫(kù),用于為指定的主題發(fā)送和接收
    的頭像 發(fā)表于 11-15 17:26 ?442次閱讀
    如何初始化<b class='flag-5'>ROS</b>并創(chuàng)立<b class='flag-5'>鏈接</b>

    如何將消息導(dǎo)入Unity

    自定義msg 將消息導(dǎo)入Unity的步驟如下所示: 1.Unity的菜單“Robotics→Generate ROS Messages…”選擇。 2.在“ROS message pat
    的頭像 發(fā)表于 11-17 17:26 ?447次閱讀
    如何將消息導(dǎo)入<b class='flag-5'>Unity</b>

    UnityROS的Service話題介紹

    “AddTwoIntsServer”,添加新的腳本“AddTwoIntsServer” using UnityEngine; using Unity.Robotics.ROSTCPConnector; using
    的頭像 發(fā)表于 11-17 17:36 ?540次閱讀
    <b class='flag-5'>Unity</b>與<b class='flag-5'>ROS</b>的Service話題<b class='flag-5'>介紹</b>

    ROS核心框架介紹

    ROS核心框架 對(duì)于第一個(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 ?884次閱讀
    <b class='flag-5'>ROS</b>核心框架<b class='flag-5'>介紹</b>

    ROS通信接口機(jī)制介紹

    ROS通信接口 接口可以讓程序之間的依賴降低,便于我們使用別人的代碼,也方便別人使用我們的代碼,這就是ROS的核心目標(biāo),減少重復(fù)造輪子。 ROS有三種常用的通信機(jī)制,分別是話題、服務(wù)、動(dòng)作,通過
    的頭像 發(fā)表于 12-01 15:03 ?729次閱讀
    <b class='flag-5'>ROS</b>通信接口機(jī)制<b class='flag-5'>介紹</b>

    ros怎么設(shè)置環(huán)境變量

    設(shè)置ROS環(huán)境變量是使用ROS的重要步驟之一。本文將詳細(xì)介紹如何設(shè)置ROS環(huán)境變量,包括什么是環(huán)境變量、為什么要設(shè)置ROS環(huán)境變量、如何設(shè)置
    的頭像 發(fā)表于 12-28 13:52 ?1747次閱讀