Inhaltsverzeichnis:
- Schritt 1: Teileliste
- Schritt 2: Verkabelung und Einrichtung
- Schritt 3: Instant Wireless Messenger, Toggle Button, Momentary Button und ein paar nützliche Funktionen
- Schritt 4: Erweiterte Einrichtung. Ändern der HC-12-Einstellungen mit AT-Befehlen
- Schritt 5: Federantenne oder SMA-Antenne
- Schritt 6: Abschließende Anmerkung:
Video: Große Reichweite, 1,8 km, drahtlose Arduino-zu-Arduino-Kommunikation mit dem HC-12. - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:18
In diesem anweisbaren lernen Sie, wie man zwischen Arduinos über eine lange Distanz von bis zu 1,8 km im Freien kommuniziert.
Das HC-12 ist ein drahtloses Kommunikationsmodul mit serieller Schnittstelle, das sehr nützlich, extrem leistungsstark und einfach zu bedienen ist.
Zuerst erfahren Sie, wie Sie mit möglichst geringem Aufwand einen drahtlosen Instant Messenger erstellen.
Dann geht es weiter, um eine LED mit einem Taster zum Leuchten zu bringen, und dann lernen Sie einige nützliche String-Funktionen und Operationen für die serielle Kommunikation kennen.
Der letzte Teil des instructable ist nicht notwendig, aber Sie lernen, wie man das HC-12-Modul wie ein Profi verwendet.
In diesem Teil erfahren Sie, wie Sie den Setup-Modus des Moduls aufrufen, um die Baudrate, die Übertragungsdistanz usw. zu ändern.
Und schließlich erfahren Sie, wie Sie eine externe SMA-Antenne anschließen.
Befolgen Sie den Rest dieser Anleitung, um herauszufinden, wie einfach es ist, ein Profi in der drahtlosen seriellen Kommunikation zu werden.
Schritt 1: Teileliste
- 2 x Arduino (habe hier meine Arduino-Klone für 3 Dollar)
- 2 x HC-12 Module (habe meine hier)
- Drähte
- Steckbrett.
- 10 k Widerstand
- Druckknopf
- Übungsdateien hier
Schritt 2: Verkabelung und Einrichtung
Zuerst müssen wir die Federantennen an die beiden HC-12-Chips anlöten.
Ich habe auch einige Pins am HC-12-Modul angelötet, um die Verwendung auf einem Steckbrett zu vereinfachen.
Wir werden 2 Arduinos mit einem HC-12-Modul verwenden, das mit jedem von ihnen verbunden ist, wie Sie im Bild sehen können.
Für beide Arduinos verbinden wir Pin 2 mit TX und Pin 3 mit RX. Masse an Masse und VCC an 5V.
An einem Arduino werden wir einen Druckknopf hinzufügen, wie Sie im Bild sehen können.
Um mit 2 Arduinos auf 1 Computer zu arbeiten, müssen wir 2 Instanzen der Arduino IDE öffnen. Dies bedeutet, dass wir die Arduino-Software 2 Mal öffnen müssen. Dies ist nicht dasselbe wie „Datei → Neu“
Speichern Sie das eine mit angeschlossenem Taster als „HC-12-Sender“und das andere als „HC-12-Empfänger“.
Stellen Sie sicher, dass für jeden der Arduinos die richtigen Ports ausgewählt sind.
Schritt 3: Instant Wireless Messenger, Toggle Button, Momentary Button und ein paar nützliche Funktionen
Drahtloser Messenger
Wir beginnen mit der Erstellung eines Instant Wireless Messenger.
Kopieren Sie den Inhalt aus der Datei „HC-12 Messenger send/receive.txt“in das ZIP-Archiv und fügen Sie ihn in jede der Arduino-Instanzen ein. Der Code ist für beide Arduinos gleich.
Öffnen Sie nach dem Hochladen des Codes den seriellen Monitor für beide Instanzen.
Beginnen Sie nun mit der Eingabe beider serieller Monitore, um einen Chat zu starten.
Sogar Ihre Arduinos sind mit demselben Computer verbunden, die Kommunikation erfolgt drahtlos.
Umschaltknopf
In der Elektronik wird häufig ein Umschalter verwendet. Das Prinzip ist ganz einfach. Drücken Sie einmal eine Taste, um die LED einzuschalten, und drücken Sie dieselbe Taste erneut, um die LED auszuschalten.
Kopieren Sie den Inhalt der „HC-12 Toggle Button Send.txt“in die Instanz „HC-12 sender“und der „HC-12 Toggle Button Receive.txt“in die Instanz „HC-12 Receiver“und laden Sie sie hoch.
Wenn Sie die Taste drücken, sollten Sie die LED aufleuchten sehen. Wenn Sie die Taste erneut drücken, erlischt die LED.
Einige Validatoren wie Timing und Tastencode werden verwendet, um sicherzustellen, dass dieses Beispiel perfekt funktioniert.
Momentan-Taste
Eine momentane Taste ist ziemlich einfach. Beim Drücken der Taste leuchtet die LED. Beim Loslassen der Taste erlischt die LED.
Kopieren Sie den Inhalt der „HC-12 Momentary Button Send.txt“in die Instanz „HC-12 sender“und der „HC-12 Momentary Button Receive.txt“in die Instanz „HC-12 Receiver“und laden Sie sie hoch.
Einige nützliche Funktionen und Operatoren
Es gibt einige nützliche Funktionen und Operatoren, die sich als nützlich erweisen, wenn Sie eine Zeichenfolge konvertieren oder ausgeben und in eine Dezimalzahl usw. konvertieren möchten.
Sehen Sie sich die Dateien „HC-12 Nützliche Funktionen und Operatoren Send.txt“und „HC-12 Nützliche Funktionen und Operatoren Receive.txt“an.
Die Sendeskizze sendet beim Tastendruck den String „test123“.
Die Empfangsskizze liest den String, teilt ihn auf und wandelt ihn in eine Ganzzahl um.
Schritt 4: Erweiterte Einrichtung. Ändern der HC-12-Einstellungen mit AT-Befehlen
Sie können diesen Abschnitt einfach überspringen, da er einige erweiterte Chipeinstellungen behandelt. Ich werde jedoch die Grundlagen behandeln, damit Sie die Baudrate, die Sendeleistung, die Kanäle und die Arbeitsmodi des Moduls ändern können.
Ein vollständiges Handbuch finden Sie im ZIP-Archiv unter dem Namen HC-12 User Manual.pdf
Schließen Sie den HC-12 wie im Bild gezeigt an und verbinden Sie den Arduino mit Ihrem Computer.
Kopieren Sie den Inhalt der Datei mit dem Namen „HC-12 AT Commander.txt“aus dem ZIP-Archiv und fügen Sie ihn auf Ihren Arduino hoch.
Öffnen Sie den seriellen Monitor und geben Sie „AT“ein. Wenn das Modul „OK“zurückgibt, funktioniert der Befehlsmodus.
Baudrate ändern
Geben Sie „AT+Bxxxx“ein.
Die Baudrate kann auf 1200bps, 2400bps, 4800 bps, 9600 bps, 19, 200 bps, 38, 400 bps, 57, 600 bps oder 115, 200 bps. Der Standard
Wert ist 9600bps.
Beispiel: Geben Sie „AT+B4800“ein. Das Modul gibt „OK+B4800“zurück.
Ändern des Kommunikationskanals
Geben Sie „AT+Cxxx“ein.
Der Wert kann eine Zahl von 001 bis 127 sein.
Jede Zahl ist ein 400KHz-Schritt. Die Arbeitsfrequenz von Kanal 100 beträgt 473,0 MHz.
Beispiel: Geben Sie „AT+C021“ein. Das Modul gibt „OK+C021“zurück.
Das Modul ist jetzt auf eine Arbeitsfrequenz von 441.4MHx. eingestellt
Beachten Sie, dass sowohl sendende als auch empfangende Module die gleiche Frequenz haben müssen, um zu kommunizieren.
Ändern des Arbeitsmodus des Moduls
Dies kann FU1, FU2, FU4 oder FU4 sein (FU4 bei einer Baudrate von 1200 setzt den Chip so, dass er bis zu 1800 Meter im Freien überträgt). Eine vollständige Erklärung finden Sie in der Dokumentation.
Beispiel: Geben Sie „AT+FU4“ein. Das Modul gibt „OK+FU4“zurück.
Beziehen Sie alle Parameter vom Modul
Geben Sie „AT+RX“ein.
Das Modul sollte ungefähr so ausgeben:
„OK+FU3“
OK+B9600
OK+C001
OK+RP:+20dBm”.
Weitere Einstellungen finden Sie im „HC-12 User Manual.pdf“im ZIP-Archiv.
Schritt 5: Federantenne oder SMA-Antenne
Die HC-12 Module werden standardmäßig mit einer Federantenne geliefert. Sie können jedoch eine SMA-Antenne an das Board anschließen.
Es gibt ganze Bücher über Antennen und wie sie funktionieren. Ich möchte nicht zu tief in dieses Thema einsteigen.
Das einzige, was Sie sich vorerst merken sollten, ist, dass elektronische Schaltungen eine Antenne stören können und der HC-12 daher eine IPEX-HF-Buchse hat, damit Sie die Antenne von der Platine trennen können. Dies kann zu einem besseren Empfang und einer besseren Übertragung beitragen.
Sie benötigen ein IPEX-auf-SMA-Verlängerungskabel und eine SMA-Antenne.
Ich habe meine Erweiterung hier und die Antenne hier. (Prüfen Sie auf männlich und weiblich).
Achten Sie bei der Bestellung darauf, dass die männlichen und weiblichen Anschlüsse übereinstimmen.
Sie können das Kabel auf den IPEX-Stecker schieben und anlöten. An der anderen Seite des Kabels können Sie die SMA-Antenne anschrauben.
Schritt 6: Abschließende Anmerkung:
In diesem anweisbaren haben Sie gelernt, wie man den HC-12 für die Fernkommunikation zwischen Arduinos verwendet. Sie haben gelernt, wie Sie einen Instant Messenger, eine Umschalttaste, eine Momentantaste erstellen, einige String-Operatoren und -Funktionen verwenden, die HC-12-Einstellungen ändern und eine andere Antenne verwenden.
Die Herstellung dieses instructable dauerte etwa 100 Stunden Recherche, Bearbeitung, Prüfung, Schreiben und so weiter.
Wenn diese Anleitung für Sie hilfreich war, klicken Sie bitte auf die Favoritenschaltfläche und abonnieren Sie.
Wir sehen uns im nächsten instructable.
Andere instructables, die Sie mögen könnten:
$ 2 Arduinos. Der ATMEGA328 als Stand-alone. Einfach, günstig und sehr klein. Eine vollständige Anleitung.
Wie man schlechte chinesische Arduino-Klone repariert
Facebook:
Spenden Sie, um mir bei dieser Arbeit zu helfen:
Empfohlen:
DIY So zeigen Sie die Zeit auf dem M5StickC ESP32 mit Visuino an - Einfach zu tun: 9 Schritte
DIY So zeigen Sie die Zeit auf dem M5StickC ESP32 mit Visuino an - Einfach zu machen: In diesem Tutorial lernen wir, wie Sie den ESP32 M5Stack StickC mit Arduino IDE und Visuino programmieren, um die Zeit auf dem LCD anzuzeigen
M5STACK So zeigen Sie Temperatur, Feuchtigkeit und Druck auf dem M5StickC ESP32 mit Visuino an - Einfach zu tun: 6 Schritte
M5STACK So zeigen Sie Temperatur, Luftfeuchtigkeit und Druck auf dem M5StickC ESP32 mit Visuino an - Einfach zu machen: In diesem Tutorial lernen wir, wie Sie den ESP32 M5Stack StickC mit Arduino IDE und Visuino programmieren, um Temperatur, Luftfeuchtigkeit und Druck mit dem ENV-Sensor (DHT12, BMP280, BMM150)
Drahtlose Kopfhörer Teil 2: 3 Schritte
Drahtlose Kopfhörer Teil 2: Für dieses Upgrade verwenden:Neue Bluetooth-EmpfängerTastenDrähte können aus Twisted Pair entnommen werden
Verbinden eines GPS-Moduls mit dem Raspberry Pi: Dashcam Teil 2: 3 Schritte
Anbindung eines GPS-Moduls an den Raspberry Pi: Dashcam Teil 2: Dies ist Teil 2 des Dashcam-Projekts und in diesem Beitrag erfahren Sie, wie Sie ein GPS-Modul an den Raspberry Pi anschließen. Wir verwenden dann die GPS-Daten und fügen sie dem Video als Textüberlagerung hinzu. Bitte lesen Sie Teil 1 über den untenstehenden Link, bevor Sie
Kabellose Wasserstandsanzeige mit großer Reichweite und Alarm - Reichweite bis zu 1 km - Sieben Ebenen: 7 Schritte
Kabellose Wasserstandsanzeige mit großer Reichweite und Alarm | Reichweite bis zu 1 km | Seven Levels: Sehen Sie es sich auf Youtube an: https://youtu.be/vdq5BanVS0YSie haben vielleicht viele kabelgebundene und kabellose Wasserstandsanzeigen gesehen, die eine Reichweite von 100 bis 200 Metern bieten. Aber in diesem anweisbaren werden Sie eine drahtlose Wasserstandsanzeige mit langer Reichweite sehen