Z21 Arduino Zentrale (Atmega328p): Unterschied zwischen den Versionen

Aus Digital Modellbahn
K
 
(39 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
 +
[[Datei:Z21_logo.png|120px|right|link=Z21_mobile]]
 
{{Vorlage:Navigationsleiste Zentrale}}
 
{{Vorlage:Navigationsleiste Zentrale}}
 
{{Vorlage:Navigationsleiste_Zentrale_Versionen}}
 
{{Vorlage:Navigationsleiste_Zentrale_Versionen}}
[[Datei:Z21_logo.png|120px|right|link=Z21_mobile]]
 
  
 
== Beschreibung ==
 
== Beschreibung ==
 
[[Datei:Arduino_simple_Zentrale.png|thumb|170px| Zentrale ATmega328p mit Booster ([http://sourceforge.net/projects/pgahtow/files/Z21_mobile/DCC_Zentrale/simple%20Zentrale.sch Eagle Schaltplan])]]
 
[[Datei:Arduino_simple_Zentrale.png|thumb|170px| Zentrale ATmega328p mit Booster ([http://sourceforge.net/projects/pgahtow/files/Z21_mobile/DCC_Zentrale/simple%20Zentrale.sch Eagle Schaltplan])]]
Eine kleine Zentrale mit LocoNet lässt sich, aufgrund des geringen RAM dennoch, mit einem Arduino UNO realisieren. Für die Anbindung ans Z21-Protokoll sollte ein ressourcensparendes ESP WLAN-Modul eingesetzt werden. Für die Kommunikation mit dem WLAN-Modul wird ein Hardware Serial Port benötigt, deshalb ist dann der Einsatz von XpressNet nicht möglich. Werden mehr Funktionen benötigt muss ein größerer Prozessor genutzt mit mehr Speicher genutzt werden.
+
Eine kleine Zentrale mit LocoNet lässt sich, aufgrund des geringen RAM dennoch, mit einem Arduino UNO realisieren. Für die Anbindung ans Z21-Protokoll sollte ein ressourcensparendes ESP WLAN-Modul eingesetzt werden. Für die Kommunikation mit dem WLAN-Modul wird dabei ab v4.6 Software Serial Port genutzt.<br>
 +
Werden mehr Funktionen benötigt muss ein größerer Prozessor genutzt mit mehr Speicher genutzt werden.
 
Aufgebaut wird die simple Zentrale wie ein [http://www.arduino.cc/en/Tutorial/ArduinoToBreadboard Breadboard]. Dabei werden nur DIP Bauteile für den einfachen Nachbau verwendet. Die Schaltung kann deshalb auf einer Lochrasterplatione aufgebaut werden.  
 
Aufgebaut wird die simple Zentrale wie ein [http://www.arduino.cc/en/Tutorial/ArduinoToBreadboard Breadboard]. Dabei werden nur DIP Bauteile für den einfachen Nachbau verwendet. Die Schaltung kann deshalb auf einer Lochrasterplatione aufgebaut werden.  
  
 
'''Funktionsumfang:'''
 
'''Funktionsumfang:'''
:* [[XpressNet]] oder [[Z21_mobile|Z21-Protokoll über ESP WLAN-Modul (ab Softwareversion v31)]]
+
:* DCC mit RailCom nach NMRA Standard
 +
:* Serial [[XpressNet]] oder WLAN-Interface (ESP8266-01)
 +
:* LAN-Interface (dann kein WLAN!)
 
:* [[Loconet|LocoNet]]
 
:* [[Loconet|LocoNet]]
 
:* [[S88N]]
 
:* [[S88N]]
 +
 +
== Pinbelegung ==
 +
Hier eine Auflistung der Pinbelegung für den ATmega328p im Sketch "Arduino Z21 Zentrale"
 +
{| class="wikitable sortable" border="1" cellspacing="0" cellpadding="7"
 +
|-
 +
! Arduino Pin !! MCU Pin !! Funktion !! aktiv Pegel (HIGH/LOW)
 +
|-
 +
| 0 || 2 PD0(RXD) || XpressNet_RX [oder WLAN_RX] || Serial
 +
|-
 +
| 1 || 3 PD1(TXD) || XpressNet_TX [oder WLAN_TX] || Serial
 +
|-
 +
| 2 || 4 PD2(INT0) || SHORT2 (Booster intern) [oder DCC_IN] || LOW
 +
|-
 +
| 3 || 5 PD3(INT1) || DCC status LED || HIGH
 +
|-
 +
| 4 || 6 PD4(XCK/T0) || GO/STOP2 (Booster intern) || LOW
 +
|-
 +
| 5 || 11 PD5(T1) || SHORT (Booster extern) || LOW
 +
|-
 +
| 6 || 12 PD6(AIN0) || DCC || HIGH/LOW
 +
|-
 +
| 7 || 13 PD7(AIN1) || LocoNet_TX (out) || HIGH
 +
|-
 +
| 8 || 14 PB0(ICP) || LocoNet_RX (in) || HIGH/LOW
 +
|-
 +
| 9 || 15 PB1(OC1A) || XpressNet_S/R || HIGH/LOW
 +
|-
 +
| 10 || 16 PB2(OC1B) || SS oder Taster/Reset || W5100/Power ON-OFF
 +
|-
 +
| 11 || 17 PB3(OC2) || MOSI || W5100
 +
|-
 +
| 12 || 18 PB4 || MISO (oder WLAN_TX virtual) || W5100 (oder vSerial)
 +
|-
 +
| 13 || 19 PB5 || SCK (oder WLAN_RX virtual) || W5100 (oder vSerial)
 +
|-
 +
| A0 || 23 PC0(ADC0) || S88 Data in ||
 +
|-
 +
| A1 || 24 PC1(ADC1) || S88 Clock ||
 +
|-
 +
| A2 || 25 PC2(ADC2) || S88 PS/Load ||
 +
|-
 +
| A3 || 26 PC3(ADC3) || S88 Reset ||
 +
|-
 +
| A4 || 27 PC4(ADC4/SDA) || GO/STOP (Booster extern) oder Current Sensor (ACK) || HIGH
 +
|-
 +
| A5 || 28 PC5(ADC5/SCL) || Programmiergleis Relais (PROG) || LOW/HIGH
 +
|}
  
 
== Arduino UNO XpressNet-LocoNet Adapter ==
 
== Arduino UNO XpressNet-LocoNet Adapter ==
 
+
<!-- [[Datei:Arduino_XpressNet_Interface.png|thumb|170px|Arduino XpressNet Interface]]
'''Unterstützt ab Softwareversion v43!'''
 
 
 
[[Datei:Arduino_XpressNet_Interface.png|thumb|170px|Arduino XpressNet Interface]]
 
 
[[Datei:Arduino-LocoNet_sch.png|thumb|170px|Simple Arduino LocoNet Interface ([https://sourceforge.net/projects/pgahtow/files/Loconet/Arduino-LocoNet_sch.sch Eagle Schaltplan])]]
 
[[Datei:Arduino-LocoNet_sch.png|thumb|170px|Simple Arduino LocoNet Interface ([https://sourceforge.net/projects/pgahtow/files/Loconet/Arduino-LocoNet_sch.sch Eagle Schaltplan])]]
[[Datei:Arduino_UNO_LocoNet_to_XpressNet.png|thumb|170px|LocoNet to XpressNet Adapter]]
+
-->
 +
[[Datei:Arduino_UNO_LocoNet_to_XpressNet.png|thumb|170px|LocoNet to XpressNet Adapter ([http://sourceforge.net/projects/pgahtow/files/Z21_mobile/DCC_Zentrale/Arduino_UNO_LocoNet___XpressNet.sch Eagle])]]
 +
[[Datei:Arduino_XN_to_LN-Adapter.jpg|thumb|170px|Arduino LocoNet to XpressNet Adapter an Intellibox]]
 
Mittels des LocoNet-Slave-Modus kann die Software der Zentrale auch als Protokollüberträger zwischen XpressNet und LocoNet eingesetzt werden. Dazu wird die Zentrale zum Beispiel mit einer Intellibox über LocoNet verbunden. Am XpressNet der Arduino Z21 Zentrale können dann bis zu 31 XpressNet Handregler, wie zum Beispiel die Roco Multimaus angeschlossen werden.
 
Mittels des LocoNet-Slave-Modus kann die Software der Zentrale auch als Protokollüberträger zwischen XpressNet und LocoNet eingesetzt werden. Dazu wird die Zentrale zum Beispiel mit einer Intellibox über LocoNet verbunden. Am XpressNet der Arduino Z21 Zentrale können dann bis zu 31 XpressNet Handregler, wie zum Beispiel die Roco Multimaus angeschlossen werden.
  
 
'''Funktionsumfang:'''
 
'''Funktionsumfang:'''
:* senden von XpressNet Daten zu einem LocoNet-Master (z.B.: Intellibox)
+
:* senden von XpressNet Daten zu einem LocoNet-Master (z.B.: Intellibox) oder
 +
:* sendet Daten von LocoNet-Clients zu einem XpressNet Zentrale.
 +
 +
Um den vollen Funktionsumfang des LocoNet-Bus nutzen zu können
 +
(120 steuerbaren Loks), wird empfohlen einen [[Z21_Arduino_Zentrale_(Atmega2560)#Arduino_MEGA_XpressNet-LocoNet_Adapter|Arduino MEGA]] zu verwenden.
  
 
== Bilder ==
 
== Bilder ==
  
 
=== mini Z21 DCC Zentrale ===
 
=== mini Z21 DCC Zentrale ===
Funktionen: WLAN via ESP8266 und Rückmeldung über S88N <br>
+
Funktionen: WLAN via ESP8266 und Rückmeldung über S88N, optional auch mit LocoNet. <br>
 +
<html>
 
<img src="http://pgahtow.sourceforge.net/wordpress/wp-content/uploads/2015/11/mini_Z21_Zentrale.jpg" width="200">
 
<img src="http://pgahtow.sourceforge.net/wordpress/wp-content/uploads/2015/11/mini_Z21_Zentrale.jpg" width="200">
 +
<img src="http://pgahtow.sourceforge.net/wordpress/wp-content/uploads/2016/06/CAM04109.jpg" width="250">
 +
</html>

Aktuelle Version vom 18. Februar 2022, 16:32 Uhr

Z21 logo.png

Eigenbau | Zentrale Z21PG | Z21 mobile | XpressNet | LocoNet | Booster

Arduino UNO Version | Arduino MEGA Version | ESP8266 (WeMos D1 mini) Version | ESP32 Version | Sanguino Version

Beschreibung

Zentrale ATmega328p mit Booster (Eagle Schaltplan)

Eine kleine Zentrale mit LocoNet lässt sich, aufgrund des geringen RAM dennoch, mit einem Arduino UNO realisieren. Für die Anbindung ans Z21-Protokoll sollte ein ressourcensparendes ESP WLAN-Modul eingesetzt werden. Für die Kommunikation mit dem WLAN-Modul wird dabei ab v4.6 Software Serial Port genutzt.
Werden mehr Funktionen benötigt muss ein größerer Prozessor genutzt mit mehr Speicher genutzt werden. Aufgebaut wird die simple Zentrale wie ein Breadboard. Dabei werden nur DIP Bauteile für den einfachen Nachbau verwendet. Die Schaltung kann deshalb auf einer Lochrasterplatione aufgebaut werden.

Funktionsumfang:

  • DCC mit RailCom nach NMRA Standard
  • Serial XpressNet oder WLAN-Interface (ESP8266-01)
  • LAN-Interface (dann kein WLAN!)
  • LocoNet
  • S88N

Pinbelegung

Hier eine Auflistung der Pinbelegung für den ATmega328p im Sketch "Arduino Z21 Zentrale"

Arduino Pin MCU Pin Funktion aktiv Pegel (HIGH/LOW)
0 2 PD0(RXD) XpressNet_RX [oder WLAN_RX] Serial
1 3 PD1(TXD) XpressNet_TX [oder WLAN_TX] Serial
2 4 PD2(INT0) SHORT2 (Booster intern) [oder DCC_IN] LOW
3 5 PD3(INT1) DCC status LED HIGH
4 6 PD4(XCK/T0) GO/STOP2 (Booster intern) LOW
5 11 PD5(T1) SHORT (Booster extern) LOW
6 12 PD6(AIN0) DCC HIGH/LOW
7 13 PD7(AIN1) LocoNet_TX (out) HIGH
8 14 PB0(ICP) LocoNet_RX (in) HIGH/LOW
9 15 PB1(OC1A) XpressNet_S/R HIGH/LOW
10 16 PB2(OC1B) SS oder Taster/Reset W5100/Power ON-OFF
11 17 PB3(OC2) MOSI W5100
12 18 PB4 MISO (oder WLAN_TX virtual) W5100 (oder vSerial)
13 19 PB5 SCK (oder WLAN_RX virtual) W5100 (oder vSerial)
A0 23 PC0(ADC0) S88 Data in
A1 24 PC1(ADC1) S88 Clock
A2 25 PC2(ADC2) S88 PS/Load
A3 26 PC3(ADC3) S88 Reset
A4 27 PC4(ADC4/SDA) GO/STOP (Booster extern) oder Current Sensor (ACK) HIGH
A5 28 PC5(ADC5/SCL) Programmiergleis Relais (PROG) LOW/HIGH

Arduino UNO XpressNet-LocoNet Adapter

LocoNet to XpressNet Adapter (Eagle)
Arduino LocoNet to XpressNet Adapter an Intellibox

Mittels des LocoNet-Slave-Modus kann die Software der Zentrale auch als Protokollüberträger zwischen XpressNet und LocoNet eingesetzt werden. Dazu wird die Zentrale zum Beispiel mit einer Intellibox über LocoNet verbunden. Am XpressNet der Arduino Z21 Zentrale können dann bis zu 31 XpressNet Handregler, wie zum Beispiel die Roco Multimaus angeschlossen werden.

Funktionsumfang:

  • senden von XpressNet Daten zu einem LocoNet-Master (z.B.: Intellibox) oder
  • sendet Daten von LocoNet-Clients zu einem XpressNet Zentrale.
Um den vollen Funktionsumfang des LocoNet-Bus nutzen zu können
(120 steuerbaren Loks), wird empfohlen einen Arduino MEGA zu verwenden.

Bilder

mini Z21 DCC Zentrale

Funktionen: WLAN via ESP8266 und Rückmeldung über S88N, optional auch mit LocoNet.