2022年8月16日火曜日

桔梗001のモーターの出力を半固定抵抗器で調整 220816_002

先のスケッチ 220816_001の解説です。

1 元気な乾電池4本では6Vもの電圧が出てしまい、それは130型モーターにとっては大きすぎます。
せめてPWM(Pulse Width Modulation)の仕組みで入力される電力を落としてやりたいと思います。

2 乾電池の元気さは刻一刻とかわりますので、PWMのデューティー値はプログラムを書き換えるよりむしろ半固定抵抗器で簡単に変えられるようにしたいと思います。

3 左右のモーターには個性があり、同じ電圧をかけても回転数が異なり真っ直ぐ進みません。次の段階(220816_003)では上記1と2の仕組みを左右別々のモーターにつけたいと思います。

------------------
#define DTYA 0    //0番ピンをDTYAと定義 デューティー値A
Arduinoの0番ピンに前回10kΩの半固定抵抗器を付けました。その可動部分の電極の電位をDTYAと定義します。
デューティー値A の意味を込めました。


  pinMode(DTYA,INPUT);     //DTYAは入力です
「このDTYAピンは入力ピンです」とArduinoに向けて宣言します。


  int i=analogRead(DTYA)/4;  // DTYAの電位を読みとり4で割ってiに代入する(DTYAは1~1023で来る。 iは1~255で入力する。);

「DTYAをアナログで読み込みなさい。それを4で割りなさい。」…ですが、
DTYAの電位は1024段階で得られます。
しかし後ほど使う i の値は256段階で欲しいです。
よってここで 4で割る という事をします。