Время назад, из «любви к искусству», написал 3 скетча для контроллера поворотного устройства. Функционал у всех практически одинаковый, но разные индикаторы и микроконтроллеры.Приветствую всех!
Первый – ArduinoMicro и LCD 1602, второй – графический цветной дисплей ILI 9341, 3.2 '' и Micro, шина SPY. Четкая картинка, но уж очень мелко.
И третий, о котором далее пойдет речь, - TFT ST7796, 4’’ и ESP32- WROOM, параллельная восьмибитная шина.
Во всех проектах датчиками азимута выступают оптические энкодеры на 360 тиков на оборот.
Что умеет контроллер.
1. Автоматически определяет направление поворота, исходя из соотношения целевого и текущего азимутов.
2. Плавный старт – стоп.
3. Может работать в автоматическом режиме, получая целевой азимут из любого Лога, умеющего управлять повороткой по протоколу Yaesu. Проверено с PSTRotator, DXView, N1MM. Например, в случае N1MM вы ввели позывной в EntryWindow, нажали CTR+j и антенна поворачивается на азимут этого позывного автоматически.
4. При выключении запоминает текущий азимут.
Картинка дисплея получилась так себе – фотографировал телефоном. Искажены цвета – пятак в центре на самом деле ярко красный, стрелки зеленая и голубая.
На дисплее изображение очень четкое и яркое.
Что изображено на дисплее:
1. MANUAL/AVTO/ALIGN(выравнивание)- в каком режиме работает контроллер.
2. STOP/TURN (поворот) – стоим или крутимся
3. AT (AzTarget (цель)) – целевой азимут
4. AR (AzReal) – текущий азимут
5. CW/CCW-направление вращения или = = = если азимуты совпали, поворот завершен.
Управляется контроллер одной многофункциональной кнопкой:
1. Один клик – поворот на заданный азимут.
2. Два клика – переход в режим AVTO
3. Удержание кнопки – вы хотите использовать свой старый большой компас со стрелкой, после поворота в режиме AVTO на дисплее будет текущий азимут, а на старом компасе значение до поворота. Зажимаем кнопку, энкодеры блокируются, и вы поворачиваете стрелку компаса согласно дисплея.
4. Три клика – после выключения и включения контроллера AR обнулится. Используется для устранения расхождения истинного положения антенны и показания дисплея (провернуло антенну на масте или по какой другой причине). Ставим антенну на ноль и трижды кликаем.
Контроллер имеет три выходя для управления двигателем:
- включение питания статора;
- включение перефазировки статора;
- включение питания ротора.
“ Все железо приобретал на Али.
Сразу скажу, что использованы все 25 доступных пинов ESP32, схем не рисовал, там нечего рисовать, печаток не делал.
Проект использует библиотеки TFT_eSPI, Button2 c github и идею VE2DX.
Если этот проект заинтересует, то выложу исходники и все подробно объясню. Прочитал написанное – так себе получилось, но я старался.
И еще, я ни разу ни профи и пишу для собственного удовольствия.
73! Игорь, UC6N