16巡跡自走車

(2017/09/23)

昨天做了自走車測試,車子會動了,因此再來測試下一步【避障】及【巡跡】的功能,但避障要用到超音波感測器,但好像沒有相關程式積木,所以先來測試【巡跡】的功能。

一、測試紅外線感應器

  • 先取一【紅外線感應器】,將 VCC接3.3V、GND接GND、OUT接P0(如下圖)

  • 做簡易測試

    • 先寫一簡單的程式

    • 測試結果:當感測器在白紙上,則感測器會接收到反射訊號,則P0值為1

    • 測試結果:當感測器在黑紙上 (黑色會吸收訊號),則感測器不會收到反射訊號,則P0值為0

二、測試三路巡跡模組

  • 先取一【三路巡跡模組】,接線如下:R接P12、C接P13、L接P14

    • 寫一簡易程式來測試,如下:

    • 發現,我原本這組【三路巡跡模組】好像有點問題,不管在黑線或白線上,其值都呈現0,所以再趕快換一組來測試

三、將三路巡跡模組應用在自走車上

  • 利用【三路巡跡模組】呈現的結果來判斷該直線前進或是向左轉、還是向右轉?利用下圖來說明

    • R*1+C*2+L*4得出一數字(0~7,上圖後方數字),並根據此數字來控制車子前進或左、右轉,程式如下:

    • 理論上,這樣就會巡跡了,但地圖的大小及車子的反應及速度的快慢都會影響成功率,其實我做出來因車子的速度太快,沒有很成功,因此還要再改造!

四、增加ENA及ENB的使用來控制車子速度的快慢

  • ENA接P0、ENB接P1;右輪改接P15、P16

  • 程式如下(附件)

    • 但靈敏(反應)度不是高,所以無法完美的巡跡!!!