Projekt RDS

RFM - Datenfunk - System

Datenfunk zur drahtlosen Erfassung von Sensordaten auf dem ISM-Band

 

Nachdem die Garage mal die ganze Nacht offen stand und zudem auch noch das Licht brannte, dachte ich mir: es gibt 2 Wege das in Zukunft zu vermeiden.
1) besser aufpassen (zu einfach und unspektakulär)
2) ein paar Schalter und Lichtsensoren installieren und vom Haus aus bescheid wissen (klingt eher nach einer Bastler-Herausforderung...)

Gedacht war zuerst, eine Leitung zu legen, und am besten gleich das ganze Haus damit zu verstricken. Die Leitung liegt heute noch, ist aber nie verwendet worden. In der Zwischenzeit bin ich mit den RFM-Modulen von HopeRF in Berührung gekommen und habe schon andere ernsthafte Funkapplikationen damit erstellt.

Dann ist so langsam diese Idee geboren worden:
Von einer Basis aus mit einem LCD-Display die Zustände diverser Sensoren erfassen, die an verteilten Satelliten hängen. Das können Sensoren aller möglicher Art sein, entscheidend ist, daß das Spannungssignal vom ADC des Controllers verarbeitet werden kann, was im allgemeinen kein Problem ist.
Die Satelliten (so hab ich die Dinger einfach irgendwann getauft, andere mögen das als Master und Slaves oder Server bezeichnen) sollten primär in der Reichweite der Basis sein. Für spätere Erweiterungen ist gedacht, Datenpakete über mehrere Satelliten hinweg weiterzurouten um einfach größere Distanzen zu überbrücken.
Noch habe ich keine Erfahrungen gemacht, wie weit ich im Haus mit einem "Hop" komme.

 

Und hier die Geschichte mit Bildern:
 

 

   01.02.09:
    erstmal das LCD-Display (das ist ein WINTEK WD-C2704M-1HNN von Pollin-Electronic)
   
mit dem ATMega16 verheiraten ( --> siehe "LCD-Test" in der Doku)

 

 

 



 

 

    08.03.09: V1
    Jetzt werden 8 Kanäle des gleichen Satelliten der Reihe nach abgefragt und die ADC-Werte ausgegeben.
    Das Bild ist etwas unübersichtlich, ich weiß, aber der Aufbau ist ja nur vorübergehend...(großes Bild)
    Jetzt wird es Zeit, daß der Satellit abhebt und das Fliegen lernt.
   
 

 

 


 

    16.03.09: V2
                                            AIRBORNE!!!
    Der Satellit mit dem ATTiny26 ist auf das Mini-Steckbrett verfrachtet und funkt wie er soll einen NTC-Wert
    und einen Poti-Wert (und 5 leere ADC-Pins und einen Pseudo-Fehler).
    Allerdings gabs dabei noch ein bißchen Ärger: komischerweise hat sich erst beim Abkoppeln des Satelliten
    gezeigt, daß eine Warteschleife in der Empfangsroutine zu lang war und statt 8 öfters mal 9 Bytes empfangen
    wurden. Damit war das Paket ungültig und der Empfang war scheinbar gestört...
    Der Li-Ionen-Akku (ganze 190mAh!) ist kaum größer als das RFM-Modul und hält rechnerisch mit
    Erfahrungswerten bei 8 Wachphasen pro Sekunde ca. 1 Monat.
    Zur Reichweite: mit der gefaltenen Basis-Antenne (Grundlänge 17cm=λ/4) und der verkrümpfelten
    Sat-Antenne (um etwas "Performance" herauszunehmen) funkt sich's noch recht zuverlässig über 10m quer
    durch den Stahlbeton des Hauses.
    (großes Bild)

 

    13.04.09: V3
    Fast ein Monat später: es hat sich viel verändert - aber fast nur in der Software:
    - Sowohl Sat als auch Basis laufen sende- und empfangsmäßig über eine Art State-Machine
    - Die Initialisierung der RFM-Module ist für Senden und Empfangen vereinfacht
    - Der Satellit schläft, wenn er kein Funksignal sieht (I(sleep) = 37,5µA bei 8 Wachphasen pro Sek.)
    - Es werden Temperaturen (Ch00) und Spannungen (Ch06) als lesbare Angaben dargestellt (siehe Bild)
    - Die Batteriespannung des Satelliten wird über einen eigenen Befehl abgefragt, das RFM-Modul mißt die Spannung
    - Eine NTC-Kennlinie (1,5k bei 25°C) wurde aufgenommen, eine Tabelle erstellt (.xls) und eine Auswerte-Funktion
     geschrieben
    - Auf Ch01 hat sich spaßeshalber mal noch ein LDR dazugesellt (unten rechts auf dem Sat)
    - Der Reichweiten-Test hat ergeben: bei "normalen" Antennen funkt sich's spielend durch 3 Betonwände bis in die Garage...

    Ich frage mich, ob ich langsam den Boden im Faß sehe, oder ob das Faß jetzt erst richtig bodenlos wird...!!!

 

    20.09.09: V4
    ... das Faß IST bodenlos. Noch einige Monate später, mit wieder hauptsächlich viel Arbeit an der Software,
    ist wenigstens ein Sat mal auf Lochraster aufgebaut:
    - 9 Schraubklemmen (unten rechts), für jeden Kanal eine, jeweils darüber drei Steckpins: Referenz, Masse und nochmal
    der Kanal, um Pull-up oder Pull-down Widerstände auf den Kanal legen zu können (wie z.B. bei Kanal 0)
    - links daneben zwei große Schraubklemmen mit Masse und Referenzspannung für Sensoren
    - darüber das RFM-Tranceiver-Modul
    - zwischen den Steckpins und dem Controller der Programmier-Stecker und rechts die
    Spannungsversorgung (3 Pins wg. Verpolschutz)
    - links neben dem Controller der Schalttransistor für die Referenz
    - oben eine Relaisstufe, die mit dem gelb-schwarzen Draht an den Kanal 4 gesteckt ist
    - die Antenne (gelb-weiß) ist bewußt so lang gelassen, da der Sat im Zählerkasten hängt und die Antenne aus dem
    (fast) faradayschen Käfig hängen soll.


 

    So hängt der Sat dann in einem freien Fach im Zählerkasten. Der einzellige LiO-Akku (hier ein 1,55Ah-Akku)
    klemmt hinter der Platine.
    Oben drüber die Klingenschaltung. Das Relais vom Sat ist daran angeschlossen und ermöglicht jetzt funkgesteuerte
    Türöffnung ;-).
    Außerdem mißt der Sat die Temperatur im Raum und den Zustand (offen/zu) der Haustür. Da ist im Türöffner bereits
    ein Schaltkontakt eingebaut gewesen.

 

 

 

 

    Das ist die "Bedienoberfläche" auf dem LCD im Normalbetrieb, also "Datenfunk". In dieser Version gibt es die
    Hauptfunktionen "Datenfunk", was beim Einschalten aktiv ist, "Einstellen" und "Sonstiges". Bei Sonstiges ist noch nichts
    hinterlegt. Die beiden spitzen Klammern zeigen, welcher Menüpunkt gerade mit dem Encoder verstellbar ist. Bei Knopf-
    druck auf den Encoder springt die Klammer auf den nächsten Menüpunkt.
    In der 2. Zeile wird der Satellit eingestellt, mit dem kommuniziert werden soll (die Namen sind momentan noch fest
    vergeben, soll später logischerweise einstellbar sein), und der anzusprechende Kanal (nur als Nummer von 0 bis 8).
    Die 3. Zeile gibt dann den Wert aus, je nachdem welchen Typs der Kanal ist, bzw. auch die Ein- und Ausschaltmöglichkeit
    beim Typ "Relais".
    Die 4. Zeile zeigt schließlich noch Status- und Fehlermeldungen und auch die aktuelle Versorgungsspannung des gewählten
    Satelliten.
 

 

    Hier ein Beispiel für eine implementierte Funktion: Das Anmelden eines neuen Sat, also die Vergabe einer neuen ID.
    Hinter dem Bild habe ich ein kurzes Video versteckt, das die Anmeldung demonstriert.

 

 

 

 

 

 

 Zur Software auf der Basis:
- Jetzt gibt es ein Menü-System mit einem Encoder zur Navigation im Menü. Die beiden wesentlichen Menüpunkte sind:
    # die Vergabe von IDs für "neue" Satelliten und
    # die Abfrage von Datenkanälen. Dabei kann man den entsprechenden Satelliten auswählen, sowie den Kanal.
- Der Typ eines Kanals kann aus vorgefertigten Typen ausgewählt werden, dadurch ist auch die Wertberechnung und Darstellung festgelegt.
    Ansonsten wird der ADC-Wert sozusagen als "Rohwert" angezeigt. Als Typen stehen diverse Meßwerttypen (derzeit eingebaut:
    Temperatur, Spannung, Helligkeit, Hall-Sensor, Kontaktstellung) und auch ein Ausgang (Relais) zur Verfügung.
- Alle Satelliten-IDs und deren Kanäle (bzw. Kanaltypen) sind im EEPROM der Basis gespeichert. Software zur Zuordnung bzw. Einrichtung
    der Typen zu Kanälen fehlt noch.
- Die Batteriespannung der Satelliten wird überwacht.
- Ein "Fehlerhandler" zeigt Status und Fehler bei der Kommunikation an.

Weitere Einzelheiten können auch noch in der Doku und Spec nachgelesen werden.
 

Wie geht's weiter?
- Viiieeeel Software zum Konfigurieren
- Vielleicht ein I2C-EEPROM für die vielen Konfigurationsdaten (z.B. Satellitennamen)
- Fehleranzeige erst nach 3 mißglückten Sendeversuchen
- Die Basis mal in eine Schachtel packen
- Nicht gleich so viel vornehmen, sonst erreicht man seine selbstgesteckten Ziele NIE!

 

Hier gehts zur kompletten Doku.
Die Doku ist nicht sooo 100%ig toll und supergenau, wie sie jeder gerne hätte - mangels Zeit - aber ich hoffe, daß man stellenweise mit ein bißchen Phantasie und gesundem Menschenverstand weiterkommt.
Ansonsten gibt's die Möglichkeit, mal über E-Mail nachzufragen bei -->Micha Ätt Magiclamp Pkt DE<--

 

(Seitenanfang)