資料介紹
描述
我重新設(shè)計(jì)了機(jī)器人。硬件沒(méi)有改變,但軟件已經(jīng)重新設(shè)計(jì)。
在舊版本中,每個(gè)電機(jī)都有一個(gè)單獨(dú)的 PID 控制器。
為了使機(jī)器人向右或向左移動(dòng),PID 控制器的設(shè)定點(diǎn)被分配了適當(dāng)?shù)闹怠?/p>
如果機(jī)器人之后再次直行,則必須人為抵消由此產(chǎn)生的步數(shù)差異,這有時(shí)會(huì)導(dǎo)致一些麻煩。
現(xiàn)在機(jī)器人只有一個(gè) PID 控制器用于兩個(gè)電機(jī)。這足以讓機(jī)器人保持直立。要向前或向后移動(dòng),只需將設(shè)定值更改為適當(dāng)?shù)闹怠?/p>
第二個(gè)級(jí)聯(lián) PID 控制器確保機(jī)器人保持其到達(dá)的位置。
為了讓機(jī)器人向右或向左移動(dòng),在沒(méi)有輸入到 PID 控制器的情況下,兩個(gè)帶相反符號(hào)的電機(jī)的步數(shù)都增加了。
現(xiàn)在我對(duì)機(jī)器人的行為很滿(mǎn)意。
進(jìn)一步項(xiàng)目手勢(shì)控制機(jī)器人
原則
雙輪自平衡機(jī)器人代表一個(gè)機(jī)器人平臺(tái),有兩個(gè)獨(dú)立驅(qū)動(dòng)的輪子,重心在輪子旋轉(zhuǎn)軸上方。機(jī)器人的行為類(lèi)似于倒立擺的經(jīng)典機(jī)械系統(tǒng)。
機(jī)器人特點(diǎn)
步進(jìn)電機(jī),單極/雙極,200 步/轉(zhuǎn),42×48mm,4V,1.2A/相
步進(jìn)電機(jī)驅(qū)動(dòng)器載體可以連續(xù)提供每相高達(dá) 1.5 A 的電流,四種不同的步進(jìn)分辨率:全步、半步、1/4 步和 1/8 步。
用于電機(jī)和位置的級(jí)聯(lián) PID 控制器
通過(guò)中斷的任務(wù)分配器
脈寬調(diào)制控制器
帶加速度計(jì)和陀螺儀的 MPU-6050 傳感器,使用帶 MPU-6050 的數(shù)字運(yùn)動(dòng)處理
通過(guò) Twiddle 算法自動(dòng)調(diào)整
電池控制
面向?qū)ο蟮能浖O(shè)計(jì)
限制
僅在 Arduino Due 運(yùn)行
步進(jìn)電機(jī)
我決定使用 Stepper 引擎,因?yàn)樗鼈兙哂幸韵聝?yōu)勢(shì):
定位準(zhǔn)確,無(wú)累積誤差
靜止位置保持力矩
無(wú)因電機(jī)轉(zhuǎn)動(dòng)慣量引起的減速/滯后
通過(guò)計(jì)算 PWM 信號(hào)進(jìn)行簡(jiǎn)單的位置感測(cè)
MPU-6050加速度計(jì)+陀螺儀
MPU-6050 傳感器在單個(gè)芯片中包含一個(gè) MEMS 加速度計(jì)和一個(gè) MEMS 陀螺儀。它非常準(zhǔn)確,因?yàn)樗糜诿總€(gè)通道的 16 位模數(shù)轉(zhuǎn)換硬件。它同時(shí)捕獲 x、y 和 z 通道。傳感器使用 I2C 總線與 Arduino 連接。
我使用帶有 MPU-6050 傳感器的 DigitalMotion Processing,直接在芯片上進(jìn)行快速計(jì)算。這減少了 Arduino 的負(fù)載。
https://playground.arduino.cc/Main/MPU-6050
由于我的板的方向,我使用了根據(jù)來(lái)自 FIFO 的四元數(shù)計(jì)算的偏航/俯仰/滾動(dòng)角度(以度為單位)。通過(guò)閱讀歐拉角,我遇到了萬(wàn)向節(jié)鎖的問(wèn)題。
MP6500步進(jìn)電機(jī)驅(qū)動(dòng)器載體
使用的步進(jìn)電機(jī)驅(qū)動(dòng)器可讓您以每相高達(dá)約 1.5 A 的電流連續(xù)控制一個(gè)雙極步進(jìn)電機(jī),無(wú)需散熱器或強(qiáng)制氣流(數(shù)據(jù)表)。
級(jí)聯(lián)PID控制器
機(jī)器人由級(jí)聯(lián) PID 控制器控制。電機(jī)控制器確保機(jī)器人保持直立。位置控制器確保機(jī)器人保持其正確的設(shè)定點(diǎn)規(guī)定位置。
級(jí)聯(lián)控制是多個(gè)控制器級(jí)聯(lián);相關(guān)的控制循環(huán)相互嵌套。一個(gè)控制器(主控制器、位置)的控制器輸出變量用作另一個(gè)(從控制器、電機(jī))的參考變量。
標(biāo)準(zhǔn) PIDalgorithm 在較長(zhǎng)的測(cè)試系列后略有修改。向 P 分量添加參數(shù) Kx 乘以 I 分量。
在此更改之前,機(jī)器人總是想逃跑。I 部分的簡(jiǎn)單增加使機(jī)器人不穩(wěn)定。這個(gè)解決方案當(dāng)然在很大程度上取決于機(jī)器人的結(jié)構(gòu)(重量、重心等)。
PID控制器
PID控制器
PWM控制器
為了生成 PWM 信號(hào),我修改了“randomvibe”庫(kù)。( https://github.com/cloud-rocket/DuePWM )。PWM 控制器在 DuePWMmod 類(lèi)中實(shí)現(xiàn)。通過(guò) PWM Clock-A (“CLKA”) 設(shè)置的獨(dú)特頻率) 和時(shí)鐘 B ("CLKB")。
任務(wù)調(diào)度
任務(wù)派發(fā):
機(jī)器人
液晶顯示器
繪圖儀
是在 Ivan Seidel 的定時(shí)器庫(kù)的幫助下完成的。(https://github.com/ivanseidel/DueTimer感謝)生成三個(gè)具有相應(yīng)時(shí)間的中斷來(lái)調(diào)用任務(wù)。
軟件架構(gòu)
機(jī)器人由主程序SBRobotDue02和以下類(lèi)組成:
控制
電池
由于PWMmod
到期計(jì)時(shí)器
玩轉(zhuǎn)
發(fā)動(dòng)機(jī)
車(chē)輛
我的MPU
以及以下內(nèi)容:
配置
液晶顯示器
Pid參數(shù)
繪圖儀
該體系結(jié)構(gòu)顯示在以下 UML 圖中:
操縱桿
Funduino Joystick Shield V1.A 用于全方位控制機(jī)器人。盾牌使用的是 Arduino Mega。來(lái)自屏蔽的數(shù)據(jù)是通過(guò)藍(lán)牙連接上的串行事件接收的。JoyStickSlave01 草圖會(huì)在發(fā)生變化時(shí)立即向機(jī)器人發(fā)送數(shù)據(jù)。
使用 Twiddle 進(jìn)行 PIDauto 整定
Twiddle 是一種算法,它試圖為算法找到一個(gè)好的參數(shù)選擇。也稱(chēng)為爬山,它類(lèi)似于登山者在濃霧中尋找山頂,并引導(dǎo)他的腳步盡可能陡峭地上坡。如果只向四面八方下降,他就到達(dá)了頂峰。Twiddle算法用于PID參數(shù)的自動(dòng)整定。首先,可以通過(guò)使用電位計(jì)進(jìn)行手動(dòng)調(diào)整來(lái)測(cè)試參數(shù)。
- 自平衡機(jī)器人的構(gòu)建
- 使用Arduino的自平衡機(jī)器人 0次下載
- 基于Arduino UNO的自平衡機(jī)器人 0次下載
- 帶有BT Web控制的Arduino自平衡機(jī)器人
- Magicbit的自平衡機(jī)器人
- 利用麥克風(fēng)和音符來(lái)控制自平衡機(jī)器人
- 使用TensorFlow對(duì)自平衡機(jī)器人進(jìn)行手勢(shì)控制
- 如何制作WiFi控制的自平衡機(jī)器人
- Arduino平衡機(jī)器人盾牌代碼
- 迷你平衡機(jī)器人
- 畢業(yè)設(shè)計(jì)--球上自平衡機(jī)器人
- 基于JJBoover的遠(yuǎn)程控制ARDUNO自平衡機(jī)器人資料下載 2次下載
- DIY:簡(jiǎn)簡(jiǎn)單單自制平衡機(jī)器人 25次下載
- 基于MCF52255的兩輪自平衡巡線機(jī)器人設(shè)計(jì) 96次下載
- 自平衡人形機(jī)器人動(dòng)作控制器的設(shè)計(jì)
- 字節(jié)發(fā)布機(jī)器人領(lǐng)域首個(gè)開(kāi)源視覺(jué)-語(yǔ)言操作大模型,激發(fā)開(kāi)源VLMs更大潛能 360次閱讀
- 機(jī)器人技術(shù)中常用的路徑規(guī)劃算法的開(kāi)源庫(kù) 843次閱讀
- 電機(jī)轉(zhuǎn)子動(dòng)平衡機(jī)使用過(guò)程中的常見(jiàn)問(wèn)題 929次閱讀
- 烤箱自平衡門(mén)鉸鏈機(jī)構(gòu)的設(shè)計(jì) 1760次閱讀
- 利用STM32實(shí)現(xiàn)自平衡機(jī)器人功能項(xiàng)目 873次閱讀
- 基于STM32的自平衡機(jī)器人設(shè)計(jì) 802次閱讀
- 基于STM32的球上自平衡機(jī)器人設(shè)計(jì)方案 1856次閱讀
- 如何使用Arduino制造一個(gè)自動(dòng)平衡機(jī)器人 4429次閱讀
- 基于使用A4988驅(qū)動(dòng)程序和HC-05 bt模塊構(gòu)建自平衡機(jī)器人 2007次閱讀
- 基于ATmage128單片機(jī)和紅外測(cè)距傳感器實(shí)現(xiàn)自平衡機(jī)器人系統(tǒng)的設(shè)計(jì) 2272次閱讀
- 基于ATmega128單片機(jī)實(shí)現(xiàn)自平衡機(jī)器人控制系統(tǒng)的應(yīng)用方案 3851次閱讀
- 聯(lián)想發(fā)布自研工業(yè)機(jī)器人 2601次閱讀
- 真空潔凈機(jī)器人 6179次閱讀
- 協(xié)作機(jī)器人的起源_為什么需要協(xié)作機(jī)器人 8127次閱讀
- 簡(jiǎn)易平衡機(jī)器人制作圖解 6786次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
- 1.06 MB | 532次下載 | 免費(fèi)
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費(fèi)
- 3TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費(fèi)
- 5元宇宙深度解析—未來(lái)的未來(lái)-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費(fèi)
- 6迪文DGUS開(kāi)發(fā)指南
- 31.67 MB | 194次下載 | 免費(fèi)
- 7元宇宙底層硬件系列報(bào)告
- 13.42 MB | 182次下載 | 免費(fèi)
- 8FP5207XR-G1中文應(yīng)用手冊(cè)
- 1.09 MB | 178次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21549次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書(shū))
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德?tīng)栔?/a>
- 0.00 MB | 6656次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191187次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183279次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論
查看更多