Innholdsfortegnelse:

Makecourse: the Lonely Boat: 11 trinn
Makecourse: the Lonely Boat: 11 trinn

Video: Makecourse: the Lonely Boat: 11 trinn

Video: Makecourse: the Lonely Boat: 11 trinn
Video: 5 UNDERWATER TRICKS you probably can’t do 💥💥 2024, November
Anonim
Image
Image
Materialeliste
Materialeliste

Denne instruksen ble opprettet for å oppfylle prosjektkravet til Makecourse ved University of South Florida (www.makecourse.com).

Ny på Arduino, 3D-utskrift og datamaskinassistert design (CAD)? Dette prosjektet er en fin måte å lære alt det grunnleggende bak disse emnene på, og gir rom for kreativiteten din til å gjøre den til din egen! Den har mange CAD -modeller for båtens struktur, en introduksjon til autonome systemer, og introduserer konseptet med vanntett 3D -utskrifter!

Trinn 1: Materialeliste

For å starte prosjektet må du først vite hva du skal jobbe med! Her er materialene du bør ha før du begynner:

  • 1x Arduino Uno R3 mikrokontroller og USB -kabel (Amazon Link)
  • 1x L298N motorstyring (Amazon Link)
  • 4x (2 er sikkerhetskopier) DC-motorer 3-6V (Amazon Link)
  • 2x 28BYJ-48 trinnmotorer og ULN2003-moduler (Amazon Link)
  • 1x bærbar telefonlader for strøm (Her er den jeg brukte, den er litt stor. Du kan bruke en annen hvis du foretrekker det: Amazon Link)
  • 1x ultralyd HCSR04 -sensor (Denne lenken har noen få statister kastet inn med noen jumper -ledninger: Amazon Link)
  • 3x pakker med jumperkabler (hann-hunn, hann-mann, hunn-hunn. Amazon Link)
  • 1x boks med Flex Seal (16 oz, Amazon Link)
  • 1x malertape (Amazon Link)
  • 1x fint sandpapir (rundt 300 er bra)
  • Noen få popsicle pinner og børster for påføring av flex seal
  • Tilgang til 3D-utskrift. (Her er en relativt billig og effektiv 3D -skriver - Amazon Link)

    • Rødt filament for 3D-utskrift (Amazon Link
    • Svart filament for 3D-utskrift (Amazon Link)

Legg gjerne til materialer du kommer med for din versjon av prosjektet!

Trinn 2: 3D-trykte deler og design

3D-trykte deler og design
3D-trykte deler og design
3D-trykte deler og design
3D-trykte deler og design

Den første delen av dette prosjektet er å lage et mekanisk system for å fungere i. Dette vil inkludere mange deler, inkludert skrog, lokk, padler, aksler for motorene til padlene, et feste for sensoren og akselen som sensorfestet sitter.

Komponentene er designet i SolidWorks og satt sammen til en samling. Alle delfilene og samlingen er satt i en zip -fil, som du finner på slutten av dette trinnet. Vær oppmerksom på at SolidWorks ikke er den eneste CAD -programvaren du kan bruke, siden mange programmer som Inventor og Fusion360 kan brukes til CAD. Du kan importere SolidWorks -deler til dem.

Det er viktig å merke seg at akslene som holder padlene er konsentriske med hullene på skroget for å forhindre bøyning av akselen og at den går rett ut av båten.

Alt på dette prosjektet er 3D -trykt (unntatt elektriske komponenter), så dimensjoner er viktige. Jeg ga toleranser på rundt 0,01 tommer på deler, for å sikre at alt passer sammen (litt som en løs passform). Det var mindre toleranse for at akslene gikk til motoren slik at de kan passe godt. Padlene er tett montert på akselen, slik at når motorene er satt på, beveger padlene seg og driver båten.

Når du ser CAD, vil du legge merke til plattformer for elektriske komponenter. Dette er for at komponentene skal "poppe" inn på plattformen for å forhindre at de beveger seg rundt.

De største trykkene er skroget og lokket, så husk dette når du designer. Du må kanskje dele den i deler, da den ville være for stor til å skrive ut med en gang.

Trinn 3: Kontrollkrets

Kontrollkrets
Kontrollkrets
Kontrollkrets
Kontrollkrets

Her diskuterer vi den elektriske kretsen som styrer båten. Jeg har en skjematisk oversikt fra Fritzing, som er en nyttig programvare du kan laste ned her. Det hjelper med å lage elektriske skjemaer.

Ikke alle komponentene som brukes i dette prosjektet er i Fritzing, så de blir erstattet. Den svarte fotosensoren representerer HCSR04 -sensoren og den lille halvbroen er L298N -motorstyringen.

HCSR04 og L298N er koblet til strømskinnene på brødbrettet, som igjen er koblet til kraftsiden til Arduino (på 5V og jordede pinner). Ekko- og utløserpinnene til HCSR04 går til henholdsvis pinne 12 og 13 på Arduino.

Aktiveringspinnene (som kontrollhastigheten) for L298 er koblet til pinnene 10 og 11 (Aktiver A/Motor A) og 5 og 6 (ENB/Motor B). Strøm og grunn for motorene kobles deretter til porter på L298N.

Arduino får selvfølgelig strøm fra vår bærbare telefonlader. Når kretsen er slått på, settes motorene på maks hastighet i en retning som dikteres av vår nærhetssensor. Dette vil bli dekket i kodingsdelen. Dette vil flytte båten.

Trinn 4: Arduino -kode

Image
Image

Nå kommer vi til det som gjør at dette prosjektet fungerer: koden! Jeg har lagt ved en zip -fil som inneholder koden for dette prosjektet, som du finner på slutten av dette trinnet. Det er fullstendig kommentert for deg å se gjennom!

- Kode skrevet for Arduino er skrevet i et program kjent som Arduino integrert utviklingsmiljø (IDE). Det er noe du bør laste ned fra Arduinos offisielle nettsted, som du finner her. IDE er skrevet på programmeringsspråk C/C ++.

Kode skrevet og lagret gjennom IDE er kjent som en skisse. Inkludert i skissene og klassefilene og bibliotekene du kan inkludere fra online eller de du opprettet selv. Detaljerte forklaringer på disse og hvordan du programmerer i Arduino finner du her.

- Som sett i begynnelsen av dette trinnet, har jeg en YouTube -video som går over hovedskissen av prosjektet. Du kan sjekke det ut her! Dette vil gå over hovedskissen og dens funksjoner.

- Jeg vil nå kort gå over biblioteket jeg opprettet for å kontrollere nærhetssensoren. Biblioteket gjør det enkelt å få data fra sensoren med færre kodelinjer i hovedskissen min.

. H -filen (HCSR04.h) er det som viser funksjonene og variablene vi skal bruke i dette biblioteket og definere hvem som kan få tilgang til dem. Vi starter med en konstruktør, som er en kodelinje som definerer et objekt (i vårt tilfelle "HCSR04ProxSensor" vi bruker) som inneholder verdier vi legger inn i parentesene. Disse verdiene vil være ekko- og triggerpinnene vi bruker, som vil bli knyttet til sensorobjektet vi lager (som kan navngis hva vi vil ved å inkludere "HCSR04ProxSensor NameOfOurObject"). Ting innenfor den "offentlige" definisjonen kan nås av alt, både i biblioteket og utenfor (som vår hovedskisse). Det er her vi vil liste opp funksjonene våre som vi kaller i hovedskissen. I "privat" lagrer vi variablene som får biblioteket til å kjøre. Disse variablene kan bare brukes av funksjonene i biblioteket vårt. Det er i utgangspunktet en måte for funksjonene våre å holde oversikt over hvilke variabler og verdier som er knyttet til hvert sensorobjekt vi lager.

Nå går vi til filen "HCSR04.cpp". Det er her vi faktisk definerer funksjonene og variablene våre og hvordan de fungerer. Det ligner på om du skrev koden i hovedskissen din. Vær oppmerksom på at funksjoner bør spesifiseres for det de returnerer. For "readSensor ()", vil den returnere et tall (som en float), så vi definerer merk funksjonen med "float HCSR04ProxSensor:: readSensor ()". Vær oppmerksom på at vi må inkludere "HCSR04ProxSensor::", navnet på objektet som er knyttet til denne funksjonen. Vi definerer pinnene våre ved hjelp av konstruktøren vår, finner avstanden til et objekt ved hjelp av "readSensor ()" -funksjonen, og får vår siste leseverdi med "getLastValue ()" -funksjonen.

Trinn 5: 3D-utskrift av alle deler og montering

Vanntette utskriften
Vanntette utskriften

Når de to delene av skroget er trykt, kan du tape dem sammen med malertape. Dette bør holde det sammen. Du kan deretter montere alle de andre delene som normalt basert på vårt CAD -design.

3D-skrivere kjører på g-kode, som du kan få fra å bruke en skiverprogramvare som følger med skriveren. Denne programvaren tar en.stl -fil (av en del du opprettet i CAD) og konverterer den til kode for skriveren å lese (filtypen for denne filen varierer mellom skrivere). Populære 3D-utskiver inkluderer Cura, FlashPrint og mer!

Ved 3D-utskrift er det viktig å vite at det tar mye tid, så sørg for å planlegge deretter. For å unngå lange utskriftstider og tyngre deler, kan du skrive ut med en fylling på rundt 10%. Vær oppmerksom på at en høyere fylling vil hjelpe mot at vann kommer inn i trykket, da det blir mindre porer, men dette vil også gjøre delene tyngre og ta lengre tid.

Omtrent alle 3D-utskrifter er ikke godt egnet for vann, så vi må vanntette dem. I dette prosjektet valgte jeg å bruke Flex Seal, da det er ganske enkelt og fungerer ekstremt godt for å holde vann ute av utskriften.

Trinn 6: Vanntette utskriften

Vanntetting av denne utskriften er viktig, ettersom du ikke vil at den dyre elektronikken din skal bli skadet!

For å starte, sliper vi utsiden og bunnen av skroget. Dette er for å lage riller for flexforseglingen å sive inn i, noe som gir bedre beskyttelse. Du kan bruke litt sand/fint sandpapir. Vær forsiktig så du ikke sliper for mye, et par slag bør være greit.

Trinn 7: Sliping av skroget

Sliping av skroget
Sliping av skroget

Du vet når du skal stoppe når du ser at de hvite linjene begynner å vises.

Trinn 8: Påfør Flex Seal

Påfør Flex Seal
Påfør Flex Seal

Du kan bruke en ispinne eller pensel for å påføre flexforseglingen. Sørg for å ikke gå glipp av noen flekker og vær grundig. Du kan bare dyppe verktøyet i den åpne boksen og gni det på skroget.

Trinn 9: La Flex Seal sitte

La Flex Seal sitte
La Flex Seal sitte

Nå venter vi! Normalt tar det omtrent 3 timer før flexforseglingen tørker ganske mye, men jeg ville la den sitte i 24 timer bare for å være sikker. Du kan påføre et nytt lag med flexforsegling når det er tørket for å beskytte skroget enda mer, men dette er litt overkill (1 lag fungerte bra for meg).

Trinn 10: Montering og testing

Montering og testing
Montering og testing

Nå som flexforseglingen er tørket, vil jeg anbefale å teste skroget i vann før du legger til de elektriske komponentene (hvis skroget IKKE er vanntett, kan det føre til problemer for din Arduino!). Bare ta den til vasken eller bassenget og se om båten kan flyte i mer enn 5 minutter uten lekkasjer.

Når vi har kontrollert at skroget vårt er vanntett, kan vi begynne å legge til alle delene våre! Sørg for å koble Arduino, L298N og resten av komponentene riktig til de riktige pinnene.

For å få ledninger som passer til likestrømsmotorene, loddet jeg hanledningene til ledningene på motoren for å sikre at de forblir på. Lodding er også nyttig for å sikre at alle tilkoblingene dine er sikre, eller hvis du trenger å lage en lengre ledning. Hvis du aldri har loddet før, kan du lære mer om det her!

Når alt er sammen, plasserer du alle komponentene i skroget og tester! Du vil sjekke at sensoren fungerer som tiltenkt ved å lese avstandsverdier på den serielle skjermen, sjekk at motorene roterer riktig, slike ting.

Trinn 11: Sluttprodukt

Og nå er du ferdig! Se etter eventuelle feil i en prøvekjøring (testflyt båten og skroget før du bruker elektronikk), og du er klar!

Anbefalt: