Professionele antennerotator-controller – Naadloze integratie met trackingsoftware
Onderdelen en benodigdheden
- Arduino UNO
- Draaipotentiometer (generiek) (2x) – max. 1kΩ (500Ω werkt beter)
- Draai-encoder met drukknop (2x)
- Breadboard (generiek)
- Relaismodule (generiek) (2x) – 2 modules x 2 relais NO-Com-NC
- Power MOSFET N-kanaal (2x) – power MOSFET module (min 12V/3A)
Apps en online diensten
- Arduino IDE
Over dit project
Laatste update: november 2021
Dit project begon als hobby en is uitgegroeid tot een ernstig stuk apparatuur.
De controller accepteert handmatige positionering van de antenne via twee draai-encoders (azimut en elevatie). Hij kan satellieten automatisch volgen wanneer hij via USB verbonden is met een PC die satelliet-trackingsoftware draait.
Compatibiliteit: Werkt met alle trackingsoftware die het EasyComm2-protocol / 9600 baud gebruikt: PstRotator, WXtrack, HRD, MacDoppler... Zelfs WXtoIMG kan de rotator besturen. Directe werking met Orbitron via een DDE-plugin van tripsintech.com.
De controller stuurt een antwoord op de seriële poort voor de trackingsoftware om de echte antennepositie op het scherm te tonen. Tot nu toe deed alleen PstRotator dit.
De code gebruikt geen bibliotheken (behalve voor het LCD) en draait exact zoals hij is, met pinnen volgens het elektrisch schema. Als je op de knop van de azimut-encoder drukt, stopt alle antennbeweging direct, en kan de azimut-opdracht in 10-graden stappen worden ingesteld.
Er zijn twee versies: één voor DC-motoren, en één voor AC-motoren (alleen relais). De laatste kan geïntegreerd worden met bestaande commerciële antennerotators.
DC-motorversie heeft het voordeel van PWM voor zachtere/soepelere antennbeweging. De uitgangsvermogen is evenredig met de hoekfout (Doel ↔ Antenne). Bij start versnelt de antenn progressief, en bij aankomst op de gewenste positie vertraagt hij tot stilstand. Dit heet Soft-Start / Soft-Stop. Er is een instelbare dode zone waar de antenn niet beweegt bij de kleinste doelafwijking.
Ik heb een beta versie met Soft-Start/Soft-Stop voor AC-motoren met een AC-dimmer-module, maar die werkt momenteel alleen voor azimut. Mail me als je hem wilt testen.
Als je een 180-graden elevatiesysteem hebt, mail me – er is ook een versie met 0,1-graden precisie, maar ik raad die af tenzij je een extreem stabiele potentiometer en ontwerp hebt. Meer versies op mijn webpagina.
Na de bouw moet je de kalibratieprocedures toepassen:
- Potentiometer-kalibratie is verplicht en zorgt voor correcte 0-359° / 0-90° lezing, ongeacht het type potentiometer.
- Motorkalibratie is alleen voor afstellen van de Soft-Start-Stop functie. Nodig als je de standaardinstellingen niet leuk vindt.
Gedetailleerde uitleg in de video's. Omdat de code verbeterd is na de video's, check mijn webpagina voor de laatste info en ervaringen: racov.ro
Mail me voor vragen: YO3RAK@gmail.com (deze platform informeert me niet over nieuwe reacties). Ik probeer kleine problemen op te lossen.
Hartelijk dank aan iedereen die feedback gaf, waardoor het project betrouwbaarder werd. Alle feedback is zeer gewaardeerd!
Code
Er zijn vier codebestanden beschikbaar:
- ant-rot-DC-nov2021 – voor DC-motoren met soft start-stop PWM-uitgang
- ant-rot-AC-aug2021 – voor AC-motoren/relais (droege contacten), interfaceerbaar met commerciële rotators
- Potentiometer-kalibratieprocedure – tekstuele handleiding (geen code)
- Motorkalibratieprocedure – tekstuele handleiding voor Soft-Start/Soft-Stop parameters
Beide hoofdprogramma's bevatten:
- EasyComm-protocol parsing voor AZ/EL-commando's
- Handmatige bediening via draai-encoders met interrupt-afhandeling
- Gemiddelde filtering van potentiometer-lezingen (25 samples)
- LCD-weergave via I2C (16x2) met aangepaste pijltjes-symbolen
- Seriële communicatie met timeout 50ms voor snelle USB-updates
- Koude schakeling (cold switching) bij richtingsverandering ter bescherming van mechaniek/elektronica
De DC-versie implementeert proportionele PWM-sturing voor Soft-Start/Soft-Stop met instelbare parameters: AzErr, ElErr (dode zone), Amax, Emax (zacht-stop zone), PwAzMin/Max, PwElMin/Max (motorvermogen %).
Schema's
Twee schema's beschikbaar:
- Schema voor DC-motoren (met MOSFET-modules, encoders, LCD, relais)
- Schema voor AC-motoren (alleen relais, droge contacten)
Zorg dat je het juiste schema gebruikt bij de bijbehorende code.
Productieproces
- LED helderheid regelen met PWM via drukknop op Arduino Mega
- Bouw een real-time gyroscoop-spel met Arduino Nano & MPU-6050 sensor
- DHT11 Temperatuur- & Vochtigheidsensor Project met LED-indicatoren en Piezo-luidspreker
- Unopad: Naadloze Arduino MIDI-controller voor Ableton Live
- Een Arduino Iron Man bouwen: onderdelen, sensoren en stapsgewijze handleiding
- Een eenvoudige obstakelsensor bouwen met Arduino – IR LED & Fotodiodo Tutorial
- Find Me: Slimme Item Locator met Arduino en Bluetooth
- DIY Arduino Luchtbevochtiger Controller met Relais – Veilige Hoogspanningsopstelling
- Bouw een 4x4x4 LED-kubus met Arduino Uno & 1Sheeld – Interactief LED-project
- Bouw een Aangepaste Arduino Joystick Stuurwiel voor Gaming
- Arduino 101: Bouw een teller met DHT11 sensor & LCD display