Labnode: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
|||
(32 dazwischenliegende Versionen von 7 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|Unterseite]] | [[Datei:labnode_rueckseite.jpg|thumb|260px|right|Unterseite]] | ||
Zeile 21: | Zeile 17: | ||
== Features == | == Features == | ||
* ATMega32 | * ATMega32 Mikrocontroller | ||
* MCP2515 CAN Controller | * MCP2515 CAN Controller / MCP2551 CAN-PHY | ||
* Platz für RFM12 Funkmodul | * Platz für RFM12 Funkmodul | ||
* | * Schaltregler für 5V/500mA aus 7-30V Eingangsspannung | ||
* IOs | * IOs | ||
** 10 Pol | ** 10 Pol Wannenstecker für CAN-Bus und Buspower Versorgung | ||
** 3 gleich belegte 10 Pol Wannen | ** 3 gleich belegte 10 Pol Wannen mit | ||
*** 5V Spannung | *** 5V Spannung | ||
*** Eingangsspannung | *** Eingangsspannung | ||
*** 2 AVR Analog Pins | *** 2 AVR Analog Pins | ||
*** 2 AVR Digital Pins | *** 2 AVR Digital Pins | ||
*** 2 ULN2003 Open | *** 2 ULN2003 Open Kollektor Ausgänge bis 500mA belastbar | ||
** 10 Pol ISP Stecker | ** 10 Pol ISP Stecker | ||
*** zur Programmierung des | *** zur Programmierung des AVRs | ||
*** Zusätzliche serielle Schnittstelle | *** Zusätzliche serielle Schnittstelle | ||
*** SPI Schnittstelle | *** SPI Schnittstelle | ||
Zeile 47: | Zeile 43: | ||
Wenn man einen CAN-Bus zur Automatisierung einsetzt bekommt die Labnode über einen Stecker CAN und Buspower, | 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 | 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 | der Bus-Power und als CAN-USB-Schnittstelle zu einem PC eingesetzt werden. | ||
== Platine und Bauteile == | == Platine und Bauteile == | ||
Zeile 68: | Zeile 64: | ||
== Pinbelegung der Stecker == | == Pinbelegung der Stecker == | ||
<b>EXT1</b> | <b>EXT1</b> | ||
Zeile 77: | Zeile 74: | ||
5 PA2 ADC2 | 5 PA2 ADC2 | ||
6 PA3 ADC3 | 6 PA3 ADC3 | ||
7 | 7 PC6 Treiberausgang 2 (Q2) | ||
8 | 8 PC7 Treiberausgang 1 (Q1) | ||
9 NC | 9 NC | ||
10 +V ext. Versorgung | 10 +V ext. Versorgung | ||
<b>EXT2</b> | <b>EXT2</b> | ||
Zeile 90: | Zeile 88: | ||
5 PA4 ADC4 | 5 PA4 ADC4 | ||
6 PA5 ADC5 | 6 PA5 ADC5 | ||
7 | 7 PC4 Treiberausgang 4 (Q4) | ||
8 | 8 PC5 Treiberausgang 3 (Q3) | ||
9 NC | 9 NC | ||
10 +V ext. Versorgung | 10 +V ext. Versorgung | ||
<b>EXT3</b> | <b>EXT3</b> | ||
Zeile 103: | Zeile 102: | ||
5 PA6 ADC6 | 5 PA6 ADC6 | ||
6 PA7 ADC7 | 6 PA7 ADC7 | ||
7 | 7 PD4 Treiberausgang 7 (Q7) | ||
8 | 8 PD5 Treiberausgang 6 (Q6) | ||
9 NC | 9 NC | ||
10 +V ext. Versorgung | 10 +V ext. Versorgung | ||
<b>USB</b> | <b>USB</b> | ||
Zeile 112: | Zeile 112: | ||
D+ PD2 + PC2 | D+ PD2 + PC2 | ||
D- PC3 | 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> | <b>ISP</b> | ||
Zeile 125: | Zeile 149: | ||
9 PB6 MISO | 9 PB6 MISO | ||
10 GND Masse | 10 GND Masse | ||
<b>JUMPER 1</b> (Quelle für Schaltregler) | <b>JUMPER 1</b> (Quelle für Schaltregler) | ||
1 + 2 = ext. Versorgung | 1 + 2 = ext. Versorgung +V | ||
3 + 2 = Versorgung über CAN-Bus | 3 + 2 = Versorgung über CAN-Bus | ||
<b>JUMPER 2</b> (Versorgung für VCC) | <b>JUMPER 2</b> (Versorgung für VCC) | ||
Zeile 137: | Zeile 163: | ||
<br clear="both"/> | <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