ArduShop.ro

ArduShop.ro
cod tehnic.go.ro_02 reducere 5%, pentru vizitatorii paginilor mele !

vineri, 15 martie 2019

Termostat simplu (2)

   Desi pe blog am tot postat termostate, cu afisaje cu led, alfanumerice sau grafice, de data asta am conceput unul simplu, la cererea prietenului meu, George Dacin, care voia ceva simplu si bun..
   Unul similar se gaseste in articolul Termostat simplu, dar cel din acest articol a fost conceput dupa cerintele lui George...
   Schema, care permite alimentarea de la o sursa de 12Vcc, pentru a folosi un releu de 12V, are  inclus un stabilizator liniar cu LM7805 (cu radiator) pentru cei 5V necesari alimentarii placii de dezvoltare Arduino, a afisajului alfanumeric LCD1602 cu interfata i2c si a senzorului de temperatura de tip DS18B20:
  Se poate folosi si un modul de stabilizator in comutatie (step down) in locul stabilizatorului liniar LM7805, se poate folosi un releu de 5V si atunci se renunta la stabilizator si se aliemnteaza dintr-un incarcator de telefon "smart"... 
  Se mai poate renunta la tranzistor si releul si sa se utilizeze un modul cu releu, etc...
  Exista 2 butoane, unul de crestere cu pas de 0,1 grade Celsius si unul de scadere cu 0,1 grade Celsius a temperaturii dorite (valoarea reglata este memorata in EEPROM-ul microcontrolerului care echipeaza placa de dezvoltare Arduino Uno (sau Nano, Mini Po, etc). Programul scris de mine este simplethermostat.ino, si are reglat histerezisul la 0,5 grade Celsius, adica la scaderea temperaturii sub valoarea reglata, se alimenteaza releul, inchizand contactele COM-NO si astfel se porneste o centrala, un radiator, etc. Pe ecran apare in parea dreapta jos o steluta indicand conectarea sursei de caldura. Daca temperatura creste cu 0,5 grade Celsius peste valoarea dorita, releului i se taie alimentarea si se deschide contactul COM-NO.
   O alta poza cu termostatul realizat practic de George:

marți, 12 martie 2019

Releu de (de)cuplare cu intarziere

   Un releu de timp, ce (de)|cupleaza cu intarziere un consumator, de exemplu, o pompa de benzina pentru o masina echipata cu instalatie de gaz, model mai vechi, se poate face usor folosind un integrat "dedicat" de tipul 555...
   In articolul How to Build a Delay Before Turn On Circuit with a 555 Timer gasim schema
care, pentru un releu de 12V, devine
   In cazul de fata, eu doar am gasit schema, realizarea nu-mi apartine... dar consider ca merita s-o (re)aduc in atentie...
   Daca vreti sa realizati un releu cu functionare similara, doar cu tranzistoare, folositi schema prezentata in articolul DELAY ON TIMER USING BC547 TRANSISTOR & RELAY
   Aceasta schema am simulat-o si am postat niste filmulete:
delay on using transistors
cuplare cu intarziere consumator
delay on using transistors (2)

duminică, 24 februarie 2019

Ceas matriceal animat si termometru cu ESP8266

    Seby a realizat un altfel de ceas fata de cel prezentat anterior si realizat de Bogdan.
   In filmuletul lui Seby numit LED MATRIX CLOCK ARDUINO AND 3D PRINT CASE se vede cum se prezinta informatia pe ecran, incluzand si temperatura masurata cu un senzor NTC de 10k.
   Schema este simpla
   Seby a pus pe canalul sau de thingiverse.com/marik2500 proiectul realizarii cutiei: 8 X LED MATRIX CLOCK CASE BOX cu ajutorul unei imprimate 3D.
Sketch-ul modifcat de Seby este Matrix_Clock_SCROLL_DOWN_ESP8266_UTC_Temp_ro_text.ino !

Seby mi-a recomandat sa va reamintesc ca intrarea analogica (ca si cele digitale, zic eu) suporta doar 3,3V maxim, iar tensiunea de referinta este de 1V, dupa cum se prezinta si in articolul Esp8266 NTC (Temperature) Thermistor Analog Reading with Arduino IDE

Masurare timpi apasare butoane folosind functia millis()

   Pentru a putea reduce numarul  de butoane sau pentru evitatea intrarii in modul de modificare de parametii se foloseste facilitatea de apasare mai lunga a unui buton. De asemenea, se pot comanda 2-3 iesiri diferite functie de timpul de apasare, ce poate fi indicat optic sau pe un ecran. Aplicatiile sunt multe, una din ele este si cea prezentata in articolul anterior, Modul temporizator reglabil pentru stergatoare de Logan/Renault.
   In mare, se foloseste functia millis(), care indica la momentul accesarii timpul, in milisecunde, de cand a pornit Arduino, de fapt microcontrolerul ATMega.
   Intr-o variabila se stocheaza valoarea cand se apasa butonul si se se verifica daca s-a depasit un timp impus. Eu am pus sa se aprinda un led, iar in ecranul de monitorizare seriala vad cat e tampul de apasare si cu e el fata de cel impus.
  Pentru un buton programul este pushtime1button.ino, iar pentru 2 butoane, cu timpi diferiti este pushtime2buttons.ino.
   Schemele de conectare sunt:
  Am facut 2 filmulete, pentru cazul cu 2 butoane:
masurare timpi apasare butoane folosind functia millis()
measure times using millis()

sâmbătă, 23 februarie 2019

Modul temporizator reglabil pentru stergatoare de Logan/Renault

    Materialul mi-a fost trimis de dl Liviu HINOVEANU si nu am o prea mare contributie la conceperea lui, asa ca daca va intereseaza detalii contactati-l de dumnealui pe email (liviuhinoveanu@gmail.com). Pentru cei pasionati de domeniul auto, tot de la dumnealui am primit materialul cu Modul "Daytime Running Light" (DRL) cu ATtiny85.


   Funcționare modul stergatoare cu temporizare reglabilă
   Timpul de temporizare a stergătoarelor la multe autoturisme este fix .
   Pentru modificarea timpului de temporizare se trece maneta din pozitiain pozitia zero în poziția de ștergere temporizată (pozitia 1 la Logan, Sandero, Renault ), stergătoarele vor stege initial odată apoi  la intervale regulate de 5 secunde cum o facea si UCH-ul si, pentru modificarea timpului se trece maneta din poziția 1 în poziția 0 si se lasa pana cand geamul nu mai ofera suficienta vizibilitate si consideram ca trebuie ca stergatoarele sa baleieze, repunem maneta in pozitia stergere temporizata, moment in care se memoreaza timpul de asteptare in pozitia zero ca timp de temporizare, nici nu ne intereseaza efectiv acest timp si are loc stergerea imediata, urmatoarele stergeri au loc la intervalul memorat.  
   Daca timpul memorat este mai mic de 2 sec sau mai mare de 15 secunde ramane memorat timpul anterior.
   Ce face intrarea de sprituitoare? La apasarea manetei in pozitia spalare geam, UCH-ul stie sa dea o baleiere daca s-a tinut apasat sub 0,3 secunde sau 3 baleieri daca s-a tinut mai mult, uneori lichidul de parbriz mai ajunge pe plafon si dupa 4-5 secunde incepe sa se scurga pe geam, modulul prin intrarea sprituitoare asteapta 5 secunde si mai comanda o încă baleiere .


Montare 
- Firul de la manetă care dădea comanda de ștergere temporizată către UCH (A1 la Logan) se taie.
Capătul dinspre maneta(ieșirea manetei) se leagă la intratea temporizată a modulului.
Ieșirea modulului se leagă la intrarea temporizată a UCH-ului.
- Întrarea auxiliară a modulului se leagă la ieșirea sprițuitoare a manetei (A4 la Logan)
Plusul modulului se ia de la plusul contact al manetei (pin A7)
Masa modulului se leagă la caroseria mașinii
Funcționare
    R1/R2 ȘI R3/R4 asigură translatarea nivelului analogic de 12 volti in nivel logic(divizor1/3).
Microcontrolerul prin optocuplor da cei 12V către UCH pe o perioadă de 200 milisecunde ca și când am pune scurt timp maneta în poziția1, UCH ul comanda stergerea, iar stergătoarele prin contactul lor cu camă continuă până revin la zero.
   Dacă folosim sprițuitoarele asteaptă 5 secunde apoi prin aceiași ieșire mai comandă o baleiere.


Realizare
   Pentru a nu mai da gauri în cablaj pentru microcontroler am realizat cablajul acestuia în oglindă iar integratul l-am lipit direct pe spate dupa ce i-am indoit pinii la 90 de grade .

 Liviu HINOVEANU

    Modul de temporizare reglabila a baleierii stergatoarelor asigura este realizat cu un microcontroler micut, un ATtiny85 programat cu limbaj Arduino, dupa cum am prezentat in mai multe articole, de exemplu articolul Programator pentru ATtiny25/45/85 cu Arduino Nano. Programul, scris de dl. Liviu Hinoveanu, care se foloseste pentru acest modul este wiper_timer_0.ino.
    Am primit si posta un filmulet numit Modul temporizator reglabil pentru stergatoare de Logan / Renault, care descrie si functionarea si cum se monteaza montajul:

sâmbătă, 16 februarie 2019

Ceas matriceal animat cu ESP8266 si RTC (DS3231)

     Bogdan Argatu mi-a aratat inca un articol interesant,  de data asta cu un ceas matriceal animat ce foloseste un ESP8266 ce ia ora de pe un server si o compara cu cea a ceasului RTC (cu DS3231).
     Articolul acela este inspirat de materialul de la github.com/schreibfaul1/ESP8266-LED-Matrix-Clock unde se gaseste si schema
   Programul,  cu foarte mici modificari fata de cel original, este esp8266_ntp_rtc.ino.
   Bogdan mi-a trimis poze din timpul realizarii si asamblarii:
    Bogdan a realizat un film numit Ceas animat cu reglaj automat si RTC
PS: Programul  MatrixClock_v3b.ino este adaptat de Bogdan are si un led care indica conectarea la retea si primirea de date.

Sistem de comanda radio pentru directie si turatie motor de curent continuu

    In articolele precedente (Sistem simplu de comanda la distanta rotire 2 motoare in ambele sensuri si Scurta prezentare si testare a unui modul de comanda motoare cu L298) m-am "jucat" fara a folosi o placa de dezvoltare Arduino, dar modul de comanda e limitat la stanga/drepata la viteza maxima. Pentru a controla viteza trebuie sa folosim modul PWM (factor de umplere variabil) si, cel mai usor, cel putin pentru mine, este sa folosesc o placa Arduino.
    Schema initiala de comanda era
Eu am testat doar un motoras de curent continuu, asa ca tot pentru asta voi face testele...
   In prima faza am conectat la o placa Arduino Nano (asta era la indemana, dar se pot folosi majoritatea placilor de dezvoltare) la receptor, conectand cele 4 iesiri ale receptorului la placa Arduino (D2, D3, D4, D5) si testand modul de functionare, iesirile A sa aprinda un led la intensitatea reglata, respectiv B pentru a aprinde alt led la intensitatea reglata, iesirea C comanda scaderea intensitatii, iar D cresterea acesteaia, dupa cum se vede in filmuletele;
Sistem de comanda radio pentru directie si turatie motor de curent continuu
DC motor remote control for direction and speeed\
   Am conectat si alimentatorul stabilizat reglabil la 5V, driver-ul cu L298 si motorasul cu reductor si am mai facut 2 filmulete:
Sistem de comanda radio pentru directie si turatie motor de curent continuu (2)
DC motor remote control for direction and speeed (2)
    Programul folosit se numeste slider_0.ino si poate fi testat fara probleme... din el reise si conexiunile dintre placa Arduino si receptor; curand voi posta si schema de conexiuni...