熱門(mén): 51單片機(jī) | 24小時(shí)必答區(qū) | 單片機(jī)教程 | 單片機(jī)DIY制作 | STM32 | Cortex M3 | 模數(shù)電子 | 電子DIY制作 | 音響/功放 | 拆機(jī)樂(lè)園 | Arduino | 嵌入式OS | 程序設(shè)計(jì)
![]() |
發(fā)布時(shí)間: 2022-10-22 09:45
正文摘要:我用的是stc89c52單片機(jī)。在網(wǎng)上也搜索過(guò)但沒(méi)找到具體的解決方法,我看到可以用測(cè)速模塊測(cè)速度然后讓兩個(gè)電機(jī)的占空比一致,想嘗試但是我現(xiàn)在的小車(chē)紅外遙控接收用了外部中斷和定時(shí)器,pwm調(diào)速也用了定時(shí)器,我想問(wèn) ... |
單純?cè)O(shè)置兩輪的控制輸入無(wú)法保證輸出一致,機(jī)械上阻力也不一樣,我覺(jué)得可以先嘗試左右輪速閉環(huán),速度一致,然后嘗試用角速度反饋補(bǔ)償偏航。 |
首先選硬件,就應(yīng)該找兩個(gè)一致性比較好的TT電機(jī),我覺(jué)得那種金屬齒輪的藍(lán)色的就比黃色的好得多。 其次,程序有點(diǎn)問(wèn)題,你看218行,怎么能在時(shí)間中斷中運(yùn)行函數(shù)啊,測(cè)測(cè)車(chē)的左右偏差比例定義成宏,比如左偏25%,那左3個(gè)波走一下,右4個(gè)走一下。像是你已經(jīng)定義了直行程序必然有個(gè) if(pwm_val_left<XXX)你就把XXX乘以(1-25%),討厭的是這個(gè)比例隨著車(chē)速和電源變化,所以我一般還加個(gè)測(cè)電壓的板子,把電壓也作為參數(shù)。 |
wc86110 發(fā)表于 2022-10-22 13:27 該怎么調(diào)呢,求個(gè)方法 |
調(diào)試到兩輪無(wú)差速不就走直線了么,如按樓主的改法會(huì)犧牲掉左右轉(zhuǎn)向功能 |
因?yàn)閘298n直接接電源3接3.7v電池,所以用的pwm讓車(chē)子速度減下來(lái) |
Powered by 單片機(jī)教程網(wǎng)