Forum: Mikrocontroller und Digitale Elektronik Arduino und CAN via SPI


von *GAST* (Gast)


Lesenswert?

Hallo,

ich betreibe einige kleine Automatisierungen und Steuerungen auf 
CAN-Basis. Jetzt möchte ich einzelne kleine "Teiljobs" ausgliedern, und 
den jeweiligen Prozess mit Parametern aufrufen. Parameter sind z.B. 
Zeiten, mit denen die Ventile abwechselnd angesteuert werden, oder 
Sollwerte. Diese Steuerung möchte ich in einen Arduino Due 
implementieren. So kann ich genauer und zuverlässiger Ventilzeiten 
einhalten, als über den PC direkt gesteuert.

Der Arduino soll eine CAN-Schnittstelle haben. Eine Möglichkeit wäre der 
MCP2515 als CAN-Controller, dieser lässt sich aber nicht so einfach 
programmieren. Deshalb überlege ich gerade, das ganze wie unten 
gezeichnet aufzubauen. Der AT90CAN128 geht natürlich nicht direkt auf 
CAN, sondern über einen CAN-Transceiver. Den AVR würde ich also "nur" 
als Kommunikationsschnittstelle zwischen CAN und SPI verwenden. Für den 
AVR habe ich auch schonmal Programme erstellt, es geht hauptsächlich nur 
um das Senden einzelner Frames mit 8 Byte an eine Bestimmte Adresse.

Ist diese Vorgehensweise sinnvoll, bzw. gibt es eine einfachere, um 
CAN-Frames mit dem Arduino auszutauschen?
                ________
Sensor 1 --->  |         |
Sensor 2 --->  |         |          __________
Sensor 3 --->  |         |         |            |         ___
Sensor 4 --->  |         |   SPI   |            |  CAN   |     |
               | arduino | <-----> | AT90CAN128 | <----> | PC  |
Ventil 1 <---  |         |         |            |        |_____|
Ventil 2 <---  |         |         |____________|
Ventil 3 <---  |         |
Ventil 4 <---  |_________|

von Kindergärtner (Gast)


Lesenswert?

Warum denn den Arduino zwischen AT90CAN128 und Sensoren & Ventile 
schalten? Schließ den AT90CAN128 doch einfach direkt an die Sensoren & 
Ventile an, der ist eh leistungsfähiger als der Arduino selber.

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.