Stap 6: Programmeren van de ATTiny85
Ik heb alle prototypen maken op een ARDUINO board. Het laatste project, maar moet op een ATTiny85 ter vermindering van energieverbruik, grootte (Nou ja, een ARDUINOmini-board ook zou passen), en kosten (< 1 Euro voor de processor). Het programmeren van een ATTiny85 is heel eenvoudig met behulp van de ARDUINO omgeving en een ARDUINO als ISP. Er zijn een heleboel goede tutorials volgen van de links hieronder, zodat zal ik niet ingaan op dit deel.
- LED Ladder spel (stap 3)
- ATTiny85-verkeerslicht
- Hoog/laag-Tech
Het stroomverbruik van de ATTiny85 is al vrij laag (~0.8mA draaien op de 4.5V op een kloksnelheid van 1 MHz). Echter als er maanden lopen zonder het aftappen van de batterij te snel moeten we enkele meer energie besparen. In de inactieve stand gebruikt de ATTiny85 alleen over 0.18mA. Daarom sturen wij slapen voor de meeste van de tijd en enkel wekken op voor het controleren van de sensoren elke 250 milliseconden. Daarnaast gesoldeerd ik de IR zender aan de weergave van de charlieplexed ter vervanging van LED 1. Op deze manier kan ik weer op de IR-LED (~ 20mA) voor slechts een paar ms (8ms per seconde). Een ruwe schatting van een gemiddelde verbruik van 0.25mA per uur zal resulteren in 250 dagen met behulp van een pak van de batterij met 3 AAA batterijen op 1500mAh.
Hier is een goede tutorial over energiebesparende slaapstand: H2OhNo! en ik gebruikte ook code van het grote project van de Throwduino.
Ik aangesloten de huidige versie van de software die wordt uitgevoerd de nest vak teller. Ik zal waarschijnlijk updaten na het testen van de doos voor een paar dagen en waarschijnlijk opnieuw na één seizoen in het echte leven. De schets is rijkelijk commentaar - opmerkingen, suggestie, en verbeteringen zijn welkom!
Tot slot schilderde ik het meerdere malen met behulp van duidelijke jas. Ik gebruikte ook de duidelijke vacht op de achterkant van het moederbord en het beeldscherm om te voorkomen dat kortsluitingen in geval van water inleakage. Ik houd jullie op de hoogte als iemand beweegt...