Inhoudsopgave:
- Stap 1: Onderdelenlijst
- Stap 2: Bedrading en installatie
- Stap 3: Instant Wireless Messenger, Toggle Button, Momentary Button en een paar handige functies
- Stap 4: Geavanceerde instellingen. De HC-12-instellingen wijzigen met AT-opdrachten
- Stap 5: veerantenne of SMA-antenne
- Stap 6: Laatste opmerking:
Video: Lange afstand, 1,8 km, Arduino naar Arduino draadloze communicatie met de HC-12 - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:16
In deze instructable leer je hoe je kunt communiceren tussen Arduino's over een lange afstand tot 1,8 km in open lucht.
De HC-12 is een draadloze seriële poortcommunicatiemodule die erg handig, extreem krachtig en gebruiksvriendelijk is.
Eerst leer je hoe je met zo min mogelijk inspanning een draadloze instant messenger maakt.
Daarna gaan we verder met het oplichten van een LED met een drukknop en dan leer je een paar handige stringfuncties en bewerkingen voor seriële communicatie.
Het laatste deel van de instructable is niet nodig, maar je leert hoe je de HC-12-module als een professional kunt gebruiken.
In dit deel leert u hoe u de module-instelmodus kunt openen om de baudrate, transmissieafstand enzovoort te wijzigen.
En tot slot leer je hoe je een externe SMA-antenne aansluit.
Volg de rest van dit instructable om erachter te komen hoe gemakkelijk het is om een pro te worden in draadloze seriële communicatie.
Stap 1: Onderdelenlijst
- 2 x Arduino (heb hier mijn Arduino-klonen voor 3 dollar)
- 2 x HC-12-modules (heb de mijne hier)
- Draden
- Broodplank.
- 10 k weerstand
- druk op de knop
- Oefenbestanden hier
Stap 2: Bedrading en installatie
Eerst moeten we de veerantennes aan beide HC-12-chips solderen.
Ik heb ook enkele pinnen op de HC-12-module gesoldeerd om het gemakkelijk te gebruiken op een breadboard.
We zullen 2 Arduino's gebruiken met een HC-12-module die op elk van hen is aangesloten, zoals je in de afbeelding kunt zien.
Voor beide Arduino's verbinden we pin 2 met TX en pin 3 met RX. Grond tot aarde en VCC tot 5v.
Bij één Arduino zullen we een drukknop toevoegen zoals je kunt zien in de afbeelding.
Om met 2 Arduino's op 1 computer te werken, moeten we 2 instances van de Arduino IDE openen. Dit betekent dat we de Arduino-software 2 keer moeten openen. Dit is niet hetzelfde als “bestand → Nieuw”
Bewaar degene met de drukknop aangesloten als “HC-12 zender” en de andere als “HC-12 ontvanger”.
Zorg ervoor dat voor elk van de Arduino's de juiste poorten zijn geselecteerd.
Stap 3: Instant Wireless Messenger, Toggle Button, Momentary Button en een paar handige functies
Draadloze Messenger
We beginnen met het maken van een instant draadloze messenger.
Kopieer de inhoud van het bestand "HC-12 messenger send/receive.txt" in het ZIP-archief en plak het in elk van de Arduino-instanties. De code is hetzelfde voor beide Arduino's.
Open na het uploaden van de code de seriële monitor voor beide exemplaren.
Begin nu beide seriële monitoren in te typen om een chat te starten.
Zelfs je Arduino's zijn verbonden met dezelfde computer, de communicatie is draadloos.
Wisselknop
Een schakelknop wordt vaak gebruikt in de elektronica. Het principe is heel eenvoudig. U drukt één keer op een knop om de LED in te schakelen en drukt nogmaals op dezelfde knop om de LED uit te schakelen.
Kopieer en plak de inhoud van de "HC-12 Toggle Button Send.txt" naar de "HC-12 sender" -instantie en de "HC-12 Toggle Button Receive.txt" naar de "HC-12 receiver" -instantie en upload.
Als je op de knop drukt, zou je de LED moeten zien oplichten. Als u nogmaals op de knop drukt, gaat de LED uit.
Een paar validators zoals timing en knopcode worden gebruikt om ervoor te zorgen dat dit voorbeeld perfect werkt.
Tijdelijke knop
Een tijdelijke knop is vrij eenvoudig. Bij het indrukken van de knop licht de LED op. Bij het loslaten van de knop gaat de LED uit.
Kopieer en plak de inhoud van de "HC-12 Momentary Button Send.txt" naar de "HC-12 sender" -instantie en de "HC-12 Momentary Button Receive.txt" naar de "HC-12 receiver" -instantie en upload.
Enkele handige functies en operatoren
Er zijn een paar handige functies en operators die van pas komen als u een string wilt converteren of spugen en deze wilt converteren naar een decimaal enzovoort.
Bekijk het bestand "HC-12 Nuttige functies en operators Send.txt" en " HC-12 Nuttige functies en operators Receive.txt".
De verzendschets verzendt de string "test123" bij het indrukken van de knop.
De ontvangstschets leest de string, splitst deze en converteert deze naar een geheel getal.
Stap 4: Geavanceerde instellingen. De HC-12-instellingen wijzigen met AT-opdrachten
U kunt dit gedeelte gemakkelijk overslaan omdat het enkele geavanceerde chipinstellingen behandelt. Ik zal echter de basis behandelen, zodat u de baudrate, het zendvermogen, de kanalen en de werkmodi van de module kunt wijzigen.
Een volledige handleiding is te vinden in het ZIP-archief onder de naam HC-12 User Manual.pdf
Sluit de HC-12 aan zoals weergegeven in de afbeelding en sluit de Arduino aan op uw computer.
Kopieer en plak de inhoud van het bestand met de naam "HC-12 AT Commander.txt" uit het ZIP-archief en upload naar uw Arduino.
Open de seriële monitor en typ "AT". Als de module "OK" retourneert, werkt de opdrachtmodus.
De baudrate wijzigen
Typ "AT+Bxxxx".
De baudrate kan worden ingesteld op 1200bps, 2400bps, 4800bps, 9600bps, 19, 200bps, 38, 400bps, 57, 600bps of 115, 200bps. De standaard
waarde is 9600bps.
Voorbeeld: typ "AT+B4800". De module retourneert "OK+B4800".
Het communicatiekanaal wijzigen
Typ "AT+Cxxx".
De waarde kan een getal zijn van 001 tot 127.
Elk nummer is een stap van 400 kHz. De werkfrequentie van kanaal 100 is 473,0 MHz.
Voorbeeld: typ "AT+C021". De module retourneert "OK+C021".
De module is nu ingesteld op een werkfrequentie van 441,4 MHx
Merk op dat zowel de zend- als de ontvangstmodule dezelfde frequentie moeten hebben om te kunnen communiceren.
De werkmodus van de module wijzigen
Dit kan FU1, FU2, FU4 of FU4 zijn (FU4 met een baudrate van 1200 stelt de chip in om tot 1800 meter in open lucht te zenden). Zie documentatie voor een volledige uitleg.
Voorbeeld: Typ "AT+FU4". De module geeft "OK+FU4" terug.
Haal alle parameters uit de module
Typ "AT+RX".
De module zou zoiets als dit moeten retourneren:
"OK+FU3"
OK+B9600
OK+C001
OK+RP:+20dBm”.
Meer instellingen zijn te vinden in de “HC-12 User Manual.pdf” in het ZIP-archief.
Stap 5: veerantenne of SMA-antenne
De HC-12 modules worden standaard geleverd met een veerantenne. U kunt echter wel een SMA-antenne op het bord aansluiten.
Er zijn hele boeken volgeschreven over antennes en hoe ze werken. Ik wil niet te diep op dit onderwerp ingaan.
Het enige dat u voorlopig moet onthouden, is dat elektronische schakelingen een antenne kunnen storen en daarom heeft de HC-12 een IPEX RF-aansluiting, zodat u de antenne van het bord kunt scheiden. Dit kan helpen voor een betere ontvangst en verzending.
Wat je nodig hebt is een IPEX naar SMA verlengsnoer en een SMA antenne.
Ik heb mijn extensie hier en de antenne hier (controleer voor mannelijk en vrouwelijk).
Let er bij het bestellen op dat de mannelijke en vrouwelijke aansluitingen overeenkomen.
U kunt het snoer op de IPEX-connector duwen en vastsolderen. Aan de andere kant van het snoer kun je de SMA-antenne vastschroeven.
Stap 6: Laatste opmerking:
In deze instructable heb je geleerd hoe je de HC-12 kunt gebruiken voor langeafstandscommunicatie tussen Arduino's. Je hebt geleerd hoe je een instant messenger maakt, een schakelknop, een kortstondige knop, hoe je een aantal stringoperators en functies gebruikt, hoe je de HC-12-instellingen wijzigt en hoe je een andere antenne gebruikt.
Het maken van deze instructable kostte ongeveer 100 uur aan onderzoek, bewerking, testen, schrijven enzovoort.
Als deze instructable nuttig voor je was, klik dan op de favoriet-knop en abonneer je.
Tot ziens in de volgende instructable.
Andere instructables die je misschien leuk vindt:
$ 2 Arduino. De ATMEGA328 als stand-alone. Makkelijk, goedkoop en erg klein. Een complete gids.
Hoe slechte Chinese Arduino-klonen te repareren
Facebook:
Doneer om mij te helpen dit werk te blijven doen:
Aanbevolen:
SmartHome draadloze communicatie: de extreme basis van MQTT: 3 stappen
SmartHome draadloze communicatie: de extreme basis van MQTT: MQTT basis: **Ik ga een serie domotica doen, ik zal de stappen doorlopen die ik heb genomen om alles te leren wat ik in de toekomst heb gedaan. Deze Instructable is de basis voor het instellen van MQTT voor gebruik in mijn toekomstige Instructables. echter
Arduino naar Node-communicatie: 4 stappen
Arduino to Node-communicatie: deze instructable is puur bedoeld voor een zeer eenvoudige demonstratie van het verzenden en ontvangen van gegevens via UART (serieel) tussen twee Arduino-compatibele boards
Draadloze communicatie met behulp van goedkope 433MHz RF-modules en Pic-microcontrollers. Deel 2: 4 stappen (met afbeeldingen)
Draadloze communicatie met behulp van goedkope 433MHz RF-modules en Pic-microcontrollers. Deel 2: In het eerste deel van deze instructable demonstreerde ik hoe je een PIC12F1822 programmeert met behulp van MPLAB IDE en XC8-compiler, om een eenvoudige string draadloos te verzenden met goedkope TX/RX 433MHz-modules. De ontvangermodule was via een USB aangesloten op UART TTL kabel advertentie
Draadloze seriële communicatie met Bluefruit: 4 stappen
Draadloze seriële communicatie met Bluefruit: Hier is een eenvoudige stapsgewijze handleiding om uw draden te vervangen door een Bluetooth low energy-verbinding: het kostte me een tijdje om dit uit te zoeken omdat er nauwelijks documentatie is om dit te doen met moderne Bluetooth low energy-technologie zoals als de Bluefrui
Lange afstand draadloze waterniveau-indicator met alarm - Bereik tot 1 km - Zeven niveaus: 7 stappen
Lange afstand draadloze waterniveau-indicator met alarm | Bereik tot 1 km | Zeven niveaus: bekijk het op YouTube: https://youtu.be/vdq5BanVS0YJe hebt misschien veel bedrade en draadloze waterniveau-indicatoren gezien die een bereik van 100 tot 200 meter zouden bieden. Maar in deze instructable zie je een Long Range Wireless Water Level Indi