用Robot:bit做一輛循線小車 -- mbot 改裝篇

2018-02-15 11:19

[Robot:bit] 用Robot:bit做一輛循線小車(新手入門巡線小車必看!)

sharpcat 發表於 2017-12-20 09:49:08 | 只看該作者 [複製連結]   

本人買Robot:bit的初衷,就是看重它擴展電機驅動的能力,4路直流電機驅動和2路步進電機驅動,加上小巧的體積,成了Microbit國內現有擴展板的翹楚!

拿到Robot:bit第一件事,就是琢磨著怎麼把它按到一個車架上,試過鋼樑、樂高積木和亞克力板,無奈手藝不行,搭出來的車子鬆鬆散散。好在我跟我兒子都愛玩“車”,家裡有不下1000輛車,挑來挑去,決定把以前買的一輛金屬車架給用上。

由於Microbit的定位跟Arduino有點差異,所以IO擴展的能力不是很強,配上Robot:bit,最後只留了3個可用的IO出來,所以1路給超聲測距,2路給循線感測器,雖然剛剛好,但怎麼也算有了一輛智慧小車的乞丐配置。


回到今天的主題,循線,方法有很多種,2路算是入門,這裡是大致的思路,隨便畫個圖,見諒哈

 

一般黑色膠帶的寬度在2~3cm,所有兩個循線感測器的安裝間距留1.5cm就差不多了。程式的邏輯:
 

  • 兩個感測器都壓線黑線,直行
  • 左邊越黑線,右拐彎
  • 右邊越黑線,左拐彎
  • 兩個都越黑線,後退;



這是一個最基本的循線策略,但實際上我們會遇到拐彎的賽道,當小車拐不過來的時候,會進入4狀態,小車會後退找線,雖然沒有問題,但是看起來很變扭,用我娃的話說,這麼開車要暈車了。

所以我們稍微改進下循線邏輯:

 

這樣做的好處是小車直行的時候調整拐彎的次數變少了,另外還去掉了個倒退找黑線控制,媽媽再也不用擔心我暈車了

接下來打開make code, 小白就按我做的PXT積木抄好了。
注意我這裡將循線感測器接到了P1和P2,對應Robot:bit的A1,A2.

首先做個開機畫面,一輛小車,初始化Flag=0,run代表按A鍵啟動循線,再按一次停止循線。



然後自訂個讀取循線感測器的副程式。



注意不同廠家的循線感測器高低電平代表的狀態有時候是反的,請根據實際情況修改,
我這裡:
status=0,兩個感測器壓黑線;
status==1,左邊壓黑線;
status==2, 右邊壓黑線;
status==3,兩個都不在黑線上;

自訂區塊在這裡:



主要的邏輯判斷和程式如下,強烈建議Robot:bit把雙電機積木做成橫排的,豎排太占地方了

 

請注意我這裡左電機的速度是150,右電機是158,那是因為左右電機個體有差異,調整之後跑得更直線。

好了,該收工了,下載程式到Micobit試試吧,這裡放上兩段視頻,第一個是用Robot:bit做的兩路循線;第二個是我九歲兒子設計的4路循線小車,完美解決十字路口,直角拐彎和銳角拐彎,是不是很厲害,容我嘚瑟一下!注意用剛才的2路循線程式跑第二個圖,在過直角和銳角彎的時候,會有幾率反向拐彎,原因就讓你們自己試驗找答案吧!

 

mbot 體感遙控改裝套件

www.astar-tek.com.tw/products/mbot-%E9%AB%94%E6%84%9F%E9%81%99%E6%8E%A7%E6%94%B9%E8%A3%9D%E5%A5%97%E4%BB%B6/

 

 

本主題由 喵人兒 于 2018-1-3 11:50 置頂

樓主的相關閱讀

 

—————

返回