在五一假期的前一天(4.30)我和搭檔就用一下午的時間寫好了小車的循跡功能**,在晚上便將硬體組裝好進行測試了。
微控制器程式設計最大的缺點就是不能像c語言一樣除錯。這一缺點為本來就缺乏經驗的我們帶來了非常大的麻煩。在**編譯時我們認為能夠非常順利非常自然就能實現的功能,小車真正跑起來之後的實際情況總會與期望有差別。而且硬體問題也會影響測試。比如,在測試中總會有些導線莫名其妙地和感測器或馬達介面斷開連線。
以下為自己測試中遇的問題與解決辦法:
紅外感測器檢測到黑線時車頭轉向錯誤。
小車在轉直角彎時會直接駛出軌道
對於第乙個問題,我們主要檢查了小車兩個馬達的接線情況 ,發現是小車馬達的接線接反了。於是…呵呵…
而第二個問題則是我們審題時的疏漏。實驗室的軌道類似賽車軌道,原本我們以為小車要在賽道裡面跑我們認為的跑法,但是學長的真實意思是讓小車沿著賽道邊緣跑學長要我們做的。沿著邊緣跑就簡單了!按照我們原來的演算法將遇到黑線時的轉向方向互換,之後小車就再也沒跑出過賽道。不過學長還是把上一種情況轉直角彎的方法教給了我們:
小車行駛時,一直讓小車朝有黑線的方向偏移;
當靠近黑線的感測器檢測到黑線時小車向遠離黑線的一側轉向;
繼續執行上述步驟;
循跡小車**如下:
int stby =11;
//standby
int pwma =3;
//speed control
int ain1 =23;
//direction
int ain2 =22;
//direction
//motor b
int pwmb =5;
//speed control
int bin1 =25;
//direction
int bin2 =24;
//direction
const
int buttonpin1=9;
const
int buttonpin2=10;
int leftval;
int rightval;
void
setup()
void
loop()
else
if(rightval==low&&leftval==high)}}
void
move
(int motor,
int speed,
int direction)
if(motor ==1)
else
}
智慧型循跡小車 循跡小車電子製作
第一步根據元器件清單清點器件,看是否缺件少件。下圖是元器件全家福 第二步依次焊接元器件 要先焊接小的元器件,再焊接大的元器件,最後粘上電池座和馬達。焊接好所有元器件後再次肉眼檢查有沒有焊反,虛焊漏焊的點。確認無誤後,進行第三步。第三步裝上電池除錯。電馬達的2根線可能會裝反,光敏電阻和發光二極體的相對...
智慧型小車 循跡模組
這幾天了arm9什麼都不想做了,每天都想著這兒,買的板子實際上講板子的內容很少的,都是些實際操作之類的,這個需要不斷的聯絡才能熟練,板子配送的其餘13張光碟都是講的基於linux的嵌入式,這個更需要時間去理解了,整好現在正在玩智慧型小車,準備弄個循跡,避障,超聲波的車子,至於別的藍芽模組的燒錢的就看...
藍芽arduino小車
本人剛剛入門arduino 製作了乙個非常簡陋的藍芽小車 主要有hc 05藍芽串列埠模組帶動小車執行 材料有 hc 05藍芽串列埠 小車底盤輪胎以及電機 l298n模組 arduino uno r3 杜邦線四節五號電池 材料的連線 hc 05藍芽串列埠與arduino uno r3的連線 l298n...