Innehållsförteckning:

Uppgradera Heathkit Hero Jr -robot med modern hårdvara: 4 steg
Uppgradera Heathkit Hero Jr -robot med modern hårdvara: 4 steg

Video: Uppgradera Heathkit Hero Jr -robot med modern hårdvara: 4 steg

Video: Uppgradera Heathkit Hero Jr -robot med modern hårdvara: 4 steg
Video: Temple of Syrinx: Exploring a Teen's C64 BBS in the Pre-Internet Era 2024, November
Anonim
Uppgradera Heathkit Hero Jr -robot med modern hårdvara
Uppgradera Heathkit Hero Jr -robot med modern hårdvara

Detta är mer ett pågående arbete än ett färdigt projekt, kom ihåg det när du läser. Tack

Lite om den här roboten, var jag fick den och mina planer för den. (Bild från Star Wars Day -projektet 2015)

Det var förmodligen någon gång 2005 min fru och jag var på en lokal loppis, vi letade bara runt och letade inte riktigt efter någonting. Det var en äldre bonde som hade ställt sig utanför, han var nära baksidan av platsen och det var inte många som skulle titta på hans varor. Jag är glad att jag var en som gick och tittade.

Han hade den här lilla roboten, självklart visste jag vad det var. Jag frågade hur mycket han ville och blev chockad, chockad säger jag er - Han ville ha hela 20,00 dollar. Det var då han berättade för mig att det hade varit i en ladugård förmodligen de senaste 20 åren eller så, och vid närmare titt hade det funnits lurviga skapare i det. Ledningar hade tuggats, huvudbrädan hade för det mesta förstörts. Batterierna var inte användbara. Saken var en röra, och det är så trevligt som jag kan vara om det.

Den hade till och med alla patroner med sig, och de såg ganska bra ut med tanke på.

Trots hur det såg ut såg jag något som jag hade velat sedan jag var ung. Jag gav bonden 20 dollar och tackade honom. Tar tillbaka mitt pris till bilen.

Det tog ungefär en månad eller så att få det städat nog för att börja titta på elektroniken och se vad som fungerade och vad som inte fungerade. Jag kunde äntligen få ström också, det överraskande klarade det självkontroll - jag tänkte, hej, bra det här var mycket även om jag var tvungen att göra lite arbete för att städa upp det. Tja, det klarade sin självkontroll en gång, det var det, jag kunde aldrig få det att klara igen.

Jag drog i huvudbrädorna, sålde dem.

Kontrollerade drivmotorn och stegmotorn (steppen hade trådar som började korrodera och inte var i bästa skick), men båda fungerade, så jag behåller dem.

Jag satte upp roboten som ett slags visningsstycke, för jag var inte så säker på vad jag ville göra med.

I slutet av 2015 tillfrågades en grupp skapare och pysslare som jag gick med på om vi ville göra något för "Star Wars Day" för vårt lokala bibliotek. Så vi tänkte på, och jag sa, tänk om jag tar "Hero Jr" tillbaka till liv med Arduino mikrokontroller. Och det var vad jag gjorde - jag gav den lite extra flare och använde 7 Arduinos i den … förmodligen mer än jag behövde, men på den tiden lärde jag mig fortfarande. Och jag ville att den skulle "multi-task" som vid den tiden inte visste hur jag skulle göra på något annat sätt. Jag dokumenterade det projektet här:

Tja, det var 2015, ljussabeln togs bort och de flesta Arduinos som var specifika för det projektet. För det mesta kan en Arduino köra detta om du inte vill att något speciellt ska hända. Roboten gick tillbaka till sitt utrymme som en uppvisning. Jag lärde mig några saker längs vägen och skulle till och med höja sin strömförsörjning då. Tiden fick det bästa av mig, och jag beställde bara ett 12v till 5v 4 port USB 8 amp kort. Tyvärr kan jag inte hitta det där kortet någonstans på nätet nu, jag vet inte om de slutade göra det eller? Men även den brädan satt i en låda tills nu.

Ett av målen med det ursprungliga projektet var att få honom att se så vintage som jag kunde, men ersätta det mesta av hårdvaran med moderna saker. År 2020 har jag bestämt mig för att till och med uppgradera sina lysdioder till RGB (neopixlar) mer om det senare. Målet är fortfarande att se ut som vintage, jag tror att det gör det tills du använder en annan färg än röd.

Detta projekt använder en Arduino Mega 2560 mini (klonkort, jag gillar det inte), A Raspberry Pi 3+, original Google AIY-kort/högtalare/mikrofon, ersatte stegmotorn med en ASMC-04 servomotor, en 36v LIPO -batteri dras från en trasig svävbräda. Jag har en 36v till 12v 5amp DC-DC-omvandlare och en 4-port 12v till 5v 8amp USB-enhet. En billig ultraljud och LDR, ganska lite 3D -tryckta fästen. 8 små ws2812 -lysdioder (även kända som neopixlar), ett par cat5 -nyckelstenar och en kort cat5 -kabel. (en spänningsdelare kvar från 2015 -projektet, men det var för 12v/24v inte 36v så det är inte korrekt. Det måste åtgärdas), och jag använder en L298 -motorförare (även kvar från 2015 -projektet)

Det som återstår från den ursprungliga 1984 -roboten - 12v likströmsmotor, den ursprungliga knappsatsen fungerar också fortfarande, liksom den ursprungliga "gröna ström" -lampan. Skalet och ramen är fortfarande desamma. Men det är det. Allt annat har bytts ut.

Detta är fortfarande ett pågående arbete just nu - jag arbetar fortfarande med att göra lite pythonprogramvara för Raspberry PI, jag måste fixa ett par små problem som jag hittade i Arduino -skissen (fungerar mest). Jag säger skämtsamt att detta är ett av de projekt som aldrig kommer att ta slut. Vid denna tidpunkt fungerar alla lysdioder, ultraljud fungerar, LDR fungerar, servomotor fungerar, drivmotor går framåt, inte bakåt (trasig tråd som jag behöver spåra). 36v till 12v fungerar och 12v till 5v fungerar, Raspberry Pi slår på, Arduino slår av PI. Mestadels är hårdvaran trådbunden och fungerar. Nu är allt programvara.

Steg 1: Lysdioderna och uppgraderingen

Lysdioderna och uppgraderingen!
Lysdioderna och uppgraderingen!
Lysdioderna och uppgraderingen!
Lysdioderna och uppgraderingen!
Lysdioderna och uppgraderingen!
Lysdioderna och uppgraderingen!
Lysdioderna och uppgraderingen!
Lysdioderna och uppgraderingen!

Den ursprungliga modellen från 1984 hade lysdioderna lödda bara "konstiga" om du frågar mig, de behövde vara av brädan, men lödet var på samma sida som lysdioderna. Under 2015 fungerade några av dessa lysdioder, vissa kunde inte jag byta ut de som inte fungerade, men det gjorde att några av dem blev väldigt svaga, och vissa fungerade bara aldrig. Om du tittar nära brädet kan du se att några av lödkuddarna lyftes och gick sönder.

De delade alla samma 5v positiva, så för att slå på eller stänga av byter du marken. Vilket jag vet är en sak, men det gillade jag inte. Du vet, i en Arduino -skiss är en "HÖG" normalt tänd och "LÅG" är normalt avstängd - väl i detta fall stängde "HÖG" av lysdioderna och "LÅG" är på. omvänd logik på lysdioderna.

2015 lät jag bara detta glida eftersom jag hade viktigare saker att oroa mig för just då.

I år bestämde jag mig för att jag gillar tanken på WS2812 RGB -lysdioder, de är billiga och enkla att använda, de använder en datalinje och behöver bara 5v och jord. Det här är 5 mm lysdioder, så de passar väldigt bra i nästan allt som en standard lysdioder passar i. Jag hittade dem på eBay, de var lite mer än jag brukar betala för dessa typer av lysdioder, men jag väljer att beställa från staterna denna gång eftersom frakten från Kina tar väldigt lång tid. Så betala lite mer, få dem mycket snabbare. 10 lysdioder kostar mig $ 10,00 inte illa antar jag, men inte heller ett bra pris.

Att koppla upp dessa är ganska enkelt och rakt fram, det finns en mark, en positiv (5v), en data in och en data ut. Jag väljer att använda en gammal metod för att ansluta och trådlinda dessa. min tanke var om det skulle vara svårare att rada ut data och data i rad om jag skulle löda dem, det kan också vara svårare om jag skär tillbaka ledningarna för långt, de skulle inte passa korrekt i hålen redan i the Hero Jr. Med wire-wrap kan jag liksom flytta runt dem lite och forma dem lite bättre.

Efter att jag fått dem anslutna kopplade jag dem till en Arduino UNO och använde ett av exemplen från Adafruit för neopixlarna. Kul att allt fungerade. Jag placerade dem i robothuvudet och satte dubbel tejp över dem för att både skydda dem från kretskortet och hålla dem på plats lite bättre.

Jag kopplade sedan tillbaka dem till Arduino och körde exemplet igen, bara för att vara säker på att jag inte stötte en tråd eller för att se till att de inte blev korta. Allt fungerade. Det tog lite tid att koppla ihop allt, men ärligt talat, när du väl börjat trådlinda kan du gå ganska snabbt.

Bilderna ovan visar de ursprungliga RÖDA lysdioderna, tavlan, jag försökte visa de trasiga spåren, de nya lysdioderna i olika stadier av kabelanslutning. Och slutligen arbetar de i huvudet.

Jag har också videor av Hero Jr "mun" som när den talar animerar lysdioderna en "mun" och pixlarna som kör Adafruit -exemplen. Jag har inte laddat upp dem ännu, men det kommer snart.

Steg 2: Raspberry PI Google AIY och Arduino Mega 2560 Mini

Hallon PI Google AIY och Arduino Mega 2560 Mini
Hallon PI Google AIY och Arduino Mega 2560 Mini
Hallon PI Google AIY och Arduino Mega 2560 Mini
Hallon PI Google AIY och Arduino Mega 2560 Mini
Hallon PI Google AIY och Arduino Mega 2560 Mini
Hallon PI Google AIY och Arduino Mega 2560 Mini

2015, Det var en annan tid - och ett annat projekt. Jag använde 7 olika Arduinos, de flesta var antingen UNO eller Nanos, ett par MEGA. Jag hade en bara för att spela MP3 med hjälp av en MP3 -sköld, jag hade en för att styra en EMIC 2 talsyntes, en för ljussabeln. Motorförare, stegmotor -knappsats, listan fortsätter. Naturligtvis har jag lärt mig mycket sedan 2015, och ärligt talat är det fantastiskt att 2015 -versionen fungerade lika bra som den (jag visste ingenting och lärde mig och gissade).

2020 - Eftersom "Star Wars Day" -versionen alltid kommer att användas en gång, var mina planer att förenkla saker från början. 2015 lekte jag med tanken på att använda en Raspberry PI då, men jag visste inte riktigt tillräckligt då för att få det att fungera. Jag bestämde mig för att en Arduino Mega 2560 mini skulle göra vad som helst så långt Input/Output behövdes, IE: slå på/stänga av motorn, vrid steget/servon, läs LDR, läs ultraljudet, läs spänningsdelaren. I det här fallet är Mega i princip en "dummy" -enhet, med bara några få saker den verkligen behöver göra, men Mega används också för att läsa knappsatsen, så jag behövde verkligen en metod för tvåvägskommunikation mellan Mega och Raspberry PI. Jag väljer att använda MQTT -protokollet, men det föreslog ett annat problem hur man får det över serieporten? Lyckligtvis hittade jag det här projektet på github "serial2mqtt" https://github.com/vortex314/serial2mqtt Vilket verkligen är en typ av gateway, programvaran körs på Raspberry PI - Arduino skickar bara det korrekt formulerade seriella meddelandet, och det är gick sedan vidare till MQTT -mäklaren. Det tog lite tid att få det att fungera korrekt, men det fungerade ganska bra och verkar göra det jag behöver för att göra det. Arduino Mega kommer att publicera när den är online, ultraljudsavläsning, ldr -läsning, spänningsavläsning. Det kommer att lyssna efter kommandon, motorrörelser, servorörelser och vad man ska göra med lysdioderna. Även om allt som verkar mycket, är omkostnaderna ganska små, och det fungerar ganska bra.

Raspberry PI kommer att programmeras med python, C ++, nästan allt som kan använda den seriella porten och använda MQTT. Eftersom jag inte tänkte använda Google med AIY, behövde jag installera drivrutinerna och se till att det fungerade. Ytterligare en tur som bryter Github till resue, Shivasiddharth gör GassistPI, och räknade ut precis vad som behövde installeras för att få detta att fungera, instruktioner finns här:

PI är värd för MQTT -mäklaren, talar för tal och annan programvara efter behov. För att komma åt det använder jag för närvarande SSH, jag har planer på att bygga ett webbgränssnitt, men det är inte ens nära att bli gjort. Jag har "lekt" med att lära mig python för det här projektet, men jag har fortfarande inte många program redo.

Några speciella anteckningar här:

Den ursprungliga Mega 2560 Mini jag hade var en liten klon av Original Arduino Mega 2560 med samma seriella chip för kommunikation, så under testet använde jag bara en fullstor Mega på arbetsbänken. Tyvärr hade jag lödt knappsatsens trådar till det kortet (avlödning av sidstiften, vad tänkte jag, jag önskar att jag kunde skylla på den 2015, men jag kan inte) Den olyckliga delen, jag hade några av de trådarna som knäppte av, och jag kunde inte få ett rent hål att återlödda också. Jag slutade gå till en klon av en klon det är fortfarande en Arduino Mega 2560 men billigare version, och med ett billigt seriellt portchip. Detta orsakar mig några problem med tappade paket på cirka 10% eller så, det räcker inte med att dra ut allt igen och försöka igen med ett annat kort. Men det räcker bara för att göra mig lite tokig. På den "nya" (version 2) Mega använde jag wire-wrap och lämnade sidhuvudstiften (hej kanske framtida expansion, jag använder bara 12 eller 13 stift just nu)

Jag har också 3D -tryckt (samt återanvändat några misslyckade utskrifter) fästen för Raspberry PI och Mega Mini. Jag måste leta efter designfilerna om någon vill ha dem. De är inte särskilt bra eftersom jag använde ett roterande verktyg för att klippa några hål, eller forma dem lite, men om någon vill ha dem ska jag leta efter dem.

Bilderna ovan: Raspberry PI 3+ med Google AIY Hat, i ett specialtillverkat fäste, Original Mega 2560 den jag ville använda men verkligen förstörde, ersättningen Mega 2560 (v2) den jag inte är så nöjd med men det fungerar, med trådlindningstråd och anpassat 3D-tryckt fäste

Steg 3: Från Stepper till Servo

Från Stepper till Servo
Från Stepper till Servo
Från Stepper till Servo
Från Stepper till Servo

Tyvärr tog jag inte så många bilder på detta, och jag har inga bilder på den gamla stegmotorn.

1984 - en stegmotor var förmodligen billigare än en stor servo 1984 jag är inte säker. Det fanns slutstopp, och steget var tvunget att hemma sig själv med varje ström på. Tänk 3D -skrivare och hur de hemma.

2015 - I ett annat drag av att inte riktigt veta vad jag gjorde tog jag bort slutstoppen - och fortsatte att förlora dem. Som jag nämnde tidigare hade de små skaparna ätit några av trådarna på trappsteget, trådarna var mer/mindre utsatta och började korrodera. Jag är förvånad över att det fungerade 2015, men det gjorde det.

2020 - Steppen slutade fungera, och jag började leta efter en ersättare. Jag stötte på ASMC-04 stora servomotor, det här var inte det billigaste alternativet, men det var en av de bättre som jag hittade. Steppen var $ 50+ dollar från Kina, och hornfästet var ytterligare $ 13 eller $ 14. För mig vägde fördelarna ut kostnaden.

Servodrivrutinen är antingen 12 eller 24 volt, rotationsvinkeln är 0 till 300 grader (begränsad i min Arduino -skiss till 0 till 180), jag kan styra detta med 1 tråd från arduino, (2 om du räknar en jordledning). Det är ett RC -servo med högt vridmoment, det är dock inte så snabbt att svänga.

Besvikelsen med det här var till och med att de angivna specifikationerna såg ut som om de bara skulle monteras i samma hål som steget, det stämde inte korrekt och jag var tvungen att borra nya hål för det. Servohornsfästet är också mycket större än det ursprungliga stegmotorfästet, så fler hål behövde borras.

För mig påminner det mig mycket om stegets hastighet, så överlag har en bra ersättare och något som du inte märker förändrats om du inte tittar in i roboten.

Bilder:

Jag tog inte många bilder på det här, det kan finnas ett par fler var, men de kommer att se ut så här.

Steg 4: Några fler bilder

Några fler bilder
Några fler bilder
Några fler bilder
Några fler bilder
Några fler bilder
Några fler bilder
Några fler bilder
Några fler bilder

Eftersom jag fortfarande arbetar med denna robot (mestadels mjukvara vid denna tidpunkt) tänkte jag bara dela med mig av några fler bilder

Bilder:

4-port USB 12v till 5v 8 amp DC-DC-omvandlare, jag kan inte hitta det här längre, och jag önskar att jag hade köpt ett par av dem.

36v LiPo -batteri tas bort från en trasig svävbräda

Bilder på insidan av roboten, ledningar, ect. Några fler bilder på LED-ersättningarna, några fler bilder på Arduino Mega w/wire-wrap, bild på ultraljudet med täckning över det (faktiskt så var det 2015)

Bilder på kroppen utan skalet på den, och en bild av att använda en konsol för att testa den över MQTT.

Det om det för nu, tack för att du tittade, och om du gillar det, vänligen rösta på mig:-) Jag kan använda några fler delar för projekt LOL - Ha en bra dag och försök att vara säker alla.

Rekommenderad: