Мазмуну:
- 1 -кадам: Arduino Code - Баскычтобу бар командалык станция
- 2 -кадам: Arduino Code - TFT Display
- 3 -кадам: Катышуу контроллери
Video: Модель темир жолу - Arduino колдонуучу DCC командалык станциясы :: 3 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:41
2018-жылдын августунда жаңыртылган-жаңы Instructable караңыз:
2016 -жылдын 28 -апрелин жаңыртуу: Азыр Command Stationка 16 катышуу / пункт башкаруу мүмкүнчүлүгү. Бурулуштар T1 - T8 'B' баскычы аркылуу жеткиликтүү болот T9 - T16 'C' баскычы аркылуу жеткиликтүү
2016 -жылдын 10 -мартында жаңыртуу:
Эми Командалык станцияга 8 катышуу / пункт көзөмөлдөө мүмкүнчүлүгү кошулду. Arduino коду тиешелүү түрдө NMRA стандарттуу пакетин колдонуу менен жаңыртылды (ошондой эле катышууну көзөмөлдөө үчүн Lenz / Atlas Compact маалымат пакеттерин изилдөөнүн негизинде).
Бурамалар T1 - T8 'B' баскычы аркылуу жеткиликтүү
Колдонулган маалымат пакетинин кабыл алгыч схемасында жана Arduino коду боюнча көрсөтмөлөрдү караңыз.
Жаңыртуу 18 -январь, 2016 -жыл:
Мен учурдагы маанидеги резисторду (1k5 ом) жана конденсаторду (10 uf) кошуп, 3200 мАмпс чокусу аныкталганда электрди өчүрүү үчүн Arduino кодун өзгөрттүм. H-көпүрөсүнүн спецификасында жүктөөдө 1 амперге 377 уАнын чыгуу сезими агымы айтылат.
1.5 к ом резистору аналогдук пин 6 боюнча 565 вольтту жеткирет. Аналогдук кириште 1023 кадам менен, бул 0,565 * 1023 /5 = 116 ампер жүктөмүнө берет.
A = 100 * (analogRead (AN_CURRENT)) / 116; A = A * 10; (миллиамптарда натыйжа берүү үчүн)
Миллиампердеги жүк агымы TFTде көрсөтүлөт
Толук 4x4 клавиатурасы F1ден F8ге чейинки функцияларды жана башка#локосту (1-19) "#" баскычы аркылуу камтыйт (10дон башталган сандык баскычтарга 10 кошуу үчүн).
Arduino коду нускама байттары үчүн NMRA стандартын камтыйт.
Шилтемени караңыз
www.nmra.org/sites/default/files/s-9.2.1_20…
(6 -бет өзгөчө актуалдуу)
Пакеттер ылдамдык кадамдарынын санына, узун / кыска дарекке жана Function Group көрсөтмөлөрүнө ылайык жайгаштырылган.
Бардык көрсөтмө байттардын алдында '1' бит 11111111дин преамбуласы (же бош турган пакет), андан кийин;
мис. 4 байттык дарек 0 00000011 0 00111111 0 10000011 0 10111111
loco 3, 128 ылдамдык кадамдарына, алдыга карай багытка жана 3 -кадамга барабар (акыркы байт XOR катасын текшерүү)
мис. 3 байттык дарек 0 00000011 0 10010000 0 10110011
loco 3кө барабар, функционалдык топ 1, FL жарыктары плюс XOR байт (a '0' бит ар бир байтты бөлүп турат)
Локо 12 үчүн тиркелген көрсөтмө видеону караңыз.
F1 - F8 функциялары 'A' баскычы, DIR ('*' баскычы = багыты) FL ('0' баскычы = жарыктар) жана '#' клавиатурасы аркылуу жеткиликтүү. "D" ачкычы азыр "Өзгөчө кырдаал STOP" үчүн колдонулат.
DCC маалымат булактары жана Arduino коду үчүн интернеттеги ар кандай провайдерлерге рахмат.
Атап айтканда, бул долбоор Майкл Бланктан жана анын "Жөнөкөй DCC - командалык станциядан" шыктандырылган.
www.oscale.net/en/simpledcc
4x4 Matrix Array 16 Key Membrane Switch Keypad (ebay) £ 1.75
2.2 дюймдук 240x320 Serial SPI TFT LCD дисплей модулу (ebay) £ 7.19
УНИВЕРСАЛ 12V 5A 60W КУЧТУУ АС Адаптер (ebay) £ 6.49
Nano V3.0 Arduino үчүн CH340G 5V 16M шайкеш ATmega328P менен (ebay) 2 x £ 3.30 = £ 6.60
Motor Driver Module LMD18200T Arduino R3 үчүн (ebay) £ 6.99
Коннекторлор, зым, веро тактасы, потенциометр болжол менен £ 3.50
Бардыгы £ 32.52
Tft экраны жана 1 x наносу жок негизги командалык станция £ 22.03 болмок
[Эскертүү: TFT дисплейине эстутум картасын кошуп, тандалган кыймылдаткычтардын сүрөттөрүн көрсөтүү үчүн кодду өзгөртүүгө болот, бирок эскиз үчүн көбүрөөк эстутумду түзүү үчүн китепкана коддорун түзөтүү керек. Учурдагы эскиздин өлчөмү TFT Arduino Nano үчүн максималдуу]
Майкл Бланктын түпнуска Arduino коду бир кыймылдаткыч үчүн болгон, алдыга / артка, эч кандай функция башкаруусу жок, клавиатура жана дисплей жок.
Мен кодду 1 - 19 кыймылдаткычтарды, дисплей экранын, багытты, жарыктарды, 8 функцияны, авариялык токтотууну жана автоматтык токтун чегин камтыйт.
LMD18200T көпүрөсү 3 амперге чейин көтөрө алат, бул аны бардык масштабдарга, анын ичинде G-масштабына (бакча поезддери) ылайыктуу кылат. Электр энергиясы жана электрдик жабдуулар аба ырайына далил келтире албасаңыз, үй ичинде гана колдонууга жарактуу. Менде жайкы үйдө командирлик станция бар, темир жол аркылуу зым дубал аркылуу трекке чуркайт.
1 -кадам: Arduino Code - Баскычтобу бар командалык станция
Arduino коду зымга дал келбеген схемада 2 катаны көрсөткөнү үчүн tvantenna2759га рахмат, азыр жаңыртылды (21 окт 2017).
Азыр Командалык станцияга 16 бурулуш кошулду. Arduino Mini Pro модулун колдонуп, катышуу / упай схемасында көрсөтмөлөрдү караңыз.
Катышууну көзөмөлдөөнү камтыган өзгөртүлгөн код төмөндө тиркелет.
Негизги аксессуарлардын декодеринин пакети: 0 10AAAAAA 0 1AAACDDD 0 EEEEEEEE 1 Ленз (Compact / Atlas) тарабынан пункттарды көзөмөлдөө үчүн колдонулган пакетти анализдеп, мен байт 1 жана 2 үчүн төмөнкү экилик пакет форматын колдондум: tunAddr = 1 Turna 1a: 1000 0001 1111 1000 / Катышуу 1б: 1000 0001 1111 1001 Катышуу 2а: 1000 0001 1111 1010 / Катышуу 2b: 1000 0001 1111 1011 Катышуу 3а: 1000 0001 1111 1100 / Катышуу 3b: 1000 0001 1111 1101 Катышуу 4а: 1000 0001 1111 1110 / Катышуу 4b: 1000 0001 1111 1111 tunAddr = 2 ----------------------------------------- -------------------------------------------------- ----------------- Катышуу 5а: 1000 0010 1111 1000 / Катышуу 5б: 1000 0010 1111 1001 Катышуу 6а: 1000 0010 1111 1010 / Катышуу 6b: 1000 0010 1111 1011 Катышуу 7а: 1000 0010 1111 1100 / Катышуу 7b: 1000 0010 1111 1101 Катышуу 8а: 1000 0010 1111 1110 / Катышуу 8b: 1000 0010 1111 1111 ----------------------- -------------------------------------------------- ---------------------------------- Шайлоо 9а: 1000 0011 1111 1000 / Катышуу 9б: 1000 0011 1111 1001 ж.б. ………
Өзгөртүлгөн коддон үзүндү: Дагы 2 "struct" билдирүүсүн кошуу // аксессуар декодер 0x80 & адрес 1 x.data [1] = 0; }
void o'zgarishlar_tun2 (структура Билдирүү & x) {x.data [0] = 0x82; // аксессуар декодер 0x80 & адрес 2 x.data [1] = 0; }
Катышуу үчүн жаңы боштукту кошуңуз: boolean read_turnout () {delay (20);
логикалык өзгөрүү_t = жалган; get_key ();
эгер (key_val> = 101 && key_val <= 404 && turn == 1) {
маалыматтар = 0xf8; // = бинардык 1111 1000
түзөтүү_түн1 (msg [1]);
}
эгер (key_val> = 505 && key_val <= 808 && turn == 1) {
маалыматтар = 0xf8; // = бинардык 1111 1000
edit_tun2 (msg [1]);
}
if (key_val == 101 && turn == 1) {
эгер (tun1 == 1) {
маалыматтар | = 0; // t1a
өзгөртүлгөн_т = туура;}
эгер (tun1 == 0) {
маалыматтар | = 0x01; // t1b
өзгөртүлгөн_т = туура;}
}
эгер (key_val == 202 && turn == 1) {
эгер (tun2 == 1) {
маалыматтар | = 0x02; // t2a
change_t = true;
}
эгер (tun2 == 0) {
маалыматтар | = 0x03; // t2b
change_t = true; }
}
эгер (key_val == 303 && turn == 1) {
эгер (tun3 == 1) {
маалыматтар | = 0x04; // t3a
change_t = true;
}
эгер (tun3 == 0) {
маалыматтар | = 0x05; // t3b
өзгөртүлгөн_т = туура;}
}
эгер (key_val == 404 && turn == 1) {
эгер (tun4 == 1) {
маалыматтар | = 0x06; // t4a
change_t = true;
}
эгер (tun4 == 0) {
маалыматтар | = 0x07; // f4b
өзгөртүлгөн_т = туура;}
}
эгер (key_val == 505 && turn == 1) {
эгер (tun5 == 1) {
маалыматтар | = 0; // t5a
change_t = true;
}
эгер (tun5 == 0) {
маалыматтар | = 0x01; // t5b
өзгөртүлгөн_т = туура;}
}
жана башкалар ………………….
2 -кадам: Arduino Code - TFT Display
Дисплей схемасы 16 бурулуштун абалын көрсөтүү үчүн өзгөртүлгөн код менен өзгөрүүсүз калат. Эскертүү: Китепкананын коду эскиз коддун дээрлик баардыгын ээлейт жана жаңы мүмкүнчүлүктөргө аз орун калтырат. Эгерде кимдир бирөө бул жерде колдонулган TFT үчүн эффективдүү китепкана файлына ээ болсо, мага кабарлаңыз.
3 -кадам: Катышуу контроллери
Катышуу / Упайларды контролер кылуу боюнча көрсөтмөлөрдү караңыз.
Толук схема 16 чекитти жана 15 аксессуарды көзөмөлдөйт, мисалы жарыктар, үндөр, айланма ж.б.
Сунушталууда:
Темир жол үчүн WiFi DCC командалык станциясы: 5 кадам
Моделдик темир жол үчүн WiFi DCC командалык станциясы: 5 -апрелде 2021 жаңыртылды: жаңы эскиз жана микросхемалардын компоненттери үчүн жаңы схема үчүн
Автоматташтырылган макро фокус темир жолу: 13 кадам (сүрөттөр менен)
Автоматташтырылган макро фокус темир жолу: Саламатсыздарбы жамаат, мен автоматтык макро фокус темир жолунун дизайнын сунуштагым келет. Макул, анда биринчи суроо шайтан фокус темир жана ал эмне үчүн колдонулат? Макро же жакын фотография - бул кичинекейлерди сүрөткө тартуу чеберчилиги. Бул мүмкүн
Клавиатура менен башкарылган модель темир жолунун жайгашуусу V2.5 - PS/2 Interface: 12 кадам
Клавиатура менен башкарылган модель темир жолунун жайгашуусу V2.5 | PS/2 Interface: Arduino микроконтроллерлерин колдонуп, темир жолдун моделдерин башкаруунун көптөгөн жолдору бар. Баскычтоптун көптөгөн артыкчылыктары бар, алар көптөгөн функцияларды кошуу үчүн көптөгөн баскычтарга ээ. Бул жерде локомотив менен жөнөкөй макетти кантип баштоону карап көрөлү
Yard Siding менен жөнөкөй автоматташтырылган модель темир жолу: 11 кадам
Yard Siding менен жөнөкөй автоматташтырылган темир жол цикли: Бул долбоор менин мурунку долбоорлорумдун биринин жакшыртылган версиясы. Бул Arduino микроконтроллерин колдонот, темир жолдун моделин автоматташтыруу үчүн ачык булактын прототиптештирүү платформасы. Макет жөнөкөй сүйрү укуруктан жана короонун капталынан турат
Колдонуучу литий батареясынан жасалган ширетүүчү темир: 8 кадам (сүрөттөр менен)
Колдонуучу Литий Батареясы менен иштөөчү ширетүүчү темир: Жакында мен Weller (R) BP1 Батареясынан жасалган Лоттинг Кеңештери үчүн ашыкча булакты таптым.Электроника кээде сайтты оңдоону талап кылат жана талаа куралдары кыйын болушу мүмкүн. Мен көбүнчө өзүмдүн шаймандарымды жасайм, текчеден чечимдерди таба албайм