Įtraukti pavyzdžiai#

Šiame puslapyje pateikiami pavyzdiniai projektai, kuriuose demonstruojama, kaip valdyti VEX AIM kodavimo robotą naudojant Python per WebSocket.

Pagrindinis#

Kataloge basic rasite:

Failo pavadinimas

Aprašymas

ai_vision_for_loops.py

Šiame projekte naudojamas tinkamas „Python For Loop“ ciklas, skirtas dirbtinio intelekto regėjimo duomenims iteruoti ir apskaičiuoti vidurio tašką tarp oranžinės ir mėlynos statinės.

angled_moving.py

Šiame projekte robotas judinamas 45 laipsnių kampu 100 % greičiu, kad būtų galima nubrėžti deimanto formą.

colorful_square.py

Šis projektas priverčia robotą judėti kvadratiniu keliu, keisdamas LED spalvą kiekvienai spalvai.

conditional_kicker.py

Šio projekto metu AIM robotas pasisuks 180 laipsnių į dešinę. Jei robotas laikys oranžinį statinę, jis į ją spirs; priešingu atveju robotas nieko nedarys.

creating_timeouts.py

Šis projektas pasisuks vietoje, kol ieškos oranžinės statinės. Jei per 10 sekundžių jos nerandama, pasigirsta garsas „nesėkmė“ ir paieška sustabdoma.

emoji_reaction.py

Šiame projekte rodoma laiminga šypsenėlė, kai roboto kampas stabilus, ir nustebusi šypsenėlė, kai jis pakreiptas.

emoji_touch.py

Šis projektas keičia ekrano jaustukus pagal tai, kiek kartų ekranas buvo paspaustas, kiekvienam paspaudimui rodant skirtingą išraišką.

get_blue_barrel.py

Šis projektas ieškos mėlynos statinės, judės prie jos ir švęs, kai ją gaus.

led_color_cycle.py

Šiame projekte cikliškai rodomos visos LED spalvos, tarp jų darant vienos sekundės pauzę.

level_detector.py

Šiame projekte, kai robotas nėra pakreiptas, ekrane bus rodomas žalias fonas su užrašu „FLAT“. Jei robotas pakrypsta, ekranas paraus ir jame bus rodomas užrašas „TILTED“.

move_and_stop.py

Šis projektas robotą perkelia į priekį 300 mm ir, jam baigus judėti, paleidžia garsą „užbaigta“.

move_to_apriltag.py

Šis projektas suka robotą, kol jis aptinka „AprilTag ID 1“, tada juda link jo.

multi_step_pickup.py

Šis projektas sukasi į dešinę, kol randama oranžinė statinė, ji juda atgal ir padedama.

musical_thread.py

Šis projektas vienu metu gros dainą (naudodamas natas) vienoje temoje, tuo pačiu metu važiuodamas kitoje temoje.

object_detection_alert.py

Šio projekto metu AIM robotas judins pirmyn, kol bus rastas koks nors krovinys. Aptikus krovinį, robotas pyptelės ir sustabdys visus roboto judesius.

obstacle_avoidance.py

Šio projekto metu AIM robotas judins pirmyn, kol bus rastas krovinys. Aptikęs krovinį, robotas pasisuks 45 laipsnių kampu į dešinę.

screen_drawing.py

Šis projektas ekrane piešia liniją, kvadratą ir apskritimą, rodydamas kiekvienos figūros pavadinimą, kol ji piešiama.

sensor_monitor.py

Šis projektas roboto ekrane atspausdins laikmačio, krypties ir posūkio orientacijos vertes.

tap_to_start.py

Šis projektas laukia jutiklinio ekrano bakstelėjimo, prieš judėdamas 200 mm į priekį ir pabaigoje rodydamas jaustuką.

timing_events.py

Šis projektas pradeda judėti į priekį, bet automatiškai sustoja praėjus penkioms sekundėms, tada ekrane parodomas pranešimas „Laikas baigėsi!“.

Išplėstinis#

Kataloge advanced rasite:

Failo pavadinimas

Aprašymas

aim_example_base.py

Pateikia AimExample bazinę klasę, kuri analizuoja argumentus, bando rasti AIM roboto IP adresą ir inicijuoja aim.Robot egzempliorių.

fpv.py

Šis projektas leidžia vartotojui valdyti robotą transliuojant vaizdus iš kameros. Šviesos diodai šviečia žaliai, kai robotas juda, ir raudonai, kai robotas sustoja.

multiple_robots.py

Šiame projekte du robotai juda kvadratiniu keliu, keisdami šviesos diodų spalvą pagal kiekvieną spalvą.

play_sounds.py

Robotas paleis vietinį garso failą, o tada pagros keletą natų iš Bethoveno 5-osios simfonijos.

save_jpg.py

Įrašyti paveikslėlį JPEG formatu į failų sistemą, nurodytą failo pavadinimu, pagal numatytuosius nustatymus aim_img.jpg

stream_video.py

JPEG vaizdų srautas, naudojant opencv, kad būtų rodomas ekrane.