Помогите с реверсивным вращением бесколлекторного двигателя

Тема в разделе "Arduino & Shields", создана пользователем IgorMerits, 31 янв 2016.

  1. IgorMerits

    IgorMerits Нуб

    Плата Arduino nano v.7
    Регулятор Afro ESC 12A http://www.ivrotor.com/afro-esc-12a-v3-2-4s-with-bec/
    Прошивка регулятора для реверсивного вращения(заливал сам)- BlHeli: https://yadi.sk/i/J7BTFwUvo3CmD

    Код для сервы:

    Servo myservo2;
    #define step_servo 10 //минимальный угол поворота ссервы за один клик
    uint8_t min_pos=10, max_pos=170; //минимальное и максимаьное положение сервы
    i2=90; //начальное положение сервы

    void setup()
    {
    myservo2.attach(13); // Подключение сервоприводов к порту
    myservo2.write(i2); // начальное положение сервы(горизот) при включении
    }

    void loop()
    {
    if (UART_ReadByte(inByte))
    {
    if ( packid == 16 )
    {
    packid=0;
    switch (inByte) // Смотрим какая команда пришла
    {

    case 'K': // Серва поворачивается вправо
    if(i2 > min_pos) myservo2.write(i2 -= step_servo);
    break;

    case 'H': // Серва поворачивается влево
    if(i2 < max_pos) myservo2.write(i2 += step_servo);
    break;

    }

    } else packet_id(inByte);
    }
    //wdt_reset();
    }

    При нажатии на кнопку 'H' двигатель крутится в одну сторону , при нажатии на 'K'-останавливается, при последующих нажатиях на 'K' - двигатель не вращается ни в какую сторону.
    Подскажите в чем тут проблема.
     
  2. MESS

    MESS Гик

    А что здесь регулируется?
     
  3. IgorMerits

    IgorMerits Нуб

    Здесь, нажатием двух кнопок ('H' и 'K'), регулируются как скорость вращения бесколлекторного двигателя, так и направление вращения (по часовой и против часовой стрелки). Просто при настройках уже переустановленной прошивки BlHeli для регулятора скорости Afro 12A, в поле "Motor Direction" нужно было выставить значение "Bidirectional" а я по ошибке выставлял "Reverced": https://yadi.sk/i/2C2BWy3Po5dYP Теперь все заработало как надо. Тему можно закрыть, разобрался самостоятельно.