Автор Тема: Ардуино контроллер поворотки  (Прочитано 364652 раз)

0 Пользователей и 22 Гостей просматривают эту тему.

Оффлайн RX3DR Александр

  • Модератор
  • Ветеран
  • *****
  • Сообщений: 4981
  • Репутация: +499/-91
  • команда UF3D
  • QRA: KO85XM
Re: Ардуино контроллер поворотки
« Ответ #90 : 24 Июль 2014, 14:37:02 »
Попробовал к UNO подключить простой индикатор и происходит тоже самое заставка, потом пустой экран. На МEGA  все показывает после заставки.
ex RX3DUR-UV3DUR

Оффлайн RX3DR Александр

  • Модератор
  • Ветеран
  • *****
  • Сообщений: 4981
  • Репутация: +499/-91
  • команда UF3D
  • QRA: KO85XM
Re: Ардуино контроллер поворотки
« Ответ #91 : 25 Июль 2014, 14:22:17 »
Чтобы скетч работал на UNO нужно закоментить в файле rotator_features.h  строку // #define DEBUG_DUMP
Проверил с программой PST ,все нормально работает с протоколом для YAESU . Проверил с программой UCXlog тоже работает по протоколу YAESU-232.
ex RX3DUR-UV3DUR

Онлайн UD2F

  • Модератор форума
  • Ветеран
  • *****
  • Сообщений: 4349
  • Репутация: +820/-31
  • UA2 Contest Club
  • QRA: KO04HR
Re: Ардуино контроллер поворотки
« Ответ #92 : 15 Август 2014, 15:51:44 »
Относительно импульсного входа, кажется Александр пытался...

Could you uncomment this:

#define DEBUG_POSITION_PULSE_INPUT

Recompile, upload, and send a debug log (activated with \d command)....


On Thu, Aug 14, 2014 at 11:03 AM, iv3sde@yahoo.com [radioartisan] <radioartisan@yahoogroups.com> wrote:

     

    hello, I'm trying to replace my old controlbox with arduino. The project is very nice and complete, but I have problems with the input pulse. No one uses the positioning pulse ?? I do not understand how it works on the software, I use a proximity sensor that reads me the engine speed, engine revs in practice in 1850 to 360 degree rotation .... but on the display always read 180.0. Probably I'm wrong .. but I do not know where ... In debug pulses are counted incrementally. Can anyone help me ??? Thanks IV3SDE
73! Валентин   ex: RU2FM

Оффлайн RX3DR Александр

  • Модератор
  • Ветеран
  • *****
  • Сообщений: 4981
  • Репутация: +499/-91
  • команда UF3D
  • QRA: KO85XM
Re: Ардуино контроллер поворотки
« Ответ #93 : 06 Октябрь 2014, 10:34:30 »
У меня пока проект застопорился в таком состоянии и еще не решен вопрос с импульсами от актуатора. Буду дальше разбираться как выкрою время. Да и коробочку надо подыскать.
ex RX3DUR-UV3DUR

Оффлайн RX3DR Александр

  • Модератор
  • Ветеран
  • *****
  • Сообщений: 4981
  • Репутация: +499/-91
  • команда UF3D
  • QRA: KO85XM
Re: Ардуино контроллер поворотки
« Ответ #94 : 22 Октябрь 2014, 19:12:05 »
Сегодня пытался запустить работу контролера по считываю градусов по элевации за счет герконового датчика актуатора. Открыл по моему мнению нужные строки в скетче ,но чуда не произошло. Может я не правильно понял на какую ногу надо эти импульсы подавать(хотя вряд ли) .Или как правильно подать сигнал на ардуину. Я один конец посадил на землю а со второго через 1к подал на Pin1 (как  прописано в скетче).
#ifdef FEATURE_AZ_POSITION_PULSE_INPUT
#define az_position_pulse_pin 1    / must be an interrupt capable pin!
#define AZ_POSITION_PULSE_PIN_INTERRUPT 1   // Uno: pin 2 = interrupt 0, pin 3 = interrupt 1 ;
#endif     
может для UNO нельзя использовать Pin 1?                               
« Последнее редактирование: 22 Октябрь 2014, 19:15:05 от RX3DR Александр »
ex RX3DUR-UV3DUR

Оффлайн RL3D

  • УКВ комитет
  • Ветеран
  • *****
  • Сообщений: 1262
  • Репутация: +631/-39
  • 2-й QRA: LO02SW
  • QRA: KO85WV
Re: Ардуино контроллер поворотки
« Ответ #95 : 22 Октябрь 2014, 19:25:11 »
Ничего не понимаю в ардуино, но в комментарии написано, что для uno interrupt 1 - это pin 3.
Кроме того, где-то выше должен быть определён макрос FEATURE_AZ_POSITION_PULSE_INPUT, иначе определения внутри ifdef работать не будут.

Онлайн UD2F

  • Модератор форума
  • Ветеран
  • *****
  • Сообщений: 4349
  • Репутация: +820/-31
  • UA2 Contest Club
  • QRA: KO04HR
Re: Ардуино контроллер поворотки
« Ответ #96 : 22 Октябрь 2014, 19:40:09 »
Саша AZ_POSITION все верно ?

И здесь еще по выводам можно почитать http://amperka.ru/collection/boards/product/arduino-uno
« Последнее редактирование: 22 Октябрь 2014, 19:44:43 от RO2F Валентин »
73! Валентин   ex: RU2FM

Оффлайн RX3DR Александр

  • Модератор
  • Ветеран
  • *****
  • Сообщений: 4981
  • Репутация: +499/-91
  • команда UF3D
  • QRA: KO85XM
Re: Ардуино контроллер поворотки
« Ответ #97 : 22 Октябрь 2014, 20:16:06 »
Нашел распиновку UNO(http://fixled.ru/image/data/mcu/arduino_uno_r3_pinout_l.jpg) ,да нельзя подавать на Pin1 ,надо хотя бы на Pin2 и INT 0.
Придется сместить ножку 2 на другую ,а то ее сейчас использует LCD . Строки в разных файлах я раскоментил. И еще думаю как все должно работать,ардуино должно запоминать свое положение после выключения ,а после включения показывать его. И если у нас нажата кнопка вверх то скажем импульсы прибавляются и тем самым изменяются градусы на увеличение и на оборот. Но пока это проверить не могу так как не считает.
« Последнее редактирование: 22 Октябрь 2014, 20:41:08 от RX3DR Александр »
ex RX3DUR-UV3DUR

Оффлайн RM5P

  • Очный чемпионат
  • Ветеран
  • *****
  • Сообщений: 638
  • Репутация: +193/-4
  • QRA: KO84VH
Re: Ардуино контроллер поворотки
« Ответ #98 : 22 Октябрь 2014, 20:59:07 »
Я сейчас запустил такой контроллер только для азимута с повороткой от Conrad.
Датчик импульсов должен быть подключен к пину который поддерживает прерывания. Для UNO это 2 и 3 (// Uno: pin 2 = interrupt 0, pin 3 = interrupt 1 ) В связи с этим пришлось изменить включение индикатора. Александр правильно отметил это.
Контроллер запоминает последнее положение антенны.
Я включил опцию #define OPTION_PULSE_IGNORE_AMBIGUOUS_PULSES // for azimuth and elevation position pulse input feature, ignore pulses that arrive when no rotation is active
Что-бы импульсы от датчика учитывались только в случае нажатых кнопок движения.
В принципе на столе все работает. Если получится, то 1 ноября проверю в боевых условиях.
Best regards and 73!
Gleb RM5P

Оффлайн RL3D

  • УКВ комитет
  • Ветеран
  • *****
  • Сообщений: 1262
  • Репутация: +631/-39
  • 2-й QRA: LO02SW
  • QRA: KO85WV
Re: Ардуино контроллер поворотки
« Ответ #99 : 22 Октябрь 2014, 21:14:37 »
Всё же ещё раз. Валентин правильный вопрос задаёт
Саша AZ_POSITION все верно ?
Александр говорит об элевации, а код привёл для азимута FEATURE_AZ_POSITION_PULSE_INPUT здесь чисто по названию AZ - это азимут?
Не перепутано? А то не те кнопки влиять будут.

Оффлайн RX3DR Александр

  • Модератор
  • Ветеран
  • *****
  • Сообщений: 4981
  • Репутация: +499/-91
  • команда UF3D
  • QRA: KO85XM
Re: Ардуино контроллер поворотки
« Ответ #100 : 22 Октябрь 2014, 21:15:28 »
Я включил опцию #define OPTION_PULSE_IGNORE_AMBIGUOUS_PULSES // for azimuth and elevation position pulse input feature, ignore pulses that arrive when no rotation is active
А в каком файле эта строка? Еще так и остался вопрос как всеже правильно подключить выход от геркона? Или так и оставить 1к через геркон на землю?
« Последнее редактирование: 22 Октябрь 2014, 21:18:25 от RX3DR Александр »
ex RX3DUR-UV3DUR

Оффлайн RX3DR Александр

  • Модератор
  • Ветеран
  • *****
  • Сообщений: 4981
  • Репутация: +499/-91
  • команда UF3D
  • QRA: KO85XM
Re: Ардуино контроллер поворотки
« Ответ #101 : 22 Октябрь 2014, 21:16:17 »
Не перепутано?
Нет ,это я ошибся когда сюда копировал
ex RX3DUR-UV3DUR

Оффлайн RM5P

  • Очный чемпионат
  • Ветеран
  • *****
  • Сообщений: 638
  • Репутация: +193/-4
  • QRA: KO84VH
Re: Ардуино контроллер поворотки
« Ответ #102 : 22 Октябрь 2014, 21:34:52 »
А в каком файле эта строка?
В rotator_features.h номер строки - 105.
Я просто корочу герконом на землю. Но думаю, что резистор не помешает. Завтра поставлю.
Best regards and 73!
Gleb RM5P

Оффлайн RX3DR Александр

  • Модератор
  • Ветеран
  • *****
  • Сообщений: 4981
  • Репутация: +499/-91
  • команда UF3D
  • QRA: KO85XM
Re: Ардуино контроллер поворотки
« Ответ #103 : 22 Октябрь 2014, 21:37:19 »
А,значит в вашей поворотке стоит датчик в виде геркона ? И показывает правильно градусы,а первоначально как узнает о градусах или первый раз прописывали через монитор в проге ардуино?
Да,а изменяли количество импульсов на один импульс с вашего геркона в строке скетча?
ex RX3DUR-UV3DUR

Оффлайн RM5P

  • Очный чемпионат
  • Ветеран
  • *****
  • Сообщений: 638
  • Репутация: +193/-4
  • QRA: KO84VH
Re: Ардуино контроллер поворотки
« Ответ #104 : 22 Октябрь 2014, 21:46:12 »
А,значит в вашей поворотке стоит датчик в виде геркона ? И показывает правильно градусы,а первоначально как узнает о градусах или первый раз прописывали через монитор в проге ардуино?
В поворотке теперь стоит геркон и пять магнитов.
В настройках контроллера надо указать сколько импульсов приходится на один градус.
За это отвечает строка #define AZ_POSITION_PULSE_DEG_PER_PULSE 0.87
в файле rotator_settings.h Про элевацию задавать параметры надо строчкой ниже.
При первом старте через терминал (или монитор) задаю текущие положение антенны. Все. Далее контроллер все отсчитывает сам. Еще у меня включено ограничение вращения 360 градусов. Потому как режим 450 градусов совместно с софтом управления с компьютера как-то все криво работало. Может что-то подкрутить надо было-бы но руки пока не дошли.

Best regards and 73!
Gleb RM5P