VEX IQ Smart Motor ir daudzas funkcijas, ko izmantot, kodējot VEXcode IQ. Tas var noderēt, kodējot rokas, spīles un ieplūdes atveres, kā arī piedziņas un citus mehānismus, kas izveidoti, izmantojot VEX IQ. Izpratne par to, kā motorus var kodēt, palīdzēs novērst tādas problēmas kā projektu apstāšanās vai motori, kas nedarbojas, kā paredzēts.
Motora kodētājs
VEX IQ Smart Motor ne tikai pārvērš elektrisko enerģiju mehāniskajā enerģijā, kā to dara lielākā daļa motoru, bet arī funkcijas, kuru lielākajai daļai motoru nav, kas padara to par "gudru". Viena no tā galvenajām iezīmēm ir kvadratūras kodētājs. Šis kodētājs ir uzstādīts motora iekšpusē, lai izsekotu motora vārpstas ātrumam un/vai stāvoklim.
Pārskati no VEX IQ Smart Motor kodētāja ļauj uzzināt:
- Motora pagrieziena virziens (uz priekšu/atpakaļ vai atvērts/aizvērts)
- Motora pozīcija un motora apgriezienu skaits un pozīcija (pagriezienos vai grādos)
- Motora apgriezienu ātrums (pamatojoties uz kodētāja pozīciju laika gaitā)
Tā kā kodētājs ziņo par motora stāvokļiem, tos var izmantot aizkulišu aprēķinos, lai daudzas kustības un sensora komandas darbotos VEXcode IQ ietvaros.
Atsevišķu motoru kodēšana
Pirms sākat kodēt atsevišķus viedos motorus VEXcode IQ, jums ir jākonfigurē motors. Atsevišķi motori bieži tiek izmantoti papildu mehānismiem, piemēram, ieplūdes atverēm, rokām un spīlēm. Tomēr visa informācija joprojām attiecas uz citiem mehānismiem, kuros izmanto atsevišķus motorus.
Izpildiet šajā norādītās darbības, lai konfigurētu savu individuālo motoru VEXcode IQ.
Ja ir konfigurēts viens motors, rīklodziņā tiks parādītas komandas, lai vadītu šo motoru. Jūs ievērosiet, ka ir dažādi komandu veidi: gaidīšana un negaidīšana.
Gaidīšanas pret negaidīšanas komandām
Ņemiet vērā, ka visos šeit esošajos attēlos ir redzami bloki. Visus šos projektus var pārbūvēt programmā Python vai C++, un tajos ir tāda pati funkcionalitāte kā blokos.
Gaidīšanas komandas neļauj projektam turpināties, līdz darbība ir pabeigta. Tie ietver tādas komandas kā [Spin for] un [Spin to position].
Šeit parādītajā projektā tiek izmantota Clawbot (2 motoru) veidne, un visas komandas gaida. Tātad sērijveidā spīļu motors aizvērtos par 90 grādiem, robots brauktu atpakaļgaitā, pēc tam roka pagrieztos uz augšu, lai sasniegtu 180 grādu pozīciju.
Turpretim ir komandas, kas negaida. Komanda, kas negaida, veiks darbību uz nenoteiktu laiku vai līdz brīdim, kad tiks paziņots, ka jāmaina uz citu uzvedību. Tie ietver tādas komandas kā [Spin].
Šeit parādītajā projektā tiek izmantots BaseBot ar pievienotu ieplūdi. Šeit ieplūdes motors sāks griezties. Komanda [Gaidīt] ir gaidīšanas komanda, tāpēc ieplūde turpinātu griezties, līdz beigsies 2 sekundes, un pēc tam pāriet uz nākamo komandu projektā, kas ir komanda [Stop]. Tad motors pārstās griezties.
Motora taimauts
Kodējot motoru kā daļu no rokas vai spīles, ir svarīgi atcerēties atšķirību starp gaidīšanas un negaidīšanas blokiem un to, kā tie ietekmēs jūsu robota kustību. Motora taimauts ļauj iestatīt laika ierobežojumu, lai motors sasniegtu paredzēto mērķa pozīciju. Ja tas nav sasniedzis šo pozīciju, kad beidzas laiks, motors pārtrauks mēģināt griezties un projekts pāries uz nākamo komandu.
Šajā piemērā motora taimauts ir iestatīts uz 2 sekundēm. Ja spīle netuvojas 90 grādiem 2 sekunžu laikā, motors pārtrauks griezties pie 2 sekunžu atzīmes, pēc tam pāriet uz nākamo komandu un brauc uz priekšu.
Ja neesat pārliecināts, cik tālu pārvietot motoru, izmantojiet sensora informācijas paneli. Informācijas panelis ziņo par motora stāvokli grādos un apgriezienos, tāpēc, pārvietojot motoru (piemēram, atverot un aizverot spīļu), skaitļi mainīsies. Izmantojiet šo testu, lai noteiktu, cik grādu vai apgriezienu ir nepieciešams, lai aizvērtu spīli, paceltu roku, pagrieztu ieplūdi utt.
Skatiet šos rakstus, lai uzzinātu, kā izmantot sensoru informācijas paneli.
Viedo motoru kodēšana kā piedziņas daļa
Pirms sākat kodēt piedziņu VEXcode IQ, jums ir jākonfigurē piedziņa, ieskaitot izmantotos motorus. Motori ir konfigurēti piedziņas sistēmā, lai nodrošinātu to vadīšanu ar tādām pašām komandām kā [Drive] un [Drive for].
Gaidīšanas un negaidīšanas komandas
Kodējot piedziņu, ir pieejamas gaidīšanas un negaidīšanas komandas, lai kontrolētu robota kustību.
Gaidīšanas komandas neļauj projektam turpināties, līdz darbība ir pabeigta. Tajos ietilpst tādas komandas kā [Braukt uz] [Pagriezties uz] un [Turn to heading].
Šeit parādītajā projektā tiek izmantota Clawbot (2 motoru) veidne, un visas komandas gaida. Tātad sērijveidā robots brauktu uz priekšu 200 milimetrus un pēc tam pagrieztos pa labi, izmantojot piedziņu.
Turpretim ir komandas, kas negaida. Komanda, kas negaida, veiks darbību uz nenoteiktu laiku vai līdz brīdim, kad tiks paziņots, ka jāmaina uz citu uzvedību. Tie ietver tādas komandas kā [Drive].
Šeit parādītais projekts izmanto BaseBot. Šeit robots brauktu uz priekšu bezgalīgi, līdz tika nospiests bufera slēdzis. Tad projekts pārietu uz nākamo komandu, un robots pārtrauks braukšanu un pagrieztos pa labi par 90 grādiem.