Bouw een 3D-geprint Nerf-miniguntoren voor je RC-tank
In deze tutorial laat ik je zien hoe ik deze dubbele-lauf Nerf-miniguntoren bouwde voor de 3D-geprinte tank die ik in een eerdere video maakte. Spoiler: de minigun of gatling gun is eigenlijk nep, maar het maakt de tank er supercool en leuk om mee te spelen.
Je kunt de volgende video bekijken of de geschreven tutorial hieronder lezen.
Overzicht
De toren heeft een magazijn dat ongeveer 200 Nerf-pijlen kan bevatten en die allemaal in ongeveer een minuut kan afvuren. Dat is een vuursnelheid van ongeveer 200 pijlen per minuut. De pijlen vliegen met een snelheid van ongeveer 50 m/s, wat een bereik van ongeveer 12 meter oplevert.
Dit zijn de maximumstatistieken, die niet spektaculair zijn, maar we kunnen ze onafhankelijk van elkaar regelen – zowel de vuurkracht als de vuursnelheid – via de RC-zender.
Voor het besturen van de tank gebruik ik een goedkope commerciële RC-zender die commando's stuurt. Aan de tank zit een geschikte RC-ontvanger die de commando's ontvangt en doorstuurt naar een microcontroller.
De hersenen van dit platform is een Atmega2560-microcontroller-gebaseerde bord, en voor het gemakkelijk aansluiten van alles maakte ik een custom PCB die simpel op het bord kan worden gemonteerd.
Zoals al gezegd, hebben we geen echte minigun- of gatlinggun-mechanisme die de Nerf-pijlen afvuurt, maar een simpele en gangbare methode met vliegwielen. De vliegwielen draaien met een zeer hoge RPM in tegengestelde richting, zodat wanneer het zachte deel van de Nerf-pijl er contact mee maakt, de pijl krachtig wordt voortgedreven.
Om de Nerf-pijlen in die voortdrijvende positie te krijgen, hebben we een draaiend onderdeel dat de pijlen simpelweg in plaats duwt tijdens het draaien.
En voor het opslaan van de Nerf-pijls gebruikte ik nog een simpele methode. Ik maakte een groot magazijn dat de pijls houdt, en met behulp van zwaartekracht en twee rollen aan de onderkant van het magazijn worden de pijls in positie gebracht voor de duwer om ze naar de vliegwielen te duwen.
Kort nog iets over de tank uit de vorige video. Het is een volledig 3D-geprinte tank die ik ontwierp, met een dubbele-snelheid tandwielkast waarmee we een lagere of hogere versnelling kunnen selecteren om zo hogere koppel of hogere snelheid te krijgen, afhankelijk van het terrein of de toepassing.
De tank heeft ook coole LED-lichtjes, namelijk adresseerbare LED-strips waarmee we oneindig mooie lichteffecten kunnen creëren. Voor alle details over het bouwen van de tank, kun je het vorige artikel bekijken; nu richten we ons op het bouwen van de miniguntoren.
Ontwerpen van de NERF-miniguntoren
Laten we eerst kijken naar het ontwerpproces. Ik gebruikte Onshape voor het ontwerpen van de toren, wat ook de sponsor van dit project is.
Onshape is het professionele, cloud-native 3D CAD- en PDM-systeem dat ik voor mijn projecten gebruik.
Ik raad mechanische ingenieurs en productontwerpers aan Onshape te bekijken; jullie en jullie bedrijf kunnen Onshape Professional gratis gebruiken tot 6 maanden via https://Onshape.pro/HowtoMechatronics
Mijn hoofddoel voor dit project was er cool uitzien, daarom bedacht ik dit dubbele-lauf ontwerp, evenals een groot magazijn om zoveel mogelijk Nerf-pijls te kunnen bevatten.
Voor de pan- en tilt-beweging van de toren gebruikte ik twee korte NEMA17-stappenmotoren. De pan-beweging gebeurt aan de basis met behulp van een tandwielset.
De basis is vast aan de tank en heeft een vast tandwiel in het midden, en het bovenste deel van de toren panneert of roteert terwijl de stappenmotor het andere paar van de tandwielset om het vaste centrale tandwiel laat draaien.
Aan de andere kant gebeurt de tilt-beweging aan de achterkant met behulp van een spindelmechanisme.
De vliegwielen worden aangedreven door 12.000 RPM DC-motoren. We hebben twee vliegwielen per loop nodig, dus in totaal 4 van deze 12V DC-motoren.
Bij het afvuren vliegen de Nerf-pijls door de centrale loop. De andere lopen eromheen zijn er puur voor de coole uitstraling.
Voor het duwen van de pijls in de vliegwielen gebruik ik een 50 RPM DC-motor die een 6mm as via een tandwielset aandrijft. Aan beide kanten van de as zitten deze pijlduwers, die de pijls in de vliegwielen duwen zodra de as draait.
Dan hebben we nog dit magazijn dat ongeveer 200 pijls kan houden, en aan de onderkant deze rollen die helpen de pijls in positie te brengen om ze naar de vliegwielen te duwen.
De rollen worden aangedreven door een 20 RPM DC-motor in combinatie met een paar tandwielen om ze in de juiste richting te laten draaien.
Dit was eigenlijk het meest uitdagende deel van het hele project. Op het eerste gezicht ziet het simpel uit: onder zwaartekracht moeten de pijls naar benen gaan, en de rollen leiden ze. Maar het probleem is dat Nerf-pijls extreem licht zijn. Bovendien zijn ze neus-zwaar door de rubberen punt vooraan, wat ze zo moeilijk maakt om op deze manier te geleiden.
3D-model en STL-downloadbestanden
Je kunt het 3D-model van deze NERF-miniguntoren RC-tank direct in je webbrowser bekijken met Onshape.
Je kunt het 3D-model van dit RC-tank/robotplatform, evenals de STL-bestanden voor 3D-printen, downloaden van Cults3D.
3D-printen
Ik zeg het altijd in mijn video's: bij 3D-printen is het essentieel om de Horizontale Uitbreiding-functie te gebruiken, of nu in de Creality Print slicer heet het X-Y-contourcompensatie en X-Y-gatencompensatie.
Als we deze instellingen standaard laten, zullen de afmetingen van de prints waarschijnlijk niet precies overeenkomen met het CAD-model, door de uitrekking van het filament tijdens het printen. Gaten komen meestal kleiner uit, en contouren groter.
Voor dit project hebben we voor sommige onderdelen – zoals de magazijnrollen en hun assen – losse passingen of clearance fits nodig, en voor andere – zoals de loopmontage – strakke passingen of interferentie fits. Daarom gebruiken we negatieve of positieve waarden voor deze instellingen, afhankelijk van het onderdeel. Ik gebruikte waarden binnen een bereik van ±0,1 mm. Je kunt deze waarden echter alleen correct krijgen door testprints met verschillende waarden te doen.
Ik gebruikte de Creality K2 Plus 3D-printer voor alle onderdelen. Een shout-out aan Creality voor het leveren van deze uitstekende printer. De Creality K2 Plus is eigenlijk een van de beste 3D-printers die ik ooit heb gebruikt. Je kunt er gewoon alles in gooien, of het nu een klein onderdeel is of zo groot als 350x350mm, en het doet zijn werk perfect.
Bekijk mijn gedetailleerde review van de Creality K2 Plus. Ook te vinden bij: Creality USA-winkel; Creality EU-winkel; Amazon.
Monteren van de NERF-miniguntoren
Oké, hier zijn alle 3D-geprinte onderdelen, dus we kunnen beginnen met monteren.
Het duurt een hele weile om alles te printen, want er zijn veel onderdelen en sommige zijn vrij groot.
Hier is een complete lijst met benodigde componenten, zoals de DC-motoren, lagers en bouten en moeren.
Stuklijst (Bill of Materials)
| Elektrisch onderdeel | Aantal | Aankooplinks |
|---|---|---|
| 12000 RPM 12V DC-motor RS3604 | 4 | Amazon | AliExpress | Temu |
| 300 RPM 12V DC-motor – JGA25-370 | 1 | Amazon | AliExpress | Temu |
| 60 RPM 12V DC-motor – JGA25-370 | 1 | Amazon | AliExpress | Temu |
| 30 RPM 12V DC-motor – JGA25-370 | 1 | Amazon | AliExpress | Temu |
| NEMA17 30mm stappenmotor | 2 | Amazon | AliExpress | Temu |
| Draden ~20AWG ~3m | 1 | Amazon | AliExpress | Temu |
| Mechanisch onderdeel | Aantal | Aankooplinks |
|---|---|---|
| RC-shockabsorbers | 8 | Amazon | AliExpress | Temu |
| Kogellager 686 – 6x13x5mm | 2 | Amazon | AliExpress | Temu |
| Kogellagers 624 – 4x13x5mm | 44 | Amazon | AliExpress | Temu |
| M6-gedraaide staaf | 200mm | Amazon | AliExpress | Temu |
| M3-gezwinde inserts | ~30 | Amazon | AliExpress | Temu |
| M3-zeskantschroef | ~10 | Amazon | AliExpress | Temu |
| M3 en M4 bouten en moeren | Te specificeren | Amazon | AliExpress | Temu |
| Bouten | Moeren |
|---|---|
| M2,5×6/8 ingesenkt – 8 | M3 borgmoer – 50 |
| M3x8mm – 14 M3x10mm – 10 M3x16mm – 12 M3x16/18mm – 4 M3x20mm – 10 M3x25mm – 4 M3x8mm ingesenkt – 12 M3x10mm ingesenkt – 4 | M3 moer – 10 M4 borgmoer – 40 M4 moer – 1 M6 moer – 4 |
| M4x20mm – 6 M4x25mm – 2 M4x30mm – 1 | |
| M3 zeskantschroeven – 10 |
Disclaimer: Dit zijn affiliatelinks. Als Amazon Associate verdien ik aan kwalificatieve aankopen.
Voor de elektronische stuklijst, zie het schakelschema.
Monteren van de toren
Eigenlijk, voordat we de toren monteren, installeerde ik nieuwe veren in de shockabsorbers. Dit is een must, want met de toren voegen we een aanzienlijke massa toe aan de bovenkant van de tank.
De oorspronkelijke veren van de shockabsorbers zijn te zwak om al dat gewicht te dragen. Ik kocht veren met dezelfde afmetingen als de originele, 30mm lang en 15mm buitendiameter, maar met dikker draad. De oorspronkelijke draad was 1mm dik, hier kon ik die veren makkelijk met twee vingers samendrukken. De nieuwe waren 1,5mm dik en veel sterker. Aan de achterkant installeerde ik een 1,8mm veer, omdat het grootste deel van het gewicht van de toren daar zit. Ik zou je echter aanraden om gewoon de 1,5mm veren te nemen, die sterk genoeg zijn zelfs voor achteren.
We kunnen beginnen met het monteren van de basis van de toren. Dit basisonderdeel wordt vastgemaakt aan de achterkant van het tankdeksel. Er zitten twee gaten aan de binnenkant van de basis die overeenkomen met twee gaten op het tankdeksel, en ik gebruikte ze om de basis correct uit te lijnen, en boorde met een 3mm boor gaten in het achterdek van de tank.
Ik plaatste deze gaten specifiek op de ribben aan de binnenkant van het deksel, zodat ze stevig genoeg zijn om de torenbasis veilig te bevestigen. Ik markeerde en boorde ook een gat voor de draden van de toren om doorheen te gaan. Deze nieuwe gaten zullen worden bijgewerkt in de originele 3D-modelbestanden van de tank, dus als je nu de tank bouwt, zitten de gaten er al in. We bevestigen de torenbasis aan het tankdeksel met vier M3-bouten en moeren.
Vervolgens kunnen we het pan-platform op de basis monteren. Dit platform zit op en roteert op een paar kogellagers die aan de basis bevestigd zijn. Ik gebruik 13mm buitendiameter lagers met 6mm binnendiameter.
Mijn bedoeling was om lagers met 4mm binnendiameter te gebruiken, maar die waren op, dus ik 3D-printte enkele hulses zodat ik deze lagers met 6mm binnendiameter en M4-bouten nog kon gebruiken. Je ziet dat ik 4 van deze lagers installeerde, maar ik zal het model upgraden naar 6 lagers voor beter contact.
Om de twee delen uitgelijnd te houden, gebruiken we een lager met 47mm buiten- en 35mm binnendiameter. Het lager past tussen beide delen en zo krijgen we een vloeiende beweging. Voor het bevestigen van het bovenste deel gebruiken we deze flens bovenop het lager. Maar voordat we dat doen, moeten we eerst de stappenmotor voor de pan-beweging plaatsen. De stappenmotor is een NEMA17 maar met slechts 24mm lengte, zodat hij past.
Misschien had ik ook een 30mm NEMA17 kunnen nemen, want ik ontdekte later dat deze kortere motor een beetje moeite had met kracht voor de pan-beweging. Op dit moment moeten we ook het tandwiel aan de motoras bevestigen. Voor de bevestiging zit er een sleuf voor een M3-bout, en met een zeskantschroef kunnen we het tandwiel stevig op de as fixeren.
Om de pan-montage af te ronden, moeten we nog enkele gezwinde-inserts in de basis plaatsen, en dan met de flens het lager bevestigen, zodat het pan-platform op zijn plaats zit.
Oké, nu kunnen we het tilt-platform installeren. Dat is dit vreemd ogende deel dat eruitziet als Goudse kaas. Ja, het heeft zoveel gaten omdat we er veel onderdelen aan moeten bevestigen.
Voor het tilt-gewricht moeten we twee lagers aan de zijkanten van het platform installeren. Dit zijn dezelfde 13mm buitendiameter lagers. Het is de moeite waard om hier op te merken dat we de lagers niet met geweld in de gaten moeten persen, want het deel is hier maar 5mm dik en kan gemakkelijk delamineren of breken op deze locatie.
Ik gebruikte een diamantvijl om het gat glad te maken en iets uit te rekken, zodat het lager gemakkelijk past. Met twee M4-bouten bevestigen we het tilt-platform en vormen zo het tilt-gewricht.
Vervolgens kunnen we de beugel monteren die de tilt-stappenmotor vasthoudt. Daarna installeren we het cilinderachtige deel dat het spindelmechanisme voor de tilt-beweging vormt. We hebben ook een M4-gedraaide staaf nodig. We hebben twee stukken van 66mm lengte nodig.
Eerst komt een M4-moer bovenaan het cilinderdeel, en dan schroeven we de gedraaide staaf erin. Om de 5mm stappenmotoras met de 4mm gedraaide staaf te koppelen, gebruik ik deze 3D-geprinte koppeling die met een M3-bout en moer vastgezet kan worden. Vervolgens verbinden we met de andere 66mm staaf de stappenmotorbegels en zo is het tilt-mechanisme compleet.
Zodra we de gedraaide staaf draaien, gaat het tilt-mechanisme omhoog of omlaag. We merken hier dat het mechanisme niet heel stevig is. De wobbel komt van de M4-moer die niet strak in het cilinderdeel past. Ik verving het cilinder voor een strakkere pasvorm, en nu was het beter. Natuurlijk wobbeelt het hele tilt-mechanisme een beetje, omdat er spel zit tussen de M4-moer en de gedraaide staaf, alsook in de andere gewrichten, maar het is goed genoeg, denk ik.
Nu kunnen we doorgaan met het installeren van de vliegwiel-DC-motoren. Dit zijn 12.000 RPM 12V DC-motoren. We hebben M2,5 ingesenkte bouten nodig om ze te bevestigen.
Eenmaal bevestigd, kunnen we de vliegwielen op de motorassen schuiven. Het gat van het vliegwiel is gedimensioneerd en 3D-geprint met toleranties voor een interferentiepasvorm met de motoras, dus we hoeven geen schroeven te gebruiken om ze te bevestigen.
Er moet een gat van 2,5mm tussen de vliegwielen en het tilt-platform zitten, dus hier gebruik ik een 2,5mm boor als limiter bij het instellen van de vliegwielen. Ik merkte later echter dat de motoras een axiaal spel van ongeveer 0,5mm heeft bij indrukken, dus met de 2,5mm boor als limiter krijg je 3mm gat. We zouden een boor of iets anders van 2mm als limiter moeten gebruiken.
Na het installeren van de vliegwielen moeten we controleren of ze goed contact hebben met de Nerf-pijls.
Ze moeten goede grip hebben, maar tegelijkertijd niet te strak zitten. Voor de juiste grip kun je verschillende waarden van de horizontale uitbreidingsinstellingen bij het 3D-printen proberen. Dat geldt ook voor het krijgen van de juiste gatafmetingen voor de interferentiepasvorm met de motoras.
Vervolgens installeren we het deel dat de Nerf-pijls vasthoudt voordat ze naar de vliegwielen worden geduwd.
We bevestigen het met twee M3-bouten en moeren. Ik vind het goed om dergelijke modulair te houden of niet als één deel met het platform te printen, want zo kunnen we ze later nog aanpassen als nodig.
Op dit moment kunnen we de vliegwiel-DC-motoren aan de voeding koppelen om te controleren of ze goed werken voordat we verdergaan met de montage.
We gaan verder met het installeren van de uitlooploop. Dit deel is ontworpen om tussen de vliegwielen te passen en de Nerf-pijls in het midden te leiden voor het geval ze onder een hoek uit de vliegwielen komen.
Voordat we het aan het tilt-mechanisme bevestigen, moeten we twee lagers met 47mm buiten- en 35mm binnendiameter installeren, met afstandsringen ertussen. Deze lagers houden de draaiende lopen van de toren op hun plaats.
Ook moeten we deze bevestigingsring toevoegen, die later het draaiende loopmechanisme op zijn plaats houdt. We bevestigen deze uitlooploop aan het tilt-mechanisme met twee M3-bouten en moeren.
Vervolgens installeren we de loopbasis. Dit deel zal door de lagers heen draaien om de uitloopas die we net plaatsten. Voor de bevestiging moeten we eerst enkele gezwinde-inserts in het deel plaatsen. Daarna zetten we het op de lagers.
We bevestigen het met de bevestigingsring aan de achterkant met behulp van enkele M3 ingesenkte bouten.
Zodra we de twee loopbases op hun plaats hebben, kunnen we het aandrijftandwiel ertussen in het midden plaatsen. Het tandwiel wordt aangedreven door een 12V DC-motor. In mijn geval is dat een 1300 RPM motor, maar het kan zo laag als 300 RPM zijn.
De DC-motor wordt met behulp van een beugel die aan het tilt-platform zit, vastgezet. Met een zeskantschroef kunnen we het tandwiel op de motoras fixeren.
Nu maken we deze toren supercool. We monteren de lopen en geven het het uiterlijk van een minigun. Ik koos voor één grotere loop in het midden, doorheen de Nerf-pijl gaat, en eromheen drie kleinere lopen voor de visuele uitstraling. Voor gemakkelijker 3D-printen verdeelde ik de lopen in twee helften. Ze zijn niet precies in het midden, maar met een klein lengteverschil, waar we rekening mee moeten houden. Voor de montage gebruiken we deze beugels die zowel functioneel zijn als bijdragen aan de coole look.
We schuiven de lopen simpelweg in de beugels, maar het is belangrijk om een goede pasvorm te hebben, zodat ze stevig zitten. Dat bereiken we door te spelen met de al genoemde horizontale uitbreidingsinstellingen in je slicer bij het 3D-printen. Je moet waarschijnlijk eerst testprints doen om te ontdekken welke waarden deze interferentiepasvorm geven.
In de eerste sectie moet de centrale loop de langere zijn, terwijl de drie andere lopen de kortere zijn. De tweede beugel moet in de tegengestelde richting worden ingeduwd, halverwege de buitenlopen.
Dan voegen we de tweede set lopen en de beugels aan het einde toe. Hier plaats ik twee beugels aan het einde, weer voor de visuele uitstraling. De buitenlopen moeten vlak zijn met de laatste beugel, en de centrale beugel een beetje teruggetrokken.
Tot slot bevestigen we deze loop-submontage aan de loopbasis met drie M3-bouten.
We herhalen hetzelfde proces voor de andere kant, en de lopen zijn klaar.
Ze zien er supercool uit. Nog cooler toen ik hun motor aanzette.
We merken echter dat het gewicht van de twee lopen het tilt-platform aanzienlijk doet buigen. Tijdens deze test brak het platform zelfs. Het was eigenlijk erg slecht ontworpen.
Een enkel punt van ongeveer 8mm droeg het hele gewicht in relatie tot de tilt-gewrichten aan de zijkanten. Natuurlijk moest ik het herontwerpen om het steviger te maken. Gelukkig was er ruimte om meer materiaal toe te voegen en de sterkte op dat punt van het deel te vergroten.
Ik verbond ook de zijkanten met het centrale deel voor extra stevigheid. Dit zijn kleine verbindingen van 6x7mm, omdat dat de enige beschikbare ruimte was, maar ze betekenen veel voor de stevigheid van het hele platform.
Ik verhoogde ook het aantal wanden en de infill-dichtheid bij het 3D-printen van het herontworpen deel. Het voelt nu veel steviger. Ik monteerde alles opnieuw en testte opnieuw. Het was veel beter, hoewel nu de koppeling tussen de stappenmotor en de gedraaide staaf brak. Dat was geen groot probleem, ik maakte de koppeling gewoon langer om hem met twee bouten in plaats van één vast te zetten.
Het tilt-mechanisme wobbeelt nog steeds na al het toegevoegde gewicht, maar dat komt niet alleen van het tilt-mechanisme, maar ook van het pan-gewricht, dat een beetje los leek. Daarom zei ik dat ik het pan-basisonderdeel zal upgraden naar 6 draaglagers in plaats van 4.
In ieder geval, we kunnen doorgaan met het monteren van het Nerf-pijlduwermechanisme. Eerst plaatsen we de DC-motor. Hier gebruik ik een 1300 RPM motor, maar dan realiseer ik me dat dat veel te hoge snelheid is voor dit doel. We hebben maximaal 100 RPM motor nodig. Deze DC-motor, via een tandwielset, zal een 6mm as aandrijven waaraan we de duwerdelen aan beide kanten bevestigen.
Als as gebruik ik een M6-gedraaide staaf, omdat die veel goedkoper en makkelijker te verkrijgen is. Gedraaide staven zijn niet zo nauwkeurig als een echte 6mm as, vooral in combinatie met lagers, maar dat is prima omdat we die nauwkeurigheid niet nodig hebben voor dit mechanisme.
De lengte van deze as is 166mm, en wordt op zijn plaats gehouden met behulp van enkele M6-moeren in de binnenste sectie van het tilt-platform en drukken tegen de kogellagers.
Het tandwiel en de duwers worden met zeskantschroeven op de as bevestigd. Het duwermechanisme lijkt voor nu goed te werken.
Oké, nu kunnen we het magazijn voor de Nerf-pijls installeren. Maar voordat we dat doen, is het beter om de draden aan de DC-motoren te leggen, want nu hebben we nog betere toegang tot ze. We hebben ongeveer 30cm draad per motor nodig.
Voor de vliegwielmotoren sluit ik ze allemaal parallel aan, dus er gaat maar één + en – draad naar de controller, omdat ze allemaal op dezelfde snelheid moeten draaien en tegelijkertijd worden aangestuurd.
We moeten wel de polariteit testen en ervoor zorgen dat elk vliegwiel in de juiste richting draait voor het afvuren van de Nerf-pijls. We kunnen ook de stappenmotor aansluiten en alle draden door de centrale opening halen.
Nu kunnen we doorgaan met het installeren van het pijlenmagazijn. Dit kan ongeveer 200 pijls bevatten, maar we kunnen de capaciteit eenvoudig vergroten door het naar boven of naar de zijkanten uit te breiden. Voor de verbinding met het tilt-platform gebruiken we deze beugels en enkele M3-bouten. Maar voordat we dat doen, moeten we de DC-motor voor de magazijnrollen installeren.
Die zit op een beugel die we eerst met enkele M3-bouten aan het magazijn bevestigen. De DC-motor die ik hier installeer is 12V 50 RPM, maar we kunnen nog lager gaan, zoals 20 RPM. Omdat de rollen op een heel lage RPM draaien, zijn de assen voor ze gewoon 3D-geprint.
Deze motor stuurt de rollen aan via een set tandwielen. Je ziet hier dat de linkerrrol direct wordt aangedreven door het tandwiel van de motor, en de rechterrol door een ander tandwiel tussen de rol en het motortandwiel om tegengestelde richting te produceren.
We moeten enkele gezwinde-inserts in het magazijn installeren, en die gebruiken we dan om de achterkant ervan te bevestigen.
Nu schuiven we het magazijn op zijn plaats en bevestigen het aan het tilt-platform met de beugels en enkele M3-bouten en moeren.
En dat is het, onze Nerf-miniguntoren is voltooid, behalve enkele afdekken die ik later nog toevoeg om de bewegende delen te beschermen.
Nu kunnen we de DC-motoren aan de voeding koppelen om te zien hoe alles in beweging werkt. Het is ook een goed moment om enkele Nerf-pijls in het magazijn te stoppen om te checken of het allemaal echt werkt.
Mijn initiële tests van het Nerf-minigunsysteem waren niet zo goed. De pijls klopten vaak vast, dus ik moest verschillende aanpassingen aan het ontwerp bedenken om ze werkend te krijgen.
Ik moest een extra rol aan de overkant toevoegen voor betere lading van het systeem. Dat betekende dat ik het hele magazijn moest herontwerpen. Dat deed ik, en zo ziet het er na die wijzigingen uit.
Uiteindelijk, na zoveel tweaken en updates, is de werking van de Nerf-pijllenlader acceptabel.
Ik zou niet zeggen dat het 100% perfect is, want het kan nog af en toe vastlopen, maar ik vind het goed genoeg.
We kunnen nu doorgaan met de elektronica of de toren verbinden met de custom-made PCB die ik op de tank heb.
Schakelschema
Laten we kijken naar de elektronica voor de NERF-miniguntoren en de RC-tank en uitleggen hoe het werkt. De hersenen is een ATmega2560-microcontroller-gebaseerd bord of een Arduino MEGA-bord.
Stuklijst
Je kunt de componenten via de onderstaande links verkrijgen:
| Component | Aantal | Aankooplinks |
|---|---|---|
| 12000 RPM 12V DC-motor RS360 | 4 | Amazon | AliExpress | Temu |
| 300 RPM 12V DC-motor – JGA25-370 | 1 | Amazon | AliExpress | Temu |
| 60 RPM 12V DC-motor – JGA25-370 | 1 | Amazon | AliExpress | Temu |
| 30 RPM 12V DC-motor – JGA25-370 | 1 | Amazon | AliExpress | Temu |
| L298N DC-motordriver | 1 | Amazon | AliExpress | Temu |
| NEMA17 30mm stappenmotor | 2 | Amazon | AliExpress | Temu |
| A4988 stappenmotordriver | 2 | Amazon | AliExpress | Temu |
| MOSFET TIP122 | 2 | Amazon | AliExpress | Temu |
| DIODE 1N4007 | 2 | Amazon | AliExpress | Temu |
| Klemblok connector | 2 | Amazon | AliExpress | Temu |
| Draden ~20AWG ~3m | 1 | Amazon | AliExpress | Temu |
| Weerstanden – 1k x2 | 1 | Amazon | AliExpress | Temu |
| Condensatoren – ~63uF x2 | 1 | Amazon | AliExpress | Temu |
Disclaimer: Dit zijn affiliatelinks. Als Amazon Associate verdien ik aan kwalificatieve aankopen.
Voor de stuklijst van de RC-tank, zie het RC-tank artikel.
De vier DC-motoren voor de vliegwielen worden via een enkele MOSFET met een PWM-signaal aangestuurd. En nog een MOSFET voor de loopmotor. We hoeven de draairichting van deze twee motoren niet te veranderen, dus we zijn prima met alleen hun snelheid via PWM-signalen te regelen. Aan de andere kant, voor de rollen en de duwermotoren, gebruiken we speciale DC-motordrivers die ook H-bruggen hebben, zodat we de draairichting kunnen veranderen. Ik wil de draairichting kunnen veranderen, omdat we in het geval dat de pijls vastkomen, de rollen en de duwer in omgekeerde richting kunnen laten draaien om de pijls los te maken. Deze functie bleek te werken.
Voor het aansturen van de twee NEMA17-stappenmotoren voor het pan- en tilt-mechanisme gebruiken we twee A4988-stappenmotordrivers.
Custom PCB
Ik haalde de custom-build PCB van de Arduino Mega en soldeerde deze paar extra onderdelen erop.
Je ziet, toen ik deze PCB in mijn vorige video ontwierp, had ik al vooruit gepland en speciale plekken voorzien voor het aansluiten van de MOSFETs en de A4988-stappenmotordrivers.
Je kunt het Gerber-bestand voor deze PCB vinden en downloaden via de PCBWay project-deelcommunity, waar je de PCB ook direct kunt bestellen.
Ja, ik bestelde de PCB bij PCBWay. PCBWay biedt geweldige PCB-fabricage- en assembleringsservices die ik ten zeerste aanbeveel.
We moeten nu alles verbinden zoals beschreven in het schakelschema en de PCB weer op zijn plaats op de Arduino Mega zetten.
Hoewel ik de efficiëntere DRV8871 DC-motordrivers wilde gebruiken voor de rollen en duwermotoren, eindigde ik met de verouderde en minder efficiënte L298N DC-motordriver. Ik kon de motoren simpelweg niet met de eerste drivers laten werken; ik kon hun snelheid niet goed regelen met het PWM-signaal. Ik gok dat de motortype niet paste bij de DRV8871 drivers. Met de L298N driver werkte de PWM-regeling voor ze wel goed.
Voor de voeding van de tank gebruikte ik eerder een 3S LiPo-batterij, wat ok was, maar nu denk ik dat een 4S LiPo-batterij passender is.
Met de 3S-batterij, als de celspanning daalt naar hun nominale waarde van 3,7V, is de totale uitgang 11,1V, wat al onder de 12V zit en we verliezen kracht aan de motoren. Met de 4S-batterij is de nominale totale uitgang 14,8V, wat eigenlijk wel boven de 12V zit, maar we kunnen een buck-converter gebruiken om de uitgang op 12V te fixeren.
Op die manier krijgen we altijd die vaste 12V, ongeacht of de batterij volgeladen is op 16,8V of leeggelopen op 14 volt. We moeten wel zorgen dat we de gewenste spanning eerst instellen voordat we het aan het circuit koppelen.
Wat er nog over is, is de Arduino Mega programmeren en de toren tot leven wekken. Ik ga snel door de Arduino-code heen; op de website vind je meer details over de werking.
Programmeren van de NERF-miniguntoren en RC-tank
Je kunt de code samen met de 3D-bestanden downloaden van Cults3D.
Met de IBusBM-bibliotheek lezen we de binnenkomende data van de RC-zender.
// Data inlezen van de RC-zender
IBus.loop();
ch0 = IBus.readChannel(0); // ch0 - links en rechts
ch1 = IBus.readChannel(1); // ch1 - vooruit en achteruit
ch2 = IBus.readChannel(2); // ch2 - tilt
ch3 = IBus.readChannel(3); // ch3 - pan
ch4 = IBus.readChannel(4); // ch4 - vuurkracht
ch5 = IBus.readChannel(5); // ch5 - vuursnelheid
ch6 = IBus.readChannel(6); // ch6 - versnellingsschakelaar
ch7 = IBus.readChannel(7); // ch7 - ontkleppen - omgekeerde rotatie
ch8 = IBus.readChannel(8); // ch8 - lichten
ch9 = IBus.readChannel(9); // ch9 - vuur
We gebruiken alle 10 kanalen van de populaire Flysky FS-i6 RC-zender. Officiële is dit een 6-kanaals zender, maar we kunnen 4 extra kanalen activeren.
We converteren de binnenkomende data naar geschikte waarden, afhankelijk van wat we ervoor gebruiken.
// Stappenmotor Pan
if (ch3 >= 1000 && ch3 < 1485) {
panVal = map(ch3, 1000, 1485, -400, 0);
} else if (ch3 > 1515 && ch3 <= 2000) {
panVal = map(ch3, 1515, 2000, 0, 400);
} else {
panVal = 0;
}
stepperPan.setSpeed(panVal);
// Pan
stepperPan.run();
Bijvoorbeeld converteren we de linkervoystick kanaal 3 binnenkomende data naar waarden van 0 tot 400, die vervolgens gebruikt worden met de setSpeed-functie in de AccelStepper-bibliotheek, om de stappenmotor met een geschikte snelheid te laten draaien.
Aan de andere kant, voor het regelen van de DC-motoren, converteren we de binnenkomende data naar waarden van 0 tot 255, voor het aansturen van de motoren met PWM-waarden via de analogWrite()-functie.
if (ch9 == 2000) {
firingPower = map(ch4, 1000, 2000, 0, 255);
analogWrite(M4_Flywheels, firingPower);
firingRate = map(ch5, 1000, 2000, 0, 255);
barrelsSpeed = firingRate;
if (barrelsSpeed > 120) {
barrelsSpeed = 120;
};
analogWrite(M3_Barrels, barrelsSpeed);
digitalWrite(M6_MagRoller_IN1, LOW);
digitalWrite(M6_MagRoller_IN2, HIGH);
analogWrite(M6_MagRoller_enB, firingRate);
digitalWrite(M5_Feeder_IN1, LOW);
digitalWrite(M5_Feeder_IN2, HIGH);
analogWrite(M5_Feeder_enA, firingRate);
}
Voor een beter begrip van de code, bekijk de code zelf, want die bevat commentaren en uitleg over hoe specifieke regels werken.
Testen van de NERF-miniguntoren
Zodra we de code uploaden, kunnen we het robotplatform en de RC-zender inschakelen voor een test. Op het display van de zender zien we de LiPo-batterijspanning, evenals de ontvanger- en zenderspanning. Met de rechtervoystick regelen we de tankbeweging. Ik stelde de lichtbesturing in op de linker 3-stand rokkerschakelaar, zodat we uit twee verschillende lichtmodi kunnen kiezen.
Met de linkervoystick regelen we het pan- en tilt-systeem van de toren. Met de allerrechtse voystick activeren we het afvuren van de Nerf-pijls. Met de rechter potentiometer regelen we de vuursnelheid, en met de linker potentiometer de vuurkracht, dus de vliegwiel-RPM. Het leuke is dat alles tegelijkertijd kan werken. De tank kan Nerf-pijls afvuren terwijl hij rijdt, panneert, tilt en de lichten aanstaan.
Toch was dat een hele rit, eerlijk gezegd. Ik liep tegen zoveel problemen aan bij het ontwerpen en bouwen van dit project, en daarom besloot ik je al dat te laten zien, zodat je ziet wat het soms kost om zo'n project te maken.
Ik hoop dat je van deze tutorial genoten hebt en iets nieuws geleerd hebt.
Productieproces
- Bisque Porcelein Figurines: Vakmanschap, Geschiedenis en Productieproces
- Kernprincipes van fysiek prototypen voor productontwikkeling
- Mini boormachine: compacte krachttool voor precisie boren & bevestigen
- Arduino & MATLAB Integratie: Stap-voor-Stap Seriële Communicatie Tutorial
- Fortune Cookie: Geschiedenis, Ingrediënten en Moderne Productie
- Industriële Pompen: Typen, Toepassingen & Voordelen
- Expertgids voor Moderne Wisselgeldautomaten: Ontwerp, Componenten en Toekomsttrends
- Kleurafstemming beheersen bij geanodiseerde aluminiumonderdelen
- CNC-draaibanken: De onmisbare ruggengraat van moderne machinewerkplaatsen
- Waarom Drankrobots Essentieel Zijn voor de Moderne Horeca
- Bouw een Handheld Gaming Console met de Arduboy Clone