Im Rahmen einer Prokektarbeit beschäftige ich mich mit der
Anbindungs-bzw. Kommunikationsmöglichkeit zwischen ZigBee und CAN Bus.
Die Grundlagen von ZigBee und CAN Bus habe ich mir durchgelesen.
(Es sei gesagt,dass ich vorher keinerlei Ahnung von CAN Bus und ZigBee
hatte und auch nie damit gearbeitet habe)
Als Hardware habe ich den CC2420 mit dem ATMEGA 128 chip. Über CAN
Hardware habe ich mir bis jetzt noch keine Gedanken gemacht.
Die Fragen die ich habe sind.
1.CAN arbeitet ohne Adressen,stattdessen werden die Nachrichten mit
einer ID versehen. ZigBee wiederum arbeitet mit 16 oder 64 Bit großen
Adressen.
2.Die Nutzdaten pro Frame sind auch unterschiedlich.Während CAN nur
maximal 8 Byte pro Frame übertragen kann, sind es bei ZigBee, wenn ich
mich nicht täusche 127 Byte.
Also ein direkter Austausch zwischen CAN und ZigBee ist ja so ohne
weiteres nicht möglich.
Kann mir vielleicht einer bitte weiterhelfen wie ich diese Sachen
Anpassen kann oder wie man da zu einer Lösung kommen kann?
Was solls denn werden? Eine Funkbrücke für CAN? Da wäre es am
sinnvollsten, wenn du alle CAN-Frames einfach bidirektional weiter
reichst.
Oder sollen verschiedene ZigBee Knoten per CAN angesprochen werden? Da
musst du dir ein eigenes Protokoll ausdenken, was du über CAN legst.
Kommt immer auf die Anwendung an. Wir haben in einer Projektarbeit
damals im Studium eine Bluetooth-Bridge für CAN gebaut.
Irgendwie macht die Sache aber im praktischen keinen Sinn, denn die
Echtzeitfähigkeit sowie die Selbstvernetzung von ZigBee werden irgendwie
dabei draufgehn....
Es soll ungefähr so aussehen.
Man schreibt eine Nachricht(Telegramm) für CAN wo z.B drin steht,schalte
Licht oder LED an.Diese Nachricht soll dann über CAN an ZigBee
weitergeleitet werden. ZigBee funkt die Information bzw Nachricht an die
entsprechende LED bzw Licht.
So in etwa hat man sich das vorgestellt,ob das so funktionieren wird,
das muss ich dann noch rauskriegen.
Es kann gut sein, dass das ganze in der Praxis so nicht zu gebrauchen
ist.Die Idee ist nur zu gucken ob man und wenn wie man das realisieren
kann.
Ja richtig, es soll zunächst erst mal geprüpft werden ob man ein ZigBee
Knoten über CAN steuern kann. Wenn das klappt kann man sich ja noch
überlegen ob die umgekehrte Richtung auch funktioniert,spricht die Daten
kommen von ZigBee und werden dann an CAN geschickt.Das ist aber erst mal
nich so relevant.
Könntest du mir bitte weiter helfen bzw Tipps geben wie ich an die Sache
dran gehen kann.
Mfg
David
Hmm...na da musst du dir selber ein Protokoll aus denken, wie du alle
Netzwerk-Managment-Befehle usw die der ZigBee Coordinator beherrscht, in
die CAN-Botschaften verpackst. Wird halt nicht ganz einfach, aber
naja...groß helfen knn ich dir da nicht.
Da ich noch ein Anfänger auf dem Gebiet bin, kenne ich mich noch nicht
so gut damit aus. Ich habe nie zuvor ein Protokoll selbst
geschrieben.Was ein Protokoll ist und was es für Aufgaben hat ist mir
theoretisch klar.
Schreibe ich das Protokoll z.B einfach in C indem ich selbst die Befehle
definiere?
Hast du vielleicht Beispiel Protokoll, wo ich mir mal anschauen kann wie
das so aufgebaut ist bzw wie es generell geschrieben wird oder Links wo
man sich das mal so anschauen kann?Das wäre hilfreich.
Mfg
David
Hi Leutz
irgendwie wollt ihr schweineschmalzvanillepudding machen..
vermutlich ist der einfachste weg die funkstrecke transparent zu nutzen
indem man "broadcast"et, senden an alle!
man reicht den zustand des CANbusses drahtlos weiter, CANpakete
erreichen alle teilnehmer..
die beiden CANleitungen werden gesampelt und logisch verknüpft. aus acht
vorgängen wird ein Byte, dieses "telegramm" kann nun seriell über zigbee
verbreitet werden und beim client wieder bitweise auf die zwei leitungen
angewendet...
für einen einfachen demonstartor mit fünf teilnehmern wird das wohl
reichen, grössere projekte benötigen ein zigbee zu CAN-protokollwandler.
Hey, habe mir jetzt nicht alles durchgelesen was hier steht, aber ich
habe ähnliches vor bzw. gemacht...
Daten werden vom Zigbee zu nem Host-Mikrocorntroller (PIC18)per
UART-Protokoll gesendet. Dort werden sie an die entsprechende
CAN-Register des PICs weitergegeben, die für die CAN-Kommunikation
zuständig sind... PIC18F2480 zb hat direkt eine eingebaute Funktion um
eine CAN-Botschaft zu erstellen, mit allem was dazu gehört (ID,Daten).
Grüße
Hallo David!
hast du was hilfreiches zu deiner Aufgabenlösung noch rausbekommen
können?
Ich wäre auch daran interessiert, und zwar will ich eine Remotesteuerung
mit Zigbee-fähigen 8 bit Microcontroller machen.
Die Idee wäre die:
Remote Fernbedienung sendet CAN-Befehle über Zigbee-Protokoll an den
Empfänger. Der Controller vom Empfänger gibt die Meldungen an den
CAN-Bus weiter.
Hast du Ansätze oder gar Lösungen zu dem Thema finden können?
Wäre dir dazu sehr dankbar!
kannst dich bei mir ja melden.
Vielen Dank
MfG, daniel