Panel de control Habr baseado en HMI de Advantech


Vídeo: consola de administración Habr. Permíteche regular o karma, a clasificación e prohibir os usuarios.

TL; DR: Neste artigo intentarei crear un panel de control Habr cómico usando o contorno de desenvolvemento da interface industrial Webaccess/HMI Designer e o terminal WebOP.

A interface humano-máquina (HMI) é un conxunto de sistemas para a interacción humana con máquinas controladas. Normalmente este termo aplícase aos sistemas industriais que teñen un operador e un panel de control.

WebOP — un terminal industrial autónomo para a creación de interfaces home-máquina. Úsase para crear paneis de control de produción, sistemas de monitorización, salas de control, controladores domésticos intelixentes, etc. Admite conexión directa a equipos industriais e pode funcionar como parte dun sistema SCADA.

Terminal WebOP - hardware

Panel de control Habr baseado en HMI de AdvantechO terminal WebOP é un ordenador de baixo consumo baseado nun procesador ARM, nun só caso con monitor e pantalla táctil, deseñado para executar un programa cunha interface gráfica creada en HMI Designer. Segundo o modelo, os terminais dispoñen de varias interfaces industriais a bordo: RS-232/422/485, bus CAN para conectarse a sistemas de automoción, porto USB Host para conectar periféricos adicionais, porto cliente USB para conectar o terminal a un ordenador, audio entrada e saída de audio, lector de tarxetas MicroSD para memoria non volátil e transferencia de configuración.

Os dispositivos sitúanse como un substituto orzamentario para PCs todo en un, para tarefas que non requiren procesadores potentes e os recursos dun ordenador de escritorio completo. WebOP pode funcionar como un terminal autónomo para control e entrada/saída de datos, emparejado con outros WebOP ou como parte dun sistema SCADA.

Panel de control Habr baseado en HMI de Advantech
O terminal WebOP pode conectarse directamente a dispositivos industriais

Refrixeración pasiva e protección IP66

Debido á baixa disipación de calor, algúns modelos WebOP están deseñados totalmente sen arrefriamento activo por aire. Isto permite que os dispositivos se monten en zonas sensibles aos niveis de ruído e reduce a cantidade de po que entra na carcasa.

O panel frontal está feito sen ocos nin xuntas, ten un nivel de protección IP66 e permite a entrada directa de auga a presión.

Panel de control Habr baseado en HMI de Advantech
Panel traseiro do terminal WOP-3100T

Memoria non volátil

Para evitar a perda de datos, WebOP ten 128 Kb de memoria non volátil, coa que se pode traballar do mesmo xeito que coa RAM. Pode almacenar lecturas de contadores e outros datos críticos. En caso de falla de enerxía, os datos gardaranse e restauraranse despois dun reinicio.

Actualización remota

O programa que se executa no terminal pódese actualizar de forma remota a través dunha rede Ethernet ou mediante interfaces serie RS-232/485. Isto simplifica o mantemento, xa que elimina a necesidade de acudir a todos os terminais para actualizar o software.

Modelos WebOP

Panel de control Habr baseado en HMI de Advantech
Serie 2000T - os dispositivos máis económicos construídos sobre a base do sistema operativo en tempo real HMI RTOS. A serie está representada por WebOP-2040T/2070T/2080T/2100T, con diagonais de pantalla de 4,3 polgadas, 7 polgadas, 8 polgadas e 10.1 polgadas, respectivamente.

Panel de control Habr baseado en HMI de Advantech
Serie 3000T — modelos máis avanzados baseados no sistema operativo Windows CE. Diferéncianse da serie 2000T nunha gran cantidade de interfaces de hardware e teñen unha interface CAN a bordo. Os dispositivos funcionan nun rango de temperatura estendido (-20 ~ 60 °C) e teñen protección antiestática (aire: 15KV/Contacto: 8KV). A liña cumpre plenamente os requisitos do estándar IEC-61000, que permite que os dispositivos se utilicen na fabricación de semicondutores onde a descarga estática é un problema. A serie está representada por WebOP-3070T/3100T/3120T, con diagonais de pantalla de 7 polgadas, 10.1 polgadas e 12.1 polgadas, respectivamente.

Entorno de desenvolvemento de WebAccess/HMI Designer

Fóra da caixa, o terminal WebOP é só un ordenador ARM de baixo consumo no que pode executar calquera software, pero o obxectivo desta solución é o contorno de desenvolvemento da interface industrial WebAcess/HMI propietario. O sistema consta de dous compoñentes:

  • Deseñador HMI — contorno para o desenvolvemento de interfaces e lóxica de programación. Funciona baixo Windows no ordenador do programador. O programa final compílase nun só ficheiro e transfírese ao terminal para a súa execución no tempo de execución. O programa está dispoñible en ruso.
  • Tempo de execución de HMI — tempo de execución para executar o programa compilado no terminal final. Pode funcionar non só en terminais WebOP, senón tamén en Advantech UNO, MIC e ordenadores de escritorio habituais. Hai versións en tempo de execución para Linux, Windows, Windows CE.

Panel de control Habr baseado en HMI de Advantech

Ola mundo - creando un proxecto

Comecemos a crear unha interface de proba para o noso panel de control Habr. Vou executar o programa no terminal WebOP-3100T executando WinCE. Primeiro, imos crear un novo proxecto en HMI Designer. Para executar un programa en WebOP, é importante seleccionar o modelo correcto; disto dependerá o formato do ficheiro final. Neste paso, tamén pode seleccionar a arquitectura do escritorio, entón o ficheiro final compilarase para o tempo de execución de X86.

Panel de control Habr baseado en HMI de Advantech
Crear un novo proxecto e escoller unha arquitectura

Seleccionando o protocolo de comunicación a través do cal se cargará o programa compilado en WebOP. Neste paso, pode seleccionar unha interface en serie ou especificar o enderezo IP do terminal.
Panel de control Habr baseado en HMI de Advantech

Interface de creación de proxectos. No lado esquerdo hai un diagrama en árbore dos compoñentes do futuro programa. Polo momento só nos interesa o elemento Pantallas, estas son directamente as pantallas con elementos da interface gráfica que se mostrarán no terminal.

Panel de control Habr baseado en HMI de Advantech

En primeiro lugar, imos crear dúas pantallas co texto "Ola mundo" e a posibilidade de cambiar entre elas mediante botóns. Para iso, engadiremos unha nova pantalla, Pantalla #2, e en cada pantalla engadiremos un elemento de texto e dous botóns para cambiar entre pantallas (Botóns de pantalla). Imos configurar cada botón para cambiar á seguinte pantalla.
Panel de control Habr baseado en HMI de Advantech
Interface para configurar o botón para cambiar entre pantallas

O programa Hello World está listo, agora podes compilalo e executalo. Na fase de compilación pode haber erros en caso de variables ou enderezos especificados incorrectamente. Calquera erro considérase fatal; o programa compilarase só se non hai erros.
O entorno ofrece a posibilidade de simular un terminal para que poidas depurar o programa no teu ordenador localmente. Existen dous tipos de simulación:

  • Simulación en liña — Utilizaranse todas as fontes de datos externas especificadas no programa. Estes poden ser USO ou dispositivos conectados mediante interfaces serie ou Modbus TCP.
  • Simulación fóra de liña — simulación sen o uso de dispositivos externos.

Aínda que non dispoñemos de datos externos, utilizamos simulación fóra de liña, xa que previamente compilamos o programa. O programa definitivo estará situado na carpeta do proxecto, co nome NomeProxecto_NomePrograma.px3

Panel de control Habr baseado en HMI de Advantech
O programa que se executa na simulación pódese controlar co cursor do rato do mesmo xeito que o faría na pantalla táctil dun terminal WebOP. Vemos que todo funciona como se pretende. Genial.
Para descargar o programa nun terminal físico, só tes que facer clic no botón Descargar. Pero como non configurei a conexión do terminal ao contorno de desenvolvemento, pode simplemente transferir o ficheiro usando unha unidade flash USB ou unha tarxeta de memoria MicroSD.
Panel de control Habr baseado en HMI de Advantech
A interface do programa é intuitiva, non pasarei por todos os bloques gráficos. A creación de fondos, formas e texto quedará clara para calquera que utilice programas similares a Word. Para crear unha interface gráfica non se precisan coñecementos de programación; todos os elementos engádense arrastrando o rato ata o formulario.

Traballar coa memoria

Agora que sabemos como crear elementos gráficos, imos aprender a traballar con contido dinámico e unha linguaxe de script. Imos crear un gráfico de barras que mostre os datos dunha variable U $ 100. Na configuración do gráfico, seleccione o tipo de datos: enteiro de 16 bits e o intervalo de valores do gráfico: de 0 a 10.

Panel de control Habr baseado en HMI de Advantech

O programa admite a escritura de scripts en tres linguaxes: VBScript, JavaScript e a súa propia linguaxe. Utilizarei a terceira opción porque hai exemplos para ela na documentación e na axuda de sintaxe automática directamente no editor.

Engademos unha nova macro:

Panel de control Habr baseado en HMI de Advantech

Escribamos un código sinxelo para cambiar gradualmente os datos nunha variable que se pode seguir nun gráfico. Engadiremos 10 á variable e restableceremos a cero cando sexa superior a 100.

$U100=$U100+10
IF $U100>100
$U100=0
ENDIF

Para executar o script nun bucle, configúrao na configuración xeral de configuración como Macro principal, cun intervalo de execución de 250 ms.

Panel de control Habr baseado en HMI de Advantech
Compilemos e executemos o programa no simulador:

Panel de control Habr baseado en HMI de Advantech

Nesta fase, aprendemos a manipular os datos na memoria e a mostralos visualmente. Isto xa é suficiente para crear un sistema de vixilancia sinxelo, recibindo datos de dispositivos externos (sensores, controladores) e gravándoos na memoria. En HMI Designer, están dispoñibles diferentes bloques de visualización de datos: en forma de discos circulares con frechas, varios gráficos e gráficos. Usando scripts JavaScript, pode descargar datos de fontes externas a través de HTTP.

Panel de control habr

Usando as habilidades adquiridas, faremos unha interface cómica para a consola de administración de Habr.

Panel de control Habr baseado en HMI de Advantech

O noso mando a distancia debería ser capaz de:

  • Cambiar perfís de usuario
  • Almacena datos de karma e valoración
  • Cambia os valores de karma e clasificación usando controles deslizantes
  • Cando fas clic no botón "prohibir", o perfil debería marcarse como prohibido, o avatar debería cambiar a tachado

Mostraremos cada perfil nunha páxina separada, polo que crearemos unha páxina para cada perfil. Almacenaremos o karma e a valoración en variables locais na memoria, que se inicializarán mediante Setup Macro cando se inicie o programa.

Panel de control Habr baseado en HMI de Advantech
A imaxe pódese facer clic

Axustar o karma e a clasificación

Para axustar o karma usaremos o control deslizante (Slide Switch). Especificamos a variable inicializada na Macro de configuración como enderezo de gravación. Limitemos o intervalo de valores do control deslizante de 0 a 1500. Agora, cando o control deslizante se move, escribiranse novos datos na memoria. Neste caso, o estado inicial do control deslizante corresponderá aos valores da variable na memoria.

Panel de control Habr baseado en HMI de Advantech
Para mostrar os valores numéricos de karma e clasificación, utilizaremos o elemento de visualización numérico. O principio do seu funcionamento é semellante ao diagrama do programa "Hello World" de exemplo; simplemente indicamos o enderezo da variable en Monitor Address.

Botón Ban

O botón "prohibir" implícase usando o elemento Cambiar. O principio de almacenamento de datos é semellante aos exemplos anteriores. Na configuración, pode seleccionar texto, cor ou imaxe diferente, dependendo do estado do botón.

Panel de control Habr baseado en HMI de Advantech
Cando se preme o botón, o avatar debe estar tachado en vermello. Isto é doado de implementar usando o bloque Picture Display. Permítelle especificar varias imaxes asociadas ao estado do botón Cambiar. Para iso, o bloque recibe o mesmo enderezo que o bloque co botón e o número de estados. A imaxe con placas de identificación baixo o avatar está configurada dun xeito similar.

Panel de control Habr baseado en HMI de Advantech

Conclusión

En xeral, gustoume o produto. Anteriormente, tiña experiencia usando unha tableta Android para tarefas similares, pero desenvolver unha interface para ela é moito máis difícil e as API do navegador non permiten o acceso total aos periféricos. Un terminal WebOP pode substituír unha combinación de tableta, ordenador e controlador Android.

HMI Designer, a pesar do seu deseño arcaico, é bastante avanzado. Sen habilidades especiais de programación, pode esbozar rapidamente unha interface de traballo. O artigo non discute todos os bloques gráficos, dos que hai moitos: tubos animados, cilindros, gráficos, interruptores de palanca. Admite moitos controladores industriais populares e contén conectores de base de datos.

referencias

Pódense descargar WebAccess/HMI Designer e o entorno de desenvolvemento Runtime aquí

Fontes do proxecto do panel de control Habr

Fonte: www.habr.com

Engadir un comentario