Mundarija:

Xavfsizroq: poezd stantsiyalarini xavfsizroq qilish: 7 qadam
Xavfsizroq: poezd stantsiyalarini xavfsizroq qilish: 7 qadam

Video: Xavfsizroq: poezd stantsiyalarini xavfsizroq qilish: 7 qadam

Video: Xavfsizroq: poezd stantsiyalarini xavfsizroq qilish: 7 qadam
Video: BUNDAY TEZLIKNI TASAVVUR QILISH QIYIN / TOP 10 AVTOMOBILLAR ENG ZO'RLARINING ZO'RLARI 2024, Noyabr
Anonim
Xavfsizroq: poezd stantsiyalarini xavfsizroq qilish
Xavfsizroq: poezd stantsiyalarini xavfsizroq qilish

Hozirgi kunda ko'pgina vokzallar xavfsizlik, to'siqlar va poezdning kirishi haqida ogohlantirish yo'qligi sababli xavfli. Biz buni tuzatish zarurligini ko'rdik. Bu muammoni hal qilish uchun biz Safer Better dasturini yaratdik. Vokzalga xavfsizlikni qo'shish uchun biz Arduino Uno tebranish sensori, harakat sensori va favqulodda signalizatsiya tizimidan foydalandik.

Kerakli materiallar:

  • Arduino Uno
  • Jumper simlari
  • PIR harakat sensori
  • Piezo tebranish sensori
  • LCD displey
  • Piezo dinamik
  • Jismoniy o'tish
  • Yumshoq potentsiometr
  • 330 ohmli qarshilik

Muallif: Jacob Wimmer, Olivia Crawley, Jin Kim

1 -qadam: Kengashni sim bilan ulang

Kengashni sim bilan ulang
Kengashni sim bilan ulang

Biz Arduino -ni yuqoridagi diagramaga o'xshatdik.

2 -qadam: 3D bosma LCD stend

3D bosma LCD stend
3D bosma LCD stend

Biz yaxshiroq ko'rish uchun LCD displeyimiz uchun stendni 3D bosdik.

3 -qadam: Matlab -da Arduino -ga ulaning

Kodni yozishning birinchi qadami Arduino kartamizni Matlab -ga ulash edi. Bu Arduino ob'ektini yaratish orqali amalga oshiriladi. Biz quyidagi kodni ishlatdik:

a = arduino ('/dev/tty.usbmodem14201', 'Uno', 'kutubxonalar', 'ExampleLCD/LCDAddon');

4 -qadam: Matlabda kod yozing

Biz Matlab -da Arduino -ni ishga tushirish uchun dastur yaratdik. LCD displeyni ishga tushirgandan so'ng, biz poezd stantsiyasini boshqarish uchun kod yozdik. Biz turli xil chiqishlarni ishlab chiqarish uchun tebranish sensori, harakat sensori va jismoniy kalit kabi kirishlar ishlatdik. Bu kirish, chiqish va tegishli kod quyidagi bosqichlarda tushuntiriladi.

5 -qadam: tebranish sensori

Vibratsiyali sensor
Vibratsiyali sensor

Tebranish sensori analog sensori bo'lib, shuning uchun Matlab readVoltage funktsiyasidan foydalanilgan.

val_vibro = o'qish voltaji (a, 'A0'); T

u readVoltage funktsiyasi bir qator qiymatlarni qaytardi, lekin biz 0,5 dan yuqori qiymat yaxshi tebranish ekanligini aniqladik va shuning uchun biz uni asosiy qiymat sifatida ishlatdik. Agar kuchlanish 0,5 dan yuqori bo'lsa, demak poezd stantsiyaga keladi. Bu qiymat aniqlanganda LCD displeyga xabar yuboriladi. LCD displeyidagi xabar - bu poezd kelayotgani haqida stansiyadagi odamlarga xabar berish usuli.

Biz LCD displeyimizga quyidagi kod yordamida yozdik:

agar val_vibro <= 0,5;

elseif val_vibro> 0,5;

printLCD (lcd, "3 daqiqada poezd");

oxiri

6 -qadam: PIR harakat sensori

PIR harakat sensori
PIR harakat sensori
PIR harakat sensori
PIR harakat sensori
PIR harakat sensori
PIR harakat sensori

PIR harakat sensori operatorga poezd yo'llari bo'ylab to'siqlarni bilishini ta'minlash uchun ishlatiladi. Sensor suratga oladi va eng yangi rasmni oxirgi olingan rasm bilan solishtiradi, agar biror narsa qimirlab qolsa, Matlab 1 qiymatini qaytaradi. Yo'lda biror narsa aniqlansa, poezd operatoriga biror narsa haqida xabar berish uchun grafik foydalanuvchi interfeysi (GUI) paydo bo'ladi. yo'lda turibdi. Keyin operator poezdni to'xtatish yoki davom ettirish imkoniyatiga ega. Kerakli variantni tanlagandan so'ng, tasdiqlash xabari ko'rsatiladi.

Harakat sensori uchun quyidagi kod ishlatilgan:

agar val_opt == 1;

d1 = 'Stantsiyadagi yo'llarda ob'ekt aniqlandi';

op_input = questdlg (d1, "Operator xabari", "Poezdni to'xtatish", "Harakatni davom ettirish", "Harakatni davom ettirish");

b1 = strcmp (op_input, 'Poezdni to'xtatish');

b2 = strcmp (op_input, 'Harakatni davom ettiring');

agar b1 == 1 bo'lsa

msgbox ("Poezd to'xtab qolmoqda")

pauza (3)

boshqa b2 == 1

msgbox ("Poyezd davom etmoqda")

pauza (3)

oxiri

elseif val_opt == 0;

oxiri

7 -qadam: Jismoniy o'tish

Shuningdek, biz temir yo'l vokzallari ko'proq xavfsizlik xususiyatlariga ega bo'lishi kerak deb o'ylaymiz. Biz vokzalda signal beruvchi kalitga ega bo'lishga qaror qildik. Biz buni jismoniy kalit yordamida qildik. Bu kalit yoqilganda, karnay orqali signal eshitiladi.

Biz buni quyidagi kod bilan qildik:

i = 1:10 uchun s_val == 1 bo'lsa

playTone (a, 'D10', 1800, 1)

pauza (.1)

playTone (a, 'D10', 2000, 1)

pauza (.1)

oxiri

oxiri

Tavsiya: