Innholdsfortegnelse:
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-13 06:58
For de som ikke vet hva en "VEX" er. Det er et selskap som selger robotdeler og sett. De selger en "VEX" sender og mottaker på nettstedet deres for $ 129,99, men du kan få en "VEX" sender og mottaker for omtrent $ 20 på "Ebay" og mange andre steder.
"VEX" -senderen er en 6 -kanals FM -sender med 2 joysticks som kan gå opp og ned og fra side til side. På baksiden av senderen er det 4 knapper som styrer kanal 5 og kanal 6. Senderkontrollene kan settes til tankstil eller arkadestil. Senderen har en rekke andre funksjoner. Dette gjør det til en veldig billig måte å fjernkontrollere servoer på. Det eneste problemet er at du bare kan kontrollere servomotorer, og du må kjøpe en dyr "VEX" mikrokontroller på $ 149,99 bare for å gjøre det. Det er til nå!
Trinn 1: Hvordan det hele fungerer
Denne billige "motorgrensesnittbrikken" ($ 14,95) kan kjøpes på: https://robotics.scienceontheweb.net Chippen kan dekode signalene fra "VEX" -mottakeren for å kontrollere opptil 8 motorers H-broer og 1 driver. Den kan også motta kommandoer fra en annen mikrokontrollerbrikke for å kontrollere motorene. Denne grensesnittbrikken bruker 3 utgangspinner for å kontrollere motorens H-bro. To pinner for å kontrollere motorens retning og en pinne for å kontrollere motorens turtall ved å bruke P. W. M. Chippen bruker inngangen fra de to knappene på kanal 5 for å kontrollere inngangen fra "VEX" senderen venstre joystick slik at den kan kontrollere 6 motorer. Brikken bruker inngangen fra de to andre knappene på kanal 6 for å låse inn høy eller lav utgang på pinne 14 på motorgrensesnittbrikken. Motorgrensesnittbrikken har følgende funksjoner. Disse funksjonene fungerer kanskje ikke siden en mottaker kan hente et signal fra hvor som helst. Vi påtar oss intet ansvar direkte eller indirekte for å bruke disse delene. ADVARSEL! BRUK ALDRI fjernkontrollen på en robot som kan forårsake skade hvis den går ut av kontroll. Hvis roboten din går utenfor senderens rekkevidde; motorgrensesnittbrikken kan slå av motorene og gi kontroll til en mikrokontroller hvis roboten bruker en. Dette kan også være sant hvis du slår av senderen. Motorgrensesnittbrikken bruker ikke en seriell port for å kommunisere med andre mikrokontrollere. Dette betyr at du kan bruke en veldig billig mikrokontrollerbrikke til å være hjernen til roboten din. Hvis du setter en lav pinne 2, vil alle motorene fungere på halve effektnivået når du bruker senderen.
Trinn 2: Slik kobler du VEX -mottakeren til grensesnittbrikken
Motorer, reléer og strømforsyninger vil forårsake radioforstyrrelser; så velg et sted på roboten din der "VEX" -mottakeren er langt borte fra disse tingene. Jeg monterte min på en 43 tommer lang mast som var festet til robotens base.
"VEX" -mottakeren kommer med en gul kabel. Koble kabelen til "VEX" -mottakeren, den andre enden av kabelen kobles til en telefonrørkontakt. Du må kjøpe jacken. Siden jeg ikke vil vite fargene på ledningene som kommer ut av kontakten din; Jeg vil referere til de gule kabeltrådene. Hvis du ser på den gule kabelen, vil du se 4 ledninger som er gule, grønne, røde og hvite. Den gule ledningen blir koblet til + 5 volt. Den grønne ledningen er signalet, og den blir koblet til pin 6 på grensesnittbrikken. Den røde ledningen blir koblet til bakken. Den hvite ledningen brukes ikke. Du må koble en 4,7 K oppmotstand fra pin 6 på grensesnittbrikken til + 5 volt. Du vil også koble en 2200 uf kondensator over strømledningene i nærheten av "VEX" -mottakeren. Pin 2 er en input -pin. Den må være kablet og IKKE etterlate flytende. Den kan kobles til + 5 volt eller jordes gjennom en 47 ohm motstand. Den kan også kobles til pin 14. Alternativ 1: pin 2 high vil gi hele effektområdet til motorene. Alternativ 2: pin 2 low vil gi halvparten av effektområdet til motorene. Alternativ 3: pin 2 koblet til pin 14. Når du trykker på den øverste knappen på kanal 6, gir den hele spenningen til motorene. Når du trykker på den nederste knappen på kanal 6, gir den halve effektområdet til motorene.
Trinn 3: Slik kobler du til en mikrokontroller til grensesnittbrikken
Mikrokontrolleren din kan kommunisere hvis du bruker en
med grensesnittchippen over 3 ledninger. Pin 7 på grensesnittbrikken er inngangen til databiten. Når pinnen er lav er det en null databit. Når pinnen er høy er det en databit. Mikrokontrolleren må sende ut databiten før klokkepulsen. Databiten må være minst 40 oss lang. Pin 16 på grensesnittbrikken er inngangen for klokkebiten. Mikrokontrolleren din må sende en høy puls for minst 0,5 oss. Pinne 5 på grensesnittbrikken er en utgangspinne. Når denne pinnen går høyt, er det å la mikrokontrolleren vite at den er klar til å motta den neste kommandoen. Denne pinnen blir lav hvis grensesnittbrikken får et signal fra "VEX" -senderen. Denne pinnen vil også gå lavt og forbli lav hvis det var en kommunikasjonsfeil mellom mikrokontrolleren og grensesnittbrikken. Pinne 4 er en utgangspinne. Hvis det er en kommunikasjonsfeil mellom grensesnittbrikken og mikrokontrolleren, går denne pinnen høyt og holder seg høy. En tilbakestilling må gjøres for å fjerne denne feilen.
Trinn 4: Liste over kommandoer
Det er 32 kommandoer som grensesnittbrikken forstår. Alle kommandoene er 3 byte eller 24 bits lange. Formatet for kommandoene er som følger.
Den første byten som sendes er alltid kommandobyten som er nummeret til venstre på listen nedenfor. Den andre byten som sendes kan være en PWM -byte. Det er et tall mellom 0 og 50. Når en 0 er sendt, vil P. W. M. pulsen er lav, noe som betyr at motoren vil være av. Når tallet 50 sendes, vil P. W. M. pulsen er høy, noe som betyr at motoren vil være på med full effekt. Når tallet 25 sendes, vil motoren gå på omtrent halv kraft. Som sett på listen er noen ganger den andre byten bare 0 som bare brukes til en plassholder. Det påvirker ikke motoren. Den tredje byten som sendes kan være en PWM -byte eller et feilkontrollnummer. Eksempel: For å beordre motor 1 til å gå i full hastighet og motor 2 til å gå med halv hastighet fremover, vil kommandoen være. 1 50 25 For å beordre motor 7 til å gå bakover med 10% effekt, vil kommandoen være. 16 5 16 1 Motor 1 & 2 forover, PWM #, PWM #(ingen feilkontroll) 2 Motor 1 & 2 bakover, PWM #, PWM #(ingen feilkontroll) 3 Motor 1 fremover, PWM #, 3 4 Motor 1 bakover, PWM #, 4 5 Motor 2 forover, PWM #, 5 6 Motor 2 bakover, PWM #, 6 7 Motor 3 fremover, PWM #, 7 8 Motor 3 bakover, PWM #, 8 9 Motor 4 fremover, PWM #, 9 10 Motor 4 bakover, PWM #, 10 11 Motor 5 fremover, PWM #, 11 12 Motor 5 bakover, PWM #, 12 13 Motor 6 fremover, PWM #, 13 14 Motor 6 bakover, PWM #, 14 15 Motor 7 fremover, PWM #, 15 16 Motor 7 bakover, PWM #, 16 17 Motor 8 fremover, PWM #, 17 18 Motor 8 bakover, PWM #, 18 19 Alle motorer turtall, PWM #, 19 20 Motor 1 og 2 hastigheter, PWM #, PWM # (ingen feilkontroll) 21 Motor 1 & 2 stopp, X, 21 (pins lav) 22 Motor 1 stopp, 0, 22 (pins lav) 23 Motor 2 stopp, 0, 23 (pins lav) 24 Motor 3 stopp, 0, 24 (pins lav) 25 Motor 4 stopp, 0, 25 (pins lav) 26 Motor 5 stopp, 0, 26 (pins lav) 27 Motor 6 stopp, 0, 27 (pins lav) 28 Motor 7 stopp, 0, 28 (pinner lave) 29 Motor 8 stopp, 0, 29 (pinner lave) 30 Alle mo tors stopp, 0, 30 (pins lav) 31 Pin 14 høy, 0, 31 32 Pin 14 lav, 0, 32
Trinn 5: Pin -sammendrag
Inndatapinner
Pin 1 Hvis det går lavt, hviler det (MCLR) Pin 2 Hvis det er lavt, gir det bare halvparten av utgangen til motorene Pin 6 "VEX" -mottaker Pin 7 -kommandoer og data fra en annen mikrokontroller Pin 33 data avbryter Pin 11 + 5 volt Pin 32 + 5 volt Pin 12 ground Pin 31 ground Output Pins Pin 34 PWM for motor 1 Pin 35 Høy når joystick 1 er igjen Pin 36 High når joystick 1 er høyre Pin 37 P. W. M. for motor 2 Pin 38 Høy når joystick 2 er opp Pin 15 High når joystick 2 er nede Pin 16 P. W. M. for motor 3 Pin 17 Høy når joystick 3 er opp Pin 18 High når joystick 3 er nede Pin 23 P. W. M. for motor 4 Pin 24 Høy når joystick 4 er igjen Pin 25 High når joystick 4 er høyre Pin 26 P. W. M. for motor 5 Pinne 19 Høy når styrespaken 3 er oppe og den øverste knappen 5 er pinnen 20 Høy når styrespaken 3 er nede og den øverste knappen 5 er pinnen 21 P. W. M. for motor 6 Pin 22 High når joystick 4 er venstre og øverste knapp 5 er press Pin 27 High når joystick 4 er høyre og øverste knapp 5 er press Pin 28 P. W. M. for motor 7 Pinne 29 Høy når styrespaken 3 er oppe og den nederste knappen 5 er trykk på Pinne 30 Høy når styrespaken 3 er nede og den nedre knappen 5 er på Pinn 8 P. W. M. for motor 8 Pinne 9 Høy når joystick 4 er venstre og nederste knapp 5 er trykk Pin 10 High når joystick 4 er høyre og nederste knapp 5 er trykk Pin 14 Holder seg høyt når øverste knapp 6 er å trykke; går lavt når den nederste knappen 6 trykker på Pin 5 Forteller annen mikrokontroller at den kan sende den neste kommandoen Pin 4 Går høyt hvis en kommandofeil er oppdaget Alle de andre pinnene blir ikke brukt. Du trenger ikke å sette pull-ups på disse pinnene.