Rádiókommunikációs megoldások Arduino-val

HC-12 433 vezeték nélküli soros kommunikációs modul

A HC-12 a 433,4 .. 473,0 MHz ISM-tartományban működő soros átviteli modul, ami ideális körülmények között 1 km hatótávolságot is biztosíthat. A modulra egy "SI4463" IC-t integráltak.

A HC-11 és HC-12 modulok nem kompatibilisek egymással, csak párban tudnak működni.

HC-12 technikai adatok

Tápfeszültség: 3.2V .. 5.5V (tartós, 4,5 V-ot meghaladó tápfeszültség esetén érdemes diódával védeni a tápot)
Hatótávolság: nyílt területen 600 m, ideális esetben 1 km
Adatátviteli sebesség: 1.2Kbps .. 115.2Kbps(default 9.6Kbps)
Minimális áramfelvétel: 16 mA
Frekvenciatartomány: 433,4 .. 473,0 MHz, legfeljebb 100 csatorna áll rendelkezésre a kommunikációra
Maximális adási teljesítmény: 100 mW (állítható)
Vételi (teljesítmény) tartomány: -117dBm .. -100dBm
Átviteli (teljesítmény) tartomány: -1dBm .. 20dBm
Alapértelmezett gyári beállítások: FU3 mód, 9600 bps adatátviteli sebesség, CH001 kommunikációs csatorna (433.4M)

HC-12 pinek

HC-12 pinek

pinneveleírás
SETbeállításLOW aktív, lásd lent "parancskészlet"
TxDküldéskimeneti pin
RxDfogadásbemeneti pin
GNDgrundgrund
Vcctáp3,2 .. 5,5 V
ant1PCB antenna
ant2forrasztható antenna

HC-12 vezetékezés

HC-12 vezetékezés

AT parancskészlet

A parancsok a kikapcsolás után is megőrződnek.

parancs + paraméterekmegnevezésleírás
ATTesztHa csak egy AT parancsot kap modul, arra egy "OK"-val kell válaszolnia.
AT +BxxxSebesség beállításaLehetőségek: 1200bps, 2400bps, 4800bps, 9600bps, 19200bps, 38400bps, 57600bps and 115200bps. Gyári beállítás: 9600bps.
Parancs formája, pl. a 19200bps-hez: "AT + B19200"
AT + CxxxRádiócsatorna váltásaA paraméter 0 .. 127 között változhat. Alapértelmezett: 1 (433.4MHz). A csatornák között 400KHz távolság található. A CH100 az a 473.0 MHz.
Parancs formája "AT + C021" (441.4 MHz) A visszaigazolás formája: "OK + C021"
AT + FUxCsatornaváltási mód kiválasztásaA paraméter lehet: FU1, FU2 vagy FU3. A modul alapértelmezett módja: FU3.
Példa: "AT + FU1", erre a válasz: "OK + FU1"
AT + PxTeljesítményszint állítása1: -1dBm, 2: 2dBm, 3: 5dBm, 4: 8dBm, 5: 11dBm, 6: 14dBm, 7: 17dBm, 8: 20dBm. Alapértelmezett a maximális teljesítmény: 8
Példa: "AT + P5", erre a válasz: "OK + P5"

HC-12 szoftver

Github: https://github.com/al177/hc12pj

vagy csak egyszerűen:

#include <SoftwareSerial.h>
SoftwareSerial hc12(6, 5);

void setup() 
{
pinMode(7,OUTPUT);
digitalWrite(7,LOW); // AT parancs-mód
Serial.begin(9600);
hc12.begin(9600);
hc12.print(F("AT+C001")); // első csatorna beállítása (egyébként default) 
delay(100);
digitalWrite(7,HIGH);// átviteli mód
}
void loop() 
{
if(Serial.available()) hc12.write(Serial.read());
if(hc12.available()) Serial.write(hc12.read());
}