Stappenmotorregeling voor antennerotor

Voor de ontvangst van satelliettelevisie in de camper kunt u een dure automatische satellietantenne kopen of een eenvoudige goedkope satellietantenne op een statief zetten en handmatig aanpassen.Dit is meestal zeer tijdrovend en aangezien de antenne buiten de televisieontvanger, maar binnen, het succes van de actie kan alleen maar slecht worden waargenomen.

Een veel gemakkelijke en toch betaalbare oplossing is de antenne rotor gepresenteerd hier met stap motor controle.De stepper motor wordt gecontroleerd door een NodeMCU LUA Amica VS module met ESV8266 12F, zodat het kan worden bediend via WLAN.Hiertoe wordt de ESV8266 als toegangspunt gebruikt.Met een smartphone kun je gemakkelijk de antenne motor controleren.

In deze modus ontvangt de ESV8266 altijd het IP-adres 192.168.4.1

Het gepresenteerde programma creëert een WLAN met de SSID "antenne" en het wachtwoord "womo12345".Dit kan natuurlijk worden gewijzigd door wijzigingen in het programma.

Als de antenne rotor wordt geleverd met elektriciteit, kunt u een WLAN genaamd "antenne" vinden in de smart phone in de WLAN lijst.We verbinden ons nu aan deze WLAN en starten een browser app.Als URL voeren we 192.168.4.1 in.

We moeten nu de volgende homepage in de browser zien:

Als we op een van de knoppen klikken, moet de antenne draaien in de gewenste richting.

Onderdelen:

 

 

 

 

/*
 *Copyright (c) 2015, Majenko Technologies
 Alle rechten voorbehouden.
 * 
 *Heroriëntatie en gebruik in broncode en binaire vormen, met of zonder modificatie;
 *zijn toegestaan mits aan de volgende voorwaarden is voldaan:
 * 
 * *Heristributions of source code moet de bovengenoemde copyright aankondiging, dit
 *lijst van voorwaarden en de volgende disclaimer.
 * 
 * *Redistributions in binaire vorm moeten de bovenstaande copyright aankondiging reproduceren, dit
 *lijst van voorwaarden en de volgende disclaimer in de documentatie en/of
 *andere materialen voorzien van de distributie.
 * 
 *Noch de naam van Majenko Technologies, noch de namen van de
 *contribuanten kunnen worden gebruikt om producten van
 *deze software zonder specifieke schriftelijke toestemming.
 * 
 *DEZE SOFTWARE IS VERSTREKT DOOR DE COPYRECHTS HOUDERS EN VERDRAAGERS "AS IS" EN
 *EEN EXPRESSIE OF BETERE WAARSCHUWINGEN, MET INCLUSIEF, maar NIET BEPERKT, DE GEVOLGEN
 *WAARSCHUWINGEN VAN MECHANTIABILITEIT EN RECHTVAARDIGHEID VOOR EEN GEGEVENS DOEL ZIJN
 Disclaimed.In geen geval zal de COPYRIGHT HOUDER OF VERDRAAGERS aansprakelijk zijn voor
 *DIRECTE, INDIRECT, INCIDENT, SPECIALE, VOORBEELDEN OF CONEQUENTELE GEGEVENS
 * (met inbegrip van, maar niet beperkt tot, het aantonen van SUBSTUTE GOEDEREN of DIENSTEN;
 *Verlies van GEBRUIK, GEGEVENS, OF PROFITS; OF ONDERNEMINGEN)
 *EEN THEORIE VAN DE VERPLICHTHEID, OF HET IN CONTRACT, STRICT AANSPRAKELIJKHEID OF OVERZICHT
 * (INCLUSIEF ONDERNEMING OF ANDERE) IN EEN KADER UIT HET GEBRUIK VAN DIT
 *Software, zelfs al is het geboden van de mogelijkheid of zo'n schade.
 */

/*Maak een WiFi-toegangspunt en geef er een web server op.*/

"35; omvat <ESP826WiFi.H>
"35; omvat <WiFiClient.H> 
"35; omvat <ESP826WebServer.H>

/*HTML-code voor de controlehomepage
 *Het is een eenvoudige vorm met een
 *Snelheidsveld en drie knoppen
 *Rechts, links en stop
 */
const char HTML INDEX[] =
Goed?DOCTYPE HTML>"
"<html>"
"<head>"
"<meta naam ="viewport"content "breedte = apparaat-breedte, initiële schaal = 1.0, maximum-schaal = 1.0, gebruiker-schaalbare=0">"
"<titel>Antennenrotor</titel>"
"<style>"
"body {achtergrondkleur: 35; d2f3eb; font-familie: Arial, Helvetica, Sans-Serif; Color: 35; 000000;}"
"input {font-size:16pt;}
"</style>"
"</head>"
"<body>"
"<h1>Antennenrotor</h1>"
"<FORM-actie=\\\\\\"
"<P>"
"<INPUT-type=\"submit"naam="LINKS"waarde="Links\\\>&nbsp;"
"<INPUT-type="submit"naam="STOP"waarde="Stop">&nbsp;"
"<INPUT-type=\\\\\\\\\\\\\\"subal\"naam;;br>"
"Speed (1-10):<br>"
"<INPUT-type=\"text"waarde="%i"naam="SPEED\\\;" 
"</P>"
"</FORM>"
"</body>"
"</html>";

/Globale variabelen
const char *pagina = Antenne.; Naam van de WLAN 
const char *wachtwoord = womo12345; Wachtwoord voor de WLAN

const int stp = 12; /Pin-nummer voor de stapsverbinding van de motorbestuurder
const int jij = 13; /Pin-nummer voor de richtingaansluiting van de bestuurder
int richting = 0; lopende richting
int dly = 100; stappen vertraging van de motor
int spd = 1; actuele snelheid

ESP826WebServer server(80); Website op Port 80

Deze functie wordt opgeroepen wanneer het verzoek aan de web server = /is
Leeg HandeleRoot() {   char html[1000];Request buffer   /Stuur de homepage naar de browser met de snelheid invoer   met welke de huidige snelheid is ingesteld   sprint(html, HTML INDEX,spd);    server.verzenden(200, "tekst/html", html );
}

Deze functie wordt opgeroepen wanneer het verzoek "/links" is
Leeg handeLeft() {   richting = 1;Antwoord naar links en met homepage   HandeleRoot();
}

Deze functie wordt opgeroepen wanneer het verzoek "/right" is
Leeg rechts() {   richting = 2; Antwoord naar rechts en met homepage   HandeleRoot();
}

Deze functie wordt opgeroepen wanneer het verzoek "/stop" is
Leeg handeStop() {   richting =0; regie om te stoppen en te beantwoorden met homepage   HandeleRoot();    }

Deze functie wordt opgeroepen wanneer het verzoek "/data?..."is
Leeg handeData() {   String sspdName;   /Afhankelijk van de argumenten van het verzoek, richting en   Snelheid set.Snelheid tussen 1 en 10   indien (server.hasargworld.kgm(VERBAND)) richting = 1;   indien (server.hasargworld.kgm("Juist")) richting = 2;   indien (server.hasargworld.kgm(Stop.)) richting = 0;   indien (server.hasargworld.kgm(SPELD)) {     sspdName = server.boos(SPELD);     spd = sspdName.TOIntName();     indien (spd < 1) spd = 1;     indien (spd > 10) spd = 10;     dly = (11-spd)*10; Step distance 100 bij snelheid 1                        en 10 bij snelheid 10   }   HandeleRoot(); Antwoord met homepage
}

Leeg setup() {   Voorbereiding van pinnen   PinMode(stp, UITVOER);   PinMode(jij, UITVOER);   digitalisWriteName(stp,HOGE);   digitalisWriteName(jij,HOGE);   vertraging(1000);   Serie.start(115200);   Serie.Afdrukken();   Serie.print("Access point instellen...");      WiFi..Zacht(pagina, wachtwoord);   IPAdres myIP = WiFi..softAPIP();   Serie.print("AP IP-adres:);   Serie.Afdrukken(myIP);   IP is altijd 192.168.4.1   /Definitie van responsfuncties   server.op("/", HandeleRoot);   server.op("links", handeLeft);   server.op("Juist", rechts);   server.op(Stop., handeStop);   server.op("Datum", handeData);   /Start Web Server   server.start();   Serie.Afdrukken("HTTP server gestart");
}

Hoofd lus
Leeg ren() {   Controle op verzoek   server.handeClient();   afhankelijk van de richting ingesteld de Pin   and spey a step on the Step Pin    /Step lengte in ms wordt bepaald door dly   indien (richting == 1) {     Serie.Afdrukken("links");     digitalisWriteName(jij,LOW);     digitalisWriteName(stp,LOW);     vertraging(dly);     digitalisWriteName(stp,HOGE);     vertraging(dly);   }   indien (richting == 2) {     Serie.Afdrukken("rechts");     digitalisWriteName(jij,HOGE);     digitalisWriteName(stp,LOW);     vertraging(dly);     digitalisWriteName(stp,HOGE);     vertraging(dly);   }
}

Esp-8266Projekte für fortgeschrittene

3 Kommentare

ani

ani

Und woher bekomme ich das Getriebe? Ohne Mechanik, sprich Getriebe, ist das alles Makulatur. Und wie ist es mit der Vertikalsteuerung Gibt es dafür auch Ideen? So werden z. Bsp. in anderen Bereichen der Funktechnik der Mond, Meteorschwärme, Flugzeuge oder Wolken angesteuert.

Jörg Mehring

Jörg Mehring

Hallo,
die Stromversorgung könnte man vielleicht der Phantomspeisung des LNBs entnehmen, da die Polarisation über eine Schaltspannung von 14 bis 18 Volt eingestellt wird. Je nach Strombedarf der o.g. Schaltung sollte das gehen.

Frank Jetzschmann

Frank Jetzschmann

Hallo,
bei Verwendung von (größeren) Schrittmotoren ist zwingend ein (mindestens) 100µF Elko direkt an der Schrittmotorsteuerplatine (+12V Anschluss) notwendig. Sonst wird die Schrittmotorsteuerplatine zerstört. Hinweise zu diesem Phänomen finden sich in diversen Applikationsschaltungen im Internet.

Sonst eine wirklich clevere Lösung mit Potential für eigene Verbesserungen :-)

Einen Kommentar hinterlassen

Alle Kommentare werden vor der Veröffentlichung moderiert

Aanbevolen blog berichten

  1. Installeer ESP32 nu van de raad van bestuur
  2. Lüftersteuerung Raspberry Pi
  3. Arduino IDE - Programmieren für Einsteiger - Teil 1
  4. ESP32 - das Multitalent
  5. OTA - Over the Air - ESP Programmeren via Wi-Fi