![Trädgårdståg - Arduino Wireless NMRA DCC: 4 steg (med bilder) Trädgårdståg - Arduino Wireless NMRA DCC: 4 steg (med bilder)](https://i.howwhatproduce.com/images/004/image-12000-5-j.webp)
Innehållsförteckning:
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-23 15:11
![Image Image](https://i.howwhatproduce.com/images/004/image-12000-7-j.webp)
![](https://i.ytimg.com/vi/biYFbV3OO3A/hqdefault.jpg)
![Design av systemet Design av systemet](https://i.howwhatproduce.com/images/004/image-12000-8-j.webp)
Utöver tidigare instruktioner med DCC på dead rail -system har jag utvecklat idén ytterligare med en handhållen DCC Command Station med knappsats och LCD -display. Kommandostationen innehåller all kodning som krävs för NMRA DCC -instruktioner, men i stället för att ansluta till skenorna överförs data med radiomodul RF24L01+ till en mottagare monterad i en lastbil eller under lokomotivet - när rummet tillåter det.
Naturligtvis måste dina loko vara utrustade med en avkodare för lastförmåga som passar motorns motorer.
Steg 1: Design av systemet
![Design av systemet Design av systemet](https://i.howwhatproduce.com/images/004/image-12000-9-j.webp)
Arduino Pro Mini är kärnan i designen. Använda Fritzing för att utveckla kretsen och för att producera PCB.
Jag kunde använda samma kretskort för både sändare och mottagare, vilket sparar några kostnader.
Sändaren har anslutningar för knappsats och LCD medan mottagaren inte kräver dessa och använder H-bron för att leverera DCC-utgången för loket.
En vidareutveckling inkluderar anslutningar för en större H-bro om det behövs för mer kraftfulla lok.
PCF8574 kan raderas om du använder en LCD -skärm som medföljer ryggsäcken så att SCA / SCL -anslutningar på Arduino kan mata skärmen med endast 2 trådar. = £ 10,00 ungefär var. + batterier
Arduino Pro Mini. x 2 = £ 4,00
4x3 membranknappsats = £ 3,00
20 x 4 LCD -skärm = £ 7,00
PCF5874 = £ 1,80
NRF24L01+. radiomoduler x 2 = £ 5,80
PCB -tillverkning för 10 rabatter (eller Vero -kort kan användas) = £ 24 eller £ 4,80 för 2off
3.3 v Regulator = £ 0.17 (25 -pack från RS Comp)
5v Regulator LM7805 = £ 0,30
H-bridge SN754410ne = £ 3,00
Lloytron laddningsbara 2700 maH AA-batterier x 12 = £ 22,00. (batterier med lägre maH är billigare)
Kondensatorer, krukor, stift, kontakter, etc = £ 2,00 ca.
Kapsling 190x110x60 mm = £ 8,00
Sändare - telefonladdare / batteri = £ 2,00
Steg 2: Sändare
![Sändare Sändare](https://i.howwhatproduce.com/images/004/image-12000-10-j.webp)
Kopplingsschemat visas där D2 till D8 -stiften på Arduino Pro Mini är anslutna till knappsatsen. En 100k ohm potentiometer är ansluten till analog stift A0 för hastighetsjustering. SDA- och SCL -stiften från PCF8574 -chipet är anslutna till stift A4 och A5 på Arduino Pro Mini med hjälp av lödda trådar till stiften på det övre lagret på Pro Mini.
Arduino -skissen bifogas för nedladdning.
Jag har använt en 20 x 4 LCD -skärm som tillåter 4 rader information med 20 tecken per rad. Knappsatsen innehåller följande meny:
1 till 9 = loco -adress * = riktning 0 = lampor # = funktionsmeny för knapparna 1 till 8
Grundläggande beskrivning av Arduino Pro Mini -skiss: Denna rad i koden ordnar DCC -meddelandet i HEX -format. struct Message msg [MAXMSG] = {
{{0xFF, 0, 0xFF, 0, 0, 0, 0}, 3}, // inaktiv msg
{{locoAdr, 0, 0, 0, 0, 0, 0}, 3} // 3 byte -adress
};
För att lagra inställningarna för varje lok, ställs en serie matriser upp enligt följande:
int la [20]; // array för att hålla lokonummer
int sa [20]; // array för att hålla hastighetsvärden
int fda [20]; // array för att hålla dir
int fla [20]; // array för att hålla lampor
int f1a [20]; // array för att hålla fun1 …..
int f8a [20]; // array för att hålla fun8
Så här kan du ändra DCC -instruktionerna när vi går:
För hastighetsinstruktioner: void amend_speed (struct Message & x) {
x.data [0] = locoAdr;
x.data [1] = 0x40; // locoMsg med 28 hastighetssteg}
För funktionsinstruktioner:
void amend_group1 (struct Message & x) {
x.data [0] = locoAdr;
x.data [1] = 0x80; // locoMsg med grupp ett instruktion 0x80}
Skissens huvudslinga:
void loop (void) {if (read_locoSpeed ()) {assemble_dcc_msg_speed ();
send_data_1 (); // skicka data trådlöst
fördröjning (10);
send_data_3 (); // visa data på LCD -skärmen
send_data_4 (); // visa data på seriell bildskärm}
if (read_function ()) {
assemble_dcc_msg_group1 ();
send_data_1 ();
fördröjning (10);
send_data_3 (); }}
Uppdatera data när hastigheten ändras:
boolean read_locoSpeed () Detta detekterar en ny loco -adress, hastighet eller riktningsinställning och ändrar HEX 'data' i enlighet därmed. Här har jag angett 28 hastighetssteg och för att uppfylla NMRA standard S 9.2 måste hastighetsdata hittas från en uppslagstabell i 'speed_step ()'
void speed_step () {switch (locoSpeed) {
fall 1: data | = 0x02; ha sönder;
fall 2: data | = 0x12; ha sönder;
fall 3: data | = 0x03; ha sönder;
………
fall 28: data | = 0x1F; ha sönder; }}
Uppdatera data när funktionerna ändras:
boolsk read_function ()
if (fla [locoAdr] == 0) {data = 0x80;
} // strålkastare släckt
if (fla [locoAdr] == 1) {
data = 0x90;
} // strålkastare tänd
För varje funktion:
if (f2a [locoAdr] == 0) {data | = 0; }. // Funktion 2 avstängd
if (f2a [locoAdr] == 1) {
data | = 0x02; // Funktion 2 på} 'data' byggs upp genom att kombinera ['| =' sammansatt bitvis eller] HEX -koderna för varje funktion.
Steg 3: Mottagare
![Mottagare Mottagare](https://i.howwhatproduce.com/images/004/image-12000-11-j.webp)
Kretsschemat visas där stiften 5 och 6 på Arduino Pro Mini används för att ge DCC-signalen som matas till H-bron. H-bryggparen är parallellkopplade för att öka strömkapaciteten. Beroende på strömmen från lokomotivet kan det behövas en kylfläns på 16-stifts DIP-enheten, eller så kan en kraftig H-bro anslutas externt.
Arduino -skissen bifogas för nedladdning. DCC -signalen består av en klocka som går på 2 MHz
void SetupTimer2 () gör det här jobbet.
Klockan inkluderar 'korta pulser' (58us) för '1' i DCC -data och 'långa pulser' (116us) för '0' i DCC -data.
Slingans tomrum, hämtar data från radion och om en giltig sträng hittas konverteras data till DCC -data.
void loop (void) {if (radio.available ()) {bool done = false; gjort = radio.read (inmsg, 1); // läs den mottagna informationen
röding = inmsg [0]; // lägg in teckenläsning i den här matrisen
om (rc! = 0) {. // om tecken inte är lika med noll
inString.concat (rc); // bygg upp meddelandet}
if (rc == '\ 0') {// om tecken är '/0' slutet av meddelandet
Serial.println (inString); // skriv ut det sammanställda meddelandet
sträng(); // avkonstruera strängmeddelandet för att få DCC-instruktioner
} } }
Steg 4: Kör Locos
![Kör Locos Kör Locos](https://i.howwhatproduce.com/images/004/image-12000-12-j.webp)
För att undvika avbrott i data från att köra flera tåg på samma spår måste du koppla bort kontakterna mellan hjulen och spåret för varje lok och lastbil som används.
Njut av gratis tåg oavsett spårförhållanden - vilken skillnad! Inget krångel, inget start-stopp och ingen rengöring krävs.
Batterierna jag använde är laddningsbara LLoytron AA x 12. Jag har byggt en laddare speciellt för dem som laddar 6 åt gången. (se instruerbar)
Rekommenderad:
WiFi DCC Command Station för modelljärnväg: 5 steg
![WiFi DCC Command Station för modelljärnväg: 5 steg WiFi DCC Command Station för modelljärnväg: 5 steg](https://i.howwhatproduce.com/images/001/image-1209-j.webp)
WiFi DCC Command Station för modelljärnväg: Uppdaterad 5 april 2021: ny skiss och mod till kretskomponenter.Ny skiss: command_station_wifi_dcc3_LMD18200_v4.ino Helt nytt DCC -system med WiFi för att kommunicera instruktioner 3 användare av mobiltelefon/surfplatta kan användas på en layout idealisk för
Ta fantastiska bilder med en iPhone: 9 steg (med bilder)
![Ta fantastiska bilder med en iPhone: 9 steg (med bilder) Ta fantastiska bilder med en iPhone: 9 steg (med bilder)](https://i.howwhatproduce.com/images/001/image-2627-j.webp)
Ta fantastiska bilder med en iPhone: De flesta av oss har en smartphone med oss överallt nuförtiden, så det är viktigt att veta hur du använder din smartphone -kamera för att ta fantastiska bilder! Jag har bara haft en smartphone i ett par år, och jag har älskat att ha en bra kamera för att dokumentera saker jag
Hur: Installera Raspberry PI 4 Headless (VNC) med Rpi-imager och bilder: 7 steg (med bilder)
![Hur: Installera Raspberry PI 4 Headless (VNC) med Rpi-imager och bilder: 7 steg (med bilder) Hur: Installera Raspberry PI 4 Headless (VNC) med Rpi-imager och bilder: 7 steg (med bilder)](https://i.howwhatproduce.com/images/001/image-1574-23-j.webp)
Hur: Installera Raspberry PI 4 Headless (VNC) med Rpi-imager och bilder: Jag planerar att använda denna Rapsberry PI i ett gäng roliga projekt tillbaka i min blogg. Kolla gärna in det. Jag ville börja använda mitt Raspberry PI men jag hade inte ett tangentbord eller en mus på min nya plats. Det var ett tag sedan jag installerade en hallon
Shelly Sense - Wireless Powered (WPC Qi Standard): 5 steg (med bilder)
![Shelly Sense - Wireless Powered (WPC Qi Standard): 5 steg (med bilder) Shelly Sense - Wireless Powered (WPC Qi Standard): 5 steg (med bilder)](https://i.howwhatproduce.com/images/006/image-15967-j.webp)
Shelly Sense - Wireless Powered (WPC Qi Standard): OBS! Efter denna handledning förlorar du din garanti och du riskerar också att bryta din Shelly Sense. Gör det bara om du vet vad du gör och om du är medveten om riskerna. Shelly Sense är en fantastisk produkt att känna av alla
Hur man tar isär en dator med enkla steg och bilder: 13 steg (med bilder)
![Hur man tar isär en dator med enkla steg och bilder: 13 steg (med bilder) Hur man tar isär en dator med enkla steg och bilder: 13 steg (med bilder)](https://i.howwhatproduce.com/images/006/image-15346-7-j.webp)
Hur man tar isär en dator med enkla steg och bilder: Detta är en instruktion om hur man demonterar en dator. De flesta av de grundläggande komponenterna är modulära och lätt att ta bort. Det är dock viktigt att du är organiserad kring det. Detta hjälper dig att inte förlora delar, och även för att göra ommonteringen