User Tools

Site Tools


project:eaton:proj_eaton

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
project:eaton:proj_eaton [2018/08/20 13:06]
xkubalik
project:eaton:proj_eaton [2018/10/25 10:43] (current)
xkubalik
Line 2: Line 2:
  
 ===== Knihovní funkce pro mikroprocesor ===== ===== Knihovní funkce pro mikroprocesor =====
-**Cíle**+**Cíle:**
 • Prozkoumejte,​ jak je naimplementován blok kontrolního součtu, časovače, I2C komunikační sběrnice, pulzně šířkové modulace na zadaném mikrokontroléru. • Prozkoumejte,​ jak je naimplementován blok kontrolního součtu, časovače, I2C komunikační sběrnice, pulzně šířkové modulace na zadaném mikrokontroléru.
 • Zjistěte,​ které části jsou již implementovány (Hardware Abstract Layer) . • Zjistěte,​ které části jsou již implementovány (Hardware Abstract Layer) .
Line 10: Line 10:
 • Pro veškeré navržené funkce vytvořte dokumentaci v dOxygen formátu. • Pro veškeré navržené funkce vytvořte dokumentaci v dOxygen formátu.
  
-**Výstupy** +**Výstupy:** Knihovní funkce a dokumentace v dOxygen formátu pro:
-Knihovní funkce a dokumentace v dOxygen formátu pro:+
 • blok kontrolního součtu (CRC) • blok kontrolního součtu (CRC)
 • časovače (CCTIMER, SWTIMER) • časovače (CCTIMER, SWTIMER)
 • I2C komunikační sběrnice (I2C) • I2C komunikační sběrnice (I2C)
 • pulzně šířkové modulace (PWM) • pulzně šířkové modulace (PWM)
-Otestovat tyto knihovní funkce :+ 
 +**Otestovat tyto knihovní funkce :**
 • Spočítat kontrolní součet celé paměti a porovnat jej s očekávaným výsledkem. • Spočítat kontrolní součet celé paměti a porovnat jej s očekávaným výsledkem.
 • S použitím čítače a sensoru zjistit rychlost a směr otáčení hřídele motoru. • S použitím čítače a sensoru zjistit rychlost a směr otáčení hřídele motoru.
Line 23: Line 23:
 • Otestovat funkčnost dostupných led diod. • Otestovat funkčnost dostupných led diod.
  
-Knihovna logovacích funkcí pro zachycení chyb +===== Knihovna logovacích funkcí pro zachycení chyb ===== 
-Cíle+ 
 +**Cíle:**
 • Prostudujte způsob řešení pro zpracování chybových výstupu periferií procesoru. • Prostudujte způsob řešení pro zpracování chybových výstupu periferií procesoru.
 • Navrhněte knihovní funkce, které budou obstarávat obsluhu chyb a chybový výstup. • Navrhněte knihovní funkce, které budou obstarávat obsluhu chyb a chybový výstup.
Line 33: Line 34:
 • V jazyce Python napište script pro následné dekódování. • V jazyce Python napište script pro následné dekódování.
 • Výsledné řešení otestujte. • Výsledné řešení otestujte.
-Výstupy+ 
 +**Výstupy:**
 • Knihovní funkce, které budou obstarávat obsluhu chyb a chybový výstup. • Knihovní funkce, které budou obstarávat obsluhu chyb a chybový výstup.
 • Script v jazyce Python pro následné dekódování logu. • Script v jazyce Python pro následné dekódování logu.
 • Test logovacího systému s pomocí RaspberyPi, které bude řídit testovaný mikrokontrolér. • Test logovacího systému s pomocí RaspberyPi, které bude řídit testovaný mikrokontrolér.
- 
  
-Reálný model pásového dopravníku řízený uC +===== Reálný model pásového dopravníku řízený uC ===== 
-Cíle+ 
 +**Cíle:**
 • Prozkoumejte,​ jak jsou naimplementované časovače a pulzně šířková modulace na zadaném mikrokontroléru (nastudovat dané části ve specifikaci mikrokontroléru). • Prozkoumejte,​ jak jsou naimplementované časovače a pulzně šířková modulace na zadaném mikrokontroléru (nastudovat dané části ve specifikaci mikrokontroléru).
 • Zjistěte,​ které části jsou již naimplementovány (Hardware Abstract Layer). • Zjistěte,​ které části jsou již naimplementovány (Hardware Abstract Layer).
Line 51: Line 53:
 • Pro knihovní funkce vytvořte dokumentaci v dOxygen formátu. • Pro knihovní funkce vytvořte dokumentaci v dOxygen formátu.
 • Výsledné řešení otestujte. • Výsledné řešení otestujte.
-Výstupy+ 
 +**Výstupy:**
 • Funkční model pásového dopravníku sestaveného ze stavebnice merkur. • Funkční model pásového dopravníku sestaveného ze stavebnice merkur.
 • Knihovní funkce a dokumentace v dOxygen formátu k řízení motoru a optimalizace k omezení času, kdy oba tranzistory v H-můstku jsou aktivní. • Knihovní funkce a dokumentace v dOxygen formátu k řízení motoru a optimalizace k omezení času, kdy oba tranzistory v H-můstku jsou aktivní.
Line 57: Line 60:
 • Knihovní funkce a dokumentace v dOxygen formátu k PID regulaci. • Knihovní funkce a dokumentace v dOxygen formátu k PID regulaci.
 • Test - vstupem bude pozice dopravníku a dopravník musí dané pozice dosáhnout co nejrychleji s danou přesností. • Test - vstupem bude pozice dopravníku a dopravník musí dané pozice dosáhnout co nejrychleji s danou přesností.
- 
  
-Grafické uživatelské rozhraní (GUI) pro definování funkcionality vývodů mikrokontroléru a generování kostry kódu v jazyku C +===== Grafické uživatelské rozhraní (GUI) pro definování funkcionality vývodů mikrokontroléru a generování kostry kódu v jazyku C ===== 
-Cíle + 
 +**Cíle:**
 • Prozkoumejte,​ jak je implementován blok přiřazení funkce k vývodům mikrokontroléru (nastudovat specifikaci IO_CTRL bloku) pozn.: IO_CTRL - ovládá propojení mezi vývodem na ASICu a periferií uvnitř obvodu (například přiřadí funkci I2C.SDA nebo I2C.SCL k vývodům). • Prozkoumejte,​ jak je implementován blok přiřazení funkce k vývodům mikrokontroléru (nastudovat specifikaci IO_CTRL bloku) pozn.: IO_CTRL - ovládá propojení mezi vývodem na ASICu a periferií uvnitř obvodu (například přiřadí funkci I2C.SDA nebo I2C.SCL k vývodům).
 • Zjistěte,​ které části jsou již naimplementovány (Hardware Abstract Layer). • Zjistěte,​ které části jsou již naimplementovány (Hardware Abstract Layer).
Line 68: Line 71:
 • Uživatelské rozhraní umožní vygenerovat kostru v jazyku C, která bude implementovat funkcionalitu (přiřazení funkce k vývodu obvodu), která byla nastavena uživatelem v uživatelském rozhraní. • Uživatelské rozhraní umožní vygenerovat kostru v jazyku C, která bude implementovat funkcionalitu (přiřazení funkce k vývodu obvodu), která byla nastavena uživatelem v uživatelském rozhraní.
 • Navržené řešení implementujte a následně otestujte. • Navržené řešení implementujte a následně otestujte.
-Výstupy+ 
 +**Výstupy:**
 • Grafické rozhraní v jazyce Python včetně dokumentace. • Grafické rozhraní v jazyce Python včetně dokumentace.
 • Možnost generování C kódu z grafického rozhraní. • Možnost generování C kódu z grafického rozhraní.
Line 74: Line 78:
 • Možnost načíst definici přiřazení funkcionality specifické pro daný mikrořadič. • Možnost načíst definici přiřazení funkcionality specifické pro daný mikrořadič.
  
-Grafické uživatelské rozhraní (GUI) pro nastavení hodinových stromů v mikrokontroléru a generování kostry kódu v jazyku C  +===== Grafické uživatelské rozhraní (GUI) pro nastavení hodinových stromů v mikrokontroléru a generování kostry kódu v jazyku C ===== 
-Cíle:+ 
 +**Cíle:**
 • Prozkoumat jak je implementován blok přiřazení hodinových stromů v mikrokontroléru (nastudovat specifikaci CLK_NRES bloku) pozn.: CLK_NRES - ovládá propojení hodinových stromů mezi vstupním hodinovým signálem a periferií, dále umožňuje nastavení hodinového závěsu (PLL) a různé hodinové děličky. • Prozkoumat jak je implementován blok přiřazení hodinových stromů v mikrokontroléru (nastudovat specifikaci CLK_NRES bloku) pozn.: CLK_NRES - ovládá propojení hodinových stromů mezi vstupním hodinovým signálem a periferií, dále umožňuje nastavení hodinového závěsu (PLL) a různé hodinové děličky.
 • Hodinové stromy jsou popsány v JSON formátu a můžou být tím pádem generické. • Hodinové stromy jsou popsány v JSON formátu a můžou být tím pádem generické.
Line 86: Line 91:
 • Uživatelské rozhraní kontroluje nastavení, zda-li dává smysl a respektuje pravidla definovaná specifikací (např. že max. výstupní frekvence PLL je 100MHz). • Uživatelské rozhraní kontroluje nastavení, zda-li dává smysl a respektuje pravidla definovaná specifikací (např. že max. výstupní frekvence PLL je 100MHz).
 • Navržené řešení zrealizujte a řádně otestujte. • Navržené řešení zrealizujte a řádně otestujte.
-Výstupy:+ 
 +**Výstupy:**
 • Grafické rozhraní v Python včetně dokumentace. • Grafické rozhraní v Python včetně dokumentace.
 • Možnost generování C kódu z grafického rozhraní. • Možnost generování C kódu z grafického rozhraní.
Line 92: Line 98:
 • Možnost načíst omezující podmínky pro konfiguraci hodinových stromů v grafickém rozhraní. • Možnost načíst omezující podmínky pro konfiguraci hodinových stromů v grafickém rozhraní.
 • Možnost načíst definici (topologii) hodinových stromů v grafickém rozhraní • Možnost načíst definici (topologii) hodinových stromů v grafickém rozhraní
 +
 +===== Sběr dat z elektroměrů pomocí RaspberryPI =====
 +
 +**Cíle:**
 +• Proveďte průzkum trhu elektroměrů používaných pro datová centra.
 +• Nainstalujte a nakonfigurujte NUT (Network UPS Tools) na RaspberryPi.
 +• Navrhněte a naimplementujte podporu Eaton zařízení (resp. zařízení od našich konkurentů) do NUTu.
 +• Při návrhu zohledněte návrhové vzory projektu NUT.
 +• Výsledné zařízení otestujte na reálném hardware a vytvořte několik ukázkových příkladu použití.
 +• Pro výsledné řešení vytvořte dokumentaci.
 +
 +**Výstupy:​**
 +• Předpokládaný výstup práce zahrnuje zprovoznění NUTu na RaspberryPi a rozšíření jeho současné implementace o nová zařízení,​ a to o elektroměry používající SNMP protokol: přidáním SNMP objektů, nezbytné rozšíření kódu NUTu (přidání nového ovladače, popř. nového namespace).
 +• RaspberryPi by mělo být schopné číst data z vybraných zařízení.
 +• Kód bude dokumentován a testován.
 +• Dokumentace k vytvořenému řešení.
 +
 +===== Monitorování dieselového generátoru pomocí RaspberryPI =====
 +
 +**Cíle:**
 +• Proveďte průzkum trhu dieselgenerátorů se zaměřením na jejich dostupné komunikační rozhraní.
 +• Navrhněte a implementujte Modbus TCP a RTU ovladače do NUTu na platformě RaspberryPi.
 +• Implementovanou podporu sběrnice Modbus použijte ke komunikaci s dieselovým generátorem (bude poskytnuta specifikace ke konkrétnímu zařízení) a sběru dat.
 +• Pro výsledné řešení vytvořte několik přikladu pro ověření správné funkce komunikace s dieselagregatem.
 +• Pro realizované řešení vytvořte dokumentaci.
 +
 +
 +**Výstupy:​**
 +Předpokládaný výstup práce zahrnuje zprovoznění NUTu na RaspberryPi a rozšíření jeho současné implementace o nový ovladač Modbusu TCP/RTU.
 +RaspberryPi by mělo být schopné použít Modbus TCP/RTU převodník ke komunikaci s dieselovým generátorem.
 +Výsledné řešení bude dokumentováno a testováno s reálným dieselgeneratorem.
  
project/eaton/proj_eaton.1534763188.txt.gz · Last modified: 2018/08/20 13:06 (external edit)