Sadržaj:

Homunculus - mehanički mistični proročanski proročica sudbine: 15 koraka (sa slikama)
Homunculus - mehanički mistični proročanski proročica sudbine: 15 koraka (sa slikama)

Video: Homunculus - mehanički mistični proročanski proročica sudbine: 15 koraka (sa slikama)

Video: Homunculus - mehanički mistični proročanski proročica sudbine: 15 koraka (sa slikama)
Video: Гомункул или страшная нога! 2024, Novembar
Anonim
Image
Image
Homunculus - mehanički mistični proročanski proročica sudbine
Homunculus - mehanički mistični proročanski proročica sudbine

U redu - pa šta bi ovo trebalo biti … zadnja priča o ovome govorim ljudima je da je lubanja mistika iz 19. stoljeća čiji je grob opljačkan i da se njegova lubanja koja je završila na nekoj karnevalskoj strani pokazuje početkom 1900 -ih. Našao sam ga u podrumu neke dotrajale viktorijanske kuće i rekonstruisao rekvizit u gataru 21. vijeka-'koji može doći u eter interneta, reći vam svoje bogatstvo, ko su vam prijatelji i neprijatelji šala i pročitajte moju e -poštu i kalendar za taj dan '.

Šta je to zaista? Pa, to je nevjerovatan Jasper softver koji radi na Raspberry pi -u i napravio sam dvokanalnu Linburgovu lobanju koja govori zajedno sa puno zvona i zvižduka (i tambura) da joj se doda.

Ovo je bio super ambiciozan projekat. Mnogo različitih medija za rad - više pita, obrada drveta, slikanje, mnogo ožičenja, mnogo kodiranja u pythonu, ardunio kodiranje, puno malih ožičenja, ožičenje 120v, vanjske ploče pi 'hats', upravljački programi releja i releji, 24v napajanje, pokretanje stvari - lubanja sa 2 osi i lupanje tamburama.

Neću ulaziti u super detalje po dio za svaki dio, posebno python kodiranje, ali pokušat ću ukratko opisati svaku komponentu i uključiti slike.

Također, na primjerima Pythona-da, mogao sam biti mnogo više objektno orijentiran na kodiranju, ali moje iskustvo s Pythonom kad sam započeo projekt bilo je prilično osnovno i naravno da ga je lakše izrezati i zalijepiti kada se žurite u odnosu na prestanite s onim što radite, ponovo ispravno napišite pa nastavite.

Korak 1: Glavne komponente - stvari koje sam morao pronaći/nabaviti/kupiti

Glavne komponente - stvari koje sam morao pronaći/nabaviti/kupiti
Glavne komponente - stvari koje sam morao pronaći/nabaviti/kupiti
Glavne komponente - stvari koje sam morao pronaći/nabaviti/kupiti
Glavne komponente - stvari koje sam morao pronaći/nabaviti/kupiti
Glavne komponente - stvari koje sam morao pronaći/nabaviti/kupiti
Glavne komponente - stvari koje sam morao pronaći/nabaviti/kupiti

Raspberry Pi

Dva od njih

www.adafruit.com/products/1914?gclid=CjwKE…

Jasper

"Jasper je platforma otvorenog koda za razvoj uvijek uključenih aplikacija glasovnim upravljanjem"

jasperproject.github.io/

Adafrutove "oči"

learn.adafruit.com/adafruit-1-44-color-tft…

Teensy - Mozak za oči

www.adafruit.com/product/2756

Kako stvoriti „oči“koristeći tinejdžerske i 1-44 tft ekrane u boji

learn.adafruit.com/animated-electronic-eye…

16 -kanalni Serveo šešir

learn.adafruit.com/adafruit-16-channel-pwm…

Klasična Lindberg lobanja

www.amazon.com/Lindberg-scale-Pirate-skull…

4 -kanalna relejna ploča koja će raditi s Raspberry Pi

www.amazon.com/Sizet-Channel-Module-Arduin…

Push Solenoid

(Ovo je dostupno sa mnogo različitih mjesta)

www.aliexpress.com/item/High-quality-DC-12…

USB mikrofon

Ovo je dostupno sa mnogo različitih mjesta

www.samsontech.com/samson/products/micropho…

Ostalo

Dva serva koja sam imao u blizini, servo trube koje sam našao u korpi od 1 USD u hobi radnji. Servo produžni kabeli, USB/Bluetooth zvučnik, vijci s maticama, MDF, vruće ljepilo, stare vakuumske cijevi, razni dijelovi i dijelovi lampe, stari mobitel Samsung S5, čelični lim, bakrena žica, bakrena traka, ekseri, uobičajeno ljepilo itd. itd.

Korak 2: Zašto dvije pite od maline?

Zašto dvije pite od malina?
Zašto dvije pite od malina?

U početku sam htio sinkronizirati lubanje razgovarajući s govorom, ali nakon što sam instalirao Jasper i odredio sve što želim učiniti, sve stvari koje se kreću, mislio sam da bi bilo bolje podijeliti sav rad na dvije pite. Imao sam rok za to i nisam htio odustati ako imam neku vrstu problema s performansama. Sada kada je posao obavljen, vjerujem da sam to mogao učiniti s jednim Pi -jem, u to vrijeme sam mislio da je najbolje dopustiti jednom pi upravljati Jasperom, a drugom pi upravljati servo i relejima kako bih mogao jasno razgraničiti između rad. Bilo je i lakše za razvoj. Mogao sam sve ispraviti u Jasperu da ne moram brinuti o servo i relejima. S druge strane, mogao bih se usredotočiti na upravljanje servo pogonima, mjerenje vremena - paljenje svjetla, pomicanje servo motora itd. I ne moram brinuti o bilo kakvim problemima vezanim za glas/zvučnik/mikrofon.

Nedostatak toga je što sam izgubio sposobnost da se lubanja sinkronizira pomičući čeljust s govorom, ali nakon što sam pogledao rad Granta Imahare za The Late Late Show stvarajući 'Geoff', zaključio sam da će stvari izgledati dovoljno dobro.

www.popularmechanics.com/science/a5473/4350…

Korak 3: Kako dvije pite komuniciraju?

Kako dvije pite komuniciraju?
Kako dvije pite komuniciraju?
Kako dvije pite komuniciraju?
Kako dvije pite komuniciraju?

Postoji nekoliko različitih načina na koje to možete učiniti. Išao sam u staru školu i odlučio da idem sa serijskom vezom. Potrebne su samo tri žice između dva Piesa (Tx, Rx & gnd) i mala količina koda za otvaranje serijske veze Od Pi#1 do Pi#2 i slanje nečega na nju. Pi#2 otvara serijsku vezu za čitanje podataka i postavlja u usku petlju čitanje sa svoje serijske veze. Kada primi neki tekst, vidi da li se podudara s naredbom (Talk, lampice su uključene, svjetla su isključena, talk off itd.) I učini ono što treba učiniti. Nedostatak serijske veze je malo kašnjenje od slanja naredbe do procesa naredbe. Pi#2 je u petlji sa malim kašnjenjem pri čitanju. Tako da sam morao nekako ubrzati stvari. Također, za buduće multi-pi projekte dobro je znati da mogu komunicirati s dvije pite i da mi za to nije potreban internet.

Korak 4: Python niti

Python niti
Python niti

Da bih dodao dodatnu složenost svemu, morao sam koristiti Python niti na Pi#2 kako bih mogao obraditi više zahtjeva i obraditi ih u isto vrijeme. Na primjer, trebao sam moći početi govoriti - pomicanje glave lubanje ulijevo/udesno dok čeljust ide gore -dolje, ali šta ako Pi#1 iz nekog razloga ima grešku i ne može reći Pi#2 da prestane govoriti, lobanja bi pričala zauvijek. Pa sam morao da kažem da se lobanja sama isključi nakon nekog vremena. Da biste to učinili, bilo je najjednostavnije odvojiti nit. Unutar rutine niti za razgovor postoji neki kod koji nakon nekog maksimalnog vremena prestane govoriti, resetira glavu i čeljust i izađe. Isto kao i tambura, trebalo mi je da počne prije nego što je lobanja prestala govoriti pa okrećem još jednu nit za tamburu i sve funkcionira zajedno, a kôd za kretanje glavom potpuno je odvojen od lupanja tamburom - isto za uključivanje svjetla a oči sve niti mogu raditi sve istovremeno.

Količina potrebnog koda u Pythonu za korištenje niti je prilično mala, ali je tupa i trebalo mi je neko vrijeme da to shvatim, ali kako se pokazalo, radi jako dobro. Sposobnost korištenja niti dobar je alat koji možete imati u okviru s alatima ako ste programer Raspberry Pi.

Korak 5: Izmjene jaspisa i jaspisa

Jasper web mjesto je resurs za instaliranje na pi, koji glasovni rekord koristiti, kako konfigurirati, pisati nove module, sve - i to besplatno! Ipak, to nije jednostavna instalacija. Mnogo koraka, puno paketa za instaliranje pa konfiguriranje. Ovim se životom bavim i to je ipak bilo nešto što bih smatrao izazovom. Kad sam završio s ovim projektom, prilično sam duboko zašao u Japer i napravio dosta izmjena kako bih prilagodio onome što sam pokušavao učiniti.

Neke promjene koje sam napravio:

Uklonjeno je pasivno slušanje i upotrijebljen je GPIO port za početak aktivnog slušanja pomoću prekidača za rezanje koji je izrađen kod kuće. To je učinilo više arkadnim stvarima u odnosu na korištenje pasivnog slušanja.

Promijenio sam potrebne parametre za rad s mikrofonom - morao sam proći kroz tri različita USB mikrofona dok nisam našao jedan koji bi mi ispravno radio. Također sam morao prilagoditi neke vrijednosti praga u kodu. Ovo je za mene bio najbolniji dio korištenja Jaspera.

Dodao je kôd za serijsku vezu u svim modulima za otvaranje serijske veze, rekao slave slave -u šta da radi 'oči u oči', 'pričanje', 'udarna tambura'

Dodani su moduli „ko su mi prijatelji“, „ispričaj mi vic“, „pročitaj moj raspored iz kalendara za CRM“, „reci mi moje bogatstvo“. Neki od njih su zahtijevali upućivanje REST poziva na softver zasnovan na oblaku radi prikupljanja podataka. Postoji mnogo out -box modula koje sam koristio kao primjere zajedno s dokumentacijom na web stranici koja mi je pomogla da obavim ono što sam trebao učiniti.

Korak 6: Dodavanje dvije osi lobanji

Dodavanje dvije osi lobanji
Dodavanje dvije osi lobanji
Dodavanje dvije osi lobanji
Dodavanje dvije osi lobanji
Dodavanje dvije osi lobanji
Dodavanje dvije osi lobanji

Počeo sam s osnovnom Lindbergovom lubanjom. Prvotno sam razmišljao o lubanji osi 4/5, ali vrijeme potrebno za pisanje python koda za koordinaciju pokreta zajedno s izgradnjom hardvera za kretanje premašilo bi vrijeme koje sam morao završiti s ostatkom projekta. (Ne znam da li već postoji, ali dio softvera na Pi-u ili Arduniu za pogon višeosne lubanje koji bi bio prilično kul projekt sam po sebi.) Dakle, jedna osovina-pomicanje čeljusti bilo je previše hromo, pa Dodao sam pokret glave i s LCD očima koje rade, zadovoljan sam rezultatima.

Pa sam gledajući posao koji su drugi radili s lubanjama koje su govorile, shvatio sam šta trebam učiniti, dva servo -servo i trube, komad MDF -a, vruće ljepilo, patentne zatvarače, pokušaj i greška - fizički dio sam imao na mjestu. Osnovno Pi programiranje pokreta zapravo je trajalo duže. Morao sam shvatiti vrijednosti PWM -a za oba serva. Započeo sam s osnovnim otvaranjem/zatvaranjem okrenite glavu skroz lijevo/desno. Ali nije izgledalo dobro. Napravio sam posredne pokrete, čeljust potpuno otvorena, kašnjenje.1, djelomično zatvoreno čeljust, nema odgode, staklenka je djelomično otvorena, odgoda,. Itd. izgleda bolje.

Jedna nesretna stvar koju nisam imao vremena proći je to što je sav materijal koji sam stavio na kapu lubanje - metalna traka, šiljci, bakrena kruna i ožičenje učinili ukupnu lubanju težom i otežali servo unutar nje kreće se sporije i ne tako daleko. Servo sa većim obrtnim momentom bi vjerovatno pomogao ovdje, ali ostao sam bez vremena i sredstava …

Korak 7: Servo upravljački program Adaifruit Hat

Servo upravljački program Adaifruit Hat
Servo upravljački program Adaifruit Hat

Adafruit ima odlične primjere kako koristiti svoje proizvode. Ono što je predstavljalo izazov bilo je utvrditi koje su tačno vrijednosti za svaki od servomotora - centar, krajnje lijevo i desno. Nije 0, 90, 180 kako biste mislili. Bio je to samo nekoliko redova dugačak python program, ali bilo je potrebno nekoliko sati doterivanja da se ovo prođe za oba servo -a.

Korak 8: Relejna ploča

Relejna ploča
Relejna ploča

Ovo sam pokupio na Amazonu. Mnoge web stranice prodaju ono što izgleda kao potpuno ista jedinica. Ovdje je bilo potrebno eksperimentirati, ali za prebacivanje releja potrebno je samo nekoliko redaka koda, a na relejima imate NC i NO veze što ga čini još lakšim. Još jedan izazov ovdje je GPIO port/pin nije 1: 1 podudaranje s pin -om na Pi -u. Trebalo je malo truda da to shvatim.

Korak 9: Tinejdžeri i oči

Tinejdžeri i oči
Tinejdžeri i oči

Ovo sam uzeo 100% sa stranice Adafruit. Prvobitno sam imao neke hromije LED osvijetljene loptice za ping pong koje sam namjeravao koristiti, ali kad sam to vidio na njihovoj web stranici, morao sam ih imati. Prije toga nisam imao nikakvo iskustvo s Arduniom, ali sam slijepo slijedio primjere na njihovom web mjestu i učinio ih za otprilike ½ dana. Takođe - pošto sam program prebacio na tinejdžerski period, on ga zadržava i kada ga uključite. Ardunio se pokreće za otprilike 3 sekunde i osvjetljava oči. Dakle, sve što sam trebao učiniti da bi oči radile bilo je spojiti 12v na jedan od releja i uključiti tinejdžerske oči i događa se čarolija!

Postavljanje LCD ekrana u lubanju bilo je SUPER bolno. 7 malih žica na svakom LCD -u, dakle ukupno 14 žica i pokušavajući iscijediti lubanju i montirati ih ravno, a ne prekinuti žicu - što se događa mnogo bilo je vrlo bolno. Dakle programiranje umjerene poteškoće - teško montiranje. Upravo suprotno od onoga što sam očekivao. Teensy je postavljen na stražnjoj strani očiju ispod MDF ploče koja drži dva serva.

Korak 10: Tambura

Tambourine
Tambourine
Tambourine
Tambourine

Uvijek se sjetim glave u kristalnoj kugli u Ukletom dvorcu i tambure koja je lebdjela lupajući dok je kontaktirala s duhovima pa sam morao imati nešto takvo za ovaj projekt. Budući da je lobanja bila od bivšeg čitatelja misli/vidovnjaka, duhovi trebaju ljudima dati do znanja kada su prisutni J. Našao sam najveći i najmoćniji push pull relej koji sam mogao pronaći. Zatim sam ga prenaponovao sa svojih 12v na 24v sa rezervnim punjačem za laptop koji sam imao. Morao sam napraviti nekoliko različitih verzija mehanizma, ali moja treća iteracija je najbolje funkcionirala. Morao sam da se petljam oko dužine poluge, poravnanja itd. Moja velika greška je što sam sve ovo radio sa drvetom/MDF -om. Kad sam ovo prvi put sastavio na 24v, solenoid bi udario u tamburu tako jako da se raspao. (Na 12v nije bilo dovoljno jako) Vremenom je drvena osovina montirana u MDF -u i lakirala stvari pa je cijela stvar postala sve teža / teža za pomicanje, što je značilo da je solenoid teže izbacivao van kad se zbio i teže se vraćao. Zato sam morao dodati dodatnu povratnu oprugu - koja zahtijeva da solenoid troši energiju kada je pod naponom. Tako je završilo lupanjem po tamburi sa spore strane. Sljedeći put taj dio izrađujem u metalu - bronzanu čahuru, metalnu osovinu itd. I izbjegavam ovaj problem.

Korak 11: Plazma lampa

Plazma lampa
Plazma lampa
Plazma lampa
Plazma lampa

Budući da nisam namjeravao izgraditi Jacobsove ljestve ili neki drugi opaki izvor energije ludih naučnika za projekt, trebala mi je neka vrsta 'energije' za pokretanje lubanje. Uzeo sam svoj stari Samsung Galaxy S5, vratio na tvorničke postavke i na njega učitao aplikaciju energetske kuglice. Morao sam učitati drugu aplikaciju koja ne dopušta telefonu da pređe u način čuvara zaslona kako bi ostala aktivna u aplikaciji.

Korak 12: Kako napraviti svjetlinu od 120v

Kako napraviti svjetlo od 120v svjetla
Kako napraviti svjetlo od 120v svjetla

UPOZORENJE -

Ovo se petlja sa utikačem naizmjenične struje od 120 V ovdje. Ako ne znate šta radite, nemojte to raditi

UPOZORENJE -

halloweenpropmaster.com/u-build-it3.htm

Ova web stranica daje najbolje objašnjenje kako to učiniti. Cijena startera je super jeftina i izvadio sam rezervni produžni kabel koji sam imao. Imam ih nekoliko izgrađenih i koristim ih za vrijeme Noći vještica i radili su jako dobro, bez pregorelih osigurača, bez pregrijavanja itd. Radio sam ih satima bez problema. Stoga sam za ovaj projekt uzeo jedan od produžnih kabela s inline starterom i spojio ga na jedan od četiri releja na ploči. Par redova GPIO koda će ga isključiti i uključiti. Takođe počinje sa radom odmah, nema vremena za zagrevanje.

Korak 13: Platforma/Tabela

Platforma/Tabela
Platforma/Tabela
Platforma/Tabela
Platforma/Tabela

Vidio sam poprilično „lubanje na stolu“, „Frankensteinova glava na stolu“ludih naučnika poput rekvizita i odlučio sam da želim ići tim putem. To bi mi dalo priliku da isprobam više od lubanje koja govori. Shvatio sam osnovnu veličinu stola i napravio je od ¼ MDF -a. Korištenje stolne pile čini to prilično lakim. Moji projekti su obično metalne stvari pa mi je izgradnja od drveta bila nešto novo. Izrezao sam osnovne dijelove, a moje 4 strane kutije i gornji dio su napravljeni prilično brzo. Tamo gdje sam naučio tešku lekciju, upotrijebio sam pištolj za ljepilo da ih sastavim. Ono što sam otkrio je da to nije način na koji to treba učiniti. Svi su se komadi raspali čim sam podignuo prokletu stvar! Zato sam izrezao neke dodatne komade kvadrata 1”kako bih ojačao uglove i drvo ih zalijepio/zakovao. Lekcija naucena. Položio sam neke ukrase između vrha i bočnih strana platforme, zalijepio i zabio na mjesto. Spot zalijepljen da popuni praznine i bilo je spremno da se na njega montiraju ostale komponente.

Za ostalo inspiraciju sam dobio od slika koje sam vidio na webu. Pokušao sam upotrijebiti tamnu mrlju kako bih "antički" lobanju. Nije uspjelo; nije se lijepila za plastiku. Pa sam pokušao slikati lubanju prljavo bijelom bojom, a zatim sam stavio mrlju na nju. Radilo je mnogo bolje. Znam da postoji mnogo tehnika za to i zadovoljan sam kako je ispalo. Bakarnu traku koju sam položio iz drugog projekta koji sam koristio za čep lobanje i oko obraza. Slikao sam po mrlji na ostalim obojenim predmetima koji nisu crni kako bih mu dao onaj starinski/stari izgled.

Ostatak komadića i mrvica koje sam imao od drugih projekata. Svi komadi od mesinga su iz lampe. Napravio sam prekidač za rezanje od nekih otpadnih materijala, a gumb na kraju je još jedan komad lampe. Cijevi koje sam pronašao na elektroničkom višku zajedno s izolatorima. Punk rocker šiljke koje sam imao iz drugog postapokaliptičnog projekta. Čelični lim i bakrena žica iz željezarije i neke PVC cijevi za njegove kralješke.

Za poster sam pronašao sliku postera starog mađioničara na webu i uz čaroliju Photo Shop -a promijenio ime.

Korak 14: Ostatak

Ostalo
Ostalo
Ostalo
Ostalo
Ostalo
Ostalo
Ostalo
Ostalo

Inspiraciju sam dobio od slika koje sam vidio na webu. Pokušao sam upotrijebiti tamnu mrlju kako bih "antički" lobanju. Nije uspjelo; nije se lijepila za plastiku. Pa sam pokušao slikati lubanju prljavo bijelom bojom, a zatim sam stavio mrlju na nju. Radilo je mnogo bolje. Znam da postoji mnogo tehnika za to i zadovoljan sam kako je ispalo. Bakarnu traku koju sam položio iz drugog projekta koji sam koristio za čep lobanje i oko obraza. Slikao sam po mrlji na ostalim obojenim predmetima koji nisu crni kako bih mu dao onaj starinski/stari izgled.

Ostatak komadića i mrvica koje sam imao od drugih projekata. Svi komadi od mesinga su iz lampe. Napravio sam prekidač za rezanje od nekih otpadnih materijala, a gumb na kraju je još jedan komad lampe. Cijevi koje sam pronašao na elektroničkom višku zajedno s izolatorima. Punk rocker šiljke koje sam imao iz drugog postapokaliptičnog projekta. Čelični lim i bakrena žica iz željezarije i neke PVC cijevi za njegove kralješke.

Korak 15: Montaža/Ugađanje/Ugađanje

Montaža/Ugađanje/Ugađanje
Montaža/Ugađanje/Ugađanje

Evo evo mog procesa izgradnje:

#1 Instalirajte Jasper na Pi i pokrenite ga.

#2 Kupio sam više mikrofona i ugađam dok ne postignem neki uspjeh.

#3 Na 2. Pi instalirajte Adafruit šešir i razumite kako premjestiti servo pogone. Ubacite servosisteme u lobanju i shvatite vrijednosti koje su mi trebale za njihovo pomicanje.

#4 Izgradite testnu bazu za lubanju kako bih mogao raditi na njoj u svojoj kancelariji. Ugađaj, dotjeraj, dotjeraj još.

#5 Montirajte sve električne komponente na ploču od pleksiglasa. Pite, relejna ploča, USB napajanja i povezane žice.

#6 Izgradite Adafruit oči. Dokažite sebi da im je potreban samo napon da bi sve radilo. Nisam ovo znao kada sam započeo ovaj dio.

#7 Napravite dokaz koncepta slanja i primanja serijskih podataka između dvije pite. Napišite rutinu petlje za 2. Pi sa naredbama koje su mi bile potrebne - uključivanje/isključivanje razgovora, itd. Testirajte je nekim uzorkom koda na Pi#1. Još nema Jaspera.

#8 Dodajte serijski kod u Jasper kod - dokažite da mogu postići osnovne pokrete dok Jasper priča.

#9 Počnite petljati s relejnom pločom. Dodajte kôd za uključivanje očiju.

#10 Dodajte kôd za uključivanje 120v. Napravite solenoid i tamburu na zasebnoj platformi kako biste shvatili kako bi trebao funkcionirati.

#11 Postavite oči u lobanju.

#12 Izgradite platformu na kojoj će se sve sastaviti. Sastavite sve dijelove na platformu, napravite čeličnu podlogu lubanje da je drži, dodajte komponente tambure.

#13 Pokušajte unijeti pite i daske iz kuće u garažu i smislite kako ih unijeti u platformu.

#14 Počnite s ugađanjem. Više ugađanja, nastavite s ugađanjem. Shvatite da moram napraviti Python kôd s više niti kako bi sve radnje mogle funkcionirati zajedno.

#15 Odlučite dodati energetsku kuglu ispod vakuumskih cijevi. Shvatite da to mogu učiniti sa starim mobilnim telefonom. Učinio je to za manje od jednog dana.

#16 Nastavite dodavati detalje. Šiljci, bakrena žica, cijevi, starinska lubanja. Nastavite s podešavanjem i testiranjem. Obojite, popravite i popravite stvari koje se neprestano olabavljaju, reinženjerirajte/pojačajte stvari koje se raspadaju.

#17 Testiranje i ugađanje Spremite se da to pokažete drugim ljudima.

Preporučuje se: