AN10 Ovládání elektrických zásuvek pomocí Telnet/KSHELL
Tagy: 
M2M API

Elektrické zásuvky NETIO 4x (NETIO 4 / 4All / 4C) je možné ovládat po síti LAN přes M2M API protokol Telnet s využitím příkazů KSHELL. Aplikační poznámka NETIO AN10 ukazuje použití protokolu Telnet k ovládání jednotlivých zásuvek, obsahuje základní popis protokolu KSHELL a příklady, jak komunikaci otestovat v operačním systému Windows s několika utilitami. 

Můžeme Vám nějak pomoci?

M2M API rozhraní Telnet je velmi jednoduché. Produkty NETIO 4x mají komunikaci typu Telnet s limitovanou instrukční sadou otevřenou na výchozím portu 1234, který lze změnit ve webové administraci. M2M API rozhraní typu Telnet je v základním nastavení zakázané a je nutné jej povolit.

 

Protokol lze snadno implementovat v zákaznickém programu (Otevřít TCP socket, odeslat sadu příkazů pro nastavení výstupů, ověřit stav napájecích výstupů, zavřít TCP socket) nebo jej otestovat v běžném Telnet terminálovém programu.

 

V uživatelském programu lze spustit cmd a z ní nastavit stav zásuvek (např. Dávkovým příkazem). Druhá možnost je implementovat TCP spojení do zákaznické aplikace (Telnet) a posílat do něj ovládající řetězce.

 

Podporovaná zařízení:

NETIO 4AllNETIO 4CNETIO 4

 

Nastavení NETIO 4x

Ve webové administraci NETIO 4x v sekci M2M API Protocols, povolte Telnet/KSHELL, případně upravte číslo Portu a uložte kliknutím na tlačítko Save Changes.


  • Ve webové administraci NETIO 4x v sekci M2M API Protocols, povolte Telnet/KSHELL, případně upravte číslo Portu

 

Vytvoření uživatele

Pro používání komunikace typu Telnet doporučujeme vytvořit speciálního uživatele.

Postup pro vytvoření uživatele je následující:

1) Ve webové aplikaci v sekci Users přidejte nového uživatele pomocí šedého tlačítka Create User.

2) Vyplňte jméno a heslo.

3) U záložky Privileges rozklikněte more.

4) Nechte zaškrtnuté pouze položky log in a control outputs.

5) Uživatele uložte kliknutím na zelené tlačítko Create User v dolní části obrazovky.

  • Pro používání komunikace typu Telnet doporučujeme vytvořit speciálního uživatele.

 

Pro přístup k Telnetu nyní můžete využívat tohoto uživatele.

 

Příklad použití z příkazové řádky (Windows)

1) Pro verze operačního systému Windows Vista, Windows 7 a vyšší je nejprve nutné v nastavení Windows povolit Telnet. Otevřete Ovládací panely, přejděte na Programy a funkce, dále Zapnout nebo vypnout funkce systému Windows. Zde zatrhněte Klient služby Telnet a potvrďte pomocí OK.

  • Pro verze operačního systému Windows Vista, Windows 7 a vyšší je nejprve nutné v nastavení Windows povolit Telnet.

 

2) K zařízení NETIO 4x se připojte pomocí příkazu: telnet <NETIO IP> <Port>. Dostanete odpověď podobnou této: 100 HELLO 00000000 - KSHELL V1.5:

Příklad příkazu (nezapomeňte vložit IP vašeho zřízení):

  • K zařízení NETIO 4x se připojte pomocí příkazu: telnet <NETIO IP> <Port>

 

Ukázka odpovědi:

  •  Dostanete odpověď podobnou této: 100 HELLO 00000000 - KSHELL V1.5:

 

3) Po sestavení spojení je třeba se přihlásit příkazem login (viz níže)

Pokud zadáte správné jméno a heslo odpověď bude: 250 OK

Příklad pro uživatelské jméno admin a heslo admin:

  • Po sestavení spojení je třeba se přihlásit příkazem login

 

4) Nyní můžete ovládat NETIO pomocí příkazů níže

Poznámka: Telnet se automaticky odpojí po 60 sekundách neaktivity. Pro prodloužení doby použijte příkaz noop, doba připojení se prodlouží o dalších 60 sekund

 

Seznam příkazů

  • login <jméno> <heslo>
    • Provede přihlášení uživatele
    • <jméno> nahraďte vaším přihlašovacím jménem, <heslo> nahraďte vaším heslem
    • Příklad, který vás přihlásí s přihlašovacím jménem admin a heslem admin: login admin admin
    • Seznam uživatelů najdete v sekci Users, v této sekci lze i uživatele vytvářet a dávat jim různá práva

 

  • quit
    • Odhlásí vás a ukončí telnet

 

  • noop
    • Zavolání příkazu noop nastaví dobu odpojení na 60 sekund.
    • Nemá žádnou funkci (No-operation)

 

  • port list [xxxx]
    • Příkaz sloužící k ovládání všech zásuvek najednou
    • Bez parametrů vypíše stav zásuvek
    • Seznam parametrů:
      • 0 - vypne zásuvku
      • 1 - zapne zásuvku
      • 2 - krátce vypne zásuvku (pokud byla zásuvky vypnutá, bude po provedení příkazu zapnutá)
      • 3 - krátce zapne zásuvku (pokud byla zásuvky zapnutá, bude po provedení příkazu vypnutá)
      • 4 - změní aktuální stav zásuvky
      • 5 - ponechá zásuvku beze změny
      • i – restartuje zásuvku (ponecháno pro zpětnou kompatibilitu)
      • u – ponechá zásuvku beze změny (ponecháno pro zpětnou kompatibilitu)
        • Příklad zapnutí všech zásuvek: port list 1111
        • Příklad zapnutí zásuvek 1,3, vypnutí zásuvky 4 a přepnutí stavu zásuvky 2: port list 1410
        • Příklad zapnutí zásuvek 2,3 a zachování stavu zásuvek 1,4: port list 5115
    • Poznámka: Je nutné nahradit všechny x v parametru, pokud nechcete, aby se stav zásuvky měnil, použijte jako parametr 5. Příkaz port list 10x1 nebude přijat.

 

  • port <output> <action>
    • Příkaz sloužící k ovládání jedné konkrétní zásuvky
    • <output> nahraďte číslem zásuvky
    • <action> nahraďte jedním z parametrů
    • Pokud parametr <action> vynecháte, vypíše se stav zásuvky
    • Parametry:
      • 0 - vypne zásuvku
      • 1 - zapne zásuvku
      • 2 - krátce vypne zásuvku (pokud byla zásuvky vypnutá, bude po provedení příkazu zapnutá)
      • 3 - krátce zapne zásuvku (pokud byla zásuvky zapnutá, bude po provedení příkazu vypnutá)
      • 4 - změní aktuální stav zásuvky
      • 5 - ponechá zásuvku beze změny
      • i – restartuje zásuvku (ponecháno pro zpětnou kompatibilitu)
      • u – ponechá zásuvku beze změny (ponecháno pro zpětnou kompatibilitu)
        • Příklad zapnutí zásuvky 1: port 1 1
        • Příklad vypnutí zásuvky 3: port 3 0
    • Za každým příkazem je nutné vložit znaky CR a LF (v ASCII 0D a 0A). V terminálu se tento symbol vkládá stisknutím Enter.
    • Příklad: přihlášení, zapnutí zásuvek 1 a 2 a odhlášení:
  • Login, quit, noop, port list, port - seznam příkazů pro použití v NETIO zásuvkách

 

Software 3.strany

Ověřený software: Hercules, PuTTY, Linux Telnet, Windows Telnet

Pozn.: Některé terminály nepodporují Backspace

Ukázka PuTTY:

  • PuTTY: Software třetí strany

 

Ovládání zásuvek jedním příkazem
  • Výstupy lze ovládat i pomocí příkazu v HEX (šestnáctkové) soustavě. Pro nahrazení stisknutí klávesy "Enter" slouží znak CR+LF (0D0A).
  • Tento způsob je vhodný pro ovládání pomocí TCP socketu
  • Řetězec vytvoříte spojením jednotlivých příkazů (viz výše), převedením jednotlivých symbolů podle tabulky ASCII (například https://www.asciitable.com) do HEX soustavy a na místa, kde se používá klávesa Enter, vložíte znak 0D0A
  • Příklad pro zapnutí zásuvky 4:
  • žlutě jsou vyznačeny znaky pro “odenterování” příkazu
  • Ovládání zásuvek jedním příkazem

 

  • Seznam hlavních příkazů v HEX soustavě:
    • login - 6C6F67696E
    • 1 – 31
    • 2 – 32
    • 3 – 33
    • 4 - 34
    • port - 706F7274
    • port list - 706F7274206C697374
    • quit - 71756974

Ukázka v Hercules – Příklad pro přihlášení, zapnutí zásuvky 4 a odhlášení.

  • Příkaz:
    login netiotelnet
    telnet 321
    port 4 1
    quit
  • Jedním příkazem: 6C6F67696E206E6574696F74656C6E65742074656C6E65743332310D0A706F7274203420310D0A71756974
  • Hercules - software třetí strany

 

FAQ:

 

1) Lze po Telnetu nastavit čas (delay) pro akce 2 (short Off) a 3 (short On) ?

Ne, tento čas nelze v protokolu Telnet (KSHEEL) měnit. Používá se čas výchozí délky tohoto času – lze změnit přes uživatelské web rozhraní.

 

2) Lze prodloužit doba odpojení na více než 60 sekund?

Nelze, je nutné použít příkaz noop.

 

3) Při použití M2M API typu Telnet jsou elektrické zásuvky NETIO 4x TCP Client nebo TCP server?

Když je Telnet M2M protokol povolený, napájecí zásuvky NETIO poslouchají jako TCP server na nastaveném portu. TCP spojení zahajuje TCP client (v tomto AN příkladu například aplikace PuTTY nebo Hercules).

 

4) Jsou NETIO 4x zásuvky v protokolu Telnet KSHELL kompatibilní s předchozími produkty KOUKAAM?

Starší produkty NETIO vyráběla firma Koukaam. Protokol KSHELL (Koukaam Shell) je kompatibilní s těmito produkty:

  • NETIO 230A
  • NETIO 230B

5) Telnet mi nepřipadá bezpečný protokol. Mohu jej prostě zakázat?

Ano, pro zabezpečenou komunikaci je možné použít jiné M2M protokoly. Telnet v základním nastavení není povolen.

 

6) Jaké heslo používá Telnet M2M API? Mohu použít defaultní webové heslo admin/admin?

Telnet M2M API momentálně používá stejné uživatele jako webová administrace (záložka Users) a lze tedy použít defaultní admin/admin. Nastavení uživatele přímo pro Telnet M2M připravujeme a uvedeme v některé z příštích verzí firmwaru.

 

7) Lze přes Telnet číst aktuální spotřeba?

V tuto aktuální verzi FW není čtení spotřeby přes telnet možné, tuto funkci připravujeme v některé z příštích verzí firmwaru.

 


Podporované verze FW:

3.0.0 a novější (Archiv firmwware)

Pro starší verze FW 2.3.2, 2.3.4, 2.3.5, 2.3.6 lze také využít s mírnými odlišnostmi:

  • nelze měnit Port
  • parametry pro ovládání zásuvek jsou dostupné pouze 0, 1, i, u

 

 

 

Tato Aplikační poznámka může být použita v:

Smart power socket NETIO

 

NETIO 4

NETIO 4 je PDU modul čtyř zásuvek 230V/8A s připojením do počítačové sítě pomocí LAN a WiFi. Každou ze zásuvek lze individuláně vypnout/zapnout pomocí různých M2M API protokolů. NETIO 4 je unikátní produkt, který najde uplatnění v IT, průmyslu, chytrých domech, multimediálních instalacích atd. Všude, kde potřebujete zásuvky na 230V ovládané z mobilní aplikace, z nějakého programu (M2M API), z uživatelského skriptu (Lua), z funkcí časovač (Scheduler) a automatický restartér (IP WatchDog). 

Více o zařízení NETIO 4

 

Smart power socket NETIO 4All

 

NETIO 4All

NETIO 4All je PDU modul čtyř elektrických zásuvek 230V/8A s měřením spotřeby na každé zásuvce, který lze připojit do počítačové sítě pomocí LAN a WiFi. Každou ze čtyř zásuvek lze individuálně vypnout/zapnout přes web nebo pomocí různých M2M API protokolů. Na každé zásuvce lze měřit její spotřebu elektřiny (A, W, kWh). Chytré zásuvky NETIO 4All jsou určeny pro aplikace vzdáleného měření a ovládání elektrických zásuvek.

Více o zařízení NETIO 4All

Smart power socket NETIO

 

NETIO 4C

NETIO 4C je malé PDU (Power Distribution Unit) na 110/230V se čtyřmi ovládanými výstupy na IEC-320 C13 max 8A. Obsahuje Ethernet switch a 2x LAN port na připojení do sítě. Každý ze čtyř výstupů napájení lze individuálně vypnout/zapnout přes web, z mobilní aplikace nebo pomocí různých M2M API (SNMP, MQTT, XML, Modbus/TCP, ..). V NETIO 4C lze spouštět přímo v zařízení běžící zákaznické Lua skripty. Specialitou NETIO 4C je sériový port RS-232 (3-pin), který lze ovládat z Lua scriptu, nebo jako vzdálený sériový port.

Více o zařízení NETIO 4C

 

Zeptejte se na cenu nebo technické parametry

Pro otestování zařízení použijte jméno/heslo demo/demo