衡阳派盒市场营销有限公司

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

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

3天內不再提示

如何將消息導入Unity

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

自定義msg

將消息導入Unity的步驟如下所示:

1.Unity的菜單“Robotics→Generate ROS Messages…”選擇。

2.在“ROS message path”中選擇“catkin_ws/src”。

然后就可以看到path下的msg都會顯示在Unity下面

圖片

然后點擊“MyString.msg”中的“Build msg”。這樣“MyString.msg”將被轉換成c#腳本“MyStringMsg”,并在Project窗口中輸出“RosMessages”。

圖片

Topic話題

這一小節我們主要來說Topic的發布和訂閱,首先我們來看一下發布者的Unity編程

1.在Hierarchy窗口的“+→Create Empty”中創建空GameObject,命名為“Publisher”。

2.在“Publisher”中追加新腳本“ChatterPublisher”,編輯如下

using UnityEngine;
using Unity.Robotics.ROSTCPConnector;
using MyStringMsg = RosMessageTypes.Hello.MyStringMsg;


public class ChatterPublisher : MonoBehaviour
{
    private ROSConnection ros;


    // 初始化時被調用
    void Start()
{
        // 向ROS連接注冊Topic話題
        ros = ROSConnection.instance;
        ros.RegisterPublisher< MyStringMsg >("chatter");
    }


    // 每幀更新
    void FixedUpdate()
{
        // 發送msg信息
        MyStringMsg msg = new MyStringMsg("Hello Unity!");
        ros.Send("chatter", msg);
    }
}

而接收者和發布者類似,都在Hierarchy窗口的“+→Create Empty”中創建空GameObject,命名為“Subscriber”。

在“Subscriber”中添加新的腳本“ChatterSubscriber”,編輯如下。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Unity.Robotics.ROSTCPConnector;
using MyStringMsg = RosMessageTypes.Hello.MyStringMsg;


public class ChatterSubscriber : MonoBehaviour{


    void Start(){
        // 向ROS連接注冊Subscribe
        ROSConnection.instance.Subscribe< MyStringMsg >("chatter", Callback);
    }


    void Callback(MyStringMsg msg){
        Debug.Log(msg.data);
    }
}

同時我們可以在ROS當中訂閱這些信息,運行

roscore
rosparam set ROS_IP 127.0.0.1
rosparam set ROS_TCP_PORT 10000
rosrun ros_tcp_endpoint default_server_endpoint.py
# roslauch ros_tcp_endpoint endpoint.launch tcp_ip:=127.0.0.1 tcp_port:=10000 # 將127.0.0.1

然后寫一個listener.py的訂閱器。

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

    關注

    88

    文章

    3637

    瀏覽量

    93983
  • ROS
    ROS
    +關注

    關注

    1

    文章

    280

    瀏覽量

    17098
  • Unity
    +關注

    關注

    1

    文章

    127

    瀏覽量

    21878
收藏 人收藏

    評論

    相關推薦

    如何將dxf導入Allegro

    如何將dxf導入Allegro Allegro可以導入AutoCAD產生的DXF文件(支持DXF R10-R14版本)。同時Allegro也可以將設計文
    發表于 03-21 18:21 ?1.2w次閱讀
    <b class='flag-5'>如何將</b>dxf<b class='flag-5'>導入</b>Allegro

    如何將solidworks文件導入到labview中

    最近正在使用labview,請問如何將已建模的solidworks文件導入到labview中并顯示
    發表于 09-09 16:54

    如何將matlab仿真得到的波形導入labview中?

    如何將matlab仿真得到的波形導入labview中?
    發表于 11-11 15:56

    如何將 DXF 導入 PADS

    attach://173051.pdf 如何將 DXF 導入 PADS
    發表于 12-11 11:41

    如何將pcan view 中讀到的數據導入labview中?

    如何將pcan view 中讀到的數據導入labview中?是不是因為labview中沒有裝DAQ_MX呀?求大神給予幫助
    發表于 11-21 16:06

    如何將cad畫好的圖導入到labview中

    如何將cad畫好的圖導入到labview中
    發表于 11-06 14:33

    如何將PADS的原理圖清晰的導入到word

    如何將原理圖導入到word我試了試 截圖一點都不清楚,求大神啊
    發表于 05-17 14:04

    如何將示例項目導入MCUXpresso IDE?

    使用 RT1050 板,并有這個例子。我閱讀了 RT1020 板支持 mc_pmsm 與板 FRDM-MC-LVPMSM 組合的文檔。我正在尋找如何將示例項目導入 MCUXpresso IDE,有人可以幫助我嗎?
    發表于 03-16 08:15

    如何將FPGA里的數據導入dsp板子里去呢?

    如何將FPGA里的數據導入dsp板子里去呢?有哪位大神可以指教一下嗎
    發表于 03-21 14:47

    如何將ECC密鑰導入HSE FW?

    我目前正在嘗試 ECC 公鑰導入 HSE FW。 OpenSSL 已生成擴展名為“.pem”的私鑰和公鑰。 所以我的問題是,如何將這個 pem 文件轉換成可用于密鑰導入的文件。
    發表于 05-04 06:13

    如何將Unity著色器移植到通用渲染管道

    介紹如何將為內置管道編寫的Unity著色器移植到URP。本指南還介紹了如何將自定義著色器移植到URP。這是因為這些著色器無法自動移植到URP。在指南的末尾,您將:?熟悉URP?了解如何將
    發表于 08-02 13:39

    如何將Arm Neon C#內部函數與Unity Burst編譯器一起使用

    本指南解釋了如何將Arm Neon C#內部函數與Unity Burst編譯器一起使用,以提高Unity Android應用程序的性能。 在本指南結束時,您將了解到: ?單指令多數據(SIMD)指令
    發表于 08-10 07:11

    如何將AD庫轉換導入到PADS中使用

    想學習pads,學會如何將AD庫轉換導入到PADS中使用,方便自己
    發表于 12-11 16:46 ?0次下載

    CAD免費教程:如何將Excel數據快速導入CAD圖紙

    在平時的設計工作中,為了圖紙內容的豐富性,通常會在里面添加一些元素,使得數據更加的完善,那我們想在CAD圖紙中添加一份Excel數據表,徒手繪制那就肯定是太過于麻煩了,那怎么才能省時省事呢?這個時候就用到了技巧的問題了,一步教你如何將Excel數據表快速導入CAD圖紙。
    發表于 09-05 08:00 ?9次下載
    CAD免費教程:<b class='flag-5'>如何將</b>Excel數據快速<b class='flag-5'>導入</b>CAD圖紙

    如何將Klayout Cell動態導入Lumerical Multiphysics

    在本例中,演示了如何將KLayout Library Cell動態導入 Lumerical 以執行設計掃描和表征。該功能支持動態導入到Lumerical FDTD、MODE以及Multiphysics的所有工具,包括CHARGE
    的頭像 發表于 01-22 14:27 ?738次閱讀
    <b class='flag-5'>如何將</b>Klayout Cell動態<b class='flag-5'>導入</b>Lumerical Multiphysics
    百家乐和局投注法| 免费百家乐追号工具| 大发888王博| 澳门百家乐官网技巧皇冠网| 百家乐视频金币| 大发888客户端的 软件| 百家乐官网楼梯缆| 杰克百家乐玩法| 织金县| 香港百家乐官网的玩法技巧和规则| 荷规则百家乐的玩法技巧和规则 | 卢克索百家乐的玩法技巧和规则 | 轮台县| 24山水口吉凶图| 联众棋牌游戏大厅| 公海百家乐官网的玩法技巧和规则 | 新葡京娱乐城官方网址| 自贡百家乐官网赌场娱乐网规则| 太阳神百家乐的玩法技巧和规则| 南开区| 哪里有百家乐投注网| 定安县| 百家乐孖宝揽| 百家乐官网h游戏怎么玩| 女神百家乐的玩法技巧和规则| 金城百家乐官网平台| 百家乐切入法| 百家乐官网技巧头头娱乐| 全讯网vc8888.com| 网上百家乐官网赌场娱乐网规则| 百家乐透明发牌靴| 有百家乐官网的棋牌游戏| 大发888国际娱乐城| 百家乐官网连锁| 香港六合彩白小姐图库| 免费百家乐奥秘| 台中市| 百家乐怎样玩的| 历史百家乐官网路单图| 大发888游戏安装失败| 网上百家乐真实度|