![Պետական մեքենա Arduino- ում - հետիոտնային լուսացույց. 6 քայլ (նկարներով) Պետական մեքենա Arduino- ում - հետիոտնային լուսացույց. 6 քայլ (նկարներով)](https://i.howwhatproduce.com/images/001/image-298-39-j.webp)
Բովանդակություն:
2025 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2025-01-23 14:48
![State Machine on Arduino - հետիոտնային լուսացույց State Machine on Arduino - հետիոտնային լուսացույց](https://i.howwhatproduce.com/images/001/image-298-40-j.webp)
Բարև ձեզ: Ես ձեզ ցույց կտամ, թե ինչպես կարելի է ծրագրավորել Arduino- ի հետիոտնային լուսացույց C ++ - ում `վերջնական վիճակի մեքենայով` օգտագործելով YAKINDU Statechart Tools- ը: Սա ցույց կտա պետական մեքենաների հզորությունը և կարող է օգտագործվել որպես նախագիծ հետագա նախագծերի համար:
Պարագաներ
Ձեզ անհրաժեշտ է միայն Arduino, մի քանի կոճակ, LED- ներ, Jumper և դիմադրիչներ:
Սարքավորումներ
- 2 անգամ սեղմիչ կոճակ
- 2x լուսացույցներ կամ կարող եք օգտագործել LEDs ՝ 220 Օմ դիմադրիչներով
- 2x 10k Օմ դիմադրիչներ
- Breadboard
- Ցատկող
- Arduino Uno/Mega (կամ որևէ այլ, որը ստացել է առնվազն 8 GPIO)
Ծրագրային ապահովում
- YAKINDU Statechart գործիքներ
- Eclipse C ++ IDE Arduino- ի համար
Քայլ 1. Սահմանեք, թե ինչպես է այն աշխատում. Հետիոտնային լուսացույց
Սկզբում մենք պետք է նշենք, թե ինչպես պետք է աշխատի հետիոտնի լուսացույցը: Փորձեցի ամփոփել հիմնական կետերը.
- Օգտագործվում է երկու լուսացույց ՝ մեկը մեքենաների համար, մյուսը ՝ հետիոտների համար
- Լուսացույցը կարելի է միացնել ՝ օգտագործելով կոճակը
- Հետիոտնը կարող է պահանջել հատել փողոցը ՝ սեղմելով կոճակը
- Անջատված լուսացույցը նշվում է երկու դեղին LED- ները թարթելով
- Միացնելուց հետո լուսաֆորը սպասում է 10 վայրկյան անվտանգ ռեժիմում
- Անվտանգ ռեժիմից հետո մեքենաները միշտ ունենում են կանաչ փուլ, մինչև հետիոտնը խնդրանք չսկսի
- Անցման համար հետիոտների խնդրանքը նշվում է դեղին LED լուսադիոդի միացման միջոցով
Բացի այդ, կան որոշ ժամանակային իրադարձություններ ՝ կախված լուսացույցի աշխատանքի եղանակից:
Քայլ 2: Կառուցեք շրջանը
![Կառուցեք շրջանագիծը Կառուցեք շրջանագիծը](https://i.howwhatproduce.com/images/001/image-298-41-j.webp)
Եկեք սկսենք սխեմայի կարգավորումը: Իմ օրինակում, ինչպես տեսնում եք նախադիտման պատկերի վրա, ես օգտագործել եմ Arduino Mega 2560 -ը, բայց առնվազն ութ GPIO- ով ամեն մյուս Arduino- ն պետք է լավ լինի: Բացի այդ, ես գնել եմ 5V լուսացույցներ Amazon- ում: Պարզապես որոնեք լուսացույց Arduino- ն: Հակառակ դեպքում, դուք կարող եք պարզապես օգտագործել վեց տարբեր LED: Բացի այդ, ձեզ հարկավոր է երկու կոճակ և երկու 10k Ohm ռեզիստոր:
Երեք ձախ լուսադիոդներն օգտագործվում են մեքենայի երթևեկի համար, իսկ երեք աջը ՝ հետիոտների համար, որտեղ դեղինը կարող է ցույց տալ խնդրանքը:
Քայլ 3. Պետական մեքենայի ստեղծում
![Ստեղծելով պետական մեքենա Ստեղծելով պետական մեքենա](https://i.howwhatproduce.com/images/001/image-298-42-j.webp)
Այսպիսով, ինչպես տեսնում եք, կան երկու հիմնական պետություններ `կազմված անդամներով` միացված և անջատված վիճակ: Դուք կարող եք անցնել երկու վիճակների ՝ օգտագործելով իրադարձությունը onOff, որը միացված է ON/OFF կոճակին: Նախնական վիճակում ՝ անջատված վիճակում, երկու դեղին LED- ները սկսում են թարթել ամեն վայրկյան: Լուսացույցը միացնելուց հետո այն սկսվում է Safestate- ում: 10 վայրկյան հետո լուսացույցների բնորոշ վարքագիծը կկարգավորվի: StreetPrepare նահանգում կարմիր և դեղին լուսադիոդային լույսը կմիացվի, և լուսացույցը կանաչ կդառնա ևս 2 վայրկյանից հետո: Այսուհետ պետական մեքենան սպասում է հետիոտնային պահանջի միջոցառմանը, որը միացված է երկրորդ կոճակին: Միջոցառումը ուղարկելուց հետո հարցումը նշվելու է ՝ PedWating վիճակում ամեն վայրկյան դեղին LED- ն միացնելով: 7 վայրկյան անց լուսացույցը նախ կփոխվի դեղին, այնուհետև կարմիրի, մինչև հետիոտները կստանան ազդանշան ՝ հետիոտնային կանաչ վիճակի անցնելու համար: Դրանից հետո PedestrianRed- ը ակտիվանում է, և ցիկլը կրկնվում է: Սա կարող է ընդհատվել միայն լուսացույցը կրկին անջատելով:
Քայլ 4: Գործարկեք օրինակը
![](https://i.ytimg.com/vi/u5mszmWjVoU/hqdefault.jpg)
Քայլ 5. Ստեղծված C ++ ծածկագիր
Ստեղծված C ++ ծածկագիրը դասական անջատիչ գործ է `պետական մեքենայի տրամաբանությունը կարգավորելու համար: Սա պարզապես կոդի հատված է, թե ինչպես է այն թվում.
անվավեր TrafficLightCtrl:: runCycle () {clearOutEvents (); for (stateConfVectorPosition = 0; stateConfVectorPosition <maxOrthogonalStates; stateConfVectorPosition ++) {switch (stateConfVector [stateConfVectorPosition])) {case main_region_on_r1_StreetGreen: {main_region_on_r1_rere_rere_rere_rere_rere_rere_rere_gre1_re1_Street_rre_RE1_Street_rre_re1_Street_RERE_Gre1_Street_Street_REnt_RERE_Gre1_Street_RERE_Gre1_Street_Street_Rre_Gre1_Street_Street_RERE_Gre1_Street_RERE_Gre1_Street_Street_Street_StreetGreen: ընդմիջում; } case main_region_on_r1_PedWaiting_r1_waitOn: {main_region_on_r1_PedWaiting_r1_waitOn_react (ճշմարիտ); ընդմիջում; } կանխադրված ՝ ընդմիջում; } clearInEvents (); }
Քայլ 6: Ստացեք օրինակը
Ամբողջ օրինակը պատրաստ է հավաքել և գործարկել: Այն գալիս է YAKINDU Statechart Tools- ով, որն անվճար է ոչ առևտրային օգտագործման համար: Ներբեռնելուց հետո կարող եք օրինակը ներմուծել անմիջապես գործիքի մեջ.
Ֆայլ -> Նոր -> Օրինակ -> YAKINDU Statechart Օրինակներ -> Հաջորդ -> Լուսացույց (C ++) Arduino- ի համար
> ԱՅՍՏԵ կարող եք ներբեռնել YAKINDU Statechart Tools <<
Դուք կարող եք սկսել 30 օր փորձաշրջանով: Դրանից հետո դուք պետք է լիցենզիա ստանաք, որն անվճար է ոչ առևտրային օգտագործման համար:
Խորհուրդ ենք տալիս:
Rանկացած մեքենա/մեքենա դարձնել Bluetooth հավելվածի վերահսկման մեքենա ՝ 9 քայլ
![Rանկացած մեքենա/մեքենա դարձնել Bluetooth հավելվածի վերահսկման մեքենա ՝ 9 քայլ Rանկացած մեքենա/մեքենա դարձնել Bluetooth հավելվածի վերահսկման մեքենա ՝ 9 քայլ](https://i.howwhatproduce.com/images/010/image-28964-j.webp)
Rանկացած R/C մեքենա վերածել Bluetooth ծրագրի կառավարման R/C մեքենայի. Այս նախագիծը ցույց է տալիս սովորական հեռակառավարման մեքենան Bluetooth (BLE) կառավարման մեքենայի Wombatics SAM01 ռոբոտաշինական տախտակով, Blynk App- ով և MIT App Inventor- ով փոխելու քայլերը: շատ ցածր գնով RC մեքենաներ են `բազմաթիվ հնարավորություններով, ինչպիսիք են LED լուսարձակները և
Arduino լուսացույց. 3 քայլ (նկարներով)
![Arduino լուսացույց. 3 քայլ (նկարներով) Arduino լուսացույց. 3 քայլ (նկարներով)](https://i.howwhatproduce.com/images/003/image-6666-j.webp)
Arduino լուսացույց. Այս հրահանգը բխում է ՝ Arduino-Traffic-Light-Simulator- ից: Ես կատարեցի հետևյալ փոփոխությունները. LED- ների համար անցքերն ավելի փոքր են, 5 մմ LED- ների համար (10 մմ LED- ների փոխարեն):
Պետական մեքենա և բազմաֆունկցիոնալ Arduino- ի վրա SPI ընդլայնիչներով `3 քայլ
![Պետական մեքենա և բազմաֆունկցիոնալ Arduino- ի վրա SPI ընդլայնիչներով `3 քայլ Պետական մեքենա և բազմաֆունկցիոնալ Arduino- ի վրա SPI ընդլայնիչներով `3 քայլ](https://i.howwhatproduce.com/images/003/image-7721-14-j.webp)
State Machine and Multitasking on Arduino With SPI Expanders. Անցյալ շաբաթ ես խնդրում էի ստեղծել համակարգ, որը հրավառություն կիրականացներ arduino- ով: Հրդեհները վերահսկելու համար անհրաժեշտ էր մոտ 64 ելք: Դա անելու եղանակներից մեկը IC ընդլայնիչների օգտագործումն է: Այսպիսով, առկա է 2 լուծում
Arduino լուսացույց. 8 քայլ (նկարներով)
![Arduino լուսացույց. 8 քայլ (նկարներով) Arduino լուսացույց. 8 քայլ (նկարներով)](https://i.howwhatproduce.com/preview/how-to-implement/10445043-arduino-traffic-light-8-steps-with-pictures-0.webp)
Arduino լուսացույց. Այս նախագիծը պատրաստվել է 5 մմ լուսադիոդային լուսարձակների և Led Mounting Hardware T1-3/4 հստակ ստանդարտի միջոցով `ավելի լավ պատկերացում կազմելու համար, ուստի օգտագործելով 3 լուսադիոդ` առանձին `կարմիր, դեղին և AMP գույները ցուցադրելու համար: Կանաչ համապատասխանաբար
Arduino PLC 32 I/O+պետական մեքենա+SCADA կամ HMI ՝ 8 քայլ
![Arduino PLC 32 I/O+պետական մեքենա+SCADA կամ HMI ՝ 8 քայլ Arduino PLC 32 I/O+պետական մեքենա+SCADA կամ HMI ՝ 8 քայլ](https://i.howwhatproduce.com/images/002/image-5415-22-j.webp)
Arduino PLC 32 I/O+State Machine+SCADA կամ HMI. Արդուինոյով արդյունաբերական համակարգի ծրագրավորման, վերահսկման և վերահսկման բազմաթիվ եղանակներ