Tässä artikkelissa haluan jakaa kokemukseni avoimen lähdekoodin Zabbix- ja Grafana-järjestelmien käytöstä tuotantolinjojen työn visualisointiin. Tiedoista voi olla hyötyä niille, jotka etsivät nopeaa tapaa visuaalisesti näyttää tai analysoida kerättyä dataa teollisuusautomaatio- tai IoT-projekteissa. Artikkeli ei ole yksityiskohtainen opas, vaan pikemminkin konsepti avoimen lähdekoodin ohjelmistoihin perustuvasta valvontajärjestelmästä valmistusyritykselle.
Työkalut
Zabbix – Olemme käyttäneet sitä pitkään tehtaan IT-infrastruktuurin valvontaan. Järjestelmä osoittautui niin käteväksi ja monipuoliseksi, että aloimme syöttää siihen tietoja tuotantolinjoilta, antureista ja ohjaimista. Tämä antoi meille mahdollisuuden kerätä kaikki mittaustiedot yhteen paikkaan, tehdä yksinkertaisia kaavioita resurssien kulutuksesta ja laitteiden suorituskyvystä, mutta meiltä todella puuttui analytiikka ja kauniit kaaviot.
grafana on tehokas työkalu analytiikkaan ja tietojen visualisointiin. Suuri määrä laajennuksia mahdollistaa tietojen oton eri lähteistä (zabbix, clickhouse, influxDB), käsitellä niitä lennossa (laskea keskiarvon, summan, eron jne.) ja piirtää kaikenlaisia kaavioita (yksinkertaisista viivoista, nopeusmittareista). , taulukoista monimutkaisiin kaavioihin ).
Draw.io - palvelu, jonka avulla voit piirtää online-editorissa yksinkertaisesta lohkokaaviosta pohjapiirroksen. Valmiita malleja ja piirrettyjä esineitä on monia. Tiedot voidaan viedä kaikkiin tärkeimpiin grafiikkamuotoihin tai xml-muotoon.
Kaikki yhdistetään
Grafanan ja Zabbixin asentamisesta ja määrittämisestä on kirjoitettu paljon artikkeleita, puhun kokoonpanon pääkohdista.
Zabbix-palvelimelle luodaan "verkkosolmu" (isäntä), joka omistaa "tietoelementit" (nimike) antureidemme mittareilla. Solmujen ja tietoelementtien nimet kannattaa miettiä etukäteen ja tehdä niistä mahdollisimman jäsennelty, sillä niihin päästään grafanasta säännöllisten lausekkeiden kautta. Tämä lähestymistapa on kätevä, koska voit saada tietoja elementtiryhmästä yhdellä pyynnöllä.
Jos haluat määrittää grafanan, sinun on asennettava lisäosia:
- Alexander Zobninin Zabbix (alexanderzobnin-zabbix-app) - integrointi zabbixin kanssa
- natel-discrete-panel - laajennus diskreettiin visualisointiin vaakakaaviossa
- pierosavi-imageit-panel - laajennus tietojen näyttämiseen kuvan päällä
- agenty-flowcharting-panel - plugin dynaamiseen kaavioiden visualisointiin osoitteessa draw.io
Itse Zabbixin integrointi konfiguroidaan grafanan valikkokohdassa ConfigurationData sourcesZabbix. Siellä sinun on määritettävä zabbix-palvelimen api-osoite, minulla on tämä
Hallintapaneelin luominen
Tästä alkaa grafanan ja sen lisäosien taika.
natel-discrete-panel -laajennus
Meillä on tiedot moottoreiden tilasta riveillä (toimii = 1, ei toimi = 0). Diskreetin kaavion avulla voimme piirtää asteikon, joka näyttää: moottorin tilan, kuinka monta minuuttia / tuntia tai % se on toiminut ja kuinka usein se on käynnistetty.
Moottorin tilan visualisointi
Mielestäni tämä on yksi parhaista kaavioista laitteiston suorituskyvyn visualisoimiseksi. Näet heti, kuinka kauan se on käyttämättömänä, missä tiloissa se toimii useammin. Dataa voi olla paljon, ne voidaan koota alueiden mukaan, muuntaa arvojen mukaan (jos arvo on "1", niin näyttää "ON")
pierosavi-imageit-paneelilaajennus
Imageit on kätevä käyttää, kun sinulla on jo piirretty kaavio tai suunnitelma huoneesta, johon haluat käyttää antureiden tietoja. Visualisointiasetuksissa sinun on määritettävä kuvan url-osoite ja lisättävä tarvitsemasi anturielementit. Elementti näkyy kuvassa ja se voidaan sijoittaa oikeaan paikkaan hiirellä.
Uunin kaavio lämpötila- ja painemittareilla
agenty-flowcharting-paneelilaajennus
Haluaisin kertoa sinulle lisää FlowCharting-visualisoinnin luomisesta, koska se on uskomattoman toimiva työkalu. Sen avulla voit tehdä dynaamisen muistomerkin, jonka elementit vastaavat mittareiden arvoihin (vaihtavat väriä, sijaintia, nimeä jne.).
Haetaan tietoja
Minkä tahansa visualisointielementin luominen grafanassa alkaa tietopyynnöllä lähteestä, meidän tapauksessamme se on zabbix. Kyselyjä käyttämällä meidän on saatava kaikki mittarit, joita haluamme käyttää kaaviossa. Mittarin tiedot ovat tietoelementtien nimiä Zabbixissa, voit määrittää sekä erillisen metriikan että joukon suodatuksella säännöllisen lausekkeen kautta. Esimerkissäni Tuote-kenttä sisältää lausekkeen: "/(^rivi 1)|(saatavuus)|(kurpitsa)/" - tämä tarkoittaa: valitse kaikki tiedot, joiden nimi alkaa tiukasti rivillä 1 tai sisältää sanan "saatavuus" " tai sisältää sanan "kurpitsa"
Esimerkki tietopyynnön asettamisesta ensimmäisen rivin moottoreista ja raaka-aineiden saatavuudesta
Tietojen muuntaminen
Lähdetiedot eivät välttämättä aina ole siinä muodossa, jossa meidän on näytettävä ne. Meillä on esimerkiksi minuuttikohtaiset tiedot tuotteen painosta astiassa (kg), ja haluamme näyttää täyttösuhteen t/h. Teen sen näin: otan painotiedot ja muunnan ne delta graphana -funktiolla, joka laskee metriarvojen välisen eron, jolloin nykyinen paino muunnetaan kg/min. Sitten kerron 0.06:lla saadakseen tuloksen tonnia/tunti. Koska painomittaria käytetään useissa kyselyissä, annan sille uuden aliaksen (setAlias) ja käytän sitä renderöintisäännössä.
Esimerkki delta-parametrin ja kertoimen käyttämisestä ja mittarin uudelleennimeämisestä kyselyssä
Tässä on toinen esimerkki tietojen muuntamisesta: Minun piti laskea erien määrä (syklin käynnistys = moottorin käynnistys). Mittari lasketaan moottorin tilan "rivi 1 - säiliöpumppu 1 (tila)" perusteella. Muunnos: muutamme alkuperäisen metriikan dataa delta-funktiolla (arvoero), jolloin metriikassa on arvo "+1" moottorin käynnistämiseksi, "-1" pysäyttääksesi ja "0", kun moottori ei käynnisty. muuttaa sen tilaa. Sitten poistan kaikki arvot alle 1 ja summaan ne. Tuloksena on moottorin käynnistysten lukumäärä.
Esimerkki tietojen muuntamisesta nykyisestä tilasta käynnistysten lukumääräksi
Nyt itse visualisoinnista
Näyttöasetuksissa on painike "Edit Draw", se käynnistää editorin, jossa voit piirtää kaavion. Jokaisella kaavion objektilla on omat parametrinsa. Jos esimerkiksi määrität kirjasinasetukset editorissa, niitä sovelletaan tietojen visualisointiin grafanassa.
Tältä editori näyttää Draw.iossa
Kun kaavio on tallennettu, se näkyy grafanassa ja on mahdollista luoda sääntöjä elementtien muuttamiseen.
Parametreissa () määritämme:
- Asetukset – aseta säännön nimi (Säännön nimi), sen mittarin nimi tai alias, jonka tietoja käytetään (Käytä mittareihin). Tietojen yhdistämisen tyyppi (Aggregation) vaikuttaa mittarin lopputulokseen, joten Last tarkoittaa, että viimeinen arvo valitaan, keskiarvo tarkoittaa oikeasta yläkulmasta valitun ajanjakson keskiarvoa.
- Kynnykset - kynnysarvoparametri, kuvaa värin käytön logiikkaa, eli valittua väriä sovelletaan kaavion elementteihin metritiedoista riippuen. Esimerkissäni, jos mittausarvo on "0", tila on "Ok", väri on vihreä, jos arvo on ">1", tila on kriittinen ja väri punainen.
- Väri-/työkaluvihjekartoitukset” ja ”Etiketti-/tekstikartoitukset” — piirielementin ja sen käyttäytymisskenaarion valinta. Ensimmäisessä skenaariossa objekti maalataan päälle, toisessa - siinä on tekstiä, jossa on tietoja metriikasta. Voit valita kohteen kaaviosta painamalla piirimerkkiä ja napsauttamalla kaaviota hiirellä.
Tässä esimerkissä maalaan pumpun ja sen nuolen punaiseksi, jos se toimii, ja vihreäksi, jos se ei toimi.
Vuokaaviolaajennuksen avulla onnistuin piirtämään kaavion koko viivasta, johon:
- aggregaattien väri muuttuu niiden tilan mukaan
- on hälytys tuotteen puutteesta astioissa
- moottorin taajuusasetus tulee näkyviin
- ensimmäisen säiliön täyttö/purkausnopeus
- linjan toimintajaksojen määrä (erä) lasketaan
Tuotantolinjan visualisointi
Tulos
Vaikein osa minulle oli saada tiedot ohjaimista. Zabbixin monipuolisuuden tiedonkeruun ja Grafanan joustavuuden ansiosta pluginien kautta kesti vain pari päivää kattavan näytön luomiseen tuotantolinjan valvontaa varten. Visualisointi mahdollisti kaavioiden ja tilatilastojen tarkastelun sekä helpon pääsyn verkon kautta kaikille kiinnostuneille - kaikki tämä mahdollisti pullonkaulojen ja aggregaattien tehottoman käytön nopean tunnistamisen.
Johtopäätös
Pidin todella Zabbix + Grafana -paketista ja suosittelen kiinnittämään siihen huomiota, jos haluat käsitellä nopeasti ohjaimien tai antureiden tietoja ilman ohjelmointia tai monimutkaisten kaupallisten tuotteiden käyttöönottoa. Tämä ei tietenkään korvaa ammattimaisia SCADA-järjestelmiä, mutta se riittää työkaluksi koko tuotannon keskitettyyn valvontaan.
Lähde: will.com