Uživatelské nástroje

Nástroje pro tento web

Překlady této stránky?:

cs:programming_tasks

Softwarové úlohy k vyřešení

Infrastruktura pro rozprostřené měřící projekty

Síť je určená ke shromažďování a distribuci dat mařených na amatérských dobrovolných stanicích. Výsledná data jsou veřejně dostupná a lze na nich provádět vlastní analýzy.

Uvažované datové vstupy (nódy sítě)

  • Metrologická data ze stanic AWS01B
  • Síť rádiové detekce meteorů RMDS01A - Radio Observer
  • Video pozorování meteorů VMDS01A
  • Data reportovaná uživateli mobilních telefonů - Meteor Observer
  • Seismická/infrazvuková měření (dopady meteorů, výbuchy, … )
  • Radioteleskopy
  • Paralelní více staniční astronomická pozorování
  • Geomagnetická měření
  • SID monitor
  • Síť pro detekci blesků
  • Měření a koordinace sítě Automatických balónových sond
  • Nódy fungující jako datová úložiště, případně provádějící nějaké výpočty nad daty (dataminingové servery)
  • Limnimetry pro měření výšky hladiny.

Každý nód je součástí sítě a bude obsluhován pozorovací aplikací (např, Radio Observer, Meteor Observer, Visual Observer, atd.) a daemonem Station-supervisor, který bude řešit dohled nad funkcí stanice, a předávání telemetrických dat. Jiný daemon by naopak měl zabezpečovat úložný prostor do kterého bude měřící aplikace ukládat data a následně řešit jejich optimální rozdistribuování mezi jednotlivé datové servery v síti.

Vlastnosti systému

  1. Síť by mela umět posílat informační zprávy o nízkém datovem objemu upozornujici na aktualni specialni udalosti. Napriklad v pripadě bolidové site je to bolid o kterem lze predpokladat dopad a Zem. tj. Je potreba zmerit dalsi udaje o atmosfere, jako jsou napriklad smery vetru. V ruznych vyskach.
  2. Stanice by měla být konfigurovatelná přes webové rozhraní na centrálním serveru (Něco jako Boinc BAM!)
  3. Server střádající data by měl mít API které by umožňovalo programování dalších aplikací, které by data využívaly (například na živé výstupy ve hvězdárnách a planetáriích, nebo pro výukové účely)
  4. Důležitým parametrem sítě je, aby data z jednotlivých stanic byla k dispozici v jednu chvíli (s co nejmenším časovým rozptylem), aby bylo možné provádět živě výpočty na mezistaničních datech.

Typická stanice

Image above illustrates an typical station connected to the distributed measurement system. The measuring station itself consist several subsystems.

Local presentation node

A PC system located at same site where the measuring station operates but generally in another room or building. The purpose of presentation node is displaying of measuring data in an interactive form which is attractive for visitors or should be used to demonstrate principle of measurement.

Measuring node

This is part which performs the measurement and it is responsible to data making. Measuring node has several minor subsystems.

Measuring Hardware - A set of sensors and hardware required for measuring.

Resetítko - A hardware recovery unit which could separately reset every hardware part of measuring node. The station-supervisor daemon should use this device for error outputs. Connection management between recovery unit and station-supervisor daemon will be self controlled by device. Interface between hardware recovery unit and main station computer should be terminal based. The terminal functionality should be provided by station-supervisor monitor software (ssmon) (if it is running, otherwise by standard system console) in system console mode station supervisor-should write debug output on this device (similarly to dmesg for example)

Network interface

We will not have direct IP connectivity from Internet to stations. Station supervisor software should generate data file outputs and upload these data files to an web server which serves station status information. Telemetry information will be displayed in the web on separate central web server. Web page served by central status server is primary diagnostic interface. Terminal interface to measuring node is secondary backup interface which is not accessible on all stations.

Moreover web access is intended as file based. File based means that station-supervisor uploads an diagnostic file to the central web server. Web server takes this files (from more than one station) and serve a web page with stations status information. User interface in this case is limited only to modification of an station-supervisor configuration file stored on web server.

For example configuration file may contain an parameter for station reboot request. After station-supervisor will notice a change or update in the web server stored configuration file, station-supervisor reboots the station and update its parameters according to actual configuration file.

Node software

Node hardware will run a data-processing utility (radio-observer for example), data uploading and distributing utility and station-supervisor daemon. Station-supervisor acts as watchman which checks proper functioning of whole measuring node. Data-upload is another daemon, which manages storage space on measuring node.

Station-supervisor does not have a screen output. Screen output may be served by client program ssmon (Station Supervisor Monitor) which generates interactive status screen after connection to Station Supervisor server.

Hardwarová realizace

Výpočetní výkon

Měřící stanice by měly být vybaveny základním výpočetním hardwarem založeným na architektuře ARM konkrétně některý více-jádrový ARM z uvedené stránky. Samotná detekce bude probíhat na stanicích již většinou existujících konstrukcí viz nódy sítě. Připojených k tomuto počítači.

Síťová konektivita

Parametry síťové konektivity záleží na konkrétním měření probíhajícím na stanici. Preferovaná možnost ale bude připojení na ethernet. Případně wifi spojení do lokální sítě a následně do internetu. V některých případech odlehlých stanic a měření, kde nebudou vyžadovány velké datové toky lze také uvažovat o použití GSM sítě

Časová synchronizace

Požadavky na přesnost staničního času opět závisí na typu měření. V případě stanic připojených na ethernet je možné použít synchronizaci času přes protokol NTP, případně PTP. Izolované stanice se špatnou konektivitou jsou pak odkázány na použítí GSNSS, jako zdroje času. Tento problém je podrobněji rozpracován na stránce o synchronizaci času.

Softwarová implementace

Zpracování naměřených dat

Použití ROOT nebo IPython.

Generování sekundárních výstupů

Naměřená data ze stanic by měla být dále distribuována do sítí specializovaných pro zpracování určitého typu dat.

Meteorologická data

V případě meteorologických dat jsou dostupné například tyto sítě:

Radiové pozorování meteorů

Data by měla být zpracována do podoby colorgramu a přeposlána do sítě rmob. Aktuální verze programu umožňujícího generování vhodných výstupů je na Githubu.

Správa systému stanic

Registrace

Registrace jednotlivých stanic a správa uživatelů by mělo být možné implementovat do webového rozhraní projektu Astrozor.

Jednotlivé stanice by se pak do systému autentizovaly svými klíči. Které by byly generované buď serverem na základě registrace uživatele do systému, nebo přímo uživatelem, který by svůj veřejný klíč dal k dispozici síti.

Monitorování

Monitorování a řízení stanice by bylo potřeba založit na některém již existujícím systému pro monitorování sítí, nebo pro supervisory control and data acquisition. Byl pokus o napsání vlastního monitorovacího softwaru v rámci programu SOCIS 2014. Ten však skončil neúspěšně.

Ukládání a archivace naměřených dat

Měřená data budou primárně zálohována provozovatelem stanice (na jeho datovém nódu). Každá stanice bude ale přímo posílat data do decentralizovaného úložiště jehož součástí bude cache server - ten bude v každém okamžiku obsahovat většinu dostupných dat (případně může pouze poskytovat spojení mezi datovým nódem úložiště s archivními daty a zájemcem o data), tento server ale nemá zaručenou dostupnost v každém okamžiku. Primárním účelem serveru je poskytovat naměřené hodnoty ostatním uživatelům v internetu (HTTP)¸ kteří nejsou členy datové sítě ale potřebují si je stáhnout za účelem dalšího zpracování, nebo prohlížení.

Distributed measuring system network

Prvním krokem k tomuto stavu bude realizace centralizovaného serveru na který budou stanice data přímo posílat (FTP, SSH/Rsync). S postupným vývojem softwarových nástrojů umožnujících decentralizaci dat budou přidávány datové nódy na které budou moci stanice zapisovat také.

Později by správa velkého objemu dat měla být řešena výhradně ukládáním do distribuovaného úložiště, které se bude chovat též jako součást sítě. Data by tedy byla s určitou redundancí rozdělena mezi více uživatelů, kteří by jednak zajišťovali dostupný datový objem a zároveň i zlepšovali datovou propustnost. Samotná data by pak mohla být vyměňována mezi nódy technologií P2P, nebo některým existujícím systémem distribuovaného datového úložiště 1).

Decentralizovaným řešením organizace takového úložiště by bylo rozdělit data do repozitářů se svojí asymetrickou šifrou. Metadata o obsahu repozitáře (včetně kontrolních součtů) by byly podepsané soukromým klíčem, který by vlastnil jeho autor. Veřejný klíč, či jeho hash, by posloužil k jednoznačné identifikaci repozitáře.

Kopie dat na úložišti by pak mohla být zpřístupněna pomocí nástrojů Virtual Observatory.

Vizualizace dat

Webové rozhraní

Webové rozhraní musí být primárním nejjednodušším pohledem na data. Podrobnější prohlížení může probíhat při stažení setu dat na desktopovém počítači.

Zobrazení meteorologických dat

Záznam směru větru by měl být kombinován s rychlostí a zobrazen ve 3D, jako deformace válcové plochy.

Podobným řešením se zabývá projekt Možnosti zobrazení časových průběhů pro visuální analýzu

Rozložení směru a intenzity větru v závislosti na poloze lze zobrazit pohybem v mapě.

Lokální prohlížeč dat

Měl by obsahovat výpočetně náročnější funkce, které nezvládne webový prohlížeč.

Prohlížení obrazových záznamů

Prohlížecí systém dat na multi-staniční experimenty, kde by bylo možné prohlížet zaznamenaná data z více stanic najednou. Nejlépe tedy v několika oknech, které by bylo možné rozmístit na monitory na prohlížecím pracovišti. Jednotlivá prohlížecí okna by ale měla mít svázaný posuvník, podobně jako nástroje určené k porovnávání souborů. Dalším vylepšením by mohlo být použiti OpenGL na vykreslování textur velkých obrázků.

Zobrazení multiparametrických dat

Klientská aplikace na stažení a speciální zobrazení dat z měřících projektů.

Známé projekty s podobným cílem

Integrovaný SDR přijímač

Přijímač integrovaný v krabici UNIBOX01

Diagnostika a testování

MEMS akcelerometr pro vibrodiagnostiku

Ověření možností použití moderních low-cost MEMS snímačů pro měření vibračních parametrů strojů. K dispozici je měřící přípravek s motorem a akcelerometrickým snímačem MMA8451Q v modulu IMU01A. Ke snímači dále existuje připravená knihovna v jazyce Python otestovaná pod operačním systémem Linux.

Cílem úlohy je zjistit limity použití aktuální MEMS technologie v diagnostických aplikacích rotačních strojů.

Termografický mapovací systém

V diagnostice a vývoji plošných spojů je výhodné použití termografických zobrazovacích metod, které umožňují odhalit nadměrné tepelné namáhání, nebo vadné provedení spojů či poruchu osazených součástek. Klasické použití termografické kamery je jednak velmi nákladné a navíc je z hlediska aplikace limitující jejich prostorové rozlišení. Alternativním přístupem pro diagnostiku plošných spojů je použití bodového senzoru s velmi úzkým zorným polem. Takovýto sensor může být umísten nad deskou plošných spojů ve skenovacím zařízení umožňující posuny ve dvou osách. Složením bodových měření v ploše je možné získat obraz teplot na plošném spoji s prostorovým rozlišením stejným, nebo lepším než u termografické kamery.

Jako vhodný snímač lze použít například thermophile. Uchycený v libovolném přípravku umožňující 2D posuvy. Pro experimenty je k dispozici mechanika z 3D tiskárny. Podobně jako ve výše uvedeném úkolu je možné přípravek připojit k libovolnému počítači přes USB pomocí knihovny pymlab.

Astrozor

Doplnění identifikace na hvezdarnach:

  1. Moznost pouzit identifikacni karty
  2. Identifikovat uzivatele na hvezdarne na zaklade informaci o mobilnim telefonu IMEI, IP MAC, Bluetooth MAC (sparovani s bluetooth). Na tento problém existuje open-source projekt physical-web. Jde o bluetooth zařízení, které vysílá url adresu. Zařízení by mělo tyto zprávy přijmout a v případě OS android zařízení zobrazí upozornění v notifikační liště na místní fyzickou stránku.
  3. Na pozorovacim miste by bylo zarizeni, ktere tyto informace bude ziskavat.

Další náměty a chyby jsou k dispozici přímo na Astrozoru

Meteogramy pro astronomy

Generování pohledu na oblačnost na obloze z určitého pozorovacího místa. Meteogram v podobě videa by mohl zobrazovat i časový vývoj oblačnosti.

Pro některé případy by stačila jenom koncentrace absolutní vlhkosti. A nebo intenzita pohybu mas vzduchu s různou hustotou, které pak vytváří seeing. Vypocet z modelu NMM nebo WRF.

Výsledek tohoto výpočtu by se dal použít pro plánování pozorování. Podobné služby existují pro sportovní disciplíny jako je Sportovní létání nebo Windsurfing/Kitting.

Reference

Realizační prostředky

Řešitelé

Projekt je realizován týmem několika studentů ČVUT, VUT a členů Robozor:

  • Martin Povišer - Digitalizace signálu a decentralizace úložiště
  • Bc. Jan Milík - Rádiová detekce meteorů
  • Ing. Jakub Kákona - Organizace a architektura projektu

Podpora projektu

Projekt byl podpořen z fondu ESA projektem ESA Summer of Code 2013 a 2014.

Většina hardwarových součástí projektu je pořízena z prostředků firmy Universal Scientific Technologies s.r.o. Universal Scientific Technologies s.r.o.

1)
Podobný systém by se hodil i současné Wikipedii, protože ta aktuálně nemá příliš dobře řešenou archivaci dat. viz Database download
cs/programming_tasks.txt · Poslední úprava: 2016/02/18 20:43 (upraveno mimo DokuWiki)