Aina välillä tulee pyyntöjä sivujen kautta sekä muita kyselyitä, missä ihmiset tarvitsevat apua erinäisissä kytkennöissä taikka projekteissaan. Tässä hieman tarinaa kalenterilaatikko nimisestä projektista...
Homman ideana oli toteuttaa prototyyppi joulukalenterilaatikosta, joka toimii hieman eri tavalla kuin perinteinen joulukalenteri. Kyseinen laatikko voidaan avata avaimilla, jotka toimivat vain yhden kerran ja avain on voimassa yhden vuorokauden verran.
Hieman hankalasti ehkä selitetty, mutta ideana on että laatikon sisään voidaan yleisavaimen avulla piilottaa jokin yllätys tai lahja ja avain piilotetaan johonkin helpohkoon piilopaikkaan lasten löydettäväksi. Kun avaimen löytää, niin työntämällä oikean päivän avaimen lukkoon, servomoottori aukaisee laatikon lukituksen ja ylläriin pääsee käsiksi. Alta näkyy laatikko lopullisessa muodossaan.
Alla nähdään puolestaan 3D-tulostettuja avaimia, joilla laatikon voi avata. Käytännössä avain on vain tietyn arvoinen vastus, joka jännitteenjaon avulla tulkitaan mikrokontrollerilla päivän X avaimeksi. Musta pötkylä on yleisavain jolla laatikko aukeaa aina.
Laatikko soittaa myös melodian kun se avataan, joten käyttäjän on helpompi päätellä milloin laatikko on auennut. Avain 1 avaa siis laatikon ensimmäisenä päivänä, avain 2 avaa laatikon toisena päivänä jne. Eilisen avainta voi aina käyttää jos sitä ei ole jo käytetty ja kullakin avaimella voidaan avata laatikko vain yhden kerran. Esimerkiksi avaimella 4 ei voi tietenkään avata laatikkoa, mikäli päivämäärä ei ole 4.12... Eniveis, ymmärtänet pointin.
Projektin vaiheita...
Alla pari kuvaa keskeneräisestä, tulostuksen alla olevasta laatikosta jota kuvailin projektin eri vaiheissa:
Koitin lukituksen teossa käyttää aluksi solenoidia, mutta se osoittautui turhan haasteelliseksi. Pienessä solenoidissa ei ole tarpeeksi voimaa ja suurempi solenoidi vie enemmän tilaa. Ratkaisuksi järjestelin sitten uuden lukitussysteemin joka toimii servolla... Jaksaapahan ainakin vääntää.
Koodit arduinolla
Koodin tein Arduino Unolle ja kehitysympäristönä käytin arduino-IDEä. Tästä tuli vähän tämmöinen "quick 'n dirty" häksäys, mutta ajanee asiansa demoversiona.
Pääohjelman loopissa tarkastetaan vain jatkuvasti onko avainta syötetty lukkoon. Jos on niin tutkitaan mikä avain on kyseessä. Kun avain on tulkittu, pitää tutkia vielä voiko avainta käyttää vai onko sitä jo käytetty. Myöskään tulevaisuuden avainta ei voi käyttää. Lopuksi pimputellaan melodiaa joka valitaan "randomisti" neljästä eri vaihtoehdosta ja avataan lukitus.