Wie erstelle ich einen AutoLacing-Schuh mit Arduino?

In der Neuzeit versuchen Wissenschaftler und Ingenieure, alles zu automatisieren. Es bedeutet, dass alles ohne menschliche Anstrengung von alleine funktioniert. In der Gesellschaft wurde ein sehr häufiges Problem festgestellt, dass manche Menschen Probleme haben, ihre Schnürsenkel selbst zu binden. Zu diesen Menschen zählen Behinderte, Menschen mit Rückenschmerzen, Kinder und bis zu einem gewissen Grad Blinde. Es muss also eine Lösung gefunden werden, damit diese Leute dies nicht als Problem ansehen.

Bild aus Instructables

In diesem Projekt werden wir eine Automatic Lacing-Show machen, bei der die Schnürsenkel ohne menschliche Anstrengung automatisch gebunden werden. Dies geschieht mit Hilfe einer Mikrocontroller-Platine, eines Motorschutzsensors und eines Servomotors, sobald man den Fuß in den Schuh setzt.

Wie Sie Ihre Show mit Arduino automatisch schnüren?

Lassen Sie uns nun, da wir die Zusammenfassung des Projekts kennen, weitere Informationen sammeln und die Vorgehensweise zur Herstellung dieses AutoLace-Schuhs mit Arduino durchgehen.

Schritt 1: Sammeln der Komponenten

Der beste Ansatz, um ein Projekt zu starten, besteht darin, eine Liste der Komponenten zu erstellen und eine kurze Untersuchung dieser Komponenten durchzuführen, da niemand nur wegen einer fehlenden Komponente in der Mitte eines Projekts bleiben möchte. Eine Liste der Komponenten, die wir in diesem Projekt verwenden werden, finden Sie unten:

Schritt 2: Studieren der Komponenten

Nachdem wir nun die Zusammenfassung unseres Projekts kennen und auch eine vollständige Liste aller Komponenten haben, lassen Sie uns einen Schritt voraus gehen und eine kurze Untersuchung der Komponenten durchführen, die wir verwenden werden.

Seeeduino v4.2 ist eines der besten Arduino-kompatiblen Boards der Welt, das auf dem Mikrocontroller Atmega 328 MCU basiert. weil es einfach zu bedienen, stabiler und besser aussieht als viele andere Boards. Es basiert auf dem Arduino Bootloader. Es verfügt über einen ATMEGA16U2 als UART-zu-USB-Wandler, von dem es als FTDI-Chip verwendet werden kann. Die Verbindung zum Computer erfolgt über ein Micro-USB-Kabel, das im Allgemeinen als Android-Kabel bezeichnet wird. Eine DC-Buchse kann auch zur Stromversorgung der Karte verwendet werden. Die Eingangsleistung muss zwischen 7V und 15V liegen.

Seeeduino Board

Mit Arduino Motor Shield können Sie die Motorrichtung und -geschwindigkeit mithilfe eines Arduino mühelos steuern. Indem Sie nur Arduino-Pins ansprechen können, können Sie problemlos jeden Motor in Ihr Unternehmen einbauen. Darüber hinaus haben Sie die Möglichkeit, einen Motor mit einer anderen Stromversorgung von bis zu 12 V zu steuern. Das Beste ist, dass der Schild sehr leicht zu finden ist. Aus all diesen Gründen ist das Arduino Motor Shield ein cooles kleines Element für schnelles Prototyping und allgemeine Experimente in Ihrem Arsenal.

Motorschild

Kraftsensorwiderstände (FSRs) sind sehr einfache und benutzerfreundliche Drucksensoren. Die Behinderung eines FSR hängt von dem Gewicht ab, das auf das Erfassungsgebiet ausgeübt wird. Je mehr Gewicht Sie anwenden, desto geringer ist der Widerstand. Der Hindernisbereich ist ziemlich groß:> 10 MΩ (kein Gewicht) bis ~ 200 Ω (maximales Gewicht). Die meisten FSRs können eine Leistung im Bereich von 100 g bis 10 kg erfassen. Ein FSR besteht aus zwei Schichten und einem Abstandskleber. Die leitenden Schichten sind durch einen schmalen Luftspalt isoliert, wenn kein Gewicht aufgebracht wird. Einer der Filme enthält zwei Spuren, die vom Schwanz bis zum Erfassungsbereich (dem runden Teil) verlaufen. Diese Spuren sind miteinander verwoben, berühren sich jedoch nicht. Der andere Film ist mit einer führenden Tinte bedeckt. Wenn Sie auf den Sensor drücken, schließt die Tinte die beiden Spuren zusammen mit einem Widerstand, der vom Gewicht abhängt.

Kraftsensor

Ein Servomotor ist ein rotierender oder linearer Aktuator, der in exakten Schritten gesteuert und bewegt werden kann. Diese Motoren unterscheiden sich von Gleichstrommotoren. Diese Motoren ermöglichen die präzise Steuerung von Winkel- oder Drehbewegungen. Dieser Motor ist mit einem Sensor gekoppelt, der eine Rückmeldung über seine Bewegung sendet.

Servo Moto

Schritt 3: Arbeitsprinzip

Das Arbeitsprinzip dieses Projekts ist sehr einfach. Ein Kraftsensor wird verwendet, um zu erkennen, ob der Fuß in der Show platziert ist oder nicht. Wenn es den Fuß erkennt, sendet es ein Signal an das Arduino-Board, das einen Servomotor mit Hilfe eines Arduino Motor Shield bewegt. Dieser Servomotor bewegt sich so, dass alle Schnürsenkel gleichzeitig gezogen werden. Daher werden automatisch alle Schnürsenkel des Schuhs gebunden.

Schritt 4: Zusammenbau der Komponenten

Nachdem wir nun die Hauptidee und das Arbeitsprinzip hinter diesem Projekt kennen, lassen Sie uns einen Schritt voraus gehen und alles zusammenstellen, um eine Show zu erstellen, die sich automatisch von selbst löst. Führen Sie die folgenden Schritte aus, um ein Endprodukt herzustellen:

  1. Schneiden Sie zunächst eine kleine Metallplatte so, dass sie auf der Rückseite der Show befestigt ist. Verwenden Sie einen Kunststoff, damit er dauerhaft fixiert und sich nicht löst. Stellen Sie sicher, dass Sie eine Lücke zwischen der Metallplatte und der Show lassen, da wir einige Kabelbinder für diese Lücke führen.
  2. Nehmen Sie nun zwei Servomotoren und befestigen Sie sie mit Heißkleber an der Metallplatte. Um dies dauerhaft zu fixieren, verwenden Sie Kabelbinder um sie herum, damit sich diese Servomotoren später nicht bewegen. Nachdem die Servomotoren auf Tempo sind, schneiden Sie das verbleibende zusätzliche Kabel ab.
  3. Montieren Sie nun ein Batteriegehäuse so unter den Motoren, dass der Netzschalter nach außen zeigt.
  4. Befestigen Sie nun die Arduino-Platine an den Motoren. Bevor Sie die Motorabschirmung mit dem Arduino verbinden, müssen einige Dinge zur Schaltung hinzugefügt werden.
  5. Nehmen Sie eine LED und löten Sie einen Widerstand an den positiven Schenkel und ein kurzes Stück Draht an den negativen Schenkel und den anderen Schenkel des Widerstands. Schließen Sie diese Baugruppe dann an den Arduino an und schieben Sie sie in eine der nicht verwendeten Schnürsenkelbuchsen.
  6. Nehmen Sie nun einen Kraftsensor und legen Sie ihn in Ihre Schuhe, wo Ihre Ferse ruht. Es wird nicht empfohlen, die Stifte des Kraftsensors zu löten, da die Wärme des Lötkolbens den Kunststoff des Sensors wegschmelzen kann. Es ist also besser, wenn Sie es kleben oder mit Klebeband versehen.
  7. Verwenden Sie zum Schluss einen Kabelbinder, um alle Schnürsenkel am Servomotor zu befestigen, sodass beim Drehen des Motors alle Schnürsenkel gleichzeitig gezogen werden.

Stellen Sie sicher, dass das Pluskabel der LED an Pin2 von Arduino angeschlossen ist. Der Vcc- und Erdungsstift des Kraftsensors werden mit 5 V und Masse des Arduino verbunden, und der IN-Stift des Kraftsensors wird mit dem A0-Stift der Arduino-Platine verbunden. Stecken Sie zum Schluss die Servomotorstifte vorsichtig in die Motorabschirmung, damit Sie keine falsche Verbindung herstellen.

Schritt 5: Erste Schritte mit Arduino

Wenn Sie mit Arduino IDE noch nicht vertraut sind, machen Sie sich keine Sorgen, denn unten sehen Sie klare Schritte zum Brennen von Code auf der Mikrocontroller-Karte mit Arduino IDE. Sie können die neueste Version von Arduino IDE von herunterladen Hier und befolgen Sie die unten genannten Schritte:

  1. Wenn die Arduino-Karte an Ihren PC angeschlossen ist, öffnen Sie “Systemsteuerung” und klicken Sie auf “Hardware und Sound”. Klicken Sie dann auf “Geräte und Drucker”. Suchen Sie den Namen des Ports, an den Ihre Arduino-Karte angeschlossen ist. In meinem Fall ist es “COM14”, aber es kann auf Ihrem PC anders sein.Port finden
  2. Wir müssen eine Bibliothek einbinden, um den Servomotor verwenden zu können. Die Bibliothek ist unten im Download-Link zusammen mit dem Code angehängt. Gehen Sie zu Skizze> Bibliothek einschließen> ZIP-Bibliothek hinzufügen. Bibliothek einschließen
  3. Öffnen Sie nun die Arduino IDE. Stellen Sie unter Tools die Arduino-Karte auf Arduino / Genuino UNO ein.Board einstellen
  4. Stellen Sie im selben Tool-Menü die Portnummer ein, die Sie in der Systemsteuerung gesehen haben.Port einstellen
  5. Laden Sie den unten angehängten Code herunter und kopieren Sie ihn in Ihre IDE. Um den Code hochzuladen, klicken Sie auf die Schaltfläche Hochladen.Hochladen

Sie können den Code von herunterladen Klicken Sie hier.

Schritt 6: Code

Der Code ist ziemlich gut kommentiert und selbsterklärend. Trotzdem wird der Code unten kurz erklärt.

1. Zu Beginn ist eine spezielle Bibliothek enthalten, damit der Servomotor in die Mikrocontroller-Karte integriert und über diese programmiert werden kann. Es werden zwei Objekte erstellt, die mit dem Servomotor verwendet werden sollen. Einige Pins oder Arduino werden initialisiert, die mit dem Motortreiber verbunden werden, und einige Variablen werden ebenfalls deklariert, die einige temporäre Werte speichern, die später im Hauptprogramm verwendet werden.

einschließen <Servo.h> // Bibliothek zur Schnittstelle des Servomotors mit der Mikrocontroller-Karte einschließen Servo myservo; // erstellt Servoobjekt 1 Servo myservo2; // Servoobjekt 2 erstellen int forcePin = 0; // analoger Pin 0 mit Kraftsensor verbunden int ledPin = 2; // digitaler Pin 2 an LED angeschlossen int switchPin = 19; // setzt den Entriegelungsschalter auf analogen Pin 5 int valF; // Wert des Kraftsensors int valS; // Wert des Schalters int thresHold = 500; // definiert die Druckschwelle des Kraftsensors int servoUnlock = 0; // setzt das Hauptservo auf die neutrale Position (0 Grad) int servoLock = 180; // setzt das Hauptservo auf die geschnürte Position (180 Grad) int servoUnlock2 = 180; // setzt das Hilfsservo auf neutrale Position (0 Grad) int servoLock2 = 0; // setzt das Hilfsservo auf geschnürte Position (180 Grad)

2. void setup () ist eine Funktion, die beim Start nur einmal ausgeführt wird, wenn der Mikrocontroller eingeschaltet oder die Aktivierungstaste gedrückt wird. In dieser Funktion werden die Pins des Arduino initialisiert, um als INPUT oder OUTPUT verwendet zu werden. Objekte, die zuvor für den Servomotor erstellt wurden, werden verwendet, um den Servomotor an dem spezifischen Pin der Arduino-Platine zu befestigen, und das Servo wird in den ursprünglichen Zustand ohne Schnürung gebracht. In dieser Funktion wird auch die Baudrate eingestellt. Die Baudrate ist die Geschwindigkeit in Bit pro Sekunde, mit der der Mikrocontroller mit den angeschlossenen externen Geräten kommuniziert.

void setup () {Serial.begin // Einstellen der Baudrate des PinMode des Mikrocontrollers (ledPin, OUTPUT); // digitaler Pin 2 wird für LED PinMode ausgegeben (switchPin, INPUT); // Analoger Pin 5 ist Eingang für Schalter myservo.attach (9); // bringt die Servos an die Pins 9 an myservo2.attach (10); // hängt die Servos an die Pins 10 an myservo.write (servoUnlock); // Servo 1 in nicht platzierte Positionen bringen myservo2.write (servoUnlock2); // Servo 2 in nicht geschnürte Positionen bringen}

3. void loop () ist eine Funktion, die wiederholt in einer Schleife ausgeführt wird. Zunächst wird ein Analogwert vom Kraftsensor gelesen. Dann wartet es darauf, dass der Wert des Kraftsensors einen Schwellenwert überschreitet. Es wartet, bis sich der Fuß vollständig an seinem Platz festgesetzt hat, und versetzt beide Servos in eine Verriegelungsposition. Wenn die Schalter gedrückt werden, wird das Servo auf Entriegeln eingestellt und wartet, bis die LED sieben Mal blinkt.

void loop () {valF = analogRead (forcePin); // Wert des Kraftsensors lesen valS = digitalRead (switchPin); // Wert des Schalters lesen, wenn (valF> = thresHold) {// darauf wartet, dass der Kraftsensor die Druckschwelle erreicht oder überschreitet, und dann: delay (1000); // wartet darauf, dass sich der Fuß im Schuh festsetzt myservo2.write (servoLock2); // setzt das Hilfsservo auf die gesperrte Positionsverzögerung (1000); // wartet eine Sekunde myservo.write (servoLock); // setzt Hauptservo auf Locked Position Delay (1000); // wartet eine Sekunde digitalWrite (ledPin, HIGH); // schaltet die LED ein, bis das Servo entsperrt ist. Entfernen Sie diese Leitung, um die Batterielebensdauer zu verlängern. } if (valS == HIGH) {// wartet darauf, dass der Schalter gedrückt wird, und dann: myservo2.write (servoUnlock2); // entsperrt die zusätzliche Servoverzögerung (1000); // wartet zwei Sekunden myservo.write (servoUnlock); // entsperrt die Hauptservoverzögerung (500); // warten, dann LED 7 mal blinken digitalWrite (ledPin, LOW); Verzögerung (200); digitalWrite (ledPin, HIGH); Verzögerung (200); digitalWrite (ledPin, LOW); Verzögerung (200); digitalWrite (ledPin, HIGH); Verzögerung (200); digitalWrite (ledPin, LOW); Verzögerung (200); digitalWrite (ledPin, HIGH); Verzögerung (200); digitalWrite (ledPin, LOW); Verzögerung (200); digitalWrite (ledPin, HIGH); Verzögerung (200); digitalWrite (ledPin, LOW); Verzögerung (200); digitalWrite (ledPin, HIGH); Verzögerung (200); digitalWrite (ledPin, LOW); Verzögerung (200); digitalWrite (ledPin, HIGH); Verzögerung (200); digitalWrite (ledPin, LOW); Verzögerung (200); digitalWrite (ledPin, HIGH); Verzögerung (200); digitalWrite (ledPin, LOW); // schaltet LED aus Verzögerung (1000); }}

Das war also das ganze Verfahren, um eine Show zu machen, die ihre Schnürsenkel mithilfe eines Servomotors, eines Mikrocontrollers und eines Motorschilds automatisch von selbst bindet. Nachdem Sie diesen gesamten Vorgang kennen, können Sie Ihre AutoLacing-Show bei Ihnen zu Hause genießen.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *