erstellt  08.08.2020
Funk
Ein mit einem Radarmodul erfasste Bewegung soll mit Hilfe eines Funk-Senders zu einem Funk-Empfänger verschickt werden
um dort dann ein akustisches wie auch visuelles Signal aus zu lösen.
Alternativ hab ich noch einen gleichen Sender allerdings nicht mit einem Radarsignal , sondern mit einen PIR Sensor ausgestattet.
So hab ich die Möglichkeit eine Signal per PIR Sensor oder per Radar zu erfassen.

Warum diese beiden Möglichkeiten ?
° Radarsensoren reagieren auf Bewegung und haben den Vorteil auch durch dünnes Holz, Glas, usw eine Bewegung zu erfassen,
 haben allerdings auch den Nachteil auf nicht vermeidbare Bewegungen zu reagieren wie sie beispielsweise bei durch einen Windzug enstehende Bewegung von Blätter
 in Erscheinung treten.
° PIR Sensoren reagieren auf Temperaturdifferenzen die auftreten wenn ein z.B. ein Mensch oder Tier sich Temperatur mäßig von seiner Umgebung abhebt..
Diese Sensoren können aber keine Temperatur durch Glas hindurch erfassen.


Als Empfänger dient eine fast gleiche Schaltung ,mit dem Unterschied das beim Empfänger das Radarmodul weg gelassen wird weil ja nicht benötigt,
aber ein Piezo Summer als Alarm Melder hinzugefügt wird.
Dementsprechend ist auch die Software der beiden Schaltungen nicht identisch.

Die Bezeichnung "Sender" ist dabei natürlich nicht ganz richtig weil auch der Sender empfangen kann, genauso wie die Bezeichnung "Empfänger"der natürlich auch senden kann.
Ich bezeichne ihn aber dennoch als Sender weil es seine Hauptfunktion sein soll ein Signal zu senden sobald das Radarmodul eine Bewegung registriert hat.


Radar-Sender
Um eine korrekte Datenübertragung mit geringen Fehlverhalten zu gewährleisten wird der Takt am Atmega mit einen Quarz festgelegt der sich auf 3,6864 MHz beläuft.
Es funktionieren natürlich auch andere Quarze, die sollten aber an eine Baudrate von 9600 angepasst sein.


Funktion
Als Betriebsanzeige gibt es eine blinkende Rote Leuchtdiode die ca. 10 Sekunden nach dem Einschalten erlöscht, damit nicht für jedermann ersichtlich ist
das der Radar Sender aktiv ist außerdem wird Strom gespart.

Sender
Radar Modul RCWL-0516
Das Radarmodul mit der Bezeichnung RCWL -0516 ist sehr günstig zu bekommen und benötigt ca 3-6 mA bei einer Betriebsspannung von 4 - 28Volt.
Der Ausgang des Radarmodul liegt auf Minus und geht bei Bewegungserkennung für eine festgelegte Zeit von ca. 2 bis 3 Sekunden auf Plus, bei
erneuter Betätigung wird nachgetriggert.
Wenn der Eingang CDS ( Freigabe) auf Minus gelegt wird ist das Radarsignal unterbunden, ein unbelegter Eingang gibt das Signal wieder frei.
Diese Funktion wird bei dieser Schaltung aber nicht genutzt.
Funk  Modul HC-12
Das Funk Modul trägt die Bezeichnung HC12,  und arbeitet im Bereich von 434 MHz,
es gibt auch Module mit der Bezeichnung HC11 die Baugleich und Pin Kompatible sind, allerdings nicht die gleichen Protokolle benutzen.
Laut Datenblatt soll es möglich sein, einige Parameter des Modul HC 12 anzupassen, was mir trotz Intensiver
Versuche aber nicht gelungen ist.
Auch beim test weise Aufbau mit den Modul HC 11 ließen sich die Parameter nicht ändern.
Das Modul HC12 kann ohne Probleme  mit dem Modul HC11 ausgetauscht werden, es müssen dann
allerdings beide, also am Sender und am Empfänger getauscht werden.

Programm / Radar-Sender

$regfile "m8def.dat"
Definiert den Atmega als Atmega8
$crystal = 3686400
Gibt die Quarzfrequenz an in Herz
$hwstack = 32   
Default use 32 Hardware reservierte Speicher
$swstack = 10  
Default Software resvierung Speicher
$baud = 9600 Geschwindigkeit der UART Schnittstelle setzen
Ddrd.5 = 1
Ausgang für Rote Betriebs Led setzen
Sreg.7 = 1 Interrupt Gloabal einschalten
Gicr = &B01000000  Interrupt 0 einschalten, Bit 6 setzt Interrupt 0- Bit 7 setzt Interrupt 1
Mcucr = &B00000011 Interrupt reagiert  bei steigender Flanke
On Int0 Senden Namen der Interrupt Routine die angesprungen wird wenn an Pind.2 ein Signal erfasst wird
Do Schleifen Anfang
for T=0 to 100
Schleifenanfang
waitms 300
Pause
portd.5=1
Rote Led einschalten
waitms 15
Pause
portd.5=0
Rote Led aus schalten
next T
Schleife nach 100 Durchläufe beenden
Loop Ende der Programmschleife
  Senden: Routine die beim ausgelösten Interrupt an Pind.2 angesprungen wird
Print "A" Das ASKII Zeiche "A" per Funk senden
Wait 2
Pause
Return
Rücksprung zum Punkt an dem das Programm wegen des Interrupt unterbrochen wurde


Empfänger
Als nächste Schaltung kommt der Empfänger, identisch aufgebaut wie der Sender mit einen Unterschied,
es wurde das Radarmodul weg gelassen dafür aber ein Piezo zur akustischen Alarmmeldung angebracht.


Funktion
Der Empfänger hat nach dem einschalten eine blinkende Rote Leuchtdiode als Betriebsanzeige.
Wenn ein Sender einen Alarm auslöst blickt die Blaue Led für einige Sekunden und eine kurzer Piep Ton ist zu hören.
Anschließend blinkt die Grüne Led als Anzeige für die Anzahl der eingegangenen Alarme.
Empfänger
Programm Empfänger
$regfile "m8def.dat"
Definiert den Atmega als Atmega8
$crystal = 3686400
Gibt die Quarzfrequenz an in Herz
$hwstack = 32   
Default use 32 Hardware reservierte Speicher
$swstack = 10  
Default Software resvierung Speicher
$baud = 9600 Geschwindigkeit der UART Schnittstelle setzen
Ddrd.5 = 1
Ausgang für Rote Betriebs Led setzen
Ddrd.7 = 1                   
Ausgang für Blau Sende-Led setzen
Ddrc.2 = 1 Ausgang für Grüne Melder setzen
Ddrc.5 = 1
Ausgang für Piezo Summer setzen
Sreg.7 = 1 Interrupt Gloabal einschalten
Portc.5=1
Voreinstellen das Piezo aus ist
Portc.2=1
Voreinstellen das Grüne Led aus ist
Dim K as Byte
Variable zum aufaddieren der eingehenden Meldungen
Dim M as Byte
Variable zum Anzeigen der eingehenden Alarma
Dim Blinken as byte
Variable aufblitzen der Blaue Led bei Eingang eines Alarm
Voreinstellungen
Portc.5=1
Piezo aus schalten
Waitms 200
Pause , damit Grüne Led kurz aufleuchtet als einschaltmeldung
Portc.2=1
Grüne Led aus schalten
Konfiguration zum Empfangen von Daten über die UART Schnittstelle ( RS 232)
SREG.7=1
Globale freigabe der Interrupts
On Urxc Datemempfang
Festlegen der Routine die angesprungen wird wenn Daten eintreffen
Enable Urxc
Interrupt für Datemempfang freigeben
Dim X as Byte
Variable in der die eintreffenen Daten kopiert wereden  Wenn Daten am RXD Eingang empfangen werden , werden sie im Register URXC
 'gespeichert dann wird in Routine Datenemfang gesprungen.
Do Schleifenanfang
For M = 1 to K

Portc.2=0
Grüne Led ein schalten
waitms 6
Pause
Portc.2=1
Grüne Led aus schalten
waitms 300
Pause
Next M

Portd.5=1
Rote Led an
Waitms 30 Pause
Portd.5=0
Rote Led aus
Waitms 10
Pause
Loop Rücksprung
 Datenempfang:

X=UDR
Empfangenes Byte in Variable X verschieben
if X="A" then Gosub Alarm
Abfrage ob ein A empfangen wurde
Return

Alarm:

K=K+1
Variable speichert die Anzahl der eingegangenen Alarme
Portc.5=0
Piezo einschalten
waitms 200
Pause
Portc.5=1
Piezo aus schalten
for Blinken=1 to 100

Portd.7=1

waitms 10

portd.7=0

waitms 100

Next Blinken

Return



PIR Sender
Ein mit einem PIR erfasste Bewegung soll mit Hilfe eines Funk-Senders zu einem Funk-Empfänger verschickt werden,
um dort dann ein Akustisches wie auch eine Visuelles Signal aus zu lösen.
Als Empfänger dient eine fast gleiche Schaltung mit dem Unterschied das beim Empfänger das Radarmodul weg gelassen wird, weil ja nicht benötigt, aber ein Piezo Summer als Alarm Melder hinzugefügt wird.
Dementsprechend ist auch die Software der beiden Schaltungen nicht identisch.



Pin1= GND
Pin2=OUT
Pin3=Plus


Der PIR Sensor arbeitet mit einer Betriebsspannung von 5 Volt.
Nach dem Einschalten der Betriebsspannung geht der Ausgang des Sensor ( mittlerer Pin) erst einmal für ca 10-15 Sekunden auf High.
Um anschließend dann auf Low zu schalten was der Standard bleibt so lange kein Objekt erfaßt wird.
Wird ein Objekt erfaßt geht der Ausgang für ca 8 Sekunden  auf HIGH um dann für wieder auf LOW zu schalten.

Licht Sender
Ein Sender der einen Alarm auslöst wenn eine bestimmte Helligkeit überschritten wird.
Über einen LDR ( Lichtempfindlicher Widerstand) wird die Umgebungshelligkeit auf einen Analogeingang gegeben.
Der Analogeingang bestimmt daraus einen Wert zwischen 0 und 255.
Dieser Wert wird abgefragt und wenn die Schwelle oberhalb von 150 ist wird ein Alarm ausgelöst indem das Aski Zeichen "A"
dem Sendermodul zugefügt wird.
Nach jedem Alarm setzt eine Pause von ca 1 Minute ein, um nicht wenn dauerhaft ein Licht eingeschaltet wird, ständig einen erneuten Alarm au zu lösen.



Funktionbeschreibung für die , die es genauer Wissen wollen
Wenn das Radarmodul am Sender ein Signal erfasst bzw. eine Bewegung erkennt
wird direkt ein Signal über Funk dieses erfasste Signal in Form eines ASCII Zeichen
, im vorliegenden Fall das Zeichen "A" zum Empfänger schicken und dort nach dem Empfang ein Tonsignal ausgeben.
Es wird mit der Anweisung (Print "A";) das AskII Zeichen "A" übertragen ( Dezimal 065).
Das Zeichen ; verhindert das die Zeichen Carriage Return und das Zeichen Line Feed übertragen werden.

Technische Daten
Stromaufnahme : Mikroprozessor 6mA













Aktualisiert 10.01.2021
Copyright by Ms2009