Tartalomjegyzék:
Videó: Kertvonat - Arduino Wireless NMRA DCC: 4 lépés (képekkel)
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:41
A DCC -vel a holt sínre vonatkozó korábbi utasítások szerint továbbfejlesztettem az ötletet egy kézi DCC parancsállomással, billentyűzettel és LCD kijelzővel. A parancsnoki állomás tartalmazza az NMRA DCC utasításokhoz szükséges összes kódolást, azonban a sínekhez való csatlakozás helyett az adatokat az RF24L01+ rádiómodul továbbítja egy teherautóba szerelt vevőegységbe vagy a helyiség alá - ahol a hely megengedi.
Természetesen a helyiségeket fel kell szerelni a motormotorokhoz megfelelő terhelhetőségű dekóderrel.
Lépés: A rendszer tervezése
Az Arduino Pro Mini a tervezés középpontjában áll. A Fritzing használata az áramkör fejlesztéséhez és a PCB -k előállításához.
Ugyanazt a NYÁK -t tudtam használni mind az adó, mind a vevő számára, és így megtakarítottam néhány költséget.
Az adó rendelkezik a billentyűzet és az LCD csatlakozóival, míg a vevő nem igényli ezeket, és a H-hidat használja a DCC kimenet ellátására a loco számára.
Egy további fejlesztés magában foglalja a csatlakozásokat egy nagyobb H-hídhoz, ha szükséges az erősebb helyekhez.
A PCF8574 törölhető, ha a hátizsákkal ellátott LCD kijelzőt használ, amely lehetővé teszi, hogy az Arduino SCA / SCL csatlakozásai csak 2 vezetékkel táplálják a kijelzőt. Részek listája: Összesen = kb. 60 £ a DCC Command Station + 1 vevő esetén = Egyenként 10,00 font. + elemek
Arduino Pro Mini. x 2 = 4,00 font
4x3 membrán billentyűzet = £ 3.00
20 x 4 LCD kijelző = 7,00 £
PCF5874 = 1,80 font
NRF24L01+. rádiómodulok x 2 = £ 5.80
PCB gyártás 10 kedvezményért (vagy Vero kártya is használható) = 24 £ vagy 4,80 £ 2off
3,3 v szabályozó = 0,17 £ (25 db -os csomag az RS Comp -tól)
5V szabályozó LM7805 = 0,30 £
H-híd SN754410ne = £ 3.00
Lloytron újratölthető 2700 maH AA elem x 12 = £ 22.00. (az alacsonyabb maH -értékű akkumulátorok olcsóbbak)
Kondenzátorok, edények, csapok, csatlakozók stb
Ház 190x110x60 mm = 8,00 £
Adó - telefon töltő / akkumulátor = £ 2.00
2. lépés: Adó
Az áramköri diagram látható, ahol az Arduino Pro Mini D2 - D8 csapjai a billentyűzethez vannak csatlakoztatva. A 100 k ohmos potenciométer az A0 analóg tűhöz van csatlakoztatva a sebesség beállításához. A PCF8574 chip SDA és SCL csapjai az A4 és A5 az Arduino Pro Mini -n, forrasztott vezetékek segítségével a Pro Mini felső rétegének csapjaihoz.
Az Arduino vázlata letölthető.
20 x 4 LCD kijelzőt használtam, amely 4 sor információt tartalmaz, soronként 20 karakterrel. A billentyűzet a következő menüt kínálja:
1 - 9 = loco cím * = irány 0 = világítás # = Funkció menü az 1 - 8 gombokhoz
Az Arduino Pro Mini vázlatának alapvető leírása: Ez a kódsor rendezi a DCC üzenetet HEX formátumban. szerkezetüzenet üzenet [MAXMSG] = {
{{0xFF, 0, 0xFF, 0, 0, 0, 0}, 3}, // üresjáratú üzenet
{{locoAdr, 0, 0, 0, 0, 0, 0}, 3} // 3 bájtos cím
};
Az egyes mozdonyok beállításainak tárolásához tömbsorozatot állítanak be az alábbiak szerint:
int la [20]; // tömb loco számok tárolására
int sa [20]; // tömb a sebességértékek tárolására
int fda [20]; // tömb tárolni dir
int fla [20]; // tömb fények tartására
int f1a [20]; // array arra fun11..
int f8a [20]; // tömb szórakoztatni8
Annak érdekében, hogy a DCC utasításait menet közben módosíthassuk:
A sebességre vonatkozó utasítások: void change_speed (strukture Message & x) {
x.adatok [0] = locoAdr;
x.adatok [1] = 0x40; // locoMsg 28 sebességi lépéssel}
A funkciókra vonatkozó utasítások:
void change_group1 (szerkezetüzenet és x) {
x.adatok [0] = locoAdr;
x.adatok [1] = 0x80; // locoMsg az első csoport utasításával 0x80}
A vázlat fő hurka:
void loop (void) {if (read_locoSpeed ()) {assemble_dcc_msg_speed ();
send_data_1 (); // vezeték nélküli adatküldés
késleltetés (10);
send_data_3 (); // adatok megjelenítése LCD kijelzőn
send_data_4 (); // adatok megjelenítése soros monitoron}
if (read_function ()) {
assemble_dcc_msg_group1 ();
send_data_1 ();
késleltetés (10);
send_data_3 (); }}
Adatok frissítése a sebesség változásakor:
boolean read_locoSpeed () Ez új loco címet, sebességet vagy iránybeállítást észlel, és ennek megfelelően módosítja a HEX "adatait". Itt 28 sebességi lépést határoztam meg, és hogy megfeleljek az NMRA S 9.2 szabványnak, a sebességadatokat egy keresési táblázatból kell megtalálni itt: "speed_step ()"
void speed_step () {kapcsoló (locoSpeed) {
1. eset: adatok | = 0x02; szünet;
2. eset: adatok | = 0x12; szünet;
3. eset: adatok | = 0x03; szünet;
………
28. eset: adatok | = 0x1F; szünet; }}
Frissítse az adatokat, amikor a funkciók megváltoznak:
logikai olvasási_funkció ()
if (fla [locoAdr] == 0) {adatok = 0x80;
} // a fejlámpa kikapcsol
if (fla [locoAdr] == 1) {
adatok = 0x90;
} // fejjelző lámpák
Minden funkcióhoz:
if (f2a [locoAdr] == 0) {adatok | = 0; }. // A 2. funkció kikapcsolva
ha (f2a [locoAdr] == 1) {
adatok | = 0x02; // A 2. függvény az} „adatok” -on az egyes függvények [H | kódjainak kombinálásával | = bit vegyesen vagy] kombinálva épül fel.
3. lépés: Vevő
Az áramköri diagram látható, ahol az Arduino Pro Mini 5. és 6. csapját használják a H-hídra szállított DCC jel biztosítására. A H-hídpárokat párhuzamosan kötik össze az áramkapacitás növelése érdekében. A mozdony által felvett áramtól függően előfordulhat, hogy hűtőbordát kell csatlakoztatni a 16 tűs DIP-eszközhöz, vagy nagy teherbírású H-hidat lehet külsőleg csatlakoztatni.
Az Arduino vázlata letölthető. A DCC jel 2 MHz -es órajelen alapul
void SetupTimer2 () elvégzi ezt a munkát.
Az óra tartalmazza a „rövid impulzusokat” (58us) az „1” értékhez a DCC adatokban és a „hosszú impulzusokat” (116us) a „0” értéket a DCC adatokhoz.
A ciklus üres, adatokat kap a rádióból, és ha érvényes karakterláncot talál, az adatokat DCC -adatgá alakítja át.
void loop (void) {if (radio.available ()) {bool done = false; kész = rádió.olvasás (inmsg, 1); // olvassa el a kapott adatokat
char rc = inmsg [0]; // tegye be a karaktert ebbe a tömbbe
ha (rc! = 0) {. // ha a karakter nem egyenlő nullával
inString.concat (rc); // az üzenet felépítése}
if (rc == '\ 0') {// ha a karakter '/0' az üzenet vége
Serial.println (inString); // az összeállított üzenet kinyomtatása
húr(); // a karakterlánc-üzenet felépítése a DCC utasítások lekéréséhez
} } }
4. lépés: Futtassa a Locos programot
Annak elkerülése érdekében, hogy ugyanazon a vágányon több vonaton közlekedő adatok megszakadjanak, minden alkalmazott mozdony és teherautó esetében le kell választani a kerekek és a vágány közötti érintkezőket.
Élvezze a szabadon közlekedő vonatokat a pálya körülményeitől függetlenül - micsoda különbség! Nincs gond, nincs start-stop és nincs szükség tisztításra.
Az elemek, amelyeket használtam, újratölthető LLoytron AA x 12 típusú. Töltőt készítettem kifejezetten számukra, amely egyszerre 6-ot tölt. (lásd oktatható)
Ajánlott:
WiFi DCC parancsnoki állomás a vasútmodellhez: 5 lépés
WiFi DCC Command Station for Model Railway: Frissítve 2021. április 5 -én: új vázlat és mod az áramköri komponensekhez. Új vázlat: command_station_wifi_dcc3_LMD18200_v4.ino Vadonatúj DCC -rendszer WiFi -t használva az utasítások közlésére fo
Útmutató: A Raspberry PI 4 fej nélküli (VNC) telepítése Rpi-képalkotóval és képekkel: 7 lépés (képekkel)
Útmutató: A Raspberry PI 4 fej nélküli (VNC) telepítése Rpi-képalkotóval és képekkel: Ezt a Rapsberry PI-t tervezem használni egy csomó szórakoztató projektben a blogomban. Nyugodtan nézd meg. Vissza akartam kezdeni a Raspberry PI használatát, de nem volt billentyűzetem vagy egér az új helyen. Rég volt, hogy beállítottam egy málnát
WireLess fejhallgató: 6 lépés
Vezeték nélküli fejhallgató: ehhez a barkácsoláshoz használom: Bluetooth vevőkészülék Nokia akkumulátor C típusú női csatlakozó Li-ion töltőkártya Kis kapcsoló Vezetékek
A számítógép szétszerelése egyszerű lépésekkel és képekkel: 13 lépés (képekkel)
A számítógép szétszerelése egyszerű lépésekkel és képekkel: Ez az utasítás a számítógép szétszereléséről szól. A legtöbb alapvető alkatrész moduláris és könnyen eltávolítható. Fontos azonban, hogy szervezett legyen ezzel kapcsolatban. Ez segít elkerülni az alkatrészek elvesztését, és az újra összerakást is
A Wireless Router átalakítása Wireless Extender 2x hozzáférési ponttá: 5 lépés
A Wireless Router átalakítása Wireless Extender 2x hozzáférési ponttá: Rossz vezeték nélküli internetkapcsolatom volt a házamban egy RSJ (fém tartógerenda a mennyezetben) miatt, és meg akartam erősíteni a jelet, vagy hozzá kellett adni egy hosszabbítót a ház többi részéhez. Láttam hosszabbítókat 50 font körül egy elektromosban