Inhoudsopgave:

Sumobot van 1 kg bouwen - Ajarnpa
Sumobot van 1 kg bouwen - Ajarnpa

Video: Sumobot van 1 kg bouwen - Ajarnpa

Video: Sumobot van 1 kg bouwen - Ajarnpa
Video: LEGO Spike Prime Sumo-Bot Finals BigBang Wetenschapsbad Wevelgem 2024, November
Anonim
1KG Sumobot Build
1KG Sumobot Build

Deze Instructable begeleidt u bij het ontwerpen en bouwen van een sumobot van 1 kilogram.

Maar eerst een beetje achtergrondinformatie over waarom ik besloot dit op te schrijven. Ik stond op het punt mijn oude sumobot te repareren voor een wedstrijd toen ik me realiseerde dat ik nog nooit een Instructable had gemaakt over het maken van een sumobot. Ik ben het afgelopen jaar stil geweest in Instructables, dus ik besloot dat ik terug zou komen met deze Instructable over het bouwen van een 1KG sumobot.

Ten eerste zullen velen van jullie zich afvragen: wat is een sumobot?

Kortom, een sumobot is een soort robot die wordt gebruikt in sumobot- of robot-sumo-wedstrijden. Zoals de naam al doet vermoeden, is het doel om elkaar uit een ring te duwen, vergelijkbaar met sumoworstelen. De sumobot zelf is ontworpen met als enig doel een andere sumobot uit de ring te duwen. De sumobot in deze Instructable is 1 kilogram. Er zijn echter ook andere gewichtsklassen zoals 500 gram en 3 kilogram.

Vaardigheden benodigd:

  • Kennis van CAD (Computer Aided Design)
  • Solderen
  • Programmeren in Arduino

Voor dit project zijn niet veel vaardigheden nodig. Gewoon vertrouwd zijn met CAD, solderen en programmeren gaat een lange weg. Laat u niet afschrikken door hoe ingewikkeld computerondersteund ontwerp klinkt. Autodesk biedt gratis uitgebreide tutorials over hun eigen software (ik gebruik zelf Fusion 360) en het is zeer nuttig voor een beginner die de kneepjes van het vak leert. Wat voor mij belangrijker is, is de bereidheid en bereidheid om te leren, en natuurlijk om onderweg plezier te hebben.

Hiermee gaan we aan de slag.

PS Ik doe ook mee aan deze Instructable in de Make it Move-wedstrijd. Als je dit Instructable geweldig vindt, stem dan ook op mij. (Ik wil het t-shirt; het ziet er echt cool uit:))

Stap 1: Onderdelenlijst

Onderdelen lijst:

0,090 "6061 aluminiumplaat - 12" x 12" (of een aluminiumplaat van 0,090"/2,2 mm die kan worden gefreesd. Ik koos 6061 omdat dit voor het hoofdgedeelte zou worden gebruikt, en 6061 heeft een behoorlijke hoeveelheid sterkte)

0,5 mm aluminiumplaat - 12 "x 12" (elke legering zou werken; dit is alleen voor de bovenklep en het mes. Ik heb reserve aluminium restjes gebruikt)

5 mm aluminiumplaat (Nogmaals, elke legering zou werken. De mijne waren 7075 aluminiumresten.)

2 x 12V DC-motor met hoog koppel (elke motor met hoog koppel werkt, zoals deze van Amazon.)

2 x velg (Nogmaals, elke velg zou werken, afhankelijk van je motor. Als je een motoras van 5 mm hebt, zullen deze wielen goed werken. De mijne zijn eigenlijk enkele oude siliconen wielen die ik had)

4 IR-afstandssensoren (ik gebruik Sharp IR-afstandssensoren, die kunnen worden gekocht bij meerdere winkels, zoals deze van Pololu en deze van Sparkfun.)

2 IR-sensoren (ik heb er hier weer wat van Sparkfun.)

1 Microcontroller-bord (ik gebruik een ATX2 alleen omdat het nodig is. Een gewone Arduino Uno zou eigenlijk beter zijn vanwege het gebruiksgemak).

1 3S lithium-polymeerbatterij (LiPo. 3S LiPo's zijn 12 volt. Een capaciteit van 800 tot 1400 mAh zou werken.)

1 Motor driver (Nogmaals, dit hangt af van hoeveel stroom je motor kan trekken. Dit gaat direct bovenop een Arduino Uno en kan tot 5A stroom leveren.)

Draden, kabels en connectoren (om de sensoren op het bord aan te sluiten en om te communiceren met een laptop.)

M3 schroeven en moeren

Epoxy

Karton

Laptop (om het bord te programmeren)

Gereedschappen zoals scharen, draadstrippers en soldeerbout.

Stap 2: Het chassis monteren

Het chassis monteren
Het chassis monteren
Het chassis monteren
Het chassis monteren
Het chassis monteren
Het chassis monteren
Het chassis monteren
Het chassis monteren

Ik gebruikte Fusion 360, een alles-in-één cloud-aangedreven 3D CAD/CAM-software, om het chassis te ontwerpen. Autodesk biedt hier prachtige tutorials. Ik heb geleerd door vooral naar de video's te kijken en ze vervolgens zelf te maken. Ik zal je niet proberen te leren hoe je Fusion 360 moet gebruiken; Ik laat professionals hun ding doen.

Het ontwerp zelf bestaat uit een hoofdbasis, een blad, een bovenklep, twee motorbeugels en twee (of vier) 3D-geprinte beugels. De hoofdbasis is 2,2 mm aluminium, de motorbeugels zijn 5 mm aluminium, het blad is 0,5 mm aluminium, terwijl de bovenklep 0,5 mm aluminium of gewoon karton kan zijn. Ik heb karton gebruikt omdat het aluminium een paar gram meer weegt, en ik zat 10 gram boven de limiet van 1 kilogram. De 3D-geprinte beugels daarentegen zijn bedrukt met ABS, op 50% vulling.

De ontwerpen waarvoor aluminium nodig was, werden geëxporteerd naar.dxf-bestanden en naar een lokaal lasersnijbedrijf hier in de Filippijnen gestuurd. De 3D-geprinte onderdelen werden ondertussen geëxporteerd naar STL en opnieuw verzonden naar een lokaal 3D-printbedrijf.

Disclaimer: ik heb een oude sumobot van mij hergebruikt die niet meer werkt maar dit ontwerp gebruikt, dus sommige onderdelen zijn al in elkaar gezet op de foto's. Ik zal u echter door het proces leiden van het samenvoegen van alle onderdelen.

Nadat de onderdelen zijn gesneden, kunt u beginnen met de bovenklep, de beugel en het mes, of de motorbeugel.

De bovenklep in het ontwerp is gemaakt van aluminium, maar vanwege gewichtsbeperkingen heb ik karton gebruikt. Ik sneed karton in dezelfde specificaties als in het ontwerp.

De 3D-geprinte beugel wordt aan de voorkant vastgezet met schroeven en wordt gebruikt om het mes letterlijk te verstevigen. Het mes wordt met epoxy op de basis geplakt. Schroefgaten in het blad en de hoofdbasis worden gebruikt om de positionering te begeleiden en ervoor te zorgen dat deze nauwkeurig met elkaar wordt verbonden. Er zijn ronde gaten op de hoofdbasis die u met epoxy kunt vullen om het mes op de hoofdbasis te plakken. Door het grote oppervlak van de gaten kan de epoxy het mes beter vastgrijpen en voorkomen dat het van de basis scheurt. De IR-sensor kan ook met epoxy aan de onderkant van het mes worden geplakt, net zoals op de foto's. Zorg ervoor dat de onderkant van de sensor loodrecht op de vloer staat.

Om de motor op de basis te monteren, schroeft u eerst de motor in de motorbeugel. U moet echter eerst draden aan de motor solderen, omdat de draden zich aan de achterkant van de motor bevinden en ze moeilijk te bereiken zijn als ze eenmaal aan de basis zijn bevestigd. De motor is uitgelijnd met de motorbeugel en wordt opgehouden door schroeven. Tenminste, als je de motor hebt die ik in de onderdelenlijst heb opgenomen. Zo niet, dan kunt u het ontwerp aanpassen aan uw motor. Op dit punt kunt u ook de velg aan de motor bevestigen. De motorbeugel wordt vervolgens op de achterste gaten van de hoofdbasis geschroefd.

Als u een motordriver gebruikt die niet bovenop de Arduino kan, of om welke reden dan ook dat de motordriver een eigen gebied moet hebben, is er ruimte tussen de motoren en het blad ervoor. Deze ruimte is bedoeld voor de lipo-batterij en een motordriver, voor het geval u de extra ruimte nodig heeft. Aangezien we ook al aan het onderste deel van de robot werken, en het later moeilijk toegankelijk zou zijn als de bovenklep eenmaal is bevestigd, kunt u de motoraandrijving tussen het mes en de motoren plaatsen, net zoals op de foto's. Dubbelzijdig plakband kan helpen bij het bevestigen aan de basis.

Stap 3: Elektronica

Elektronica
Elektronica
Elektronica
Elektronica
Elektronica
Elektronica

De volgende is de elektronica, zoals de sensoren, de motordriver en het bord.

Als je, nogmaals, een motordriver gebruikt die niet bovenop een Arduino gaat, begin dan met het bevestigen van de draden die nodig zijn om deze met de microcontroller te verbinden. Voor mijn motordriver heb ik alleen een signaal (blauw) en aarde (zwart) draad nodig. Het hangt van de bestuurder zelf af. Wat alle stuurprogramma's nodig hebben, zijn draden om verbinding te maken met de batterij of stroombron. De kabels die aan mijn XT-60 waren bevestigd (dezelfde plug op de meeste lipo-batterijen) waren te dik, dus ik moest hem inkorten om in de smalle connectorblokken te passen.

Mijn microcontroller deelt ook dezelfde stroombron als de motordrivers, dus ik moest draden rechtstreeks solderen aan de draden van de XT-60-connector op de motordrivers.

Op de IR-afstandssensoren zelf moeten mogelijk headerpinnen zijn gesoldeerd, afhankelijk van welke sensor u krijgt. Ze bevatten meestal wat in het pakket als je ze koopt, dus soldeer ze gewoon als dat nodig is.

Mogelijk moet je ook draden aan elkaar solderen om de microcontroller op de sensoren aan te sluiten, net als ik. De sensor heeft een eigen connector; sommigen gebruiken JST, terwijl sommigen servo-headers gebruiken. Met een gewone Arduino kun je startkabels op de Arduino plakken en vervolgens het andere uiteinde van de kabel solderen aan de kabel die uit de sensor komt. Het proces werkt op dezelfde manier met andere microcontrollers. Draden die van de microcontroller komen, zijn gesoldeerd aan draden die van de sensor komen.

Stap 4: Alle onderdelen bij elkaar zetten

Alle onderdelen samenvoegen
Alle onderdelen samenvoegen
Alle onderdelen samenvoegen
Alle onderdelen samenvoegen
Alle onderdelen samenvoegen
Alle onderdelen samenvoegen
Alle onderdelen samenvoegen
Alle onderdelen samenvoegen

De sensoren en microcontroller gaan op de bovenplaat. Ik heb de IR-afstandssensoren op een stuk karton gemonteerd om deze boven de microcontroller te plaatsen, omdat de draden achter de sensor in botsing komen met de microcontroller. Merk op dat er maar drie sensoren op de foto staan. Het was pas op het laatste moment dat ik besloot om een vierde afstandssensor toe te voegen aan de achterkant van de robot. Helaas was er geen ruimte meer, dus moest ik hem op de hoofdbasis zelf monteren, direct achter de motoren.

De microcontroller wordt vervolgens op de bovenplaat bevestigd. Niets te moeilijk; Ik heb net wat gaten in het karton geprikt en het hele bord op de bovenplaat geschroefd. Als u aluminium gebruikt, is een handboor een must.

Nadat alles op de bovenplaat is bevestigd, gebruikt u dubbelzijdig plakband om het op het bovenste deel van de motoren te plakken.

Op dit punt kunt u beginnen met het aansluiten van alle elektronica, zoals het aansluiten van de sensoren en de motordriver op de microcontroller. Als je de motordriver gebruikt die gewoon op de Arduino plakt, dan is dat geen probleem voor jou. Zo niet, dan moet je het volgens de specificaties van de bestuurder op het bord aansluiten, net zoals ik deed.

Zodra alles is aangesloten, plaatst u de lipo in de onderste ruimte tussen de motoren en het blad en zet u vervolgens uw microcontroller en stuurprogramma's aan om deze voor de eerste keer te zien oplichten.

Stap 5: Programmeren

Als alles in elkaar zit, is er nog één ding dat je moet doen: je robot programmeren.

Het programmeren van uw robot hangt af van welke strategie u wilt. Ik ga er hier van uit dat je bekwaam bent in programmeren, omdat mijn motordriver seriële (UART) communicatie gebruikt, en dus zal mijn programma niet werken voor andere motordrivers. Er is immers geen one size fits all in programmeren.

Om je te helpen, is hier een basisstroomschema van mijn programma.

als er iemand heel dichtbij vooraan is, ga dan op volle kracht als de linker of rechter kleurensensor een witte lijn detecteert, ga terug en draai dan om als de linker of rechter afstandssensor iets detecteert, draai in die richting als de achterste sensor iets detecteert, draai in die richting als iemand is ver naar voren, ga vooruit, blijf vooruit gaan

Hier is het hele programma als je nieuwsgierig bent:

#erbij betrekken

// A5 - linker kleursensor // A4 - rechter kleursensor // A6 - achterste afstandssensor // A2 - linker afstandssensor // A3 - rechter afstandssensor // A1 - voorste afstandssensor // motor 1 - rechts // motor 2 - left void setup() {uart1_set_baud(9600); Serial1.write(64);Serial1.write(192); OKE(); piep (2); setTextColor (GLCD_BLUE); glcd(1, 0, "Geïnitialiseerd"); vertraging (4900); }

lege lus() {

int frontDistanceValue = analogRead (A1); int leftDistanceValue = analogRead (A2); int rightDistanceValue = analogRead (A3); int rearDistanceValue = analogRead (A6); int leftColorValue = digitalRead (A5); int rightColorValue = digitalRead (A4); if (frontDistanceValue> 250) { // iemand recht vooraan, max power Serial1.write (127); Serieel1.schrijf(128); } else if (leftColorValue == 0) { // touched edge // reverse Serial1.write (1); Serieel1.schrijf(255); vertraging (400); Serieel1.schrijven(1); Serieel1.schrijf(128); vertraging (300); } else if (rightColorValue == 0) { // touched edge // reverse Serial1.write (1); Serieel1.schrijf(255); vertraging (400); Serial1.write (127); Serieel1.schrijf(255); vertraging (300); } else if (frontDistanceValue> 230) { // nogal ver vooraan Serial1.write (127); Serieel1.schrijf(128); } else if (leftDistanceValue> 250) { // sla linksaf Serial1.write (127); Serieel1.schrijf(255); vertraging (450); } else if (rightDistanceValue > 250) { // sla rechtsaf Serial1.write(1); Serieel1.schrijf(128); vertraging (450); } else if (rearDistanceValue> 150) { // near back Serial1.write (1); Serieel1.schrijf(128); vertraging (1050); } else if (frontDistanceValue> 180) { // ver vooraan Serial1.write (127); Serieel1.schrijf(128); } else { Serial1.write(100); Serie1.write(155); } }

Stap 6: Foto's

Foto's
Foto's
Foto's
Foto's
Foto's
Foto's
Foto's
Foto's

Getoond worden enkele foto's van de voltooide sumobot.

Hopelijk heb je iets geleerd van deze instructable. Als je deze gids leuk vindt, stem dan op mij in de Make it Move-wedstrijd. Zo niet, dan corrigeer ik graag alles wat deze handleiding kan verbeteren.

Veel plezier met leren!

Aanbevolen: