Forum: Mikrocontroller und Digitale Elektronik Can Bus Filter/Blocker


von Nils (Gast)


Lesenswert?

Hallo,
Ich habe einen MCP2515 CAN-Transceiver TJA1050 für mein Auto und kann 
die Signale vom Can Bus nun Auswerten. Nun möchte ich, dass ein 
Steuergerät im Auto bestimmte Can Massages nicht bekommt. Das heißt ich 
muss alle Nachrichten über meinen Arduino laufen lassen und nur die 
nicht weiter schicken die ich blocken will.
Nur wie geht das Hardware technisch? Brauche ich 2 Can Bus Shields?

von dasrotemopped (Gast)


Lesenswert?

Steuergerät vom Auto trennen, Arduino mit 2 CAN Bus Interfaces 
dazwischenschalten und CAN Nachrichten ausfiltern.
Anschliessend auf der abgesperrten Rennstrecke testen und diese nicht 
verlassen. Oder du arbeitest bei einem deutschen Autobauer, dann darf 
man das Auto auch mit Manipulationen am Steurgerät im Straßenverkehr 
nutzen.

Gruß,
dasrotemopped.

von Nils (Gast)


Lesenswert?

Es geht dabei nur um das Radio und die Tasten um Lenkrad aber danke für 
den Hinweis.
Nur wie bekomme ich an einen Arduino 2 Can Shields angeschlossen? Pins 
wie zb. Mosi Miso sind doch nur 1x vorhanden?

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Nils schrieb:
> Pins wie zb. Mosi Miso sind doch nur 1x vorhanden?
Das reicht auch. Nur den SlaveSelect brauchst du 2x.

Sieh dir einfach mal die Sturktur eines SPI-Busses an:
http://www.lothar-miller.de/s9y/archives/15-SPI.html

von Frank K. (fchk)


Lesenswert?

Oder nimm einfach einen Arduino Due:

https://store.arduino.cc/arduino-due

Der hat bereits zwei CAN-Controller (also das, was Du sonst in zwei 
MCP2515 hat) eingebaut.

CANTX0: PA0
CANRX0: PA1
CANTX1: PB14
CANRX1: PB15

Du brauchst nur noch an die entsprechenden Pins die CAN-Transceiver 
anzuklemmen. Da der Prozessor auf dem Due nur mit 3.3V arbeitet, 
brauchst Du einen Transceiver mit zwei Spannungseingängen, zB:
- TJA1042T/3 (das /3 ist wichtig!)
- TJA1051T/3
- MAX13054
- MCP2562
- NCV7349D13R2G

Diese Lösung ist einfacher zu realisieren und zudem sehr viel 
performanter.

Falls Du etwas fertiges willst:

http://copperhilltech.com/dual-can-bus-interface-for-arduino-due-with-extended-power-range/
http://togglebit.net/product/arduino-due-can-shield/
http://store.evtv.me/proddetail.php?prod=DueCANBUS

Und hier gibts eine Lib dafür:
https://github.com/collin80/due_can

fchk

von Nils (Gast)


Lesenswert?

Wie schaffe ich das von der library beide shields angesprochen werden 
können?

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.