EXPERIMENT

CONTROL TEMPERATURA CU ATMEGA328P SI TRIAC COMANDAT IN FAZA

Experimentul consta in controlul temperaturii unui obiect ,astfel incat aceasta sa urmareasca un grafic prestabilit.Graficul este asemanator cu cel din figura de mai jos , care este parte din documentul de AICI

grafic

Am incercat sa folosesc cele mai ieftine componente si numai programe gratuite.Acestea ar fi:

- un modul Arduino NANO V3 , din care am sters codul original si am scris codul necesar pentru controlul temperaturii

- programul Tera Term , pentru comunicatie cu PC-ul .Cu Tera Term se trimit comenzile START , STOP si se receptioneaza valorile de temperatura masurate. Am folosit si optiunea de inregistrare (Log) a programului pentru a salva valorile masurate intr-un fisier CSV (coloane separate prin virgula). Programul este gratuit AICI

- programul Live Graph , pentru vizualizare in timp real a graficului temperaturii masurate , a referintei pe care trebuie sa o urmeze temperatura si a puterii livrate de sursa de incalzire (unghiul de deschidere a triacului ,intre 0 si 100%). Cu Live Graph se deschide fisierul (Log) pe care-l face Tera Term in timp real ,care arata asa :

coloane

(coloana 1= temperatura masurata ;coloana 2 = referinta programata ;coloana 3 = puterea sursei de incalzire ;coloana 4 = timpul masurat in secunde ,incepand cu momentul comenzii START) si rezulta un grafic in timp real ca in imaginea de mai jos:

grafic_real

Programul Live Graph este gratuit , AICI

In acest experiment am folosit ca senzor de temperatura integratul LM35 , capsula TO92 si l-am montat pe sticla unui bec de 60 wati , deci programul are ca sarcina mentinerea temperaturii sticlei becului la anumite valori programate.Programul este in felul urmator:

-la apasarea tastei "s" de pe tastatura PC-ului ,modulul primeste comanda START

-in acest moment referinta incepe sa creasca cu 0,5grade/secunda ,pana ajunge la 60 de grade

-referinta ramane la 60 de grade pana cand temperatura masurata ajunge la 60 de grade

-dupa ce temperatura masurata ajunge la 60 de grade , incepe o temporizare de 60 de secunde ,dupa care referinta urca la 80 de grade

-dupa ce temperatura masurata ajunge la 80 de grade , referinta mai ramane la 80 de grade inca 60 de secunde , dupa care scade la 25 de grade.

-puterea sursei de incalzire se modifica automat ,astfel incat "temperarura masurata" sa devina egala cu "temperatura referinta"

Schema modulului (Detector de trecere prin zero +Arduino + LM35 + Triac)

schema

Montajul construit pe placa de test si senzorul montat pe bec

montaj bec

Modulul Arduino (pret de 2 dolari in China sau 20 lei in RO)

nano

 

 

-

Mai jos este o captura video facuta cu Icecream Screen Recorder ,pe ecranul laptop-ului in perioada unui ciclu 25 = >60 =>80 =25 grade celsius (se observa ca este al doilea ciclu).Filmul este in format .webm si nu ruleaza in Internet Explorer , dar merge sigur cu Chrome si cu Mozilla

Daca nu merge filmuletul de mai sus , l-am pus si AICI , pe You Tube

Se observa cum puterea sursei se reduce anticipat cand se apropie de cele doua valori stabile ,60 si 80°C pentru evitarea oscilatiilor.

Mai jos este un ciclu in care regulatorul nu a fost reglat corect :

incorect pid

Si in final un filmulet (de calitate slaba )facut cu telefonul , in care se vede ecranul laptop-ului si lumina becului pe care este montat senzorul.Este primul ciclu , START=>60=>80=>25 °C =>STOP. Al doilea este prezentat in filmul de mai sus.

Mai adaug si hex-ul pe care l-am scris in atmega328p , dar nu foloseste la nimic (doar la un experiment asemanator).Orice schimbare pe partea de hard necesita o noua acordare a regulatorului , altfel apar oscilatii. Hex-ul este AICI

 

Numar de vizionari :