助けて!私のモーターは作動していません!

私はArduino、3つのLDR、およびL293Dモータドライバシールドを使ってプロジェクトを作成しました。私のプロジェクトでは、最初のLDRから光を遮ると、モーターが回転します。第2のLDRから光を遮断すると、モーターは反対方向に回転し、第3の光を遮ると停止します。コードにエラーはなく、私はそれが動作することを期待しました...しかし運はありません。第1または第2のLDRからの光を遮断したとき、モーターは微妙な " zing-zing "タイプのサウンドしか作成しませんでした。なんでこんなことが起こっているの?これは電源の問題ですか?しかし、2本の9vバッテリーをシールドとArduinoに接続しました。助けてください!ここに私が使用したコードがあります -

#include (AFMotor.h)

const int LDR1 = A0;
const int LDR2 = A1;
const int LDR3 = A2;
const int LightIntensity = 150; 
int SensorReading1 = 0;
int SensorReading2 = 0;
int SensorReading3 = 0;
AF_DCMotor motor(1);

void setup(void)
{
  pinMode(LDR1, INPUT);
  pinMode(LDR2, INPUT);
  pinMode(LDR3, INPUT);
  motor.setSpeed(255);
}

void loop()
{
  SensorReading1 = analogRead(LDR1);
  SensorReading2 = analogRead(LDR2);
  SensorReading3 = analogRead(LDR3);

  if (SensorReading1 < LightIntensity)
  {
    motor.run(FORWARD);
  }

  if (SensorReading2 < LightIntensity)
  {
    motor.run(BACKWARD);
  }

   if (SensorReading3 < LightIntensity)
  {
    motor.run(RELEASE);
  }
}
0
あなたが使用しているモータを指定してください。私は、12Vバッテリー、またはより多くの電流を供給するウォールアダプタを使用することをお勧めします。また、私は彼らが非常に少ないトラブルと相対的に低電流で動作するので、サーボを使用することをお勧めします。何かが感知されたときにそれらを実行させることができます。これはあなたのサーキットの消費電力を削減します。あなたは仕事をする5つのバックスのような小さなサーボを手に入れることができます。盾の必要はないだろう。しかし、あなたの現在のモーターを使用することを主張する場合は、12ボルト7.5アバッテリーのようなものを使用してください(それは私が使用するものです)。それは長く続き、より多くの電流を供給します。私はまた推薦する
追加された 著者 Igzorn,

1 答え

あなたはあなたのモーターが何であるかは言わず、答えには大きな支えがありますが、あなたの問題はもっと力が必要だと思います。

9Vのバッテリーは実際にあなたに多くの電流を与えることはありません、あなたは '壁の疣贅'、別名は携帯電話の充電器でお勧めします。通常、特にモータでは、アンプが高いほど正常です。あなたが5Vのモータを持っていると仮定して、1Ampに5Vを出すことができるものを試してみてください。

また、あなたのプログラムが何をしているかを示すためにSerial.println()をもっと使いましょう。 LDRのifステートメントにデバッグステートメントがある場合、スイッチが動作していることがわかります。

1
追加された