Vzdialené monitorovanie teploty v statickej vypaľovacej peci

24. Marec, 2014, Autor článku: Demeter Dominik, Informačné technológie
Ročník 7, číslo 3 This page as PDF Pridať príspevok

p16887_iconTento príspevok popisuje zariadenie, pomocou ktorého je možné vzdialene sledovať teplotu výpaľu v statickej vypaľovacej peci. Monitorovacie zariadenie v spolupráci s web serverom tvoria systém, pomocou ktorého je možné monitorovať aktuálny stav statických vypaľovacích pecí, predovšetkým teplotu vypaľovania. Príspevok popisuje softvérové riešenia, vrátane popisu možností, akým spôsobom je možné vzdialene získať údaje z monitorovacieho zariadenia založenom na mikroprocesore. V príspevku je popísané aj hardvérové riešenie zariadenia.

1. Úvod

Veľká časť technologických a laboratórnych zariadení disponuje sériovým rozhraním, pomocou ktorého je možné tieto zariadenia ovládať. Stále sa však používajú aj technologické zariadenia, ktoré nedisponujú komunikačným rozhraním slúžiacim na ich ovládanie pomocou počítača. Istým medzistupňom medzi týmito zariadeniami sú zariadenia, ktoré síce nie je možné ovládať externým nástrojom, avšak poskytujú aspoň komunikačné rozhranie pre monitorovanie ich činnosti. Statické vypaľovacie pece PEO 601 a PEO 602 používané na Katedre technológií v elektronike sú vybavené analógovým výstupom, pomocou ktorého oznamujú aktuálnu vypaľovaciu teplotu.

2. Popis riešenia – hardvér

Analógový výstup je reprezentovaný 5-pinovým DIN konektorom, pomocou ktorého sú statické vypaľovacie pece schopné reprezentovať aktuálnu teplotu vo vnútri pece. Napätím v rozsahu 0,010 V až 1 V reprezentujú teplotu v rozsahu 10 °C až 1000 °C, pričom zmena napätia o 1 mV korešponduje so zmenou teploty o 1 °C. Prvý pin reprezentuje zem, druhý pin reprezentuje pozitívne napätie. Nameranie a zaznamenanie analógového signálu (napätia) pomocou mikroprocesora (príp. aj pomocou jednodoskového počítača) je možné realizovať za pomoci vhodne zvoleného A/D prevodníka (analógovo-digitálny prevodník), ktorý dokáže previesť namerané napätie na číselnú hodnotu závislú na rozlíšení prevodníka.

Pre účely monitorovacieho zariadenia sme si zvolili mikroprocesorovú dosku Arduino [1], predovšetkým vďaka integrovanému A/D prevodníku, ktorý je priamou súčasťou použitého mikroprocesora. Uvedený A/D prevodník je 10 bitový, čo znamená, že dokáže rozlíšiť 210 rôznych hodnôt, pričom referenčné napätie je možné zvoliť v rozsahu 0 V až 5 V. V ideálnom prípade, pre snímanie napätia je vhodné použiť referenčné napätie 1 V. V takom prípade, každý 1 mV nameraného napätia by predstavoval priamo 1 jednotku na stupnici prevodníka. Nastaviť presne 1 V referenčné napätie môže byť pomerne obtiažne a najmä vyžaduje skonštruovanie prídavného elektronického obvodu. Navyše, nie je možné garantovať presnú hodnotu napätia a preto ani zabezpečiť presné meranie. Použitý mikroprocesor Atmel Atmega 328p [2] má zabudované integrované referenčné napätie 1,1 V, ktoré je dostatočne blízko k ideálnemu referenčnému napätiu, na druhej strane je dostatočne presné a spoľahlivé.

Pri použití tohto referenčného napätia, 0 V namerané napätie bude prekonvertované na hodnotu 0 na stupnici digitálneho prevodníka a hodnota 1,1 V bude prekonvertovaná na hodnotu 1023 na stupnici prevodníka. Toto referenčné napätie zavádza do merania určitú nepresnosť, keďže pomocou 1024 hodnôt na stupnici A/D prevodníka potrebujeme vyjadriť teplotu v rozsahu od 0 °C do 1100 °C (0 V – 1,1 V), ktorá sa však prejaví v celom rozsahu a keďže o nej vieme, nepredstavuje taký problém, aký by spôsobovali ťažko odhaliteľné nepresnosti spôsobené nestabilným referenčným napätím. Jeden bit v rozlíšení A/D prevodníka reprezentuje napätie 0,931 mV. Hodnotu vrátenú A/D prevodníkom je preto potrebné vydeliť touto hodnotu, aby sme získali čo najpresnejšiu hodnotu pre nameranú teplotu.

p16887_01_obr01
Obr. 1 Prepojenie monitorovacieho zariadenia s DIN konektorom statickej vypaľovacej pece.

Mikroprocesorová doska Arduino je doplnená o dosku zabezpečujúcu sieťové pripojenie. Prídavná doska je založená na integrovanom obvode Wizznet W5100 [3] a je štandardným príslušenstvom pre dosky Arduino. Vďaka koncepcii Arduino, prídavná doska je stohovateľná s doskou Ardiuno, pričom reprodukuje všetky vstupno-výstupné kontakty dosky Arduino. Pre ľahšiu prístupnosť, prepojenie s DIN konektorom statickej vypaľovacej pece je realizované práve pomocou kontaktov vyvedených na prídavnej doske (Obr. 1).

3. Popis riešenia – softvér

Získať údaje z mikroprocesorovej dosky Arduino je možné dvoma spôsobmi. V prvom prípade figuruje doska Arduino ako web server (Obr. 2), ktorý generuje a poskytuje internetovú stránku, na ktorej sú zobrazené namerané údaje. Túto stránku vie zobraziť každý používateľ, ktorý zadá správnu adresu do webového prehliadača. Môže však nastať kritická situácia, kedy by naraz poslalo požiadavku o zobrazenie aktuálnych údajov niekoľko klientov. Taká zvýšená záťaž môže úplne zahltiť mikroprocesorovú dosku a zabrániť tak jej korektnému fungovaniu.

Aby sme predišli zahlteniu a znefunkčneniu monitorovacieho zariadenia, je potrebné na strane mikroprocesorovej dosky kontrolovať, z akej IP adresy prichádza požiadavka o poskytnutie nameraných údajov a reagovať iba na požiadavky od vybranej IP adresy – tej, ktorú má pridelený vybraný klientský počítač (v našom prípade klasický web server). Samotné zaznamenávanie údajov je prenesené na klasický web server, ktorý je non-stop v prevádzke. V tejto komunikácii vystupuje web server ako klient, ktorý vo vopred nastavených intervaloch načíta obsah doskou vygenerovanej web stránky, vyextrahuje namerané údaje a uloží ich do .CSV súboru, alebo do databázy. Následne dokáže pomocou svojej web stránky zobraziť aktuálne namerané hodnoty, prípadne aj vývoj hodnôt teploty.

p16887_03_obr03
Obr. 2 Priebeh zaznamenávania údajov v prípade, že doska Arduino hrá rolu servera.

Druhým použiteľným riešením komunikácie je výmena rolí mikroprocesorovej dosky a klasického servera. V tomto prípade, mikroprocesorová doska bude vystupovať ako klient (Obr. 3) a vo vopred nastavených časových intervaloch pošle požiadavku GET na načítanie internetovej stránky z klasického web servera. Súčasťou požiadavky GET sú parametre, v ktorých sú ukryté namerané hodnoty. Na strane servera sa z poslaného reťazca vyberú konkrétne hodnoty a uložia sa do databázy alebo .CSV súboru. Následne sú uložené údaje dostupné rovnakým spôsobom, ako pri prvom type komunikácie.

Pri realizácii monitorovacieho zariadenia sme sa rozhodli pre druhú možnosť. Samotné namerané dáta sú dostupné na internetovej stránke na web serveri. Mikroprocesorová doska v nastavenom intervale posiela namerané údaje na stránku pomocou požiadavky GET (Obr. 4). Okrem nameranej teploty, GET požiadavka obsahuje aj dve jedinečné čísla. Prvým číslom je identifikačné číslo meracieho zariadenia. Správca zariadení musí zabezpečiť, aby každé zariadenie malo jedinečné číslo zariadenia. Druhým číslom je číslo merania. Táto hodnota je uložená v pamäti EEPROM a navýši sa pri každom zapnutí. Takto sa zabezpečí, že pre každé meranie bude táto hodnota iná. Kombinácia týchto dvoch čísiel dáva jednoznačný identifikátor, pomocou ktorého je možné rozlíšiť, ku ktorému meraniu patria odosielané údaje. Posledným posielaným parametrom je reťazec, ktorý slúži na zabezpečenie komunikácie. Iba GET požiadavky obsahujúce správny reťazec budú spracované. Dodatočným zabezpečením na strane web servera je akceptovanie GET požiadavky iba od meracieho zariadenia s konkrétnou IP adresou (tzv. filter bieleho zoznamu – whitelist filter).

p16887_04_obr04
Obr. 4 Priebeh zaznamenávania údajov v prípade, že doska Arduino hrá rolu klienta.

Na strane web servera sa extrahujú informácie z GET požiadavky. Do súboru s názvom actual.txt sa uloží názov aktuálne používaného logovacieho súboru vo forme <id_zariadenia>_<id_merania>.csv, ako aj stav počítadla času (počet sekúnd od spustenia monitorovacieho zariadenia) a aktuálne nameraná hodnota. Zároveň sa do aktuálneho súboru vo formáte .CSV uloží nameraná hodnota, stav počítadla času, časová značka v strojovej forme (tzv. unix Timestamp), ako aj vo forme ľahko čitateľnej pre ľudí (vo forme dátum a čas).

p16887_02_obr02
Obr. 3 Ukážka GET príkazu, pomocou ktorého monitorovacia jednotka odovzdáva web serveru namerané údaje.

Tento na prvý pohľad komplikovaný spôsob zaznamenávania údajov umožňuje online generovať graf z nameraných údajov, pričom pre prípad potreby ostávajú zachované všetky predchádzajúce merania a sú dostupné na stiahnutie pomocou web prehliadača priamo na web serveri. V používateľskom rozhraní (Obr. 5) sa zobrazuje okrem generovaného grafu aj aktuálne nameraná hodnota, čas uplynutý od spustenia monitorovania, ako aj statický obrázok z pripojenej IP kamery. Vďaka zvolenému spôsobu zaznamenávania údajov je možné ich jednoducho spracovať dodatočne napr. pomocou tabuľkového editora Microsoft Excel.

p16887_05_obr05
Obr. 5 Ukážka informačného panelu statickej vypaľovacej pece.

4. Záver

Zaznamenanie teploty v statickej vypaľovacej peci počas výpalu keramickej vzorky je veľmi užitočné najmä v prípade, keď nastane nejaký problém počas vypaľovacieho procesu a výpal sa nevydarí. Vtedy je vhodné mať zaznamenaný celý priebeh vypaľovacieho procesu a mať možnosť porovnať ho s výrobcom predpísaným profilom. Uvedené riešenie umožňuje jednak online monitorovať činnosť statických vypaľovacích pecí, ako aj analyzovať priebeh procesu výpaľu. V budúcnosti je možné systém rozšíriť o riadenie elektrického napájania pece, vďaka čomu by ju bolo možné na diaľku vypnúť, predovšetkým v prípade zachytenia problému pri vzdialenom sledovaní.

Uvedené riešenie zaberá z dosky Arduino jeden analógový port (zo 6) a 4 digitálne porty (z 13) zaberá SPI komunikácia so sieťovým ovládačom. Zvyšné kontakty je možné využiť pre ďalšie rozšírenie systému, napr. pre prídavný termočlánok umiestnený v peci pre externé overenie nameranej teploty, ako aj pre monitorovanie environmentálnych podmienok (teplota okolia, vlhkosť, barometrický tlak) v laboratóriu počas vypaľovania. V budúcnosti by bolo vhodné systém rozšíriť aj o bezpečnostné prvky, ako napr. dymový senzor alebo senzor požiaru.

Zoznam použitej literatúry

  1. Arduino – open-source electronics prototyping platform, elektronická verzia dostupná na adrese:
    http://arduino.cc/
  2. 8-bit AVR MCU ATmega328P, elektronická verzia dostupná na adrese:
    http://www.atmel.com/devices/atmega328p.aspx
  3. W5100 (WIZnet Hardwired TCP/IP Embedded Ethernet Controller), elektronická verzia dostupná na adrese:
    http://www.wiznet.co.kr/Sub_Modules/en/product/Product_Detail.asp?cate1=5&cate2=7&cate3=26&pid=1011

Spoluautorom článku je Prof. Ing. Juraj Banský, CSc, Katedra technológií v elektronike, Fakulta elektrotechniky a informatiky, Technická univerzita v Košiciach

Napísať príspevok