motor sheld plus не работает(решено)

Тема в разделе "Arduino & Shields", создана пользователем maxS2004, 1 янв 2019.

Метки:
  1. maxS2004

    maxS2004 Гик

    Здравствуйте преобрёл motor sheld plus. Все подключил,загрузил на плату скетч вижу все индикаторы горят но мотор не крутится , подскажите как сделать что б мотор крутился
     
  2. NikitOS

    NikitOS Король шутов Администратор

    Я ж уже писал, хрустальный шар разбился после новогоднего застолья.

    Где скетч? Где схема?
     
  3. maxS2004

    maxS2004 Гик

  4. maxS2004

    maxS2004 Гик

    на клемнике M1 куда подключаю мотор смерил напряжение оказалось что его там нет
    так и должно быть?
     
  5. NikitOS

    NikitOS Король шутов Администратор

  6. maxS2004

    maxS2004 Гик

    делал сначало на Arduino вот этот
    Код (C++):
    // подключите один мотор к клемме: M1+ и M1-
    // а второй к клемме: M2+ и M2-
    // Motor shield использует четыре контакта 4, 5, 6, 7 для управления моторами
    // 4 и 7 — для направления, 5 и 6 — для скорости
    #define SPEED_1      5
    #define DIR_1        4
    #define SPEED_2      6
    #define DIR_2        7
    void setup() {
      // настраиваем выводы платы 4, 5, 6, 7 на вывод сигналов
      for (int i = 4; i < 8; i++) {    
        pinMode(i, OUTPUT);
      }
    }
    void loop() {
      // устанавливаем направление мотора «M1» в одну сторону
      digitalWrite(DIR_1, LOW);
      // включаем мотор на максимальной скорости
      analogWrite(SPEED_1, 255);
      // ждём одну секунду
      delay(1000);
      // устанавливаем направление мотора «M1» в другую сторону
      digitalWrite(DIR_1, HIGH);
      // ждём одну секунду
      delay(1000);
      // выключаем первый мотор
      analogWrite(SPEED_1, 0);
      // устанавливаем направление мотора «M2» в одну сторону
      digitalWrite(DIR_2, LOW);
      // включаем второй мотор на максимальной скорости
      analogWrite(SPEED_2, 255);
      // ждём одну секунду
      delay(1000);
      // устанавливаем направление мотора «M2» в другую сторону
      digitalWrite(DIR_2, HIGH);
      // ждём одну секунду
      delay(1000);
      // выключаем второй мотор
      analogWrite(SPEED_2, 0);
      // ждём одну секунду
      delay(1000);
    }
    а потом перещёл на iskra js вот этот скетч
    Код (C++):
    // подключаем библиотеку «motor»
    var Motor = require('@amperka/motor');
    // подключаем первый мотор канала M1 на Motor Shield
    var motorOne = Motor.connect(Motor.MotorShield.M1);
    // подключаем второй мотор канала M2 на Motor Shield
    motorOne.write(0.20);
    и там и там одна и таже картина все индикаторы горят правильно но мотор не крутится
     
  7. NikitOS

    NikitOS Король шутов Администратор

    А если просто вот так, то какое напряжение на M1?
    Код (Text):
    #define SPEED_1      5
    #define DIR_1        4
    #define SPEED_2      6
    #define DIR_2        7
    void setup() {
      for (int i = 4; i < 8; i++) {  
        pinMode(i, OUTPUT);
      }
    }
    void loop() {
      digitalWrite(DIR_1, LOW);
      analogWrite(SPEED_1, 255);
    }
     
  8. maxS2004

    maxS2004 Гик

  9. NikitOS

    NikitOS Король шутов Администратор

    Скорее всего, попался бракованный шилд, обратитесь в тех. поддержку
     
  10. maxS2004

    maxS2004 Гик

    закрутился !!!!!!
     
  11. maxS2004

    maxS2004 Гик

    питание было совместное на Arduino и на мотор шилд
     
  12. maxS2004

    maxS2004 Гик

    я запитал всё раздельно и мотор закрутился
     
  13. NikitOS

    NikitOS Король шутов Администратор

    Значит был сильно слыбый источник питания :)
     
    maxS2004 нравится это.
  14. maxS2004

    maxS2004 Гик