Indholdsfortegnelse:
- Trin 1: Materialeliste
- Trin 2: 3D-printede dele og design
- Trin 3: Kontrolkredsløb
- Trin 4: Arduino -kode
- Trin 5: 3D-print alle dele og samling
- Trin 6: Vandtæt printet
- Trin 7: Slibning af skroget
- Trin 8: Påfør Flex Seal
- Trin 9: Lad Flex Seal sidde
- Trin 10: Montering og test
- Trin 11: Slutprodukt
Video: Makecourse: den ensomme båd: 11 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:28
Denne instruerbare blev oprettet for at opfylde projektkravet fra Makecourse ved University of South Florida (www.makecourse.com).
Ny på Arduino's, 3D-print og computer-aided design (CAD)? Dette projekt er en fantastisk måde at lære alt det grundlæggende bag disse emner på og giver plads til din kreativitet for at gøre det til dit eget! Den har masser af CAD -modellering for bådens struktur, en introduktion til autonome systemer og introducerer konceptet med vandtætning af 3D -print!
Trin 1: Materialeliste
For at starte projektet skal du først vide, hvad du skal arbejde med! Her er de materialer, du skal have, før du begynder:
- 1x Arduino Uno R3 mikrokontroller og USB -kabel (Amazon Link)
- 1x L298N motorstyring (Amazon Link)
- 4x (2 er backup) DC-motorer 3-6V (Amazon Link)
- 2x 28BYJ-48 Steppermotorer og ULN2003-moduler (Amazon Link)
- 1x bærbar telefon oplader til strøm (Her er den jeg brugte, den er dog lidt stor. Du kan bruge en anden hvis det foretrækkes: Amazon Link)
- 1x Ultrasonic HCSR04 sensor (dette link har et par ekstraudstyr kastet ind med nogle jumperwires: Amazon Link)
- 3x pakker med jumperwire (han-hun, han-han, hun-hun. Amazon Link)
- 1x dåse Flex Seal (16 oz, Amazon Link)
- 1x malerbånd (Amazon Link)
- 1x fint sandpapir (ca. 300 er godt)
- Et par popsicle sticks og børster til påføring af flex seal
-
Adgang til 3D-print. (Her er en relativt billig og effektiv 3D -printer - Amazon Link)
- Rød filament til 3D-print (Amazon Link
- Sort filament til 3D-udskrivning (Amazon Link)
Du er velkommen til at tilføje alle materialer, du finder på til din version af projektet!
Trin 2: 3D-printede dele og design
Den første del af dette projekt er at skabe et mekanisk system til at arbejde i. Dette vil omfatte mange dele, herunder skrog, låg, skovle, aksler til motorerne til skovlene, et beslag til sensoren og akslen, hvorpå sensorophænget sidder.
Komponenterne er designet i SolidWorks og sat sammen til en samling. Alle delfilerne og samlingen er blevet sat i en zip -fil, som kan findes i slutningen af dette trin. Bemærk, at SolidWorks ikke er den eneste CAD -software, du kan bruge, da mange programmer som Inventor og Fusion360 kan bruges til CAD. Du kan importere SolidWorks -dele til dem.
Det er vigtigt at bemærke, at de aksler, der holder padlerne, er koncentriske med hullerne på skroget for at forhindre bøjning af akslen og få den til at gå lige ud af båden.
Alt på dette projekt er 3D -printet (eksklusive elektriske komponenter), så dimensioner er vigtige. Jeg gav tolerancer på omkring 0,01 tommer på dele for at sikre, at alt passer sammen (lidt som en løs pasform). Der var mindre tolerance for, at akslerne gik til motoren, så de kan sidde tæt. Padlerne er tæt monteret på akslen, så når motorerne er tændt, bevæger padlerne sig og driver båden.
Når du ser CAD'en, vil du bemærke platforme til elektriske komponenter. Dette er for at komponenterne skal "poppe" ind på deres platform for at forhindre dem i at bevæge sig rundt.
De største udskrifter er skrog og låg, så husk dette, når du designer. Du skal muligvis dele det i dele, da det ville være for stort til at udskrive på én gang.
Trin 3: Kontrolkredsløb
Her diskuterer vi det elektriske kredsløb, der styrer båden. Jeg har en skematik fra Fritzing, som er en nyttig software, du kan downloade her. Det hjælper med at oprette elektriske skemaer.
Ikke alle komponenter, der bruges i dette projekt, er i Fritzing, så de udskiftes. Den sorte fotosensor repræsenterer HCSR04 -sensoren, og den lille halvbro er L298N -motorstyringen.
HCSR04 og L298N er tilsluttet strømskinnerne på brødbrættet, som igen er forbundet til Arduino's power side (på 5V og jordstifterne). Ekko- og triggerstifterne på HCSR04 går til henholdsvis ben 12 og 13 på Arduino.
Aktiveringsstifterne (denne kontrolhastighed) til L298 er forbundet til ben 10 og 11 (Aktiver A/Motor A) og 5 og 6 (ENB/Motor B). Strømmen og grundene til motorerne forbindes derefter til havne på L298N.
Arduino modtager naturligvis strøm fra vores bærbare telefonoplader. Når kredsløbet tændes, indstilles motorerne til maks. Hastighed i en retning, der dikteres af vores nærhedssensor. Dette vil blive dækket af den kodende del. Dette vil flytte båden.
Trin 4: Arduino -kode
Nu kommer vi til det nitty-gritty af, hvad der får dette projekt til at fungere: koden! Jeg har vedhæftet en zip -fil, der indeholder koden til dette projekt, som kan findes i slutningen af dette trin. Det er fuldt ud kommenteret for dig at se igennem!
- Kode skrevet til Arduino er skrevet i et program kendt som Arduino integreret udviklingsmiljø (IDE). Det er noget, du skal downloade fra Arduinos officielle websted, som kan findes her. IDE er skrevet på programmeringssprog C/C ++.
Kode skrevet og gemt gennem IDE er kendt som en skitse. Inkluderet i skitser og klassefiler og biblioteker, du kan inkludere fra online eller dem, du selv har oprettet. Detaljerede forklaringer på disse og hvordan man programmerer i Arduino kan findes her.
- Som det ses i begyndelsen af dette trin, har jeg en YouTube -video, der går over projektets hovedskitse, du kan tjekke det ud her! Dette vil gå over hovedskitsen og dens funktioner.
- Jeg vil nu kort gå over biblioteket, jeg oprettede til styring af nærhedssensoren. Biblioteket gør det let at få data fra sensoren med færre kodelinjer i min hovedskitse.
. H -filen (HCSR04.h) er det, der viser de funktioner og variabler, vi skal bruge i dette bibliotek, og definerer, hvem der kan få adgang til dem. Vi starter med en konstruktør, som er en kodelinje, der definerer et objekt (i vores tilfælde "HCSR04ProxSensor", vi bruger), der indeholder værdier, vi indtaster i parenteserne. Disse værdier vil være de ekko- og trigger -ben, vi bruger, som vil blive knyttet til det sensorobjekt, vi opretter (som kan navngives, hvad vi vil ved at inkludere "HCSR04ProxSensor NameOfOurObject"). Ting inden for den "offentlige" definition kan tilgås af alt, både i biblioteket og udenfor (som vores hovedskitse). Det er her, vi vil liste vores funktioner, som vi kalder i hovedskitsen. I "privat" gemmer vi de variabler, der får biblioteket til at køre. Disse variabler kan kun bruges af funktionerne i vores bibliotek. Det er dybest set en måde for vores funktioner at holde styr på, hvilke variabler og værdier der er knyttet til hvert sensorobjekt, vi opretter.
Nu flytter vi til filen "HCSR04.cpp". Det er her, vi rent faktisk definerer vores funktioner og variabler, og hvordan de fungerer. Det ligner, hvis du skrev koden i din hovedskitse. Bemærk, at funktioner skal angives for det, de returnerer. For "readSensor ()" returnerer det et tal (som en float), så vi definerer markere funktionen med "float HCSR04ProxSensor:: readSensor ()". Bemærk, at vi skal inkludere "HCSR04ProxSensor::", navnet på objektet, der er knyttet til denne funktion. Vi definerer vores ben ved hjælp af vores konstruktør, finder afstanden til et objekt ved hjælp af funktionen "readSensor ()" og får vores sidste læseværdi med funktionen "getLastValue ()".
Trin 5: 3D-print alle dele og samling
Når de to stykker af skroget er trykt, kan du tape dem sammen med malertape. Dette burde holde det sammen. Du kan derefter samle alle de andre dele som normalt baseret på vores CAD -design.
3D-printere kører på g-kode, som du kan få ved at bruge en slicer-software, der følger med printeren. Denne software tager en.stl -fil (af en del, du har oprettet i CAD) og konverterer den til kode, som printeren kan læse (filtypen til denne fil varierer mellem printere). Populære 3D-udskrivningsskærere omfatter Cura, FlashPrint og mere!
Ved 3D-udskrivning er det vigtigt at vide, at det tager meget tid, så sørg for at planlægge derefter. For at undgå lange udskrivningstider og tungere dele kan du udskrive med et fyld på omkring 10%. Bemærk, at en højere udfyldning vil hjælpe mod vand, der trænger ind i trykket, da der vil være mindre porer, men dette vil også gøre delene tungere og tage længere tid.
Omkring alle 3D-print er ikke velegnede til vand, så vi skal vandtætte dem. I dette projekt valgte jeg at anvende Flex Seal, da det er ret enkelt og fungerer ekstremt godt til at holde vand ude af printet.
Trin 6: Vandtæt printet
Vandtætning af dette tryk er vigtigt, da du ikke vil have din dyre elektronik beskadiget!
For at starte, sliber vi ydersiden og bunden af skroget. Dette er for at skabe riller for flexforseglingen at sive ind i, hvilket giver bedre beskyttelse. Du kan bruge noget sandkorn/fint sandpapir. Pas på ikke at slibe for meget, et par slag skal være i orden.
Trin 7: Slibning af skroget
Du ved, hvornår du skal stoppe, når du ser, at de hvide linjer begynder at dukke op.
Trin 8: Påfør Flex Seal
Du kan bruge en popsicle stick eller pensel til at påføre flexforseglingen. Sørg for ikke at gå glip af nogen pletter og vær grundig. Du kan bare dyppe dit værktøj i den åbne dåse og gnide det på skroget.
Trin 9: Lad Flex Seal sidde
Nu venter vi! Normalt tager det cirka 3 timer for flexforseglingen at tørre ganske lidt, men jeg ville bare lade den sidde i 24 timer for at være sikker. Du kan anvende et andet lag flexforsegling, når det er tørret færdigt for at beskytte skroget endnu mere, men dette er lidt overkill (1 lag fungerede godt for mig).
Trin 10: Montering og test
Nu hvor flexforseglingen er tørret, vil jeg anbefale at teste skroget i vand, før du tilføjer de elektriske komponenter (hvis skroget IKKE er vandtæt, kan det betyde problemer for din Arduino!). Bare tag den med til din vask eller pool og se om båden kan flyde i mere end 5 minutter uden lækager.
Når vi har kontrolleret, at vores skrog er vandtæt, kan vi begynde at tilføje alle vores dele! Sørg for at koble Arduino, L298N og resten af komponenterne korrekt til deres rigtige stifter.
For at få ledninger til at passe til DC -motorerne lodde jeg hanledningerne til ledningerne på motoren for at sikre, at de blev ved. Lodning er også nyttig til at sikre, at alle dine forbindelser er sikre, eller hvis du skal lave en længere ledning. Hvis du aldrig har loddet før, kan du lære mere om det her!
Når alt er samlet, skal du placere alle komponenterne i skroget og lave nogle test! Du vil kontrollere, om sensoren fungerer efter hensigten, ved at aflæse afstandsværdier på den serielle skærm, kontrollere, at motorerne kører korrekt, sådan noget.
Trin 11: Slutprodukt
Og nu er du færdig! Kontroller, om der er fejl i et testkørsel (test flyde båden og skroget, inden du anvender elektronik), og du er klar!
Anbefalede:
Elektrisk båd: 4 trin
Elektrisk båd: Forsyninger -Små plastikboks 2x dc -motorer Ledninger 1x switch 2x propeller 2x 9V batterier Varm limpistol
Bygger en selvkørende båd (ArduPilot Rover): 10 trin (med billeder)
Bygger en selvkørende båd (ArduPilot Rover): Ved du, hvad der er fedt? Ubemandede selvkørende biler. De er faktisk så seje, at vi (mine uni -kolleger og mig) begyndte at bygge en selv tilbage i 2018. Det er også derfor, jeg satte mig i gang for i år endelig at afslutte den i min fritid. I denne instans
Vandadvarsel - en enhed til at redde din båd: 5 trin (med billeder)
Vandadvarsel - en enhed til at redde din båd: Hvis du er en bådsejer, er der solid komfort i endelig at få båden på tørt land. Det kan ikke synke der. Alle andre steder står den over for en konstant kamp for at overvinde tendensen til at glide under bølgerne og forsvinde. I løbet af vinteren her i Ak
Arduino -båd på IR -fjernbetjening: 7 trin
Arduino -båd på IR -fjernbetjening: I dag vil jeg vise, hvordan man laver en simpel arduino IR -fjernbåd
RC -båd i træ, som du kan styre manuelt eller via et websted: 9 trin
RC -båd i træ, som du kan styre manuelt eller via et websted: Hej, jeg er studerende på Howest, og jeg byggede en RC -båd i træ, som du kan styre via en controller eller via et websted. Jeg var træt af, at rc -biler gik i stykker så hurtigt og jeg ville have noget at hygge mig med, da jeg boede ved havet