UNIWERSALNY SYMULATOR PLATYNOWYCH CZUJNIKÓW
Transkrypt
UNIWERSALNY SYMULATOR PLATYNOWYCH CZUJNIKÓW
Prace Naukowe Instytutu Maszyn, Napędów i Pomiarów Elektrycznych Nr 60 Politechniki Wrocławskiej Nr 60 Studia i Materiały Nr 27 2007 Termometr termorezystancyjny, symulator czujnika Pt-100, Pt-500, Pt-1000 Jerzy BARTOSZEWSKI*, Daniel DUSZA* UNIWERSALNY SYMULATOR PLATYNOWYCH CZUJNIKÓW TEMPERATURY Symulatory czujników termorezystancyjnych są układami sztucznie odtwarzającymi rezystancję rzeczywistych czujników, których wyjściowy sygnał rezystancyjny jest funkcją temperatury. W niniejszej pracy autorzy prezentują sterowany cyfrowo układ symulujący rezystancję dla rodziny termorezystorów platynowych Pt 100, 500 i 1000. 1. WSTĘP Czujniki wykonane z metali o właściwościach termometrycznych charakteryzują się zmianą rezystancji Rt rezystora metalowego pod wpływem zmiany temperatury t. Najpopularniejszymi wśród nich są termorezystory platynowe o ściśle znormalizowanej charakterystyce przetwarzania Rt=f(t) i jej dopuszczalnej niedokładności [4]. Realizację cyfrowo sterowanego symulatora czujnika Pt-100 autorzy opisali w pracach [1,2]. Niniejsze opracowanie stanowi rozwinięcie tematu - rozszerza rezystancyjny zakres pracy symulatora umożliwiając tym samym jego zastosowanie dla odtwarzania rezystancji również czujników Pt-500 i 1000, wprowadza dodatkową opcję zewnętrznego sterowania nastaw temperatury poprzez port RS 232. Uniwersalny symulator rodziny czujników Pt zrealizowany jest w klasie tolerancji A [4], w zakresie temperaturowym pracy 0...500 °C i rozdzielczości nastaw temperatury 1 °C. __________ * Politechnika Wrocławska, Instytut Maszyn, Napędów I Pomiarów Elektrycznych, ul. Wybrzeże Wyspiańskiego 27, 50-372 Wrocław, [email protected], [email protected] 2. SYMULATOR CZUJNIKÓW PLATYNOWYCH Ogólny schemat blokowy sterowanego symulatora termorezystancyjnych czujników platynowych pokazany jest na rys. 1. Układ składa się z dwóch zasadniczych części: wyjściowej analogowe i sterującej cyfrowej. Część cyfrowa Interfejs RS232 Część analogowa Moduł wyświetlacza Układ sterowania Zespół kontaktronów Zespół rezystorów Rwy Zespół przycisków sterujących Zasilanie układu Rys. 1 Schemat blokowy sterowanego symulatora czujników platynowych Fig.1. Block scheme of the platinum sensor controlled simulator Część analogowa, zrealizowana w postaci 16. bitowego przetwornika rezystancji składa się z wysokostabilnych rezystorów precyzyjnych i sterujących ich załączaniem przekaźników kontaktronowych. Do jej konstrukcji wykorzystano zmodyfikowaną wersję przetwornika opisanego w pracy [1]. Część cyfrową realizującą w układzie symulatora funkcje sterująco-wykonawcze tworzą mikroprocesorowy układ sterowania, moduł wyświetlacza symulowanej temperatury, zespół przycisków sterujących, interfejs standardu RS 232 oraz wzmacniacz sygnałów kluczy kontaktronowych. Jest to zmodyfikowana i rozbudowana wersja systemu sterowania opisana przez autorów w pracy [2]. Integralną częścią urządzenia jest program sterujący pracą mikroprocesora. 3. MODUŁ ANALOGOWY SYMULATORA Zgodnie z normą [4] równanie charakterystyki między temperaturą t a rezystancją Rt czujnika platynowego dla temperatury pracy 0...850 °C wyraża zależność: ( ) Rt = R0t 1 + At + Bt 2 , (1) w której: R0t - jest rezystancją czujnika Pt w temperaturze 0 °C, A, B - wartości stałych wg normy [4]. Wartości rezystancji R0t dla czujników Pt-100, 500 i 1000 wynoszą odpowiednio 100 Ω, 500 Ω i 1000 Ω. Zatem dla przyjętego temperaturowego przedziału pracy 0...500 °C, zgodnie z zal. (1), konieczny zakres zmian rezystancji wyjściowej Rwy symulatora wynosi odpowiednio dla Pt-100: 100...281 Ω, Pt-500: 500...1405 Ω i Pt-1000: 1000...2810 Ω. Analogowy moduł symulatora pokazany jest na rys. 2. Rwy Vcc Rw Rp K0 K1 R1 K2 Układ sterowania R0 K15 R2 R15 Rys. 2 Moduł analogowy symulatora Fig 2. Analogue module of the simulator Jest to moduł zrealizowany na bazie przetwornika opisanego w pracy [1]. Drabinka rezystorów składa się ze stałego rezystora Rw o wartości rezystancji 3 kΩ, rezystora Rp o wartości 350 Ω załączanego kluczem zewnętrznym tylko w przypadku symulacji rezystancji czujnika Pt-100 oraz identycznego jak w pracy [1] 16. bitowego przetwornika rezystancji zbudowanego z rezystorów R0...R15 załączanych kombinacyjnie z układu sterowania kluczami kontaktronowymi K0...K15. Wartości rezystorów przetwornika tworza ciąg geometryczny o ilorazie 2, od wartości rezystora R0=250 Ω do R15=215R0=8,192 MΩ. Wypadkową rezystancję wyjściową Rwy symulatora opisują zależności: dla Pt-100 Rwy = Rwp R0 15 R0 + Rwp ∑a 2 , (2) , (3) −i i i =0 dla Pt-500 i Pt-1000 Rwy = R w R0 15 R0 + R w ∑a 2 −i i i=2 w których: Rwp jest wypadkową rezystancją równolegle załączonych rezystorów Rw i Rp, a i ∈ {0,1} , 0 - rezystor przetwornika rozłączony, 1 - rezystor załączony. Przyjęte w pracy rozwiązanie pozwala w pełni wykorzystać właściwości 16. bitowego przetwornika rezystancji w układzie symulacji czujnika Pt-100. Uzyskany wówczas zakres zmian rezystancji wyjściowej, zgodnie z zal. (2), obejmuje przedział 90...313 Ω przy rozdzielczości nastawy tej rezystancji 3,4 mΩ. W układzie symulacji pracy czujników Pt-500 i Pt-1000 wykorzystanych jest 14. bitów przetwornika (bity a0 i a1 są wyłączone). Zakres zmian rezystancji wyjściowej, zgodnie z zal. (3), wynosi 428... 3000 Ω przy rozdzielczości nastawy 157 mΩ. Zależności (2) i (3) stanowią podstawę do budowy tablicy kombinacji załączeń torów drabinki dla oczekiwanych wartości rezystancji wyjściowej Rwy symulatora. Pozwalają również na analizę niedokładności odtworzenia przez symulator rezystancji Rt czujnika po uwzględnieniu niedokładności rezystorów składowych przetwornika Rw, Rp, R0...R15 oraz jego rozdzielczości. Wynikające z rozdzielczości przetwornika błędy względne symulatora dla najmniej korzystnych przypadków odtwarzania rezystancji 100, 500 i 1000 Ω nie przekraczają wartości 0,004 % dla Pt-100, 0,032 % dla Pt-500 i 0,016 % dla Pt-1000. 4. MODUŁ CYFROWY STEROWANIA SYMULATORA Część cyfrową realizującą w układzie symulatora funkcje sterująco-wykonawcze tworzą mikrokontroler, interfejs standardu RS232, zewnętrzna kasowalna pamięć EPROM, zespół przycisków sterujących, wyświetlacz symulowanej temperatury oraz wzmacniacz sygnałów sterujących kluczami wyjściowego analogowego przetwornika rezystancji. 4.1. MIKROKONTROLER SYMULATORA Do realizacji części sterującej wykorzystano mikrokontroler ACMOS firmy Siemens SAB80C535 należący do rodziny mikrokontrolerów 8051. Dzięki dużej liczbie portów (sześć) może komunikować się on z wszystkimi pozostałymi częściami struktury symulatora. Uproszczony schemat ideowy układu sterowania i wykorzystania portów mikrokontrolera pokazany jest na rys.3. US4 100nF 1 3 100nF 4 5 11 VCC V+ R1 9 R2 GND V- 2 US5 Vcc 13 RxD 1 2 3 4 5 6 7 8 8 9 7 T2 12 16 2 14 TxD T1 10 15 6 C1+ C1C2+ C2- 6 IN0 IN1 IN2 IN3 IN4 IN5 IN6 IN7 OUT0 OUT1 OUT2 OUT3 OUT4 OUT5 OUT6 OUT7 GND COM 6 18 17 16 15 14 13 12 11 6 2 2 6 6 2 2 6 10 6 2 2 ULN2803 6 2 6 2 100nF MAX232AESE US1C INT0 INT1 WR RO Vcc GND 12MHz 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 RESET VaRef VaGND P6.7 P6.6 P6.5 P6.4 P6.3 P6.2 P6.1 P6.0 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0 VCC VSS XTAL2 XTAL1 P2.0 P2.1 P2.2 P4.7 P4.6 P4.5 P4.4 P4.3 PE P4.2 P4.1 P4.0 VCC P5.0 P5.1 P5.2 P5.3 P5.4 P5.5 P5.6 P5.7 P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 EA ALE PSEN P2.7 P2.6 P2.5 P2.4 P2.3 9 8 7 6 5 4 3 2 1 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 W1,1 Vcc US2 1 11 2 3 4 5 6 7 8 9 Vcc US7,A US7,B US7,C US7,D US8,1 US8,2 US8,3 Dioda LED 10 OE LE VCC D1 D2 D3 D4 D5 D6 D7 D8 Q1 Q2 Q3 Q4 Q5 Q6 Q7 Q8 20 28 2 23 21 24 25 3 4 5 6 7 8 9 10 19 18 17 16 15 13 12 11 14 20 22 27 19 18 17 16 15 14 13 12 GND 74HCT573 GND A15 A14 A13 US3 Vcc A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 I/07 I/06 I/05 I/04 I/03 I/02 I/01 I/00 GND CE OE R/W Code Memory 8k x8 Vcc GND ESC ENTER PR100 PR10 PR1 PR PT100 PR PT500 PR PT1000 Code Memory 8kx8 SAB 80C535 22pF US6 1 2 3 4 5 6 7 8 9 6 IN0 IN1 IN2 IN3 IN4 IN5 IN6 IN7 OUT0 OUT1 OUT2 OUT3 OUT4 OUT5 OUT6 OUT7 GND COM 18 17 16 15 14 13 12 11 6 6 6 2 2 6 10 2 2 6 6 Vcc 2 2 2 ULN2803 6 2 Rys.3. Schemat układu sterowania Fig.3. Diagram of the control system Układ US1 jest typowym mikrokontrolerem znajdującym szerokie zastosowanie w technice pomiarowej, automatyce i dydaktyce. Porty P1 oraz P4 służą do sterowania przekaźnikami kontaktronowymi za pośrednictwem wzmacniaczy US5, US6 dopasowujących sygnał do odpowiedniego poziomu. Możliwość obsługi operacji 16- wujących sygnał do odpowiedniego poziomu. Możliwość obsługi operacji 16-bitowej uzyskano przy pomocy dwóch ośmiobitowych portów P4 (bity od 0 do 7) oraz P1 (bity od 8 do 15). Porty P0 i P2 wykorzystano do obsługi zewnętrznej pamięci EPROM zawierającej łącznie 64kB pamięci. Port P5 służy do przesyłania wartości zadanej temperatury do modułu wyświetlacza, natomiast port P6 odpowiada za pięć przycisków sterujących układem wyboru wartości symulowanej temperatury. Dwa bity portu P3 odpowiadają za komunikację symulatora z komputerem klasy PC przy pomocy interfejsu szeregowego. 4.2. MODUŁ WYŚWIETLACZA SYMULOWANEJ TEMPERATURY Układ podglądu aktualnie symulowanej temperatury pokazany jest na rys.4. R=330 x7 Wyświetlacz LED US7 13 12 11 10 9 15 14 GND VCC VCC A B C D LT BL LE US1,67 US1,66 US1,65 US1,64 3 4 VCC 5 VCC 8 a b c d e f g 4511 16 R=2k 15 14 13 12 11 10 9 US8 ULN2003 GND COM OUT7 OUT6 OUT5 OUT4 OUT3 OUT2 OUT1 IN7 IN6 IN5 IN4 IN3 IN2 IN1 8 7 6 5 4 3 2 1 US1,60 US1,61 US1,62 US1,63 Rys.4. Moduł wyświetlacza symulowanej temperatury Fig.4. Module of the simulated temperature display Moduł wyświetlacza został szczegółowo opisany w pracy [2]. Z portu P5 mikrokontrolera US1, sygnał jest podawany w kodzie BCD na dekoder US7 kodu BCD na kod siedmiosegmentowy i poprzez rezystory ograniczające prąd, sygnał ten jest przesyłany do wyświetlacza. Kolejnymi trzema bitami portu P5, przez wzmacniacze US8, mikroprocesor steruje kolejnością wyświetlania cyfr. Częstotliwość wyświetlania oraz czas ekspozycji każdej z cyfr, podobnie jak czas ekspozycji każdej z cyfr, podobnie jak przedstawiono w pracy [2], są ustawiane programowo. 4.3. ZESPÓŁ PRZYCISKÓW STERUJĄCYCH Zespół przycisków sterujących umożliwia nastawy wartości symulowanej temperatury. Składa się z ośmiu przycisków dołączonych do portu P6 mikrokontrolera oraz przycisku dodatkowego zerującego system. Schemat układu przedstawia rys.5. VCC PR 1 R=16k x8 US1,17 PR 10 US1,16 PR 100 US1,15 PR ENTER US1,14 PR ESC US1,13 PR PT100 US1,18 PR PT500 US1,19 PR PT1000 US1,20 Rys. 5 Zespół przycisków sterujących Fig. 5 System of controlling buttons W stanie spoczynku na końcówkach portu P6 mikroprocesora występuje stan wysoki. Po zwarciu przycisku do masy na końcówkach portu pojawia się stan niski – mikroprocesor dostaje informację o naciśnięciu przycisku. Każdy z przycisków pełni określoną rolę w układzie. Przyciski 1,10,100 służą do ustawienia interesującej użytkownika wartości temperatury. Przycisk ENTER powoduje zatwierdzenie wartości zadanej temperatury co powoduje zmianę rezystancji wyjściowej symulatora, na rezystancję odpowiadającą temperaturze wyświetlanej na wyświetlaczu. Przycisk ESC powoduje wyświetlenie aktualnie nastawionej wartości temperatury. Naciśnięcie przycisku RESET powoduje temperatury. Naciśnięcie przycisku RESET powoduje wyzerowanie systemu i powrót do warunków początkowych. Przyciski PR PT100, PR PT500, PR PT1000 odpowiadają za dobór odpowiednich wartości 16 bitowego przetwornika uzyskując odpowiednie wartości do symulowania czujników odpowiednio Pt-100, Pt-500, Pt1000. 4.4. INTERFEJS STANDARDU RS232 Pokazany na rys. 3. układ US4 MAX232 umożliwia komunikację z komputerem klasy PC za pomocą standardowych funkcji oraz z wykorzystaniem przerwania 14. Zastosowany port szeregowy może pracować synchronicznie (z sygnałem taktującym) lub asynchronicznie (tryb full duplex). Transmisja danych z symulatora odbywa się z prędkością 1200 bodów, przy częstotliwości oscylatora 12MHz, z kontrolą bitu parzystości. 5. REALIZACJA PROGRAMU MIKROKONTROLERA Językiem programowania procesora w symulatorze jest asembler z rodziny 8051 [3]. Możliwe jest również programowanie w języku C, bliższym dla większości użytkowników, jest to przydatne w przypadku bardziej zaawansowanych rozwiązań. Działanie programu opiera się na ustaleniu początku tablicy stanów wyjściowych portów mikroprocesora oraz na ciągłym powtarzaniu jednej z dwóch pętli, zgodnie z algorytmem działania programu pokazanym na rys.6. Przy pomocy przycisków PR PT100, PR PT500, PR PT1000 następuje ustalenie początku tablicy stanów wyjściowych portów mikroprocesora dla poszczególnych symulowanych czujników termorezystancyjnych, a przy wyborze czujnika Pt-100 dodatkowo zostaje dołączony rezystor RP. W sytuacji, gdy nie został naciśnięty żaden przycisk sterujący, program wykonuje tylko operację odświeżania wskazania wyświetlanej temperatury. Jest to stan spoczynkowy układu. Po wciśnięciu dowolnego przycisku program przechodzi do wykonywania drugiej pętli . Naciśnięcie danego przycisku jest rozpoznawane przez mikroprocesor na podstawie zmiany bitów portu P6, co objawia się pojawieniem się zera logicznego na jednym z wejść portu P6. Następuje programowe sprawdzenie, który przycisk został naciśnięty, po czym zostaje wykonana grupa instrukcji związana z tym przyciskiem. Grupy instrukcji przypisane przyciskom 1,10,100 są praktycznie takie same, różnią się jedynie wartościami stałych w nich zawartymi. Głównym ich zadaniem jest obsługa trzech 8-bitowych rejestrów R0,R1,R2 mikrokontrolera, w których zawarta jest informacja o wyświetlanej na wyświetlaczu temperaturze. Grypa instrukcji dotycząca przycisku ENTER dotyczy zatwierdzenia zmian wprowadzonych przy pomocy przycisków 1,10,100. Zadana temperatura zapisana w kodzie BCD pomocy przycisków 1,10,100. Zadana temperatura zapisana w kodzie BCD zostaje przekształcona do postaci binarnej i zapisana w rejestrach R4 i R5 procesora. Kolejne instrukcje powodują pobranie z tablic danych informacji o kombinacji równolegle załączanych kontaktronów. Informacja ta trafia do portów P1 i P4, po czym zostają załączone odpowiednie rezystory drabinki części analogowej. P1 NIE Czy naciśnięty przycisk 1? TAK Obsługa przycisku 1 START NIE Ustawienie warunków początkowych NIE Czy naciśnięty PT100? Czy naciśnięty przycisk 10? TAK Obsługa przycisku 10 TAK Załączenie RP Ustalenie początku TAB na PT100 NIE Czy naciśnięty przycisk 100? TAK Obsługa przycisku 100 NIE Czy naciśnięty PT500? TAK Ustalenie początku TAB na PT500 P1 NIE Czy naciśnięty przycisk ENTER? TAK Obsługa przycisku ENTER NIE Czy naciśnięty PT1000? TAK Ustalenie początku TAB na PT1000 NIE Czy naciśnięty przycisk ESC? TAK Obsługa przycisku ESC STOP Wyświetlanie temperatury NIE Czy naciśnięty jakiś przycisk? Rys. 6. Algorytm działania programu Fig.6. Algorithm of programme functioning TAK 6. WNIOSKI Badania kontrolne symulatora rodziny czujników platynowych Pt-100, Pt-500, Pt1000 potwierdziły prawidłowość działania sterowania cyfrowego oraz poprawny dobór kombinacyjnie przełączanych rezystorów w bloku analogowym. Niepewność odtworzenia rzeczywistej rezystancji czujników, w zależności od nastawy symulowanej temperatury i typu czujnika, nie przekracza wartości z przedziału 0,04%...0,08%. Tym samym symulator spełnia wymagania normy dla obu klas tolerancji A i B czujników. Uniwersalność opracowanego systemu pozwala w prosty sposób dopasować symulator również do innego temperaturowego przedziału pracy, niż zaproponowany przez autorów. LITERATURA [1] BARTOSZEWSKI J., Sterowany symulator czujników termorezystancyjnych, Prace Naukowe I-29 PWr nr 54, Seria Studia i Materiały 2003, nr 23, s.329-334. [2] BARTOSZEWSKI J., DUSZA D., Moduł cyfrowy sterowania symulatora czujników termorezystancyjnych, Prace Naukowe I-29 PWr nr 58, Seria Studia i Materiały 2005, nr 25, s.449[3] KRUK 456. S., Programowanie w języku Assembler, PNJ, Warszawa, 1992. [4] PN-EN 60751+A2, Czujniki platynowe przemysłowych termometrów rezystancyjnych, GUM, Warszawa,1997 UNIVERSAL SIMULATOR OF PLATINUM TEMPERATURE SENSORS The simulators of thermoresistance sensors are artificially reproducing of the real sensors resistance arrangements, which the resistance output signal is the function of temperature. In the paper the authors present the steered digitally system which simulating resistance for the platinum thermoresistors family Pt-100, 500 I 1000.