Commande de moteur pas à rotor d 'antenne

Pour recevoir la télévision par satellite dans un camping - car, vous pouvez acheter une antenne satellite automatique coûteuse ou mettre une antenne satellite simple bon marché sur un trépied et l 'aligner manuellement.Cela prend souvent beaucoup de temps, car l'antenne est à l'extérieur du récepteur de télévision, mais il est difficile d'y voir le succès de l'opération.

Une solution plus pratique et plus avantageuse est la commande de moteur pas à pas proposée ici par le rotor d 'antenne.Le moteur pas à pas est commandé par le module nodemcu lua amica vs avec esp8266 12F, ce qui permet de fonctionner par l 'intermédiaire du WLAN.À cette fin, esp8266 sert de point d 'accès.En utilisant un téléphone portable intelligent, vous pouvez facilement contrôler le moteur d 'antenne.

Dans ce mode, esp8266 reçoit toujours l 'adresse IP 192.168.4.1

Ce programme crée un WLAN avec une antenne sisid et un mot de passe womo 12345.Bien sûr, cela peut changer en changeant de programme.

Si le rotor d 'antenne est électrifié, vous pouvez trouver un WLAN appelé antenne dans un téléphone intelligent de la liste WLAN.Nous sommes maintenant connectés à ce WLAN et activons l 'application du navigateur.En tant qu'URL, nous saisissons 192.168.4.1.

Il est temps de voir la page d 'accueil suivante dans le navigateur:

Si nous cliqueons sur l 'un de ces boutons, l' antenne doit tourner dans la direction souhaitée.

Partie:

 

 

 

 

/*
 * Tous droits d 'auteur c) 2015, majenko technologies
 Tous droits réservés.
 * 
 * redistribution et utilisation sous forme de sources et de binaires, avec ou sans modification;
 * est autorisée si les conditions suivantes sont réunies:
 * 
 * * La redistribution du code source doit conserver la Déclaration de droits d'auteur mentionnée ci - dessus.
 * Liste des conditions et des exonérations suivantes.
 * 
 * * La redistribution sous forme binaire nécessite la reproduction de la déclaration susmentionnée sur les droits d'auteur.
 * Liste des conditions figurant dans le document et des exonérations et / ou
 * Autres documents publiés ultérieurement.
 * 
 * * qu'il s'agisse de majenko technologies ou de son nom.
 * Les contributions peuvent être utilisées par les contributeurs pour appuyer ou promouvoir les activités de l'Organisation.
 * Le présent logiciel n'a pas fait l'objet d'une licence écrite préalable.
 * 
 * Le logiciel est fourni « tel qu'il a été modifié » par les propriétaires et les contributeurs de droits d'auteur; et
 * toute garantie expresse ou implicite, y compris mais non exclusivement
 * Les garanties d'applicabilité commerciale et spécifique sont les suivantes:
 * Non.En aucun cas le titulaire du droit d'auteur ou le contribuant n'est responsable.
 * toute donnée directe, indirecte, accessoire, spéciale, indicative ou complémentaire
 * y compris, mais non exclusivement, la passation de marchés de biens ou de services de remplacement;
 * perte de jouissance, de données ou de bénéfices; ou interruption de l'activité, quelle qu'en soit la cause
 • toute doctrine de responsabilité, contractuelle, objective ou délictuelle;
 * y compris la négligence ou toute autre négligence résultant de l'utilisation du présent document.
 * logiciel, même s'il est informé de cette possibilité ou de ce dommage.
 */

/ * crée un point d 'accès WiFi et fournit un serveur Web sur ce point.*

"35; y compris <Esp8266wifi.Heure>
"35; y compris <Wificlient.Heure> 
"35; y compris <Serveur Web esp8266.Heure>

Code HTML de la page d 'accueil du contrôle
 * C'est une simple formalité.
 * boîte de saisie de vitesse et trois boutons
 Droite, gauche, stop.
 */
Constante Brûler Index HTML[] =
"& lt?DocType HTML & gt
"& lt; HTML & gt;"
"& lt; tête & gt;"
"& lt; meta = name = \ " viewport \ \ Content \ \ "with =" largeur du matériel, rapport initial = 1,0, rapport maximum = 1,0, rapport zoom = 0 "& gt;"
"& lt; Titre & gt; Rotor d 'antenne & lt; Titre & gt;"
"& lt; styles & gt;"
Le texte {couleur de fond: "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" ""
"entrée - font-taille:16pt;
"Lt;/style’gt;"
"Lt;/tête-gt;"
"Lt;body’gt;"
"Lt;h1'gt;Antenna rotor’lt;/h1'gt;"
"Lt;FORM action""/data" méthode "post"gt;"
"Lt;P’gt;"
" Type "lt;INPUT""soumettre" nom "LINKS"" valeur "Links" 'gt;'amp; nbsp;"
" Type "lt;INPUT""soumettre" nom "STOP" valeur "Stop" 'gt;'amp; nbsp;"
"Lt;INPUT type""soumettre" nom "RIGHT" valeur "Droit""''s ''s’est bien’il lt;br’gt;lt;br’gt;br’gt;"
"Vitesse (1 - 10): lt;br’gt;"
"Lt;INPUT type"texte" valeur "%i" nom "SPEED" 
"Lt;/P’gt;"
"Lt;/FORM’gt;"
"Lt;/corps’gt;"
"Lt;/html’gt;";

Variables globales
Const Char Char *Ssid = "Antenna"; Nom du Wi-Fi 
Const Char Char *mot de passe = "womo12345"; Mot de passe pour Wi-Fi

Const Int Stp (Stp) = 12; Numéro de broche pour la connexion d’étape du conducteur de moteur
Const Int Vous = 13; Numéro de broche pour la connexion de direction du conducteur de moteur
Int Direction = 0; direction actuelle
Int Dly = 100; Retard pour les marches motrices
Int Spd = 1; vitesse actuelle

ESP8266WebServateur Serveur(80); Les serveurs Web commencent sur le port 80

Cette fonction est appelée lorsque la demande sur le serveur web est "/"
Vide handleRoot() {   Char Char Html[1000];Tampon pour la demande   Envoyer la page d’accueil au navigateur, où l’entrée de vitesse   pré-doté à la vitesse actuelle   Sprintf(Html, INDEX_HTML,Spd);    Serveur.Envoyer(200, "texte/html", Html );
}

Cette fonction est appelée lorsque la demande est "/gauche"
Vide handleLeft() {   Direction = 1;Répondre à la direction à gauche et avec la page d’accueil   handleRoot();
}

Cette fonction est appelée lorsque la demande est "/droite"
Vide poignéeRight() {   Direction = 2; Répondre à la direction à droite et avec la page d’accueil   handleRoot();
}

Cette fonction est appelée lorsque la demande est "/stop"
Vide handleStop() {   Direction =0; Direction de s’arrêter et de répondre avec la page d’accueil   handleRoot();    }

Cette fonction est appelée lorsque la demande "/données?..." Est
Vide handleData() {   String sspd;   Selon les arguments de la demande, l’orientation et   jeu de vitesse. Vitesse entre 1 et 10   Si (Serveur.hasArg("GAUCHE")) Direction = 1;   Si (Serveur.hasArg("DROIT")) Direction = 2;   Si (Serveur.hasArg("STOP")) Direction = 0;   Si (Serveur.hasArg("VITESSE")) {     sspd = Serveur.Mauvais("VITESSE");     Spd = sspd.Toint();     Si (Spd < 1) Spd = 1;     Si (Spd > 10) Spd = 10;     Dly = (11-Spd)*10; Étape distance 100 à la vitesse 1                        et 10 à la vitesse 10   }   handleRoot(); Répondre avec la page d’accueil
}

Vide Configuration() {   Préparation des broches   pinMode(Stp (Stp), Sortie);   pinMode(Vous, Sortie);   digitalWrite (en)(Stp (Stp),Haute);   digitalWrite (en)(Vous,Haute);   Retard(1000);   Série.Commencer(115200);   Série.println();   Série.Imprimer("Configurer le point d’accès...");      Wifi.softAP (softAP)(Ssid, mot de passe);   Ipaddress Myip = Wifi.softAPIP softAPIP();   Série.Imprimer("AP adresse IP: ");   Série.println(Myip);   ip est toujours 192.168.4.1   Définition des fonctions de réponse   Serveur.Sur("/", handleRoot);   Serveur.Sur("/gauche", handleLeft);   Serveur.Sur("/droite", poignéeRight);   Serveur.Sur("/stop", handleStop);   Serveur.Sur("/données", handleData);   Démarrer le serveur Web   Serveur.Commencer();   Série.println("Le serveur HTTP a commencé");
}

Boucle principale
Vide Boucle() {   Vérifier la demande   Serveur.handleClient();   en fonction de la direction de la broche de direction   et la sortie d’une étape sur la broche d’étape    La longueur de l’étape en ms est déterminée par dly   Si (Direction == 1) {     Série.println("gauche");     digitalWrite (en)(Vous,Faible);     digitalWrite (en)(Stp (Stp),Faible);     Retard(Dly);     digitalWrite (en)(Stp (Stp),Haute);     Retard(Dly);   }   Si (Direction == 2) {     Série.println("droit");     digitalWrite (en)(Vous,Haute);     digitalWrite (en)(Stp (Stp),Faible);     Retard(Dly);     digitalWrite (en)(Stp (Stp),Haute);     Retard(Dly);   }
}

Esp-8266Projets pour avancé

3 commentaires

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 :-)

Laisser un commentaire

Tous les commentaires sont modérés avant d'être publiés

Messages de blogs recommandés

  1. Installez maintenant ESP32 via l'administrateur de la carte
  2. Lüftersteuerung Raspberry Pi
  3. Arduino IDE - Programmieren für Einsteiger - Teil 1
  4. ESP32 - das Multitalent
  5. OTA-Over the Air-ESP Programmation par WiFi