Arduone kit
Тәжірибе №12 Айнал, Мотор
Енді біз электрқозғалтқышымен танысатын боламыз
Есіңізде ме біз алдын сервоқозғалтқышты зерттедік? . Ол үшін бізге транзистор қажет, ол Arduino-ға қарағанда көп көлемді токты коммутациялайды (ауыстырады). Транзисторды пайдалана отырып, оның параметрлері таңдалған жабдық үшін лайықты екеніне көз жеткізу керек. Осы сұлба үшін қолданылатын транзистор, 40 Вольт және 200 миллиампер максималды кернеуге есептелген, біздің ойыншық қозғалтқышымыз үшін өте лайықты болып келеді!
Схема подключения
Скетч
const int motorPin = 9;

void setup()
{
  pinMode(motorPin, OUTPUT);
  Serial.begin(9600);
}


void loop()
{
  // motorOnThenOff();
  // motorOnThenOffWithSpeed();
  // motorAcceleration();
     serialSpeed();
}

void motorOnThenOff()
{
  int onTime = 3000;  
  int offTime = 3000; 
  
  digitalWrite(motorPin, HIGH); 
  delay(onTime);                
  digitalWrite(motorPin, LOW);  
  delay(offTime);               
}


void motorOnThenOffWithSpeed()
{
  int Speed1 = 200;  
  int Time1 = 3000;  
  
  int Speed2 = 50;   
  int Time2 = 3000;  
  
  analogWrite(motorPin, Speed1);   
  delay(Time1);                   
  analogWrite(motorPin, Speed2);  
  delay(Time2);                   
}


void motorAcceleration()
{
  int speed;
  int delayTime = 20; 

  for(speed = 0; speed <= 255; speed++) 
  {
    analogWrite(motorPin,speed);	
    delay(delayTime);           	
  }
  for(speed = 255; speed >= 0; speed--)
  {
    analogWrite(motorPin,speed);	
    delay(delayTime);           	
  }
}

void serialSpeed()
{
  int speed;
  Serial.println("Type a speed (0-255) into the box above,");
  Serial.println("then click [send] or press [return]");
  Serial.println();  
  while(true)
  {
    while (Serial.available() > 0)
    {
      speed = Serial.parseInt();
      speed = constrain(speed, 0, 255);
      Serial.print("Setting speed to ");
      Serial.println(speed);
      analogWrite(motorPin, speed);
    }
  }
}
Сіз нені көресіз:
Тұрақты ток қозғалтқышы айналып тұруы керек, егер тізбектің барлық құрамдаушылары дұрыс жинақталған болса. Егер ол орналмаса, кодтың Arduino-ға жүктелгенін тексеріңіз, және төмендегі ақауларды іздеу және жою тарауымен танысыңыз.
Мүмкін қиындықтар:
Мотор айналмайды Егер сіз 2N2222 басқаша, параметрлері бойынша лайықты транзисторды қолдансаңыз, оның құжат бойынша аяқ сәйкестігін тексеріңіз (кері болуы мүмкін).
Сонда да істемеді
Қозғалтқыштың 5 Вольттан істеп тұрғанын және осы қуаттың жететінін тексеріңіз.
Бәрібір істемеді
Кейде Arduino компьютерден сөнуі мүмкін. Одан USB-ды суырып, қайта жалғап көріңіз.
Өмірде қолданылуы:
Қашықтықтан басқарылатын көліктер дөңгелектерін бұрау және алға-артқа жүру үшін тұрақты ток қозғалтқышын қолданады.