Пульт управления азимутальным поворотным устройством


    Пульт управления разработан на базе микроконтроллера STM32. Подходит для поворотных устройств с импульсным выходным сигналом (количество импульсов/360 гр.) Например RY85-1, AZ2000 и подобные.
Реализован интерфейс GS-232 для управления поворотным устройством с ПК. Рекомендую использовать программу RotorCraft (by KK5JY). 
    Для калибровки пульта управления нужно выставить антенну на север (0 гр.) и включить питание пульта с зажатой красной кнопкой (СТАРТ). Будет выставлено значение 0 гр.
    Запись текущего положения антенны происходит в энергонезависимую память каждый раз при отключении питания пульта.
    
    Обозначения на дисплее
      * CUR AZIMUTH - Текущий азимут антенны
    * ANT AZIMUTH - Предустановленный пользователем азимут. После нажатия кнопки СТАРТ произойдет вращение антенны на предустановленный азимут.
   По умолчанию прошивка рассчитана на редуктор поворотного механизма с 960 импульсами/360 гр. Для изменения этого параметра, необходимо пересчитать коэффициенты и внести изменения в прошивку.
    Схема пульта управления


    Возможно обновление прошивки через USB загрузчик. Для этого необходимо выставить перемычку BOOT в положение ON.
    Немного о том, как реализован счетчик импульсов. Выход импульсов от редуктора поступает через развязывающую оптопару на счетный вход таймера микроконтроллера. На этом же таймере настроены прерывания по переполнению, то есть как только поступит необходимое количество импульсов, произойдет прерывание, которое сообщит основной программе, что антенна повернулась на необходимое количество градусов. 
    В прошивке реализован алгоритм защиты от обрыва в кабеле. Если после подачи напряжения на редуктор счетчик импульсов в течение 10 секунд не получает ни одного сигнала, питание с редуктора снимается автоматически.
    АЦП микроконтроллера служит для определения момента выключения питания. После того как АЦП обнаружит снижение напряжения питания на плате ниже определенного уровня, микроконтроллер записывает данные, которые необходимо сохранить, в энергонезависимую память (конденсатор большой емкости по питанию позволяет успеть это сделать). Вход ADC_IN необходимо соединить с плюсом источника питания, который используется для мотора поворотного устройства. Я использовал источник питания 12В 8А.
Если возникнут какие-то вопросы по схеме или прошивке - пишите мне на email.