Friday 15 September 2017

Simulink Liikkuva Keskiarvo Esimerkki


Olen uusi Simulink. Haluan keskimäärin tulevan datan (joka tulee jonkin verran välein) yhdestä korttelista. Esimerkiksi 42 näytteen jatkuva kehystetty data on yhden korttelin päässä. Kehystettyjen tietojen ohella on toinen tulos (tag), joka kertoo, että nämä kehysnäytteet kuuluvat johonkin luokkaan. Tunnisteet ovat numeroita 1-6. Lähtö on satunnaista. Haluan keskittää saman luokan tiedot. Kuten ensimmäinen kehys on kissalta 1, sitten neljän kehyksen jälkeen cat1-kehys tulee jälleen. Nyt, kuinka minun pitäisi keskittää tämä uusi kehys edelliseen, jota haluan tehdä kaikille luokille. Auta minua tähän. kysyi maaliskuu 26 14 klo 13:35 Nopea ja likainen ratkaisu olisi panna taistelulajin jokaiseen luokkaan. Alusta luettelo NaN: llä ja pidä laskuri viimeisestä näytteestä kustakin luokasta. Keskimääräisen toiminnon avulla saat kaikkien mittausten keskiarvon. Jos haluat vain nykyisen kehyksen ja edellisen kehyksen keskiarvon, voit yksinkertaisesti tarkoittaa mallia (cat1 (n1) cat1 (n11)), jossa cat1 on ryhmään 1 kuuluville kehyksille suunnattu ryhmä, ja n1 on edellisen kehyksen indeksi cat1 . Jos haluat reaaliaikaisen toteutuksen painotetun liukuvan keskiarvon, luo jokaiselle luokalle keskimääräinen muuttuja (soita av1, av2 jne.) Ja laske av1 alphaav1 (1-alfa) cat1 (n11) (jossa alfa on paino edelliseen keskiarvoon (aakkoset1) ja cat1 (n11) on uusi mittaus) aina kun cat1-kehys tulee. vastasi 26.3.2010 klo 17: 39Muutto-keskimääräinen liikennetietojen suodatin Tässä esimerkissä näytetään, kuinka liikennevirtaustietoja liikutetaan keskimäärin 4 tunnin liukuikkunan avulla. Seuraava eroyhtälö kuvaa suodattimen, joka laskee nykyisen tunnin ja kolmen edellisen tuntitunnit. Tuoda liikennedat ja määrittää ensimmäisen sarjan ajoneuvon laskutoimituksia vektoriin x. Luo suodatinkertoimen vektorit. Laske datan neljän tunnin liukuva keskiarvo ja piirrä sekä alkuperäiset tiedot että suodatetut tiedot. MATLAB ja Simulink ovat MathWorks, Inc: n rekisteröityjä tavaramerkkejä. Katso mathworkstrademarks luettelo muista MathWorks, Inc: n omistajuista tavaramerkeistä. Muut tuotenimet tai tuotenimet ovat omistajiensa tavaramerkkejä tai rekisteröityjä tavaramerkkejä. Valitse maasi Painotettu liikkuva keskiarvo (vanhentunut) Huomautus: Painotettu liikkuva keskiarvo on vanhentunut. Tämä lohko poistettiin Discrete-kirjastosta R2008a: ssa ja korvattiin diskreetilla FIR-suodatuslohkolla. Nykyiset mallit, jotka sisältävät painotetun liikkuvan keskitason lohkon, toimivat kuitenkin edelleen taaksepäin yhteensopivana. Käytä Discrete FIR - suodatinlohkoa uusissa malleissa. Harkitse slupdate-toiminnon käyttämistä painotetun liikkuvan keskiarvon korvaamiseksi erillisten FIR-suodattimien kanssa nykyisissä malleissa. Painotettu siirrettävä keskiarvo estää näytteitä ja pitää N: n viimeisimmät tulot, kertoo kunkin syötteen määritellyllä arvolla (painotusparametrin antamalla) ja tallentaa ne vektoriin. Tämä lohko tukee sekä yksituloliitäntää (SISO) että yhden sisääntulon monitoimitulostusmoodeja (SIMO). SISO-tilassa painotusparametri määritellään rivivektoriksi. SIMO-tilassa painot määritellään matriisiksi, jossa jokainen rivi vastaa erillistä lähtöä. Voit valita, haluatko määrittää tietyntyyppisen datan tyypin ja skaalaamisen valintaikkunassa Gain-tietotyyppiparametrin avulla. Initial condition - parametri antaa aloitusarvot kaikille ajoaikaa edeltäville ajoille. Määrität näytteiden välisen aikamäärän näytteen aikaparametrilla. Painotettu keskimääräinen lohko kertoo ensimmäisen kerran panoksistaan ​​Painot - parametrilla, muuntaa nämä tulokset tulostietotyyppeihin määritetyillä pyöristys - ja ylivuototiloilla ja suorittaa summion. Tietotyypin tuki Painotettu liikkuva keskiarvo tukee kaikkia numeerisia tietotyyppejä, joita Simulink x00AE tukee, mukaan lukien kiinteän pisteen tietotyypit. Parametrit Määritä liikkuva keskimääräinen paino yhtä riviä tulostusta kohden. Painot - parametri muunnetaan kaksinkertaisiksi määritettyyn tietotyyppiin offline-tilassa käyttämällä lähimmältä ja kyllästyneeltä. Määritä aloitusarvot kaikille ajoaikaa edeltäville ajoille. Initial condition - parametri muunnetaan kaksinkertaisiksi syöttötietotyyppeihin offline-tilassa käyttäen pyöreää lähimpään ja kyllästymiseen. Määritä näytteiden välinen aikaväli. Jos haluat periä näyteajan, aseta tämä parametri -1: ksi. Lisätietoja on kohdassa Online-dokumentaation määrittäminen. Lähtötietotyyppi Määritä lähtötietotyyppi. Voit asettaa sen seuraavasti: Säännön, joka perii tietotyypin, esimerkiksi Eloonjäämä: Perimä takaisin etenemisen kautta Tietotyyppi-objektin nimi, esimerkiksi Simulink. NumericType-objekti Ilmaisu, joka arvioi tietotyyppiä, esimerkiksi , fixdt (1,16,0) Napsauta Näytä datatyypin avustaja - painiketta, jolloin näyttöön tulee Data Type Assistant. jonka avulla voit määrittää Output data type - parametrin. Automaattisen skaalaustyökalun muutosten lukituksen muuttaminen Valitse lukitaksesi ulostulojen skaalaus kiinteän pisteen työkalun muutosten varalta. Kokonaisluku pyöristystapa Pyöristystila kiinteän pisteen lähtöön. Lisätietoja on kohdassa Pyöristäminen. Kyllättyy max tai min, kun ylivuoto tapahtuu Jos valittu, kiinteän pisteen ylivuotot kyllästyvät. Muuten ne kääritään. Määritä Painot - parametrin tietotyyppi. Voit asettaa sen seuraavasti: Säännön, joka perii tietotyypin, esimerkiksi Eloonjää: Perimä sisäisen säännön kautta Tietotyyppi-objektin nimi, esimerkiksi Simulink. NumericType-objekti Ilmaisu, joka arvioi tietotyyppiä, esimerkiksi , fixdt (1,16,0) Napsauta Näytä datatyypin avustaja - painiketta, jolloin näyttöön tulee Data Type Assistant. joka auttaa asettamaan Gain-tietotyyppiparametrin. (Katso lisätietoja tietotyypeistä tietotyypin avustajan avulla.) Oletetaan, että haluat määrittää tämän lohkon kahdelle ulostulolle (SIMO-tila), jossa ensimmäinen lähtö on annettu y 1 (k): lla 1 x22C5 u (k) b 1 x22C5 u (k x2212 1) c 1 x22C5 u (k x2212 2) toinen lähtö saadaan y 2 (k) a 2 x22C5 u (k) b2 x22C5 u (k x2212 1) ja u (k - 1) ja u (k - 2) annetaan ic1: llä ja ic2: lla. vastaavasti. Painotetun siirtymän keskimääräisen lohkon määrittäminen tässä tapauksessa sinun on määritettävä Painot-parametri a1 b1 c1 a2 b2 c2, jossa c2 0 ja alkutila-parametri ic1 ic2. OminaisuudetDokumentaatio Keskimääräisen tilan siirto 8212 Valotusmenetelmä Liukuikkuna (oletus) Eksponentiaalipainotus Liukuikkuna 8212 Pituusikkuna Pituusikkuna kulkee jokaisen kanavan kautta. Jokaisesta näytteestä ikkuna siirtyy, blokki laskee keskimääräisen ikkunan tietojen yli. Eksponentiaalipainotus 8212 Lohko kertoo näytteet painokertoimella. Painotuskertoimien suuruus pienenee eksponentiaalisesti, kun tiedon ikä nousee, eikä nollaa koskaan saavuteta. Keskiarvon laskemiseksi algoritmi summaa painotetut tiedot. Määritä ikkunan pituus 8212 Lippu määrittääksesi ikkunan pituuden päällä (oletus) pois päältä Kun valitset tämän valintaruudun, liukuikkunan pituus on sama kuin ikkunan pituuden määrittämä arvo. Kun poistat tämän valintaruudun, liukuikkunan pituus on ääretön. Tässä tilassa lohko laskee nykyisen näytteen ja kanavan kaikkien aiempien näytteiden keskiarvon. Ikkunan pituus 8212 Liukuikkunan pituus 4 (oletus) positiivinen skalaarinen kokonaisluku Ikkunan pituus määrittää liukuikkunan pituuden. Tämä parametri tulee näkyviin, kun valitset Määritä ikkunan pituus - valintaruudun. Unohtumiskerroin 8212 Eksponentiaalinen painotuskerroin 0,9 (oletus) positiivinen todellinen skalaari alueella (0,1 Tämä parametri koskee, kun asetat Menetelmän eksponentiaalipainotukseen. Unohintatekijä 0,9 antaa enemmän painoa vanhemmille tiedoille kuin unohtamisen tekijä 0,1 , Joka tarkoittaa, että unohdat tekijä 1,0 tarkoittaa ääretöntä muistia Kaikkien aikaisempien näytteiden annetaan sama paino Tämä parametri on viritettävissä Voit muuttaa sen arvoa myös simulaation aikana Simuloi 8212: n avulla Simulointityyppi suoritetaan Koodin muodostus (oletus) Tulkittu suorittaminen Simuloida mallia käyttäen generoidun C-koodin. Kun ensimmäistä kertaa simulointia, Simulink x00AE luo C-koodin lohkolle. C-koodia käytetään uudelleen myöhempiin simulaatioihin, kunhan malli ei muutu. Tämä vaihtoehto vaatii lisää käynnistysaikaa mutta tarjoaa nopeamman Simuloi mallia MATLAB x00AE-tulkilla. Tämä vaihtoehto lyhentää käynnistysaikaa, mutta sillä on hidas simulointinopeus kuin koodi sukupolvi. Lisätietoa algoritmeista Liukuva ikkuna - menetelmä Liukuikkumenetelmässä kullekin tulonäytteelle annettava tulos on nykyisen näytteen ja Len-1: n edellisten näytteiden keskiarvo. Len on ikkunan pituus. Ensimmäisten Len-1-ulostulojen laskemiseksi, kun ikkunassa ei vielä ole tarpeeksi tietoa, algoritmi täyttää ikkunan nollilla. Esimerkkinä, kun lasketaan keskiarvo, kun toinen panosnäyte tulee sisään, algoritmi täyttää ikkunan Len-2-nollilla. Tietovektori, x. on sitten kaksi datanäytettä, jota seuraa Len - 2 nolla. Kun määrität SpecifyWindowLength-ominaisuuden vääriksi. algoritmi valitsee ääretön ikkunan pituuden. Tässä tilassa lähtö on nykyisen näytteen liikkumaton keskiarvo ja kaikki kanavassa olevat edelliset näytteet. Eksponentiaalinen painotusmenetelmä Eksponentiaalipainotusmenetelmässä liikkuva keskiarvo lasketaan rekursiivisesti käyttäen näitä kaavoja: w N. x03BB x03BB w N x2212 1. x03BB 1. x x00AF N. x03BB (1 x2212 1 w x x3BB) x x00AF N x2212 1. x03BB (1 w No x03BB) xN x x00AF N. x03BB 8212 Keskimääräinen keskiarvo nykyisellä näytteellä x N 8212 Virtaustietojen otto näyte x x00AF N x2212 1. x03BB 8212 Keskimääräinen liike edellisellä näytteellä 955 8212 Unohtumistekijä w N. x03BB 8212 Nykyiseen datanäytteeseen (1 x 2212 1 w N. x03BB) x x00AF N x2212 1. x03BB 8212 Edellisen datan vaikutus keskimäärään Ensimmäisessä näytteessä, jossa Nl, algoritmi valitsee w N. x03BB 1. Seuraavasta näytteestä päivitetään painotuskerrointa ja lasketaan keskiarvo rekursiivisen yhtälön mukaisesti. Kun tietojen ikä nousee, painotuskertoimen suuruus laskee eksponentiaalisesti eikä koskaan saavuta nollaa. Toisin sanoen, viimeaikaisilla tiedoilla on enemmän vaikutusta nykyiseen keskiarvoon kuin vanhemmat tiedot. Unohoituskertoimen arvo määrittää painotuskertoimien muutosnopeuden. Unohoituskerroin 0,9 antaa vanhemmille tiedoille enemmän painoa kuin unohtamisen tekijä on 0,1. Unohoituskerroin 1,0 osoittaa ääretöntä muistia. Kaikilla aiemmilla näytteillä on sama paino. Järjestelmäobjekteja Valitse maa

No comments:

Post a Comment