Advertentie
Ik hou van mijn Arduinos. Ik heb op elk moment nogal wat projecten onderweg - prototyping is gewoon zo eenvoudig met hen. Maar soms wil ik het project functioneel houden zonder een andere Arduino te kopen. Elke keer $ 30 uitgeven voor een vrij eenvoudige microcontroller dan ik maar een deel van de functionaliteit nodig heb, is gewoon dom. Op dat moment wordt het bouwen van een Arduino-kloon een haalbare optie.
De waarheid: u kunt geen goedkopere Arduino-kloon bouwen
De Arduino zelf bestaat uit eenvoudige elektronica, maar het is het pakket en de lay-out waar je echt voor betaalt. In dit artikel zal ik beschrijven hoe je een deel van de functionaliteit een stuk goedkoper kunt repliceren - in het geval van Arduino-projecten - maar het is onmogelijk om een volledige DIY Arduino-kloon te bouwen zonder massa-inkoopkracht en productie voorzieningen.
Het mooie van het zelf bouwen is dat je bits kunt uitsluiten die je niet nodig hebt om de kosten laag te houden, en het Arduino-pakket met alle ongebruikte headers kunt vermijden en verspilde ruimte - als je de Arduino-vorm en headers echt nodig hebt voor gebruik met andere schilden, dan zal je eigen bouwen je niet echt redden geld.
In mijn geval wilde ik het permanent weergeven LED-kubus die ik heb gemaakt Hoe maak je een pulserende Arduino LED-kubus die eruitziet alsof hij uit de toekomst kwam?Als je wat Arduino-projecten voor beginners hebt gedaan, maar op zoek bent naar iets dat een beetje permanent is en op een heel ander geweldig niveau, dan is de bescheiden 4 x 4 x 4 LED-kubus ... Lees verder ergens, met een externe voeding en niet de extra kosten van het gebruik van een volledig Arduino-bord; er was tenslotte nog ruimte over op het protoboard, dus ik zou liever alles daar neerzetten. Hier is mijn voltooide DIY Arduino in breadboard-fase, naast de LED-kubus en een echte Arduino die wordt gebruikt voor programmeren. De volgende stap is om alle bits op het protoboard te plaatsen, maar dat valt vandaag buiten het bestek van dit artikel.
Hoe dan ook, verder met het project. Ik heb het per sectie opgesplitst met afzonderlijke componentenlijsten, maar het is gemakkelijker om gewoon een bundel te kopen (Oomlout.co.uk, £ 7,50).
Voedingsregelaar en indicator-LED
- 100 uF condensatoren (2) - Wees voorzichtig met de zilveren lijn die naar de negatieve kant wijst
- 7805 5V spanningsregelaar (1)
- RODE led en weerstand van 560 Ohm
Het doel van deze sectie is om een voeding van 7-12 V (meestal een 9 V DC-stekker) te nemen en deze te reguleren tot 5 V, nodig voor de microcontroller-chip. De rode en blauwe draden die van links komen, moeten worden aangesloten op het ingangsvermogen dat u gebruikt, maar gebruik absoluut niet meer dan 12 V, anders bak u dingen. Verbind ook de boven- en onderrails op dit punt met elkaar.
Als je een bestaande Arduino meelift om de chip te programmeren (later beschreven), kun je de stroomrails ook rechtstreeks aansluiten op de + 5V en GND.
Microcontroller & Timing Circuit
- ATMega328P-PU - vooraf geladen met Arduino-bootloader.
- 22pf condensatoren (2) (in het diagram zijn ze blauw, maar het onderdeel dat ik kocht was eigenlijk oranje - geen verschil. Er is geen positief of negatief aan).
- 16 MHZ kristal.
Om het kort te houden, ik heb de vermogensregelaar niet getoond in het onderstaande diagram, maar je moet dat stukje natuurlijk al af hebben.
Dit onderdeel is de kern van een Arduino - de microcontroller. Het 16 MHz-kristal levert een constant timingsignaal dat elke cyclus van het circuit duwt.
Om het jezelf ook gemakkelijker te maken, koop je er een paar Pinaflabels van Adafruit ($ 2,95 voor 10):
Of maak er zelf een. Hier is een pdf Ik heb gemaakt als je kleverige etiketvellen hebt.
Reset schakelaar
Ten slotte hebben we alleen een resetschakelaar nodig - gelukkig is dit bit vrij eenvoudig; maar merk op dat je in sommige tutorials een trek de weerstand naar beneden toegevoegd. Ik denk dat dit nodig is voor ATMega168 en niet voor 368.
Hier is het voltooide diagram.
De Dx's en Axes zijn dan je gewone digitale en analoge I / O-pinnen. Als je ervoor kiest om het jezelf niet gemakkelijker te maken met een afdruk, zorg er dan voor dat je niets verwisselt, zegt D13 of pin 13 op de Arduino, met pin 13 van de ATMega328. Ze zijn verschillend - D13 is eigenlijk pin 19 op de chip. RX is ook functioneel D0 en TX is D1.
De chip programmeren
Voordat je dit kunt testen, heb je een manier nodig om de ATMega-chip te programmeren - dit is waar de complicatie binnenkomt. Op een Arduino-bord is een van de duurste onderdelen de USB-interface.
Dit zijn uw opties:
1. Haal de chip uit een andere Arduino.
Dit is de gemakkelijkste manier om snel te testen; gebruik gewoon een bestaand Arduino-bord met je werkschets er al op en trek de chip uit de Arduino. Als uw project is afgerond en werkt, kunt u ze gewoon omwisselen. Je kunt nog een niet-geprogrammeerde chip in de Arduino gooien om opnieuw te gebruiken - er is niets bijzonders.
Het enige nadeel hier is dat het heel gemakkelijk is om de pinnen te beschadigen, dus wees ERG voorzichtig bij het verwijderen.
2. Gebruik een Passthrough-kabel van een bestaande Arduino.
Voordat je dit probeert, moet je ook de bestaande chip van je Arduino verwijderen; het zal het proces verstoren. In wezen gaan we gewoon de USB-interface van de Arduino gebruiken. Aansluiten macht en GND naar de standaard Arduino-pinnen; Reset; en het belangrijkste onderdeel - RX naar RX (D0) en TX naar TX (D1) - dit zijn de seriële pinnen voor verzenden en ontvangen, dan zou je de USB-poort op je originele Arduino moeten kunnen gebruiken.
3. Koop een FTDI USB naar seriële interfacekabel.
Dit is eigenlijk een vervanging van de interface die in alle Arduino's is opgenomen, maar behoorlijk prijzig ongeveer $ 15 - en is de belangrijkste reden waarom je niet goedkoop een exacte replica van een Arduino kunt bouwen. Als u echter van plan bent dit veel te doen, is het waarschijnlijk de gemakkelijkste route om er een te kopen die u gewoon aan het einde van een USB-kabel kunt houden.
Volg voor instructies om dit toe te voegen het diagram van Oomlout [Broken URL Removed] en let alleen op het gearceerde gebied van de USB-programmeerinterface. Gebruik de 6-pins header om de daadwerkelijke interface te verbinden.
Merk op dat al deze methoden ervan uitgaan dat je een Arduino hebt bootloader al op de chip gebrand; als u bijvoorbeeld als een componentenbundel koopt, worden ze klaargemaakt om eenvoudig uit te wisselen. Als je de chips alleen koopt of niet specifiek voor een Arduino-doel, moet je eerst iets anders gebruiken om de bootloader te branden. Er is een goede tutorial hier over het meeliften van een bestaande Arduino en een applicatie genaamd OptiLoader voor dat doel. Het verschil is ongeveer $ 2.
Dus, voordat je een andere Arduino koopt voor het volgende project, vraag jezelf af: heb je de USB-verbinding nodig, en moet je Arduino-schilden aansluiten? Als het antwoord op beide is ja, ga je gang en koop een andere Arduino - het zal niet goedkoper worden door je eigen Arduino te bouwen. Anders bouw je er gewoon zelf een! En vergeet niet al de rest van ons te bekijken Arduino-tutorials en artikelen.
James heeft een BSc in Artificial Intelligence en is CompTIA A + en Network + gecertificeerd. Hij is de hoofdontwikkelaar van MakeUseOf en brengt zijn vrije tijd door met het spelen van VR paintball en bordspellen. Hij bouwt al pc's sinds hij een kind was.