Forum: HF, Funk und Felder Kommunikation zwischen ZigBee und CAN Bus


von David (Gast)


Lesenswert?

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?

von Christian R. (supachris)


Lesenswert?

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....

von David (Gast)


Lesenswert?

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.

von Christian R. (supachris)


Lesenswert?

Also wäre es im Prinzip ein ZigBee-Knoten (Koordinator) der über CAN 
gesteuert wird? Das wäre dann ziemlich leicht zu machen.

von David (Gast)


Lesenswert?

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

von Christian R. (supachris)


Lesenswert?

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.

von David (Gast)


Lesenswert?

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

von wurpfel (Gast)


Lesenswert?

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.

von aktiv (Gast)


Lesenswert?

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

von daniel. (Gast)


Lesenswert?

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

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.