Labnode: Unterschied zwischen den Versionen
K (styling) |
Keine Bearbeitungszusammenfassung |
||
(42 dazwischenliegende Versionen von 9 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
{{ProjektInfoBox | {{ProjektInfoBox | ||
|name | |name=Labnode | ||
|image=lapnode_front.jpg | |||
|image | |description=Universelles Automatisierungs- & Experimentierboard | ||
|description = Universelles Automatisierungs- & Experimentierboard | |username=Tixiv | ||
| | |author=Tixiv | ||
| | |version=V1.0 | ||
|version | |platform=AVR (ATmega32/64) | ||
|download=[https://github.com/das-labor/labnode github.com/das-labor/labnode] | |||
|platform | |tags=Labor Automation, | ||
|download | |||
}} | }} | ||
[[Datei:labnode_rueckseite.jpg|thumb|260px|right| | [[Datei:labnode_rueckseite.jpg|thumb|260px|right|Unterseite]] | ||
Universelle Platine für die verschiedensten Aufgaben von der Automatisierung bis zu Experimentierbord geeignet. | Universelle Platine für die verschiedensten Aufgaben von der Automatisierung bis zu Experimentierbord geeignet. | ||
== 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 | |||
== 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. | |||
== 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 | 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. | |||
== Schaltplan und Bestückung == | |||
{| | {| | ||
Zeile 32: | Zeile 62: | ||
| | | | ||
|} | |} | ||
== Pinbelegung der Stecker == | |||
<b>EXT1</b> | |||
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 | |||
<b>EXT2</b> | |||
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 | |||
<b>EXT3</b> | |||
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 | |||
<b>USB</b> | |||
D+ PD2 + PC2 | |||
D- PC3 | |||
<b>CAN</b> | |||
INT_CAN PB2 / INT2 | |||
CS_CAN PB4 / SS | |||
<b>CAN-Wannenstecker</b> | |||
1 GND | |||
2 GND | |||
3 CANH | |||
4 CANL | |||
5 GND | |||
6 GND | |||
7 BUSPOWER | |||
8 BUSPOWER | |||
9 BUSPOWER | |||
10 BUSPOWER | |||
<b>RFM12</b> | |||
INT_RFM12 PD3 / INT1 | |||
CS_RFM12 PB3 | |||
<b>ISP</b> | |||
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 | |||
<b>JUMPER 1</b> (Quelle für Schaltregler) | |||
1 + 2 = ext. Versorgung +V | |||
3 + 2 = Versorgung über CAN-Bus | |||
<b>JUMPER 2</b> (Versorgung für VCC) | |||
1 + 2 = Schaltregler | |||
3 + 2 = USB | |||
<br clear="both"/> | |||
== 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 [http://www.engbedded.com/fusecalc]) 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 Git unter [https://github.com/das-labor/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. | |||
[[Datei:CAN-Paket-Labnode.png|200px|thumb|right|CAN-Paket am CAN-Bus]] | |||
[[Datei:CAN-Paket-Labnode-UART.png|200px|thumb|right|CAN-Paket am UART]] | |||
* 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. | |||
== Erweiterungsmodule == | |||
=== Phasecut === | |||
Das erste fertige Erweiterungsmodul bietet 4 Kanäle die per Phasenanschnitt Lampen dimmen können. | |||
[[Labnode/phasecut]] | |||
=== 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]] | |||
== praktische Anwendungsbeispiele == | |||
=== CAN2USB === | |||
Die Labnode dient als Knotenpunkt, um den Can-Bus des Labors (o. Ä.) auf dem Computer zu beobachten und zu debuggen. | |||
[[Labnode/can2usb]] | |||
<br> | |||
'''Version 2''' | |||
Fertige Version von Tixiv [http://www.das-labor.org/trac/browser/microcontroller/src-atmel/automatization2.0/labnode/can_gateway/trunk/firmware source] | |||
Lässt sich mit dem [http://www.das-labor.org/trac/browser/microcontroller/src-atmel/automatization2.0/cand/trunk cand] / labcontrol (-U parameter) betreiben. | |||
=== Bastelcmd === | |||
Bastelcmd steuert das Licht im Bastelraum. [[Bastelcmd]] | |||
=== can_dimmer === | |||
Auf den 2 labnodes in der Lounge läuft die Software [http://www.das-labor.org/trac/browser/microcontroller/src-atmel/automatization2.0/labnode/can_dimmer can_dimmer]. Diese steuert jeweils 4 Lampen, incl. dimmfunktion. | |||
= Links = | |||
'''alternatives Projekt''' | |||
* http://caraca.sourceforge.net/ | |||
{{Navigationsleiste_Automatisierung}} |
Aktuelle Version vom 7. April 2017, 23:26 Uhr
Labnode Release status: unknown [box doku] | |
---|---|
Description | Universelles Automatisierungs- & Experimentierboard |
Author(s) | Tixiv |
Last Version | V1.0 () |
Platform | AVR (ATmega32/64) |
Download | github.com/das-labor/labnode |
„{{{status}}}“ befindet sich nicht in der Liste (experimental, beta, stable, obsolete, unknown) zulässiger Werte für das Attribut „Pr status“.
Universelle Platine für die verschiedensten Aufgaben von der Automatisierung bis zu Experimentierbord geeignet.
Features[Bearbeiten | Quelltext bearbeiten]
- 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
Idee[Bearbeiten | Quelltext bearbeiten]
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.
Platine und Bauteile[Bearbeiten | Quelltext bearbeiten]
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.
Schaltplan und Bestückung[Bearbeiten | Quelltext bearbeiten]
Pinbelegung der Stecker[Bearbeiten | Quelltext bearbeiten]
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
Hinweise/Caveats[Bearbeiten | Quelltext bearbeiten]
- 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 Git unter [2].
- 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.
Erweiterungsmodule[Bearbeiten | Quelltext bearbeiten]
Phasecut[Bearbeiten | Quelltext bearbeiten]
Das erste fertige Erweiterungsmodul bietet 4 Kanäle die per Phasenanschnitt Lampen dimmen können. Labnode/phasecut
0-10 V Ausgänge[Bearbeiten | Quelltext bearbeiten]
Bietet 2 Kanäle für eine 0 bis 10 V Ausgangsspannung die zur Ansteuerung von dimmbaren EVGs dienen. Labnode/0-10V Ausgang
praktische Anwendungsbeispiele[Bearbeiten | Quelltext bearbeiten]
CAN2USB[Bearbeiten | Quelltext bearbeiten]
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.
Bastelcmd[Bearbeiten | Quelltext bearbeiten]
Bastelcmd steuert das Licht im Bastelraum. Bastelcmd
can_dimmer[Bearbeiten | Quelltext bearbeiten]
Auf den 2 labnodes in der Lounge läuft die Software can_dimmer. Diese steuert jeweils 4 Lampen, incl. dimmfunktion.
Links[Bearbeiten | Quelltext bearbeiten]
alternatives Projekt
CAN Protokoll | Automatisierung des Labors | CAN-Gateway | Adressen
Canir
Hardware:
Labnode |
phasecut |
0-10V Ausgang |
LabnodeIO |
LabnodeIO-xl
Software: can2usb
CAN-Nodes:
Küchencan |
Lounge |
Bastelcmd |
Hauptschalter