K3NG based Antenna Rotator
Мой вариант под DUAL CONTROLLER G-5500 внешним устройством в такой корпус. Делается специально для одного из друзей. Подключение к компьютеру непосредственно через USB. Питание возможно как от USB, от контроллера, так и внешнее, + 10-20 вольт. Возможно подключение вместо контроллера внешнего блока реле и датчиков в виде переменных резисторов. Два типа LCD индикаторов. В идеале, двухстороняя печать, но данный вариант ориентирован на одностороннюю печать под ЛУТ (хочу попробовать фоторезист с шириной дорожки 0,4 мм) + несколько проволочных перемычек по верхней стороне без проводников. Софт на базе разработки K3NG, но потребует перекомпиляции под данную разводку. Пока не тестил. Ключевые транзисторы специально корпусные на предмет простой замены, если спалят. Можно даже КТ315 поставить :-) Плата на картинке не без ошибок, которые уже исправлены, и картинка предназначена для общего приедставления о проекте. В перспективе - хочу попробовать сделать поворотки на базе магнитного компаса и акселератора - это позволит обойтись вообще без механических датчиков. Демо-платка компаса уже заказана в Китае. Жаль, времени на всё не хватает. UPD 25/01/2016 Сделал первую плату с фоторезистом Подробности - здесь!После смывки фоторезиста, лужения, сверления отверстий и некоторой доработки углов и прорезей в плате под плоские выводы разъёма дополнительного питания и энкодера плата выглядит примерно вот так. Осталось закупить недостающие кнопочки и светодиоды и немного SMD компонентов и можно будет попробовать скомпиленную под это расположение выводов программу K3NG. А потом уже можно будет приобретать и дорабатывать корпус для формирования законченной конструкции
Состоялось первое включение! Дым не пошел - уже хорошо! Ардуина Нано радостно замигала светодиодом (дефолтово прошитый скетч). Подправил ноги под свою разводку и залил тестовый скетч для проверки дисплея - результат на фотке! А дальше начались траблы. Подправил и залил скетч K3NG - скетч стартанул, косвенно это видно по миганию определенного в скетче светодиода и отзыв на кнопки вправо-влево! А вот подключение дисплея вызывает ошибку при компилировании кода. И советы самого автора, данные на сайте, пока зациклились... Rule #1: Read the documentation. Rule #2: Refer to rule #1. Rule #3: Help others. Rule #4: Have fun.
В прочем, в причине возникающих ошибок я так и не разобрался... просто обновил Ардуиновский компилятор на 1.6.7 (у меня был ранее 1.0.5) и все пошло с пол-пинка. В общем, полуфабрикат завелся. Осталось допаять некоторые недостающие элементы, адаптировать конфиг прошивки в тонкости и выпилить дырки в верхней крышке корпуса (последнее, наверное, будет самым долгоиграющим делом) UPD 30/01/2016 К сожалению, всё оказалось не так просто. В процессе дальнейшего тестирования выяснилось, что позиционирование по вертикали ведет себя совершенно непредсказуемо, и остутсвует вменяемая реакция на кнопки по вертикали. Процесс поиска причины затянулся на пару дней, так как поведение указывало на явно хардварную проблему. Пришлось даже написать специальную программку тестирования кнопок и портов ввода и вывода. В итоге, выяснились некоторые особенности примененного процессора, о котором Ардуино умалчивает. В результате, пришлось резать печатку и переназначать некоторые ноги Ардуины в программе и перекомпилировать программу. Кстати, размер программы буквально втискивается в 32 Атмегу. Остаются считанные байты. Но результат есть!!! На снимке справа - мой тестовый стенд. Переменные резисторы выполняют роль датчиков положения редукторов поворотки, а сработку отсутствующих в контроллере реле можно контролировать по свечению соответствующих светодиодов. (вариантов блоков реле множество, их коммутатция контактов сильно зависит от применяемых в поворотках двигателей, да и располагать их есть смысл вместе с источником силового питания для двигателей повороток) Кстати, блоки реле можно использовать и готовые, например, сдвоенные и счетверенные для Ардуино, коих на алиэкспрессе множество.
Разобрался с командами управления из-под консольного терминала. Неработоспособность его вначале объяснилась отсутсвием добавления символа перевода строки по умолчанию в терминальном окне среды ардуино. Я помему-то думал, что эта опция отностится в выводу в окно, а не к вводной строке. Помимо команд различных типов (зависит от выбранного при компиляции эмуляции протокола) можно включить (или выключить повтороной такой-же командой \D) режим отладки, а так-же читать и изменять состояние любого порта процессора. Этими командами можно управлять почти любыми нестандартными подключениями к удаленному контроллеру. На досуге немного попилил корпус. Пока не до конца - не решен вопрос с кнопками, у меня в наличии нет подходящих, да и видимо, придётся менять микрики, но для этого надо посетить магазин Электроника. Но пока работаю, некогда. Зато протестил программу PstRotator - к сожалению, мой любимый лог UR5EQF напрямую с поворотками работать не умеет (не удалось в своё время убедить Владимира (UR5EQF), что в протоколе управления поворотками ничего сложного нет). Всё отказалось на редкость легко и просто! Только вот беда - программа эта платная, 20 Евро. Хотя, наверное, стоит того! Надо бы ещё с "Орбитроном" протестить прогу, но это уже ближе к натурным испытаниям летом... Прошедшяя неделя была посвящена борьбе с кодом Энтони - по непонятным причинам не выполнялось простое ветвление после крошечной модификации. Прога была показана спецам по С++, но результатов это не принесло, так как теории поведение прошивки никак не соответствовало. Пришлось проверенным способом трейсить прогу в консольный порт, и это принесло если не полное понимание происходящего внутри простой проверки условия, то нахождения места для подстановки костыля, который в дальнейшем позволил разобраться с происходящем! В итоге, я получил желаемый результат - управление двумя координатами поворота антенн с помощью одного энкодера, переключая на лету его назначение нажатием на кнопку энкодера, которая всё равно была ранее никуда не задействована. Все поправлено и скомпиено! Осталось лишь впаять вместо спрятанной ниже энкодера кнопки (её можно обнаружить на рисунке печатной платы вверху статейки) светодиод назначения энкодера! Драйвера. В моем случае ARDUINO NANO сделана на чипе CH-340 поэтому на компьютер надо установить необходимые драйвера. Для WINDOWS XP взять можно здесь. Для других версий операционок можно поискать здесь! Если у вас другой чип - ставьте драйвера для него! Для связки и управления так же надо настроить PSTROTATOR. в меню Coounication - EL / AZ+EL Com port выбрать ком-порт, который привязан к установленным для ARDUINO драйверам USB-Com преобразователя. Далее, в меню TRACKER поставить галку напротив пункта ORBITRON, если коенчно, он нужен. Переключение ручного/автоматического режимов PSTROTATORа производится перестановкой точки на его панельке MODE чуть левее значка спутниковой тарелки в положения Manual / Tracking соответственно. В самом Орбитроне помимо общих настроек (ищите в инете статей море) должны быть доставлены, настроены и включены MyDDE драйвера во вкладке РОТОР/РАДИО панели управления Орбитроном справа вверху в меню Драйвер. Включение/выключение драйверов производится значком справа от этого выпадающего поля Драйвер Для теста советую в Орбитроне выбрать отслеживание не спутников, а Солнца или Луны (в зависимости от времени суток). Дело в том, что Орбитроон начнет отдавать данные на PSTROTATOR только в тот момент, когда объект наблюдения будет в рассчетном поле доступности радиовидимости. Ну или выбрать такой спутник, который в данный момент доступен из вашего населенного пункта. Проблемы и тонкости стыковки с Орбитроном Тестирование и кастомизация ПО продолжается. Цель - сделать двухкоординатную поворотку БЕЗ датчиков, на базе электронного компаса. 2. Digital Rotator Controller for Arduino (Поворотное устройство на основе Arduino) - весьма интересные доработки поворотки для плавного старта - торможения. 3. RotorCraft Version 1.0 - Antenna Rotor Control Software for Windows and Linux - Matt Roberts http://www.kk5jy.net/RotorCraft-v1/
07 Dec 2015 by RM9WY
|