Forum: Mikrocontroller und Digitale Elektronik Forum oder Hilfe zu CAN und CANopen


von Jens S. (jenss)


Lesenswert?

Hallo zusammen,
kennt jemand ein Forum wo sich leute tummeln die mit CAN und/oder 
CANopen zutun haben???

Gibt es da was gescheites? Habe leider noch nichts brauchbares gefunden.


Gruß
Shutty

von dc3yc (Gast)


Lesenswert?

Shutty,

probier mal www.canlist.org. Dort werden Sie geholfen. Aber bitte in 
Englisch!

Servus,
Helmut.

von Jens S. (jenss)


Lesenswert?

Vielen Dank für den Link!
Das sieht ja schon viel versprechend aus.

Aber wie funktioniert das mit diesen Yahoogroups eigentlich?
Kann ich das dann als "Newsgroup" bei Outlook (bzw. Outlook Express) 
einbinden? oder wie ist das?

Krieg ich dann alles immer per E-Mail in mein normales Postfach und ich 
muss dann ne Regel erstellen oder kann ich das als "öffentlichen Ordner" 
oder so hinzufügen? oder wie wird das so gehandhabt?

Ich hatte schon einmal auf einer Seite so eine yahoo group gesehen aber 
ich fand das tierisch unübersichtlich :D

Wäre super lieb wenn du mich da mal ein bisschen aufklären kannst :)

Vielen Dank!

Jens

von dc3yc (Gast)


Lesenswert?

Jens,

ich habe mich nicht über Yahoo angemeldet, sondern mit den Links auf 
dieser Seite. Yahoo spiegelt nur, da kann man nichts schreiben. Wenn du 
dich angemeldet hast, bekommst du halt alle mails dieser Gruppe. Hält 
sich aber in Grenzen.

Servus,
Helmut.

von Jens S. (jenss)


Lesenswert?

Vielen Dank für die Antwort!

Habe nun eine Email abegeschickt, mal abwarten wann ich eine 
Bestätigungsmail bekomme :)

Kennst du dich eventuell mit CANopen aus?

Kannst du mir vielleicht schon sagen, wie das Heartbeat Verfahren 
funktioniert? Bzw. wie der CANopen Slave erkennt das er keine Verbindung 
mehr zum CANopen Master hat? Wenn ich das so richtig gelesen habe sendet 
ja nur noch der Slave ein Telegramm und wenn der Master keins bekommt 
erkennt er, dass der Slave nicht da ist, aber wie erkennt der Slave wenn 
der Master nicht mehr da ist?

von jimbo (Gast)


Lesenswert?

Hallo,

CanOpen benutzt grundsätzlich kein Master SLave verfahren. D.h. 
nachrichten können von jedem Knoten gleichberechtigt losgeschickt werden 
(PDO´s - Prozessdatenobjekte).
Für verschiedene Zwecke wie Netzwerkmanagement, etc. gibt es Master 
Anwendungen. Beim NMT (Netzwerkmanagement) gibt es also einen Knoten, 
der das Netzwerk einrichtet (z.B. Adressen vergibt). Diesen bezeichnet 
man als Master.

Dann gibt es noch die SDO´s (Servicedatenobjekte). SDO´s werden immer 
als Punkt zu Punkt Verbindung zwischen einem SDO Client und einem SDO 
Server ausgetauscht. In einem Netzwerk kann es aber mehrere SDO Clients 
geben (auf unterschiedlichen SDO Kanälen). In der Grundkonfiguration 
gibt es nur einen SDO Client und jeder Knoten enthält einen SDO Server. 
Der SDO Client liegt typischerweise in dem Knoten der auch das Netzwerk 
aufsetzt (sofern nötig). Dieser Knoten wird von vielen dann auch mal als 
CanOpen "Master" bezeichnet.

Zu deiner Frage mit den Heartbeats. Jeder Knoten erzeugt selbsständig 
ein Heartbeatsignal. Dieses Signal kann von allen anderen knoten 
empfangen werden. Somit kann theorisch jeder Knoten jeden überwachen. In 
der Praxis überwachen allerdings sich nur Knoten gegenseitig, die 
Nachrichten voneinander empfangen.

Eine gute Einführung zu CanOpen findest du meiner Meinung nach in dem 
Buch "Embedded Networking mit Can und CANopen" von Olaf Pfeiffer,Andrew 
Ayre und Christian Keydel

von Jens S. (jenss)


Lesenswert?

Ja mit CANopen habe ich nun schon gearbeitet, das Buch was du genannt 
haste habe ich auch ;)

Und der Rest der Telegramm arten ist mir auch bekannt. Die alten Geräte 
arbeiten alle mit dem Nodeguardingverfahren...da kriegt ja dann der 
Master mit das der Knoten nicht mehr reagiert und der Knoten sieht, wenn 
der Master ausfaellt, dass der Master weg ist.

Meine Geräte schicken immer nur PDO's zum Master...nie zu anderen 
Teilnehmern.

Sendet der CANopen Master denn auch ein Heartbeatsignal?
Ich hatte das nur so rausgelesen das nur die Slaves das Heartbeat signal 
senden, somit kriegen sie nie mit, wenn der Master nicht mehr da ist.

Damit wäre das Heartbeat verfahren für mich unbrauchbar :(

Oder der CANopen Master der auch die SDO Konfiguration macht etc. 
schickt auch ein Heartbeatsignal...Geht denn sowas? Würde der Master 
dann aufeinmal mit der COBID 700 senden? eigentlich ist die ja nicht 
dafür vorgesehen aber der Master hat ja die ID 0.

Also mit dem Heartbeatverfahren kann ich mehr oder weniger nur in einem 
Großem Netzwerk arbeiten wo Slaves sich untereinander Daten senden aber 
den Master kann ich damit nicht kontrollieren. bzw. die Kommunikation 
zwischen Master und Slave.

Das ist ja dann schade...

von jimbo (Gast)


Lesenswert?

Hallo Jens,

das was du in deiner Anwendung als Master bezeichnest, ist nichts 
anderes als ein normaler (Slave) Knoten, bei dem noch ein paar 
Zusatzdienste installiert sind. (z.B. SDO Client). Wie jeder andere 
Knoten auch, kann dieser natürlich Heartbeatsignale versenden.

Der Master hat in diesem Fall allerdings nicht die ID 0, sondern eine 
zwischen 1 und 127 (wie jeder andere Knoten auch). Somit kann ist er ein 
Kommunikationsteilnehmer wie jeder andere auch.  Die Id 0 wird manchmal 
für "Master" Anwendungen angenommern, die nicht permanent am Bus hängen 
und nur das Netzwerk einrichten.(z.B. Konfigurationsprogramm am PC). 
Sobald ein Knoten aber zyklisch Daten versendet (auch Heartbeats) 
braucht er eine ID != 0.

von Jens S. (jenss)


Lesenswert?

Ok vielen Dank für die Informationen dann werde ich das mal hier 
versuchen!

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.