Агуулгын хүснэгт:
- Алхам 1: Arduino код - Товчлууртай командын станц
- Алхам 2: Arduino код - TFT дэлгэц
- Алхам 3: Оролтын хянагч
Видео: Төмөр замын загвар - Arduino ашиглан DCC командын станц :: 3 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:04
2018 оны 8-р сард шинэчлэгдсэн-шинэ зааврыг үзнэ үү:
2016 оны 4 -р сарын 28 -ны шинэчлэлт: Одоо Command Station -ийн 16 ирц / цэгийг хянах боломжтой. T1 - T8 эргэлтийг 'B' товчлуураар авах боломжтой T9 - T16 эргэлтийг 'C' товчлуураар авах боломжтой
2016 оны 3 -р сарын 10 -ны шинэчлэлт:
Одоо Command Station дээр 8 ирц / цэгийн хяналтын чадварыг нэмсэн. Arduino кодыг NMRA стандарт багцыг ашиглан эргүүлгийн хувьд шинэчилсэн болно (мөн эргэлтийг хянахад зориулагдсан Lenz / Atlas Compact мэдээллийн пакетын судалгаанд үндэслэсэн болно).
T1 - T8 эргэлтийг "B" товчлуураар авах боломжтой
Өгөгдлийн пакет хүлээн авагчийн хэлхээний зааварчилгаа болон шаардлагатай Arduino кодыг үзнэ үү.
2016 оны 1 -р сарын 18 -ны шинэчлэлт:
Би хэлхээнд одоогийн мэдрэгч резистор (1к5 ом) ба конденсатор (10 uf) нэмж, Arduino кодыг өөрчилж> 3200 мАмп -ийн оргил гүйдэл илрэх үед хүчийг нь таслав. H-bridge-ийн үзүүлэлт нь ачааллын 1 амперт 377 uA гаралтын мэдрэх гүйдлийг хэлдэг.
1.5 к ом эсэргүүцэл нь аналог зүү 6 дээр 1 ампер тутамд 0.565 вольт өгнө. Аналог оролт дээр 1023 алхам хийснээр энэ нь нэг ампер ачаалалд 0.565 * 1023 /5 = 116 болно.
A = 100 * (analogRead (AN_CURRENT)) / 116; A = A * 10; (миллиампаар үр дүн өгөх)
Миллиамп дахь ачааллын гүйдлийг TFT дээр харуулна
Бүрэн 4x4 гар нь F1-ээс F8 хүртэлх функцууд болон '#' товчлуураар дамжуулан өөр 10 локос (1-19) агуулдаг (локо 10-аас эхлэн тоон товчлууруудад 10 нэмэх).
Arduino код нь зааврын байтын NMRA стандартыг агуулдаг.
Холбоосыг үзнэ үү
www.nmra.org/sites/default/files/s-9.2.1_20…
(6 -р хуудас нь онцгой ач холбогдолтой юм)
Пакетууд нь хурдны алхам, урт / богино хаяг, Функцийн бүлгийн заавруудын дагуу байрлуулсан болно.
Бүх зааврын байтын өмнө 11111111 (эсвэл идэвхгүй пакет) '1' битийн оршил, дараа нь;
жишээ нь 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' товчлуур = гэрэл) болон '#' товчлууруудаар тоон товчлуур дээр 10 -аас 19 хүртэл тоонуудыг өгдөг. 'D' товчлуурыг одоо 'Яаралтай зогсоох' болгон ашиглаж байна.
DCC мэдээллийн эх сурвалж, Arduino кодын вэб дээрх янз бүрийн үйлчилгээ үзүүлэгчдэд баярлалаа.
Ялангуяа энэ төслийг Майкл Бланк болон түүний "Энгийн DCC - командлалын станц" -аас санаа авсан болно.
www.oscale.net/en/simpledcc
4x4 матрицын массив 16 Түлхүүр мембран шилжүүлэгч товчлуур (ebay) 1.75 фунт стерлинг
2.2 инчийн 240x320 Цуваа SPI TFT LCD дэлгэцийн модуль (ebay) 7.19 фунт стерлинг
UNIVERSAL 12V 5A 60W цахилгаан хангамж AC адаптер (ebay) £ 6.49
Nano V3.0 Arduino -ийн хувьд CH340G 5V 16M нийцтэй ATmega328P (ebay) 2 x £ 3.30 = £ 6.60
Arduino R3 мотор жолоочийн модуль LMD18200T (ebay) £ 6.99
Холбогч, утас, vero хавтан, потенциометр ойролцоогоор 3.50 фунт
Нийт £ 32.52
Tft дэлгэцгүй, 1 x наногүй үндсэн команд станц нь 22.03 фунт стерлинг байх болно
[Тэмдэглэл: TFT дэлгэц дээр санах ойн карт нэмж, сонгосон хөдөлгүүрүүдийн зургийг харуулахын тулд кодыг өөрчлөх боломжтой боловч ноорог дээр илүү их санах ой бий болгохын тулд номын сангийн кодыг засварлах шаардлагатай байдаг. Одоогийн ноорогны хэмжээ нь TFT Arduino Nano -ийн хамгийн дээд хэмжээ юм]
Майкл Бланкийн анхны Arduino код нь нэг хөдөлгүүрт зориулагдсан бөгөөд зөвхөн функц удирдлагагүй, товчлуургүй, дэлгэцгүй урагш / урвуу чиглэлд зориулагдсан байв.
Би кодыг өөрчилсөн - 1 - 19 хөдөлгүүр, дэлгэцийн дэлгэц, чиглэл, гэрэл, 8 функц, яаралтай зогсолт, автомат гүйдлийн хязгаар.
LMD18200T гүүр нь 3 ампер хүртэл даацтай тул G масштаб (цэцэрлэгийн галт тэрэг) зэрэг бүх хэмжээсийг ашиглахад тохиромжтой. Цахилгаан хангамж, цахилгаан хэрэгсэл нь цаг агаарын бүх нөхцлийг баталгаажуулж чадаагүй тохиолдолд зөвхөн дотор ашиглахад тохиромжтой. Надад зуслангийн байшинд төмөр замын холболтын утаснууд хананаас дамжин зам руу урсдаг.
Алхам 1: Arduino код - Товчлууртай командын станц
Arduino код нь утастай таарахгүй байгаа схемийн 2 алдааг зааж өгсөн tvantenna2759 -д баярлалаа, одоо шинэчлэгдсэн (2017 оны 10 -р сарын 21).
Одоо Command Station -д 16 ирц нэмэгдэв. Arduino Mini Pro модулийг ашиглан ирц / цэгийн схемийг зааварчилгаанаас үзнэ үү.
Ирцийн хяналтыг багтаасан өөрчлөгдсөн кодыг доор хавсаргасан болно.
Үндсэн дагалдах хэрэгслийн декодерын багц нь: 0 10AAAAAA 0 1AAACDDD 0 EEEEEEEE 1 Lenz (Compact / Atlas) -ийн ашиглан цэгийн хяналтанд ашигладаг пакетыг задлан шинжилж үзэхэд би 1 ба 2 байтын дараах хоёртын пакет форматыг ашигласан болно: tunAddr = 1 1а: 1000 0001 1111 1000 / Ирц 1б: 1000 0001 1111 1001 Ирц 2а: 1000 0001 1111 1010 / Ирц 2б: 1000 0001 1111 1011 Ирц 3а: 1000 0001 1111 1100 / Ирц 3б: 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 / Ирц 6б: 1000 0010 1111 1011 Ирц 7а: 1000 0010 1111 1100 / Ирц 7б: 1000 0010 1111 1101 Ирц 8а: 1000 0010 1111 1110 / Ирц 8б: 1000 0010 1111 1111 ----------------------- -------------------------------------------------- ---------------------------------- 9а ирц: 1000 0011 1111 1000 / 9b ирц: 1000 0011 1111 1001 гэх мэт.
Өөрчлөгдсөн кодоос гаргаж авах: Өөр 2 'бүтэц' мессежийн шинэчлэлтийг нэмж оруулна уу // дагалдах код тайлагч 0x80 & хаяг 1 x.data [1] = 0; }
хүчин төгөлдөр бус өөрчлөлт_түн2 (бүтэц Мессеж & x) {x.data [0] = 0x82; // дагалдах код тайлагч 0x80 & хаяг 2 x.data [1] = 0; }
Хамрах хүрээний хувьд шинэ хоосон зай нэмэх: boolean read_turnout () {delay (20);
boolean өөрчлөгдсөн_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
нэмэлт өөрчлөлт_түн2 (msg [1]);
}
хэрэв (key_val == 101 && turn == 1) {
хэрэв (tun1 == 1) {
өгөгдөл | = 0; // t1a
өөрчлөгдсөн_т = үнэн;}
хэрэв (tun1 == 0) {
өгөгдөл | = 0x01; // t1b
өөрчлөгдсөн_т = үнэн;}
}
хэрэв (key_val == 202 && turn == 1) {
хэрэв (tun2 == 1) {
өгөгдөл | = 0x02; // t2a
өөрчлөгдсөн_т = үнэн;
}
хэрэв (tun2 == 0) {
өгөгдөл | = 0x03; // t2b
өөрчлөгдсөн_т = үнэн; }
}
хэрэв (key_val == 303 && turn == 1) {
хэрэв (tun3 == 1) {
өгөгдөл | = 0x04; // t3a
өөрчлөгдсөн_т = үнэн;
}
хэрэв (tun3 == 0) {
өгөгдөл | = 0x05; // t3b
өөрчлөгдсөн_т = үнэн;}
}
хэрэв (key_val == 404 && turn == 1) {
хэрэв (tun4 == 1) {
өгөгдөл | = 0x06; // t4a
өөрчлөгдсөн_т = үнэн;
}
хэрэв (tun4 == 0) {
өгөгдөл | = 0x07; // f4b
өөрчлөгдсөн_t = үнэн;}
}
хэрэв (key_val == 505 && turn == 1) {
хэрэв (tun5 == 1) {
өгөгдөл | = 0; // t5a
өөрчлөгдсөн_т = үнэн;
}
хэрэв (tun5 == 0) {
өгөгдөл | = 0x01; // t5b
өөрчлөгдсөн_t = үнэн;}
}
гэх мэт ………………….
Алхам 2: Arduino код - TFT дэлгэц
Дэлгэцийн хэлхээ нь өөрчлөгдсөн кодтой хэвээр байгаа бөгөөд 16 эргэлтийн байдлыг харуулна. Анхаарна уу: Номын сангийн код нь ноорог кодын бараг бүх санах ойг эзэлдэг бөгөөд шинэ функцуудыг ашиглахад бага зай үлдээдэг. Хэрэв хэн нэгэн энд ашигласан TFT -ийн илүү үр дүнтэй номын сангийн файлтай бол надад мэдэгдээрэй.
Алхам 3: Оролтын хянагч
Бүртгэл / Оноо хянагч хэрхэн хийх талаар зааварчилгааг үзнэ үү.
Бүрэн хэлхээ нь гэрэл, дуу чимээ, эргэх самбар гэх мэт 16 цэг, 15 дагалдах хэрэгслийг хянадаг.
Зөвлөмж болгож буй:
Загвар төмөр замын WiFi DCC командын станц: 5 алхам
Загвар төмөр замд зориулсан WiFi DCC командын станц: 2021 оны 4 -р сарын 5 -нд шинэчлэгдсэн: хэлхээний бүрэлдэхүүн хэсгүүдийн шинэ ноорог ба горим. Шинэ ноорог: command_station_wifi_dcc3_LMD18200_v4.ino WiFi -ийг ашиглан зааварчилгаа өгөх шинэ DCC системийг гар утас/таблет тохируулагчийн 3 хэрэглэгч ашиглаж болно. fo
Автомат салаа бүхий төмөр замын загвар: 13 алхам (зурагтай)
Автомат салаа бүхий төмөр замын загвар: Галт тэрэгний загвар зохион бүтээх нь маш сайн хобби бөгөөд үүнийг автоматжуулах нь илүү сайн болгох болно! Автоматжуулалтын зарим давуу талыг авч үзье: Хямд өртөгтэй ажиллагаа: Байршлыг бүхэлд нь L298N мо ашиглан Arduino микроконтроллер хянадаг
Гарын удирдлагатай загвар төмөр замын зохион байгуулалт V2.5 - PS/2 интерфэйс: 12 алхам
Гарын удирдлагатай загвар төмөр замын зохион байгуулалт V2.5 | PS/2 интерфэйс: Arduino микроконтроллерыг ашиглан төмөр замын загварыг хянах олон арга бий. Гар нь маш олон функц нэмэхийн тулд олон товчлууртай байх давуу талтай. Энд зүтгүүр бүхий энгийн зохион байгуулалтаас хэрхэн яаж эхлэхийг үзье
Загвар төмөр замын автомат туннелийн гэрэл: 5 алхам
Төмөр замын автомат туннелийн гэрэл загвар: Энэ бол миний хамгийн дуртай хэлхээний самбар юм. Миний загвар төмөр замын зохион байгуулалт (одоо хүртэл хийгдэж байгаа) хэд хэдэн хонгилтой бөгөөд прототип биш ч галт тэрэг хонгилд ойртох тусам би хонгилын гэрэл асаахыг хүссэн юм. Миний анхны түлхэц бол
Төмөр замын өндөр төмөр замын тээврийн хэрэгслийг зам дээр хэрхэн яаж байрлуулах вэ: 10 алхам (зурагтай)
Төмөр замын өндөр төмөр замын тээврийн хэрэгслийг зам дээр хэрхэн яаж байрлуулах вэ: Аюулгүй байдлын урьдчилан сэргийлэх арга хэмжээ: Өндөр төмөр замын ачааны машиныг төмөр зам дээр тавьж буй хүн, туслах хүн нь харагдахын тулд өндөр үзэгдэх хувцас (хантааз, цамц, цамц) өмсөх ёстой. ирж болзошгүй замын хөдөлгөөнөөр. Хатуу малгай, бээлий ч өмсөх ёстой