Software pro vzdálenou laboratoř



Podobné dokumenty
ZAŘÍZENÍ PRO VZDÁLENÝ SBĚR A PŘENOS DAT FIRMWARE

VZDÁLENÁ LABORATOŘ PRO DOZIMETRICKÁ MĚŘENÍ

1. Úvod do Ajaxu 11. Jak Ajax funguje? 13

I/O a SCADA systémy. iologik I/O Servery. iologik iologik 2000

Firmware řídící jednotky stejnosměrného generátoru

SIMATIC S IT. Micro Automation. Promoters Meeting October Představení CP IT SPIDER CONTROL TELESERVIS. TESTOVACÍ server.

návod k obsluze Ht60B popis komunikační linky HTH8 s.r.o. Komunikační linka 60B, 11/05, rev. 1

Uživatelský modul. DF1 Ethernet

Měření teploty, tlaku a vlhkosti vzduchu s přenosem dat přes internet a zobrazování na WEB stránce

MATLABLINK - VZDÁLENÉ OVLÁDÁNÍ A MONITOROVÁNÍ TECHNOLOGICKÝCH PROCESŮ

Návrh konstrukce odchovny 3. dil

SIMATIC S GPRS. Micro Automation. Promoters Meeting October Aplikace pro GPRS. Vzdálená stanice. Server SINAUT MICRO SC.

SPINEL. Komunikační protokol. Obecný popis. Verze 1.0

Komunikace s automaty MICROPEL. správa systému lokální a vzdálený přístup do systému vizualizace, umístění souborů vizualizace

Popis programu EnicomD

Úvod Virtuální kanál TCP Datagramová služba UDP URL TCP, UDP, URL. Fakulta elektrotechnická

4x vstup pro měření unifikovaného signálu 0 10 V, 0 20 ma, 4 20 ma. komunikace linkami RS232 nebo RS485

Uživatelský modul Stunnel

Ethernetový komunikátor ETH-BOX1

Load Balancer. RNDr. Václav Petříček. Lukáš Hlůže Václav Nidrle Přemysl Volf Stanislav Živný

AD4RS. měřící převodník. 4x vstup pro měření unifikovaného signálu 0 10 V, 0 20 ma, 4 20 ma. komunikace linkami RS232 nebo RS485

XL-ITB-103EZ IP set-top box. Uživatelský návod

Možnosti aplikace: Copyright 2001, COM PLUS CZ, Praha

Přijímací modul ECA-16

Reranking založený na metadatech

Protokol TELNET. Schéma funkčních modulů komunikace protokolem TELNET. Telnet klient. login shell. Telnet server TCP/IP.

Komunikační protokol

Obousměrný modul ECX-4

Aplikace. Hlásič SMS

Přijímací modul ECA-4

Uživatelský manuál WEB SERVICE V3.0 IP kamer Dahua

Prostředky automatického řízení Úloha č.5 Zapojení PLC do hvězdy

IntraVUE Co je nového

ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE

1 Webový server, instalace PHP a MySQL 13

4x standardní vstupy

Ovládání ústředny Visonic přes mobilní telefon

MODUL 3 KANÁLOVÉHO D/A PŘEVODNÍKU 0 25 ma

Jízda po čáře pro reklamní robot

7. Aplikační vrstva. Aplikační vrstva. Počítačové sítě I. 1 (5) KST/IPS1. Studijní cíl. Představíme si funkci aplikační vrstvy a jednotlivé protokoly.

Obsah. O autorovi 11 Předmluva 13 Zpětná vazba od čtenářů 14 Errata 14

DOCHÁZKA. Webový prohlížeč docházky. Osoby

Profilová část maturitní zkoušky 2013/2014

Programovací software ConfigTool. Základní obsluha a postup připojení k zařízení přes USB a GPRS. Verze 2.00

Úvodem Seznámení s HTML Rozhraní Canvas... 47

INOVACE PŘEDMĚTŮ ICT. MODUL 11: PROGRAMOVÁNÍ WEBOVÝCH APLIKLACÍ Metodika

Profilová část maturitní zkoušky 2017/2018

21. září 2005 w w w. p a p o u c h. c o m. Spinel - příklady

Super Hot Multiplayer vzdálené sledování finančních dat. Konfigurace sítě. Strana: 1 / 8

Uživatelská příručka MWA Modul Podpora vzdálených kalibrací dle ILAC

Inteligentní řešení kamerového systému

UŽIVATELSKÝ MANUÁL 485COM. verze pro elektroměry CARLO GAVAZZI (protokol MODBUS)

Albatros MultiV ALBATROS MultiV ALBATROS MultiV-R Datový převodník LG PI485 / MODBUS TCP LG PI485 / MODBUS RTU s možností rozpočítávání spotřeby elekt

Program pro tvorbu technických výpočtů. VIKLAN - Výpočty. Uživatelská příručka. pro seznámení se základními možnostmi programu. Ing.

Reliance. Komunikační driver Johnson Controls verze 1.5.4

Učivo: Detailnější zopakování používání některých částí uživatelského rozhraní LEGO MINDSTORMS NXT Paleta programování

DS-450dvrGPS Displej s navigací a kamerou (černou skříňkou) ve zpětném zrcátku

TGMmini. začínáme. komplexní dodávky a zprovoznění servopohonů dodávky řídicích systémů

NÁVOD K OBSLUZE konfigurační SW CS-484

Střední odborná škola a Střední odborné učiliště, Hořovice

SM2-MU FIRMWARE PŘEHLED ZMĚN

1. DATOVÉ SCHRÁNKY OBECNÝ PŘÍSTUP K DATOVÉ SCHRÁNCE DATOVÉ ZPRÁVY... 3

I/O servery Moxa. iologik I/O Servery. iologik iologik 2000

APS mini.ed programová nadstavba pro základní vyhodnocení docházky. Příručka uživatele verze

Komunikační protokol

JUMO LOGOSCREEN 600. Dotyková budoucnost záznamu: Obrazovkový zapisovač

Systémy pro sběr a přenos dat

Ṁikroprocesory v přístroj. technice. Ohm-metr ... Petr Česák

Verze 1.x 2.x 3.x 4.x 5.x. X X X X uživatelům (správcům) systému Řazení dat v přehledech podle jednotlivých sloupců

Uživatelský modul. Transparent Mode

FVZ K13138-TACR-V004-G-TRIGGER_BOX

Komunikační protokol MODBUS RTU v displejích TDS

17. července :51 z moravec@yahoo.com

OBSAH. 1. Úvod Požadavky na SW vybavení... 3

Střední odborná škola a Střední odborné učiliště, Hořovice

APS 400 ipanel. Online informační a ovládací panel pro systém APS 400. Uživatelská příručka

Obsah. 1) Rozšířené zadání 2) Teorie zásuvných modulů a) Druhy aplikací používajících zásuvné moduly b) Knihovny c) Architektura aplikace d) Výhody

Měření průtoku kapaliny s využitím digitální kamery

Seznámení s Quidy. vstupní a výstupní moduly řízené z PC. 2. srpna 2007 w w w. p a p o u c h. c o m

Protokol TELNET. Schéma funkčních modulů komunikace protokolem TELNET. Telnet klient. login shell. Telnet server TCP/IP TCP/IP.

Real Time programování v LabView. Ing. Martin Bušek, Ph.D.

TÉMATICKÝ OKRUH Softwarové inženýrství

Komunikační driver Sauter EY2400. Reliance. Komunikační driver SAUTER EY2400 verze 2.4.3

IMPLEMENTACE OPERAČNÍHO SYSTÉMU LINUX DO VÝUKY INFORMAČNÍCH TECHNOLOGIÍ

Knihovna SolarMonitorLib

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

Návod k montáži. ) AS-i. Kontrolér e. (Controller e AC1303 / AC1304

Vysílací modul ECT-16

Metodika testů pro zařízení LZZ

16. Číslicový měřicí systém se sběrnicí IEEE 488 (základní seznámení)

Popis funkcí a parametrů programu. Reliance External communicator. Verze 1.5.0

F-WVR610. Bezdrátový (2,4 GHz) digitální videorekordér

Uživatelský modul. File Uploader

Komunikační protokol MODBUS RTU v displejích TDS

UDS for ELO. Univerzální datové rozhraní. >> UDS - Universal Data Source

Manuál k obsluze simulátoru KKK ELO 2011 pro studenty, popis laboratorní úlohy

Revize FW jednotek RTU7

CIB VOICE MODULE HLM390/CIB. Technická dokumentace

Instalace a první spuštění Programu Job Abacus Pro

Obousměrný modul ECX-8

Transkript:

Software pro vzdálenou laboratoř Autor: Vladimír Hamada, Petr Sadovský Typ: Software Rok: 2012 Samostatnou část vzdálených laboratoří tvoří programové vybavené, které je oživuje HW část vzdáleného experimentu a dělá z něj skutečnou vzdálenou laboratoř. Toto programové vybavení může být do určité míry univerzální, nicméně je vždy nutné přizpůsobit konkrétnímu experimentu. Na obrázku 1 je znázorněna struktura programové vybavení vzdálené laboratoře. Pod názvem každého bloku je uvedena technologie, která byla použita. Kamera Obrázek 1: Blokový diagram programového vybavení vzdálené laboratoře Pro zajištění vizuálního kontaktu s experimentem byla použita IP kamera TL-SC3130 od firmy TP-Link. Videosignál lze z kamery získat ve formátech MJPG, MPEG-4 a nebo 3gp. Pro realizaci dozimetrické laboratoře byl zvolen video formát MJPG, přenášený pomocí http protokolu. Uvnitř webové stránky je umístěn přehrávač využívající technologii JAVA. Je tedy plně kompatibilní se všemi prohlížeči. Uživatel však musí mít nainstalovánu podporu technologie JAVA. Ethernetový modul Pro přepnutí modulu do serverového režimu SerialNET, kdy se ethernetový modul se chová jako server, je nutné provést určitá nastavení. V tomto režimu ethernetový modul vytvoří SOCKET a naslouchá na nastaveném portu. Pokud jsou na SOCKET poslána data, ethernetový modul je předá na kanál USART. Pokud přijdou data opačným směrem (z USART), jsou uložena do bufferu a čeká se na splnění některé z podmínek pro odeslání. Nastavení je možno provádět přes USART pomocí jakéhokoliv univerzálního terminálového programu, nebo je možno použít konfigurační program ConnecOne.

Komunikační protokol Pro komunikaci mikrokontroléru s webovou aplikací bylo nutno navrhnout vysokoúrovňový uživatelský komunikační protokol, který specifikuje formát zprávy a pravidla pro odesílání a přijímání zpráv. Tento protokol existuje nad protokolem nižších úrovní, které se liší podle použitého komunikačního rozhraní USART, TCPIP apod. Navržený protokol je master-slave, kde slave je mikrokontrolér, takže na každou příchozí zprávu odpovídá zprávou odchozí. Pokud je právě vykonávána nějaká operace odpovídá zprávou o zaneprázdnění a příchozí zpráva není dále zpracovávána, s výjimkou příkazu STOP, nebo dotazů na stavy aktuálních hodnot proměnných polohy při posuvu a hodnot čítače při čítání. Po dokončení operace je nastavena zpráva o kladném či záporném výsledku operace, kterou se reaguje na novou příchozí zprávu. Až po jejím odeslání je mikrokontrolér připraven zpracovávat nové zprávy. Číselné parametry jsou odesílány v dekadickém formátu a až na hodnotu čítače impulsů jsou odesílány s jedním desetinným místem, bez oddělovače. Firmware mikrokontroléru Pro vývoj programu pro mikrokontrolér byl použit jazyk C s využitím balíku WinAVR, který obsahuje všechny nutné součásti pro vývoj software pro mikrokontroléry Atmel AVR, zejména kompilátor a základní sadu knihoven nutnou pro práci v jazyce C. Strukturu firmware mikrokontroléru zachycuje vývojový diagram na obrázku 2. Levý sloupec představuje hlavní větev programu, pravý sloupec pak přerušení. V přerušení od USART se pouze přijímají znaky z kanálu USART a až je zpráva kompletní, nastaví se příznak a samotné zpracování přijaté zprávy se provede až v hlavní větvi programu. Pokud je přijata kompletní zpráva, nejsou přijímány další znaky, dokud není zpracována. Časovač 1 (TIMER1) je použit pro časování kroků krokového motoru, Čítač 1 (COUNTER1) pak pro čítání impulsů z GM počítače. Časovač 2 (TIMER2) je použit pro odpočítávání doby měření. Obrázek 2: Vývojový diagram firmware

Hlavní program obsahuje vlastní program, resp. skupinu podprogramů, kde probíhá inicializace periferií, které pak vyvolávají přerušení. Po každém průchodu podprogramu se kontroluje, zda nepřišla zpráva z kanálu USART. Zpracování přijaté zprávy je provedeno standardně - nejprve proběhne kontrola formátu přijaté zprávy, pokud proběhne v pořádku, následuje rozpoznání příkazu. Současně s rozpoznáním příkazu je provedena inicializace pro danou úlohu a v hlavní části programu jsou pak pouze části kódu, které je nutno vykonávat opakovaně. Inicializace obsahuje nastavení vstupně výstupních portů mikrokontroléru, resetu proměnných a končí kalibrací posuvu. Automatická kalibrace posuvu Při použití krokového motoru odpadá nutnost použití snímače polohy, ovšem po zapnutí je nutné provést kalibraci, pro určení definované polohy. Pro automatickou kalibraci je nutné mít alespoň jeden referenční bod (se známou referenční vzdáleností) a kalibrační plošku o definovaných rozměrech (v tomto případě stínítko). Implementovaný algoritmus navíc ještě ověřuje fyzické hranice pracovní oblasti, což ovšem není nevyhnutelně nutné. Teoreticky by stačilo znát vzdálenosti koncových bodů od referenčního a z kalibrační konstanty hranice dopočítat. Kalibrační konstantu získáme měřením délky kalibrační plošky. Na obrázku 3 je vývojový diagram automatické kalibrace posuvu. V zelených blocích zobrazeny hodnoty získané při kalibraci. Tyto hodnoty jsou následně přepočítány do absolutního měřítka pomocí známé vzdálenosti referenčního bodu (d\_ref) od GM trubice. Obrázek 3: Vývojový diagram automatické kalibrace posuvu

Obrázek 4: Schéma posuvu Webová aplikace Tato část programového vybavení umožňuje uživateli obsluhovat vzdálenou laboratoř a slouží k prezentaci výsledků měření. Z diagramu na obrázku je patrné, že programové vybavení okolo IP kamery je samostatná část webové stránky. Při načtení stránky je provedena detekce typu internetového prohlížeče, a pokud uživatel nepoužívá některý z prohlížečů, které podporují přehrávání videa bez dalších doplňků (Firefox, Safari, Chrome), je spuštěn přehrávač Cambozola. Video je ve stránce vloženo pouze jako komponenta a není na stránce nijak závislé, ani zbytek stránky na něm. Přehrávač Cambozola využívá technologie JAVA. Aby nebylo nutné vždy při odesílání dat na server obnovit celou stránku, byla použita technologie AJAX. Díky této technologii je možné provádět komunikaci s modulem vzdálené laboratoře na pozadí a obnovovat pouze tu část stránky, ve které se mění příslušná data. Například při pohybu vozíku je v přednastavených časových intervalech obnovována poloha vozíku, nebo při měření počet načtených impulzů. Mechanizmus přenosu dat mezi modulem a webem je zobrazen na vývojovém diagramu viz obrázek 5. Nejprve je pomocí JAVA Scriptu vytvořen XMLHttpRequest, což je obálka, která zajišťuje celou komunikaci na pozadí. Z něj se spustí PHP script, který se připojí na SOCKET ethernetového modulu a zahájí komunikaci. Po dokončení php scriptu indikovaném změnou stavu XMLHttpRequest-u je spuštěna funkce JAVA Scriptu, která provede změnu obsahu HTML stránky a celá operace končí. Komunikace je takto komplikovaná, protože z JAVA Scriptu není možné obsluhovat SOCKET přímo a je tedy nutný přechod přes PHP. Obrázek 4: Vývojový diagram funkce technologie AJAX Pro různé operace je vytvořeno několik XMLHttlRequest a příslušných php scriptů viz obrázek 5. Například pro zjištění stavu zařízení se periodicky po 2 s vytváří požadavek a spustí se příslušný php

skript. Po přijetí (případně nepřijetí) dat z modulu je na webové stránce změněn stav zařízení. Obdobná situace platí i pro ostatní požadavky, pouze nemusí být vytvářeny periodicky, ale jako reakce na uživatelský vstup. Obrázek 5: Vývojový diagram funkce webové aplikace Na obrázku 6 je vidět webová stránka vzdálené laboratoře včetně kamerového obrazu pořízeného IP kamerou. Obrázek 6: Webová stránka vzdálené laboratoře