Przetwornik analogowo­ – cyfrowy

wejscie-adc-s7-1200

Każdy układ logiczny wykorzystuje informacje w postaci cyfrowej do każdego typu obliczeń. Zewnętrzne sygnały, jak temperatura czy ciśnienie, zmieniają się w sposób ciągły, czyli analogowy. Jedynym sposobem odczytania tych sygnałów przez sterownik PLC jest użycie przetwornika analogowo­cyfrowego ADC (ang. Analog­Digital Converter).

Przetwornik analogowo – ­cyfrowy

Dzięki temu sygnał ciągły jest zamieniany na sygnał cyfrowy, który jest reprezentowany liczbą. W mikrokontrolerach obsługa przetwornika polega na ustawieniu czasu próbkowania za pomocą preskalera, wybraniu trybu wyzwalania, określeniu napięcia odniesienia oraz ewentualnej konfiguracji przerwań. W sterownikach jest podobnie, ale bez konieczności ustawiania rejestrów.

Rodzina S7­1200 ma dwa wbudowane kanały napięciowe z zakresem 0…10 V. Rozdzielczość każdego kanału wynosi 10 bitów. Moduły rozszerzeń mają większe rozdzielczości (do 13 bitów i możliwość pomiaru napięć symetrycznych lub prądu w zakresie 0…20 mA). Przetwornik działa na zasadzie konwersji aktualnej wartości.

Konfiguracja

Każdy z kanałów jest włączony cały czas i nie ma możliwości ich wyłączenia. Do ustawienia parametrów przetwornika należy posłużyć się zakładką AI2 w konfiguracji sprzętowej sterownika z TIA Portal. Na poniższym rysunku przedstawiono ustawienia konfiguracyjne przetwornika ADC.

s7-1200-konfiguracja-adc

Możemy ustawić:

a) Integration time – czas całkowania, który dotyczy wszystkich kanałów
– 60 Hz (16,6 ms),
– 50 Hz (20 ms),
– 10 (100 ms).
b) Smoothing – czas wygładzania
– None (1 cycle),
– Weak (4 cycles),
– Medium (16 cycles),
– Strong (32 cycles).

Domyślnie jest również zaznaczona opcja Enable overflow diagnostics, która powoduje wywołanie bloku diagnostycznego OB82 w przypadku przekroczenia zakresu pomiarowego. Blok ten można dodać do projekt.

Czas wygładzenia i opcję Enable overflow diagnostics ustawia się oddzielnie dla kanału 2.

Domyślne ustawienia to czas całkowania 50 Hz oraz czas wygładzenia Week (4 cycles), co daje czas odpowiedzi 93 ms [28]. Gdy napięcie się zmieni, wtedy otrzymamy nową wartość po 93 ms. Kanały działają w trybie wyzwalania ciągłego.

Wartości zmierzonego przez przetwornik napięcia jest umieszczana pod adresem kanału przetwornika. Odczyt polega na przeniesieniu (przypisaniu) tej wartości z tego adresu do zmiennej typu Word zdefiniowanej przez użytkownika. Wartość zmierzonego napięcia mieści się w przedziale 0…27 648, który jest równoważny dla napięć w przedziale 0 – 10V. Czyli jakaś wartość cyfrowa odpowiadająca aktualnemu napięciu znajduje się w pamięci sterownika. Zakres do 27 648 powoduje, że w pamięci trzeba zarezerwować aż 2 bajty, czyli jedno słowo. Fizyczny adres, gdzie w pamięci sterownika znajduje się przetworzone napięcie można sprawdzić (ewentualnie też zmienić) w konfiguracji sprzętowej sterownika. Gdy otworzysz zakładkę Device overview, to zauważysz przedział adresów, jak na poniższym rysunku

adres-przetwornika-analogowo-cyfrowego-w-konfiguracji-sprzetowej

Domyślnie dla przetwornika ADC zostaje przydzielony obszar w przedziale od 64 do 67. Kanał pierwszy to bajty 64 i 65 a kanał drugi to 66 i 67.

Podłączenie

Przykładowy sposób podłączenia czujnika napięciowych trzyprzewodowego oraz czteroprzewodowego przedstawia poniższy rysunek.

podlaczenie-czujnikatrzyprzewodowego-i-czteroprzewodowego

Praktyczny przykład wykorzystania przetwornika analogowo­ – cyfrowego zostanie opisany już wkrótce.

//————-

Kurs-wideo-CZPP

Więcej w kursie wideo: Chcę zostać programistą PLC

Nagrania są dostępne w wersji online jak również na płytach DVD. Napisz mailem, jaką wersje wybierasz.

Podziel się tym wpisem na:
  • Facebook
  • Google Bookmarks
  • Twitter
  • Wykop

Komentarzy

  1. Adrian

    Fajne podstawy, które przydadzą się absolutnie każdemu :)

    Powtórz

Pozostaw komentarz

Twój adres e-mail nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

Możesz użyć następujących tagów oraz atrybutów HTML-a: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>