Hvordan lage en autosko med Arduino?

I moderne tid prøver forskere og ingeniører å gjøre alt automatisert. Det betyr at alt vil fungere alene uten menneskelig innsats. Et veldig vanlig problem ble identifisert i samfunnet at noen mennesker har problemer med å binde skolissene av seg selv. Disse menneskene inkluderer funksjonshemmede, personer med ryggsmerter, barn og blinde mennesker til en viss grad. Så det skal lages en løsning slik at disse menneskene ikke ser på dette som et problem.

I dette prosjektet skal vi lage et automatisk snørreshow som automatisk knytter snørene uten menneskelig innsats. Det vil gjøre det ved hjelp av mikrokontrollerkort, en motorskjoldsensor og en servomotor, så snart en plasserer foten inne i skoen.

Hvordan autolace showet ditt ved hjelp av Arduino?

Nå som vi vet sammendraget av prosjektet, la oss begynne å samle inn mer informasjon og gå gjennom fremgangsmåten for hvordan du lager denne AutoLace-skoen ved hjelp av Arduino.

Trinn 1: Samle komponentene

Den beste tilnærmingen for å starte et prosjekt er å lage en liste over komponenter og gå gjennom en kort studie av disse komponentene, fordi ingen vil holde seg midt i et prosjekt bare på grunn av en manglende komponent. En liste over komponenter som vi skal bruke i dette prosjektet er gitt nedenfor:

Trinn 2: Studere komponentene

Nå som vi vet sammendraget av prosjektet vårt, og vi også har en komplett liste over alle komponentene, la oss gå et skritt videre og gå gjennom en kort studie av komponentene vi skal bruke.

Seeeduino v4.2er et av de beste Arduino-kompatible kortene i verden som er basert på mikrokontroller Atmega 328 MCU. fordi den er enkel å bruke, mer stabil og den ser bedre ut enn mange andre brett. Den er basert på Arduino bootloader. den har en ATMEGA16U2 som en UART-til-USB-omformer fordi den kan brukes som en FTDI-brikke. den er koblet til datamaskinen ved hjelp av en mikro-USB-kabel som vanligvis kalles en android-kabel. En DC-kontakt kan også brukes til å drive tavlen. inngangseffekten må være fra 7V til 15V.

Arduino Motor Shield lar deg enkelt kontrollere motorretning og hastighet ved å bruke en Arduino. Ved å gjøre det mulig å bare adressere Arduino-pinner, gjør det det enkelt å kjøre hvilken som helst motor inn i virksomheten din. Det gir deg også muligheten til å kontrollere en motor med en annen strømforsyning på opptil 12V. Best av alt, skjoldet er veldig lett å finne. Av alle disse grunnene er Arduino Motor Shield en kul liten å ha i arsenalet ditt for rask prototyping og generell eksperimentering.

Motstander for kraftfølere (FSR)er veldig enkle og brukervennlige trykksensorer. Hindringen av en FSR er avhengig av vekten som påføres detekterende territoriet. Jo mer vekt du legger på, jo lavere opposisjon. Blokkeringsområdet er ganske stort:> 10 MΩ (uten vekt) til ~ 200 Ω (maks vekt). De fleste FSR-er kan oppdage kraft i omfanget fra 100 g til 10 kg. En FSR består av to lag og et avstandslim. De ledende lagene er isolert med et tynt luftgap når det ikke påføres vekt. En av filmene inneholder to spor som løper fra halen til detekteringsområdet (den runde delen). Disse sporene er vevd sammen, men ikke i kontakt. Den andre filmen er dekket med ledende blekk. Når du skyver på sensoren, korte blekk de to sporene sammen med en motstand som er avhengig av vekten.

EN Servo motorer en roterende eller en lineær aktuator som kan styres og flyttes i nøyaktig trinn. Disse motorene er forskjellige fra DC-motorer. Disse motorene tillater presis kontroll av vinkel- eller rotasjonsbevegelse. Denne motoren er koblet til en sensor som sender tilbakemelding om bevegelsen.

Trinn 3: Arbeidsprinsipp

Arbeidsprinsippet til dette prosjektet er veldig enkelt. En styrkesensor vil bli brukt til å oppdage om foten er plassert i showet eller ikke. Hvis den oppdager foten, vil den sende et signal til Arduino-kortet som vil flytte en servomotor ved hjelp av et Arduino Motor Shield. Denne servomotoren vil bevege seg på en slik måte at den vil trekke i alle blonder samtidig. Derfor knytter du automatisk alle snørene på skoen.

Trinn 4: Montering av komponentene

Nå som vi kjenner hovedideen og arbeidsprinsippet bak dette prosjektet, la oss gå et skritt foran og begynne å samle alt for å lage et show som automatisk vil lase seg selv. For å lage et sluttprodukt, gå gjennom trinnene nedenfor:

  1. Først og fremst skal du trimme en liten metallplate slik at den er festet på baksiden av showet. Bruk syntetisk slik at den fikser seg permanent og ikke løsner. Forsikre deg om at du legger igjen et gap mellom metallplaten og showet, fordi vi vil passere noen bånd fra det gapet.
  2. Ta nå to servomotorer og fest dem til metallplaten med varmt lim. Nå for å gjøre dette løst permanent, bruk glidelåser rundt dem slik at disse servomotorene ikke beveger seg senere. Etter at servomotorene er i fart, kutter du den ekstra kabelen som er igjen.
  3. Monter nå et batterikasse under motorene slik at strømbryteren er utover.
  4. Fest nå Arduino-kortet på motorene. Før du kobler motorskjoldet til Arduino, må noen ting legges til i kretsen.
  5. Ta en LED og lodd en motstand til det positive benet og lodd en kort ledning til det negative benet og det andre benet på motstanden. Koble deretter denne enheten til Arduino og skyv den til en av de ubrukte skolissekontaktene.
  6. Nå tar du en Kraftsensorog plasser den i skoene der hælen hviler. Det anbefales ikke å lodde tappene på kraftsensoren fordi varmen fra loddekolben kan smelte bort sensoren. Så det er bedre hvis du limer det eller teip det.
  7. Til slutt bruker du en glidelås for å knytte alle snørebåndene til servomotoren, slik at når motoren roterer, trekker den alle snørebåndene samtidig.

Forsikre deg om at den positive ledningen på LED-en er koblet til pin2 på Arduino. Vcc og jordpinnen til Force Sensor vil bli koblet til 5V og bakken til Arduino, og IN-pinnen til force sensoren vil bli koblet til A0-pinnen på Arduino-kortet. Til slutt kobler du servomotorpinnene til motorskjoldet forsiktig slik at du ikke lager feil tilkobling.

Trinn 5: Komme i gang med Arduino

Hvis du ikke er kjent med Arduino IDE før, ikke bekymre deg, for nedenfor kan du se klare trinn for å brenne kode på mikrokontrollerkortet ved hjelp av Arduino IDE. Du kan laste ned den nyeste versjonen av Arduino IDE herfra og følge trinnene nevnt nedenfor:

  1. Når Arduino-kortet er koblet til PC-en, åpner du "Kontrollpanel" og klikker på "Maskinvare og lyd". Klikk deretter på "Enheter og skrivere". Finn navnet på porten som Arduino-kortet ditt er koblet til. I mitt tilfelle er det “COM14”, men det kan være annerledes på PC-en din.
  2. Vi må ta med et bibliotek for å bruke Servo Motor. Biblioteket er vedlagt nedenfor i nedlastningskoblingen sammen med koden. Gå til Skisse> Inkluder bibliotek> Legg til .ZIP-bibliotek.
  3. Åpne nå Arduino IDE. Fra Verktøy, sett Arduino-kortet til Arduino / Genuino UNO.
  4. Fra den samme verktøymenyen angir du portnummeret du så i kontrollpanelet.
  5. Last ned koden som er vedlagt nedenfor, og kopier den til IDE. For å laste opp koden, klikk på opplastingsknappen.

Du kan laste ned koden ved å klikke her.

Trinn 6: Kode

Koden er ganske godt kommentert og selvforklarende. Men likevel blir koden kort forklart nedenfor.

1. I starten er et spesialbibliotek inkludert, slik at servomotoren kan integreres med mikrokontrollerkortet og programmeres gjennom det. To gjenstander er laget for å brukes med servomotoren. noen pinner eller Arduino er initialisert som vil bli koblet til motordriveren, og noen variabler er også erklært som vil lagre noen midlertidige verdier som senere vil bli brukt i hovedprogrammet.

#inkludere       // inkluderer bibliotek for å grensesnitt servomotor med mikrocontroller bord Servo myservo; // oppretter servoobjekt 1 Servo myservo2; // lage servoobjekt 2 int forcePin = 0; // analog pin 0 koblet til tvangssensor int ledetPin = 2; // digital pin 2 koblet til LED int switchPin = 19; // stiller opp låsebryter til analog pin 5 int valF; // verdi av kraftfølers int valS; // verdi av bryter int terskHold = 500; // definerer trykkfølerens trykkterskel int servoUnlock = 0; // setter hovedservo til nøytral ulastet posisjon (0 grader) int servoLock = 180; // stiller hoved servo til snoet posisjon (180 grader) int servoUnlock2 = 180; // setter hjelpeservo til nøytral unlaced posisjon (0 grader) int servoLock2 = 0; // setter hjelpeservo til snørt posisjon (180 grader)

2. ugyldig oppsett ()er en funksjon som bare kjører en gang i starten når mikrokontrolleren slås på eller aktiveringsknappen trykkes. I denne funksjonen initialiseres pinnene til Arduino for å brukes som INPUT eller OUTPUT. Objekter som ble opprettet for servomotor før, blir brukt til å feste servomotoren til den spesifikke stiften på Arduino-kortet, og servoen flyttes til den opprinnelige ulastede tilstanden. Baudrate er også angitt i denne funksjonen. Baudrate er hastigheten i bits per sekund som mikrokontrolleren kommuniserer med de tilkoblede eksterne enhetene.

void setup () {Serial.begin // setting the baud rate of the microcontroller pinMode (ledPin, OUTPUT); // digital pin 2 er utgang for LED pinMode (switchPin, INPUT); // analog pin 5 er inngang for bryter myservo.attach (9); // fester servoene til pinner 9 myservo2.attach (10); // fester servoene til pinner 10 myservo.write (servoUnlock); // flytt servo 1 til unlaced posisjoner myservo2.write (servoUnlock2); // flytt servo 2 til unlaced posisjoner}

3. ugyldig sløyfe ()er en funksjon som går gjentatte ganger i en løkke. For det første leses en analog verdi av kraftføleren. Deretter venter den på at verdien til kraftføleren skal passere en terskelverdi. Den vil vente på at foten helt skal sette seg på plass og vil sette begge servoene i en låsestilling. Hvis bryterne trykkes inn, vil servoen være satt til å låse opp og vente til LED-lampen vil blinke syv ganger.

ugyldig sløyfe () {valF = analogRead (forcePin); // leseverdi av kraftføler valS = digitalRead (switchPin); // leseverdi for bryter hvis (valF> = terskHold) {// venter på at kraftføleren skal være lik eller passere trykkterskelen og deretter: forsinkelse (1000); // venter på at foten skal sette seg på plass i sko myservo2.write (servoLock2); // stiller hjelpeservo til forsinket låst posisjon (1000); // venter ett sekund myservo.write (servoLock); // stiller hoved servo til forsinket låst posisjon (1000); // venter ett sekund digitalWrite (ledPin, HIGH); // slår på LED til servo ulåst. Fjern denne linjen for å spare batterilevetid. } hvis (valS == HIGH) {// venter på at bryteren skal trykkes, og deretter: myservo2.write (servoUnlock2); // låser opp tilleggsservoforsinkelse (1000); // venter to sekunder myservo.write (servoUnlock); // låser opp hoved servoforsinkelse (500); // vent, så blink LED 7 ganger digitalWrite (ledPin, LOW); forsinkelse (200); digitalWrite (ledPin, HIGH); forsinkelse (200); digitalWrite (ledPin, LOW); forsinkelse (200); digitalWrite (ledPin, HIGH); forsinkelse (200); digitalWrite (ledPin, LOW); forsinkelse (200); digitalWrite (ledPin, HIGH); forsinkelse (200); digitalWrite (ledPin, LOW); forsinkelse (200); digitalWrite (ledPin, HIGH); forsinkelse (200); digitalWrite (ledPin, LOW); forsinkelse (200); digitalWrite (ledPin, HIGH); forsinkelse (200); digitalWrite (ledPin, LOW); forsinkelse (200); digitalWrite (ledPin, HIGH); forsinkelse (200); digitalWrite (ledPin, LOW); forsinkelse (200); digitalWrite (ledPin, HIGH); forsinkelse (200); digitalWrite (ledPin, LOW); // slår LED av forsinkelse (1000); }}

Så dette var hele prosedyren for å lage et show som automatisk binder lissene av seg selv ved hjelp av en servomotor, mikrokontroller og et motorskjold. Nå som du vet hele fremgangsmåten, kan du glede deg over å lage AutoLacing Show hjemme hos deg.

Facebook Twitter Google Plus Pinterest