Labnode
| Labnode Release status: Stable [box doku] | |
|---|---|
| | |
| Description | Universelles Automatisierungs- & Experimentierboard |
| Author(s) | Tixiv |
| Last Version | V1.0 |
| Platform | AVR (ATmega32/64) |
| Download | Software: SVN browse |
Universelle Platine für die verschiedensten Aufgaben von der Automatisierung bis zu Experimentierbord geeignet.
Inhaltsverzeichnis |
[Bearbeiten] Features
- ATMega32 Mikrocontroller
- MCP2515 CAN Controller / MCP2551 CAN-PHY
- Platz für RFM12 Funkmodul
- Schaltregler für 5V/500mA aus 7-30V Eingangsspannung
- IOs
- 10 Pol Wannenstecker für CAN-Bus und Buspower Versorgung
- 3 gleich belegte 10 Pol Wannen mit
- 5V Spannung
- Eingangsspannung
- 2 AVR Analog Pins
- 2 AVR Digital Pins
- 2 ULN2003 Open Kollektor Ausgänge bis 500mA belastbar
- 10 Pol ISP Stecker
- zur Programmierung des AVRs
- Zusätzliche serielle Schnittstelle
- SPI Schnittstelle
- USB Buchse
- Mit V-USB Bibliothek von http://www.obdev.at verwendbar
- Hohlstecker-Buchse
- optional Zur Stromversorgung
[Bearbeiten] Idee
Die Labnode ist als universelles Board zum Automatisieren von Dingen und zum Experimentieren gedacht. Wenn man einen CAN-Bus zur Automatisierung einsetzt bekommt die Labnode über einen Stecker CAN und Buspower, und an den 3 anderen Steckern können 3 Sensor/Aktor - Module angeschlossen werden. Eine weitere Labnode kann zum Einspeisen der Bus-Power und als CAN-USB-Schnittstelle zu einem PC eingesetzt werden.
[Bearbeiten] Platine und Bauteile
Die Platine gibt es für Laboranten bei mir (Tixiv) zu einem Unkostenbeitrag von 6 Euro.
Reichelt Warenkorb: https://secure.reichelt.de/?;ACTION=20;LA=5011;AWKID=253444;PROVID=2084
Der Reichelt Warenkorb enthält alle Bauteile inklusive CAN-Schnittstelle aber ohne das RFM12 Funkmodul.
[Bearbeiten] Schaltplan und Bestückung
[Bearbeiten] Pinbelegung der Stecker
EXT1
1 GND Masse 2 VCC +5V 3 PA1 ADC1 4 PA0 ADC0 5 PA2 ADC2 6 PA3 ADC3 7 PC6 Treiberausgang 2 (Q2) 8 PC7 Treiberausgang 1 (Q1) 9 NC 10 +V ext. Versorgung
EXT2
1 GND Masse 2 VCC +5V 3 PD6 ICP 4 PD7 OC2 5 PA4 ADC4 6 PA5 ADC5 7 PC4 Treiberausgang 4 (Q4) 8 PC5 Treiberausgang 3 (Q3) 9 NC 10 +V ext. Versorgung
EXT3
1 GND Masse 2 VCC +5V 3 PC0 SCL + Treibereingang 5 4 PC1 SDA 5 PA6 ADC6 6 PA7 ADC7 7 PD4 Treiberausgang 7 (Q7) 8 PD5 Treiberausgang 6 (Q6) 9 NC 10 +V ext. Versorgung
USB
D+ PD2 + PC2 D- PC3
CAN
INT_CAN PB2 / INT2 CS_CAN PB4 / SS
CAN-Wannenstecker
1 GND 2 GND 3 CANH 4 CANL 5 GND 6 GND 7 BUSPOWER 8 BUSPOWER 9 BUSPOWER 10 BUSPOWER
RFM12
INT_RFM12 PD3 / INT1 CS_RFM12 PB3
ISP
1 PB5 MOSI 2 VCC +5V 3 PB1 CS_EXT / T1 4 PD0 RXD 5 RESET " 6 PD1 TXD 7 PB7 SCK 8 NC (reserviert) 9 PB6 MISO 10 GND Masse
JUMPER 1 (Quelle für Schaltregler)
1 + 2 = ext. Versorgung +V 3 + 2 = Versorgung über CAN-Bus
JUMPER 2 (Versorgung für VCC)
1 + 2 = Schaltregler 3 + 2 = USB
[Bearbeiten] Hinweise/Caveats
- Die Fuses des Atmels sind wichtig - CKOPT muss gesetzt sein, weil der CAN-Controller sonst ein zu schwaches Clock-Signal bekommt. Mit den Fuses BF C9 (Low/High) (siehe auch [1]) funktionierts.
avrdude -c usbasp -p m32 -U lfuse:w:0xbf:m -U hfuse:w:0xc9:m
- Zum Testen eignet sich die Kombi des simple_can_node mit dem in main.c einkommentierten Abschnitt zum Senden von Testpaketen in Verbindung mit der UART-Variante des can_gateway. Beide finden sich im SVN unter microcontroller/src-atmel/automatization2.0/labnode.
- Der Overflow des foo-counters im node passiert etwa zweimal pro Sekunde - es sollten sich also Daten auf dem CAN-Bus und dem RS232-Ausgang des gw einstellen - die rote LED sollte blinken.
- Das CAN-Paket sieht (CANH und CANL gegen Masse gemessen) wie auf dem Bild rechts aus.
- Auf dem UART kommt dann das dekodierte Paket an, Bild ebenfalls rechts.
- Die Nodes erwarten im ersten Byte des EEPROMs ihre CAN-ID
- Zwischen CANH und CANL gehört ein 120 Ohm Widerstand - an beiden Enden des Bus - sonst kommt nur Müll an.
[Bearbeiten] Erweiterungsmodule
[Bearbeiten] Phasecut
Das erste fertige Erweiterungsmodul bietet 4 Kanäle die per Phasenanschnitt Lampen dimmen können. Labnode/phasecut
[Bearbeiten] 0-10 V Ausgänge
Bietet 2 Kanäle für eine 0 bis 10 V Ausgangsspannung die zur Ansteuerung von dimmbaren EVGs dienen. Labnode/0-10V Ausgang
[Bearbeiten] praktische Anwendungsbeispiele
[Bearbeiten] CAN2USB
Die Labnode dient als Knotenpunkt, um den Can-Bus des Labors (o. Ä.) auf dem Computer zu beobachten und zu debuggen.
Labnode/can2usb
Version 2 Fertige Version von Tixiv source
Lässt sich mit dem cand / labcontrol (-U parameter) betreiben.
[Bearbeiten] Bastelcmd
Bastelcmd steuert das Licht im Bastelraum. Bastelcmd
[Bearbeiten] can_dimmer
Auf den 2 labnodes in der Lounge läuft die Software can_dimmer. Diese steuert jeweils 4 Lampen, incl. dimmfunktion.
[Bearbeiten] Links
alternatives Projekt