Sterownik silnika krokowego z interfejsem MODBUS, część 1

Podobne dokumenty
Edukacyjny sterownik silnika krokowego z mikrokontrolerem AT90S1200 na płycie E100. Zestaw do samodzielnego montażu.

STM32Butterfly2. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

Tester samochodowych sond lambda

Laboratorium Analogowych Układów Elektronicznych Laboratorium 6

SML3 październik

Uniwersalny sterownik silnika krokowego z portem szeregowym RS232 z procesorem AT90S2313 na płycie E200. Zestaw do samodzielnego montażu.

2. Architektura mikrokontrolerów PIC16F8x... 13

LITEcompLPC1114. Zestaw ewaluacyjny z mikrokontrolerem LPC1114 (Cortex-M0) Sponsorzy:

Zestaw uruchomieniowy z mikrokontrolerem LPC1114 i wbudowanym programatorem ISP

Wstęp Architektura... 13

STM32 Butterfly. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

Programowalne Układy Cyfrowe Laboratorium

E-TRONIX Sterownik Uniwersalny SU 1.2

Systemy wbudowane. Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej. Witold Kozłowski

ZL2AVR. Zestaw uruchomieniowy z mikrokontrolerem ATmega8

ZL4PIC. Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC

MultiTool instrukcja użytkownika 2010 SFAR

dokument DOK wersja 1.0

ZL8AVR. Płyta bazowa dla modułów dipavr

MCAR Robot mobilny z procesorem AVR Atmega32

ZL15AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega32

M-1TI. PRECYZYJNY PRZETWORNIK RTD, TC, R, U NA SYGNAŁ ANALOGOWY 4-20mA Z SEPARACJĄ GALWANICZNĄ. 2

Elektrolityczny kondensator filtrujący zasilanie stabilizatora U12 po stronie sterującej

SML3 październik

AVREVB1. Zestaw uruchomieniowy dla mikrokontrolerów AVR. Zestawy uruchomieniowe

SiMod-X-(A1) Przetwornik parametrów powietrza z interfejsem RS485 (MODBUS RTU) oraz wyjściem analogowym (dotyczy wersji -A1)

ZL16AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega8/48/88/168

ZL28ARM. Zestaw uruchomieniowy dla mikrokontrolerów AT91SAM7XC

ZL5PIC. Zestaw uruchomieniowy dla mikrokontrolerów PIC16F887

ZL9ARM płytka bazowa dla modułów diparm z mikrokontrolerami LPC213x/214x

Technika Mikroprocesorowa

Rys. 1. Schemat ideowy karty przekaźników. AVT 5250 Karta przekaźników z interfejsem Ethernet

2.1 Porównanie procesorów

ZL27ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F103

Analogowy sterownik silnika krokowego oparty na układzie avt 1314

WIZUALIZACJA DANYCH SENSORYCZNYCH MINISTACJA METEOROLOGICZNA

ZL4PIC uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC (v.1.0) Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC

ZL29ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

Uniwersalna karta portów P R O J na E KUSB

Podstawowe urządzenia peryferyjne mikrokontrolera ATmega8 Spis treści

DTR PICIO v Przeznaczenie. 2. Gabaryty. 3. Układ złącz

ZL11AVR. Zestaw uruchomieniowy z mikrokontrolerem ATtiny2313

ZL30ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F103

ZL15AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega32

Przemysłowy Sterownik Mikroprocesorowy

AVR DRAGON. INSTRUKCJA OBSŁUGI (wersja 1.0)

STHR-6610 Naścienny przetwornik temperatury i wilgotności

Płytka laboratoryjna do współpracy z mikrokontrolerem MC68332

Moduł uruchomieniowy AVR ATMEGA-16 wersja 2

Centrala alarmowa ALOCK-1

Biomonitoring system kontroli jakości wody

Politechnika Gdańska. Gdańsk, 2016

ZL4PIC. Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC

Zastosowanie procesorów AVR firmy ATMEL w cyfrowych pomiarach częstotliwości

Proste układy wykonawcze

2.2 Opis części programowej

SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701. SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701.

Obługa czujników do robota śledzącego linie. Michał Wendland czerwca 2011

Przetwornik temperatury RT-01

Ćwiczenie 5 Zegar czasu rzeczywistego na mikrokontrolerze AT90S8515

Technik elektronik 311[07] moje I Zadanie praktyczne

INSTRUKCJA OBSŁUGI KROSOWNICY WIDEO KV-12/4

2.1 Przesył danych między procesorem a tabelą zmiennych

Język C. Wykład 9: Mikrokontrolery cz.2. Łukasz Gaweł Chemia C pokój 307

8 kanałowy przedłużacz analogowy z RS485

ZL9AVR. Płyta bazowa dla modułów ZL7AVR (ATmega128) i ZL1ETH (RTL8019)

Warsztatowo/ samochodowy wzmacniacz audio

Wyświetlacz ethernetowy, część 1

Konfigurator Modbus. Instrukcja obsługi programu Konfigurator Modbus. wyprodukowano dla

I. DANE TECHNICZNE II. INSTRUKCJA UśYTKOWANIA... 4

ZL1MSP430 Zestaw startowy dla mikrokontrolerów MSP430F11xx/11xxA ZL1MSP430

Politechnika Wrocławska

Płytka ewaluacyjna z ATmega16/ATmega32 ARE0021/ARE0024

Wizualizacja stanu czujników robota mobilnego. Sprawozdanie z wykonania projektu.

STHR-2810, 2811, 2812 Przetwornik temperatury i wilgotności z czujnikiem Sensirion

Opis układów wykorzystanych w aplikacji

INDU-22. Przemysłowy Sterownik Mikroprocesorowy. Przeznaczenie. masownica próżniowa

WIZUALIZACJA DANYCH SENSORYCZNYCH Sprawozdanie z wykonanego projektu. Jakub Stanisz

Spis treści. Projekt współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego

4 Adres procesora Zworkami A0, A1 i A2 umieszczonymi pod złączem Z7 ustalamy adres (numer) procesora. Na rysunku powyżej przedstawiono układ zworek dl

Jednym z najlepszych sposobów poznawania nowego typu mikrokontrolera

Przemysłowy Sterownik Mikroprocesorowy

LITEcomp. Zestaw uruchomieniowy z mikrokontrolerem ST7FLITE19

TERMINAL DO PROGRAMOWANIA PRZETWORNIKÓW SERII LMPT I LSPT MTH-21 INSTRUKCJA OBSŁUGI I EKSPLOATACJI. Wrocław, lipiec 1999 r.

LABORATORIUM - ELEKTRONIKA Układy mikroprocesorowe cz.2

PRZYCISK DO PUSZKI UNIV x

UNO R3 Starter Kit do nauki programowania mikroprocesorów AVR

Instytut Teleinformatyki

Układy czasowo-licznikowe w systemach mikroprocesorowych

APPLICATION OF ADUC MICROCONTROLLER MANUFACTURED BY ANALOG DEVICES FOR PRECISION TENSOMETER MEASUREMENT

KAmduino UNO. Płytka rozwojowa z mikrokontrolerem ATmega328P, kompatybilna z Arduino UNO

DTR.AT.01. APLISENS PRODUKCJA PRZETWORNIKÓW CIŚNIENIA I APARATURY POMIAROWEJ DOKUMENTACJA TECHNICZNO-RUCHOWA

INSTRUKCJA OBSŁUGI BEZPRZEWODOWY POMIAR TEMPERATURY

CM Konwerter ModBus RTU slave ModBus RTU slave

Wyjścia analogowe w sterownikach, regulatorach

Zaliczenie Termin zaliczenia: Sala IE 415 Termin poprawkowy: > (informacja na stronie:

MAGISTRALA MODBUS W SIŁOWNIKU XSM Opis sterowania

MIKROPROCESOROWY STEROWNIK PARAMETRÓW KLIMATYCZNYCH

SYSTEM E G S MODUŁ ML/A-1-6 INSTRUKCJA UŻYTKOWANIA

Wyniki (prawie)końcowe - Elektroniczne warcaby

Transkrypt:

Sterownik P R O J E K Tsilnika Y krokowego z interfejsem MODBUS Sterownik silnika krokowego z interfejsem MODBUS, część 1 AVT 5137 Sterowanie silnikami krokowymi nie jest wielką sztuką, jednak na naszych łamach pojawia się raczej niewiele artykułów poruszających tę tematykę. Nadrabiając zaległości prezentujemy projekt sterownika wykorzystującego protokół MODBUS. Rekomendacje: to projekt, który powinien zainteresować głównie automatyków i nie tylko dlatego, że do komunikacji z komputerem wykorzystano protokół MODBUS. PODSTAWOWE PARAMETRY Płytka o wymiarach 105x149 mm Zasilanie: 8...35 V Maksymalny pobór prądu jednej cewki silnika: 1 A Sterowanie silników 2 i 4 fazowych Praca w trybie pół krokowym i pełno krokowym Zatrzymanie silnika po dojściu do określonej pozycji lub otrzymaniu sygnału z wyłącznika krańcowego Pomiar napięcia zasilającego silnik Pomiar prądu pobieranego przez silnik Możliwość użycia czujników krańcowych typu NC/NO Komunikacja: RS232 9600,n,8,1 protokół MODBUS RTU Sygnalizacja podstawowych stanów pracy za pomocą diod LED W artykułach o sterowaniu sil- nikami krokowymi jakie ukazały się w EP wykorzystywano głównie układy o małej skali integracji, natomiast w bardziej rozbudowanych projektach stosowano mikrokontrolery. Żadne z przedstawionych rozwiązań nie umożliwiało jednak sterowania pracą silnika z wykorzystaniem protokołu MODBUS popularnego w układach automatyki przemysłowej. W niniejszym artykule zostanie zaprezentowany prosty mikroprocesorowy sterownik silników krokowych małej mocy. Pełne możliwości sterowania silnikiem uzyskujemy za pomocą interfejsu szeregowego, ale sterownik jest również wyposażony w złącze prostej klawiatury pozwalającej na sterowanie silnikiem krokowym bez użycia komputera. Sterowanie za pomocą klawiatury umożliwia uruchomienie i zatrzymanie silnika oraz zmianę kierunku i prędkości. Pomysł zrealizowania sterownika o takiej funkcjonalności powstał w momencie, gdy zaistniała potrzeba sterowania dodatkowym posuwem maszyny za pomocą jej sterownika głównego, którym jest komputer przemysłowy PC104. Budowa Schemat elektryczny urządzenia przestawiono na rys. 1. Całością steruje dobrze znany czytelnikom mikrokontroler ATmega8 (U2) posiadający 8 kb pamięci Flash oraz 1 kb pamięci RAM. Dodatkowo zawiera on wewnątrz 10 bitowy przetwornik A/C, który jest wykorzystywany do pomiaru napięcia zasilającego oraz prądu pobieranego przez silnik. Mikrokontroler pracuje w konfiguracji z zewnętrznym rezonatorem kwarcowym 6 MHz (X1), ponieważ potrzebny jest stabilny sygnał zegarowy wykorzystywany do transmisji szeregowej oraz wyznaczania prędkości silnika. Do linii PC0 jest podłączona czerwona dioda (D1), która informuje użytkownika o wystąpieniu w sterowniku sytuacji awaryjnej, np. przekroczenia maksymalnego prądu pobieranego przez silnik. Do linii PC1 podłączona jest dioda zielona, która informuje o wirowaniu silnika w lewo, natomiast do linii PB2 podłączona jest dioda zielona, której zadaniem jest informowanie o wirowaniu silnika w prawo. Ponieważ w urządzeniu wykorzystano zamontowany na stałe mikrokontroler w obudowie TQFP32, konieczne stało się umieszczenie złącza szpilkowego J2 umożliwiającego zaprogramowanie 24

Rys. 1. Schemat elektryczny sterownika 25

układu w systemie docelowym. Układ jest wyposażony także w dodatkowe złącze J1 umożliwiające opcjonalnie dołączenie 3 klawiszowej klawiatury sterującej urządzeniem. Przycisk podłączony do linii PC2 służy do wyboru kierunku ruchu oraz zatrzymania silnika, natomiast przyciski podłączone do linii PC3 i PC4 służą odpowiednio do zwiększania i zmniejszania obrotów silnika. Interfejs portu szeregowego RS232 rozwiązano w sposób klasyczny, podłączając do linii RXD i TXD portu szeregowego mikrokontrolera układ MAX232 (U5), który pracuje w swojej podstawowej aplikacji. Linie PD2 i PD3 mikrokontrolera wyprowadzono na złącze ARK3 (J7) służące do podłączenia czujników krańcowych. Dodatkowe rezystory podciągające służą do wymuszenia prądu o wartości kilkunastu miliamperów w obwodzie czujników. Napięcie zasilające układ (łącznie z silnikiem) jest doprowadzone za pomocą diody BY299 (D4), zabezpieczającej przed dołączeniem napięcia o odwrotnej polaryzacji. Napięcie zasilające mikrokontroler i część analogową jest stabilizowane za pomocą klasycznego stabilizatora liniowego 7805 (U3). Dodatkowo napięcie zasilające część analogową mikrokontrolera oraz całego układu jest filtrowanie za pomocą prostego filtru LC (L1, C4, C2), eliminując w ten sposób zakłócenia, jakie mogą się przedostać z części cyfrowej układu oraz silnika. Do sterowania uzwojeniami silnika wykorzystano układ ULN2803 (U4) zawierający w swojej strukturze 8 tranzystorów Darlingtona o maksymalnym prądzie Ic=0,5 A wyposażonych w dodatkowe diody zabezpieczające. Do sterowania silnikiem krokowym wystarczą nam 4 sygnały, dlatego poszczególne tranzystory połączono parami równolegle, uzyskując w ten sposób wyjścia o maksymalnej wydajności prądowej około 1 A. Z uwagi na to, że tranzystory te są umieszczone w jednej strukturze producent zapewnia jednakowe parametry poszczególnych tranzystorów wyjścia układu możemy połączyć bezpośrednio ze sobą bez wykorzystywania dodatkowych rezystorów wyrównujących prądy w poszczególnych gałęziach. Pomiar napięcia zasilającego silnik dokonywany jest poprzez wejście ADC6 z wykorzystaniem dzielnika napięcia 1:10, dzięki któremu możliwy jest pomiar napięcia do wartości 25,6 V. Pomiar prądu zasilającego silnik jest realizowany z wykorzystaniem bocznika (rezystor R12) o wartości 0,1 V. Napięcie wyjściowe z bocznika jest podawane na prosty filtr dolnoprzepustowy R11, C11, a następnie na układ wzmacniacza nieodwracającego o wzmocnieniu ok. 10 z wykorzystaniem połówki układu LM358 (U1). Sygnał prądowy po odfiltrowaniu w prostym filtrze RC nadal może zawierać składową zmienną, więc z wyjścia wzmacniacza jest on następnie podawany na drugą połówkę układu LM358 (U1), na której zrealizowano prosty aktywny filtr dolnoprzepustowy o częstotliwości granicznej około 10 Hz. Po wyjściu z filtru sygnał jest podawany bezpośrednio na wejście przetwornika A/C mikrokontrolera (ADC7). Oprogramowanie Oprogramowanie sterujące pracą mikrokontrolera zostało napisane w języku C z wykorzystaniem kompilatora GCC. Program działa w pętli nieskończonej, zgodnie z klasycznym algorytmem: czytaj wejścia, przetwarzaj dane, ustaw wyjścia. Zasadę działania programu zilustrowano na rys. 2. Po włączeniu zasilania sterownik rozpoczyna pracę od inicjalizacji interfejsu RS232 z parametrami 9600,n,8,1, timera systemowego wykorzystywanego do odmierzania czasu oraz procedur związanych obsługą protokołu MOD- BUS. Ustawiany jest także przetwornik analogowo cyfrowy, którego kanał 7 służy do pomiaru prądu pobieranego przez silnik, a kanał 8 do pomiaru napięcia zasilającego. Po tej czynności wykonywany jest kod inicjalizujący moduł sterujący pracą silnika krokowego. W efekcie uruchamiany jest m.in. 16 bitowy Timer1 sterujący pracą silnika krokowego. Następnie są ustawiane linie PD3...PD7 służące do generowania sekwencji sterujących dla silnika. Kolejną czynnością wykonywaną w procesie inicjalizacji jest odtworzenie wszystkich parametrów konfiguracyjnych z pamięci EEPROM sterownika. W pamięci nieulotnej są zapisywane następujące parametry konfiguracyjne: typ używanego silnika krokowego (2 lub 4 fazowy), tryb sterowania (pełno krokowy lub pół krokowy), sposób zachowania sterownika po zatrzymaniu silnika (włączenie lub wyłączenie prądu zasilającego silnik), aktualną pozycję w jakiej znajduje się silnik. Po odczytaniu parametrów konfiguracyjnych program wchodzi do nieskończonej pętli, w której najpierw jest odczytywana wartość z kanałów 7 i 8 przetwornika Rys. 2. Algorytm pracy sterownika A/C, a następnie na podstawie parametrów korekcyjnych jest wyznaczane bieżące napięcie zasilające oraz prąd silnika. Po tym następuje obsługa protokołu MODBUS, gdzie na podstawie danych odebranych poprzez interfejs RS232 wykonywana jest odpowiednia akcja. Polega ona na wydaniu rozkazu dla silnika lub zapisaniu, bądź odczytaniu parametrów konfi- 26

List. 1. Procedura sterowania liniami załączającym poszczególne uzwojenia silnika /* Przerwanie od porownania dla Timera 0 */ SIGNAL(SIG_OUTPUT_COMPARE1A) if( ToPos && CurrPos==TargetPos) IsRun = FALSE; StopMotorHw(); return; //Generowanie wektora wyjsciowego u08 mport = MOTOR_PORT; mport &= ~MOTOR_MASK; mport = pgm_read_byte(&outvector[stepcnt]); MOTOR_PORT = mport; if(stepdir!=motor_pos_left) StepCnt++; if(stepcnt==outvectorsize) StepCnt=0; CurrPos++; else StepCnt ; if(stepcnt==0xff) StepCnt = OutVectorSize 1; CurrPos ; guracyjnych oraz odesłaniu odpowiedzi zgodnie ze specyfikacją protokołu MODBUS do urządzenia nadrzędnego. Kolejną czynnością podejmowaną przez sterownik jest odczyt zmiennej zawierającej stan wciśniętych klawiszy na klawiaturze zewnętrznej i na podstawie tego zostaje zaktualizowana zmienna określająca prędkość silnika oraz jego aktualny stan (zatrzymany, kierunek lewo, kierunek prawo). Procedura odczytywania stanu klawiatury jest wykonywana tylko wtedy, gdy wcześniej za pomocą odpowiedniego rozkazu protokołu MODBUS zostało wybrane sterowanie za pomocą klawiatury. Natomiast jeżeli wybrano sterowanie pracą urządzenia za pomocą komputera, wówczas procedura nie wykonuje żadnych czynności, co uniemożliwia wydawanie sterownikowi sprzecznych rozkazów z komputera i zewnętrznej klawiatury. Kolejną czynnością wykonywaną przez sterownik jest analiza sytuacji alarmowych, których wystąpienie powoduje ustawienie odpowiednich flag alarmów. W procedurze obsługi sygnałów alarmowych analizowany jest stan wyłączników krańcowych oraz napięcie zasilające i prąd silnika. W przypadku wystąpienia odpowiedniego sygnału z czujnika krańcowego lub przekroczenia wcześniej ustawionych dopuszczalnych parametrów silnika, ustawiane są odpowiednie znaczniki. Na podstawie flag alarmów i sygnałów wejściowych wysyłane są właściwe rozkazy do modułu odpowiedzialnego za bezpośrednie sterowanie silnika. Ostatnią czynnością jest aktualizacja stanu urządzenia za pomocą diod LED. Jeżeli flaga alarmu od przekroczenia napięcia lub prądu jest ustawiona, wówczas wywoływana jest funkcja, która aktywuje miganie czerwonej diody informującej o wystąpieniu sytuacji awaryjnej. Gdy silnik obraca się w lewo wówczas uaktywniane jest błyskanie diody żółtej, natomiast w przypadku obrotu w prawo włączana jest dioda czerwona. W przypadku uaktywnienia odpowiedniej flagi oznaczającej zatrzymanie silnika na czujniku krańcowym, zaświecana jest na stałe dioda zielona lub żółta oznaczająca kierunek ruchu. Sterowanie liniami załączającym poszczególne uzwojenia silnika odbywa się z wykorzystaniem procedury przerwania od układu porównującego licznika, który został przedstawiony na list. 1. Wirowanie silnika następuje w wyniku podawania wektorów sterujących zawartych w odpowiednich tablicach, które następnie są bezpośrednio wysyłane do portu wyjściowego. W sterowniku zdefiniowano po dwie tablice wektorów dla silnika 4 fazowego oraz 2 fazowego, dla trybu pełno oraz pół krokowego. Prędkość wirowania silnika zależy od szybkości zmian wektorów sterujących, więc jest zależny od częstotliwości zgłaszania przerwań, a kierunek obrotów zależy od kolejności wystawiania wektorów. Oprócz sterowania pracą silnika w procedurze przerwania obliczana jest także liczba kroków wykonanych przez silnik, a w przypadku, gdy silnik wykonuje ruch do określonej pozycji w momencie zrównania się licznika pozycji z wartością zadaną następuje zatrzymanie silnika w wyniku wywołania funkcji StopMotorHw(). Procedura ta zatrzymuje układ czasowo licznikowy oraz w zależności od flagi określającej czy silnik ma zachować moment obrotowy, następuje wyzerowanie lub nie linii portów wyjściowych, co powoduje wyłączenie prądu zasilającego uzwojenia silnika. Montaż i uruchomienie Schemat montażowy sterownika został przedstawiony na rys. 3. Całość została wykonana na płytce jednostronnej z wykorzystaniem elementów przewlekanych oraz SMD. Montaż rozpoczynamy od wlutowania zworek z kawałków drutu, a następnie rezystorów SMD oraz kondensatorów od strony druku. Po stronie elementów montujemy teraz elementy dyskretne od najmniejszych do największych, a po nich złącza. Kolejny etap to montaż układów scalonych od strony elementów. Są to: wzmacniacz operacyjny U1 oraz układ ULN2803 (U4), a na koniec układ scalony MAX232 (U5) oraz procesor (U2). W urządzeniu zastosowano złącza ARK. Złącze ISP (J2) służące do programowania oraz złącze klawiatury (J1) to typowe goldpiny. Jeżeli nie planujemy stosowania zewnętrznej klawiatury, złącza J2 można nie montować. W analogowym torze pomiarowym zaleca się WYKAZ ELEMENTÓW Rezystory R12: 0,1 V/1 W R9, R11: 200 kv R1, R3, R10: 22 kv R2: 2,2 kv R4, R5: 47 kv R6, R7, R8: 510 V R14, R15: 5,1 kv Kondensatory C17: 1000 mf/25 V C12: 100 nf C13: 100 mf/25 V C5, C14...C16, C18...C20: 10 mf/ 25 V C8, C9: 22 pf C11: 470 nf Półprzewodniki U2: ATmega8 (TQFP32) D4: BY299 U1: LM358 U3: LM7805 U5: MAX232A U4: ULN2803A(18) D1, D2, D3: dioda LED 5 mm Inne X2: rezonator kwarcowy 6 MHz J6: złącze J3, J4, J5, J7: złącze ARK3 J1, J2: złącze szpilkowe 2,54 mm L1: dławik 15 mh 27

Rys. 3. Schemat montażowy Rys. 4. Ustawienie fusebitów użyć rezystorów o tolerancji 1%, jednak w ostateczności można użyć rezystorów 5%, ponieważ urządzenie umożliwia automatyczną korekcję mierzonych wartości. W tym przypadku należy się liczyć z tym, że rezystory 5% mają gorszą stabilność temperaturową, ale z uwagi na orientacyjną wartość pomiarów nie powinno to mieć większego znaczenia. Uruchomienie układu rozpoczynamy od sprawdzenia poprawności montażu oraz podłączenia do złącza J6 napięcia za- silającego o wartości 8...35 V. Następnie należy zmierzyć wartość napięcia zasilającego doprowadzonego do procesora oraz wzmacniacza operacyjnego, które powinno wynosić 5 V. Gdy już będziemy pewni o prawidłowości zasilania wszystkich układów możemy przystąpić do wgrania oprogramowania do mikrokontrolera za pomocą programatora ISP. W celu zaprogramowania mikrokontrolera, do złącza J2 należy podłączyć programator ISP, a na komputerze PC uruchomić program umożliwiający zaprogramowanie procesora, np. PonyProg. Po wybraniu odpowiedniego typu procesora (ATmega8) należy go zaprogramować plikami ssk.hex oraz ssk.eep zawierającymi obraz pamięci Flash oraz EEPROM. Następnie weryfikujemy poprawność programowania. Po zaprogramowaniu procesora pozostało nam jeszcze odpowiednie ustawienie fusebitów, tak jak przedstawiono to na rys. 4. Po zakończeniu programowania możemy odłączyć programator i odłączyć oraz podłączyć napięcie zasilające. Jeżeli cały proces programowania przebiegł pomyślnie, w momencie dołączenia napięcia zasilającego wszystkie diody LED powinny się zapalić na 0,5 s, a następnie zgasnąć. Lucjan Bryndza, EP lucjan.bryndza@ep.com.pl R E K L A M A 28