BAŽANT, L. Evaluační platforma pro CAN transceivery [online]. Brno: Vysoké učení technické v Brně. Fakulta elektrotechniky a komunikačních technologií. 2014.

Posudky

Posudek vedoucího

Fiedler, Petr

ráce byla zadána firmou On Semi conductor a její realizace probíhala pod odborným vedením pracovníků této firmy. Práce v úvodu představuje samotnou sběrnici CAN a modul C_CAN. Následně v kapitole 4 představuje zvolenou koncepci řešení zadaného úkolu. V navazujících kapitolách je pak popsáno zvolené řešení. V závěru práce jsou pak zdokumentovány výsledky testování s využitím navrženého systému. Práce splnila zadání, je zpracována po odborné stránce kvalitně a poměrně pečlivě, nicméně v některých částech dokumentujících zvolený způsob řešení je zbytečně stručná. Práci hodnotám stupněm C.

Navrhovaná známka
C
Body
78

Posudek oponenta

Hynčica, Ondřej

Cílem práce byl návrh a realizace platformy pro testování CAN budičů. Zadání práce je obtížné, zahrnuje návrh hardware, vytvoření firmware pro mikrokontrolér a vytvoření software pro PC. Dále je nezbytné velmi podrobné seznámení s protokolem CAN. Lze konstatovat, že předložená práce toto zadání splňuje, s výhradami uvedenými dále. V prvních třech kapitolách práce diplomant velmi přehledně a podrobně popisuje protokol CAN. Popis zahrnuje všechny parametry protokolu CAN použité v práci, s výjimkou kapitoly 3.6, která dle mého názoru nesouvisí s řešením zadání. Koncepce řešení (kapitola 4) je navržena bez podrobnějšího rozboru požadovaných vlastností a způsobů používání, chybí mi rozbor očekávaného postupu testování a případných variant řešení. Chybějící specifikace co a jak se má testovat se následně promítá do navrženého hardware, obslužného software i provedených testů. Návrh hardware testovacích modulů, druhý bod zadání, (kapitola 5 a 6) považuji za zdařilý a výsledná deska navržená ve dvou variantách je povedená. Není mi jasná volba mikrokontroléru C8051F vzhledem k uvedeným parametrům. V přehledu jsou uvažovány pouze 8-bitové mikrokontroléry. Volba 32-bitové architektury by přinesla větší paměť, případně mikrokontrolér s vestavěným USB rozhraním by zjednodušil návrh a přinesl zmenšení desky plošných spojů. Vzhledem k tomu, že velikost desky byla při návrhu zohledňována, mi přijde zvláštní volba tak velkého pouzdra, zejména když téměř polovina pinů zůstala nevyužita. Za nešťastné řešení považuji umístění zakončovacích odporů napevno na každém modulu, které při změnách topologie zřejmě muselo vést k přepájení. Blokové schéma uvedené v kapitole 5 neodpovídá schématu zapojení. Návrh topologie sítě pro testování budičů (kapitola 6.1) je prvním bodem zadání. Byla zvolena topologie hvězda s parametry „podle požadavků firmy ON Semiconductor“. Vzhledem k tomu, že toto zapojení neodpovídá normě, očekával bych podrobnější rozbor a popis. Podobnou topologii si dovedu představit u Low-speed CAN (ISO 11898-3) používaného pro „CAN-Comfort“ sběrnici automobilů. Nedokážu ale posoudit, zda toto zapojení odpovídá konfiguracím používaným v automobilech. Firmware pro mikrokontrolér modulu (kapitola 7) je třetím bodem zadání. Firmware řeší komunikaci a zpracování příkazů předávaných po CAN, UART a provádění testů. Popis firmware je velmi stručný. Vývojový diagram na Obrázku 21 (str. 36) ukazuje, že po aktivaci „Automatického módu“ po startu modulu není možné zpracovávat příkazy z PC. Ze zdrojových kódů je ale zřejmé, že tomu tak není. Tabulka 8 (str. 37) by měla obsahovat příkazy podporované na CAN rozhraní, ale zdá se neúplná (v kódu je uveden i příkaz ‘L‘, chybí význam a formát parametrů, příkaz ‘a‘ má jinak uvedené parametry). Z hlediska návrhu je nevhodné provádění velkých částí kódu v kontextu přerušení. Firmware je vytvořen ve dvou verzích, které se ovšem liší pouze v jediném řádku kódu a to v konstantě podle typu desky: „unsigned char Choke = 1;“. Vzhledem k velkému množství volných gpio pinů bylo možné například využít volný pin pro hardwarové rozlišení typu modulu a tím používat jedinou verzi firmware. V příloze nebylo vhodné přikládat dočasné a binární soubory vygenerované překladačem, ale pouze použité zdrojové soubory. Uživatelský software pro PC (kapitola 7.2 až 7.6) je čtvrtým bodem zadání. Program je vytvořen v jazyce Visual Basic ve dvou formulářích. Uživatelské rozhraní je přehledné a nabízí všechny potřebné funkce, chybí mi pouze možnost nastavení rychlosti komunikace (zřejmě se provádí přes BPR bity). Zdrojový kód je těžko čitelný, naprostá většina kódu je v jediném zdrojovém souboru, který zahrnuje uživatelské rozhraní i funkcionalitu. V popisu programu se píše o stavovém diagramu aplikace, bohužel diagram ani seznam stavů není uveden a informace typu „SD = 2“ pak příliš nepomáhají v pochopení programu. Tabulka podporovaných příkazů odesílaných přes USB virtuální sériový port (Tabulka 9, str. 41) se zdá neúplná porovnáním se zdrojovými kódy. Samotná komunikace po sériové lince mezi PC a modulem je realizována nevhodně a to jak na straně PC, tak i na straně modulu. Zotavení po chybě není zajištěno, v případě chyby bude trvat několik paketů, než se protokol obnoví (náhodně – dle obsahu paketů). Řešením by mohlo být zavedení start symbolu, případně pokračování v rozpoznávání paketu od dalšího bajtu a ne zahozením všech bajtů přijatých do zjištění chyby. Označovat posílání znaku ‘C‘ jako CRC je přinejmenším zavádějící. Posledním bodem zadání bylo ověření komunikace pro různé parametry (kapitola 8). V práci je uvedeno šest různých experimentů, ze kterých je patrné, pro jaká nastavení parametrů byla síť funkční. Bohužel v práci postrádám popis, jak provedené testy fungují (tj. jaké zprávy byly posílány, ze kterých modulů, s jakou periodou, délkou). Dále není jasné, jaký druh chyb byl vyhodnocován a za jakých podmínek (například současné vysílání více modulů, vliv zakončení sběrnice, volba řídicího modulu, …). Naprosto pak postrádám diskuzi výsledků, například jaký je přínos v použití tlumivek, který se zdá dle uvedených výsledků žádný. Po formální stránce je práce na dobré úrovni, je napsána srozumitelně a obsahuje naprosté minimum chyb. Citace použitých zdrojů jsou uváděny správně, text považuji za původní. Souhrnem lze říci, že výhrady k práci mám zejména k nedostatečnému rozboru koncepce řešení a návrhu testů, dále k implementaci software a k vyhodnocení provedených testů. K návrhu hardware modulů, což byl hlavní předmět této práce, výhrady nemám. U předložených zdrojových kódů není zřejmé, které části jsou původní a které převzaté. Navržený hardware má datum z roku 2011, není tedy jasné, jestli je výsledkem řešení této diplomové práce. Je proto vhodné, aby diplomant při obhajobě jasně uvedl, co je výsledkem řešení diplomové práce, co je společná práce a které části jsou převzaté, zejména u zdrojových kódů. Přes uvedené výhrady jsem přesvědčený, že diplomant prokázal inženýrské schopnosti, a navrhuji hodnocení uspokojivě (D/60).

Navrhovaná známka
D
Body
60

Otázky

eVSKP id 73985