Jul för ma(r)kers: Personliga julgransprydnader gjorda av en robot
En Spherebot eller Eggbot ritar mönster från en dator på det som är runt. Via thingiverse.com och instructables.com kan man hitta flera handledningar och mallar för de små robotarna, som också skulle kunna kallas sphere plotters. Materiallistan är ganska likartad för de flesta Spherebots. Två Nema 17-motorer, en liten servo, en Arduino Uno, en CNC-sköld och stegmotordrivrutiner behövs. Dessutom behövs det en strömförsörjning, skruvar, kablar, kulor och matchande markörer. På Amazon har den kompletta materiallistan en prislapp på något runt 50 dollar. Om du har en 3D-skrivare kan du förmodligen låna dess dyra Nema 17-motorer och stegmotordrivrutiner för projektet
Topp 10...
» Topp 10: Bästa bärbara allround/multimediadatorerna
» Topp 10: Bästa bärbara speldatorerna
» Topp 10: Bärbara budget/kontorsdatorer
» Topp 10: Bästa bärbara kontors/premiumdatorerna
» Topp 10: Bärbara arbetsstationer
» Topp 10: De bästa små/kompakta bärbara datorerna
» Topp 10: Bästa ultrabooks
» Topp 10: Bästa hybriddatorerna
» Topp 10: Bästa surfplattorna
» Topp 10: Marknadens bästa smartphones
Instruktioner och bygghandböcker
Det finns många mer eller mindre enkla instruktioner för en Eggbot på olika DIY-sidor sominstructables och thingiverse. De flesta av dem kan göras med en 3D-skrivare. Minst 20 av dessa Eggbots finns under olika namn på thingiverse.com. Jag har sammanställt ett litet urval i en samling här. Resursstarka hobbyister kan förmodligen klara sig utan 3D-skrivare för vissa konstruktioner och endast arbeta med plywood, skruvar, kullager och några fästen. Jag valde Herbert Schützeneders konstruktion, som jag tycker är mycket smart. De flesta av delarna från hans Eggbot är 3D-printade. I grund och botten är inköpslistan mycket likartad för de flesta Eggbots. Detta beror också på att originalet av Evil Mad Scientist har funnits tillgängligt som ett projekt med öppen källkod i flera år. För det mesta är det alltså bara justeringar som krävs för att anpassa replikerna till olika tillverkningsmetoder.
BOM för Eggduino av Herbert_b1:
2 × Nema 17 stegmotor
1 × CNC-kit med Arduino Uno-klon
1 × Servomotor SG90 eller KY66
1 × M3-skruvar
1 × 608 kullager
1 × kondensator med 10 µF till 100 µF
1 × AC/DC-omvandlare som levererar en spänning mellan 12 V och 24 V
några (permanenta) markörer
I mitt fall kommer stegmotorerna och TMC2100 stegmotordrivrutinerna från en 3D-skrivare som inte längre används. Som strömförsörjning använder jag en gammal laptop med 19 V. Den högre spänningen är mer av en fördel för CNC-Shield eftersom Arduino Uno-klonen drivs via USB. Med den högre spänningen kan motorerna drivas med mindre ström. Detta resulterar i mindre värmeavledning vid motorerna och elektroniken. Jag behövde inte heller köpa ett kullager, eftersom 608-kullagren är desamma som i skateboards och inlines-skates.
Programvara - Nedladdning, installation och ändring
Arduino Uno (klon) är programmerbar med hjälp av Arduino IDE. Programmet kan laddas ner från www.arduino.cc/en/software eller köpas från olika källor. För Windows finns programmet också tillgängligt för installation via Microsoft Store
För att skapa bilderna och mönstren till julgranskulan används programmet Inkscape med öppen källkod med ett EggBot-tillägg. Den senaste versionen 1.1 kan laddas ner via på sidan för utgivningen.
En färdig firmware för Arduino Uno (klon) finns på Github i Eggbot repository av Plex3r. Här kan du starta nedladdningen av som en zip-fil genom att klicka på det gröna kodelementet. Plex3rs instruktioner för att ändra Eggbot-tillägget fungerar tyvärr inte med de nyare programvaruversionerna.
Den senaste EggBot-versionen 2.81 kan laddas ner från Evil Mad Scientist's repository och modifieras i stället. Du behöver de två arkiven eggbot-inkv1r2.zip och EggBotExamples_v281.zip från mappen för utgåvan.
Programmering av Arduino Uno
Efter installationen av Arduino IDE öppnar du filen EggDuino-master.zip och packar upp den i användarmappen Documents/Arduino. För att IDE ska kunna arbeta med mappens innehåll måste den omdöpas till EggDuino. Dubbelklicka på EggDuino.ino i den omdöpta mappen EggDuino för att öppna filen. Nu kan du ansluta Arduino Uno (klon) till datorn via USB-kabeln. Välj kortet med Tools>Port. Sedan laddar du upp programmet som det är. Senare ansluts allting så att den programmerade pinouten stämmer.
Utvecklarkortets hårdvaru-ID behövs för att anpassa EggBot-tillägget för Inkscape till EggDuino i nästa steg. Detta ID kan hämtas med Arduino IDE via Tools>Get Board Information. VID och PID kan kopieras med CTRL+C och sedan klistras in i en textfil.
Installation och ändring av EggBot-tillägget
Zip-filen eggbot-inkv1r2.zip innehåller det fullständiga EggBot-tillägget för Inkscape. Detta tillägg måste dock anpassas till EggDuino innan det kan integreras i Inkscape. Packa först upp arkivet på en godtycklig plats. I den uppackade mappen söker du efter filen ebb_serial.py. Den finns under eggbot-inkv1r2axidraw_depsplotink. Öppnas med editorn kan Python-skriptet redigeras. I rad 65 [ if port[2].startswith("USB VID:PID=04D8:FD92"): ] söker skriptet efter maskinvaru-ID:t för den ursprungliga EggBot. Detta måste ändras till Eggduino med de tidigare fastställda värdena för VID och PID.
Så i mitt fall är den nya raden: [ if port[2].startswith("USB VID:PID=2341:0043"): ]
Eftersom inte alla Arduino Uno och dess kloner har samma hårdvaru-ID kan det hända att det inte leder till framgång att bara kopiera min ändring.
Efter att ha sparat ändringen överförs hela innehållet från mappen eggbot-inkv1r2 till mappen extensions i Inkscape 1.1. Om standardinstallationskatalogen inte har ändrats under installationen finns den på följande adress:
C:Program FilesInkscapeshareinkscapeextensions
Om du nu öppnar Inkscape bör du kunna hitta Eggbot under Extensions.
Montering
Den allmänna monteringen av komponenterna bör vara enkel, men det kan vara lite knepigt att hantera ledningarna. Eftersom Arduino Uno är mycket förlåtande är misstag i allmänhet ingen stor sak
stegmotor drivrutiner
Först ska bytena ställas in för att justera mikrosteget. Beroende på stegmotordrivrutinen måste bytena ställas in på olika sätt. Tanken är att uppnå 1/16 mikrosteg. Med A4988-drivarna som ingår i CNC-kitet från länken ovan måste alla tre hopparna ställas in. På bilden till höger är motsvarande platser markerade grönt och anslutningarna gula. M0, M1 och M2 måste anslutas. För Eggbot behövs endast X- och Y-motorn
I nästa steg limmas kylflänsarna fast på stegmotordrivrutinerna och drivrutinerna sätts i springorna för X och Y. Här måste du vara uppmärksam på inriktningen. Normalt är EN-stiftet markerat på alla Pololu-kompatibla stegmotordrivrutiner. Denna måste anslutas till EN-sockeln på CNC-skärmen, endast då är inriktningen korrekt
Se databladet från respektive tillverkare för information om spänningar och inställningar för mikrostegsstyrning och ström.
Deaktivera den automatiska återställningen av Arduino Uno
För en korrekt anslutning till Inkscape är det nödvändigt att inaktivera den automatiska återställningen på Arduino. Den första möjligheten är att koppla bort en kontakt på Arduino UNO. På kretskorten finns det alltid en jumperkontakt, som är markerad som REST-EN eller REST-ON. Efter att kortet har programmerats kan denna kontakt kopplas bort med en kniv. Om du behöver den automatiska återställningen igen kan du sätta en lödbrygga.
Det är också möjligt att inaktivera den automatiska återställningen med en kondensator mellan återställningspinnen och GND-pinnen på CNC-skärmen. Kondensatorn måste ha en kapacitet på minst 10 µF. En elektrolytkondensator löds med sin negativa stift på GND-stiftet på CNC-skärmen. Keramiska kondensatorer och foliekondensatorer har ingen polaritet. Kondensatorns dielektriska styrka bör vara minst 1,5 gånger spänningen för den valda strömförsörjningen.
Ledningar
Alla Eggbots använder två stegmotorer och en servo. Stegmotorn som vrider bollen eller ägget är ansluten till kontakterna på X-drivern, stegmotorn för pennarmen är ansluten till kontakterna bredvid Y-drivern. Det sätt på vilket de två kontakterna är anslutna ändrar endast rotationsriktningen. Detta kan vändas senare i Inkscape.
Servomotorns tre trådar är anslutna till 5V, GND och Z.STEP-stiften på CNC-skölden. Den svarta kabeln till GND, den röda till 5V och den gula till Z.STEP.
Programvaruinstallation och plottning
När allt är monterat kan Arduino anslutas till datorn och CNC-Shield till strömförsörjningen. I Inkscape kallar du nu kontrollpanelen för Eggbot, och här måste du fortfarande ställa in inställningarna för servomotorn och rotationsriktningen för stegmotorerna. För att hitta rätt inställningar måste du utföra några experiment.
På fliken Manual kan du först bestämma pennarmens rotationsriktning. Välj Walk Motor 1 (Pen) i rullgardinsmenyn och ange ett positivt värde nedan och klicka på Apply. Pennan ska nu röra sig mot spetsen på kulan med prydnadskroken. Så beroende på vilket håll du vill klämma fast kulorna är detta till vänster eller till höger. Upprepa samma process med det valda menyalternativet, Walk Motor 2 (Egg). Kulan ska rotera medurs sett från upphängningspunkten.
Om rotationsriktningarna inte stämmer överens måste kryssrutan Motorns omvända rörelse sättas in eller tas bort för motsvarande motor på fliken Alternativ.
Värdena för servomotorn måste också justeras. Här beror det på om du har en servomotor med positiv eller negativ rotationsriktning. I mitt fall är det värde som ska ställas in i Eggbot Control Setup för pennans uppåtposition mindre än pennans nedåtposition. Du kan behöva prova ett par värden för att hitta rätt.
Plottning
När allt är monterat, installerat och ställt in kan du äntligen börja rita. I arkivet EggBotExamples_v281.zip finns några mallar för olika tillfällen. Dessa kan laddas, ändras och ritas som du vill. Filen EggBotTemplate.svg fungerar som en mall för dina ritningar. När du öppnar vissa mallar kommer Inkscape förmodligen att fråga om något ska ändras i filerna, eftersom de skapades med en äldre version av Inkscape. Det nya Eggbot-tillägget har anpassats till Inkscape 1.1 på så sätt att du måste välja "This file is intended for on-screen display[...]" här, annars kommer utmatningen på Eggbot att förvrängas.
Med den färdiga designen behöver du inte göra något annat än att plotta den via Eggbot Control Center. Klicka bara på "Apply" (tillämpa) på fliken Plot (plotta).