LinkedIn YouTube Facebook
Szukaj

Newsletter

Proszę czekać.

Dziękujemy za zgłoszenie!

Wstecz
Artykuły

[PROJEKT] Wielokanałowy termometr i termostat z wyświetlaczem OLED [2]

06

Programowanie termostatu rozpoczynamy od wybrania kanału pomiarowego. Termometr wcześniej wykrył ile ma dołączonych czujników i nie można wybrać kanału wyższego niż maksymalny numer wykrytego kanału. Wszystkie parametry ustawia się przez obracanie, a zatwierdza się przyciśnięciem ośki impulsatora. Po ustawieniu kanału przechodzimy do ustawiania histerezy, a następnie do ustawiania temperatury progowej. Nastawy są zapisywane do pamięci EEPROM i dotwarzane po włączeniu zasilania. Procedura sprawdzania termostatu została pokazana na listingu 18.

List. 18. Funkcja termostatowa

unsigned char CheckTermostat(double temp)
{
  double pom;
  pom=temptermo-histermo;
  if(td)
  {
    if(temp>temptermo)
    { td=0;
     tg=1;//osiągnięto górny próg temperatury
     TERMO=0;//ustawić wyłączenie przekaźnika
    return(0);
    }
 
  }
  if(tg)
  {
    if(temp<pom)
    {td=1;//osiągnięto dolny próg temperatury
     tg=0;
     TERMO=1;//ustawić włączenie przekaźnika
     return(1);}
  }
 
  return(2);//powrot z bledem
}

Funkcja CheckTermostat jest wywoływana po każdym cyklu pomiaru temperatury. Jej argumentem jest wartość temperatury zmierzona w zaprogramowanym kanale pomiarowym. Termostat działa w zaprogramowanym kanale pomiarowym niezależnie od wybranego ekranu wyświetlania temperatury. Jeżeli wybierzemy ekran 1 ze wszystkimi mierzonymi temperaturami, to po zadziałaniu termostatu (przekaźnik załączony) w wierszu z temperaturą kanału, do którego przypisano funkcje termostatu pojawi się symbol gwiazdki – rysunek poniżej.

07

Jeżeli mamy podłączone 4 czujniki i termostat jest przypisany do kanału 4, a wyświetlamy pierwsze dwie temperatury ekranem 2, to termostat będzie działał, ale na ekranie nie będzie żadnej informacji o tym czy przekaźnik zadziałał czy nie. Jeżeli termostat będzie w kanale 1, lub 2 to symbol gwiazdki pojawi się przy wyświetlanych temperaturach.

Absolwent Wydziału Elektroniki Politechniki Wrocławskiej, współpracownik miesięcznika Elektronika Praktyczna, autor książek o mikrokontrolerach Microchip i wyświetlaczach graficznych, wydanych nakładem Wydawnictwa BTC. Zawodowo zajmuje się projektowaniem zaawansowanych systemów mikroprocesorowych.