Neste artigo, quero compartilhar minha experiência de uso dos sistemas de código aberto Zabbix e Grafana para visualizar o trabalho das linhas de produção. As informações podem ser úteis para quem procura uma maneira rápida de exibir ou analisar visualmente os dados coletados em projetos de automação industrial ou IoT. O artigo não é um guia detalhado, mas sim um conceito de sistema de monitoramento baseado em software de código aberto para uma empresa de manufatura.
Ferramentas
Zabbix - há muito tempo que o usamos para monitorar a infraestrutura de TI de uma planta. O sistema acabou sendo tão conveniente e versátil que começamos a inserir dados de linhas de produção, sensores e controladores. Isso nos permitiu coletar todos os dados de métricas em um só lugar, para fazer gráficos simples de consumo de recursos e desempenho do equipamento, mas realmente não tínhamos análises e gráficos bonitos.
Grafana é uma ferramenta poderosa de análise e visualização de dados. Um grande número de plug-ins permite coletar dados de várias fontes (zabbix, clickhouse, influxDB), processá-los em tempo real (ler o valor médio, quantidade, diferença, etc.) e desenhar todos os tipos de gráficos (de linhas simples, velocímetros, tabelas a diagramas complexos )
Draw.io é um serviço que permite desenhar desde um simples diagrama de blocos até uma planta baixa em um editor online. Existem muitos modelos prontos e objetos desenhados. Os dados podem ser exportados em todos os principais formatos gráficos ou xml.
Juntando tudo
Existem muitos artigos sobre como instalar e configurar o Grafana e o Zabbix, vou falar sobre os principais pontos da configuração.
No servidor Zabbix, um "host" é criado, que possuirá "itens" (item) com métricas de nossos sensores. É aconselhável pensar os nomes dos nós e elementos de dados com antecedência e torná-los o mais estruturados possível, já que nos referiremos a eles a partir de grafana através de expressões regulares. Essa abordagem é conveniente porque você pode obter dados de um grupo de elementos com uma solicitação.
Para configurar a grafana, você precisará instalar plug-ins adicionais:
- Zabbix by Alexander Zobnin (alexanderzobnin-zabbix-app) – zabbix
- natel-discrete-panel –
- pierosavi-imageit-panel –
- agenty-flowcharting-panel – draw.io
, Configuration\Data sources\Zabbix. api zabbix , http://zabbix.local/zabbix/api_jsonrpc.php, . , api: zabbix API version: 5.0.1
Dashboard
.
natel-discrete-panel
( = 1, =0). discrete , : , / % .
, . , . , , ( «1», «ON»)
pierosavi-imageit-panel
Imageit , . url sensor. .
agenty-flowcharting-panel
FlowCharting , . , ( , , ).
, zabbix. , . — , , . Item : «/(^ 1)|()|()/» — : , « 1» «» «»
, . , (), /. : delta, , /. 0.06 /. , (setAlias) .
delta
: - ( = ). " 1 — 1 ()". : delta ( ), «+1» , «-1» «0» . 1 . - .
-
«Edit Draw», , . . , – .
Draw.io
, .
() :
- Options — (Rule name), , (Apply to metrics). (Aggregation) , Last — , , avg — , .
- Thresholds — , , . «0» — «Ok» , «>1» Critical .
- Color/Tooltip Mappings» «Label/Text Mappings» — . , – . .
flowcharting , :
- /
- - ()
. , . , – .
Eu realmente gostei do pacote Zabbix + Grafana e recomendo prestar atenção nele se você precisa processar rapidamente os dados de controladores ou sensores sem programar ou implementar produtos comerciais complexos. Claro, isso não substituirá os sistemas SCADA profissionais, mas será suficiente como uma ferramenta de monitoramento centralizado de toda a produção.