Konstrukce a realizace řídicí jednotky malého proudovéhomotoru

Konstrukce a realizace řídicí jednotky malého proudovéhomotoru Konstrukce a realizace řídicí jednotky malého proudovéhomotoru

support.dce.felk.cvut.cz
from support.dce.felk.cvut.cz More from this publisher
13.07.2015 Views

30 KAPITOLA 5. ÚPRAVY VIZUALIZAČNÍHO SWTatometodaprovedeuloženíaktuálníchhodnotdoinstancetřídyControllerSettings(viz příklad).ControllerSettings controllerSettings;this.controllerSettings.k = float.Parse(this.textBoxK.Text);this.controllerSettings.wI = float.Parse(this.textBoxWI.Text);this.controllerSettings.wD = float.Parse(this.textBoxWD.Text);this.controllerSettings.b = float.Parse(this.textBoxB.Text);.Potésevcykluvolámetodapublic void WriteFloat(float number),kteráukládádata do instance třídy Datagram. Na závěr se zavolá metoda pro poslání datagramu posériové lince.Datagram datagram = new Datagram();datagram.WriteFloat(this.controllerSettings.k);datagram.WriteFloat(this.controllerSettings.wI);.this.port.WriteWithWatchDog(datagram, "Set regulator");Obrázek 5.1: Okno nastavení konstant regulátoruProblém byl v tom, že načítaná data z okna ”Regulator“ nebyla správně ukládána dojednotlivých ”properties“ třídyControllerSettings, čímždocházelo keztrátěinformacev posílané zprávě.

5.1. POPIS OPRAV DATAREADER 31Chybný výpis nastavení konstant regulátoruNa obrázku 5.2 je vidět aktuální informační výpis o nastavení jednotlivých konstantregulátoru. Tento výpis se zobrazí, pokud vizualizační SW zažádá o zaslání aktuálníhonastavení regulátoru z řídicí jednotky. V souvislosti s předcházející chybou byl výpischybný, protože přijatá data nepřicházela ve správném pořadí dle komunikačního protokolu(viz příloha) a zároveň data nebyla kompletní.Obrázek 5.2: Ukázkový výpis Info panelu o nastavení regulátoruZacyklení při ukládání vzorků do temp file“ ”Tato chyba byla nejzávažnější, nebot’ způsobovala zaseknutí“ programu. Pokud je řídicí”jednotka připojena a je navázána komunikace s PC, posílá řídicí jednotka telemetrickádata. V hlavním nastavení vizualizačního programu (File → Settings, obrázek 5.3) senastavuje, po kolika vzorcích se ukládají telemetrická data s kompletním nastavení programudo souboru typu temp, z důvodu záchrany dat při pádu programu. Při příchodunových dat ze strany řídicí jednotky se zavolá metoda:private void Port_DataAvailable(object sender, DataAvailableEventArgs e),ve které je pro pársování dat (dle typu zprávy) použita programová konstrukce switch(viz příklad).

5.1. POPIS OPRAV DATAREADER 31Chybný výpis nastavení konstant regulátoruNa obrázku 5.2 je vidět aktuální informační výpis o nastavení jednotlivých konstantregulátoru. Tento výpis se zobrazí, pokud vizualizační SW zažádá o zaslání aktuálníhonastavení regulátoru z řídicí <strong>jednotky</strong>. V souvislosti s předcházející chybou byl výpischybný, protože přijatá data nepřicházela ve správném pořadí dle komunikačního protokolu(viz příloha) a zároveň data nebyla kompletní.Obrázek 5.2: Ukázkový výpis Info panelu o nastavení regulátoruZacyklení při ukládání vzorků do temp file“ ”Tato chyba byla nejzávažnější, nebot’ způsobovala zaseknutí“ programu. Pokud je řídicí”jednotka připojena a je navázána komunikace s PC, posílá řídicí jednotka telemetrickádata. V hlavním nastavení vizualizačního programu (File → Settings, obrázek 5.3) senastavuje, po kolika vzorcích se ukládají telemetrická data s kompletním nastavení programudo souboru typu temp, z důvodu záchrany dat při pádu programu. Při příchodunových dat ze strany řídicí <strong>jednotky</strong> se zavolá metoda:private void Port_DataAvailable(object sender, DataAvailableEventArgs e),ve které je pro pársování dat (dle typu zprávy) použita programová konstrukce switch(viz příklad).

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!