Biblioteki pakietu STEP 7 Basic 10.5 do RFID (protokół 3964R)

Podobne dokumenty
S Instrukcje programowania instrukcje obsługi Ethernetu

Dokumentacja Techniczna. Czytnik RFID UW-M4GM

RS-H0-05 (K)* Czytnik RFID MHz Mifare. Karta użytkownika

Komunikacja pomiędzy S i S7-300/400 przez Ethernet (1)

dokument DOK wersja 1.0

UW-DAL-MAN v2 Dotyczy urządzeń z wersją firmware UW-DAL v5 lub nowszą.

MODBUS RTU wersja M1.14 protokół komunikacyjny wyświetlaczy LDN

Adresowanie obiektów. Adresowanie bitów. Adresowanie bajtów i słów. Adresowanie bajtów i słów. Adresowanie timerów i liczników. Adresowanie timerów

interfejs szeregowy wyświetlaczy do systemów PLC

MiniModbus 4DO. Moduł rozszerzający 4 wyjścia cyfrowe. Wyprodukowano dla. Instrukcja użytkownika

Instrukcja do oprogramowania ENAP DEC-1

Wyświetlacz alfanumeryczny LCD zbudowany na sterowniku HD44780

APLIKACJA COMMAND POSITIONING Z WYKORZYSTANIEM KOMUNIKACJI SIECIOWEJ Z PROTOKOŁEM USS W PRZETWORNICACH MDS/FDS 5000

Ćwiczenia z S Komunikacja S z miernikiem parametrów sieci PAC 3200 za pośrednictwem protokołu Modbus/TCP.

Kod produktu: MP01611

Kurs Zaawansowany S7. Spis treści. Dzień 1

Materiały dodatkowe Krótka charakterystyka protokołu MODBUS

Działanie i charakterystyka sterownika GE FANUC VersaMaxNano

Komunikacja z wykorzystaniem Protokołu TCP oraz funkcji AG_SEND/AG_RECV

Kurs Projektowanie i programowanie z Distributed Safety. Spis treści. Dzień 1. I Bezpieczeństwo funkcjonalne - wprowadzenie (wersja 1212)

ADVANCE ELECTRONIC. Instrukcja obsługi aplikacji. Modbus konfigurator. Modbus konfigurator. wersja 1.1

1 Moduł Diagnostyki Sieci

1 Moduł Modbus ASCII/RTU

1. Cel ćwiczenia. Celem ćwiczenia jest zestawienie połączenia pomiędzy dwoma sterownikami PLC za pomocą protokołu Modbus RTU.

Standard transmisji równoległej LPT Centronics

Spis treści. 1 Moduł Modbus TCP 4

Transmisja danych z wykorzystaniem interfejsu Modubs/TCP

Architektura komputerów. Układy wejścia-wyjścia komputera

RS485 MODBUS Module 6RO

asix4 Podręcznik użytkownika CAN_AC_PCI - drajwer protokołu CANBUS dla karty CAN_ACx_PCI Podręcznik użytkownika

1 Moduł Modbus ASCII/RTU 3

Instrukcja użytkownika ARSoft-WZ1

Współpraca falownika SINAMICS G110 ze sterownikiem S7-1200

PLC1: Programowanie sterowników logicznych SIEMENS SIMATIC S7-300/400 - kurs podstawowy

Ogólne zasady zestawiania połączeń modemowych pomiędzy sterownikami serii PCD firmy SAIA- Burgess Electronics oraz komputerem systemu asix

Rozdział ten zawiera informacje na temat zarządzania Modułem Modbus TCP oraz jego konfiguracji.

Hardware mikrokontrolera X51

1.2 Schemat blokowy oraz opis sygnałów wejściowych i wyjściowych

CM ModBus RTU Slave Danfoss MCD3000 Master

Technika Mikroprocesorowa Laboratorium 5 Obsługa klawiatury

Sterownik procesorowy S-2 Komunikacja RS485 MODBUS

Sterownik RO WS-01E opis działania, obsługa

RS485 MODBUS Module 6RO

Dokumentacja Techniczna. Konwerter USB/RS-232 na RS-285/422 COTER-24I COTER-24N

Konfiguracja sterowników Horner APG do pracy w trybie Modbus RTU Master

Protokół IEC

Pomoc dla użytkowników systemu asix 6. Strategia buforowa

SmartDRIVE protokół transmisji szeregowej RS-485

Data utworzenia Data aktualizacji Korekta 3 Il. stron 7

Język FBD w systemie Concept

Spis treści. Dzień 1. I Konfiguracja sterownika (wersja 1410) II Edycja programu (wersja 1406) III Środowisko TIA Portal (wersja 1410)

INSTRUKCJA OBSŁUGI PRZYSTAWKI PEN-01 DO PENDRIVE A

Komunikacja w sieci Industrial Ethernet z wykorzystaniem Protokołu S7 oraz funkcji BSEND/BRCV

CR232.S v2 KONWERTER CAN / RS232

Wymagania programowe: STEP 7 STEP 7-Micro/Win

Industrial Ethernet Dokumentacja techniczna połączenia Sterowniki S7-400(300) firmy Siemens - System PRO-2000 firmy MikroB

asix5 Podręcznik użytkownika Strategia buforowa

Komunikacja w mikrokontrolerach Laboratorium

2. Format danych i zaimplementowane funkcje MODBUS

CENTRALKA DETCOM.3 DO DETEKTORÓW SERII 3.3

Adres rejestru. szesnastkowo. Typ zmiennej. Numer funkcji Modbus. Opis zmiennej. (dziesiętnie)

SYSTEM E G S MODUŁ ML/A-1m wersja V32.1

RS485 MODBUS Module 6RO

INSTRUKCJA OBSŁUGI. Przekaźnik czasowy ETM ELEKTROTECH Dzierżoniów. 1. Zastosowanie

Kod produktu: MP01611-ZK

Kurs Podstawowy S7. Spis treści. Dzień 1

LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Przetwornik ADC procesora sygnałowego F/C240 i DAC C240 EVM

Sterowniki programowalne. System GE Fanuc serii Zasady działania systemu (część I)

asix4 Podręcznik użytkownika CANOPEN drajwer protokołu CANBUS dla karty PCI_712 NT Podręcznik użytkownika

S i Ethernet. S i Ethernet AUTOMATYKA I MECHATRONIKA

Programowanie sterowników przemysłowych / Jerzy Kasprzyk. wyd. 2 1 dodr. (PWN). Warszawa, Spis treści

ĆWICZENIE 7. Wprowadzenie do funkcji specjalnych sterownika LOGO!

Instrukcja obsługi. Terminal SD for DB25 CNC

RS-H0-06 BZ M12. Czytnik RFID MHz Mifare. Karta produktu

Instrukcja integracji urządzenia na magistrali Modbus RTU. wersja 1.1

1W-H3-04P (K)* *Litera K odnosi się do wersji czytnika ze wspólną katodą. Czytnik RFID 125 khz Unique. Karta produktu

FAQ: /PL Data: 09/06/2012. Zastosowanie zmiennych Raw Data Type WinCC v7.0

Funkcje sterownika CellBOX-UxR ModBUS RTU

asix4 Podręcznik użytkownika AS512 - drajwer protokołu AS512 dla SIMATIC S5 Podręcznik użytkownika

Mini Modbus 1AI. Moduł rozszerzający 1 wejście analogowe, 1 wyjście cyfrowe. Wyprodukowano dla

Katedra Inżynierii Systemów Sterowania WEiA PG. Przemysłowe Sieci Informatyczne Laboratorium

TECHNIKA MIKROPROCESOROWA

Konfiguracja i programowanie PLC Siemens SIMATIC S7 i panelu tekstowego w układzie sterowania napędami elektrycznymi. Przebieg ćwiczenia

MiniModbus 4DI-M. Moduł rozszerzający 4 wejścia cyfrowe z pamięcią liczników. Wyprodukowano dla

2. Architektura mikrokontrolerów PIC16F8x... 13

asix4 Podręcznik użytkownika MELSECA - drajwer dedykowanego protokołu sterowników MITSUBISHI Podręcznik użytkownika

Ogólne przeznaczenie i możliwości interfejsu sieciowego przepływomierza UniEMP-05 z protokołem MODBUS. ( )

SM210 RS485 - JBUS/MODBUS dla SM102E. Æ Instrukcja obsługi

Moduł RS232 E054. TAP - Systemy Alarmowe Sp. z o. o. os. Armii Krajowej Poznań tel ; fax:

Konfiguracja parametrów pozycjonowania GPS /5

Aby w pełni przetestować układ o trzech wejściach IN_0, IN_1 i IN_2 chcemy wygenerować wszystkie możliwe kombinacje sygnałów wejściowych.

Kod produktu: MP01611-ZK

1W-H3-05(K)* Czytnik RFID 125 khz Unique. Instrukcja

asix4 Podręcznik użytkownika DMS500 - drajwer protokołu analizatorów DURAG DMS 500 Podręcznik użytkownika

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

Instrukcja Obsługi. Modułu wyjścia analogowego 4-20mA PRODUCENT WAG ELEKTRONICZNYCH

Zwory na płycie z łączem szeregowym ustawienie zworek dla programowania.

Spis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne

SYGNALIZATORY MIEJSCA ZWARCIA W SIECI KABLOWEJ SN Z SERII SMZ-4DM INSTRUKCJA OBSŁUGI PRZEZ PROTOKÓŁ MODBUS RTU

Opis protokołu komunikacyjnego Profibus mlewnika FM07

Transkrypt:

Biblioteki pakietu STEP 7 Basic 10.5 do RFID (protokół 3964R) Systemy RFID powoli zajmują dominującą pozycję na rynku identyfikacji bezstykowej. Coraz częściej czytniki tego typu są także integrowane w systemach sterowania automatycznego. Dzięki nim automatyzowane są procesy logistyczne, mogą powstawać także niemal bezobsługowe magazyny, często spotykamy się z nimi także w codziennym życiu (sklepach, na basenach, parkach rozrywki itp.). Szybką integrację systemów RFID umożliwiają m.in. takie rozwiązania jak przedstawiona w artykule biblioteka dla pakietu STEP 7. Biblioteka "rfid" zajmuje 12,6 kb w pamięci głównej sterownika S7-1200. W celu umożliwienia komunikacji z urządzeniem RFID funkcja "rfid_run" musi być wywoływana cyklicznie. Blok danych "rfid" zawiera wszystkie zmienne potrzebne do działania funkcji "rfid_run". Bloki danych grupy "_com_db" są zarezerwowane dla konfiguracji i pracy modułu komunikacyjnego RS232. Blok programowy "rfid_run" zawiera wszystkie funkcje odnoszące się do konfiguracji i inicjalizacji sterownika SIMATIC S7-1200 oraz komunikacji z urządzeniem RF300. Funkcja jest podzielona na cztery procedury INIT, RESET, RCV i WRITE. Wykaz zakresów ciągów kroków (step chain) zestawiono w tabeli 1 (rysunek 1). Na etapie konfiguracji programu STEP 7 Basic 10.5 moduł komunikacyjny RS232 musi być umieszczony w kieszeni dla modułów urządzenia S7-1200, chociaż sama konfiguracja jest wykonywana wyłącznie z użyciem biblioteki. Procedury RCV i WRITE (tabela 2) znajdują się po uruchomieniu w stanie oczekiwania wewnątrz pętli. Gdy transponder RF300 znajdzie się w zasięgu pola, rozpoczyna się wykonywanie odpowiedniej procedury, a następnie program powraca do pętli oczekiwania (licznik kroków 301 lub 401 ). Schemat blokowy programu z rysunku 2 ilustruje zasadę start-stop działania procedur zawartych w funkcji "rfid_run". Na etapie inicjalizacji każdy krok jest monitorowany. Jeżeli któryś z kroków nie może zostać wykonany, pojawia się odpowiedni komentarz w słowie statusu. Proces 134 ELEKTRONIKA PRAKTYCZNA 11/2011

Biblioteki pakietu STEP 7 Basic 10.5 do RFID (protokół 3964R) Tabela 1. Wykaz zakresów ciągów kroków (step chain) Procedura Dane wejściowe Zakres kroków INIT start_init 100 do 199 RESET start_reset 200 do 299 RCV start_rcv stop_rcv 300 do 399 WRITE start_write stop_write 400 do 499 Rysunek 1. Tabela 2. Wykaz procedur z ich warunkami uruchomienia i zatrzymania Procedura Warunek startu Warunek stopu INIT RESET RCV WRITE Dodatnie zbocze na wejściu cyfrowym start_init Dodatnie zbocze na wejściu cyfrowym start_reset Dodatnie zbocze na wejściu cyfrowym start_rcv Dodatnie zbocze na wejściu cyfrowym start_write Pomyślne wykonanie Pomyślne wykonanie Dodatnie zbocze na wejściu cyfrowym stop_rcv Dodatnie zbocze na wejściu cyfrowym stop_write inicjalizacji jest wówczas zatrzymywany. Jeżeli powyższy ciąg kroków kończy się, z pozytywnym lub negatywnym wynikiem, po upływie Rysunek 2. ELEKTRONIKA PRAKTYCZNA 11/2011 pięciu sekund, wówczas proces zostaje anulowany (rysunek 3). Ten przypadek może wystąpić na przykład w razie braku połączenia między sterownikiem S7-1200 i czytnikiem RF300. Moduł komunikacyjny RS232 sterownika S7-1200 po zakończeniu procedury INIT jest przygotowany do obsługi protokołu 3964R. Po wykonaniu tej procedury moduł zostaje skonfigurowany jak pokazano w tabeli 3. Oprócz konfiguracji interfejsu komunikacyjnego, procedura detekcji nadchodzących danych jest sparametryzowana. Konfiguracja jest obsługiwana za pośrednictwem bloku danych _ RCV_CFG_CONDITIO- N[DB732] (tabela 4). Ze względu na to, że czas odpowiedzi czytnika RF300 jest rzędu milisekund, następny odbierany znak musi Rysunek 3. Tabela 3. Konfiguracja modułu komunikacyjnego Nr Parametr Wpis 1. Protokół komunikacyjny Rysunek 4. Rysunek 5. Protokół punktpunkt 2. Szybkość transmisji 19,2 kbitów/s 3. Liczba bitów danych 8 bitów danych na znak 4. Parzystość Nieparzysta liczba jedynek 5. Bity stopu Jeden bit stopu 135

Rysunek 6. W przeciwieństwie do rozwiązania stosowanego w S7-200, rozwiązanie przyjęte w sterowniku S7-1200 jest oparte na dwukierunkowej transmisji szeregowej. Oznacza to, że możliwa jest praca with presence message. Można wówczas zaprojektować dynamiczny proces identyfikacji. Tabela 4. Konfiguracja bloku danych Nr Parametr Wpis 1. Warunek startowy Dowolny znak (po wykryciu czasu nieaktywności) 2. Czas oczekiwania linii zanim można rozpocząć odbiór 0 odstępów bitowych 3. Znak startu bez znaczenia 4. Znak stopu bez znaczenia 5. Warunek zakończenia Przekroczenie czasu w granicach sekwencji kroków 6. Maksymalna długość bez znaczenia 7. Długość pola komunikatu (N, LEGTHSIZE, LENGTHM) bez znaczenia 8. Przekroczenie czasu odpowiedzi bez znaczenia 9. Przekroczenie czasu komunikatu bez znaczenia 10. Przekroczenie czasu w ramach sekwencji kroków 12 odstępów bitowych Rysunek 7. Tabela 5. Anulowanie procedury RCV Aktywna procedura Wynik Za pomocą procedury RCV jest poprawnie wykrywany komunikat presence, Procedura RCV po czym można wykonać następne kroki procedury RCV. Jeżeli sterownik S7-1200 nie jest w stanie wykonywania procedury RCV, komunikat presence nie może zostać wykryty i potwierdzony. Powoduje to Inna procedura wygenerownie przez czytnik komunikatu o błędzie. Konieczne jest wyzerowanie czytnika RF300 (telegram RESET). zostać rozpoznany jako nowy komunikat (patrz tabela 4, punkty 1 i 2) natychmiast po zakończeniu procedury odbioru (patrz tabela 4, pkt. 10). Po włączeniu zasilania czytnika RF300 jest wysyłany znak sterujący STX (hex: 02) z różnymi szybkościami transmisji. Sekwencja ta jest powtarzana do chwili, gdy partner tego połączenia, w tym przypadku sterownik S7-1200, odpowie na wysłany znak sterujący STX w odpowiednim czasie (rysunek 4). Ponieważ moduł komunikacyjny sterownika S7-1200 jest skonfigurowany, poprzez procedurę "INIT", do pracy z szybkością 19,2 kb/s, bezbłędny odbiór znaku STX nastąpi tylko w trakcie odpowiedniej sekwencji (19,2 kb/s + sygnały RS232) wysyłanej przez czytnik RF300. Wszystkie inne znaki zostają uznane za niewłaściwe i odrzucone przez procedurę inicjalizacji (rysunek 5). Po wykryciu przez sterownik S7-1200 znaku STX, natychmiast jest wysyłane do czytnika RF300 potwierdzenie w postaci znaku sterującego DLE (hex: 10) rysunek 6. Po wykonaniu tego kroku procedura inicjalizacji zostaje zakończona. W trakcie procedury RESET następuje wysłanie telegramu do czytnika RF300, po czym zostaje sprawdzona otrzymana odpowiedź. Telegram RESET musi być koniecznie wysłany do czytnika RF300 przed wszystkimi innymi telegramami. Zatem procedurę RESET należy wywołać bezpośrednio po procedurze "INIT". W dalszym przebiegu pracy można także używać telegramów RESET do kasowania błędnych stanów czytnika RF300. Telegram ten można wysłać do czytnika RF300 w każdej chwili. Podczas tej procedury monitorowany jest każdy krok pod względem poprawności odpowiedzi. Jeżeli jakiś krok nie może zostać wykonany, powoduje to wpisanie odpowiedniego komentarza do słowa statusu. Następuje wówczas anulowanie procedury RESET. Jeżeli powyższy ciąg kroków nie zakończy się, to proces zostaje anulowany po upływie limitu czasu równego dwie sekundy (rysunek 7). Rozkaz RESET powoduje sprowadzenie czytnika RF300 do ściśle zdefiniowanego stanu. Parametry transmisji wyznaczają sposób działania systemowego (tryb pracy) czytnika RF300. Stosowanie domyślnych ustawień bloków bibliotecznych powoduje ustawienie "operation with Rysunek 8. presence message". Poza tym zostaje zgaszona dioda LED sygnalizująca błąd. Stosowany jest tryb RF300 "telegram mode". Tryb ten może być wybrany przez użytkownika w zależności od użytegotranspondera RF300. Funkcjonalność bloków bibliotecznych zostaje zachowana także w trybie ISO. Bezpośrednio po odebraniu telegramu RESET czytnik RF300 zwraca potwierdzenie do modułu komunikacyjnego RS232. Po uznaniu potwierdzenia za poprawne, procedura zostaje zakończona. W trakcie procedury RCV następuje wysłanie telegramu do czytnika RF300, a następnie zostaje sprawdzona otrzymana odpowiedź (rysunek 9). Podczas tej procedury monitorowany jest każdy krok pod względem poprawności odpowiedzi. Jeżeli jakiś krok nie może zostać wykonany, powoduje to wpisanie odpowiedniego komentarza do słowa statusu. Następuje wów- Rysunek 9. czas anulowanie procedury RCV (rysunek 10, tabela 5). Powyższy ciąg kroków nie kończy się w wyniku pomyślnego wykonania, ale pozostaje na określonej pozycji w ciągu kroków Rysunek 10. 136 ELEKTRONIKA PRAKTYCZNA 11/2011

Biblioteki pakietu STEP 7 Basic 10.5 do RFID (protokół 3964R) Tabela 6. Zmienne wejściowe i wyjściowe funkcji rfid_run Nr Nazwa Kierunek przekazy-wania Typ danych Opis/uwagi 1. EN IN(FC) BOOL Aktywuje podprogram 2. start_init IN(FC) BOOL Uruchamia proces inicjalizacji interfejsu oraz wykrywania szybkości transmisji. 3. start_reset IN(FC) BOOL Uruchamia proces wysyłania telegramu RESET. 4. start_rcv IN(FC) BOOL Uruchamia proces odczytu danych z transpondera RF300 za pomocą czytnika RF300. 5. stop_rcv IN(FC) BOOL Kończy procedurę RCV jeżeli nie jest obsługiwany żaden transponder. Funkcja "rfid_run" wykrywa dodatni sygnał w ciągu kilku cykli zegarowych CPU do chwili wystąpienia warunków zakończenia procedury RCV. Powinna być resetowana tylko przez program użytkownika po pomyślnym zakończeniu procedury RCV (należy sprawdzić słowo statusu). Po poprawnym zakończeniu procedury RCV zmienna "return_done" przyjmuje wartość "TRUE". 6. start_write IN (FC) BOOL Uruchamia proces zapisu do transpondera RF300 za pośrednictwem czytnika RF300. 7. stop_write IN (FC) BOOL Zatrzymuje procedurę WRITE jeżeli nie trwa zapis żadnego transpondera RF300. Funkcja "rfid_run" wykrywa dodatni sygnał w ciągu kilku cykli zegarowych CPU do chwili wystąpienia warunków zakończenia procedury WRITE. Po pomyślnym zakończeniu procedury WRITE zmienna "return_done" przyjmuje wartość "TRUE". 8. cmd_length IN (DB) BYTE Obowiązuje w połączeniu z procedurami RCV i WRITE. Określa długość danych do zapisu lub odczytu. Maksymalna wartość: 248. Wartość zabroniona: 0. 9. cmd_address IN (DB) INT Obowiązuje w połączeniu z procedurami RCV i WRITE. Określa adres początkowy (hex) danych do zapisu lub odczytu. Zależy od zastosowanego transpondera RF300. Więcej informacji: RF300 System Manual rozdz. 6.2, ID: 21738946 patrz rysunek 1.16 10. cmd_data_to_ write IN (DB) STRING 11. return_done OUT (DB) BOOL 12. return_error OUT (DB) BOOL 13. return_rcv_ok OUT (DB) BOOL 14. return_write_ok OUT (DB) BOOL 15. return_status OUT (DB) Word 16. Return_transponder_content OUT(DB) STRING Obowiązuje w połączeniu z procedurą WRITE. Określa dane do zapisu do transpondera RF300. Maksymalna długość: 248. Specyfikuje bezbłędny przebieg dowolnej procedury funkcji rfid_run. Początkowo (po starcie CPU) ma wartość logiczną "TRUE". Ma wartość "TRUE" (jeżeli ostatnia procedura zakończyła się poprawnie) aż do startu nowej procedury. Specyfikuje bezbłędny przebieg dowolnej procedury funkcji rfid_run. Ma wartość "TRUE" (jeżeli ostatnia procedura zakończyła się niepoprawnie) aż do startu nowej procedury. Musi być zawsze badana razem ze zmienną "return_status". Specyfikuje pomyślny odczyt danych z transpondera RF300. Obowiązuje zawsze w połączeniu ze zmienną return_transponder_content. Przyjmuje wartość TRUE dla pewnych okresów CPU i powinna być kontrolowana za pośrednictwem wykrywania zbocza. Specyfikuje pomyślny zapis danych do transpondera RF300. Przyjmuje wartość TRUE dla pewnych cykli CPU i powinna być kontrolowana za pośrednictwem wykrywania zbocza. Może być używana po wystąpieniu błędów do określenia źródła błędu. Obowiązuje zawsze w połączeniu ze zmienną "return_error". Jest to wartość licznika ciągu kroków "step_cnt" z bloku danych "[DB730]" pomnożona przez 10. Podaje bezpośrednią informację o kroku powodującym powstanie błędu w funkcji "rfid_run". Jest opisana dalej w rozdziale 4. Specyfikuje dane odczytane z transpondera RF300. Obowiązuje zawsze w połączeniu ze zmienną "return_rcv_ok". Zawiera po prostu kopię danych użytkownika bez znaków sterujących. Należy ją przetwarzać natychmiast po uaktywnieniu wyjścia "return_rcv_ok". Rysunek 11. ELEKTRONIKA PRAKTYCZNA 11/2011 w celu powtórnego wykonania w razie konieczności. Jeżeli transponder RF300 pojawia się w obszarze detekcji czytnika RF300, następuje samoczynne wysłanie komunikatu presence do sterownika S7-1200 (rysunek 11). Procedura RCV umożliwia odczytanie z transpondera danych użytkownika. Na przykład transponder typu RF340 ma pamięć FRAM o pojemności 8 kb oraz pamięć EEPROM o pojemności 20 bajtów (mapa pamięci na rysunku 12). Za pomocą telegramu READ dane są odczytywane z transpondera. Przekazywane parametry (adres początkowy i długość) Podczas wykrywania szybkości transmisji czytnik RF380R zmienia zarówno szybkość, jak również typ interfejsu. Różne prędkości są testowane w standardach RS422 oraz RS232. 137

Procedura RCV automatycznie wykrywa czy transponder jest wsuwany, czy wysuwany z obszaru detekcji. Jeżeli więcej niż jeden transponder RF300 znajduje się w obszarze detekcji, czytnik RF300 wysyła komunikat o błędzie. Wówczas czytnik RF300 musi zostać wyzerowany (telegramem RESET). Rysunek 13. Rysunek 12. Rysunek 15. określają jakie dane i z jakiego obszaru pamięci mają zostać odczytane (rysunek 13). Czytnik RF300 reaguje natychmiast na telegram READ potwierdzeniem zawierającym żądane dane użytkownika (rysunek 14). Po sprawdzeniu ważności potwierdzenia, dane użytkownika są gotowe do pobrania i wpisania do oddzielnej zmiennej. Zarówno znaki sterujące, jak i informacje o statusie zostają usunięte. Na tym kończy się wykonywanie procedury i ciąg kroków pozostaje w pętli oczekiwania (patrz step chain = 301 na rysunku 1.2). Za pośrednictwem procedury WRITE następuje wysłanie telegramu do czytnika RF300 i następnie przetworzenie otrzymanego potwierdzenia (rysunek 15). Podczas tej procedury monitorowany jest każdy krok pod względem poprawności odpowiedzi. Jeżeli jakiś krok nie może zostać wykonany, powoduje to wpisanie odpowiedniego komentarza do słowa statusu. Następuje wówczas anulowanie procedury WRITE. Powyższy ciąg kroków nie kończy się w wyniku pomyślnego wykonania, ale pozostaje na określonej pozycji w ciągu kroków w celu powtórnego wykonania w razie konieczności. Dane użytkownika można wpisać do określonego obszaru pamięci transpondera RF300 za pomocą telegramu WRITE. Przesyłane parametry adres początkowy i długość określają miejsce w pamięci transpondera, które ma być wypełnione danymi użytkownika (rysunek 16). Rysunek 14. Tab. 7. rfid[db730] return_status Wartość statusu Znaczenie 1000 Przekroczony timeout w procedurze INIT. 2000 Przekroczony timeout w procedurze RESET. 2050 Niepomyślny przebieg uzgodnienia 3964R. Brak gotowości czytnika RF300 do odbioru telegramu RESET. 2090 Nie odebrano potwierdzenia 3964R. Telegram RESET od urządzenia S7-1200 został rozpoznany przez czytnik RF300 jako nieważny i odrzucony. 2120 Nie odebrane żądanie transmisji 3964R. Żądanie wysłania potwierdzenia telegramu dla telegramu RESET nie zostało wysłane przez czytnik RF300. 2160 Potwierdzenie telegramu wysłane przez czytnik RF300 nie zostało rozpoznane przez urządzenie S7-1200 jako ważne. 3080 Telegram presence uznany za błędny. 3130 Niepomyślne początkowe uzgodnienie 3964R. Czytnik RF300 nie gotowy do odbioru telegramu READ. 3200 Nieodebrane żądanie nadawania 3964R. Czytnik RF300 nie wysyła żądania wysłania telegramu odpowiedzi na telegram READ. 3240 Telegram odpowiedzi na telegram READ wysłany przez czytnik RF300 nie został rozpoznany przez urządzenie S7-1200 jako ważny. 4080 Telegram presence uznany za błędny. 4130 Niepomyślny przebieg uzgodnienia 3964R. Brak gotowości czytnika RF300 do odbioru telegramu WRITE. 4200 Nie odebrano potwierdzenia 3964R. Telegram WRITE od urządzenia S7-1200 został rozpoznany przez czytnik RF300 jako nieważny i odrzucony. 4230 Telegram odpowiedzi na telegram WRITE wysłany przez czytnik RF300 nie został rozpoznany przez urządzenie S7-1200 jako ważny. Czytnik RF300 odpowiada natychmiast na telegram WRITE wysyłając potwierdzenie (rysunek 17). Po sprawdzeniu ważności potwierdzenia kończy się wykonywanie procedury i ciąg kroków pozostaje w pętli oczekiwania (patrz step chain = 401 na rysunku 2). Interfejs biblioteki W tabeli 6 przedstawiono najważniejsze zmienne wejściowe i wyjściowe funkcji rfid_ run. Dzielą się one na zmienne wewnętrzne funkcji, tymczasowe, oraz zmienne globalne w bloku danych. Każda procedura zawarta w funkcji "rfid_ run" podaje informacje o przyczynie błędu powodującego niepoprawne zakończenie tej procedury, za pomocą sumarycznego słowa statusu w bloku danych "rfid[db730]". Adresem symbolicznym zmiennej jest "return_status" (tabela 7). Słowo statusu jest wyprowadzane w postaci liczby dziesiętnej i ma znaczenie podane w poniższej tabeli. Te wartości statusu nie mają nic wspólnego z numerami błędów wewnętrznych urządzenia RFID. Tomasz Starak Opracowano na podstawie dokumentacji firmy Siemens. Rysunek 16. Rysunek 17. 138 ELEKTRONIKA PRAKTYCZNA 11/2011