Բովանդակություն:

Թոմասին գնացքին տալ գիշերային քշելու ունակություն. 5 քայլ
Թոմասին գնացքին տալ գիշերային քշելու ունակություն. 5 քայլ

Video: Թոմասին գնացքին տալ գիշերային քշելու ունակություն. 5 քայլ

Video: Թոմասին գնացքին տալ գիշերային քշելու ունակություն. 5 քայլ
Video: Եթե երազում տեսնում եք այս 10 բաները, ապա չպետք է անտեսեք 2024, Նոյեմբեր
Anonim
Գիշերը վարելու ունակություն տալ Թոմասին գնացքին
Գիշերը վարելու ունակություն տալ Թոմասին գնացքին

Այս հրահանգը կսովորեցնի ձեզ, թե ինչպես ստեղծել լուսատուների համակարգ `զգուշացնելու սպասող ուղևորներին, երբ գնացքը մոտենում է, ինչպես նաև ինչպես ստանալ հաղորդագրություն, որը հայտնվում է նոութբուքում, երբ գնացքը կայարանում է: Մի ձայն, երբ գնացքն անցնում է կայարանը, կստեղծվի մի շարք առկայծող LED լույսեր: Այս ամենը կարելի է անել Raspberry Pi- ի միջոցով:

Քայլ 1: Պաշարներ

Պարագաներ
Պարագաներ

Մեկ համակարգիչ

MatLab 2016 կամ ավելի նոր

Ներբեռնեք Raspberry Pi փաթեթը

3D տպիչ

3D տպագիր երկաթուղային կայարան ՝ ազնվամորու պիին տեղավորելու համար

Raspberry Pi հետևյալ բաղադրիչներով.

2 ինֆրակարմիր տվիչներ

Ձեր նախընտրած գույնի 5 LED լուսարձակներ

11 Լարեր

2 ռեզիստորներ

200-300 Օմ դիմադրիչներ

USB ակորդ ՝ համակարգիչը ազնվամորու pi- ին միացնելու համար

Քայլ 2. Նախագծեք ցանկալի ելքերի և մուտքերի սխեման

Նախագծեք ցանկալի ելքերի և մուտքերի սխեման
Նախագծեք ցանկալի ելքերի և մուտքերի սխեման

Օգտագործելով հիմնական միացում, լույսերը և ինֆրակարմիր ճառագայթիչն ու ընդունիչը պետք է միացված լինեն Raspberry Pi- ին: Կարմիր LED լույսերը միացված են գետնին, այնուհետև միացված են GPIO 4, 5, 6 և 7. կապումներին: Ինֆրակարմիր ընդունիչը միացված է GPIO Pin 21 -ին, իսկ ինֆրակարմիր ճառագայթիչը `5V կապին:

Քայլ 3. Մշակեք կոդավորում `ցանկալի արդյունքը բավարարելու համար

Մշակել կոդավորում `ցանկալի արդյունքը բավարարելու համար
Մշակել կոդավորում `ցանկալի արդյունքը բավարարելու համար

Կոդի ամենակարևոր տողերն են 12 -րդ և 16 -րդ տողերը, որոնք բացում են երկխոսության տուփերը: Եթե տող 18 -ը, if հայտարարությունը, կարդում է, եթե ինֆրակարմիր տվիչները խոչընդոտ ունեն իրենց միջեւ, եւ եթե դրանք խոչընդոտված են, ապա դա նշանակում է, որ գնացքը անցնում է, բեղիկը կհնչի, եւ լույսերը կմիացվեն: Եթե հայտարարությունը կեղծ է, ոչինչ չի պատահի, քանի որ գնացքը չի մոտենում:

Կոդ ՝ %% Վերնագիր

Microcontroller Project-Night Train

%Johnոն Բրաուն, Տրենտ Փեյն, Կարստեն Պարկեր; Բաժին 9

%3 հոկտեմբերի 2017 թ

Նախագծի նկարագրություն. Նախագծեք միկրոկոնտրոլեր, որը տևում է երկու մուտք և

%-ը արտադրում է երկու արդյունք, որոնք կօգնեն բարելավել մոդելային գնացքի տեղադրման ասպեկտները

Լուծման մեթոդը. Օգտագործեք տարբեր ռեսուրսներ և Matlab ՝ ասպեկտների բարելավման համար

Մոդելի գնացքի տեղադրում:

%% Կարգավորում-Առաջին մուտքագրում/ելք

մինչդեռ ճշմարիտ է

a = 0;%սկզբնավորում ա

readDigitalPin (rpi, 21) == 1

a = 1;%-ը դադարեցնում է լուսային ծածկագրի գործարկումը հարցի երկխոսության կոդից առաջ

հարց = ('Գնացքը կանգ է առնում կայարանում: youանկանու՞մ եք բեղը հնչեցնել');

question_title = ('Գնացքի եղջյուր');

resp = questdlg (հարց, հարցի_վերնագիր, «այո», «ոչ», «ոչ»);%-ը բացում է հարցի երկխոսության տուփը ՝ երկու տարբերակ և կանխադրված պատասխան

tf = strcmp (resp, «այո»);%-ը համեմատում է նիշերի զանգվածի պատասխանի երկարությունը այո բնույթի զանգվածին:

եթե tf == 1%եթե resp = 'այո'

[Y, FS] = audioread ('train_horn.m4a');%-ը վերցնում է աուդիո ֆայլը և փոխակերպում այն ընտրանքային տվյալների, y- ի և ընտրանքի արագության, FS:

ձայն (Y, FS)%ձայնային հրամանը վերցնում է նմուշառված տվյալները և նմուշառման արագությունը և առաջացնում ձայն

msgbox ('Գնացքի եղջյուրը հնչում է')

դադար (2)

ընդմիջում

else%if resp = 'ոչ', tf կլինի տրամաբանական 0, քանի որ ոչ և այո char զանգվածները տարբեր երկարություններ ունեն

msgbox ('Գնացքի շչակը չի հնչել!')

դադար (2)

ընդմիջում

վերջ

վերջ

մինչ readDigitalPin (rpi, 21) == 1 && a == 1 %սկսվում է, երբ օղակը միացված է և հարցի երկխոսության տուփը գործարկված է

Այս առաջին ծածկագրի հատվածը հերթականությամբ միացնում է լույսերը:

writeDigitalPin (rpi, 4, 0)

դադար (0.25)

writeDigitalPin (rpi, 5, 0)

դադար (0.25)

writeDigitalPin (rpi, 6, 0)

դադար (0.25)

writeDigitalPin (rpi, 7, 0)

դադար (0.25)

Այս երկրորդ ծածկագրի հատվածը կարգի է անջատում լույսերը:

writeDigitalPin (rpi, 4, 1)

դադար (0.25)

writeDigitalPin (rpi, 5, 1)

դադար (0.25)

writeDigitalPin (rpi, 6, 1)

դադար (0.25)

writeDigitalPin (rpi, 7, 1)

դադար (0.25)

վերջ%ավարտ, իսկ հանգույց

վերջ

Քայլ 4: Լսեք, որ գնացքը մոտենա անկյունին և դիտեք, թե ինչպես են լույսերը նախազգուշացնում ձեզ հետքայլ անել

Լսեք գնացքը, որը պետք է մոտենա անկյունին և դիտեք, թե ինչպես են լույսերը նախազգուշացնում ձեզ հետ կանգնել
Լսեք գնացքը, որը պետք է մոտենա անկյունին և դիտեք, թե ինչպես են լույսերը նախազգուշացնում ձեզ հետ կանգնել

Երբ գնացքը մոտենում և անցնում է ինֆրակարմիր տվիչներին, լույսերը կմարեն ՝ գնացքի բեղիկից դուրս գալով, որպեսզի ուղևորները ժամանեն եզրից հեռու; Այնուամենայնիվ, կլինի նաև երկխոսության տուփ, որը հայտնվում է գնացքի դիրիժորին հարցնելով. քաշեց, երրորդ երկխոսության տուփը կասի `« եղջյուրը չի հնչել »:

Քայլ 5: Վերջնական կարգավորում

Վերջնական կարգավորում
Վերջնական կարգավորում

Նախագիծն ավարտելու համար ամբողջ համակարգը պետք է համակցված լինի կապույտ երկաթուղային կայարանի հետ, որը 3D տպագրության էր արժանացել գեղագիտության համար: Երկաթուղային կայարանը խորհրդանշում է, թե որտեղ կլինեն ուղևորները, երբ գնացքը ժամանի: Այժմ նրանք ապահով կլինեն Գիշերային գնացքի նախազգուշացման համակարգի շնորհիվ:

Խորհուրդ ենք տալիս: