Podczas projektowania urządzenia przyjęto następujące założenia:
- tanie i niekłopotliwe w zdobyciu podzespoły,
- pomiar napięcia z zakresu: 0...10 VDC lub 0...100 VDC,
- pomiar natężenia prądu z zakresu 0...1 A lub 0...10 A DC,
- zmiana zakresu niewymagająca ingerencji w program zawarty w mikrokontrolerze,
- pomiary z użyciem wspólnego punktu odniesienia, brak izolacji galwanicznej między poszczególnymi wejściami;
- brak konieczności kalibrowania,
- szeroki zakres napięcia zasilania: 8...30 VDC,
- niewielkie gabaryty oraz nieskomplikowany sposób mocowania w obudowie np. zasilacza,
- natychmiastowa praca po włączeniu zasilania.
Zasada działania
Schemat proponowanego rozwiązania pokazano na rysunku 1. Sercem urządzenia jest mikrokontroler ATmega8. Wybór został podyktowany jego popularnością, dostateczną liczbą linii wejścia/wyjścia oraz obecnością zintegrowanego przetwornika A/C o parametrach wystarczających do tego zastosowania. W mikrokontrolerze umieszczonym w obudowie DIP-28 przetwornik ma 6 wejść o rozdzielczości 10 bitów.
W rejestrze ADMUX jest wpisywany numer wejścia, z którego jest pobierane napięcie mierzone. Za jego pomocą jest również wskazywane źródło napięcia odniesienia. Do wyboru są: wewnętrzne źródło 2,56 V, zewnętrzne (dołączane do pinu AREF) lub napięcie zasilające mikrokontroler. W rejestrze ADCSRA ustawia się pozostałe parametry pracy przetwornika, takie jak:
- stopień podziału systemowego zegara (do poprawnej pracy ADC wymaga taktowania o częstotliwości z zakresu 50...200 kHz),
- sposób pracy (ciągłe aktualizowanie danych wyjściowych tzw. Free Running Mode lub konwersja na żądanie, po ustawieniu odpowiedniego bitu),
- sposób sygnalizowania zakończenia przetwarzania (emitowanie przerwania wstrzymującego pracę programu lub ustawienie odpowiedniej flagi w rejestrze),
- metoda prezentacji danych (rejestr wyjściowy ma pojemność 2×8 bitów, zaś przechowywane dane 10 bitów; mogą one zajmować bity najstarsze lub najmłodsze).
Z chwilą rozpoczęcia pomiaru, aktualna wartość napięcia wychodzącego z multipleksera jest "zatrzaskiwana" w komparatorze. Układ sterujący zarządza wbudowanym przetwornikiem A/C: podaje na drugie wejście komparatora połowę napięcia odniesienia i sprawdza, czy jest ono za niskie, czy za wysokie w stosunku do mierzonego. Odczytany bit zostaje zapisany i bierze udział w ustalaniu kolejnego kroku: jeżeli napięcie było za wysokie, należy odjąć 1 napięcia referencyjnego; jeżeli za małe - dodać. Tak zostaje odczytany drugi bit. Sytuacja powtarza się, aż do wykorzystania wszystkich 10 bitów. Każdy krok to coraz lepsze przybliżenie wyniku konwersji do wartości rzeczywistej. Z tego też powodu, największą możliwą do oczytania wartością z przetwornika o rozdzielczości 10 bitów jest 1023:
Taka metoda przetwarzania napięć na postać cyfrową jest tania i stosunkowo niekłopotliwa w implementacji, za to posiada wadę charakterystyczną dla wszystkich przetworników kompensacyjnych: mierzy wartość napięcia zatrzymaną w jednej chwili, przez co nie jest odporny na zakłócenia. Wadę tę w znacznym stopniu likwiduje użycie przetwornika z podwójnym całkowaniem, który mierzy wartość średnią w określonym odcinku czasu. Jest to jednak metoda wolniejsza i znacznie bardziej skomplikowana.
Źródło napięcia referencyjnego wbudowane w mikrokontroler ma bardzo duży rozrzut od nominalnej wartości wynoszącej 2,56 V. Są to odchyłki sięgające kilkuset miliwoltów. Aby móc się nim posługiwać, konieczna byłaby kalibracja. By oszczędzić sobie związanych z nią problemów, użyto zewnętrznego źródła napięcia odniesienia typu LM385-2,5V. W zależności od wersji, ma ono dokładność 1,5% lub 3%, co jest wystarczające w tym zastosowaniu. Ponieważ układ włącza się do obwodu identycznie jak diodę Zenera, ogranicznik prądu płynącego przez tę gałąź stanowią dwa połączone równolegle rezystory drabinki RN1.
Wejścia przetwornika A/C są podatne na uszkodzenie: nie zaleca się podawania na nie napięć innych, niż te z przedziału GND... Vcc. Dlatego zostały one zabezpieczone, każde oddzielnym obwodem składającym się z dwóch szybkich diod krzemowych i opornika ograniczającego płynący przez nie prąd. Zasada działania jest widoczna na rysunku 2. Górna sytuacja wystąpi podczas normalnej pracy; środkowa (otwiera się górna dioda) przy zbyt wysokim napięciu wejściowym, zaś dolna (po otwarciu diody dolnej) po podaniu na wejście napięcia ujemnego. Na rysunku założono, że diody są idealne, co nie ma większego znaczenia dla analizy pracy obwodu.
Stabilizowanego napięcia 5 V dla mikrokontrolera dostarcza scalony stabilizator US1 typu 7805, który do poprawnego działania wymaga minimum 3 V spadku napięcia na nim. Z tego powodu, minimalna wartość napięcia zasilającego układ to 8 V. Kondensator C4 wraz z rezystorem R1 zapewniają utrzymanie nóżki RESET mikrokontrolera na poziomie niskim przez ułamek sekundy od podania napięcia zasilania. Znacznie zmniejsza to ryzyko wystąpienia błędu podczas inicjalizacji programu, o który nietrudno przy narastającym napięciu zasilania.
Płytka wyposażona jest w cztery zespoły 2-pinowych zworek JP1...JP4. Służą one wyborowi żądanego zakresu pomiarowego w danym kanale. Nóżki procesora do nich prowadzące, jak i te niewykorzystane, zostały podciągnięte do potencjału +5 V poprzez rezystory 4,7 kV. Zapobiega to gromadzeniu się na nich ładunków statycznych mogących zakłócić działanie układu.
Do mikrokontrolera dołączono wyświetlacz alfanumeryczny o organizacji 2×16 znaków ze sterownikiem zgodnym z HD44780. Przedstawiane są na nim wyniki pomiarów lub przekroczenie wybranego zakresu. Potencjometrem P1 jest regulowany kontrast wyświetlacza, zaś rezystor R13 ogranicza prąd płynący przez diody podświetlające (jeżeli wyświetlacz ma podświetlenie). Złącze J8 przeznaczone jest do programowania US3 bez konieczności wyjmowania go z podstawki.
Ostatnim fragmentem wymagającym omówienia jest układ dwóch dzielników oporowych oraz dwóch boczników do pomiaru natężenia prądu. Wszystkie one mają wspólny punkt odniesienia, jakim jest masa układu. Z tego wynika, że pomiar prądu dokonywany jest "od strony masy", nie zaś, jak przyzwyczajenie wskazuje, "od strony plusa".
Nie ma to jednak znaczenia, gdyż I prawo Kirchoffa gwarantuje, że obie uzyskane wartości byłyby identyczne. Z kolei dzielniki R2+R3 i R5+R6 dzielą napięcie wejściowe (0...10 V lub 0...100 V) w stosunku, odpowiednio: 1:3 lub 1:39, dostosowując je do zakresu przetwarzania przetwornika A/C (0...2,5 V). W złączach służących do pomiaru prądu zaciski połączono równolegle, aby były zdolne przenieść prąd rzędu 10 A. Kondensatory ceramiczne C6...C9 zapobiegają przedostawaniu się ewentualnych zaburzeń na wejścia przetwornika A/C.
Montaż i uruchomienie
Układ zmontowano na jednostronnej płytce drukowanej o wymiarach ok. 87 mm×74 mm. Jej schemat montażowy zamieszczono na rysunku 3. W pierwszej kolejności należy przylutować złącze dla wyświetlacza LCD. Jest ono umiejscowione, w przeciwieństwie do pozostałych podzespołów, po stronie ścieżek. By uniknąć ewentualnego roztopienia się plastikowej oprawki goldpinów, na czas lutowania można na nie nałożyć analogiczne złącze żeńskie. Szpilki należy wetknąć w płytkę na dogodną do lutowania głębokość, następnie przylutować jedną po środku, wypoziomować dopiero wtedy lutować kolejne, zaczynając od skrajnych. Przylutowane złącze pokazano na fotografii 4.
Dalszy montaż przeprowadzany jest typowo, od elementów najniższych do najwyższych, pamiętając o dwóch zworkach znajdujących się pod podstawką mikrokontrolera. Zawczasu trzeba zatroszczyć się również o wlutowanie odpowiednich wartości rezystorów biorących udział w pomiarach. Po zmontowaniu, włożeniu mikrokontrolera ATmega8 w podstawkę i zaprogramowaniu go, ustawić należy kontrast wyświetlacza przy użyciu potencjometru P1. Ustawienia tzw. fusebitów są fabryczne i nie wymagają zmiany.
Następnym krokiem jest poinformowanie układu programowalnego o wybranych przez nas zakresach pomiarowych, zgodnie z tabelą 1. Dokonuje się to poprzez nałożenie lub zdjęcie zworek z goldpinów JP1...JP4.
Wartości rezystorów w dzielnikach oporowych są proponowane - można je również dobrać samemu. Trzeba jedynie pamiętać o dopasowaniu napięć wejściowych, tj. 10 V lub 100 V do zastosowanego napięcia odniesienia, czyli 2,5 V. Im dokładniejsze rezystory zostaną zastosowane i im bardziej stosunki ich wartości będą odpowiadać obliczonemu, tym lepszej dokładności pomiaru można się spodziewać. Oczywiście, nie ma przeciwwskazań, by zamiast jednego z rezystorów w dzielniku zamontować potencjometr i przeprowadzić kalibrację.
Przy napięciu zasilania przekraczającym 15 V, na układ US1 warto założyć mały radiator, szczególnie wtedy, gdy wyświetlacz ma podświetlanie. Rezystory R7 i R8, zwłaszcza przy ciągłym pomiarze prądów zbliżonych do maksymalnych, warto jest wlutować kilka milimetrów ponad płytkę, by miały zapewnione dostateczne chłodzenie. Zalecane jest użycie pięciowatowych rezystorów, ze względu na wytrzymałość na udary prądowe.
Ekran pracującego układu pomiarowego przedstawia fotografia 5. Górny wiersz zawiera wyniki pomiarów kolejno U1 i I1; dolny - U2 oraz I2.
Możliwe jest wystąpienie sytuacji, w której mierzona wartość przekroczy ustawiony zakres. Przetwornik A/C nie może rozszerzyć granic swojego działania; 1023 to maksymalna liczba, jaką można z niego odczytać. Dlatego jej wystąpienie jest przez układ traktowane jako domniemane przekroczenie zakresu. By o tym poinformować, na jej miejscu na wyświetlaczu pojawi się napis "OVER!". Dzieje się to kosztem niewielkiego jego zawężenia - o jeden najmniej znaczący bit.
Wykaz elementówRezystory: Kondensatory: Półprzewodniki: Inne: |
O niepewności pomiaru
Przyroda jest tak skonstruowana, że nie pozwala zmierzyć jakiejkolwiek wartości ciągłej (napięcie, temperatura) przy użyciu systemów cyfrowych, nie popełniając przy tym błędu. Dochodzi do tego tolerancja użytych podzespołów. Przeanalizujmy składniki, które mają wpływ na wynik pomiaru:
- dokładność samego przetwornika A/C. Firma Atmel podaje, że jest nie gorsza niż ±2LSB, co dla przetwornika 10-bitowego daje:
- błąd kwantyzacji. Wynik pomiaru jest przedziałem, w którym znajduje się mierzona wartość - im większa rozdzielczość, tym przedziały te są węższe. Zakładając najgorszy możliwy przypadek, czyli wartość rzeczywista jest w połowie wyznaczonego przedziału:
- dokładność źródła napięcia referencyjnego. Tolerancja jego wykonania przenosi się liniowo na wynik pomiaru. Nota katalogowa układu LM385 podaje 1,5% lub 3%, w zależności od wersji.
- błąd wynikający z tolerancji użytych rezystorów. W przypadku pomiaru prądu, rzecz jest prosta: 5% tolerancji wykonania rezystora (takie zastosowano w modelu) daje 5% błędu wyniku. Bardziej się komplikuje przy pomiarze napięcia, gdzie udział bierze dzielnik rezystorowy. Wzór wyrażający błąd względny podziału napięcia ma postać:
Sumując powyższe składniki, niepewność pomiaru prądu nie przekracza 8,3%, zaś napięcia 4,8%. Są to wartości skrajne, gdyż rozpatrywano najgorszy możliwy przypadek. Niepewność można zredukować, stosując źródło napięcia odniesienia o lepszej dokładności i rezystory o mniejszej tolerancji. Pominięto błędy wynikające z zaokrąglenia operacji zmiennopozycyjnych, dryftu temperaturowego etc.
Michał Kurzela, EP