Promotic

PmInmat66 - Driver do komunikacji z miernikami ciepła INMAT66/51

Driver ten służy do komunikacji z miernikami ciepła INMAT66/51. Patrz również Komunikacja z miernikami ciepła INMAT (Czechy).

Przed zastosowaniem tego drivera w aplikacji PROMOTIC należy obejżeć "PROMOTIC wideo kurs 4 - Drivery komunikacyjne".

Podstawowe właściwości drivera:
- Zastosowanie tego drivera wymaga zakup licencji PmInmat66. Podczas wytwarzania aplikacji w trybie freeware PmFree lub z licencją deweloperską oraz podczas jej testowania w runtime element ten jest zawsze funkcjonalny.
- Komunikacja jest dla Ethernetu (aplikacja PROMOTIC jest klientem) lub dla łącza szeregowego (COM1, COM2 ...). W chwili obecnej jest zaimplementowana transmisja poprzez Ethernet takich samych danych jak dla łącza szeregowego.
Nawet jeżeli urządzenie nie posiada łącza Ethernet, można do niego podłączyć konwerter "łącze szeregowe-Ethernet" a po stronie aplikacji PROMOTIC wtedy komunikować poprzez Ethernet.
- Aplikacja PROMOTIC jest z punktu widzenia tej komunikacji Master (to znaczy, że wywołuje transmisję danych).
- Driver jest wbudowany do systemu PROMOTIC przy pomocy obiektu PmaComm.
Driver wspiera zastosowanie obiektu PmaCommMsg. Obiekt PmaCommGroup nie można zastosować.
Dla łatwego dodania tego drivera do aplikacji jest dogodne zastosować: Konfiguracje wstępne w grupie "Inmat miernik"
- Komunikacja umożliwia wysyłać wiadomości o wysokim i niskim priorytecie (szczegóły patrz materiały producenta INMATów). Wybór priorytetu wiadomości (jeżeli taki wybór jest możliwy w danej wiadomości) jest ustawiany w parametrach wiadomości.


Driver wspiera następujące typy danych:
- signed int: 2-bajtowa liczba całkowita (od -32 768 do +32 767).
W aplikacji PROMOTIC jest reprezentowany przez typ danych Integer.
- unsigned int: 2-bajtowa liczba całkowita (od 0 do 65 535).
W aplikacji PROMOTIC jest reprezentowany przez typ danych Long.
- long: 4-bajtowa liczba całkowita (od -2 147 483 648 do +2 147 483647).
W aplikacji PROMOTIC jest reprezentowany przez typ danych Long.
- float: 4-bajtowa liczba rzeczywista.
W aplikacji PROMOTIC jest reprezentowany przez typ danych Single.
- string: Ilość znaków jest ograniczona wielkością części wiadomości do przenoszenia danych, może więc zawierać wartość od 0 do 246 bajtów.
Jeżeli jest znana dokładna wielkość tekstu, który znajdzie się w odpowiedzi na wiadomość, wtedy jest konieczne ustawić w karcie "Dane-odbiór" długość odczytywanego tekstu o 1 wyższą (odczytywany jest bowiem również znak końca 0).
Jeżeli długość odczytywanego tekstu w odebranych danych będzie mniejsza niż rzeczywista długość odebranego tekstu, wtedy system zasygnalizuje błąd "66".
Jeżeli dokładna wielkość nie jest znana, wtedy można ustawić wartość maksymalną.


Adresacja urządzenia:
Każde urządzenie (Master i Slave) posiada swój jednoznaczny adres. Adresy mogą znajdować się w zakresie od 0 do 63. Numer stacji sterującej (komputer z systemem PROMOTIC) określa się w parametrach protokołu. Numer stacji odbierającej (INMAT) określa się w danych do odesłania odpowiadającej wiadomości.

Adresacja pamięci:
- Adresacja przy pomocy INX: Adres można wybrać przy pomocy wyboru nazwy pamięci w parametrach wiadomości i system sam dopełni wartość INX. Jeżeli chcemy wpisać bazpośrednio wartość INX, wtedy można wybrać w parametrach wiadomości "Typ pamięci"->"wartość ogólna INX".
- Adresacja przy pomocy segmentu i offsetu: Sposób ten nazywa się adresowaniem fizycznym i spoczywa we wpisaniu wartości segmentu (określa obszar pamięci) i offsetu (adres w obszarze pamięci). INMAT66 posiada 2 obszary pamięci z segmentami 0000H oraz 0010H-0013H:
segment 0000H: W tym segmencie jest do dyspozycji cały obszar pamięci bezpośrednio dostępny procesorem. Tu znajdują się zmienne, część pamięci archiwizacji oraz oprogramowanie. Offset może uzyskiwać wartości od 0000H do FFFFH.
segment 0010H-0013H: Tu zapisywane są dane archiwizacji aż do wielkości 256kB. Offset może uzyskiwać wartości od 0000H do FFFFH. Segment 0010H adresuje pamięć 00000H-0FFFFH, segment 0011H adresuje 10000H-1FFFFH, segment 0012H adresuje 20000H-2FFFFH, segment 0013H adresuje 30000H-3FFFFH. Po zainstalowaniu mniejszej pamięci niż 256kB są właściwe segmenty nieważne.


Zalecone wartości parametrów obiektu PmaComm:

Zalecane wartości dla pozycji Parametry łącza szeregowego:
Komunikacja wykorzystuje interfejs RS485. Z tego powodu zalecamy wykorzystanie inteligentego konwertera sprzętowego, który automatycznie przelącza sygnał RTS (patrz: Drivery komunikacyjne).
Prędkość transmisji9600 Bd
Ilość bitów informacji8
ParzystośćEVEN (parzysty)
Ilość bitów stopu1
Zalecane wartości dla pozycji Parametry Ethernet-klient:
W chwili obecnej jest zaimplementowana transmisja poprzez Ethernet takich samych danych jak dla łącza szeregowego. W tym przypadku można ustawić parametry Ethernetu według parametrów konwertera Ethernet/łącze szeregowe.

Opis komunikacji przy pomocy obiektu PmaCommMsg

Lista oraz opis wiadomości komunikacyjnych:
 
Nazwy wiadomości są zgodne z zaznaczeniem wiadomości w materiałach producenta INMATów. Dokładniejsze informacje patrz materiały producenta.
- Status: Uzyskanie statutu. Nawiązanie komunikacji z INMATem. Jeżeli jest wszystko w porządku, wtedy wartość FC w karcie "Dane-odbiór" jest 0.
- Identify: Odczyt identyfikacji urządzenia. Stwierdzi producenta, typ oraz wersję urządzenia.
- Read: Odczyt jednej wartości. Wiadomość umożliwia odczytać tylko jedną wartość, której typ jest zależny od typu odczytywanej pamięci. Przy pomocy tej wiadomości nie można odczytywać wartości z typów pamięci oznaczonych jako macierz.
- Read item of matrix: Odczyt jednej wartości z macierzy wartości. Wiadomość umożliwia odczytać tylko jedną wartość, której typ jest zależny od typu odczytywanej pamięci. Przy pomocy tej wiadomości można odczytywać tylko wartości z typów pamięci oznaczonych jako macierz.
- Read block of matrix: Odczyt bloku wartości z macierzy. Wiadomość umożliwia odczyt macierzy wartości, której wielkość jest określona przez parametry wiadomości.
- Write: Zapis jednej wartości. Wiadomość umożliwia zapis tylko jednej wartości, której typ jest zależny od typu pamięci, do której jest wykonywany zapis. Przy pomocy tej wiadomości nie można zapisać wartości do typów pamięci oznaczonych jako macierz.
- Write item of matrix: Zapis jednej wartości do macierzy wartości. Wiadomość umożliwia zapisanie tylko jednej wartości, której typ jest zależny od typu odczytywanej pamięci. Przy pomocy tej wiadomości można zapisywać tylko wartości z typów pamięci oznaczonych jako macierz.
- Write block of matrix: Zapis bloku wartości do macierzy. Wiadomość umożliwia zapis macierzy wartości, której wielkość jest określona przez parametry wiadomości.
- PhysRead: Odczyt zawartości pamięci pod danym adresem. Wiadomość dopełnia poprzednie wiadomości do odczytu. Wykorzystuje jednak fizyczną adresację przy pomocy segmentu i offsetu. Można odczytać tylko jedną wartość.
- PhysWrite: Zapis do pamięci pod danym adresem. Wiadomość dopełnia poprzednie wiadomości do zapisu. Wykorzystuje jednak fizyczną adresację przy pomocy segmentu i offsetu. Można zapisać tylko jedną wartość.


Testowanie komunikacji w INMAT:
INMAT umożliwia wyświetlenie indykacji odbioru (Rx*), odpowiedzi (Tx*) oraz błędu (Err), co jest odpowiednie do rozruchu komunikacji. W celu wyświetlenia tych informacji jest konieczne wybrać menu "KONFIG" pozycja "Rx Tx Err 0". Szczegółowe informacje w materiałach producenta INMATów.
© MICROSYS, spol. s r.o.