Hur man gör en autosnörningsko med Arduino?

Under den moderna eran försöker forskare och ingenjörer göra allt automatiserat. Det betyder att allt kommer att fungera på egen hand utan någon mänsklig ansträngning. Ett mycket vanligt problem identifierades i samhället att vissa människor har problem med att binda sina skosnören på egen hand. Dessa personer inkluderar funktionshindrade, personer med ryggsmärta, barn och blinda till viss del. Så en lösning ska göras så att dessa människor inte ser detta som ett problem.



Bild tagen från instruktioner

I det här projektet ska vi göra en automatisk snörningsshow som automatiskt knyter snöret utan mänsklig ansträngning. Det kommer att göra det med hjälp av mikrokontrollkort, en motorskyddssensor och en servomotor så snart en placerar foten inuti skon.



Hur automatiskt spetsar din show med Arduino?

Nu, som vi känner till sammandraget av projektet, låt oss börja samla in mer information och gå igenom proceduren för hur man gör denna AutoLace-sko med Arduino.



Steg 1: Samla in komponenterna

Det bästa sättet att starta något projekt är att göra en lista över komponenter och gå igenom en kort studie av dessa komponenter eftersom ingen vill sticka mitt i ett projekt bara på grund av en saknad komponent. En lista över komponenter som vi ska använda i detta projekt ges nedan:



  • Arduino uno
  • Motorsköld
  • Servomotor
  • Tvinga
  • LED
  • 1k-ohm motstånd
  • Sko
  • Metal Strip
  • Dragkedjor av plast
  • 1/8
  • Bygeltrådar
  • Batteri

Steg 2: Studera komponenterna

Nu när vi vet abstrakt av vårt projekt och vi också har en komplett lista över alla komponenter, låt oss gå ett steg framåt och gå igenom en kort studie av de komponenter vi ska använda.

Seeeduino v4.2 är en av de bästa Arduino-kompatibla korten i världen som är baserad på mikrokontrollern Atmega 328 MCU. eftersom det är lätt att använda, mer stabilt och det ser bättre ut än många andra brädor. Den är baserad på Arduino bootloader. den har en ATMEGA16U2 som en UART-till-USB-omvandlare eftersom den kan användas som ett FTDI-chip. den är ansluten till datorn med en mikro-USB-kabel som vanligtvis kallas en Android-kabel. Ett DC-uttag kan också användas för att driva kortet. ingångseffekten måste vara från 7V till 15V.

Seeeduino styrelse



Arduino Motor Shield gör att du enkelt kan styra motorns riktning och hastighet med hjälp av en Arduino. Genom att låta dig bara adressera Arduino-stift gör det det enkelt att köra vilken motor som helst i ditt företag. Det ger dig dessutom möjlighet att styra en motor med en annan strömförsörjning på upp till 12v. Bäst av allt är att skölden är väldigt lätt att hitta. Av alla dessa skäl är Arduino Motor Shield en cool liten att ha i din arsenal för snabb prototypning och allmänt experiment.

Motorsköld

Motstånd för kraftsensorer (FSR) är mycket enkla och lätta att använda trycksensorer. Hindringen av en FSR är beroende av vikten som appliceras på detekteringsområdet. Ju mer vikt du tillämpar, desto lägre är oppositionen. Hinderområdet är ganska stort:> 10 MΩ (ingen vikt) till ~ 200 Ω (max vikt). De flesta FSR kan upptäcka effekt inom ramen 100 till 10 kg. En FSR består av två lager och ett distanslim. De ledande skikten isoleras med ett tunt luftspalt när ingen vikt appliceras. En av filmerna innehåller två spår från svansen till detekteringsområdet (den runda delen). Dessa spår är vävda ihop, men kommer inte i kontakt. Den andra filmen är täckt med en ledande bläck. När du trycker på sensorn kortsluter bläcket de två spåren tillsammans med en motstånd som bygger på vikten.

Kraftsensor

TILL Servomotor är en roterande eller en linjär manöverdon som kan styras och flyttas i exakt steg. Dessa motorer skiljer sig från likströmsmotorer. Dessa motorer möjliggör exakt kontroll av vinkel- eller rotationsrörelse. Denna motor är kopplad till en sensor som skickar feedback om sin rörelse.

Servomoto

Steg 3: Arbetsprincip

Arbetsprincipen för detta projekt är mycket enkel. En kraftsensor kommer att användas för att upptäcka om foten placeras i showen eller inte. Om den upptäcker foten kommer den att skicka en signal till Arduino-kortet som flyttar en servomotor med hjälp av en Arduino Motor Shield. Denna servomotor kommer att röra sig på ett sådant sätt att den drar i alla snören samtidigt. Därför knyter man automatiskt alla skosnören.

Steg 4: Montering av komponenterna

Nu som vi känner till huvudidén och arbetsprincipen bakom detta projekt, låt oss gå ett steg framåt och börja montera allt för att göra en show som automatiskt kommer att sänka sig själv. För att skapa en slutprodukt, gå igenom stegen nedan:

  1. Trimma först en liten metallplatta så att den fixeras på baksidan av showen. Använd en syntet så att den fixeras permanent och inte lossnar. Se till att du lämnar ett mellanrum mellan metallplattan och utställningen eftersom vi kommer att föra några kabelband från det gapet.
  2. Ta nu två servomotorer och fäst dem på metallplattan med varmt lim. Nu för att göra detta fixat permanent, använd dragkedjor runt dem så att dessa servomotorer inte rör sig senare. När servomotorerna är i takt, klipp av den extra kabeln som finns kvar.
  3. Montera nu ett batterifodral under motorerna så att strömbrytaren är utåt.
  4. Fäst nu Arduino-kortet på motorerna. Innan du ansluter motorskyddet till Arduino måste några saker läggas till i kretsen.
  5. Ta en lysdiod och löd ett motstånd mot dess positiva ben och löd en kort tråd till det negativa benet och det andra benet på motståndet. Anslut sedan denna enhet till Arduino och skjut den till en av de oanvända skosnören.
  6. Ta nu en Kraftsensor och placera den i dina skor där din häl kommer att vila. Det rekommenderas inte att löda stiften på kraftsensorn eftersom värmen från lödkolven kan smälta bort sensorns plast. Så det är bättre om du limmer det eller tejper det.
  7. Slutligen använd en dragkedja för att binda alla snören till servomotorn, så att när motorn roterar drar den alla snören åt gången.

Se till att den positiva ledningen på lysdioden är ansluten till pin2 på Arduino. Kraftsensorns Vcc och jordstift kommer att anslutas till 5V och jord på Arduino och IN-stift på kraftsensorn kommer att anslutas till A0-stiftet på Arduino-kortet. Anslut slutligen servomotorns stift till motorskyddet så att du inte gör fel anslutning.

Steg 5: Komma igång med Arduino

Om du inte känner till Arduino IDE tidigare, oroa dig inte för nedan kan du se tydliga steg för att bränna kod på mikrokontrollkortet med Arduino IDE. Du kan ladda ner den senaste versionen av Arduino IDE från här och följ stegen nedan:

  1. När Arduino-kortet är anslutet till din dator öppnar du 'Kontrollpanelen' och klickar på 'Hårdvara och ljud'. Klicka sedan på “Enheter och skrivare”. Hitta namnet på den port som Arduino-kortet är anslutet till. I mitt fall är det “COM14” men det kan vara annorlunda på din dator.

    Hitta port

  2. Vi måste inkludera ett bibliotek för att använda Servo Motor. Biblioteket bifogas nedan i nedladdningslänken tillsammans med koden. Gå till Skiss> Inkludera bibliotek> Lägg till .ZIP-bibliotek.

    Inkludera bibliotek

  3. Öppna nu Arduino IDE. Från Verktyg ställer du Arduino-kortet till Arduino / Genuino UNO.

    Inställningsbräda

  4. Från samma verktygsmeny ställer du in portnumret som du såg på kontrollpanelen.

    Ställ in port

  5. Ladda ner koden som bifogas nedan och kopiera den till din IDE. Klicka på uppladdningsknappen för att ladda upp koden.

    Ladda upp

Du kan ladda ner koden genom att klicka här.

Steg 6: Kod

Koden är ganska bra kommenterad och självförklarande. Men ändå förklaras koden kort nedan.

1. I början ingår ett specialbibliotek så att servomotorn kan integreras med mikrokontrollkortet och programmeras genom det. Två objekt skapas för att användas med servomotorn. vissa stift eller Arduino initialiseras som kommer att anslutas till motorföraren och vissa variabler deklareras också som sparar tillfälliga värden som senare kommer att användas i huvudprogrammet.

#include // inkludera bibliotek för att ansluta servomotor med mikrocontroller-kort Servo myservo; // skapar servoobjekt 1 Servo myservo2; // skapa servoobjekt 2 int forcePin = 0; // analog stift 0 ansluten till kraftsensor int ledPin = 2; // digital stift 2 ansluten till LED int switchPin = 19; // ställer upplåsningsomkopplare till analog stift 5 int valF; // värde för kraftsensor int valS; // värde för switch int threshold = 500; // definierar trycktröskel för kraftsensor int servoUnlock = 0; // ställer huvudservo till neutralt olätat läge (0 grader) int servoLock = 180; // ställer huvud servo till snört läge (180 grader) int servoUnlock2 = 180; // ställer extra servo till neutralt oljat läge (0 grader) int servoLock2 = 0; // ställer extra servo till snörat läge (180 grader)

2. ogiltig installation () är en funktion som bara körs en gång i starten när mikrokontrollern slås på eller aktiverings-knappen trycks in. I den här funktionen initialiseras stiften på Arduino för att användas som INPUT eller OUTPUT. Objekt som skapades för servomotor tidigare används för att fästa servomotorn till den specifika stiftet på Arduino-kortet och servon flyttas till det ursprungliga olastade tillståndet. Baud Rate ställs också in i denna funktion. Baud Rate är hastigheten i bitar per sekund med vilken mikrokontrollern kommunicerar med de anslutna externa enheterna.

void setup () {Serial.begin // ställer in baudhastigheten för mikrokontroller pinMode (ledPin, OUTPUT); // digital pin 2 matas ut för LED pinMode (switchPin, INPUT); // analog stift 5 är ingång för switch myservo.attach (9); // fäster servon på stift 9 myservo2.attach (10); // fäster servon på stift 10 myservo.write (servoUnlock); // flytta servo 1 till unlaced positioner myservo2.write (servoUnlock2); // flytta servo 2 till olastade positioner}

3. ogiltig slinga () är en funktion som körs upprepade gånger i en slinga. Först läses ett analogt värde av kraftsensorn. Sedan väntar det på att värdet på kraftsensorn ska passera ett tröskelvärde. Den kommer att vänta på att foten har lagt sig helt och hållet och kommer att sätta båda servorna i låst läge. Om omkopplarna trycks in kommer servon att ställas in för att låsa upp och vänta tills lysdioden blinkar sju gånger.

void loop () {valF = analogRead (forcePin); // läsvärde för kraftsensor valS = digitalRead (switchPin); // avläsningsvärdet för omkopplaren om (valF> = tröskhåll) {// väntar på att kraftsensorn är lika med eller passerar tröskelvärdet och sedan: fördröjning (1000); // väntar på att foten ska sätta sig på plats i sko myservo2.write (servoLock2); // ställer extra servo till låst positionfördröjning (1000); // väntar en sekund myservo.write (servoLock); // ställer huvud servo till låst position fördröjning (1000); // väntar en sekund digitalWrite (ledPin, HIGH); // tänder LED tills servo är olåst. Ta bort den här linjen för att spara batteritid. } om (valS == HIGH) {// väntar på att omkopplaren ska tryckas, och sedan: myservo2.write (servoUnlock2); // låser upp extra servofördröjning (1000); // väntar två sekunder myservo.write (servoUnlock); // låser upp huvud servofördröjning (500); // vänta, sedan blinka LED 7 gånger digitalWrite (ledPin, LOW); fördröjning (200); digitalWrite (ledPin, HIGH); fördröjning (200); digitalWrite (ledPin, LOW); fördröjning (200); digitalWrite (ledPin, HIGH); fördröjning (200); digitalWrite (ledPin, LOW); fördröjning (200); digitalWrite (ledPin, HIGH); fördröjning (200); digitalWrite (ledPin, LOW); fördröjning (200); digitalWrite (ledPin, HIGH); fördröjning (200); digitalWrite (ledPin, LOW); fördröjning (200); digitalWrite (ledPin, HIGH); fördröjning (200); digitalWrite (ledPin, LOW); fördröjning (200); digitalWrite (ledPin, HIGH); fördröjning (200); digitalWrite (ledPin, LOW); fördröjning (200); digitalWrite (ledPin, HIGH); fördröjning (200); digitalWrite (ledPin, LOW); // stänger av LED-fördröjning (1000); }}

Så detta var hela proceduren för att göra en show som automatiskt binder sina spetsar av sig själv med hjälp av en servomotor, mikrokontroller och en motorsköld. Nu som du vet hela proceduren kan du njuta av att göra din AutoLacing Show hemma.