Sisällysluettelo:

Arduino -ohjattu kellotorni/carillon: 5 vaihetta (kuvilla)
Arduino -ohjattu kellotorni/carillon: 5 vaihetta (kuvilla)

Video: Arduino -ohjattu kellotorni/carillon: 5 vaihetta (kuvilla)

Video: Arduino -ohjattu kellotorni/carillon: 5 vaihetta (kuvilla)
Video: 🦾Оживляем танк с манипулятором на Arduino 2024, Heinäkuu
Anonim
Arduinon ohjattu kellotorni/Carillon
Arduinon ohjattu kellotorni/Carillon
Arduinon ohjattu kellotorni/Carillon
Arduinon ohjattu kellotorni/Carillon

Tämä on sarja soittokelloja, joita ohjaavat solenoidit ja joita ohjaa Arduino -mikrokontrolleri. 8 kelloa kattaa yhden oktaavin. Kelloja voidaan ohjata tietokoneelta, tai torni voi seisoa yksinään ja soittaa esiohjelmoituja melodioita.

Vaihe 1: Osat

Osat
Osat

Käytettiin seuraavia osia: 1 sarja kromaattisia käsikelloja. Sain nämä paikalliselta Aldilta 20 dollaria. Ne ulottuvat C: stä C: hen (esim. C, d, e, f, g, A, B, C). $ 10.8 Solenoidit kellojen lyömiseen. Minulla oli nämä roskapussissani. Sain ne kirjoituskoneen korjaajalta, joka heitti ne pois. Löydät todennäköisesti samanlaisen Ebaysta. Arudino -mikrokontrolleri. ~ 45 dollaria. Sain omani SparkFun -elektroniikasta. Proto/Perf -levy ja muut komponentit, jotta voin tehdä mukautetun `` kilven '' arduinoa varten. $ 10. Darlingtonin ohjainkortti. Käytin sellaista, joka oli paikallaan, mutta uskon, että niitä ei myydä erikseen. Sen pitäisi olla mahdollista tehdä ULN2803 -sirulla pari dollaria.

Vaihe 2: Puuntyöstö

Puuntyöstö
Puuntyöstö

Yllättäen tämä vaihe kesti pisimmän. Koodaus ja johdotus veivät vähemmän aikaa kuin liiman kuivuminen, jonka kehys oli melko yksinkertainen. Vain pala vaneria, johon kaikki kellot mahtuvat, sekä muutamia männyn kiinnikkeitä solenoideille. Kaikki liimattiin yhteen PVA -liimalla, jotta magneettikiinnikkeet olisivat toistettavampia, tein kaavaimen MS Visiossa ja liimasin sen sitten puuhun. Tämä auttoi paljon, kun kaikki solenoidit olivat vakioetäisyydellä kellosta. Jos teet tämän, en voi korostaa tarpeeksi mitataksesi tarkasti hyökkääjien sijainteja. Kellot kuulostavat melko erilaisilta riippuen siitä, mihin osuit ja solenoidin "heitosta".

Vaihe 3: Elektroniikka ja johdotus

Elektroniikka ja johdotus
Elektroniikka ja johdotus

Kuljettajan puoli: Minulla oli onni saada Darlingtonin kuljettaja makaamaan, mikä yksinkertaisti muotoilua paljon. Darlington on tehotransistori, jolla voit ajaa raskaampia kuormia kuin pienet mikrokytkimen nastat normaalisti tukevat. Käytetty levy perustuu ULN2803 -siruun, joka on melko yleinen ja halpa. Huomaa: Solenoideja ei (yleensä) ole suunniteltu käytettäväksi jatkuvasti! Ne voivat sulaa, jos sulatat! Katso lisätietoja ohjelmisto -osiosta. Arduino -puoli: Tämä oli vain kysymys 8 IO -nastan löytämisestä arduinosta Darlington -tulojen ohjaamiseen. Koska halusin lähettää ja vastaanottaa sarjatietoja, en voinut käyttää nastoja 0 ja 1, joten päädyin käyttämään toisella puolella olevia numeroita 2, 3, 4 ja 5 ja käyttämään neljää analogista tulonappia toisella puolella digitaalilähtöinä. Lisäsin myös potentiometrin, joka on kytketty analogiseen tuloon #5, jota käytetään nopeuden säätämiseen. Kuljettajan visuaaliseen palautteeseen käytetään kahta LED-valoa. Nastat 8-13 eivät hyödyttäneet funky-arduino-nastavälejä (grr…)., Huomasin (vahingossa), että USB-virta riitti. Kilometrimäärä voi vaihdella. Koska minulle on helpompaa käyttää vain USB -virtaa, jatkan sitä, kunnes minulla on ongelma.

Vaihe 4: Ohjelmistosuunnittelu

Ohjelmistosuunnittelu
Ohjelmistosuunnittelu
Ohjelmistosuunnittelu
Ohjelmistosuunnittelu

Suunnittelustrategia Tavoitteena oli saada kellotorni ajamaan tietokoneelta. Arduinon USBSerial -linkki oli ihanteellinen tapa tehdä tämä. Protokolla on yksinkertainen; muistiinpanot ovat kaikki niiden ASCII -tekstivastaavissa. Muuttuva viive on myös numeerinen luku, esim. Tietokone lähettää: "cde2fgABC", ja Arduino soittaa kelloja 1, 2, 3, lepää puoli nuottia ja soittaa sitten kelloja 4, 5, 6, 7 ja 8. Vinkki hattu John Plocherille hänen ServoBells -projektistaan, joka osittain inspiroi Arduino -sivukoodi: Arduino -koodi vastaanottaa sarjatiedot, dekoodaa muistiinpanon tai viivästyttää toistoa ja vaihtaa sitten solenoideja asianmukaisesti. Varmista, että koodisi on suunniteltu siten, että solenoideja ei pidetä päällä !. Jos jätät solenoidin vahingossa päälle, se sulaa. Ratkaisin tämän tekemällä muistiinpanorutiinit lohkoon, kunnes solenoidi on kytketty pois päältä, eikä jatkuvaan kyselyyn jne. PC -sivukoodi: Asiakasohjelma on kirjoitettu C#: lla. Siinä on painikkeet kullekin yksittäiselle nuotille sekä painikkeet esiohjelmoiduille melodioille. Muistiinpanotiedot lähetetään sarjaporttiin, kaiken lähdekoodi on liitteenä.

Polyfoniset muistiinpanot

Jätin pois mahdollisuuden toistaa kahta nuottia samanaikaisesti, koska en uskonut, että kaikki 1 oktaaviin mahtuvat kappaleet vaatisivat niitä. Lisäksi laukaisee useamman kuin yhden solenoidipurkin

Tappaa jonon

Tietokone lähettää suuria lauseita muistiinpanoista arduinoon, joka käsittelee niitä, kunnes jono tyhjenee. Suurille sävelmille tämä voi kuitenkin olla väsyttävää ja saattaa olla toivottavaa pystyä keskeyttämään käynnissä oleva viritys. Tämä voitaisiin saavuttaa käyttämällä jotain muuta kirjainta sarjalauseessa (esim. 'X') koodina puskurin huuhteluun.

Vaihe 5: Kellojen käyttö

Kellojen käyttö
Kellojen käyttö
Kellojen käyttö
Kellojen käyttö

Kellojen käyttö on melko yksinkertaista. Kytke USB -kaapeli ja avaa PC -ohjelmisto. Voit soittaa virityksen napsauttamalla yksittäisiä kellopainikkeita. Vaihtoehtoisesti on painikkeita asteikon toistamiseen, esiohjelmoidut sävelet ja myös tekstikenttä vapaamuotoiseen tekstinsyöttöön. Toistaiseksi vain yksinkertaisia sävelmiä on ohjelmoitu sisään. Video on täällä: https://blip.tv/file/1521415 (Jos joku tietää kuinka pelata Futurama -teemaa yhdellä C -oktaavilla, kerro siitä minulle.)

Suositeltava: