Forum: Mikrocontroller und Digitale Elektronik CAN-Interface für Arduino u.ä.


von Daniel M. (usul27)


Lesenswert?

Im Moment bin ich an der Entwicklung eines Mesh-Stacks für den AVR. Zum 
Entwickeln ist die Wireless-Verbindung zwischen den ganzen Modulen aber 
recht problematisch. Jedes Modul braucht eine eigene Stromversorgung, 
die Software-Verteilung auf verschiedene Nodes ist auch problematisch.
Daher werde ich für die Entwicklung wohl CAN zur Kommunikation nutzen. 
Allerdings ist meine Hardware schon für die NRF24L01-Module angepasst. 
Daher habe ich ein kleines
CAN-Modul entwickelt, das pinkompatibel mit dem RF-Modul ist.

Es benutzt den MCP2515 und den SN65HVD230, beide mit 3.3V.

Die Platine ist etwas gross wie die NRF24L01-Module, die man bei eBay 
bekommt: ca. 34x16mm.

Ein paar Infos gibt es noch hier:
http://www.open-homeautomation.com/a-simple-can-interface-for-arduinosparrow/

Allerdings braucht ich jetzt auch noch einen Bootloader, der die 
Software vom CAN-BUS laden kann. Mal schauen, ob ich das hinbekomme. 
Oder hat jemand so etwas schon implementiert?

Gruss
Daniel

von Daniel M. (usul27)


Angehängte Dateien:

Lesenswert?

Hier noch die Platine

von ttl (Gast)


Lesenswert?

keine Schutzbeschaltung?

von Daniel M. (usul27)


Lesenswert?

Auf dem Bus? Der Transceiver hat ja eine integrierte Schutzbeschaltung 
auf den Busleitungen. Sollte man da noch zusätzliche Schutzmechanismen 
implementieren? Wenn ja, was wäre sinnvoll?

von Clemens S. (zoggl)


Lesenswert?


von Bernd S. (bernds1)


Lesenswert?

Daniel M. schrieb:
> Allerdings braucht ich jetzt auch noch einen Bootloader, der die
> Software vom CAN-BUS laden kann. Mal schauen, ob ich das hinbekomme.
> Oder hat jemand so etwas schon implementiert?

Ja, hier ist was:
http://www.kreatives-chaos.com/artikel/can-bootloader

oder auch von Atmel selbst gibt's was:
http://www.atmel.com/Images/doc8247.pdf

Gruß Bernd

von Daniel M. (usul27)


Lesenswert?

Clemens S. schrieb:
> zb:
> sinnvoll:
> http://de.farnell.com/nxp/pesd2can/diode-tvs-can-sot-23/dp/1510712
> overkill:
> 
http://at.farnell.com/epcos/b82789c113n2/drossel-canbus-1812-bauform-11uh/dp/7430507

Vielen Dank. Aber nochmal auf die interne Schutzschaltung 
zurückzukommen.
Der SN65HVD230 hat laut Datenblatt eine Schutzbeschaltung auf den beiden 
CAN-Leitungen. Warum sollte man dennoch eine externe Schutzdiode 
einsetzen?

von Daniel M. (usul27)


Lesenswert?

> Ja, hier ist was:
> http://www.kreatives-chaos.com/artikel/can-bootloader
>
> oder auch von Atmel selbst gibt's was:
> http://www.atmel.com/Images/doc8247.pdf

Super, genau was ich brauche :-)

von Clemens S. (zoggl)


Lesenswert?

ich sehe gerade das der  bis 16kV geht. (ich hatte jetzt den 2551 im 
kopf der nur bsi 6kv geht). das sollte eigentlich asureichen. wenn du 
unbedingt etwas machen willst dann baue eine kleine funkenstrecke 
zwischen Gnd und den Can leitungen.
http://www.carousel-design.com/SparkGap.html

von Daniel M. (usul27)


Angehängte Dateien:

Lesenswert?

So, die Platinen sind heute gekommen, jetzt muss ich mich mal ans Löten 
machen.
http://www.open-homeautomation.com/can-interface-pcbs-arrived/

von Gregor B. (Gast)


Lesenswert?

Daniel M. schrieb:
> Der SN65HVD230 hat laut Datenblatt eine Schutzbeschaltung auf den beiden
> CAN-Leitungen. Warum sollte man dennoch eine externe Schutzdiode
> einsetzen?

Weil die Schutzdioden den Eingang nicht nur gegen ESD schützen.

Die NXP PESD2CAN hat außerdem einen Schutz gegenüber Surge-Ereignissen 
(8/20µs-Puls, max. 5A).

Wir verwenden auf dem CAN-Bus die NUP2105L, die bietet zusätzlich einen 
Schutz gegenüber Surge-Ereignissen mit einem max. Strom von 8A sowie - 
viel wichtiger - einen Schutz gegenüber schnellen Transienten (EFT oder 
Burst), die gerne in solchen Netzwerken auftreten (z.B. durch 
Störeinkopplungen durch das Schalten induktiver Lasten).

Dann verlieren ungeschützte Netzwerke nämlich gerne die Verbindung (z.B 
Rolladenmotor ein - Verbindung weg).

Eine Frage noch:
Was ist eigentlich mit dem Bus-Abschlusswiderstand?

von Daniel M. (usul27)


Lesenswert?

Der Bus-Abschlusswiderstand wird extern am Kabel angeschlossen.
Prinzipiell ist diese Schaltung dafür gedacht, mehrere 
Mikrocontrollerboards über kurze Distanzen (eher Zentimeter als Meter) 
zu vernetzen. Mein Hauptinteresse ist es, das als Alternative zu einem 
RF-Modul für Entwicklungszwecke zu nutzen.
Für den Einsatz in grossen CAN-Bussen mit entsprechendem Störpotenzial 
müsste man sicher die Schutzbeschaltung überdenken.

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.