VEX IQ Smart Motorissa on monia toimintoja, joita voidaan käyttää koodattaessa VEXcode IQ:ssa. Tästä voi olla hyötyä koodattaessa käsivarsia, kynsiä ja imuaukkoja sekä voimansiirtoja ja muita VEX IQ:lla luotuja mekanismeja. Moottoreiden koodaamisen ymmärtäminen auttaa lievittämään ongelmia, kuten projektien pysähtymistä tai moottoreita, jotka eivät toimi suunnitellusti.
Moottorin kooderi
VEX IQ Smart Motor ei ainoastaan muuta sähköenergiaa mekaaniseksi energiaksi, kuten useimmat moottorit tekevät, vaan siinä on myös ominaisuuksia, joita useimmissa moottoreissa ei ole, mikä tekee siitä "älykkään". Yksi sen pääominaisuuksista on kvadratuurienkooderi. Tämä anturi on asennettu moottorin sisäosaan moottorin nopeuden ja/tai moottorin akselin asennon seuraamiseksi.
VEX IQ Smart Motorin kooderin raportit antavat mahdollisuuden tietää:
- Moottorin pyörimissuunta (eteen/taakse tai auki/kiinni)
- Moottorin asento ja moottorin kierrosluku ja asento (joko käännöksissä tai asteina)
- Moottorin kierrosnopeus (anturin sijainnin perusteella ajan kuluessa)
Koska kooderi raportoi moottorin tilat, niitä voidaan käyttää kulissien takana tehtävissä laskelmissa, jotta monet liike- ja tunnistuskomennot toimisivat VEXcode IQ:ssa.
Yksittäisten moottoreiden koodaus
Ennen kuin alat koodata yksittäisiä älymoottoreita VEXcode IQ:ssa, sinun on konfiguroitava moottori. Yksittäisiä moottoreita käytetään usein lisämekanismeihin, kuten imuaukkoihin, käsivarsiin ja kynsiin. Kaikki tiedot kuitenkin koskevat muita yksittäisiä moottoreita käyttäviä mekanismeja.
Kun yksi moottori on määritetty, komennot kyseisen moottorin ohjaamiseksi näkyvät Toolboxissa. Huomaat, että on olemassa erilaisia komentoja: odottaa ja ei-odota.
Odottava versus ei-odottava komennot
Huomaa, että kaikki kuvat tässä näyttävät lohkoja. Kaikki nämä projektit voidaan rakentaa uudelleen Pythonilla tai C++:lla ja sisältävät samat toiminnot kuin lohkot.
Odottavat komennot estävät projektia jatkamasta, kunnes toiminta on valmis. Näitä ovat komennot, kuten [Spin for] ja [Spin to position].
Tässä näkyvä projekti käyttää Clawbot (2-moottorinen) -mallia ja kaikki komennot odottavat. Joten sarjassa kynsimoottori sulkeutuisi 90 astetta, robotti ajaisi taaksepäin, sitten käsi pyörisi ylös saavuttaakseen 180 astetta.
Sitä vastoin on ei-odottavia komentoja. Ei-odottava komento suorittaa käyttäytymisen määräämättömän ajan tai kunnes käsketään vaihtaa toiseen käyttäytymiseen. Näitä ovat komennot, kuten [Spin].
Tässä näkyvä projekti käyttää BaseBotia, johon on lisätty sisäänotto. Täällä imumoottori alkaisi pyöriä. [Odota]-komento on odotuskomento, joten imu jatkaisi pyörimistä, kunnes 2 sekuntia on kulunut, ja siirtyy sitten projektin seuraavaan komentoon, joka on [Stop]-komento. Sitten moottori lakkasi pyörimästä.
Moottorin aikakatkaisut
Kun koodaat moottoria osaksi käsivartta tai kynsiä, on tärkeää muistaa odottavien ja ei-odottavien lohkojen välinen ero ja kuinka ne vaikuttavat robotin liikkeisiin. Moottorin aikakatkaisujen avulla voit asettaa aikarajan, jonka aikana moottori saavuttaa aiotun kohdeaseman. Jos se ei ole saavuttanut tätä asentoa ajan kuluttua, moottori lopettaa pyörimisen ja projekti siirtyy seuraavaan komentoon.
Tässä esimerkissä moottorin aikakatkaisuksi on asetettu 2 sekuntia. Jos kynsi ei lähelle 90 astetta 2 sekunnin sisällä, moottori lopettaa pyörimisen 2 sekunnin kohdalla ja siirtyy seuraavaan komentoon ja ajaa eteenpäin.
Jos et ole varma kuinka kauas moottoria on siirrettävä, käytä anturin kojelautaa. Kojelauta ilmoittaa moottorin sijainnin asteina ja kierroksina, joten kun liikutat moottoria (kuten kynsiä avaamalla ja sulkemalla), numerot muuttuvat. Tämän testin avulla voit määrittää, kuinka monta astetta tai kiertoa tarvitaan kynnen sulkemiseen, käsivarren nostamiseen, imuaukon pyörittämiseen jne.
Näistä artikkeleista opit käyttämään anturin kojelautaa.
Älykkäiden moottoreiden koodaus osana voimansiirtoa
Ennen kuin alat koodata voimansiirtoa VEXcode IQ:ssa, sinun on konfiguroitava voimansiirto mukaan lukien käytetyt moottorit. Moottorit on konfiguroitu voimansiirtoon sen varmistamiseksi, että niitä ohjataan samoilla komennoilla, kuten [Drive] ja [Drive for].
Odottavat ja odottamattomat komennot
Voimansiirtoa koodattaessa ovat käytettävissä odottavat ja odottamattomat komennot robotin liikkeen ohjaamiseksi.
Odottavat komennot estävät projektia jatkamasta, kunnes toiminta on valmis. Näitä ovat komennot, kuten [Aja] [Käänny] ja [Turn to heading].
Tässä näkyvä projekti käyttää Clawbot (2-moottorinen) -mallia ja kaikki komennot odottavat. Joten sarjassa robotti ajaisi eteenpäin 200 millimetriä ja kääntyi sitten oikealle käyttämällä voimansiirtoa.
Sitä vastoin on ei-odottavia komentoja. Ei-odottava komento suorittaa käyttäytymisen määräämättömän ajan tai kunnes käsketään vaihtaa toiseen käyttäytymiseen. Näitä ovat komennot, kuten [Drive].
Tässä näkyvä projekti käyttää BaseBotia. Täällä robotti ajaisi eteenpäin loputtomasti, kunnes puskurin kytkintä painettiin. Sitten projekti siirtyisi seuraavaan komentoon ja robotti lopettaisi ajamisen ja kääntyisi oikealle 90 astetta.