sâmbătă, 22 decembrie 2018

Ceas animat cu termometru şi afisaj multiplexat cu 4 cifre led

 
  Faţă de articolele anterioare de ceas cu afişaj led din 7 segmente, cu reglaj sau fără, acum am pus o mică animaţie la schimbarea informaţiilor, după ce am discutat cu GeoMar, care voia un ceas cu termometru.
   Am testat şi făcut modificări în programul lui pentru a putea funcţiona cu informaţii simulate (pentru a vedea dacă afişează corect temperaturi negative şi pozitive) şi printr-o schimbare de variabilă să treacă la funcţionare normală de ceac cu modul RTC (cu DS1307 sau mai bine cu DS3231) şi termometru cu DS18B20, după cum se vede în filmuleţele:
ceas cu termometru pe afisaj multiplexat cu animatie
animated clock with thermometer on multiplexed led display
ceas cu termometru pe afisaj multiplexat cu animatie (2)
animated clock with thermometer on multiplexed led display (2)
   Programul scris şi testat de mine pe partea de simulare şi real de GeoMar este multiplexed_scroll_clock0.ino şi se fac doar mici modificări la 2 variabile pentru
- funcţionare simulată
- funcţionare normală (modul de ceas RTC şi termometru cu DS18B20)
respectiv
- afişaj cu catod comun
- afişaj cu anod comun
   Schema pentru anod comun este
iar pentru catod comun este
   Dupa cum se constată, nu este diferenţă vizibilă între ele, deoarece se schimbă din program modul de comandă. Dacă se folosesc afişaje mai mari, cu consumri mari, atunci se introduc tranzistoare si apar diferenţe.
   Eu am avut afisajul cu catod comun LFD080AAG-103, asa ca am pus tip = 0, Geomar are afişaj cu anod comun, aşa că el testeayă cu tip = 1. Eu neavând decât o placă Arduino Nano şi afişajul am folosit test =1, iar el test  = 0, deoarece are montajul complet.
La teste, am obtinut prezentarea astfel:
- ora când are valoare doar unitară (am scos zero deranjant din faţă)
- data
- temperatura negativă din 2 cifre (temperaturi sun -10 grade Celsius)
- temperatura negativă mai mare de -10 grade Celsius
- temperaturi pozitive mai mice de +10 grade Celsius
- temperaturi pozitive mai mari de +10 grade Celsius
   Conectarea afişajului cu catod comun sau anod comun se poate face şi direct sau cu rezistenţe de limitare de 33..47 ohmi între segmente şi pinii plăcii Arduino, astfel
iar senzorul de temperatura la A0
ca în articolul ESP8266 & Temperature Sensor DS18B20 and Onewire library8b20-and-onewire-library/
   Vrând să fac şi ceasul real, nu am dat de un senzor DS18B20, aşa că am făcut un montaj în care am folosit un senzor DHT22 (AM2302), pe care vi-l prezint în articolul următor.

duminică, 16 decembrie 2018

Cum facem o "masina de spalat cu butoi" (rezumat)

   Dupa ce am vazut interes pentru modificarea unei masini de spalat sa functioneze intr-o zona unde nu este apa sub presiune (rezervor la inaltime, hidrofor, retea de apa potabila, etc), revin cu un rezulat al articolului original.
    In mare, modificarea consta in conectarea unei pompe de evacuare pe pest de pompa de admise ( se poate folosi si o pompa submersibila externa), care este alimentata in acelasi timp cu electrovalva de admisie a apei. Pentru a nu "forta" contactele ce comanda electrovalva de admise, am pus un releu intermediar cu consum propriu redus, iar acesta e model OMROM MY2J de 230V care are un consum de cca 5mA  (in jur de 1,1W) fata de cca. 40W ai pompei de evacuare folosite.
   Schema de conectare este
sau cu alta prezentare (e aceeasi schema)
   Pentru masinile de spalat cu 2 electrovalve, conectarea se face ca in figura desenata de Lucian Marogel (lucione_cip) si postata pe forumul electronistilor:
    Circutul adaptat la masina de spalat modificata de mine:
  Am facut si 3 filmulete:

duminică, 9 decembrie 2018

Imitare flacara foc cu ATtiny25/45/85

   Pornind de la o discutie cu Tom de o schema de simulare a unui flacari, mi-am adus aminte de o schema de la danyk.cz
dar am zis sa facem tot cu Arduino sau cu un mic microcontroler ATtiny25/45/85, dupa cum prezentasem in articolul Programarea unui microcontroler ATtiny85 cu sketch Arduino.
    Pentru inceput, am cautat si am dat de articolul Realistic Flickering Flame Effect With Arduino and LED's, care foloseste 3 leduri (inseriate cu rezistente de limitare);
   Am testat rapid programul de acolo, doar ca ma facut mici modificari (al meu e flame_0.ino) si nu am folosit rezistentele de limitare, desi e recomandat:
   Initial, am avut doar 3 leduri rosii, dupa cum se vede si in filmuletele:
simulare foc
realistic flickering flame effect
apoi am pus unul galben in mijloc, dupa cum se ved ein filmuletele:
simulare foc (2)
realistic flickering flame effect (2)
   Deoarece ATtiny25/45/85 au doar doua iesiri cu control PWM, dupa cum se vede mai jos
as fi putut face o schema cu 2 leduri
dar am inseriat 2 leduri rosii pe un canal, avand tensiunea de deschidere de cca 2V, sketch-ul devenind attiny_x5_flame.ino
pentru asta am testat pe Arduino Nano circuitul
si efectul e super, dupa cum se vede si din filmuletele;
16.12.2018
   Pentru o functionare de lunga durata, recomand schema de mai jos, cu rezistente de limitare a curentului prin leduri:

Minilift cu 3 statii pentru jucarii (2)

   Dupa ce am postat pe o retea de socializare proiectul liftului (articol Minilift cu 3 statii pentru jucarii),
Cristi Vasilache mi-a dat ideea afisarii pozitiei liftului ca la cele reale cu afisaj cu 7 segmente (P - parter, 1 - etaj unu si 2 - etaj 2), asa ca am modificat intai schema, eliminand cele 3 leduri ce indicau pozitia, inspirandu-ma dintr-un articol mai vechi al meu Indicator treapta de viteza (GEAR SHIFT INDICATOR)
asa ca schema ar fi
dar discutand cu Tom, care are deja un cablaj facut,
 am zis sa punem afisaj separat, ca sunt pini suficienti:
   Sketch-ul pentru ultima schema devine toy_elevator_3.ino.
   Daca avem la dispozitie afisaj cu 7 segmente cu anod comun, schema devine
iar programelul toy_elevator_3b.ino, la care se poate schimba simplu o variabila tip = 0 pentru catod comun 
sau tip = 1 pentru anod comun:
PS: In sfarsit, Tom a postat si el articolul Casuta pentru papusi si ponei

sâmbătă, 8 decembrie 2018

Minilift cu 3 statii pentru jucarii

   Deoarece prietenul meu Tom construieste o casuta de papusi mai deosebita, a zis s-o echipeze cu un lift pentru papusi, asa ca am zis sa il faca cu Arduino pentru a fi mai usor de controlat.
   Liftul are 3 statii (parter, etaj 1 si etaj 2 sau subsol, parter si etaj, depinde cum se poate conveni), asa ca am desenat o schema, dupa ce am discutat cu Tom detalii:
Dupa cum se vede, are in componenta:
- 3 limitatoare de cursa (pot fi mecanice sau cu releu reed, cum a facut Tom)
- 3 butoane fara retinere pentru cutia de comanda
- 3 leduri ce indica care limitator a fost actionat
- 2 leduri ce indica sensul de miscare al liftului

Comanda motorului de curent continuu se face similar ca in articolul Circuit de schimbare polaritate alimentare motor de curent continuu, in mare este:
doar ca trebuie atentie la folosirea releelor de 5V care trebuie sa fie cu consum mic, gen 1A05, ce pot fi comandate direct de Arduino, sau se pot folosi relee de 12V comandate de tranzistori...
    Tom si-a facut un cablaj si un montaj pentru a nu se incurca in fire ca mine:
   Am scris mai multe programele, dar cel "final" din acest moment este toy_elevator.ino si am facut si niste filmulete, in care am explicat ce am facut:
lift cu 3 statii (1)
elevator with 3 stations (1)
lift cu 3 statii (2)
elevator with 3 stations (2)
lift cu 3 statii (3)
elevator with 3 stations (3)
   Poate acest mod de prezentare nu e prea clar, dar e baza si, cel putin, la testele mele a functionat corect, dar si din testele preliminare facute de el, pare totul ok:
lift cu 3 statii - teste practice Tom
lift cu 3 statii - teste practice Tom (2)

PS; in curand va pune sfarsit a pus si Tom articol la el pe blog si pentru alte detalii, ii puteti scrie pe email Tommyplus2007@gmail.com., pana faceti asta vedeti articolul Casuta pentru papusi si ponei
PS2: In loc de cele 3 leduri indicatoare de pozitie se poate pune un afisaj cu o cifra led din 7 segmente, cum am prezentat in articolul Indicator treapta de viteza (GEAR SHIFT INDICATOR)