Eigenbau | Zentrale | Z21 mobile | XpressNet | LocoNet | Booster Inhaltsverzeichnis 1Beschreibung 2 Arduino Z21 mobile Anschlussmöglichkeiten 2.1Arduino Z21 DCC Zentrale (Multitalent) 2.2Z21 - LocoNet-Adapter 2.3Z21 - Slave am XpressNet 3ROCO Wartungstool 4 Z21 Anwendungen 4.1Z21 mobile - APP für Android und iOS (Gratis) 4.2Z21 PC - kompatible Steuersoftware 5 Arduino Z21 Library 5.1Download 5.2 Dokumentation 5.2.1Konfiguration 5.2.2Anwendung und Funktionen Beschreibung Implementierung des UDP Protokoll von ROCO/Fleischmann Z21 LAN für den Arduino mit Ethernet Shield (Chipsatz W5100). Es ist damit möglich die Modelleisenbahn mit einem Smartphone, Tablet oder Computer über WLAN/Netzwerk zu steuern. Anders als bei der Z21 von ROCO ist es möglich mehr als zehn Smartphones, Computer und Tablets zu nutzen! Die Software würde auch mit einem Arduino ENC28J60 Ethernet Shield und der UIPLibrary getestet, aber diese Library kann nicht mit mehreren IP's kommunizieren, wodurch keine Z2 möglich ist! Bitte verwenden sie nur das Ethernet Shield mit dem W5100 Chipsatz, welches für 4,80? bei AliExpress bestellt werden kann (Lieferzeit: ca. 5 Wochen). Z21 LAN Protokoll: Z21 LAN Protokoll Spezifikation V1.05 Page 1/6 Arduino Z21 mobile Anschlussmöglichkeiten Arduino Z21 DCC Zentrale (Multitalent) Anschlüsse der Z21 DCC Zentrale Die Arduino Z21 DCC Zentrale mit LAN, WLAN, Booster, S88N, XpressNet und LocoNet kann sehr flexibel auf den jeweiligen Einsatzbereich angepasst werden. Mit dieser ist es möglich zum Beispiel einen Adapter herzustellen um XpressNet Geräte am LocoNet anzuschließen (LocoNet to XpressNet Adapter). Die Software, Hardware und Beschreibung zur Zentrale finden sie --> hier Z21 - LocoNet-Adapter Anschluss am LocoNet über Intellibox "Z21 mobile" als LocoNet-Slave wie ein FRED oder DAISY Handregler nutzen: Die App kann auch für den Betrieb an einer Intellibox genutzt werden. Aufgabe des Loconet Adapters ist es, die vom WLAN-Router empfangenen Signale, auf die Loconet-Schnittstelle der Intellibox zu übertragen. Nachdem die Zentrale der Lok einen Slot zugeordnet hat, kann über die App die Lok angefragt werden. Der Adapter schreibt dann direkt in diesen Slot die Steuerdaten der APP. Der im Adapter eingesetzte Arduino UNO (ATmega328p) hat ausreichend Speicher für 120 LocoNet Slots und zusätzlich 30 IP-Adressspeicher. In der Softwareversion 2 wurde zusätzlich ein XpressNet Master Interface integriert. Es können so auch XpressNet-Geräte Steuerbefehle auf dem LocoNet erzeugen (z.B. für den Anschluss von LokMaus2/MultiMaus an eine Intellibox). Hardware: Zur Verbindung mit dem LocoNet-Protokoll, wird die auch dort beschriebene Hardware Page 2/6 benötigt. Schaltplan: LocoNet schematic XpressNet schematic Software: Hinweis: Bitte die neuere Software der Arduino DCC Zentrale , mit deaktiviertem LocoNet Slotserver (Client-Modus) verwendet werden. Die Software ist mit der Arduino IDE geschrieben. Arduino LocoNet DirectSlot Sketch Version 2 mit XpressNet Download Arduino LocoNet DirectSlot Sketch Version 1 Download Library: Arduino LocoNet Library Arduino XpressNet Master Library - notwendig für Softwareversion 2 mit XpressNet! Z21 - Slave am XpressNet Anschluss am XpressNet über Roco Booster 10671, 10764 oder 10810 Mit einer LokMaus2 oder Multimaus als Master. Vergleichbare Steuerungen gibt es bereits von Lenz, diese nutzt aber eine kostenpflichtige iOS APP. Hardware: Zur Verbindung mit dem XpressNet-Protokoll, wird die auch dort beschriebene Hardware benötigt. Die Netzwerkverbindung wird über ein W5100 Ethernet Shield hergestellt. Software: Die Software ist mit der Arduino IDE geschrieben. Arduino XpressNet Version 2 Sketch Download Arduino XpressNet Version 1 Sketch Download Page 3/6 Library: Arduino XpressNet Client Library ROCO Wartungstool Für die Z21 gibt es eine Wartungssoftware (Z21 Maintenance). Mit dieser können Loks vom PC gesteuert werden oder die IP-Adresse der Z21 geändert werden. Beachte: Dieses Tool wird noch nicht von der Arduino Z21 Implementierung unterstützt! Z21 Maintenance V1.10 - Tool Z21 Maintenance V1.05 - Anleitung Z21 Anwendungen Z21 mobile - APP für Android und iOS (Gratis) ?Z21 mobile? Android-APP auf Google Play ?Z21 mobile? für iPhone und iPod touch im App Store von iTunes ?Z21 mobile HD? für das iPad im App Store von iTunes "DigiTrains" Android-APP auf Google Play Z21 PC - kompatible Steuersoftware iTrain ab V3.0 Rocrail ab Rev. 4635 TrainController ab V8.0 B4 ModellStellwerk ab V8.20 JMRI DecoderPro ab V3.11 TrainProgrammer ab V8.0 D1 Arduino Z21 Library Die Software ist für die Arduino IDE geschrieben. Die Arduino Z21 Library ist in C++ geschrieben und kann mit verschiedenen Arduino's verwendet werden. Zur vereinfachten Kommunikation wurde eine Library erstellt, welche die Kommunikation mit dem Z21 LAN Protokoll realisiert. Die Library selbst stellt dabei keine Netzwerkkommunikation (LAN oder WLAN) her, sie dient lediglich dazu um die Empfangenen oder zu sendenden Daten zu Dekodieren bzw. zu Kodieren. Download Z21 LAN Protokoll Library v1.2 (160118) Download - Arduino Z21 LAN Protokoll Library Page 4/6 Dokumentation Änderungen: Version 1.2 Anpassung LAN_LOCONET_DETECTOR Fehlerbeseitigung bei der LAN Prüfsumme Anpassung LAN_LOCONET_DISPATCH Konfiguration z21.h Anzahl der Clients die gleichzeitig aktiv sind #define z21clientMAX 30 Anzahl (in 2 Sekunden Schritten) bis Deaktivierung eines Clients #define z21ActTimeIP 20 2s * 20 = 40 Sekunden Anwendung und Funktionen #include <z21.h> Einbinden der Library z21Class z21; Erzeugen der Klasse void setup() z21.setPower(csNormal); Setzten des Gleisspannungszustand void loop() other public functions void receive(uint8_t client, uint8_t *packet); void setPower(byte state); byte getPower(); unsigned long getz21BcFlag (byte flag); LocoNet void setLNDetector(byte *data, byte DataLen); void setLNMessage(byte *data, byte DataLen, byte bcType, bool TX); Basic Accessory (Zubehör Befehle) void setTrntInfo(uint16_t Adr, bool State); Lokomotiven Page 5/6 void setLocoStateFull (int Adr, byte steps, byte speed, byte F0, byte F1, byte F2, byte F3, bool bc); S88 void setS88Data(byte *data); C++ call back functions void notifyz21EthSend(uint8_t client, uint8_t *data) void notifyz21RailPower(uint8_t State) LocoNet void notifyz21LNdetector(uint8_t typ, uint16_t Adr) uint8_t notifyz21LNdispatch(uint8_t Adr2, uint8_t Adr) void notifyz21LNSendPacket(uint8_t *data, uint8_t length) CV Programmierung void notifyz21CVREAD(uint8_t cvAdrMSB, uint8_t cvAdrLSB) uint8_t notifyz21CVWRITE(uint8_t cvAdrMSB, uint8_t cvAdrLSB, uint8_t value) void notifyz21CVPOMWRITEBYTE(uint16_t Adr, uint16_t cvAdr, uint8_t value) Basic Accessory (Zubehör Befehle) uint8_t notifyz21AccessoryInfo(uint16_t Adr) void notifyz21Accessory(uint16_t Adr, bool state, bool active) Lokomotiven void notifyz21getLocoState(uint16_t Adr, bool bc) void notifyz21LocoFkt(uint16_t Adr, uint8_t type, uint8_t fkt) void notifyz21LocoSpeed(uint16_t Adr, uint8_t speed, uint8_t steps) S88 void notifyz21S88Data() Philipp Gahtow - Digital Modellbahn - (pgahtow.de) | April 18, 2016 Page 6/6
© Copyright 2025 ExpyDoc