Spausdinant nuotraukas analoginiu būdu (apie tai rašiau čia) labai svarbus laikas. Bandžiau suktis iš situacijos naudodamas telefono programelę, bet telefono ekranas, kad ir rodo juodą spalvą, jis yra apšviestas ir skleidžia baltą šviesą.
Tokių prietaisų tikrai yra pirkti, tiek senų rusiškų, tiek šių laikų, modernių. Niekada neteko tokio naudoti. Nusprendžiau susikonstruoti savo. Tad maniškio valdymas yra toks kokį aš jį įsivaizdavau/sugalvojau.
Mano prietaiso mintis yra valdyti didintuvo lempą. Dešiniam šone yra rozetė į kurią jungiasi didintuvas. Didintuvo lempą priverstinai galima įjungti su viršuje esančiu jungikliu. Jungiklis didelis, tad tamsoje problemų jį apčiuopti ir junginėti nekilo.
Užprogramavimas.
Įjungus prietaisą ekrane šviečia nulis. Klaviatūros pagalba galima suvesti laiką sekundėmis. Suvedus laiką pasirenkam kuriam laikmačiui užstatyti suvestą laiką. Jų yra keturi. Tai raidės “A”, “B”, “C” ir “D” klaviatūros dešinėje.
Tarkime noriu, kad didintuvas popierių apšviestu 15sek, 2min pirmoje chemijoje (develop), 1min antroje (stop) ir 2min trečioje (fix).
Tad klaviatūroje suvedu “15” ir spaudžiu “A”, “120” ir spaudžiu “B”, “60” ir spaudžiu “C”, “120” ir spaudžiu “D”.
Paspaudus klaviatūroje “#” prasideda sekos vykdymas. 15’ikai sekundžiu suveikia rėlė ir užmaitina rozetę, ko pasekoje didintuvas apšviečia popierių. Po to pasigirsta pyptelėjimas ir ekranėlyje pasirodo skaičius 120. Laikas popierių dėti į pirmą vonelę. Kas sekunde ekranėlyje skaičius mažėja iki nulio (laikmatis B). Pasiekus nulį, vėl pasigirsta pyptelėjimas. Laikas popierių perkelti į antrą vonelę. Ekranėlyje pasirodo skaičius 60 (laikmatis C). Vėl mažėja iki nulio ir vėl pasigirsta pyptelėjimas. Laikas popierių perkelti į paskutinę vonelę. Ekrane pasirodo 120 (laikmatis D) ir mažėja iki nulio. Paskutinį kartą pasigirsta pypsėjimas. Dabar galima įjungti šviesą ir įvertinti rezultatą.
Viskas sukonstruota WeMos D1 R1 pagrindu. Programuota arduinu.
Žemiau nuotraukoje matosi visos panaudotos detalės.
Nuorodos iš kur pirkau:
WeMos D1 R1 https://www.aliexpress.com/item/32657998940.html
Klaviatūra https://www.aliexpress.com/item/32831963425.html
Ekranėlis (raudonas) https://www.aliexpress.com/item/32867950441.html
Rėlė https://www.aliexpress.com/item/32639452633.html
Spykeriukas https://www.aliexpress.com/item/32955065577.html
Maitinimo šaltinis https://www.aliexpress.com/item/32656713529.html
Jungiklis ir rozetė https://www.ermitazas.lt/
Dėžutė https://rcl.lt/
Klaviatūrai nuskaityti panaudojau Keypad https://playground.arduino.cc/Code/Keypad/
Plačiau kokiu principu veikia: http://www.circuitbasics.com/how-to-set-up-a-keypad-on-an-arduino/
Su klaviatūra buvo dvi bėdos. Pirmoji, kad veikė ne visi klavišai. Išardęs pamačiau, kad naudojami takelių “jumperiai”, kurie, panašu turėjo kažkokią varžą.
Matosi nuotraukoje, kad prilitavau savo “jumperius”. Klaviatūra pradėjo veikti.
Bet štai išlindo antra bėda, kontroleris tiesiog persikraudinėdavo. Pagooglinus randu https://github.com/esp8266/Arduino/issues/3241
Rezultate Keypad.cpp faile 213 eilutėje pridedu yield()
Dabar ji atrodo taip:
while( (waitKey = getKey()) == NO_KEY ) yield();; // Block everything while waiting for a keypress.
Ekranėlį valdau su TM1637 (galima rasti Arduino Library Manager’yje). Ekranėlis šviečia raudonai (raudonos šviesos nebijo juodai baltas foto popierius). Pagal nutylėjimą jis šviečia gan ryškiai, tamsoje man to nereikia, tad šviesumą mažinu iki minimumo. Kodas:
display.setBrightness(0);
Spykeriukas spiegia gan garsiai, tad bandymo keliu atrenku varžą ir pajungiu nuosekliai. Kokia tai varža nebepamenu, orientavausi į norima garsumą.
Aparatas jau išbandytas, darbas daug smagesnis, veikė taip kaip noriu ir nei kart nepavedė.