Satura rādītājs:
- 1. darbība. Kas ir notikumu vadīta programmēšana?
- 2. darbība. Notikumu vadītas programmēšanas loģiskā plūsma
- 3. darbība: notikumu veidotājs
- 4. darbība. Notikumu procesors
Video: Notikumu vadīta programmēšana FTC: 4 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:54
Šogad mūsu komanda ir paveikusi lielu darbu, lai mūsu robotam izstrādātu uz notikumiem balstītu programmatūru. Šīs programmas ir ļāvušas komandai precīzi izstrādāt autonomas programmas un pat atkārtotus tele-op pasākumus. Tā kā programmatūras darbs, ko tas prasa, ir sarežģīts, mēs nolēmām dalīties zināšanās, ko esam ieguvuši, izstrādājot notikumu vadītu kodu FTC robotiem.
1. darbība. Kas ir notikumu vadīta programmēšana?
Vispārīgi runājot, notikumu vadīta programmēšana, saskaņā ar Techopedia, ir tādu programmu izstrāde, kas reaģē uz lietotāju ievadi. Šajā ziņā daudzas programmas tiek uzskatītas par notikumu vadītām, ieskaitot komandas tele-op programmu, kas jebkuras darbības veikšanai paļaujas uz cilvēka vadīta kontroliera ieguldījumu. Tomēr, ņemot vērā mūsu komandas darbu, notikumu vadīta programmēšana ir saistīta ar programmatūras izveidi no dažādiem ievadiem; citiem vārdiem sakot, mēs dokumentējam notikumus, pamatojoties uz kontrolieru un sensoru ievadi, pēc tam mēs varam ievietot šos notikumus rindā un izmantot failu, lai atkārtotu ierakstīto notikumu.
Šai programmu izstrādei mūsu robotam ir vairākas priekšrocības:
- Tas ļauj mums izveidot precīzas autonomas programmas. Tā kā notikuma laikā mēs veidojam programmatūru reāllaikā, apkopotās un izmantotās sensora vērtības būs ļoti precīzas, jo tās nāk tieši no sākotnējā notikuma.
- Tas ļauj ātri izveidot autonomas programmas. Autonomu programmu veidošana ir tikpat vienkārša kā notikumu sērijas ierakstīšana un notikuma pielāgošana pēc nepieciešamības.
- Tas ļauj mums izveidot automātiskus procesus tele-op. Atkārtotām darbībām tele-op, notikumu vadīta programmēšana ļauj mums ierakstīt šīs darbības un piešķirt notikumu pogai vadītāja kontrolēto spēļu laikā. Šos automatizētos notikumus var ietekmēt sensori, lai tos varētu precīzi izpildīt.
2. darbība. Notikumu vadītas programmēšanas loģiskā plūsma
Tālāk ir attēlota notikumu vadītas programmas loģiskā plūsma: sarkans attēlo notikuma izveidi, bet zils-pasākuma izsaukumu. Lai izveidotu notikumu, ievades secība tiek uzņemta, izmantojot robotu darbību, un tiek reģistrēta kā notikumi; šie notikumi tiek ierakstīti failā. Lai izsauktu notikumu, šis fails tiek nolasīts un ievade tiek nosūtīta notikumu procesorim, lai faila kodu pārvērstu robota darbībā.
3. darbība: notikumu veidotājs
Notikumu veidotāji tiek izmantoti, lai dokumentētu darbības vai “notikumus”, pamatojoties uz dažādiem sensoriem un pogām. Kamēr robots veic darbības uz lauka, notikumu veidotāju klase paralēli veido notikumus katrai no šīm darbībām, atsaucoties uz notikumu klasē klasificēto notikumu. Pēc izveidošanas pasākums tiek ievietots notikumu rindā notikumu klasē: pirmais notikums ieņem augstāko vietu, tad otrais notikums ieņem augstāko vietu un nospiež visus notikumus zem tā, un tas turpinās, līdz programma apstājas. Kad programma tiek apturēta, notikumi tiek nodoti cilvēkam lasāmā formāta failā, piemēram, JSON failā. Šo failu var izmantot, lai labāk uzlabotu autonomās darbības.
Iepriekš minētais piemēra kods nosaka notikuma parametrus, kas šajā gadījumā ir pagrieziens, izmantojot IMU sensoru. Pēc tam mēs rindojam notikumu notikumu rindā. Visbeidzot, mēs saīsinām notikumu, kas būtībā atiestata notikumu, lai mēs varētu to izmantot, lai ierindotu turpmākos notikumus.
4. darbība. Notikumu procesors
Pasākumu klases ņem cilvēkam lasāmu failu, kas izveidots notikumu veidotāju klasē, un dara visu, ko katrs rindā esošais notikums liek, lai to izdarītu, izsaucot notikumu procesora klasē izklāstītās metodes. Pēc tam notikumu procesora klase robotam paziņo, kādu notikumu atkārtot. Neatkarīgi no tā, vai tas ir vienkāršs “brauc uz priekšu” notikums vai sarežģīts notikums, kas ir pilns ar attālumiem, pagriezieniem un stieņiem, procesors atskaņos jebkuru tam piešķirto notikumu. Šis process ir ļoti noderīgs autonomajā režīmā, jo komanda var ierakstīt sensorus un Tele-Op darbības pirms saskaņošanas, pēc tam vienkārši atkārtot notikumus autonomā režīmā. Šo procesu sauc par atmiņas atkārtošanu. Tas ļauj 100% konfigurēt autonomu programmu, izmantojot vienu failu. Kad notikumu veidotājs un apstrādātājs ir izveidots, komanda var vienkārši mainīt autonomas rutīnas, izmantojot cilvēkam lasāmu failu.
Iepriekš minētais piemērs vispirms sākas, pārbaudot notikuma JSON failu un pēc tam pārbaudot šo notikumu, izmantojot gadījuma paziņojumu, lai noskaidrotu, kāda veida notikums tas ir, šajā gadījumā pagrieziens, izmantojot IMU sensoru. Kad tas var noteikt, ka tas ir pagrieziens, izmantojot IMU notikumu, tas nodarbojas ar notikuma apstrādi, kas parasti ietver tā koda palaišanu, kas notikumam radies, izmantojot notikuma mainīgos, kas tika nodoti, lai atkārtotu iepriekš veikto notikumu.
Ieteicams:
Gaidāmo notikumu atpakaļskaitīšanas taimeris: 5 soļi
Gaidāmo notikumu atpakaļskaitīšanas taimeris: Kopsavilkums: notikumu atpakaļskaitīšanas pulkstenis ir līdzīgs komerciāliem produktiem ar dažiem pagriezieniem: a) lasāms no visas telpas displeja. B) pielāgojams notikuma attēls. C) Tā kā notikuma mērķa laiks tiek skaitīts atpakaļ, atlikušās dienas mainās krāsa - zaļa - > dzeltens
Vara vadīta mirgojoša ragana: 7 soļi
Vara vadīta mirgojoša ragana: šī vara mirgojošā ragana darbojas ar 9 V akumulatoru un baltām un daudzkrāsainām gaismas diodēm, izmantojot ieslēgšanas/izslēgšanas slēdzi, izmantojot katras sadaļas paralēlo vadu kombinācijas, pievienojot parūku un veidojot marķētu Happy Halloween papīru, lai tas izskatās pienācīgi
Darba sākšana ar Esp 8266 Esp-01 ar Arduino IDE - Esp dēļu instalēšana Arduino Ide programmēšanā un Esp programmēšana: 4 soļi
Darba sākšana ar Esp 8266 Esp-01 ar Arduino IDE | Esp dēļu instalēšana Arduino Ide programmēšanā un Esp programmēšana: Šajā pamācībā mēs iemācīsimies instalēt esp8266 plates Arduino IDE un kā programmēt esp-01 un augšupielādēt kodu tajā. Tā kā esp dēļi ir tik populāri, es domāju par pamācību labošanu šis un lielākā daļa cilvēku saskaras ar problēmu
RPi-Zero IoT notikumu indikators / krāsu lampa: 6 soļi (ar attēliem)
RPi-Zero IoT notikumu indikators / krāsu lampiņa: nav papildu mikrokontrollera, & Nav nepieciešams HAT papildmodulis. RPi-Zero to visu dara. Vēl labāk izmantot RPi-Zero W! Parauga izmantošana: tīmekļa pakalpojuma stāvokļa indikators (piemēram, DowJonesIndex izsekošana), politisko vai sporta notikumu statusa indikators, garastāvokļa gaisma
Kāzu / notikumu fotobūts: 6 soļi (ar attēliem)
Kāzu / notikumu fotobūts: Sveiki, es apprecējos pagājušajā gadā, kad mēs gatavojāmies D dienas sagatavošanai, mēs piedalījāmies daudzās kāzu sanāksmēs. Katrā sanāksmē ir kāds fotobūves īrnieks, es domāju, ka fotobūve bija lieliska ideja kāzām, katrs viesis