色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

電子發燒友App

硬聲App

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

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

3天內不再提示
創作
電子發燒友網>電子資料下載>電子資料>使用ROS和Raspberry Pi進行Bittle遠程操作

使用ROS和Raspberry Pi進行Bittle遠程操作

2023-06-25 | zip | 0.00 MB | 次下載 | 免費

資料介紹

描述

?

?

在這篇文章中,我們將使用 ROS Melodic 與 Bittle 執行遠程操作 - 來自 Petoi 的機器狗,目前在 Kickstarter 上

poYBAGNYhKOAQYF1AAGPXR-OEIU780.png
?

即使您不打算購買 Bittle,如果您正在尋找有關如何為 ROS 編寫自定義驅動程序以與機器人硬件交互并控制機器人運動的信息,本文仍然可能對您有用。我們先談談選項一

poYBAGNYhKaANLZOAACr2Ldx0pU627.jpg
?

Bittle 已經有一個負責運動和平衡的微控制器 - ATMega328。

poYBAGNYhKiAYoUKAABltVuMRjA539.jpg
?

可以使用 ros_arduino_bridge 包直接在微控制器芯片上運行 ROS 節點,但是這種方法有一些缺點。首先,ATMega328 上剩余的內存量可能不足以同時穩定運行運動算法和 ROS 節點。其次,ATMega328沒有無線接口或圖像處理能力,所以無論如何我們都需要將它與單板計算機耦合以進行遠程操作。

這將我們帶到了選項 2

poYBAGNYhKuAPTz7AACxqgfJT64518.jpg
?

簡而言之,這就是它的工作方式。現在讓我們來看看細節。

有兩種 SBC 推薦用于 Bittle - Raspberry Pi 3A+ 或 Raspberry Pi Zero。Raspberry Pi 4 和 3B+ 是兼容的,但尺寸尺寸對于 Bittle 緊湊的機身來說太大了。我們將在這個項目中使用 Raspberry Pi 3A+ - 它非常適合 NyBoard。

pYYBAGNYhK2AAmDrAABhIG5E53Q229.png
二次方。實用主義。膽小鬼。
?

pYYBAGNYhLCAQg-iAAC6t7e1J68389.jpg
?

原因是這些接頭具有用于 TX/RX 引腳的電平轉換器 - Raspberry Pi 在 UART 接口上具有 3.3V,而 Arduino 板通常具有 5V。

?

現在,當我們有硬件連接和 Raspbian 與 ROS 時,我們需要為機器人編寫一個自定義驅動程序。

安裝 catkin 構建工具,創建一個 catkin 工作空間并將我的 GitHub 存儲庫為此項目克隆到 src 文件夾中。

sudo pip install -U catkin_tools

!確保從您的 catkin 工作區 src 文件夾中執行以下命令!

git clone https://github.com/AIWintermuteAI/bittle_ROS.git

移回 catkin 工作區文件夾并構建您剛剛從 Gtihub 克隆的包

catkin build

讓我們看一下存儲庫內容。與 NyBoard 交互的驅動程序位于 scripts 文件夾中。它是一個簡單的節點,訂閱了關于 cmd_vel 主題的 Twist 消息。

def __init__(self, port='/dev/ttyS0'):
        self.dir = 0
        rospy.init_node('cmd_vel_listener')
        rospy.Subscriber("/cmd_vel", Twist, self.callback)
        self.ser = serial.Serial(
        port=port,
        baudrate=57600,
        parity=serial.PARITY_NONE,
        stopbits=serial.STOPBITS_ONE,
        bytesize=serial.EIGHTBITS,
        timeout=1
        )

Twist 消息中有 6 個分量 - 3 軸的線速度和角速度。

rospy.loginfo("Received a /cmd_vel message!")
rospy.loginfo("Linear Components: [%f, %f, %f]"%(msg.linear.x, msg.linear.y, msg.linear.z))
rospy.loginfo("Angular Components: [%f, %f, %f]"%(msg.angular.x, msg.angular.y, msg.angular.z))

在我們的例子中,我們只關心線性 x 速度(向前和向后)和角 z 速度(左和右)。收到消息后,我們使用 PySerial 使用內置通信 API 與 BIttle 進行通信。

if msg.linear.x > 0:
            dir = 1
        elif msg.linear.x < 0:
            dir = -1
        elif msg.angular.z > 0:
            dir = 2
        elif msg.angular.z < 0:
            dir = 3
        else:
            dir = 0
 
        if self.dir != dir:
            self.wrapper([dir_dict[dir],0])
            self.dir = dir

為了簡單起見,我們將只啟用基本的步行 - 可以通過串行直接將伺服角度發送到微控制器,但在這種情況下,陀螺儀和加速度計將不會用于平衡。

pYYBAGNYhLSAduiQAAMUzsZFU4U558.png
?

帶有陀螺儀/加速度計平衡的細粒度伺服角度控制并不容易,但由于 BIttle 軟件是開源的,并且未來將發布 ESP32 控制器板(能夠運行 ROS 節點和運動協調算法),我認為這是可以實現的。這將大大提高 Bittle 穿越各種障礙的能力。

在存儲庫文件夾中,您還將找到兩個啟動文件 bittle_teleop_robot.launch 和 bittle_teleop_server.launch。啟動文件在 ROS 中用于方便地啟動大型機器人設置。Teleop 啟動文件機器人將同時啟動機器人驅動程序和 USB 攝像頭驅動程序。要在您的 Ubuntu 計算機上執行的服務器啟動文件將啟動 rqt_robot_steering 和 RVIZ,并打開圖像視圖。

通過在 Ubuntu 計算機和 Raspberry Pi 上導出 ROS_MASTER_URI 和 ROS_IP 環境變量,將 ROS 設置為在多臺機器上工作。

在您的 Ubuntu 計算機上:

export ROS_MASTER_URI=http://[your-ubuntu-computer-ip-here]
export ROS_IP=[your-ubuntu-computer-ip-here]

樹莓派上:

export ROS_MASTER_URI=http://[your-ubuntu-computer-ip-here]
export ROS_IP=[your-raspberry-pi-ip-here]

ROS_MASTER_URI 將指向您的 Ubuntu 計算機,該計算機將運行 roscore,并且 ROS_IP 需要設置為同一網絡上機器各自的 IP 地址。

請記住獲取您的 catkin 工作區并將 pi 用戶添加到 dialout 和 tty 組 - 這是 PySerial 能夠打開串行連接所必需的。由于 ROS Melodic 默認仍使用 Python 2.7,并且驅動程序腳本配置為使用您的系統 Python 3,因此您可能會收到導入錯誤 - 在這種情況下,請使用 pip install 安裝必要的包。通常只需要安裝 rospkg:

pip install rospkg

完成后,在 Ubuntu 計算機上啟動 bittle_teleop_server.launch,然后在 Raspberry Pi 上啟動 bittle_teleop_robot.launch。

移動滑塊讓機器人移動!如果您使用的機器人與 Bittle 不同,則在接收到速度消息后要執行的確切代碼需要與您的設置相匹配,尤其是在接收到速度消息后的這部分

if msg.linear.x > 0:
            dir = 1
        elif msg.linear.x < 0:
            dir = -1
        elif msg.angular.z > 0:
            dir = 2
        elif msg.angular.z < 0:
            dir = 3
        else:
            dir = 0
 
        if self.dir != dir:
            self.wrapper([dir_dict[dir],0])
            self.dir = dir

距離 Kickstarter 活動結束還有時間,所以看看 Bittle 以及它在項目 Kickstarter 主頁上的功能。如果您打算將 Bittle 與 ROS 一起用于更高級的機器人項目,請考慮支持BiBoard V0 ,它具有更強大的控制芯片、具有 520 Kb RAM 和 16 Mb ROM 的 ESP32。

poYBAGNYhLaAfGunAADlcMufKyc526.jpg
?

希望本文對您了解更多有關 ROS 機器人驅動程序的信息有所幫助。

如果您有任何問題,請在LinkedIn上添加我,并訂閱我的 YouTube 頻道,以獲得有關機器學習和機器人技術的更多有趣項目的通知。


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數據手冊
  2. 1.06 MB  |  532次下載  |  免費
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費
  9. 5元宇宙深度解析—未來的未來-風口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費
  11. 6迪文DGUS開發指南
  12. 31.67 MB  |  194次下載  |  免費
  13. 7元宇宙底層硬件系列報告
  14. 13.42 MB  |  182次下載  |  免費
  15. 8FP5207XR-G1中文應用手冊
  16. 1.09 MB  |  178次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費
  3. 2555集成電路應用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費
  7. 4開關電源設計實例指南
  8. 未知  |  21549次下載  |  免費
  9. 5電氣工程師手冊免費下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費
  11. 6數字電路基礎pdf(下載)
  12. 未知  |  13750次下載  |  免費
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費
  15. 8《LED驅動電路設計》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉中文版)
  4. 78.1 MB  |  537798次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191187次下載  |  免費
  13. 7十天學會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費
主站蜘蛛池模板: 日日夜夜国产| 狠狠插影院| 国内极度色诱视频网站| 青青草国产精品久久| 91次元黄色观看| 老男人粗大猛| 亚洲永久精品ww47app| 国产欧美日韩国产高清| 天天操天天干天天透| 丰满的女朋友韩国版在线观看 | 成人欧美一区二区三区白人| 久久99亚洲AV无码四区碰碰| 亚洲免费人成在线视频观看| 国产在线观看免费观看不卡| 亚洲第一综合天堂另类专| 国产三级影院| 视频网站入口在线看| 国产午夜精品一区二区三区 | 两个人在线观看的视频720| 伊人网综合网| 久久精品美女久久| 中文字幕乱码一区久久麻豆樱花| 99久在线国内在线播放免费观看 | 99久久国产综合色| 免费看欧美xxx片| AV天堂午夜精品一区| 秋霞伦理高清视频在线| 国产高清视频免费最新在线| 亚洲爱视频| 麻豆高清区在线| 白丝萝莉喷水| 小便japanesewctv| 久久99re66热这里只有精品| 116美女写真午夜电影z| 青青久久网| 国产一在线精品一区在线观看| 欧美一区二区在线观看| 俺也去最新地址| 小s现场抛胸挤奶| 久久亚洲黄色| 国产99久久九九免费精品无码|