聨合方式 micro:bit小車7 = Cagebot科技寶

Cagebot科技寶 積木

.

TIRT官網

Taoyuan International Robot Tournament
>> Top International Robot Tournament
>> Taiwan International Robot Tournament

回饋地方,在地化 昇華 國際觀 頂尖國際機器人競賽 >> 台灣辦理國際機器人競賽

.

micro:bit自走車競賽

科技寶網路賣場 <<連結

配合廠商:123機器人(FB)

選用擴展板: yahboom superbit 123機器人賣場  <<連結

擴展板URL: https://github.com/lzty634158/SuperBit

yahboom教程<<連結 

競賽規則主體使用科技寶積木及對應控制板,目前需事前組好車帶入比賽會場,廠商提供建議組裝步驟簡報<<連結

科技寶組裝小細節:

科技寶組裝細節注意點

小缺口 對應軸心上平面 可以裝更優!

競賽規則<<連結

TIRT2020場地說明

123機器人 許景淼先生 9/9研習電子檔分享點

行動裝置APP 遙控 採用下方 yahboom APP

micro:bit 接收訊號(被操控)端程式請參上方[分享點] →
範例程式→ 手機搖控→ microbit-superbit-藍芽.hex 建議makecode中編修,程式細節於 9/9研習中說明。

自動循線感測器配上[分享點]程式 時 建議二點以測白色外圍 為主

國高中組的循跡路徑物件 感測解法有二:

※運用黑色橫線感測做動[物件]於紅框中(選這方案 車子不需裝測距感測器)

※運用測距感測器(超音波、紅外線 ...) 將物件移到紅框中

這要一小段自走動作程序作業

.

[科技寶蛋]cageBot EGG替代方案

科技寶蛋替代模式

練習能同競賽物件是最佳環境,受限資源問題,所以分享以3mm板材雷切版解賽前練習問題。

科技寶蛋替代模式-雷切

以上方SVG排雷切用圖檔 SVG | DXF<<可下載

建議雷切前調切割順序 作業才方便。

.

賽程規定電機擴展板Super:bit 與 科技寶積木 固定

Super:bit 設定孔距同樂高積木方案,所以板上孔距是 48mm 及 72mm

科技寶積木以 10mm 為孔距間格,純轉接可以 48=>50 72=>70 塑膠件小斜角固定?所以目前配件 2支樂高積木固定件 建議以對角方式固定。

當要四個點都要固定想法,解法就是自造[轉接板]! 轉接板要錯位處理,48=>50 | 50改70 為錯位方式。

雷切平面轉接板即 80x80 大小板材,科技寶4個固定孔距 70x70 , Super:bit 48x72 方式作業。

FDM 3D列印方式? 不想列印到80x80這麼大的物件 及 固定Super:bit使用列印方式固定 為設計初步想法。

60mm固定方式

70x60固定 列印 2件為一組 : FreeCAD 原始檔 | 3D列印STL <<可下載

80mm 固定方式

70x80固定 列印 2件為一組 : FreeCAD 原始檔 | 3D列印STL <<可下載

3DP列印置放建議

建議列印置放方向如上,兼顧強度及變形力量。

這方式可以少安裝二只科技寶積木長桿,讓車身更輕一些些。

科技寶車micro:bit 模式A4

多出積木再來善用它處!

.

參與競賽[經濟款小車]方案

買科技寶物件組參賽車子1

採購科技寶二項物件

1 動力自走車 <<連結

2 微型減速直流馬達-TRx2 <<連結

動力自走車積木+二單軸馬達組裝

採購不足機械元件

1 萬向輪

2 M3規格螺絲(建議用機械用 內六角,節省工具類使用)

採購電子元件

1 micro:bit 主板

2 micro:bit 電機擴展板

3 循跡感測器

4 測距感測器( 超音波、紅外線... )

3DP設計整合元件分享

1 萬向輪與循跡感測器固定架 FreeCAD原始檔 | STL列印檔 <<下載點

2 Superbit與馬達支撐架 FreeCAD原始檔 | STL列印檔 <<下載點

3 超音波支撐架 FreeCAD原始檔 | STL列印檔 <<下載點

.

.

避障自走車

運用[超音波感測器]執行需求功能 : 如果循[橫線]為比賽作業方案此感測器可以不裝。

定義車體那方向為向前,定[模式A] 如下圖,Super:bit上主板micro:bit正面往後,右輪接M1 / 左輪接M3,使用super:bit擴展積木,車子向前行 M1 M3 均[負值] -50 ~ -255,車子向後行 M1 M3 均正值 50 ~ 255
modA car def

上圖是依簡報組裝,其車體長度為20cm。比賽規則是符合最大值。

科技寶是積木!重新改裝算簡單。所以主動輪向前移動(減車長度)為改裝重點。

科技寶模式A2

上圖依組裝案例 讓動力軸心往前 2cm | 下方 [模式A3]  動力軸心往前 3cm

.

.

cageBot GAS桶未穿外衣的GAS桶 cageBot GAS桶

2020 TIRT micro:bit自走車 國高中組於循跡自走需將 [GAS桶] 目前圓桶高度 3+2=5cm | 5+2=7cm,如要使用超音波測前方物件,需下圖調超音波感測高度。

科技寶車micro:bit 模式A3.

.

.

定[模式B] 如下圖,Super:bit上主板micro:bit正面往後,右輪接M1 / 左輪接M3,使用super:bit擴展積木,車子向前行 M1 M3 均[負值] -43 ~ -255,車子向後行 M1 M3 均正值 43 ~ 255

主動輪在前方模式B

.

常見超音波與micro:bit

官網文件 [擴展→ 輸入 sonar 關鍵字]擴展積木

HC-SR04 基本 正電、接地、觸發、回應 4個接腳,訊號需佔 2腳位。

正吉大師解密:  [原來超音波只要用echo腳位就好]

吉師的超音波擴展URL: https://github.com/lioujj/pxt-sensors

mason大師 補正分享文 [超音波 HC-SR04 4 pins 改 3 pins 使用 (讓 Micro:bit 節省 pin)]

sonar 2 micro:bit

.

HC-SR04超音波接線實體照

合用二種擴展積木及定義如何自走?移動的規則

移動規則→自走模式

如:前方 5cm以上 無障礙物則直行,前方 5cm以下有障礙物時 [後退]n秒,右轉測距、左轉測距,比對二者空間距離。再以相對空間大的方向前進,邊行邊測距...

.

開機後,接A+B鍵後進入測距自走模式:前方 8cm以上 無障礙物則PWM=200速度 直行,前方 8cm以下有障礙物時 PWM=150 [後退] 0.2秒 | 接續PWM=100 右轉0.3秒 | 偵測有無障礙物重覆執行避障自走...(程式接力於分享A)

程式分享B程式下載 <<可下載

FB分享實際做動的影片

.

國內比賽活動: 全國自走車競賽>>迷宮賽 場地採購|自造 運用教學?

台中賣 迷宮賽廠商資訊

競賽的車子多數安置 前、左、右 三方向 3個超音波測距

中華民國愛自造者學習協會 為全國自走車競賽推動者

教育部智慧輪型機器人競賽

.

尋跡自走車

一般跡使用白底黑線,自造方案是黑色電工膠帶為黑線,約18.5mm

2020TIRT micro:bit科技寶自走車 黑線 寬25mm

筆者測試捐贈科技寶附的 2只[線感測器] 高度14mm 效果算OK

利基介紹競速自走車巡跡元件原理

自造 修改萬向輪的高度兼巡線感測器固定:

FreeCAD 原始檔 | 3D列印STL <<可下載

3D列印萬向輪架兼尋線感測器固定孔

3D列印萬向輪架兼尋線感測器固定孔

.

上列是架體於積木桿上方,固定萬向輪下移 7mm。

下列改架體於積木桿下方,固定萬向輪上移 3mm,科技寶積木桿截面以 10mm為準則。

FreeCAD 原始檔 | 3D列印STL <<可下載 (這版組裝與拆解 比較簡易)

科技寶車下方萬向輪兼感測器固定架1B

.

穿上裙子-減少外部干擾?

當使用類比訊號的控制方案,不知是程式問題?參數問題? 環境因素? 結構問題?... 實驗精神! 自造裙子穿著可以減少干擾因? 紅外線循線感測器加蓋(穿裙子)

FreeCAD 原始檔 | 3D列印STL <<可下載

紅外線循線感測器加蓋(穿裙子)

.

跡自走練習1

線感測器上有數位訊號 及 類比訊號 二種,初學者建議 數位訊號開始

這感測器上 可調準位 控轉數位訊號的參考數值

因為車底! 所以裝上車前調教比較容易

自造輔助架與萬向輪架 [調教用]:

FreeCAD原始檔 | 3D列印STL<<可下載

巡跡調教用架

裝上車體下方前調教尋線感測轉換界定值

.

IR-follow-A2D ?

調教 界定值=類比數位 準則

當連續黑線條件下(沒橫線、沒交叉),一個感測器就能 循跡功能。

.

2個感測器距離近,可能同時測到黑色。

follow-IR-doc

定義接線 左側感測器接 P1 | 感測器接 P2 

車體以[模式A]接線,設定 按A鍵啓動跡,按B鍵停止動作

程式分享A | 程式下載 <<可下載

FB分享實際做動的影片

二感測點(車體橫向) 距離 :同時感測到黒色 | :平時二點感測到白色區

二馬達軸心與感測點距離(車體緃向)距離 均需探究與實際操作找最佳位置

2點均白色往前直行,有黒色橫線條件時,這感測方式能測 2點同時測到黒色!即有機會執行功能作業。

2感測器距離大

修正循線位置動作增加時間差 能否提高循線的車速?

修正程式段

車速(轉彎比原車速快) 與 時間延時 塔配 測試出組合參數 得比較好循線車速?

感測器延時判別

延時以感測器情況 [設定] 方案會更好嗎?

.

遙桿模式: 遙控器端 以 程式分享Ⅱ 配

車上MCU 程式分享H | 程式下載 <<可下載

 

.

跡自走練習2

線感測器 接 類比訊號,因為使用類比所以每個感測器對 黑色/白色 解讀值有所差異。

所以類比模式巡跡前需對場地 黑白解讀值 處理轉化比較好 = 正規化轉換 

類比感測器讀值大小及範圍是無法預估的,可能受到明亮環境、昏暗環境、白熾光環境、 黃光環境、感測器與地面距離影響而有不同,這些不確性容易對循跡控制造成不穩定

類比感測值校正正規化,或稱 歸一化程式來解決

歸一化/標準化實質是一種線性變換,線性變換有很多良好的性質,這些性質決定了對資料改變後不會造成“失效”,反而能提高資料的表現,這些性質是歸一化/標準化的前提。

.

可定義黑色中間位置是 X=0.0 ,右偏 X= +1.0 | 左 偏 X= -1.0

follow-IR-A-center

follow-IR-A-Right X=+1.0

follow-IR-A-Left X=-1.0

紅外線測黑白色反射模式感測器改接 類比訊號 接 P1 與 P2,如上說明,程式擬定第一次按A鍵執行[歸一化]取環境黑白值,第二次接A鍵才是進入[程式]功能。

目前這紅外線感測器 類比訊號輸出! 測白色約 100~250  | 測黑色約 420~780 

歸一化後的值變化範圍設定 0-2000 之間

左右二者相減 之值變化 -2000 ~ +2000 [槓桿方式 or 蹺蹺板方式] ,下列程式以取類比值,修正動作以數位方式作業,即以 小於-1500 | 大於1500 轉動修正。

遙桿模式: 遙控器端 以 程式分享Ⅱ 配

車上MCU 程式分享I程式下載 <<可下載

偏量即修訂左右馬達轉速?

控制因(玩法)學理應用:台科大 鄭教授 程式控制教學簡報<<連結

        • 開關控制 (On-Off Control)
        • 比例控制 (Proportional Control) – P
        • 比例-積分控制 (Proportional-Integral Control) – PI
        • 比例-微分控制 (Proportional-Derivative Control) – PD
        • 比例-積分-微分控制
          (Proportional-Integral-Derivative Control) – PID wiki-PID控制器<<連結

P控制?

程式J 接續歸一化後 x 範圍 -2000 ~ 2000 的值,取 -1600~1600 做為 二輪比例控制。

遙桿模式: 遙控器端 以 程式分享Ⅱ

車上MCU 程式分享J | 程式下載 <<可下載 [車速因結構不同要調參數!]

.

本車輪子能動的PWM為 40~255 基礎速度 50+n  即常過線了,擬定控變於 40~基礎速度~155,左右側比例修正設定想法 左右二輪不向後轉為原則,故基礎速度PWM與 [ 不轉動PWM 及 最高PWM ] 差值不等,原本 1個 KP值 演變二個 [KP+]  [KP-] 二個變數:擬定此2值範圍 0~100。

 遙桿模式: 遙控器端 以 程式分享Ⅱ 配

車上MCU 程式分享K | 程式下載 <<可下載

.

為了日後更多感測器,改用[插位法]計算 X= (L*-1+R*1) / (L+R) , X值範圍以 -1 ~ 0 ~ +1

遙桿模式: 遙控器端 以 程式分享Ⅱ 配

車上MCU 程式分享L 程式下載 <<可下載

.

實際二個感測器安置距離非靠近! 以上方計算方式 當實際位置近中間,其X值更不穩定。 所以假設中間有一個虛位的感測器的公式  MV=中間虛值應該是[二側黒色平均值] ?  X值範圍將變小 -0.667 ~ +0.667

 X= (L*-1 + V*0 + R*+1) / (L+V+R) 

程式於 -0.65 ~ +0.65 偏位加速方式動態修正, 一個 kP變數0~100 處理方案。

遙桿模式: 遙控器端 以 程式分享Ⅱ 配

車上MCU 程式分享P程式下載 <<可下載

.

PI控制?

比例 加 積分 控制,積分概念:將過去誤差累積後做為控制因,設定 KI變數 範圍 0~100 ,[重整飽和(Reset Windup)] 目前擬為12,到邊界修正也屬[重整飽和],程式重點如下圖

PI控制程式說明

遙桿模式: 遙控器端 以 程式分享Ⅱ 配

車上MCU 程式分享M程式下載 <<可下載

實作測試 於直線路徑時左右擺動次數有所降低,過去誤差修正有效果。

.

PD控制?

比例 加 微分 控制,微分控制之功能在於預測誤差訊號之未來走向,微分概念實作程式中: 前後誤差量(差值)為預期未來方向控因,設定 KD變數 範圍 0~100

cageBot PD ctrl

遙桿模式: 遙控器端 以 程式分享Ⅱ 配

車上MCU 程式分享N | 程式下載 <<可下載

.

PID控制?

將上二類 I D 控因加種一起,實測未有明顯差異,再測[歸一化]數值變化其多數於二極化,所以類比數值為要控因 使用2個感測器 目前無法有類比數值作用。程式依學理設計參考,實際數據作用暫時作用少。

遙桿模式: 遙控器端 以 程式分享Ⅱ 配

車上MCU 程式分享O程式下載 <<可下載

.

2個取用類比訊號功能 = 3個取用數位訊號功能 嗎?

.

.

跡自走練習3

如果用 3個跡感測器 數位訊號模式? 類比訊號模式處理? 效果???

3個數位訊號模式對於 巡線有斷線(虚線) 及 T字路 能有辨識能耐!

x=-1 p3 follow-IR-A-center Px3 x=+1 p3

3個感測器玩法?

3個均接[數位]訊號 LCR定義討論

3個循跡感測器數位方式與車子進行分析<<連結

ITRT競賽活動 黒線25mm 運用3個感測器取數位訊號 分析

follow-3IR-D-base

基本型 3種狀態,下圖乃線寬25mm 感測器間距15mm 條件中,增加2狀態

follow-3IR_D-add 2state

L C R 車子反應
中間快速前行
小左 右輪減速
小右 左輪減速
測定最左 右輪可能要停而修正
測定最右 左輪可能要停而修正

練習: 3感測器 LP1 | CP13 | RP2 ,感測器靠接一排,車子電源開後建議調教感測器均有以上 5種變化 LED燈號反應。

遙桿模式: 遙控器端 以 程式分享Ⅱ 配

車上MCU 程式分享Q | 程式下載 <<可下載

.

如果改[類]專業人仕玩模式 黑底白線,白線寬約20mm 可行嗎?

解:原始程式參數是針對黑線寬25mm 情境設定,這回變窄!所以速度調慢,轉角也比較小所以輪停止→小小反轉,環境黑線變白線!數位感測器辨識 1→0 0→1 ,邏輯程式區不想改,可以每回取感測值反正。

原始程式取感測器值=>>在背黑線白情況程式修訂

遙桿模式: 遙控器端 以 程式分享Ⅱ 配

車上MCU 程式分享R | 程式下載 <<可下載

.

左右2個接[數位] 中間玩[類比]

.

3個均接[類比]訊號

練習案例 3感測器 LP1 | CP13 | RP2 ,感測器靠接一排,

[插位法]計算 X = ( L*-1 + C*0 + R*1 ) ( L+C+R ) , X值範圍以 -1 ~ 0 ~ +1
類比感測器 歸一化後 >> X值變化 -0.99 ~ +0.99

[數線分段控制]玩玩看:

如下圖 依目前[線位置]車子 控制區分 大轉向修訂=C、輪速差小修訂=B、直線前衝=A ?目前五區段 或更多段?

線性分段

遙桿模式: 遙控器端 以 程式分享Ⅱ 配

車上MCU 程式分享S程式下載 <<可下載

.

上列是白底黒線模式,在黑底白線(類專家玩法)其程式修訂?

顏色相反所以計算的X值反向

顏色相反所以計算的X值反向,實練場地轉彎比較大所以尚要修大轉時停止的輪有些反向轉動值。實測於19mm白色路徑 中間值0.3 太大,就是改 X=0.03也多數是直線執行。

遙桿模式: 遙控器端 以 程式分享Ⅱ 配

車上MCU 程式分享T程式下載 <<可下載

.

以下程式執行環境設定為[底白線] 線寛19mm 類專家模式玩法中探討[程式]控因:

P控制玩玩看:

P的比例控制為主要控因,所以比例[函式定義]是重要因素

車上MCU 程式分享U | 程式下載 <<可下載 請等等...

.

PI控制玩玩看:

遙桿模式: 遙控器端 以 程式分享Ⅱ 配

車上MCU 程式分享V | 程式下載 <<可下載 請等等...

.

PD控制玩玩看:

遙桿模式: 遙控器端 以 程式分享Ⅱ 配

車上MCU 程式分享X | 程式下載 <<可下載 請等等...

.

PID控制玩玩看:

遙桿模式: 遙控器端 以 程式分享Ⅱ 配

車上MCU 程式分享Y | 程式下載 <<可下載 請等等...

.

如果使用 arduino 方案時,常見 5顆類比循跡感測器方案,多數運用 QTRSensors 函式庫 處理。

.

yahboom APP 遙自走車

google play 上 Mbit <<連結

ios App Store APP 上 [Mbit] <<連結

123機器人許先生分享 安置 車上micro:bit

此APP 藍牙方式遙控,APP 上=前進 | 下=後退 | 左=逆時針轉 | 右=順時針轉

數位模式操控

.

micro:bit遙桿自走車

123機器人許先生分享點<<Google drive 目前分享程式屬初學者[數位模式]搖控方案

選用 123機器人網路賣場連結yahboom micro:bit遙桿

擴展積木URL:  https://github.com/lzty634158/GHBit

本站micro:bit遙控相關教學專頁

原始接腳知原理,運用左側[遙桿]類比值玩[類比模式遙控]

GPHbit 接腳說明

擬定操控方案:

競賽規則有二動作: 自走(循線) & 搖控任務

綠色按鍵=進入自走case1 黃色按鍵=進入自走case2 藍色按鍵=進搖控 紅色按鍵=令車停止

遙控器端 程式分享Ⅰ | 程式下載 <<可下載

車上MCU 程式分享C | 程式下載 <<可下載

註:目前[廣播群組=1] 使用時請分開配對相同群組

.

實際操作後,發現這車最高速 PWM=255 太快了,搖控任務不易操作,自走case2不怎麼需求。

重新擬定右側功能鍵: 綠色按鍵=進入循跡自走 黃色按鍵=進搖控慢速 藍色按鍵=進搖控快速 紅色按鍵=令車停止

遙控器端 程式分享Ⅱ | 程式下載 <<可下載

車上MCU 程式分享D | 程式下載 <<可下載 遙控模式[左右]二側速度打6折
操控感有所提昇

註:目前[廣播群組=1] 使用時請分開配對相同群組

.

KSB045遙桿 加入戰場?

遙控器端 程式分享Ⅰ | 程式下載 <<可下載

遙控器端 程式分享Ⅱ 程式下載 <<可下載

.

V7RC micro:bit科技寶自走車

接線定義:Super:bit上主板micro:bit正面向後,右輪接M1 / 左輪接M3,使用super:bit擴展積木,車子向前行 M1 M3 以[負值] -50 ~ -255,車子向後行 M1 M3 以正值 50 ~ 255 控制變化。

V7RC設定於[坦克]控制介面 ,操作模式預定同[遙桿]感覺 左側=類比遙桿 右側=同按鍵功能

車上MCU 程式分享E | 程式下載 <<可下載

實作測試上列程式,於自走循跡時又等BLE訊號 產生運作不順利,改由車上micro:bit A B 二鍵 做功能切換,擬 A鍵=開始自走循跡 B鍵=進APP BLE遙控模式 A+B鍵=車停止

車上micro:bit 程式分享F | 程式下載 <<可下載

.

V7RC設定於[坦克]控制介面,左側Y軸控左輪 | 右側Y軸控右輪 直覺控制

功能切換:二側外八=車子馬達停 二側內八=進遙控(3種上限切換) 二側同時右下=循跡自走模式 二側同時左下=避障自走模式

設計&實作測試 過程發現因為左右的緃向有控馬達控因,已在遙控模式要切換車子模式就後行...所以功能切換重新擬定操控模式

功能切換:二側向外=車子馬達停 二側向內=進遙控(3種上限切換) 二側同時往右=循跡自走模式 二側同時往左=避障自走模式 放開讓二側遙桿回中間位置才切換

車上MCU 程式努力中... 程式分享G | 程式下載 <<

.

.

...

错误号码 这意味着什么
10 micro:bit的I2C总线不工作。设备可能会受到物理损坏。
20 micro:bit上没有空闲内存。您的程序可能过于复杂或包含许多大变量。尝试减少代码。
30 在micro:bit堆空间中检测到损坏(通常为存储变量分配的内存)。尝试将不同的.hex文件刷新到您的设备
40 micro:bit无法正确执行你的脚本。向其中写入一个不同的.hex文件,然后尝试再次闪烁并运行您以前的脚本。
42 micro:bit无法正确执行你的脚本。向其中写入一个不同的.hex文件,然后尝试再次闪烁并运行您以前的脚本。
43 micro:bit的无线电组件发生错误。
50 micro:bit的加速度计组件发生错误。
51 micro:bit的磁力计组件发生错误。
98 断言失败。断言中的条件为false 时发生的MakeCode错误。

原始文出處En

.

Last modified: Monday, 19 October 2020, 11:15 AM