Arduino Termostat

A trecut Anul Nou și uite că e timpul să ieșim din întuneric, deja e februarie. Deci pentru desert v-am pregătit un articol, despre îmblânzirea destoinică a unui termocuplu de tip K (Alumel – Chromel) folosind platforma ARDUINO, un controller ATmega8, un circuit integrat MAX6675, un pic de fantezie, vreo 20 de ore de Counter Strike 1.6, încă tot atâtea cuvinte vulgare și ciocanul de lipit.
Astfel că mi-am creat de la început un plan de acțiuni și mi-am pus scopuri ce le voi realiza:
1. Afișarea temperaturii setate(0-500 C)
2. Afișarea temperaturii de la termocuplu()
3. Utilizarea unui triac conectat la microcontroler prin optocuplu
4. Realizarea acestui dispozitiv într-o carcasă relativ mică
5. Curentul maximal prin încălzitor = 10 A

Pentru că mărimea sketch-ului binar este de: 5148 bytes (din 7168 byte )  nu am avut o necesitate de 200 de supercomputere și am hotărât să folosesc ATmega8. Cum e se încarcă bootloader-ul am scris aici : http://coderi.net/381/arduino-burn-bootloader/.

Schema principială a blocului de măsură și comandăsch

Înregistrarea temperaturii de pe termocuplu.
Precum am menționat anterior, am utilizat un circuit specializat MAX6675, care comunică prin șina SPI cu procesorul, valoarea temperaturii poate fi în grade Celsius sau Farenheit și încă multe interesante pe care le puteți citi în descrierea tehnică a circuitului.

Conectarea LCD de tip WH0802
Din motiv că MAX6675 utilizează unii pini ai controllerului pe care în mod standart se utilizau și pentru conectarea LCD la ARDUINO UNO am hotărât să schimb așa cum vreau, pentru că LiquidCristal este o clasă și numărul pinului poate fi setat în felul următor: LiquidCrystal(rs, enable, d4, d5, d6, d7) , unde se în paranteze se va indica numărul pinilor utilizați în ordinea admisă.

Codul pentru acest proiect:

 

Vă propun un asemnea cod prost scris pentru că am dorința ca cel ce va repeta construcția să poată să-l optimizeze și să îmbunătățească într-o măsură acest dispozitiv.

În ce privește partea fizică a dispozitivului am hotărât să folosesc un triac BT139 (Imax = 16 A) și un optocuplu MOC3083  (îl aveam în rezervele de conserve pentru iarnă). Schema de conexiune poate fi găsită căutând pe google, de asemenea poate fi schimbat triacul și MOC-ul. Curentul prin optocuplu trebuie să fie 10 % din curentul prin sarcină.
Setarea temperaturii eu am realizat prin utilizarea unei rezistențe variabile cu 3 turații.
În circuit am utilizat un stabilizator pe LM 317, acesta a fost utilizat pentru a alimenta MAX6675 cu 3,3 V în scop de experiment, deci el trebuie omis, eu am făcut scurtcircuit între input și output al stabilizatorului.
Toate fișierele acestui proiect le voi trimite la prima solicitare a celui ce vrea să repete circuitul, scriindu-mi un mesaj prealabil la adresa : constantinlindemann@yahoo.com

Video cu lucrul acestui dispozitiv: http://www.youtube.com/watch?v=AF6t6rseJb0

Vă urez succese!

Roboții vor conduce lumea, oamenii vor conduce roboții!

 

 

Leave a Reply

Your email address will not be published. Required fields are marked *