+7-960-0655211 (Билайн)
+7-987-4207734 (МТС)
интернет-магазин
доставка по России и СНГ
нам уже 10 лет!

Форум

Страницы: 1
Motor shield и моторчики Gekko
 
Приобрел motor shield и моторы gekko.
Попытался поуправлять ими, но столкнулся с проблемой. Моторы начинают двигаться только тогда, когда на них подаешь максимальную скорость, используя ШИМ-управление (т.е. подаю значение 255). Иначе, при меньшем значении, например 150, моторы стоят, а шилд пищит...
Но если сначала подал 255, то потом можно уменьшить скорость вплоть до 70, но если моторы снова вдруг встали на скорости 60 или ниже, то их нельзя запустить, не подав на них снова 255.
Кто нибудь знает в чем может быть проблема??
 
Смазать моторы. С чего запитываете(батарейки, зарядка телефона, блок питания)?
Изменено: parus - 13.11.2011 22:38:37
 
Если смазать не поможет, то дать поработать минут пять(на полной скважности либо напрямую к питанию) и ещё измерьте потребляемый ток.
 
Питается с Arduino по USB. А чем смазать то их? и где? шестерни редукторов?
 
Еще заметил что если они остановились и шилд пищит, то можно руками их завести и они дальше работать будут...
 
ну питания по юсб для двух моторов не достаточно. ЮСБ отдаëт до 500ма. но при толстом кабеле и через задние порты. А у вас один мотор до 380.

смазать хоть маслом(любым) шестерни и на самом моторе вал( где шестерëнка и где провод подходит) по 1-3 капле. больше не надо.
 
Значит просто не хватает питания, спасибо. А как тогда мне их подключить к аккумуляторам? и какие лучше использовать? я приобрел также держатель на 4 батарейки АА...у меня просто есть как раз аккумуляторы обычные пальчиковые, но я так понимаю их не хватит чтобы запитать все?
 
Не факт. Попробуйте с одним моторчиком. Посмотрите вольтметром при "заклинившем" моторчике напряжение питания(+5V).


Если всё-таки будете подключать аккумулятор, то есть 2 варианта: 0) Вся ардуина питается от аккумулятора 1)От аккумулятора питается motor shield.


Если 0 вариант, то нельзя превышать 5 вольт(если ардуина не имеет LMки, иначе можно). Если 1 - то убедиться, что ардуино это позволяет.


Чуть не забыл - проблема может быть куда проще - попробуйте понизить частоту(не скважность, а именно частоту) PWM. Может просто драйвер двигателей не успевает.
 
А можно вопрос?) как понизить эту частоту?)
 
Хороший вопрос. В нормальном AVR просто делитель выставляется, который перед счетчиком таймера. Как это сделать в ардуино хз. Покажите ваш код. А по этой библиотеке ардуино документация есть?
 
Да тут даже и библиотеки то нет подключаемой. Все пишется настандартном языке для ардуино(библиотеки есть стандартные). Я вот нашел одну подключаемую для мотор шилда, но не знаю подойдет ли она к моему. Называется . А мой код предельно прост:

Код
int EN1 = 6;  // пин(скорость первого мотора)
int EN2 = 5;  // пин(скорость второго)

int IN1 = 7;  // пин(направление первого)
int IN2 = 4;  // пин(направление вторго)
 
void Motor1(int pwm, boolean reverse) // pwm - значение скорости от 0 до 255, reverse - направление
{
   analogWrite(EN1,pwm); 
     if(reverse) digitalWrite(IN1,HIGH);    
     else digitalWrite(IN1,LOW);    
}  
        
void Motor2(int pwm, boolean reverse)
{
    analogWrite(EN2,pwm);
      if(reverse) digitalWrite(IN2,HIGH);    
      else digitalWrite(IN2,LOW);    
}  

void forward() 
{
  Motor1(255,true);
  Motor2(255,false);
  delay(1500);
  Motor1(0,true);
  Motor2(0,false);
}

void setup() 
{ 
    int i;

    for(i=5;i<=8;i++)
    pinMode(i, OUTPUT);

    Serial.begin(9600);   
} 


void loop() 
{ 
  char val;
  
  while(1)
  {
    val = Serial.read();
    if(val!=-1)
       {
            switch(val)
            {
              case 'w':
              forward();
              break;
            }
            
       }      
  }                         
}
 
 
http://arduino.cc/en/Tutorial/PWM

500 кгц по умолчанию. Надо понижать. Драйверу это слишком много. Для начала поставьте вообще 30 Герц

Вот нашёл как понижать: http://www.arduino.cc/playground/Code/PwmFrequency

Не понимаю за что все так любят это ардуино(особенно среду разработки). Для стандартного функционала - замечательно. Но как только шаг в сторону - куча неудобств.
 
Спасибо. Попробую что-нибудь сделать. Ну я ардуину купил как для начинающего, чтобы хоть понять как что делается в робототехнике)
 
неподскажите где можно найти программы для уравления ардуйно спомощью АРС 220?
 
Цитата
Дмитрий Тимошенко пишет:
неподскажите где можно найти программы для уравления ардуйно спомощью АРС 220?
Вы документацию прочитали? Она написана очень понятно. Если вкратце: оба модуля настраиваете с компьютера на одинаковые параметры. На ардуине: подключаете к uart. EN,SET - high. AUX - высокий при отправке, низкий при приёме. baudrate везде поставьте 9600.
 
А реально самому спаять Arduino Duemilanove, используя Atmega328 от купленной версии?
Изменено: Дмитрий Тимошенко - 23.11.2011 19:25:09
 
Люди делают. Схем полно в интернете.
Страницы: 1
Читают тему (гостей: 1)