Cov txheej txheem:

Lub Xeev Tshuab ntawm Arduino - Lub Teeb Pom Kev Mus Los: 6 Cov Kauj Ruam (nrog Duab)
Lub Xeev Tshuab ntawm Arduino - Lub Teeb Pom Kev Mus Los: 6 Cov Kauj Ruam (nrog Duab)

Video: Lub Xeev Tshuab ntawm Arduino - Lub Teeb Pom Kev Mus Los: 6 Cov Kauj Ruam (nrog Duab)

Video: Lub Xeev Tshuab ntawm Arduino - Lub Teeb Pom Kev Mus Los: 6 Cov Kauj Ruam (nrog Duab)
Video: Cheem niam lub hnub nyoog Kawm Muas 2024, Kaum ib hlis
Anonim
Lub Xeev Tshuab ntawm Arduino - Lub Teeb Pom Kev
Lub Xeev Tshuab ntawm Arduino - Lub Teeb Pom Kev

Nyob zoo! Kuv yuav qhia koj yuav ua li cas teeb tsa txoj kev tsheb ciav hlau rau cov neeg taug kev rau Arduino hauv C ++ nrog lub xeev lub tshuab ua haujlwm kawg los ntawm kev siv YAKINDU Statechart Cov Cuab Yeej. Qhov no yuav qhia txog lub zog ntawm lub xeev cov tshuab thiab tuaj yeem siv ua tus qauv rau cov phiaj xwm ntxiv.

Khoom siv

Koj tsuas yog xav tau Arduino, qee lub pob nyem, LEDs, Jumper thiab cov tiv thaiv.

Kho vajtse

  • 2 x Pushbutton
  • 2x Teeb Teeb lossis koj tuaj yeem siv LEDs nrog 220 Ohm resistors
  • 2x 10 k Ohm resistors
  • Cov qhob cij
  • Jumper
  • Arduino Uno/Mega (lossis lwm yam, uas tau txais tsawg kawg 8 GPIOs)

Software

  • YAKINDU Statechart Cov Cuab Yeej
  • Dab noj hnub C ++ IDE rau Arduino

Kauj Ruam 1: Txheeb Xyuas Nws Ua Haujlwm Li Cas: Cov neeg taug kev teeb pom kev

Thaum xub thawj, peb yuav tsum qhia meej tias lub teeb pom kev ntawm cov neeg taug kev yuav tsum ua haujlwm li cas. Kuv tau sim piav qhia cov ntsiab lus mos txwv:

  • Ob txoj kev tsheb ciav hlau siv - ib qho rau tsheb, lwm qhov rau cov neeg taug kev
  • Teeb pom kev tsheb tuaj yeem qhib tau los ntawm kev siv lub pob
  • Cov neeg taug kev tuaj yeem thov hla txoj kev los ntawm nias lub pob
  • Tua cov teeb tsheb khiav yog qhia los ntawm ntsais muag ob lub LEDs daj
  • Tom qab qhib, lub teeb pom kev zoo tos txog 10 vib nas this hauv kev nyab xeeb
  • Tom qab hom kev nyab xeeb, tsheb ib txwm muaj theem ntsuab kom txog thaum tus neeg taug kev pib thov
  • Cov neeg taug kev thov hla kev yog qhia los ntawm toggling daj LED

Ib qho ntxiv, muaj qee lub sijhawm tshwm sim nyob ntawm seb txoj kev teeb pom kev zoo li cas.

Kauj ruam 2: Tsim Circuit Court

Tsim Circuit Court
Tsim Circuit Court

Cia peb pib teeb tsa lub Circuit Court. Hauv kuv qhov piv txwv, zoo li koj tuaj yeem pom ntawm daim duab ua ntej, Kuv tau siv Arduino Mega 2560, tab sis txhua lwm Arduino nrog tsawg kawg yim GPIOs yuav tsum zoo. Ib qho ntxiv, Kuv tau yuav qee lub teeb 5V ntawm Amazon. Tsuas yog tshawb nrhiav Traffic Light Arduino. Txwv tsis pub, koj tuaj yeem yooj yim siv rau rau sib txawv LEDs. Ib qho ntxiv, koj xav tau ob lub laub khawm thiab ob lub 10k Ohm resistors.

Peb sab laug LEDs tau siv rau kev tsav tsheb thiab peb txoj cai LEDs rau cov neeg taug kev, qhov twg daj tuaj yeem qhia qhov kev thov.

Kauj Ruam 3: Tsim Lub Xeev Tshuab

Tsim Lub Xeev Tshuab
Tsim Lub Xeev Tshuab

Yog li, raws li koj tuaj yeem pom muaj ob lub xeev tseem ceeb nrog cov tswv cuab sib koom ua ke - xeev nyob thiab xeev tawm. Koj tuaj yeem hloov pauv ntawm ob lub xeev los ntawm kev siv qhov xwm txheej onOff, uas yog xaim rau ON/OFF khawm. Hauv thawj lub xeev, lub xeev tawm, ob qho tib si LEDs daj pib ntsais muag txhua ob. Thaum lub teeb pom kev tau qhib, nws pib hauv Kev Nyab Xeeb. Tom qab 10 vib nas this qhov kev coj tus cwj pwm ntawm cov teeb tsheb yuav raug daws. Cov liab thiab daj LED yuav tau qhib rau hauv StreetPrepare lub xeev thiab lub teeb pom kev tig ntsuab tom qab 2 vib nas this ntxiv. Txij tam sim no, lub xeev lub tshuab tab tom tos tus neeg taug kev thov kev tshwm sim, uas yog xaim mus rau khawm thib ob. Tom qab xa qhov kev tshwm sim qhov kev thov yuav qhia los ntawm toggling lub daj LED txhua ob hauv lub xeev PedWating. 7 vib nas this tom qab lub tsheb yuav hloov mus rau daj ua ntej thiab tom qab ntawd liab kom txog thaum cov neeg taug kev tau txais lub teeb liab mus rau hauv xeev PedestrianGreen. Tom qab qhov no, PedestrianRed tau qhib thiab lub voj voog rov ua dua. Qhov no tsuas tuaj yeem cuam tshuam los ntawm kev tig lub teeb tsheb khiav dua.

Kauj Ruam 4: Khiav Tus Qauv

Kauj Ruam 5: Tsim C ++ Code

Qhov tsim tawm C ++ code yog qhov hloov pauv qub los daws qhov laj thawj ntawm lub xeev lub tshuab. Nov tsuas yog ib qho code snippet ntawm qhov nws zoo li:

void TrafficLightCtrl:: runCycle () {clearOutEvents (); rau (stateConfVectorPosition = 0; stateConfVectorPosition <maxOrthogonalStates; stateConfVectorPosition ++) {hloov (stateConfVector [stateConfVectorPosition]) {case main_region_on_r1_StreetGreen: {main_region_on_r1_rereGreen) tawg; } case main_region_on_r1_PedWaiting_r1_waitOn: {main_region_on_r1_PedWaiting_r1_waitOn_react (muaj tseeb); tawg; } default: so; } clearInEvents (); }

Kauj Ruam 6: Tau Piv Txwv

Tag nrho tus piv txwv tau npaj los ua ke & khiav. Nws los nrog YAKINDU Statechart Cov Cuab Yeej, uas yog pub dawb rau kev siv tsis yog lag luam. Tom qab rub tawm, koj tuaj yeem xa cov piv txwv ncaj qha rau hauv lub cuab yeej:

Cov Ntaub Ntawv -> Tshiab -> Piv txwv -> YAKINDU Statechart Piv txwv -> Ntxiv mus -> Teeb Pom Kev (C ++) rau Arduino

> HERE koj tuaj yeem rub tawm YAKINDU Statechart Tools <<

Koj tuaj yeem pib nrog 30 hnub sim. Tom qab ntawv, koj yuav tsum tau txais daim ntawv tso cai, uas yog pub dawb rau kev siv tsis yog lag luam!

Pom zoo: