Hallo,
ich bin relativ neu was AVR angeht und wollte auch mal außerhalb LED
blinken etwas machen was mir im Momment auch nützlich sein kann.
Ich dachte da gerade an folgendes:
1 Sender
4 Empfänger
Aber jetzt habe ich da erst mal eine Grundsatzfrage zu XBee.
Wenn ich so ein XBee Modul hernehme, muss ich da das teure XBee Shield
nehmen? Oder kann ich da im Prinzip einen AVR nehmen Strom anklemmen 2
Taster an den AVR und los gehts?
Angenommen der Sender ist so aufgebaut, dass dort ein AVR mit
Stromversorgung ist und 2 Taster sowie AVR.
Empfänger im Prinzip gleich, nur anstatt Taster 2 LED´s.
Wenn ich das so verstanden habe, sind die Platinen für Empfänger und
Sender eigentlich gleich. Oder habe ich da jetzt einen bösen Denkfehler
da drin?
Grüße,
Mike
Hallo
> ich bin relativ neu was AVR angeht und wollte auch mal außerhalb LED> blinken etwas machen was mir im Momment auch nützlich sein kann.> Wenn ich das so verstanden habe, sind die Platinen für Empfänger und> Sender eigentlich gleich.> Oder habe ich da jetzt einen bösen Denkfehler da drin?
Ein XBee ist Sender und Empfänger in einem.
Allerdings würde sich ein XBee zu Tode langweilen, wenn es nur ein oder
zwei LED's schalten dürfte ...
Wenn Du dir unnötige Ausgaben und unsogrößeren Frust ersparen willst,
dann verschiebe das Thema XBee noch etwas in die Zukunft.
Es gibt - ausser blinkenden LED's - unendliche viele Dinge, die man
erforschen kann ...
Wenn ich ein Lehrbuch schreiben müsste, dann würde ich beginnen mit:
- DCF77 (die gemütliche Decodierung der Zeitinformation)
sehr nützlich als die erste selbstgebaute Funkuhr.
- Manchester Codierung (Stichwort RC5 etc., IR-Fernbedienung)
damit kann man LED's etc. quasi per "Funk" schalten,
aber preisgünstiger als mit XBee's.
- Serielle Datenübertragung mit der Seriellen Schnittstelle
- TWI-Bus
daraus lassen sich unendliche viele Slaves mit selbstausgedachten
Funktionen entwickeln.
- One-Wire-Bus
- CAN-Bus
- ........
Schon mit diesen einfachen Themen kann man sich Jahre lang beschäftigen.
Und unendlich viel lernen.
Und wenn das alles langweilig geworden ist, dann gibt's je immer noch
die XBees.
mfg
Michael S.
Hallo,
die Minimallösung zum (steckbaren) Anschluss eines XBee wäre:
- 2x 10polige Buchsenleiste, Raster 2.0mm,
- etwas Litze, Lot, Lötkolben,
- Geduld.
mfg
Michael S.
Ich denke, was die meisten hier nicht verstehen:
Warum XBee?
XBee ist eine Lösung, die im Prinzip ein Kabel durch eine Funkstrecke
ersetzt, nicht mehr.
Brauchst du unbedingt Funk? Was spricht gegen ein ordinäres Kabel?
Und Mehrprozessor-System, bei dem sich meherer Prozessoren untereinander
unterhalten und sich gegenseitig Daten bzw. Befehle zuschanzen, das ist
dann schon ein etws fortgeschritteneres Thema. Da gibt es davor noch
jede Menge anderer Dinge, die du ergründen musst/kannst.
zb: Wie sind dein Kentnisse zum Thema Timer? Multiplexing? LED-dimmen?
ADC? ...
Hallo Karl Heinz Buchegger,
ich schätze Deine Beiträge sehr - alleine derentwegen macht es Spaß,
hier im Forum mitzulesen.
Aber als meine XBee's das gelesen haben
> XBee ist eine Lösung, die im Prinzip ein Kabel durch eine Funkstrecke> ersetzt, nicht mehr.
da gabe es mächtiges Murren im Raum.
Wozu gibt es für die XBee's ein dickes Manual, an dem man lange Lesen
kann - ohne doch am Ende alles zu verstehen ?
Das alles, um ein als Funkstrecke getarntes Kabel zu beschreiben ???
Oder ist da noch etwas mehr ?
mfg
Michael S.
Michael S. schrieb:> da gabe es mächtiges Murren im Raum.
:-)
> Wozu gibt es für die XBee's ein dickes Manual, an dem man lange Lesen> kann - ohne doch am Ende alles zu verstehen ?
OK, Ich hab da möglicherweise stark vereinfacht. Ich denke allerdings
nicht, dass dem Fragesteller bewusst ist, was er mit einem XBee
eigentlich bekommt. So wie die Frage formuliert ist, klingt sie für mich
nach "Gibt es noch andere Möglichkeiten um mehrere AVR miteinander
kommunizieren zu lassen als XBee?" So quasi "Ist ein XBee Voraussetzung
um 2 AVR überhaupt miteinander reden zu lassen?"
Hallo Karl Heinz Buchegger,
> Ich denke allerdings nicht, dass dem Fragesteller bewusst ist,> was er mit einem XBee eigentlich bekommt.
dem stimme ich voll zu.
Weder in diesem noch in anderen Foren habe ich bislang Beiträge
gefunden, in denen die Fähigkeiten/Möglichkeiten von XBee-Netzwerken
annähernd ausgelotet werden.
Meist dreht sich die Frage darum, wie man mit möglichst hoher Baud-Rate
die Daten in ein XBee peitscht - in der Hoffnung, dass sie genauso
schnell am Ziel ankommen.
Und wenn die Rede vom API-Modus ist - dann folgt immer betretenes
Schweigen.
Schade eigentlich.
mfg
Michael S.
Ist eine Funkstrecke nicht immer ein Ersatz für ein Kabel? Was könnte
eine Funkstrecke können, was ein Kabel nicht kann? (Außer halt, daß es
drahtlos ist)
Hallo,
danke erstmal für die Zahlreichen Antworten.
Es muss nicht unbedingt ein XBee sein aber es muss Kablellose
Kommunikation sein die in etwa 150Meter freie Sicht überbrückt. Ich habe
die Tage viel im Internet gelesen und bin oft über XBee gestolpert.
Von daher dachte ich daran.
Hallo,ich habe hier seit 2 Jahren XBees in betrieb.
Du brauchst nur 2 AVRs und 2 xbee.
Wenn man sich das Datenblatt durchliest,sind sie sehr einfach
anzusteuern.
Sind zwar nicht ganz billig aber zuverlässig.
gruss
andy
@Michael
also beim API-Mode wäre bei mir kein betretenes Schweigen. Ich entwickle
damit gerade eine Haussteuerung. Ziemlich genial.
XBee = ein Kabel durch eine Funkstrecke ersetzt? Oweia.
Markus
@ andy
> Du brauchst nur 2 AVRs und 2 xbee.
Der Purist kommt sogar mit 1 einzigen AVR (am Coordinator) und x-XBee
(ohne zusätzliche AVR's aus).
Mit diesem Netz kann man allerdings nur relativ einfache Aktionen
ausführen.
> Ich entwickle damit gerade eine Haussteuerung. Ziemlich genial.
Ich auch (nicht genial, aber ich entwickle auch so etwas mit dieser
Zielsetzung).
Stell doch mal Deine Lösung zur Diskussion.
Mich würde die Vorgehensweise anderer interessieren.
mfg
Michael S.
@ Michael
Mit "Genial" meinte ich die Arbeitsweise bzw. Fähigkeiten der XBees -
meine sind wohl eher bescheiden ;)
Vom System her habe ich eine Coordinator-XBee (Series2 - API-Mode, Mesh)
am µController mit Ethernet und LCD, der von den anderen XBees (API/
AT-Mode) per IR-Sampling (0x92 - ZigBee IO Data Sample Rx Indicator)
z.B. Daten (Temperatur, Feuchte etc.) empfängt. Teilweise mit XBee im
Sleep-Mode, um Akkubetrieb zu gewährleisten.
Gleichzeitig pollt der Coordinator Web-Seiten, um auf dezidierte
XBee&µC-Empfangs- bzw. Sendestationen auch andere Daten (z.B.
Nachrichten) per parsing aus Webseiten über 0x10-API-Pakete (ZigBee
Transmit Request) zu verschicken. Möglich ist auch das Fernschalten von
230V-Verbrauchern über eine µC/ XBee-geeignete Schaltsteckdose
(bidirektional).
In einer nächsten Ausbaustufe möchte ich per Internet/ Android-App noch
meine einzelnen elektronischen Heiz-Thermostate ansteuern können und
natürlich eine grafische Oberfläche zum Sammeln der ganzen Daten anlegen
(aka "aufhübschen").
Markus
@ Markus,
zwar sind wir hier ziemlich unhöflich und klauen Mike R.'s Thread.
Aber vielleicht erhält er damit ein Ahnung, was man mit den XBee's
anstellen kann.
Zu Deiner Beschreibung:
Das IO-Sampling (Frame0x92) setzte ich genauso ein (Schalter, Taster,
Reedkontakte, Bewegungsmelder senden automatisch IO-Samples an den
Coordinator).
Der führt dann diejenigen Aktionen aus, die in einem Regelwerk
hinterlegt ist.
Dieser Ansatz ist insofern interessant, als man hier tatsächlich nur
einen einzigen AVR (am Coordinator benötigt), alle anderen Module
arbeiten standalone.
Die Verbindung zum Internet habe ich noch nicht auf dem Schirm.
Im dritten Absatz geht's um die Arbeit mit den Frames0x10/0x90.
Hier hat man die größte Flexibiltät und der Phantasie keine Grenzen mehr
gesetzt (aber der Arbeitsaufwand nimmt leider zu).
Ich verwende die Frames0x10/0x90 zur Zeit, um Messwerte etc. zum
Coordinator zu übertragen, der alle Daten - mit Zeitstempel versehen -
auf einem USB-Stick speichert.
Die Heizungssteuerung wird man vermutlich auch auf diesem Wege
betreiben.
Ich habe mir einen Standard-Router definiert.
Jeder davon verfügen über einen TWI-Bus-Anschluss, Anschlussmöglichkeit
für 6x DS18B20 sowie einen Helligkeitssensor.
Von aussen kann ich Daten auf jeden lokalen TWI-Bus senden - und die
Antwort auf ein TWI-Read auf jeden beliebigen Router im Netz umleiten.
mfg
Michael S.
@ Mike R.
die DS18B20 werden über einen 1-wire-Bus betrieben.
Die XBee stellen aber "nur" 12 IO-Pins bereit, die wie folgt
konfiguriert werden können:
- als Ausgang (HIGH),
- als Ausgang (LOW),
- als digitaler Eingang (Binär-Eingang mit Status high oder low)
jeder Statuswechsel sendet automatisch ein IO-Status-Sample,
- als inaktiv.
Wie Du siehts - der 1-wire-Bus fehlt hier.
Nein, bei dem "Standard-Router" werden die XBee's ausschließlich zur
Datenübertragung genutzt - alle IO-Pin sind ungenutzt.
Die Funktionalität für den TWI- und den 1-wire-Bus etc. stellt ein
ATMEGA88 zur Verfügung.
mfg
Michael S.
Hallo,
auch ich möchte mal kurz den Thread entführen:
Weiß jemand, wie man im AT-Modus von einem XBee (e.g. Coordinator) zu
einem anderen XBee (e.g. End-Device/Router) einen String schickt?
Gibt es vielleicht irgendetwas in dem Format:
ATZielknoten String
Ich habe leider überall nur die Konfiguration im API Modus oder mit
gesetzter Destination Adress gefunden. In 2. Fall sind ja dann nur 2
XBees verbunden und kein Netzwerkaufbau mit mehreren XBees möglich.
Vielen Dank.
Gruß,
Markus O.
Wieso setzt Du den Coordinator nicht einfach auf broadcast 0xFFFF und
die Empfänger auf die Coordinator-Adresse 0x0000? Dann schickt der
Coordinator im Transparent-Modus alle Nachrichten an alle auf den
Coordinator eingestellten Devices raus.
Markus
Stimmt,
das ist eigentlich fürs erste eine gute Idee. Dann muss man halt hinter
den XBees im µC filtern, aber das ist ja für kleinere Sachen erstmal
egal.
Werd ich gleich mal ausprobieren!
Dank.
Gruß,
Markus