Forum: Projekte & Code Microcontroller OOK Datenradio Beispiel und Demo Sourcen


von Gerhard O. (gerhard_)


Angehängte Dateien:

Lesenswert?

Im Anhang ist ein interessantes OOK Sende Empfangskonzept mit dem ich 
mich vor über 10 Jahren befaßte. Das Original Konzept stammte von Author 
Ricci-Bitti und wurde von ihm in Circuit Cellar vorgestellt. Sein Design 
erlaubt bis zu 20 Sender auf der selben Frequenz. Sein Konzept reduziert 
durch eine sehr originale  und robuste Methode mit Redundanz Kollisionen 
mit gleichzeitig funkenden Modulen.

Inspiriert von seinem Artikel portierte ich den für einen MC68HC908 
geschrieben Source auf PIC. Im Anhang sind die alten Sourcen für das PIC 
Demo System. Die Sourcen fuer den TX und den RX sind vorhanden. Der TX 
läuft mit einem PIC16F684 PIC und früher mit einem PIC12F627. Ich 
verwendete damals 418MHZ RXM/TXM Module von LINX.

Das Demo System war ein kleines Sensor Module mit 2 Digitalen Eingängen 
und einen Analog externen Eingang mit interner Vbat und Temperatur 
Messung. Mit zwei Alkali AA Zellen läuft der Sensor im Schlaf Betrieb 
mindestens 1 Jahr. Aufgeweckt zur Sendung wird er durch den WDT und man 
kann die Zeit fest einstellen, typisch 1 Stunde. Eine Pegeländerung 
weckt den Sensor sofort zur Sendung auf und läßt sich als Alarm Eingang 
verwenden. Wenn die Batteriespannung zu niedrig wird, zeigt ein Status 
Bit diesen Zustand rechtzeitig an oder kann direkt gelesen werden. Im 
Schlafzustand mit dem WDT aktiv ist der Stromverbrauch um 2uA.

Der RX PIC dekodiert die Radio Signale und zeigt die Operationsdaten 
tabellarisch an. VT100 ESC Codes erlauben ruhige farbige Terminal 
Updates. Die Empfangsfeldstärke (RSSI) wird mit einem variablen Balken 
und numerisch in % angezeigt. Wer sich fuer OOK interessiert wird mit 
diesen Informatonen einen guten Anfangspunkt finden.

Die Original Sourcen sind von der Circuit Cellar Download Seite 
erhältlich. Der alte Link auf der Seite des Authors funktioniert leider 
nicht mehr. Den Artikel gibt es aber auch hier:

http://faculty.petra.ac.id/resmana/private/circuit-cellar/Wireless%20Monitoring%20System.pdf

: Bearbeitet durch User
von Gerhard O. (gerhard_)



Lesenswert?

Falls von Interesse sind im Anhang noch einige Bilder der damaligen OOK 
Testaufbauten und ein Screen Capture der Demo Diagnostik Software. Der 
Alarm Transmitter im Gehäuse war ursprünglich als Garagen Tor Monitor 
gedacht. Hatte allerdings niemals die Zeit gefunden es permanent zu 
installieren. Die anderen Bilder zeigen einige der Versuchsboards.
Die Screen Capture zeigt den dekodierten Inhalt der empfangenen Daten 
vom D101 Versuchssender. Die hoch gepackten 64-bit Datenpakete sind 
numeriert mit Überlauf bei 15 zurück auf Null. Die Farbdarstellung wird 
durch VT100 Escape Codes bewirkt.

Es lassen sich bis zu 16 verschiedene Adressen mit einem Druckknopf 
konfigurieren. Das Monitor LED zeigt durch Blink Code die zuletzt 
eingestellte Adresse an. Die Datenpakete werden im Endstadium vier Mal 
mit unterschiedlichen Abständen, von der Adresse abhängig, gesendet. 
Damit wird vermieden, daß bei einer zufälligen Kollision mit einem der 
anderen möglichen Sender alle Datenpakete gestört werden. Diese Idee 
stammt von dem publizierten Artikel. Zur Zeit aber sendet das Modul nur 
periodisch seine Daten. Im Schlafbetrieb verbraucht der ganze uC 
Schaltung nur 1-2uA.

Die Daten werden mit rund 1kBit gesendet und der uC Decoder tastet die 
Impulsfolgen im 100us Abständen ab. Durch besondere Maßnahmen machen 
kurzzeitige Störimpulse bei der Dekodierung nicht viel aus und die 
Anordnung hat sich als sehr störsicher erwiesen. Man könnte z.B. mit 
Hamming Error Correction die Datensicherheit noch etwas erhöhen. Es hat 
sich aber noch nicht als notwendig erwiesen. Da im Original Artikel für 
korrekt akzeptierte Daten immer zwei gleiche Packets mit identisch 
dekodierten empfangen werden müssen ist die Zuverlässigkeit der Daten 
ausreichen hoch.

Ich bin mir bewußt daß man mit diesen ultra-einfache System heutzutage 
im Zeitalter des WLan, BT, Iot und Tablets bei Vielen wahrscheinlich 
kaum noch ein müdes Lächeln hervorrufen kann. WLan, Bt, Zigbee Module 
waren damals aber auch noch in den Kinderschuhen. Es gab noch keine 
wirklich billigen WLAN Module wie man sie heutzutage massenhaft auf dem 
Markt findet. Es ist aber für mich durchaus potenziell nützlich und 
kommt mit einem Minimum an Betriebsstrom aus. Die Unabhängigkeit vom 
Lichtnetz und Routers macht auch Batteriebetrieb bei Stromausfall 
möglich und interessant. Da ich damals nicht weiter gemacht habe, habe 
ich das LCD nie betrieben. Mit LCD als Anzeige läßt sich der 
Betriebsstrom niedrig halten.

Innerhalb von Gebäuden lag die praktisch erzielbare Reichweite bis zu 
50-100m. Im Freien und mit den einfachen Viertel Wellenlängen 
Antennendrähten erreichte ich ca 350m Reichweite. Mit besseren Antennen 
liesse sich das wahrscheinlich noch verbessern.

Jedenfalls ist Ricci-Bitties Artikel ein guter Anfang für eigene 
Versuche mit OOK Kodierung und Dekodierung weil USARTS mit diesen 
einfachen Funkbords nicht empfehlenswert sind. Auch benötigen diese 
einfachen Empfänger Synchronisation oder Training Impuls Sequenzen um 
den Data Slicer auf den richtigen Arbeitspunkt einzustellen. Für diese 
einfache Anwendungen ist zwei Weg Datenübermittlung nicht unbedingt 
erforderlich.

: Bearbeitet durch User
von Wolfgang (Gast)


Lesenswert?

Gerhard O. schrieb:
> Mit besseren Antennen liesse sich das wahrscheinlich noch verbessern.

Mit Sicherheit. Eine Antenne ist der beste HF-Verstärker.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.