Stap 4: Schrijven het besturingsprogramma
Ik heb bijgevoegd de schets en de lib voor het communiceren met de sensor. Alleen kun je die in een enkele schets map om het te compileren. Er zijn heel wat tutorials over hoe te programmeren een Attiny met behulp van een UNO dus ik verlos mij van die herhalende. Het is gemakkelijk zodra u hoe het weet te doen, maar het kostte me een paar pogingen. Bij het gebruik van de Attiny is er de extra uitdaging dat de laatste gratis pin is gereserveerd voor het resetten. Om het bruikbaar te maken voor normale I/O is het noodzakelijk te blazen een zekering binnen de chip. Zo zodra u het programma hebt geladen en de zekering wordt geblazen kunt u niet gemakkelijk opnieuw gebruiken de chip. Alleen met een HVSP die ik uiteindelijk ook opgebouwd uit een andere tutorial. Ook eenvoudig als je eenmaal weet hoe. U kunt een Arduino Nano in plaats daarvan, zoals ik deed in het begin die programmeren en debuggen van een heel stuk makkelijker maakt.
Toen ik voor het eerst met het besturingsprogramma begonnen nam ik de luchtvochtigheid tijdens het drogen. Ik heb ontdekt dat er genoeg om te beginnen met een warmtebron Verwarming. Dit maakte de vochtigheid gaan tot 99% voor vrij een tijdje voordat het langzaam rottend. Zodra het minder dan 75% daalt (checkDryEnough: vochtigheid > 750) de 2e warmtebron wordt toegevoegd. Dit maakt de luchtvochtigheid stijgen eenmaal meer (ik kan me niet herinneren de exacte cijfers, maar denk dat die het was ongeveer 80%). Daarna zal de controller gevoel net de warmte van de lucht. Eenmaal haar steeds warmer dan 39° C die de droger wordt gestopt, een geluid wordt gemaakt en de controller voert inactief totdat de deur open is en alles wordt afgesloten.
Het programma van de controller is voornamelijk een toestandsmachine (zoals alle ingesloten domeincontrollers). Zodra het wordt ingeschakeld (die gebeurt automatisch na het sluiten van de deur en op de startknop te drukken) een start geluid wordt afgegeven (die ook knippert de LED zoals hierboven uitgelegd). De vertraging is behoefte aan de sensor die een korte tijd na de macht tot get ready moet. 2 1/2 seconden is te veel, maar beter veilig dan droevig.
Er zijn een paar van onafhankelijke timers (zoals klok en nextTurn) die zijn geïnitialiseerd met de doeltijd. Dus teken klok elke seconde en nextTurn wanneer het is tijd om te zetten van de motor in de tegenovergestelde richting. De sensor is elke seconde gepolst om bij te werken van temperatuur en vochtigheid (pollSensor). Tijdens de fase van pre warmte de sensor-waardes niet worden gecontroleerd. Dit wordt gedaan zodat het systeem probleemloos opstarten (en opstaan van meer dan 75% vochtigheid lezing). De vochtigheid op de sensor komt zeer snel maar ik liet de 5 minuten in checkPreHeated gewoon weer veilig te zijn. Na die eerste vochtigheid en temperatuur gecontroleerd totdat al is gedaan.
De systeemparameters werden vastgesteld voor een klimaat in Duitsland, en uiteindelijk in uw omgeving moet u een andere aanpak efficiënt drogen. De parameters zoals die in het besturingsprogramma opleveren zeer goor resultaten. Voordat de upcycle was de Wasserij te droog of te vochtig als één die nodig zijn voor het instellen van een timer (door de regel van de duim) en eventueel de normale warmte/super serie - die is nu alles automatisch gedaan.