該部分為小車所有運動的根源。
電機不能直接又數碼訊號1和0接兩端而產生運動,需要通過pwm對電機進行控速。我需要pwma和pwmb對每一側電機進行控制。
pwm速度控制系統通過脈寬調變器對大功率電晶體的開關時間進行控制,將直流電壓轉換成某種頻率的方波電壓,並通過對脈衝寬度的控制,改變輸出直流平均電壓的自動調速系統。
生成pwm訊號在我的理解就是生成正弦訊號,讓電機產生交流電,從而導致電機運動,如下圖所示:
而小車前進是由乙個死迴圈控制的,然後在main函式中開啟中斷,讓乙個函式控制pwm訊號產生。
1、開啟中斷並初始化
p2
=0xc0
;tmod
=0x01
;th0
=0xfc
;tl0
=0x66
;tr0=1
;et0=1
;ea=1
;
2、產生pwm訊號(左右相同,只展示其中之一)
void
pwm_out_right_motor
(void
)else
if(pwm_val_right>=
20)
pwm_val_right=0;
}else
}
3、主運動控制
void
run(
void
)
其中,微控制器埠位置如下:
這次實驗主要同的中斷,所以如果有串列埠通訊應該還得再多幾個中斷,接下來我會再把中斷學深一點,然後回校測試**,看看能不能在原來程式上走穩,不能的話就得學pid控制,又是很長一條路啊!!!!!!!!!!!!!!!!
[1]脈衝寬度調製
[2]pwm速度控制工作原理
語音模組LD3320控制小車運動
原理 利用ld3320模組控制小車運動,小車驅動模組為l298n,語音模組採用ld3320。ld3320核心為51微控制器,將識別的狀態通過串列埠傳送stm32,利用stm32控制小車運動。實驗現象 ld3320語音程式與stm32小車控制程式 硬體連線圖 ld3320部分程式 uint8 ld a...
Micropython 紅外防墜落小車實驗教程
15.2.實驗目的 研究智慧型小車結合紅外探頭尋跡前進。15.3.實驗材料 網上都能買到便宜 tpyboard開發板1塊 能跑python語言的開發板,小車的大腦 四路紅外感應探頭 小車的眼睛 資料線一根 充電寶乙個 給整個系統供電 智慧型小車底盤 包括驅動模組 杜邦線若干 15.3.2.四路紅外感...
飛思卡爾運動小車前方道路識別
基於openmv平台進行開發 特別注意 1.適用於直線行駛過程中 2.保證前方沒有障礙物 障礙物識別正在開發過程中 演算法原理 1.影象hough變換獲取直線 2.判斷道路 獲取影象結果 識別道路結果 存在時間誤差 程式 import sensor,image,time sensor.reset s...