תוכן עניינים:

בטוח יותר: להפוך תחנות רכבת לבטוחות יותר: 7 שלבים
בטוח יותר: להפוך תחנות רכבת לבטוחות יותר: 7 שלבים

וִידֵאוֹ: בטוח יותר: להפוך תחנות רכבת לבטוחות יותר: 7 שלבים

וִידֵאוֹ: בטוח יותר: להפוך תחנות רכבת לבטוחות יותר: 7 שלבים
וִידֵאוֹ: סרטון מדהים ומרגש עם מסר חזק במיוחד 2024, יולי
Anonim
בטוח יותר: להפוך תחנות רכבת לבטוחות יותר
בטוח יותר: להפוך תחנות רכבת לבטוחות יותר

תחנות רכבת רבות כיום אינן בטוחות בשל חוסר אבטחה, מחסומים והתראה על כניסת הרכבת. ראינו צורך לתקן זאת. על מנת לפתור בעיה זו יצרנו Safer Better. השתמשנו בחיישני רטט, חיישני תנועה ומערכת אזעקת חירום ב- Arduino Uno כדי להוסיף בטיחות לתחנת רכבת.

דרושים חומרים מתכלים:

  • ארדואינו אונו
  • חוטי מגשר
  • חיישן תנועה PIR
  • חיישן רטט Piezo
  • מסך LCD
  • רמקול פיזו
  • מתג פיזי
  • פוטנציומטר רך
  • נגד 330 אוהם

מאת: ג'ייקוב ווימר, אוליביה קרולי, ג'ין קים

שלב 1: חבר את הלוח

חוט את הלוח
חוט את הלוח

חיברנו את הארדואינו שלנו כמו התרשים לעיל.

שלב 2: מעמד LCD להדפסה בתלת מימד

מעמד LCD להדפסה תלת -ממדית
מעמד LCD להדפסה תלת -ממדית

הדפסנו בתלת מימד מעמד למסך ה- LCD שלנו לנראות טובה יותר.

שלב 3: התחבר ל- Arduino ב- Matlab

הצעד הראשון לכתיבת הקוד שלנו היה לחבר את לוח ה- Arduino שלנו ל- Matlab. זה נעשה על ידי יצירת אובייקט ארדואינו. השתמשנו בקוד הבא:

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

שלב 4: כתוב קוד ב- Matlab

יצרנו תוכנית ב- Matlab להפעלת הארדואינו שלנו. לאחר אתחול מסך ה- LCD שלנו, כתבנו קוד לשליטה על תחנת הרכבת שלנו. השתמשנו בכניסות כגון חיישן רטט, חיישן תנועה ומתג פיזי כדי לייצר מגוון יציאות. כניסות, יציאות וקוד מקביל יוסברו בשלבים הבאים.

שלב 5: חיישן רטט

חיישן רטט
חיישן רטט

חיישן הרטט הוא חיישן אנלוגי ולכן השתמש בפונקציית Matlab readVoltage.

val_vibro = readVoltage (a, 'A0'); ט

הפונקציה readVoltage החזירה טווח ערכים, אך קבענו שערך מעל 0.5 הוא רטט הגון ולכן השתמשנו בזה כערך הבסיס שלנו. אם המתח היה מעל 0.5, זה אומר שהרכבת נכנסת לתחנה. כאשר זוהה ערך זה נשלחת הודעה למסך ה- LCD. המסר על מסך ה- LCD הוא דרך לתקשר לאנשים בתחנה כי רכבת מגיעה.

כתבנו על מסך ה- LCD שלנו באמצעות הקוד הבא:

אם val_vibro <= 0.5;

elseif val_vibro> 0.5;

printLCD (lcd, 'רכבת תוך 3 דקות');

סוֹף

שלב 6: חיישן תנועה PIR

חיישן תנועה PIR
חיישן תנועה PIR
חיישן תנועה PIR
חיישן תנועה PIR
חיישן תנועה PIR
חיישן תנועה PIR

חיישן התנועה PIR משמש כדי להבטיח שהמפעיל יודע על מכשולים לאורך פסי הרכבת. החיישן מצלם ומשווה את התמונה החדשה ביותר לתמונה האחרונה שצולמה ואם משהו זז Matlab יחזיר ערך 1. כאשר משהו מזוהה על המסילות, ממשק משתמש גרפי (GUI) צץ להודיע למפעיל הרכבת שמשהו נמצא על המסלולים. לאחר מכן יש למפעיל את האפשרות לעצור את הרכבת או להמשיך. לאחר בחירת האפשרות הרצויה, תוצג הודעת אישור.

הקוד הבא שימש לחיישן התנועה:

אם val_opt == 1;

d1 = 'אובייקט זוהה במסילות בתחנה';

op_input = questdlg (d1, 'הודעת מפעיל', 'עצירת רכבת', 'המשך לזוז', 'המשך לזוז');

b1 = strcmp (op_input, 'עצירת רכבת');

b2 = strcmp (op_input, 'המשך לזוז');

אם b1 == 1

msgbox ('עצירת רכבות')

הפסקה (3)

elseif b2 == 1

msgbox ('המשך הרכבת')

הפסקה (3)

סוֹף

elseif val_opt == 0;

סוֹף

שלב 7: מתג פיזי

אנו גם חושבים שתחנות הרכבת צריכות להיות בעלות תכונות אבטחה רבות יותר. החלטנו לקבל מתג שישמיע אזעקה בתחנה. עשינו זאת באמצעות מתג פיזי. כאשר מתג זה מופעל אזעקה נשמעת דרך רמקול.

עשינו זאת עם הקוד הבא:

אם s_val == 1 עבור i = 1:10

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

השהה (.1)

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

השהה (.1)

סוֹף

סוֹף

מוּמלָץ: