Quando se trata de trabalho coordenado de qualquer produção tecnicamente complexa, é difícil superestimar a importância da segurança. E se estamos falando sobre o setor petroquímico - ainda mais. Aqui, a segurança envolve toda uma gama de medidas: controle de acesso, perímetros especialmente protegidos, cães famintos, videovigilância e uma condição satisfatória dos nós técnicos. É sobre esses nós que falaremos hoje.

Existem muitos mecanismos e dispositivos complexos, mesmo em apenas uma plataforma. Válvulas e plugues compostos, bombas, tubulações, dispositivos de extinção de incêndios, eletrônicos - tudo isso deve ser monitorado, cada nó no momento certo deve ter certos parâmetros: pressão nos tubos, temperatura do nó, grau de abertura de qualquer plugue e similares. Certamente, vários dos parâmetros mais críticos são controlados eletronicamente, mas onde é automaticamente difícil fazer isso, bons velhos passeios a pé entram em cena.
Então, por enquanto, em nossas instalações, o atacante termina de tomar chá, leva um walkie-talkie com ele para se comunicar com os colegas, um notebook para registrar possíveis defeitos ou desvios da norma, é paciente e de bom humor e faz uma caminhada pelo local. Se ele perceber algumas esquisitices críticas, relate-as por rádio, após as quais são tomadas medidas para eliminá-las. E então, depois de concluir o desvio, ele vai para o local de trabalho e, por algum tempo, reescreve todos os batentes descobertos no relatório geral. Mãos no papel.
Obviamente, gasta-se muito tempo em todo esse trabalho, dado o número total de turnos, a frequência das soluções alternativas e a velocidade de escrita de indivíduos. Mas então a caligrafia também deve ser desmontada. Portanto, decidimos facilitar a vida dos rastreadores e de nós mesmos escrevendo um aplicativo para rastreamentos móveis.
O fato de o atacante se tornar mais fácil é compreensível, porque você não precisa mais escrever tudo com as mãos em cadernos e depois gastar tempo gerando um relatório. Qualquer incidente que eles notem é apresentado por ele usando um aplicativo móvel, e o sistema o arquiva imediatamente no relatório geral em um formato legível.
E outra vantagem da empresa é reduzir o tempo de inatividade do equipamento no local. Nas realidades atuais, 1 hora de inatividade para uma produção petroquímica de tamanho médio é de vários milhões de rublos. A quantia que pode claramente ser gasta com maior benefício do que desligar parte do site e assistir à restauração funcionar, olhando o relógio.
E os supervisores de turno são mais fáceis - fica imediatamente claro o quão completo e cuidadosamente foi o próximo desvio (e se era perfeito em princípio), quais defeitos foram descobertos, quem era o culpado e o que fazer. Se algo acontecer - agora a gerência pode dar imediatamente ao atacante as instruções necessárias no bate-papo do aplicativo ("Sanya, gire essa coisa com força e, de repente, o que").
Na verdade, essas foram as principais dores que tentamos resolver.
Aplicativo e smartphone
Cerca de 15 pessoas trabalharam no aplicativo, se você contar tudo como um todo - back-end, front-end, aplicativo móvel, design.
Eles decidiram fazer o back-end no .NET Core, a frente no reactjs e onde sem Kotlin e Java.
No momento, existe um piloto em funcionamento em um de nossos sites - existem os seguintes trabalhos para o atacante:


O smartphone não se parece muito com isso porque o rastreador pode derrubá-lo, martelar algumas unhas com ele ou neutralizar o agressor de perímetro com um arremesso bem direcionado, mas porque um dos principais requisitos para dispositivos eletrônicos no site é a proteção contra explosão, ou seja, o dispositivo não deve se tornar uma fonte de explosão (não criar uma faísca e afins). Afinal, tudo pode acontecer - em algum lugar haverá uma ejeção de gás, que por si só não é tão perigosa até alguém próximo querer fumar, soldar um pedaço de ferro a outro pedaço de ferro ou, por algum motivo, o telefone celular não passar a chuva As implicações são bastante óbvias.
Portanto, o principal no site é retomar com relação a qualquer ameaça, por mais improvável que pareça. A propósito, pela mesma razão, nossos beacons Bluetooth e tags NFC não parecem beacons concisos familiares a todos, mas assim:


O dispositivo para rastreamentos funciona no Android padrão, respectivamente, escrevemos o aplicativo para esta plataforma. Graças à aplicação estão disponíveis:
- autorização do funcionário que realiza o desvio usando a etiqueta NFC do funcionário (o passe de um funcionário com uma etiqueta é anexado ao smartphone, o smartphone entende quem está no turno);
- uma tela de turno com um relatório dos defeitos encontrados e sua descrição (você pode tirar fotos em um smartphone e fornecer descrições relevantes);
- estatísticas sobre o trabalho realizado (o supervisor de turno define tarefas específicas para contornar, que devem ser concluídas, algo pode chegar a um impulso durante a rodada);
- composição dos turnos (lista de colegas e participantes da rodada anterior);
- defeitos corrigidos (hora de detectar um problema, o nome do equipamento e seu código, tipo de problema, foto, status do equipamento, etc.);
- Bate-papo para solução rápida de problemas;
- relatório completo da rodada (tempo gasto, etc.).
Também pensamos na possibilidade de fazer história no processo de dar voltas, mas decidimos que ainda não valia a pena.
Em média, há 8 pessoas em um turno e 4 turnos. Prendemos o sistema com uma capacidade média de 2500 pessoas (porque agora é um piloto em um site, e agora temos 22 sites e 150 instalações).
Bypass
O local, o equipamento e as áreas necessárias são pendurados com sinalizadores BT e etiquetas NFC. Em alguns lugares, para que o perímetro seja marcado como verificado, o Bluetooth é suficiente, mas em algum lugar é necessário usar o NFC. Porque Como existem certos tipos de equipamento para verificação dos quais basta entrar no alcance do sinalizador BT (é suficiente ver que a coisa sob teste ainda existe no mesmo local e não foi levada pelo vento), e outros equipamentos exigem uma verificação mais completa, usando instrumentos de medição precisos, parâmetros e indicadores de fixação.
Portanto, o funcionário deve tocar na etiqueta NFC do equipamento em teste com o smartphone, para que o sistema conte isso como verificação.
Além disso, em cada farol, costuramos uma lista de verificações que devem ser realizadas com o equipamento amarrado ao farol. O funcionário entra no raio do equipamento BT-beacon e recebe uma lista de verificação no aplicativo com o que exatamente precisa ser verificado para esse pedaço de ferro. A mesma coisa com uma etiqueta NFC. Ele tocou no equipamento - uma lista de verificação chegou ao smartphone - conduzia verificações. Por exemplo, conectei um smartphone à bomba - e recebi uma lista: "Verificar temperatura", "Verificar pressão" e outros parâmetros.
Consequentemente, assim que um funcionário entra na zona do sinalizador BT, no diagrama da gerência, essa zona é marcada em verde (ou seja, o funcionário estava lá e examinou esse nó) e, no caso de uma etiqueta NFC, o funcionário marca cada verificação manual na lista.
Dessa forma, resolvemos o problema de esquecimento do funcionário (no entanto, uma pessoa pode sobrecarregar e executar não 12 verificações necessárias no dispositivo, mas 11, por exemplo, e aqui ele sempre tem uma lista de verificações em mãos na tela do smartphone) e geramos um relatório mais claramente (nos resultados será visto quais nós foram inspecionados e quais verificações foram executadas por um rastreador específico).
Como acontece que quase tudo agora é feito por meio desse smartphone, estamos trabalhando na possibilidade de rejeitar walkie-talkies - no final, o rastreador já está com o smartphone, por que não enviar mensagens de voz através do aplicativo a partir dele. O nível de comunicação nos sites é garantido de forma correspondente, para que não haja problemas.
Isto é para o aplicativo do rastreador. E aqui está a aparência do supervisor de turno.
O sistema
No layout geral do site, a gerência vê as áreas marcadas e cada sensor correspondente ao equipamento que precisa ser verificado. Assim que o atacante marcar o perímetro ou pedaço de ferro verificado com um smartphone, a área correspondente no diagrama será pintada de verde.
Criamos um painel conveniente para que tudo possa ser convenientemente monitorado e gerados relatórios, bem como novas tarefas para os rastreadores durante o rastreamento (às vezes existe essa necessidade).
Conseguimos o trabalho coordenado de todo esse negócio graças à arquitetura de microsserviços. Tudo se parece com isso (e falaremos mais sobre isso em mais detalhes):

A pesquisa de texto completo no back-end foi feita no Elasticsearch.
O que então
Agora, resolvemos os principais problemas que levaram à criação do sistema, e você pode pendurar pequenas coisas adicionais nele. Por exemplo, dividiremos as bases para acelerar a operação geral do sistema.
E também queremos aproveitar a possibilidade de preencher solicitações de reparo completas e acompanhar sua implementação.
Obviamente, feche vários bugs. Agora, por exemplo, algumas vezes os rastreadores reclamam que as permissões necessárias para o aplicativo funcionarem são provenientes de telefones celulares.
Em geral, o piloto foi bem-sucedido, embora ainda não tenha conseguido coletar estatísticas o mais claras possíveis sobre incidentes - por exemplo, um rastreador percorreu o site, viu que um dos stubs estava solto, apenas o ajustou em movimento e continuou, dizendo “Que diabos, o que é isso na lista? depositar ". Ou seja, pequenas coisas francas são sempre corrigidas em movimento, mas nem sempre são registradas no relatório. Mas queremos consertar tudo.
O principal é que o tempo útil do turno mudou para melhor.
Até agora, esses são todos os dados com base nos quais podemos construir estatísticas, porque o piloto é um piloto, mas, em geral, todos estão felizes.
Incluindo rastreadores.