[LOGO! 8] Przykład aplikacji: cyfrowy termometr z sygnalizacją przekroczenia progów
Produkowany przez firmę Siemens sterownik LOGO! 8 jest urządzeniem o dużej uniwersalności, a jednym z elementów wyposażenia powiększającym ją jest wbudowany przetwornik A/C. W artykule przedstawiamy prostą aplikację ilustrującą użycie jednego kanału przetwornika A/C i kilku bloków analogowych w praktycznej aplikacji – cyfrowego termometru z sygnalizacją przekroczenia zadanych progów temperatur.
Projekt prezentowany w artykule ma za zadanie mierzyć temperaturę otoczenia za pomocą sensora półprzewodnikowego, wyświetlać zmierzoną wartość w postaci cyfrowej i analogowej (bargraf) na wyświetlaczu LCD wbudowanym w LOGO! Mierzona temperatura ma być porównywana z zadanymi przez użytkownika progami i w przypadku przekroczenia kolejnych progów mają być zwierane styki przekaźników na kolejnych wyjściach sterownika. Ponadto, po przekroczeniu krytycznej wartości temperatury, włączy się czerwone podświetlanie, które zasygnalizuje krytyczną sytuację wymagająca interwencji obsługi. Projekt będzie implementowany w sterowniku LOGO! 8.FS4 z wykorzystaniem oprogramowania LOGO! Soft Comfort 8.1, który to zestaw został udostępniony redakcji przez sklep KAMAMI.pl.
Ze względu na łatwą dostępność, niewielki koszt i wygodny w skalowaniu współczynnik konwersji temperatura-napięcie (10mV/oC) w projekcie został użyty półprzewodnikowy sensor temperatury MCP9700 firmy Microchip. Ponieważ zakres pomiarowy toru ADC w LOGO! wynosi 0…10 VDC, sensor został „obudowany” wzmacniaczem, który skaluje sygnał wyjściowy sensora do możliwości LOGO!, dodatkowo znoszony jest offset napięcia wyjściowego MCP9700 (schemat toru dopasowującego pokazano na rysunku 1). Potencjometr P1 umożliwia skalibrowanie napięcia początku skali przetwarzania (która w przykładzie wynosi +5oC). Na wyjściu wzmacniacza U2A (rail-to-rail) uzyskujemy zakres napięć wyjściowych bliski 0…10 VDC dla zakresu temperatur +5…+105oC, z marginesami ok. 12…20 mV od linii zasilających. W prezentowanej konfiguracji prawidłowa kalibracja wzmacniacza kompensuje także napięcie offsetu U2A, które katalogowo nie przekracza 5 mV.
Tor analogowy pokazany na rysunku 1 został zaimplementowany w sprzętowym symulatorze otoczenia dla LOGO! (LOGO! Environment IO Simulator – KA-LOGO-IO-SIMULATOR), którego wygląd pokazano na fotografii 2.
Przejdziemy teraz do opisu przygotowania programu dla LOGO!, do czego użyjemy programu LOGO! Soft Comfort 8.1. Ponieważ sterownik LOGO! będziemy programować poprzez Ethernet, zaczynamy od skonfigurowania adresu IP w sterowniku (w przykładzie jest to 192.168.0.165), następnie w LOGO! Soft Comfort tworzymy nowy projekt w zakładce Network Project (rysunek 3). Klikamy opcję Add New Device, w wyświetlonym oknie wybieramy sterownik LOGO! 8.FS4 i konfigurujemy jego adres w sieci. W oknie Network View pojawia się symbol graficzny sterownika dołączonego do PC (rysunek 4), możemy teraz zweryfikować poprawność dołączenia go do PC. W tym celu klikamy Go Online, co powinno spowodować wyświetlenie po kilku sekundach zielonego znaczka check na widoku sterownika. Wyświetlenie go oznacza, ze połączenie sieciowe zostało poprawnie skonfigurowane.
Możemy teraz przejść do rysowania schematu programu, który zaimplementujemy w LOGO! Sensor temperatury z układem dopasowującym będzie dołączony do kanału wejściowego AI2, zaczynamy więc od wybrania z listy dostępnych instrukcji symbolu Analog input (z sekcji Constans>Analog – rysunek 5) i kładziemy go na planszy schematu. Dwukrotnie klikając w symbol wejścia wyświetlimy okno konfiguracji (rysunek 6), w którym przypisujemy mu oznaczenie AI2.
Kolejny element niezbędny w naszym projekcie to wzmacniacz analogowy Analog Amplifier (sekcja Special functions>Analog – rysunek 7), który w programie spełnia rolę konfigurowalnego konwertera ADC. Zalecaną w przykładzie konfigurację symbolu Analog Amplifier pokazano na rysunku 8.
Przygotujemy teraz część programu odpowiadającą za wyświetlanie zmierzonej temperatury na wyświetlaczu LCD sterownika. W tym celu skorzystamy z symbolu Message texts (w sekcji Special functions>Miscellaneous – rysunek 9).