Sweepy: de Set It & Forget It Studio Cleaner - Ajarnpa
Sweepy: de Set It & Forget It Studio Cleaner - Ajarnpa
Anonim
Image
Image
Sweepy: de Set It & Forget It Studio Cleaner
Sweepy: de Set It & Forget It Studio Cleaner

Door: Evan Guan, Terence Lo en Wilson Yang

‏‏‎ ‎

Inleiding & Motivatie

Sweepy the studio cleaner is ontworpen als reactie op de chaotische omstandigheden van de architectuurstudio achtergelaten door barbaarse studenten. Ben je het beu hoe rommelig de studio is tijdens beoordelingen? Nou zeg niet meer. Met Sweepy hoef je het alleen maar in te stellen en te vergeten. Studio zal sneller gloednieuw zijn dan nodig is om dat ene projectmodel te voltooien.

Sweepy is zelfbewust en zal zich naar hartenlust verplaatsen en al het afval en restjes wegvegen dankzij twee ultrasone sensoren die hem vertellen dat hij moet draaien bij het naderen van een muur. Sweepy nodig om harder te werken? Geen probleem, schreeuw er gewoon tegen. Sweepy luistert constant naar zijn omgeving dankzij een geluidssensor. Als je een bepaalde geluidsdrempel bereikt, zal Sweepy in een woedende modus gaan, vegen en sneller bewegen voor een korte periode.

Een studio zonder Sweepy is er een die rommelig is.

‏‏‎ ‎

Onderdelen, materialen en gereedschappen

De meeste onderdelen op deze lijst zijn te vinden in de ELEGOO UNO R3 Project Starter Kit. Andere onderdelen kunnen worden gekocht bij Creatron Inc. of andere elektronische winkels.

‏‏‎ ‎

Componenten

x1 ELEGOO UNO R3-controllerkaart

x1 Prototype-uitbreidingsmodule

x1 ultrasone sensor (HC-SR04)

x1 Geluidssensormodule (KY-038)

x2 DC N20-motoren (ROBOT-011394)

x1 Micro Servomotor 9G (SG90)

x1 LCD-module (1602A)

x1 9V batterij

x2 60x8mm rubberen wielen (UWHLL-601421)

x1 vrij zwenkwiel (64 mm hoogte)

x1 veegborstel (12 mm handgreephoogte)

x2 NPN-transistoren (PN2222)

x3 Weerstanden (220Ω)

x2 Diodes (1N4007)

x1 Potentiometer (10K)

x15 Breadboard Jumper Draden

x26 Dupont-draden van vrouw naar man

‏‏‎ ‎

Materialen

x1 3 mm multiplex plaat (laserbed maat 18 "x 32")

x6 M3 Schroeven (YSCRE-300016)

x4 M3 Moeren (YSNUT-300000)

x6 M2.5 Schroeven (YSCRE-251404)

x6 M2.5 Moeren (YSNUT-250004)

‏‏‎ ‎

Gereedschap

Schroevendraaier set

Heet lijmpistool

‏‏‎ ‎

Apparatuur

Computer

3D-printer

Lasersnijder

‏‏‎ ‎

Software

Arduino IDE

Stap 1: De logica begrijpen

De logica begrijpen
De logica begrijpen
De logica begrijpen
De logica begrijpen
De logica begrijpen
De logica begrijpen

Stroomkring

De ELEGOO UNO R3-controllerkaart zal dienen als het "brein" van de robot waarin de code wordt geüpload en verwerkt. Bevestig het prototype-uitbreidingsbord en de mini-broodplank erop. Om met de sensoren en actuatoren te communiceren, worden de componenten via het breadboard en draden met elkaar verbonden.

Hierboven staat een diagram van de schakelingen die nodig zijn om Sweepy blij te maken. Besteed speciale aandacht aan de invoer en uitvoer van de draden. Het helpt om een draad te volgen door naar de kleur te kijken. Een verkeerde aansluiting kan ertoe leiden dat Sweepy niet goed functioneert of in het ergste geval uw elektronica beschadigen door kortsluiting.

‏‏‎ ‎

Programmeren

Hieronder vindt u de code die nodig is om Sweepy uit te voeren. Open het bestand in Arduino IDE en upload het naar de ELEGOO UNO R3 Controller Board. Hiervoor moet u de controllerkaart via de USB-kabel met uw computer verbinden. Zorg ervoor dat de juiste poort is geselecteerd door naar Tools en Port te gaan in het vervolgkeuzemenu. Zorg ervoor dat u de code uploadt voordat u Sweepy bouwt om te voorkomen dat u de USB-kabel hoeft aan te sluiten in de 3D-geprinte behuizing.

Het wordt niet aanbevolen om de variabelen in de code te wijzigen, tenzij je ervaring hebt of weet wat je doet.

Stap 2: Alle onderdelen, materialen en gereedschappen verzamelen

Alle onderdelen, materialen en gereedschappen verzamelen
Alle onderdelen, materialen en gereedschappen verzamelen

Om met het project te beginnen, verzamelt u alle onderdelen, materialen en gereedschappen die in de bovenstaande lijst worden beschreven. Zoals eerder vermeld, zijn de meeste onderdelen in de lijst te vinden in de ELEGOO UNO R3 Starter Kit en in Creatron Inc. of andere elektronische winkels.

Het wordt ten zeerste aanbevolen om zo vroeg mogelijk met 3D-printen te beginnen, aangezien het proces enkele uren kan duren. De aanbevolen instellingen zijn: 0,16 mm laaghoogte, 20% vulling en 1,2 mm wanddikte met randen en steunen. Het 3D-printbestand is hieronder bijgevoegd.

Lasersnijden kan ook veel tijd in beslag nemen, dus zorg ervoor dat u vroeg begint. Het lasergesneden bestand bevat ook een laag voor het etsen van een gids die ervoor zorgt dat het juiste onderdeel op de juiste plaats wordt gemonteerd. Zorg ervoor dat u dubbel controleert wat er wordt gesneden en wat er wordt geëtst, en verander de instellingen voor vermogen en snelheid op de juiste manier. Het lasersnijbestand is ook hieronder bijgevoegd.

Hoewel we multiplex voor onze robot hebben gebruikt, kun je elk materiaal gebruiken dat je leuk vindt, zoals acryl, zolang de dikte ongeveer 3 mm is.

Stap 3: De bodemplaat bevestigen

De bodemplaat vastzetten
De bodemplaat vastzetten

Breng lijm aan rond de omtrek van de basisplaat en bevestig deze aan de onderkant van de 3D-geprinte behuizing. Lijn de twee delen zo zorgvuldig mogelijk uit en zorg er ook voor dat de lasergesneden etsgeleider naar boven wijst.

Stap 4: Montage van basisplaatcomponenten

Onderdelen van de grondplaat monteren
Onderdelen van de grondplaat monteren

Zodra de grondplaat voldoende is vastgezet, kunnen we beginnen met het aansluiten van de eerste ronde elektronische componenten. Dit omvat de DC-motoren met wielen, servomotor, LCD-scherm en batterijpakket. Een lasergesneden etsgeleider is in de basisplaat opgenomen om voor uw gemak een juiste plaatsing van componenten te garanderen. Om het circuit gemakkelijker te maken, moeten de componenten worden vastgezet met de juiste draden die al zijn aangesloten.

De wielen moeten in de twee sleuven aan weerszijden schuiven met de gelijkstroommotor naar binnen gericht. Zet deze vast met de meegeleverde witte klemmen met twee schroeven en moeren voor elk (M2.5).

De servomotor moet ook worden vastgezet met dezelfde schroeven en moeren (M2.5), terwijl ervoor moet worden gezorgd dat het witte tandwiel dat van de onderkant naar buiten komt zich aan de voorkant van de robot bevindt. Hierdoor wordt de veegbeweging van de borstel krachtiger.

Het LCD-scherm moet in het voorvak van de behuizing schuiven met de pinnen naar beneden gericht. Zet dit vast met wat klodders hete lijm op elke hoek.

Ten slotte moet het batterijpakket in de achterzak van de behuizing schuiven met de aan-uitschakelaar naar buiten in de uitsparing in het gat. Hierdoor kan de robot aan en uit worden gezet.

Stap 5: De steunplaat bevestigen

De steunplaat vastzetten
De steunplaat vastzetten

Vervolgens is het tijd om het "brein" van Sweepy te beveiligen. Monteer met behulp van vier schroeven en moeren (M3) de UNO R3-controllerkaart en prototype-uitbreidingsmodule op de bovenzijde van de steunplaat. Dit zou fungeren als de tweede verdieping van de behuizing. Voorafgaand hieraan moet de Arduino IDE-code al op het bord zijn geüpload en klaar voor gebruik.

Schuif de steunplaat van bovenaf in de behuizing totdat deze op drie in de 3D-printbehuizing geïntegreerde richels rust om de juiste hoogte te garanderen. Zet deze plaat vast met twee schroeven (M3) door de gaten aan beide uiteinden.

Leid de draden van de componenten op de basisplaat omhoog en door de gaten van de steunplaat. Het LCD-scherm en de servomotordraden moeten door het voorste gat worden geleid, terwijl de DC-motordraden door de zijgaten moeten gaan. De draden van het batterijpakket kunnen naar wens door beide gaten gaan.

Stap 6: definitieve elektronische componenten monteren

Definitieve elektronische componenten monteren
Definitieve elektronische componenten monteren

Bevestig met behulp van hete lijm de twee ultrasone sensoren aan de voorkant van de behuizing met de trigger- en echomodules die uit de gaten of "ogen" steken. De pinnen op de ene sensor moeten naar boven wijzen en de andere naar beneden, zoals aangegeven door het gat in de steunplaat. Dit is om ervoor te zorgen dat de echo- en triggermodules symmetrisch in de behuizing zijn bij het verzenden en ontvangen van signalen.

Dep tot slot hete lijm op de achterkant van de geluidssensor en bevestig deze in de gleuf aan de binnenkant van de behuizing. De bovenkant van de microfoon moet gelijk zitten met de bovenkant van de behuizingsrand, zodat de dop van Sweepy erop kan worden geplaatst. De microfoon zou uitgelijnd zijn met het gat op de dop, zoals u later zult zien.

Stap 7: Draden, draden en meer draden

Draden, Draden & Meer Draden
Draden, Draden & Meer Draden

De volgende stap is misschien wel het moeilijkste maar belangrijkste onderdeel om ervoor te zorgen dat Sweepy gezond en gelukkig is: het circuit. Gebruik het Fritzing-diagram bovenaan deze Instructables als richtlijn en sluit alle draden van de componenten aan op de prototype-uitbreidingsmodule.

Zorg ervoor dat de schakelaar op de accu uit staat voordat u de voedingskabel op het bord aansluit. Omdat de code al op het bord zou moeten zijn geüpload, zou Sweepy zijn opwinding voor het schoonmaken niet kunnen bedwingen en beginnen te werken zodra hij stroom krijgt, zelfs als je nog aan de draden werkt.

Besteed speciale aandacht aan de in- en uitgangen van elke draad. Het helpt om de kleur van de draad te gebruiken om deze langs zijn pad te volgen.

Stap 8: De bewegende delen toevoegen

De bewegende delen toevoegen
De bewegende delen toevoegen

Nu is het tijd voor Sweepy's achterwiel en veegborstel.

Het achterwiel moet een zwenkwiel zijn dat vrij rond kan draaien. Het moet ongeveer 6,4 cm hoog zijn van boven naar beneden, maar de tolerantie kan ruim zijn, afhankelijk van hoeveel neerwaartse kracht je wilt dat de borstel uitoefent. Bevestig deze onder de steunplaat door het gat in de grondplaat.

De veegborstel is ook royaal in tolerantie, maar het handvat moet ongeveer 1,2 cm van de grond zitten. Het handvat moet ook ongeveer 10 cm lang zijn om te voorkomen dat het de behuizing raakt tijdens het heen en weer vegen. Bevestig deze met lijm aan de witte hendelbevestiging die bij de servomotor is geleverd.

Stap 9: Alles afsluiten

Alles afsluiten
Alles afsluiten

Om je eigen Sweepy te voltooien, moet je de dop maken. Lijm de doprand onder de afdekplaat met het gat erop. Zorg ervoor dat het gat is uitgelijnd met de microfoon van de geluidssensor. Lijm ten slotte de dop op de bovenkant van Sweepy en lijn de voorranden uit met de voorkant van de behuizing.

Schakel de stroom aan de achterkant in en kijk hoe Sweepy zijn dromen najaagt om van de studio een schonere plek te maken voor iedereen.

Stap 10: Resultaten & reflectie

Resultaten & reflectie
Resultaten & reflectie
Resultaten & reflectie
Resultaten & reflectie

Ondanks uitgebreide ontwerpplanning, gebeuren er fouten, maar dat is niet erg: het maakt allemaal deel uit van het leerproces. En voor ons was het niet anders.

Een van onze grootste uitdagingen was het ontwerpen van de behuizing van Sweepy om alle benodigde componenten te omsluiten. Dit betekende het nauwkeurig meten van de afmetingen van alle componenten, het plannen van draadpaden, het zorgen voor structurele integriteit, enz. We eindigden met 3D-printen en lasersnijden van twee iteraties van Sweepy's behuizing, de tweede was de definitieve versie op basis van wat we van de eerste hebben geleerd iteratie.

Een groot obstakel waarmee we werden geconfronteerd, zijn de beperkte mogelijkheden van de ultrasone sensor: deze besloeg niet een groot genoeg gebied en Sweepy raakte af en toe een muur wanneer hij onder een hoek naderde. Dit werd opgelost door de toevoeging van een tweede ultrasone sensor om het effectgebied effectief te vergroten.

We kozen in eerste instantie ook voor een servomotor om het draaien te regelen, maar die was niet zo effectief en structureel gezond als we hadden gehoopt. Als gevolg hiervan hebben we het achterwiel vervangen door een vrij zwenkwiel en hebben we de verantwoordelijkheid voor het draaien naar de twee aandrijfwielen geduwd door middel van differentieel draaien (het ene wiel zou langzamer bewegen dan het andere om draaien te simuleren). Hoewel dit betekende dat we grote wijzigingen in de code moesten aanbrengen, werd ons algehele ontwerp hierdoor effectief vereenvoudigd, waardoor er minder servomotor uit de vergelijking kwam.

‏‏‎ ‎

Toekomstige iteraties

Er is altijd ruimte voor verbetering. In de toekomst is een ontwerpwijziging voor ons project de overweging van Sweepy-onderhoud en toegankelijkheid van de binnenkant. We hadden meerdere problemen ondervonden, waaronder motorstoringen en lege batterijen, waardoor we Sweepy uit elkaar moesten halen om de componenten uit te schakelen, wat erg onintuïtief was. In de toekomst zouden we een behuizing ontwerpen met bedienbare openingen die toegang geven tot de componenten, zoals de batterij.

We overwegen ook het gebruik van een druksensor aan de voorkant om te detecteren wanneer Sweepy tegen een oppervlak botst, omdat we de ultrasone sensor soms onbetrouwbaar vonden, vooral bij nadering onder een steile hoek. Door een mechanische sensor te hebben, zou Sweepy consistenter zijn in het beslissen wanneer en wanneer niet te draaien.

Hoewel Sweepy goed werkt in kleine ruimtes, kan het minder effectief zijn in grotere ruimtes. Dit komt omdat Sweepy alleen is geprogrammeerd om te draaien wanneer het een oppervlak ervoor detecteert, maar verder in een rechte lijn blijft totdat de aarde is vernietigd. In de toekomst kan het de moeite waard zijn om een vast schoonmaakpad voor Sweepy voor te programmeren, zodat het binnen een grens blijft in plaats van voor altijd weg te dwalen.

‏‏‎ ‎

Referenties & Credits

Dit project is gemaakt als onderdeel van de cursus Physical Computing (ARC385) aan de Daniels Faculty of Architecture, Landscape and Design undergrad-programma aan de UofT.

‏‏‎ ‎

Leden van het team

  • Evan Guan
  • Terence Lo
  • Wilson Yang

‏‏‎ ‎

Geïnspireerd door

  • Roomba robotstofzuiger
  • Wipy: de overdreven gemotiveerde whiteboardreiniger
  • De rommelige omstandigheden van studioruimte

Aanbevolen: