調整馬達驅動力
輪子
輪子的種類、材質、胎紋和直徑都會影響車子前進。在這兒我們只針對輪胎直徑來探討,其餘先忽略。
套件所附的橡膠輪直徑約為 70 mm,我們知道圓周公式是
2 * Pi * R
或 Pi * D
套用公式可以得到圓周長,如下
圓周長 = 70 * 3.14 = 219.8 mm
所以我們可以知道輪子轉一圈車子前進約 220 mm。
但事實是如此嗎? 答案是...那可不一定。
有很多因素會影響車子的前進,例如地面不平、左右2個馬達沒有平行安裝、左右2個馬達輸出效率不同...等。
輪胎定位
玩具廠商為了讓搖控車能夠筆直前進,一般都設有微調裝置。我們的搖控車沒有這個裝置,只能 稍微調整馬達的固定螺絲。
如何測量小車是否需要微調
將下方程式上載到 Arduino 開發板,並將小車置放於平坦地上行走,量測前進距離與終點處之偏移距離。
PWM(Pulse-Width Modulation)
TT直流馬達驅動電壓為 3~6V。Arduino 的 analogWrite 給值 255 時腳位輸出 5V,如果要輸出 3V,那麼應該要給多少值? 我們可以這樣計算
X = 255 * 3.3 / 5 = 153
約等於 150。所以我們給 PWM 必須在 150~255 之間,小於 150 時馬達就不會轉動。
要考慮負載
還要考慮負載,也就是車子的重量會影響馬達帶動車輪轉動。
在每一次車子的負重有變動,或重心有變動時,都要重新調整輪胎定位。
// vehicle01.ino
// 讓車子持續前進,從事輪胎定位
void setup() {
pinMode(3, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(9, OUTPUT);
//左輪前進
analogWrite(5, 255);
analogWrite(3, 0);
//右輪前進
analogWrite(9, 255);
analogWrite(6, 0);
}
void loop() {}