Project

General

Profile

Advance Machine Machine Interface (AMMI)

Firmware AMMI poskytuje komunikační protokol jednotlivých komponent DKE. AMMI je součástí libovolného DKE-PAC. Označení MMI představuje komunikaci mezi zařízeními, jako jsou například počítače, kontroléry, mobilní telefony, chytré senzory... a písmeno A (Advance) informuje o pokročilosti a komplexnosti této komunikace. Cílem AMMI je inteligentní kybernetické řízení. AMMI protokol je určený spíše pro zařízení, než pro uživatele a je optimalizovaný pro rychlost a spolehlivost. Pro přímou komunikaci uživatele a DKE-PAC je vhodné instalovat HMI software. Aktuální vývojová verze AMMI podporuje PAC-AT90 a má implementovány protokoly:
  • DKE-MMI-USB
    • Převodník, dekodér nebo kodér komunikačního rozhraní. Označení USB představuje komunikační standard Universal Serial Bus 2.0.
  • DKE-MMI-BT
    • Převodník, dekodér nebo kodér komunikačního rozhraní. Označení BT představuje komunikační bezdrátový standard Bluetooth.
    • Aplikovaný komunikační protokol je závislý na použitém DKE-PAC.
  • DKE-MMI-WIFI
    • Převodník, dekodér nebo kodér komunikačního rozhraní. Označení WIFI představuje komunikační bezdrátový standard IEEE 802.11.
    • Aplikovaný komunikační protokol je závislý na použitém DKE-PAC.

Specifikace protokolu

Fyzická, linková, síťová a transportní vrstvy vychází z níže uvedených protokolů. Uvádíme zde pouze konkrétní odlišnosti a informace potřebné pro snadnou implementaci. Sledy vodičů, napěťové úrovně, napájení a vodiče jsou specifikovány u PAC-AT90.

  1. USART
    • TTL (5 V, 3,3 V)
    • RS232
    • RS485
    • USB 2.0
  2. IEEE 802.11 (Wi-Fi)
    • 2,4 GHz
    • TCP/UDP
    • client/server

Relační, prezentační a aplikační vrstvy společně zajišťují přenos informací mezi zařízeními. Převážně se jedná o sériový přenos dat a je optimalizovaný pro minimální datový tok. Dále uvádíme pouze tělo rámce (rámec definován užitou linkou). Tělo rámce AMMI je v podobě sekvence bajtů. Prvním B je počet následujících B. Druhý B je adresa DKE-PAC. Třetí B je sdělení. 4. B až 5. B obsahuje hodnotu sdělení. Sdělení a jeho možné hodnoty jsou popsány níže uvedenou tabulkou (slovníkem AMMI).

Struktura odchozího těla rámce (aplikace posílá do PAC-AT90 bajty skrze předchozí vrstvy)

1. B 2. B 3. B 4.-5. B
počet následujících B adresa DKE-PAC sdělení (příkaz) hodnota (data)
B0 B1 B2 B3 B4 B5 B6
ΣB adredsa sdělení hex kód popis data B 1 data B 2 data B 3 data B 4
4 1:255 OUTPUT_OFF 0xC0 vypne výstup IOPE (vysoká impedance) VYSTUP VYSTUP
4 1:255 OUTPUT_ON 0xC1 sepne výstup IOPE (otevřený kolektor) VYSTUP VYSTUP
4 1:255 OUTPUT_BLK 0xC2 invertuje výstup IOPE VYSTUP VYSTUP
3 1:255 OUTPUTS 0xC3 nastaví všechny výstupy IOPE
0x00 = vše vypnout
0x01 = vše zapnout
0x02 = vše invertovat
0x03 = náhodná kombinace
0xF0 = vrať stavy výstupů
3 1:255 OUTPUTS_PWM 0xC4 nastaví PWM na všechny výstupy IOPE hodnota střídy <0;100> %
4 1:255 REPEAT 0xCF opakuje poslední zadaný příkaz perioda (16bit-číslo*10ms)
4 1:255 TRANSLATOR 0x01 vlastnosti překladače 0x01 = zapne informaci o chybách
0x02 = vypne informaci o chybách
0x0E = posílat zpět přijaté B
6 1:255 IOPE 0xCC umožňuje přístup na konkrétní IOPE sběrnice (1:3) ADRESA PORTA PORTB
3 1:255 RELE1 0x41 ovládá relé 1 0x01 = ON, 0x00 = OFF
3 1:255 RELE2 0x42 ovládá relé 2 0x01 = ON, 0x00 = OFF
3 1:255 RELE3 0x43 ovládá relé 3 0x01 = ON, 0x00 = OFF
3 1:255 RELE4 0x44 ovládá relé 4 0x01 = ON, 0x00 = OFF
5 1:255 ENCODER 0x60 příkazy inkrementálního enkodéru 0x01 = kontrola délky cyklů
0x02 = vrátí délka cyklů
0x03 = kontrola počtu cyklů
0x04 = vrátí počet cyklů
0x05 = vrátí směr rotace
0x06 = nastaví minimální délu DELKA
0x07 = nastaví maximální délu DELKA DELKA
0x08 = vyčistí čítače a hodnoty
0x09 = nastaví rozlišení čítače ROZLISENI

Struktura příchozího těla rámce (PAC-AT90 posílá do aplikace bajty skrze předchozí vrstvy)

1. B 2. B 3. B 4.-5. B
počet B adresa sdělení hodnota
sdělení hex kód popis hodnota počet B
OUTPUTS 0xC3 Informace o aktivním nastavení výstupů IOPE sekvence bitů (1=ON, 0=OFF) 3
TRANSLATOR 0x01 Informace z překladače. Aktivní pouze v případě, že je překladač zapnut. UNKNOW_DEV (0x0C) neznámé zařízení 2
UNKNOW_COM (0x0D) neznámý příkaz 2
UNKNOW_VAL (0x0E) neplatná hodnota 2
TIMEEXPIRE (0x0A) vypršel čas komunikace 2
ERROR_PROCS (0x0B) chyba při provádění příkazu 2
ERROR_TRANS (0x0F) chyba překladače 2

Příklad komunikace a)

  1. aplikace otevře TCP port
  2. aplikace pošle |0x03|0x01|0xC3|0x03|
  3. aplikace zavře TCP port

Aplikace přikázala skrze Wi-Fi aby PAC-AT90 na adrese 1 náhodně nastavil výstupy IOPE na 1 a 0.

Příklad komunikace b)

  1. aplikace otevře TCP port
  2. aplikace pošle |0x03|0x01|0x01|0x0E|
  3. PAC-AT90 pošle |0x03|0x01|0x01|0x0E|
  4. aplikace pošle |0x04|0x01|0xC3|0x32E6|
  5. PAC-AT90 pošle |0x04|0x01|0xC3|0x32E6|
  6. aplikace zavře TCP port

Aplikace skrze Wi-Fi zapnula echo na PAC-AT90 a přikázala PAC-AT90 zapnout a vypnout výstupy IOPE dle schématu 0011 0010 1110 0110.


Vývojové informace

Vývojové informace mohou procházet uživatelé s bezpečnostní prověrkou reportér a vyšší.

  1. Aktuální vývojová verze: 2.x
  2. Developments Issues: #485
  3. Components List

Přílohy