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

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

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

基于R128開發(fā)板的自平衡賽車機(jī)器人設(shè)計

全志在線 ? 來源:全志在線開發(fā)者論壇 ? 2023-12-16 15:57 ? 次閱讀

經(jīng)常翻車的朋友們都知道,能在翻車后快速擺正車身的車才是好車。

就像動畫《四驅(qū)兄弟》中展現(xiàn)的那樣,在比賽中需要跟著賽車一起跑圈,而且賽車如果被撞翻還需要重新用手扶正,所浪費的時間非常影響比賽結(jié)果。

如果小豪和小烈可以擁有一款能通過發(fā)揮R128的WiFi&藍(lán)牙特性的平衡小車,從而能通過WiFi或藍(lán)牙連接的方式進(jìn)行控制,既可以自平衡和轉(zhuǎn)向,又可以遠(yuǎn)程操控,那冠軍豈不是手到擒來。

它,就是可以自平衡的賽車機(jī)器人——B_ROBOT_100ASK

項目簡介

本項目基于jjrobots的開源項目B-ROBOT EVO2進(jìn)行復(fù)刻,與原開源項目不一樣的地方是,作者將原本適配的的Arduino控制板移植為DShanMCU-R128s2-DevKit開發(fā)板,與此同時還添加了一些功能,比如自平衡功能、WiFi&藍(lán)牙控制、App控制以及語音控制功能,讓平衡小車的操控樂趣更上一層樓。

b2b28696-9be7-11ee-8b88-92fbcf53809c.png

B_ROBOT_100ASK

b2b744e2-9be7-11ee-8b88-92fbcf53809c.gif

自平衡演示

硬件設(shè)計

本項目中的自平衡賽車機(jī)器人的硬件設(shè)計結(jié)構(gòu)非常簡單,硬件部分主要由R128開發(fā)板和幾個驅(qū)動模塊組成。

b2fbfa88-9be7-11ee-8b88-92fbcf53809c.png

硬件設(shè)計模塊

供電模塊

自平衡機(jī)器人采用鋰電池供電的方式,并利用mini360航模電池降壓模塊來將較進(jìn)行電壓的轉(zhuǎn)化工作,以滿足小車設(shè)備對電壓方面的需求

電機(jī)驅(qū)動模塊

自平衡機(jī)器人選用兩個NEMA17步進(jìn)電機(jī),并選用DDRV8825步進(jìn)電機(jī)驅(qū)動模塊來負(fù)責(zé)與電機(jī)之間的控制信息傳輸。

DDRV8825步進(jìn)電機(jī)驅(qū)動模塊的體積小,驅(qū)動能力強(qiáng),它只需要一個PWM波就能控制步進(jìn)電機(jī),同時基本上三個引腳就能完全控制步進(jìn)電機(jī)。

通過該模塊可以使小車快速反應(yīng)R128下達(dá)的運動信息,驅(qū)動小車本身的輪子進(jìn)行運動。

平衡模塊

MPU6050是一種6軸運動跟蹤傳感器,它包含3軸陀螺儀、3軸加速度計、運動處理器溫度傳感器。它可以通過I2C總線接口與微控制器進(jìn)行通信,并且可以通過輔助I2C總線與其他傳感器設(shè)備通信。

MPU6050的主要作用是幫助機(jī)器人實現(xiàn)姿態(tài)感知和運動控制,提高機(jī)器人的自主性和靈活性。

遙控手柄UI控制(LVGL

作者本人還利用R128開發(fā)板來移植了一個酷炫的LVGL遙控手柄UI,通過手柄上的菜單欄UI可以選擇不同的機(jī)器人基礎(chǔ)參數(shù)設(shè)置和進(jìn)行機(jī)器人操控。

b32b47f2-9be7-11ee-8b88-92fbcf53809c.gif

手柄UI菜單欄滑動

在自平衡機(jī)器人啟動后,可以通過面包板上的兩個手柄去遙控機(jī)器人的前進(jìn)后退和轉(zhuǎn)彎,并且在屏幕上還會實時返回機(jī)器人的傾斜角度、速度、電量等狀態(tài)。

b353d500-9be7-11ee-8b88-92fbcf53809c.gif

實現(xiàn)App控制

在機(jī)器人競速中,必須要在準(zhǔn)確性和速度之間找到平衡。為了更好的反饋給自平衡機(jī)器人設(shè)置不同參數(shù)下的運動狀態(tài),作者針對自平衡機(jī)器人進(jìn)行了控制App的適配。

b3883c6e-9be7-11ee-8b88-92fbcf53809c.png

App控制自平衡小車界面

App可以實時顯示電池狀態(tài)和機(jī)器人的傾斜角度,操作者只需要通過App中的幾個可視化按鈕和滑動欄來實時修改其PID,以實現(xiàn)對機(jī)器人速度和狀態(tài)的遠(yuǎn)程控制。

自平衡機(jī)器人的一般行為由一組參數(shù)定義:

// NORMAL MODE PARAMETERS 
 #define MAX_THROTTLE 550 MAXIMUM VELOCITY
 #define MAX_STEERING 140 MAXIMUM SPINNING VELOCITY
 #define MAX_TARGET_ANGLE 14 MAXIMUM ANGLE REACHED WHEN MOVING


// PRO MODE = MORE AGGRESSIVE (MAXIMUM SETTINGS)
 #define MAX_THROTTLE_PRO 860 MAXIMUM VELOCITY. PRO MODE
 #define MAX_STEERING_PRO 280 MAXIMUM SPINNING VELOCITY. PRO MODE
 #define MAX_TARGET_ANGLE_PRO 32 MAXIMUM ANGLE REACHED WHEN MOVING. PRO MODE


 #define KP 0.32 // 0.14
 #define KD 0.050 // 0.028
 #define KP_THROTTLE 0.075 //0.075
 #define KI_THROTTLE 0.1 // 0.1
 #define KP_POSITION 0.06 //0.055
 #define KD_POSITION 0.45 //0.5
 //#define KI_POSITION 0.02

比如:

MAX_THROTTLE_PRO值會使機(jī)器人更快,但如果不能順利恢復(fù)垂直位置,穩(wěn)定性會降低。

MAX_STEERING_PRO值會讓機(jī)器人旋轉(zhuǎn)得更快,但轉(zhuǎn)彎時更難精確控制。

MAX_TARGET_ANGLE_PRO值將使機(jī)器人減小其相對于地板的角度,但這會使恢復(fù)和轉(zhuǎn)彎變得更加困難。

UDP網(wǎng)絡(luò)通信控制

這個功能的實現(xiàn)比較簡單,利用R128本身自帶的WiFi&藍(lán)牙特性,來實現(xiàn)兩塊R128開發(fā)板(機(jī)器人自身攜帶&手上的操控端)的UDP網(wǎng)絡(luò)通信控制。

b43a6150-9be7-11ee-8b88-92fbcf53809c.gif

UDP網(wǎng)絡(luò)通信控制演示

源碼獲取

基于R128-S2設(shè)計的全套開發(fā)板已上線淘寶百問網(wǎng)韋東山老師個人店進(jìn)行售賣,包含黑色的DshanMCU-R128s2-R16N16模組和全套的DshanMCU-R128s2-DEVKIT。

審核編輯:湯梓紅

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

    關(guān)注

    210

    文章

    28103

    瀏覽量

    205847
  • 藍(lán)牙
    +關(guān)注

    關(guān)注

    114

    文章

    5751

    瀏覽量

    169591
  • WIFI
    +關(guān)注

    關(guān)注

    81

    文章

    5280

    瀏覽量

    203084
  • 開發(fā)板
    +關(guān)注

    關(guān)注

    25

    文章

    4896

    瀏覽量

    97058

原文標(biāo)題:用R128復(fù)刻自平衡賽車機(jī)器人,還實現(xiàn)了三種不同的操控方式

文章出處:【微信號:gh_79acfa3aa3e3,微信公眾號:全志在線】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    使用全志R128實現(xiàn)LVGL的移植

    我們使用的開發(fā)板R128-Devkit,需要開發(fā) C906 核心的應(yīng)用程序,所以載入方案選擇 r128s2_module_c906
    的頭像 發(fā)表于 11-13 10:14 ?1481次閱讀
    使用全志<b class='flag-5'>R128</b>實現(xiàn)LVGL的移植

    全志R128 BLE最高吞吐量測試正確配置測試方法

    R128使用前我們需要了解BLE的最高吞吐量,以方便評估相關(guān)功能的開發(fā)。
    的頭像 發(fā)表于 10-27 17:17 ?1245次閱讀
    全志<b class='flag-5'>R128</b> BLE最高吞吐量測試正確配置測試方法

    全志R128內(nèi)存泄漏調(diào)試案例分享

    硬件:R128 軟件:FreeRTOS + rtplayer\_test(Cedarx)+ AudioSystem
    的頭像 發(fā)表于 11-20 17:27 ?931次閱讀
    全志<b class='flag-5'>R128</b>內(nèi)存泄漏調(diào)試案例分享

    開源項目!教你如何復(fù)刻平衡賽車機(jī)器人、智能家居中控、競技機(jī)器人先進(jìn)模糊控制器等

    開源項目作品 為了方便大家更好提升自己,電子發(fā)燒友小編為大家整理了一些工程師大佬設(shè)計的開源項目作品,供大家可以參考學(xué)習(xí),希望對廣大工程師有所幫助。 1.用全志R128復(fù)刻平衡賽車
    發(fā)表于 12-26 09:17

    全志R128入門編寫HelloWorld

    本文將介紹使用 R128 開發(fā)板從串口輸出 HelloWorld 的方式介紹 SDK 軟件開發(fā)流程。 載入方案我們使用的開發(fā)板R128-
    發(fā)表于 12-29 09:39

    全志R128 Devkit開發(fā)板原理圖模塊介紹及使用說明

    針對 R128 模組,百問科技推出了 R128 DevKit 開發(fā)板作為快速開發(fā)評估工具。 板載 R128-S2-N16R16 模組 板
    發(fā)表于 01-17 09:45

    [分享]LabVIEW 與機(jī)器人設(shè)

    LabVIEW 與機(jī)器人設(shè)計 
    發(fā)表于 05-30 16:35

    【orangepi zero申請】基于香橙pi的機(jī)器人設(shè)

    項目名稱:基于香橙pi的機(jī)器人設(shè)計試用計劃:本人擁有香橙pi one的使用經(jīng)驗,非常熟悉香橙派的使用技巧,希望能夠使用orange pi zero完成一個輪式機(jī)器人的設(shè)計,使用開發(fā)板作為主控,加上6
    發(fā)表于 12-08 16:09

    如何應(yīng)對機(jī)器人設(shè)開發(fā)中的挑戰(zhàn)?

    在NIWeek會議上特別談到了TORC如何從功能強(qiáng)大的高級軟件中獲益,從而有助于簡化系統(tǒng)設(shè)計中的復(fù)雜問題。那么我們有什么辦法,能應(yīng)對機(jī)器人設(shè)開發(fā)中的挑戰(zhàn)嗎?
    發(fā)表于 07-31 07:17

    基于SLAM的移動機(jī)器人設(shè)

    題目:基于SLAM的移動機(jī)器人設(shè)計嵌入式PPT應(yīng)具有的幾個部分1、有哪些硬件  1)小車  2)STM32F429開發(fā)板  3)樹莓派3b+開發(fā)板  4)4g通信模塊  5)GPS模塊  6
    發(fā)表于 11-08 06:17

    用全志R128復(fù)刻平衡賽車機(jī)器人,還實現(xiàn)了三種不同的操控方式

    更上一層樓。 硬件設(shè)計 本項目中的平衡賽車機(jī)器人的硬件設(shè)計結(jié)構(gòu)非常簡單,硬件部分主要由R128開發(fā)
    發(fā)表于 12-20 10:22

    AVR mega128開發(fā)板

    AVR mega128開發(fā)板 聯(lián)系  楊迪 15336417867  0531-55508458 QQ:1347978253  http://www.easyele.cn 產(chǎn)品概述:AVR mega12
    發(fā)表于 07-14 10:52 ?84次下載

    全志R128應(yīng)用開發(fā)案例—點亮一顆LED燈

    我們使用的開發(fā)板R128-Devkit,需要開發(fā) C906 核心的應(yīng)用程序,所以載入方案選擇`r128s2_module_c906`
    發(fā)表于 10-09 16:46 ?408次閱讀
    全志<b class='flag-5'>R128</b>應(yīng)用<b class='flag-5'>開發(fā)</b>案例—點亮一顆LED燈

    DshanMCU-R128s2 R128 DevKit 開發(fā)板

    針對 R128 模組,百問科技推出了 R128 DevKit 開發(fā)板作為快速開發(fā)評估工具。 特性: 板載 R128-S2-N16R16 模組
    的頭像 發(fā)表于 12-22 12:02 ?567次閱讀
    DshanMCU-<b class='flag-5'>R128</b>s2 <b class='flag-5'>R128</b> DevKit <b class='flag-5'>開發(fā)板</b>

    DshanMCU-R128s2 R128 EVT 開發(fā)套件

    針對 R128 模組,百問科技推出了 R128 EVT 開發(fā)套件作為快速開發(fā)評估工具。
    的頭像 發(fā)表于 12-22 15:16 ?718次閱讀
    DshanMCU-<b class='flag-5'>R128</b>s2 <b class='flag-5'>R128</b> EVT <b class='flag-5'>開發(fā)</b>套件