Reference

Reference a realizované projekty

  • Rozsáhlý webový portál pro transformaci a vizualizaci zákazníkových dat. Zahrnoval mj. porovnávání XML souborů s ohledem na jejich strukturu a v nich přítomné klíče, správu uživatelů a skupin uživatelů, generování grafů a zpráv, generování XLSX souborů pro MS Excel 2003 a novější atd.
    Portál byl napsán v ASP.NET 3.5, využívá AJAX a služby MS SQL Serveru 2008 a volá dalšími vývojáři dodané komponenty v jiných jazycích – Java, C, příkazový řádek. Pro generaci grafů byla použita knihovna graphviz.
  • Rozsáhlý program pro řízení zobrazení na venkovních LED obrazovkách. Zahrnoval uživatelské rozhraní, programovací jazyk pro přípravu show a odesílání připravených snímků na zákaznickou PCI kartu řídící obrazovku. Umožňoval zobrazení geometrických elementů, textu, zobrazení obrázků v BMP, PCX, PNG, JPEG apod., přehrávání videa v AVI, MPEG a dalších formátech, wizardy pro snadné vkládání příkazů pro geometrické tvary, testování obrazovky atd. Programovací jazyk byl kompletní jazyk podobný BASICu, včetně proměnných, smyček a výrazů. Tento mnou vytvořený program komunikoval s driverem PCI karty, který však již vytvářel někdo jiný.
    Program byl napsán ve Visual C++ s použitím MFC a Dirext9, obsahoval i některé komponenty uživatelského rozhraní ve Visual Basicu 6.
  • Licenční server a klient umožňující správu licencí přes HTTP. Umožňuje zjištění platnosti klíče, jeho uzamknutí po dobu používání klientem, uvolnění po skončení práce. Na serveru je možná pokročilá správa klíčů.
    Server i klient byly napsány v C. Server běží na Windows a Linuxu, klient pouze na Windows. Součástí vývoje byly také knihovny pro použití klienta z Javy pomocí Java Native Interface (JNI) a .NET.
  • Program pro rekonstrukci průběhů ultrakrátkých laserových pulsů z dat naměřených metodou FROG pomocí gradientních metod nebo genetického algoritmu.
    Napsáno v Visual C++ s použitím MFC a knihoven FFTW a GSL.
  • ABC Prodeje – systém pro řízení maloobchodního prodeje, který je zákazníky značně oblíben pro své velmi snadné použití při zachování maximální jednoduchosti a přehlednosti ovládání.
    Tento program byl vytvořen kombinací Visual Basicu 6, Visual C++ 6 a MFC, jako databázi používá MS Access, ke kterému přistupuje pomocí ADO
  • Osciloskop a signální generátor ze zvukové karty. Program byl napsán ve Visual C++ s použitím MFC a Directx9.
  • Přehrávání videa rychlostí, která se plynule mění podle odečtu analogového vstupu. Aplikace sestává ze dvou částí. První z nich je destička využívající jednočipového mikropočítače Atmel ATtiny26 k odečítání analogového vstupu a obvodu FT245BM pro odesílání dat do PC pomocí USB sběrnice. Program pro jednočipový mikropočítač byl napsán pomocí AVR-GCC. Program pro PC byl napsán ve Visual C++ s použitím MFC a Directx9.
  • Kompletní návrh elektronicky ovládaného zámku dle zadání zákazníka. Výsledkem je zámek se servomotorem, který dokáže po zmáčknutí tlačítka odemknout nebo zamknout. Dále umožňuje automatické zamčení dveří po stanovené době a hlášení chybových stavů, jako např. výpadek napájení, nedovření dveří, mechanická chyba atd. Technické řešení využívá servomotor, baterie pro zálohování a procesor ATmega8 v SMD provedení pro řízení činnosti zámku. ATmega8 je použit, protože se ukázalo, že je jen velmi málo dražší než procesory řady ATtiny a současně nabízí mnohem větší možnosti. Program pro jednočipový mikropočítač byl napsán pomocí AVR-GCC.
  • Aplikace pro testování kvality optických kabelů a ukládání výsledků do databáze. Napsána ve Visual Basicu 6 s využitím databáze MS Access a ADO. Ovládá a odečítá několik měřicích přístrojů připojených přes RS232 a GPIB, naměřená data vyhodnocuje a ukládá do databáze. Na speciální tiskárně pak tiskne štítky pro označení vyhovoujících výrobků.
  • Řízení pece. Požadavek zákazníka byl vytvořit systém pro řízení soustavy pěti elektricky ohřívaných pecí, které mají po danou dobu udržet zvolenou teplotu T1 a po uplynutí této doby ještě po další nastavitelnou dobu udržovat teplotu T2. Pec umožňuje udržování teploty T3 mezi jednotlivými procesy pečení, aby se zrychlil náběh procesu pečení. Kvůli požadavkům na maximální odběr soustavy smí z pěti pecí topit vždy maximálně tři. Systém má být případně rozšiřitelný o další pece a v případu výpadku jedné pece musí ostatní fungovat beze změny.
    Po dohodě se zákazníkem byla každá pec osazena vlastním řídícím modulem, osazeným procesorem ATmega32, který se ukázal jako nejvhodnější z pohledu poměru cena/výkon. Procesor odečítá klávesnici, řeší možnosti nastavení teplot T1, T2, T3, zobrazuje průběh pečení na čtyřmístném sedmisegmentovém displeji a přes SSR relé řídí spínání topných prvků. Nastavení je ukládáno do EEPROM paměti.
    Otázka topení max. tří pecí současně je řešena dalším modulem, který slouží jako řadič topení. Řídící modul pece vždy před sepuntím topných těles požádá řadič o povolení. Řadič pak na základě informací o tom, kolik modulů právě topí a jak dlouho již modul vysílající požadavek netopil, vydá buď povolení nebo zamítnutí požadavku, případně přikážu jinému modulu, aby topení ukončil.
  • Programování laserových modulů. Zákazník požadoval aplikaci, která by umožnila vyčítat informace uložené v EEPROM paměti laserových transceiverů pro optické sítě a tyto informace případně též měnit. Byl vyroben modul osazený procesorem AT90S2313 a obvodem FT232, který pomocí I2C sběrnice komunikoval přímo s EEPROM pamětí v transceiveru a získaná data odesílal do PC, případně naopka data získaná z PC programoval do EEPROM. Pomocí Visual C++ byla vytvořena grafická aplikace pro PC, umožňující přehledé zobrazení vlastnosti modulů, odečet a protokolování diagnostických veličin transceiveru.
  • Odečet dat z experimentálních přístrojů. Integrace možnosti odečtu čtyř různých přístrojů do jednoho programu. Přístroje byla dva gigahertzové osciloskopy Agilent, spektrometr a měřič optického výkonu. Vše bylo připojeno přes GPIB. Data byla zobrazena ve formě grafů a ukládána do souborů s automaticky navrhovanými názvy. Program byl napsán v C++ Builderu 6.
  • Stabilizace výstupního výkonu laseru. Byla požadována stabilizace polovodičového laseru, jehož výstupní výkon se v čase měnil. Výrobcem laseru byl dodán řídicí modul, komunukijící přes RS232. Výstup laseru byl přes dělič svazku přiveden do měřiče optického výkonu. Měřič výkonu byl průběžně odečítán a na základě odečtu byl upravován proud tekoucí laserem tak, aby výstupní výkon zůstával konstantní. Napsáno v C++ Builderu 6.
  • Řízení pikosekundového spektrofotometru. V první fázi bylo nutné do značné uhádnout protokol komunikace, v druhé fázi byla vytvořena knihovna pro ovládání tohoto přístroje z programů napsaných V C++ Builderu. Spektrofotometr byl připojen přes RS232.
  • Spínání laserových diod. Pro zákazníka byl vytvořen systém umožňující spínat čytři laserové diody tak, že vždy jedna svítí a ostatní jsou zhasnuté. Byla požadována frekvence spínání 50kHz a nastavitelná šířka, amplituda a stejnosměrný offset spínacího impulsu. Problém byl vyřešen použitím procesoru ATmega8 a několika spínacích stupňů. Délka pulsů byla nastavitelná potenciometrem. Program byl napsán v assmebleru, protože použití AVR-GCC neumožnilo dosáhnout požadované rychlosti.
  • Knihovna pro práci s inkrementálním čítačem. Jako součást komplexního programu pro měření tvarů součátek na speciálních měřicích strojích byla vytvořena knihovna umožňující inteligentní ovládání a odečet inkrementálního čítače připojeného přes USB.
  • Překladač tiskových úloh. Pro vývojové prostředí aplikací pro průmyslové automaty jsme vytvořili modul, umožňující uživatelsky příjemné vytváření definic tiskových úloh a jejich překlad do jazyka automatu.