AMMI v2 » Historie » Verze 10
Jednatel J.H., 2017-02-06 21:22
1 | 8 | Jednatel J.H. | {{>toc}} |
---|---|---|---|
2 | |||
3 | 4 | Jednatel J.H. | h1(#top). Advance Machine Machine Interface ([[AMMI]]) |
4 | 1 | Jednatel J.H. | |
5 | 7 | Jednatel J.H. | Firmware [[AMMI]] poskytuje komunikační protokol jednotlivých [[DKE#diagram|komponent DKE]]. [[AMMI]] je součástí libovolného [[PAC-AT90|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 [[PAC-AT90|DKE-PAC]] je vhodné instalovat [[HMI]] software. Aktuální vývojová verze [[AMMI]] podporuje [[PAC-AT90]] a má implementovány protokoly: |
6 | 1 | Jednatel J.H. | * [[MMI|DKE-MMI-USB]] |
7 | 2 | Jednatel J.H. | ** 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. |
8 | * [[MMI|DKE-MMI-BT]] |
||
9 | 1 | Jednatel J.H. | ** Převodník, dekodér nebo kodér komunikačního rozhraní. Označení BT představuje komunikační bezdrátový standard Bluetooth. |
10 | 4 | Jednatel J.H. | ** Aplikovaný komunikační protokol je závislý na použitém [[DKE-PAC]]. |
11 | 1 | Jednatel J.H. | * [[MMI|DKE-MMI-WIFI]] |
12 | ** 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. |
||
13 | 4 | Jednatel J.H. | ** Aplikovaný komunikační protokol je závislý na použitém [[DKE-PAC]]. |
14 | |||
15 | ------------------------------------------------------------- |
||
16 | |||
17 | h2(#spec). Specifikace protokolu |
||
18 | |||
19 | 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]]. |
||
20 | |||
21 | ## USART |
||
22 | *** TTL (5 V, 3,3 V) |
||
23 | *** RS232 |
||
24 | *** RS485 |
||
25 | *** USB 2.0 |
||
26 | ## IEEE 802.11 (Wi-Fi) |
||
27 | *** 2,4 GHz |
||
28 | *** TCP/UDP |
||
29 | 6 | Jednatel J.H. | *** client/server |
30 | 1 | Jednatel J.H. | |
31 | 9 | Jednatel J.H. | 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 [[PAC-AT90|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]]). |
32 | 1 | Jednatel J.H. | |
33 | 8 | Jednatel J.H. | h3(#tx). Struktura odchozího těla rámce (aplikace posílá do [[PAC-AT90]] bajty skrze předchozí vrstvy) |
34 | 1 | Jednatel J.H. | |
35 | |1. B | 2. B | 3. B | 4.-5. B | |
||
36 | 8 | Jednatel J.H. | |*počet následujících B*|*adresa [[DKE-PAC]]*|*sdělení (příkaz)*|*hodnota (data)*| |
37 | 1 | Jednatel J.H. | |
38 | 10 | Jednatel J.H. | |=. B0|=. B1|\3=. B2 |=. B3 |=. B4 |=. B5 |=. B6 | |
39 | |*ΣB* |*adredsa*|*sdělení* |hex kód | popis |*data B 1* |*data B 2* |*data B 3*|*data B 4*| |
||
40 | |4 |1:255 |OUTPUT_OFF | 0xC0| vypne výstup [[IOPE]] (vysoká impedance) | VYSTUP(MSB 0:255) |VYSTUP(LSB 0:255)| | | |
||
41 | |4 |1:255 |OUTPUT_ON | 0xC1| sepne výstup [[IOPE]] (otevřený kolektor)| VYSTUP(MSB 0:255) |VYSTUP(LSB 0:255)| | | |
||
42 | |4 |1:255 |OUTPUT_BLK | 0xC2| invertuje výstup [[IOPE]] | VYSTUP(MSB 0:255) |VYSTUP(LSB 0:255)| | | |
||
43 | |/6^.3|/6^.1:255|/6^.OUTPUTS |/6^.0xC3|/6^.nastaví všechny výstupy [[IOPE]] | | | | | |
||
44 | | 0x00 = vše vypnout | | | | |
||
45 | | 0x01 = vše zapnout | | | | |
||
46 | | 0x02 = vše invertovat | | | | |
||
47 | | 0x03 = náhodná kombinace | | | | |
||
48 | | 0xF0 = vrať stavy výstupů | | | | |
||
49 | |3 |1:255 |OUTPUTS_PWM | 0xC4| nastaví PWM na všechny výstupy [[IOPE]] | _hodnota_ střídy <0;100> % | | | | |
||
50 | |4 |1:255 |REPEAT | 0xCF| opakuje poslední zadaný příkaz |\2. perioda (_16bit-číslo_*10ms) | | | |
||
51 | |/3^.4|/3^.1:255|/3^.TRANSLATOR|/3^.0x01|/3^.vlastnosti překladače | 0x01 = zapne informaci o chybách| | | | |
||
52 | | 0x02 = vypne informaci o chybách| | | | |
||
53 | | 0x0E = posílat zpět přijaté B | | | | |
||
54 | |6 |1:255 | IOPE | 0xCC| umožňuje přístup na konkrétní [[IOPE]] | sběrnice (1:3) |ADRESA(0:7) |PORTA(MSB)|PORTB(LSB)| |
||
55 | |3 |1:255 | RELE1 | 0x41| ovládá relé 1 | 0x01 = ON, 0x00 = OFF | | | | |
||
56 | |3 |1:255 | RELE2 | 0x42| ovládá relé 2 | 0x01 = ON, 0x00 = OFF | | | | |
||
57 | |3 |1:255 | RELE3 | 0x43| ovládá relé 3 | 0x01 = ON, 0x00 = OFF | | | | |
||
58 | |3 |1:255 | RELE4 | 0x44| ovládá relé 4 | 0x01 = ON, 0x00 = OFF | | | | |
||
59 | |/9^.5|/9^.1:255|/9^.ENCODER|/9^.0x60|/9^.příkazy inkrementálního enkodéru | 0x01 = kontrola délky cyklů | | | | |
||
60 | | 0x02 = vrátí délka cyklů | | | | |
||
61 | | 0x03 = kontrola počtu cyklů | | | | |
||
62 | | 0x04 = vrátí počet cyklů | | | | |
||
63 | | 0x05 = vrátí směr rotace | | | | |
||
64 | | 0x06 = nastaví minimální délu | DELKA | | | |
||
65 | | 0x07 = nastaví maximální délu | DELKA(MSB) |DELKA(LSB)| | |
||
66 | | 0x08 = vyčistí čítače a hodnoty | | | | |
||
67 | | 0x09 = nastaví rozlišení čítače | ROZLISENI(0:255)| | | |
||
68 | |||
69 | 1 | Jednatel J.H. | |
70 | 6 | Jednatel J.H. | h3. Struktura příchozího těla rámce ([[PAC-AT90]] posílá do aplikace bajty skrze předchozí vrstvy) |
71 | 7 | Jednatel J.H. | |
72 | |1. B | 2. B | 3. B | 4.-5. B | |
||
73 | 1 | Jednatel J.H. | |*počet B*|*adresa*|*sdělení*|*hodnota*| |
74 | 6 | Jednatel J.H. | |
75 | 7 | Jednatel J.H. | |*sdělení* |hex kód | popis |*hodnota* |*počet B*| |
76 | 1 | Jednatel J.H. | | OUTPUTS | 0xC3| Informace o aktivním nastavení výstupů [[IOPE]]| sekvence bitů (1=ON, 0=OFF) |3| |
77 | 6 | Jednatel J.H. | |/6^.TRANSLATOR|/6^.0x01|/6^. Informace z překladače. Aktivní pouze v případě, že je překladač zapnut.|UNKNOW_DEV (0x0C) neznámé zařízení |2| |
78 | 1 | Jednatel J.H. | | UNKNOW_COM (0x0D) neznámý příkaz |2| |
79 | 6 | Jednatel J.H. | | UNKNOW_VAL (0x0E) neplatná hodnota |2| |
80 | | TIMEEXPIRE (0x0A) vypršel čas komunikace |2| |
||
81 | 1 | Jednatel J.H. | | ERROR_PROCS (0x0B) chyba při provádění příkazu |2| |
82 | | ERROR_TRANS (0x0F) chyba překladače |2| |
||
83 | 6 | Jednatel J.H. | |
84 | h3. Příklad komunikace a) |
||
85 | |||
86 | 7 | Jednatel J.H. | # aplikace otevře TCP port |
87 | 6 | Jednatel J.H. | # aplikace pošle |0x03|0x01|0xC3|0x03| |
88 | # aplikace zavře TCP port |
||
89 | 7 | Jednatel J.H. | |
90 | 6 | Jednatel J.H. | Aplikace přikázala skrze Wi-Fi aby [[PAC-AT90]] na adrese 1 náhodně nastavil výstupy [[IOPE]] na 1 a 0. |
91 | |||
92 | 1 | Jednatel J.H. | h3. Příklad komunikace b) |
93 | 6 | Jednatel J.H. | |
94 | 7 | Jednatel J.H. | # aplikace otevře TCP port |
95 | # aplikace pošle |0x03|0x01|0x01|0x0E| |
||
96 | # [[PAC-AT90]] pošle |0x03|0x01|0x01|0x0E| |
||
97 | # aplikace pošle |0x04|0x01|0xC3|0x32E6| |
||
98 | 6 | Jednatel J.H. | # [[PAC-AT90]] pošle |0x04|0x01|0xC3|0x32E6| |
99 | # aplikace zavře TCP port |
||
100 | |||
101 | 4 | Jednatel J.H. | 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. |
102 | |||
103 | ------------------------------------------------------------- |
||
104 | |||
105 | h2(#dev). Vývojové informace |
||
106 | |||
107 | Vývojové informace mohou procházet uživatelé s bezpečnostní prověrkou reportér a vyšší. |
||
108 | 7 | Jednatel J.H. | |
109 | 4 | Jednatel J.H. | # Aktuální vývojová verze: [[versions|2.x]] |
110 | # Developments Issues: #485 |
||
111 | # "Components List":https://www.tme.eu/cz/Profile/Parking/740721.html |
||
112 | |||
113 | ------------------------------------------------------------- |
||
114 | 1 | Jednatel J.H. | |
115 | h2(#atch). Přílohy |