Inhaltsverzeichnis:

Makecourse: das einsame Boot - Gunook
Makecourse: das einsame Boot - Gunook

Video: Makecourse: das einsame Boot - Gunook

Video: Makecourse: das einsame Boot - Gunook
Video: Day 01 Professional Makeup Course || How to Know Skin type || Flawless Base || CTM || #beautyhacks 2024, November
Anonim
Image
Image
Materialliste
Materialliste

Dieses instructable wurde in Erfüllung der Projektanforderung des Makecourse an der University of South Florida (www.makecourse.com) erstellt.

Neu bei Arduino, 3D-Druck und computergestütztem Design (CAD)? Dieses Projekt ist eine großartige Möglichkeit, alle Grundlagen zu diesen Themen zu erlernen und bietet Raum für Ihre Kreativität! Es bietet viele CAD-Modelle für die Bootsstruktur, eine Einführung in autonome Systeme und stellt das Konzept der wasserdichten 3D-Drucke vor!

Schritt 1: Materialliste

Um mit dem Projekt zu beginnen, müssen Sie zuerst wissen, womit Sie arbeiten werden! Hier sind die Materialien, die Sie haben sollten, bevor Sie beginnen:

  • 1x Arduino Uno R3 Mikrocontroller und USB-Kabel (Amazon Link)
  • 1x L298N Motorcontroller (Amazon Link)
  • 4x (2 sind Backups) DC-Motoren 3-6V (Amazon Link)
  • 2x 28BYJ-48 Schrittmotoren und ULN2003 Module (Amazon Link)
  • 1x tragbares Telefonladegerät für die Stromversorgung (Hier ist das, das ich verwendet habe, es ist jedoch etwas groß. Sie können ein anderes verwenden, wenn es bevorzugt wird: Amazon Link)
  • 1x Ultraschall-HCSR04-Sensor (Dieser Link enthält ein paar Extras mit einigen Überbrückungsdrähten: Amazon Link)
  • 3x Packungen mit Überbrückungsdrähten (männlich-weiblich, männlich-männlich, weiblich-weiblich. Amazon Link)
  • 1x Dose Flex Seal (16-oz, Amazon Link)
  • 1x Malerband (Amazon Link)
  • 1x Schleifpapier mit feiner Körnung (ca. 300 ist gut)
  • Ein paar Eisstiele und Pinsel zum Auftragen von Flex Seal
  • Zugang zum 3D-Druck. (Hier ist ein relativ günstiger und effektiver 3D-Drucker - Amazon Link)

    • Rotes Filament für den 3D-Druck (Amazon Link.)
    • Schwarzes Filament für den 3D-Druck (Amazon Link)

Fühlen Sie sich frei, alle Materialien hinzuzufügen, die Sie für Ihre Version des Projekts haben!

Schritt 2: 3D-gedruckte Teile und Design

3D-gedruckte Teile und Design
3D-gedruckte Teile und Design
3D-gedruckte Teile und Design
3D-gedruckte Teile und Design

Der erste Teil dieses Projekts besteht darin, ein mechanisches System zu erstellen, in dem es funktioniert. Dies würde viele Teile umfassen, einschließlich Rumpf, Deckel, Paddel, Achsen für die Motoren zu den Paddeln, eine Halterung für den Sensor und die Achse, an der die Sensorhalterung sitzt.

Die Komponenten werden in SolidWorks konstruiert und zu einer Baugruppe zusammengefügt. Alle Teiledateien und die Baugruppe wurden in eine ZIP-Datei gepackt, die Sie am Ende dieses Schrittes finden. Beachten Sie, dass SolidWorks nicht die einzige CAD-Software ist, die Sie verwenden können, da viele Programme wie Inventor und Fusion360 für CAD verwendet werden können. Sie könnten SolidWorks-Teile darin importieren.

Es ist wichtig zu beachten, dass die Achsen, die die Paddel halten, konzentrisch zu den Löchern im Rumpf sind, um ein Verbiegen der Achse und ein direktes Ausfahren aus dem Boot zu vermeiden.

Alles an diesem Projekt ist 3D-gedruckt (ohne elektrische Komponenten), daher sind die Abmessungen wichtig. Ich habe den Teilen Toleranzen von etwa 0,01 Zoll gegeben, um sicherzustellen, dass alles zusammenpasst (ein bisschen wie eine lockere Passform). Es gab weniger Toleranz für die Achsen, die zum Motor führten, damit sie genau passen. Die Paddel sind fest mit der Achse verbunden, so dass sich die Paddel beim Einschalten der Motoren bewegen und das Boot antreiben.

Beim Betrachten des CAD werden Sie Plattformen für elektrische Komponenten bemerken. Dies dient dazu, dass die Komponenten in ihre Plattform "knallen", um zu verhindern, dass sie sich bewegen.

Die größten Drucke sind der Rumpf und der Deckel, also behalte dies beim Designen im Hinterkopf. Möglicherweise müssen Sie es in Teile aufteilen, da es zu groß wäre, um es auf einmal zu drucken.

Schritt 3: Steuerkreis

Steuerkreis
Steuerkreis
Steuerkreis
Steuerkreis

Hier besprechen wir den Stromkreis, der das Boot steuert. Ich habe einen Schaltplan von Fritzing, eine hilfreiche Software, die Sie hier herunterladen können. Es hilft bei der Erstellung von elektrischen Schaltplänen.

Nicht alle in diesem Projekt verwendeten Komponenten befinden sich in Fritzing, daher werden sie ersetzt. Der schwarze Fotosensor repräsentiert den HCSR04 Sensor und die kleine Halbbrücke ist der L298N Motorcontroller.

Der HCSR04 und L298N sind mit den Stromschienen auf dem Steckbrett verbunden, die wiederum mit der Stromseite des Arduino (an den 5V- und Massepins) verbunden sind. Die Echo- und Trigger-Pins des HCSR04 gehen jeweils auf die Pins 12 und 13 des Arduino.

Die Enable-Pins (die die Geschwindigkeit steuern) für den L298 sind mit den Pins 10 und 11 (Enable A/Motor A) und 5 und 6 (ENB/Motor B) verbunden. Die Stromversorgung und Masse für die Motoren werden dann an die Ports des L298N angeschlossen.

Der Arduino wird natürlich von unserem tragbaren Telefonladegerät mit Strom versorgt. Wenn der Stromkreis eingeschaltet ist, werden die Motoren auf maximale Geschwindigkeit in eine Richtung eingestellt, die von unserem Näherungssensor vorgegeben wird. Dies wird im Kodierungsteil behandelt. Dadurch wird das Boot bewegt.

Schritt 4: Arduino-Code

Image
Image

Jetzt kommen wir zum Kern dessen, was dieses Projekt ausmacht: dem Code! Ich habe eine ZIP-Datei mit dem Code für dieses Projekt angehängt, die am Ende dieses Schrittes zu finden ist. Es ist vollständig kommentiert, damit Sie es durchsehen können!

- Für Arduino geschriebener Code wird in einem Programm geschrieben, das als Arduino Integrated Development Environment (IDE) bekannt ist. Es ist etwas, das Sie von der offiziellen Arduino-Website herunterladen sollten, die Sie hier finden. Die IDE ist in den Programmiersprachen C/C++ geschrieben.

Code, der über die IDE geschrieben und gespeichert wird, wird als Sketch bezeichnet. In den Skizzen und Klassendateien und Bibliotheken enthalten, die Sie online oder selbst erstellt haben. Ausführliche Erklärungen dazu und zur Programmierung in Arduino finden Sie hier.

- Wie zu Beginn dieses Schrittes zu sehen ist, habe ich ein YouTube-Video, das die Hauptskizze des Projekts beschreibt. Sie können es sich hier ansehen! Dies wird die Hauptskizze und ihre Funktionen durchgehen.

- Ich gehe jetzt kurz auf die Bibliothek ein, die ich zur Steuerung des Näherungssensors erstellt habe. Die Bibliothek macht es einfach, Daten vom Sensor mit weniger Codezeilen in meiner Hauptskizze zu erhalten.

Die.h-Datei (HCSR04.h) listet die Funktionen und Variablen auf, die wir in dieser Bibliothek verwenden, und definiert, wer darauf zugreifen kann. Wir beginnen mit einem Konstruktor, bei dem es sich um eine Codezeile handelt, die ein Objekt definiert (in unserem Fall den von uns verwendeten "HCSR04ProxSensor"), das Werte enthält, die wir in Klammern eingeben. Diese Werte sind die von uns verwendeten Echo- und Trigger-Pins, die mit dem von uns erstellten Sensorobjekt verknüpft sind (das nach Belieben benannt werden kann, indem Sie "HCSR04ProxSensor NameOfOurObject" einschließen). Auf Dinge innerhalb der "öffentlichen" Definition kann von allem zugegriffen werden, sowohl innerhalb der Bibliothek als auch außerhalb (wie unsere Hauptskizze). Hier listen wir unsere Funktionen auf, die wir in der Hauptskizze aufrufen. In "private" speichern wir die Variablen, die die Bibliothek zum Laufen bringen. Diese Variablen können nur von den Funktionen innerhalb unserer Bibliothek verwendet werden. Es ist im Grunde eine Möglichkeit für unsere Funktionen, zu verfolgen, welche Variablen und Werte mit jedem von uns erstellten Sensorobjekt verknüpft sind.

Nun wechseln wir zur Datei "HCSR04.cpp". Hier definieren wir eigentlich unsere Funktionen und Variablen und wie sie funktionieren. Es ist ähnlich, als ob Sie den Code in Ihrer Hauptskizze schreiben würden. Beachten Sie, dass Funktionen für das, was sie zurückgeben, angegeben werden sollten. Für "readSensor()" wird eine Zahl (als Float) zurückgegeben, also definieren wir markiere die Funktion mit "float HCSR04ProxSensor::readSensor()". Beachten Sie, dass wir "HCSR04ProxSensor::" einschließen müssen, den Namen des Objekts, das dieser Funktion zugeordnet ist. Wir definieren unsere Pins mit unserem Konstruktor, ermitteln den Abstand eines Objekts mit der Funktion "readSensor()" und erhalten unseren zuletzt gelesenen Wert mit der Funktion "getLastValue()".

Schritt 5: 3D-Druck aller Teile und Montage

Imprägnieren des Drucks
Imprägnieren des Drucks

Sobald die beiden Teile des Rumpfes gedruckt sind, können Sie sie mit Malerband zusammenkleben. Das sollte zusammenhalten. Alle anderen Teile können Sie dann wie gewohnt nach unserer CAD-Konstruktion zusammenbauen.

3D-Drucker laufen mit G-Code, den Sie mit einer mit dem Drucker gelieferten Slicer-Software erhalten können. Diese Software nimmt eine.stl-Datei (von einem Teil, das Sie in CAD erstellt haben) und konvertiert sie in Code, den der Drucker lesen kann (die Erweiterung für diese Datei variiert je nach Drucker). Beliebte 3D-Druck-Slicer sind Cura, FlashPrint und mehr!

Beim 3D-Druck ist es wichtig zu wissen, dass es viel Zeit in Anspruch nimmt, also planen Sie entsprechend. Um lange Druckzeiten und schwerere Teile zu vermeiden, können Sie mit einer Füllung von ca. 10 % drucken. Beachten Sie, dass eine höhere Füllung gegen das Eindringen von Wasser in den Druck hilft, da weniger Poren vorhanden sind, dies jedoch auch die Teile schwerer macht und länger dauert.

Fast alle 3D-Drucke sind nicht gut für Wasser geeignet, daher müssen wir sie wasserdicht machen. In diesem Projekt habe ich mich für das Auftragen von Flex Seal entschieden, da es ziemlich einfach ist und sehr gut funktioniert, um Wasser aus dem Druck herauszuhalten.

Schritt 6: Imprägnieren des Drucks

Es ist wichtig, diesen Druck wasserdicht zu machen, da Sie nicht möchten, dass Ihre teure Elektronik beschädigt wird!

Um zu beginnen, werden wir die Außenseite und die Unterseite des Rumpfes schleifen. Dies dient dazu, Rillen zu schaffen, in die die Flexdichtung eindringen kann, um einen besseren Schutz zu bieten. Sie können etwas Schleifpapier mit hoher Körnung / feinem Schleifpapier verwenden. Achten Sie darauf, nicht zu viel zu schleifen, ein paar Striche sollten in Ordnung sein.

Schritt 7: Schleifen des Rumpfes

Den Rumpf schleifen
Den Rumpf schleifen

Sie wissen, wann Sie aufhören müssen, wenn die weißen Linien zu erscheinen beginnen.

Schritt 8: Flex Seal auftragen

Flex Seal auftragen
Flex Seal auftragen

Sie können einen Eisstiel oder eine Bürste verwenden, um die Flex-Versiegelung aufzutragen. Achten Sie darauf, keine Stellen zu verpassen und seien Sie gründlich. Sie können Ihr Werkzeug einfach in die offene Dose tauchen und auf den Rumpf reiben.

Schritt 9: Lassen Sie die Flex-Dichtung sitzen

Lassen Sie das Flex Seal sitzen
Lassen Sie das Flex Seal sitzen

Jetzt warten wir! Normalerweise dauert es ungefähr 3 Stunden, bis die Flex-Versiegelung ziemlich trocken ist, aber ich würde sie 24 Stunden ruhen lassen, um sicherzugehen. Sie können nach dem Trocknen eine weitere Schicht Flex Seal auftragen, um den Rumpf noch mehr zu schützen, aber das ist ein wenig übertrieben (1 Schicht hat für mich super funktioniert).

Schritt 10: Montage und Prüfung

Montage und Prüfung
Montage und Prüfung

Nachdem die Flexdichtung nun getrocknet ist, würde ich empfehlen, den Rumpf in Wasser zu testen, bevor die elektrischen Komponenten hinzugefügt werden (wenn der Rumpf nicht wasserdicht ist, könnte das Probleme für Ihr Arduino bedeuten!). Bringen Sie es einfach zu Ihrem Waschbecken oder Pool und sehen Sie, ob das Boot länger als 5 Minuten ohne Lecks schwimmen kann.

Sobald wir sichergestellt haben, dass unser Rumpf wasserdicht ist, können wir alle unsere Teile hinzufügen! Stellen Sie sicher, dass Arduino, L298N und die restlichen Komponenten korrekt mit den richtigen Pins verbunden sind.

Um die Drähte an die Gleichstrommotoren anzupassen, lötete ich die männlichen Leitungen an die Leitungen am Motor, um sicherzustellen, dass sie an bleiben. Das Löten ist auch nützlich, um sicherzustellen, dass alle Ihre Verbindungen sicher sind oder wenn Sie ein längeres Kabel herstellen müssen. Wenn Sie noch nie gelötet haben, können Sie hier mehr darüber erfahren!

Sobald alles zusammen ist, legen Sie alle Komponenten in den Rumpf und testen Sie! Sie sollten überprüfen, ob der Sensor wie beabsichtigt funktioniert, indem Sie die Entfernungswerte auf dem seriellen Monitor lesen, überprüfen, ob die Motoren richtig drehen, solche Dinge.

Schritt 11: Endprodukt

Und jetzt bist du fertig! Überprüfen Sie bei einer Probefahrt auf Fehler (Testen Sie das Boot und den Rumpf, bevor Sie die Elektronik einsetzen) und Sie sind fertig!

Empfohlen: