Tauler de control Habr basat en HMI d'Advantech


Vídeo: consola d'administració Habr. Et permet regular el karma, qualificar i prohibir els usuaris.

TL; DR: En aquest article intentaré crear un tauler de control Habr còmic utilitzant l'entorn de desenvolupament de la interfície industrial Webaccess/HMI Designer i el terminal WebOP.

La interfície home-màquina (HMI) és un conjunt de sistemes per a la interacció humana amb màquines controlades. Normalment, aquest terme s'aplica als sistemes industrials que tenen un operador i un panell de control.

WebOP — un terminal industrial autònom per a la creació d'interfícies home-màquina. S'utilitza per crear panells de control de producció, sistemes de monitorització, sales de control, controladors domèstics intel·ligents, etc. Admet connexió directa amb equips industrials i pot funcionar com a part d'un sistema SCADA.

Terminal WebOP - maquinari

Tauler de control Habr basat en HMI d'AdvantechEl terminal WebOP és un ordinador de baix consum basat en un processador ARM, en un sol cas amb monitor i pantalla tàctil, dissenyat per executar un programa amb una interfície gràfica creat a HMI Designer. Segons el model, els terminals tenen a bord diverses interfícies industrials: RS-232/422/485, bus CAN per a la connexió a sistemes d'automoció, port USB Host per connectar perifèrics addicionals, port USB Client per connectar el terminal a un ordinador, àudio entrada i sortida d'àudio, lector de targetes MicroSD per a memòria no volàtil i transferència de configuració.

Els dispositius es col·loquen com un reemplaçament pressupostari dels ordinadors tot en un, per a tasques que no requereixen processadors potents i els recursos d'un ordinador d'escriptori complet. WebOP pot funcionar com a terminal autònom per a control i entrada/sortida de dades, emparellat amb altres WebOP o com a part d'un sistema SCADA.

Tauler de control Habr basat en HMI d'Advantech
El terminal WebOP es pot connectar directament a dispositius industrials

Refrigeració passiva i protecció IP66

A causa de la baixa dissipació de calor, alguns models WebOP estan dissenyats completament sense refrigeració activa per aire. Això permet muntar els dispositius en zones sensibles als nivells de soroll i redueix la quantitat de pols que entra a l'interior de la carcassa.

El panell frontal està fet sense buits ni juntes, té un grau de protecció IP66, i permet l'entrada directa d'aigua a pressió.

Tauler de control Habr basat en HMI d'Advantech
Panell posterior del terminal WOP-3100T

Memòria no volàtil

Per evitar la pèrdua de dades, WebOP té 128 Kb de memòria no volàtil, amb la qual es pot treballar de la mateixa manera que amb la memòria RAM. Pot emmagatzemar lectures de comptadors i altres dades crítiques. En cas d'interrupció de l'alimentació, les dades es desaran i es restauraran després d'un reinici.

Actualització remota

El programa que s'executa al terminal es pot actualitzar de forma remota mitjançant una xarxa Ethernet o mitjançant interfícies sèrie RS-232/485. Això simplifica el manteniment, ja que elimina la necessitat d'anar a tots els terminals per actualitzar el programari.

Models WebOP

Tauler de control Habr basat en HMI d'Advantech
Sèrie 2000T - els dispositius més assequibles construïts sobre la base del sistema operatiu en temps real HMI RTOS. La sèrie està representada per WebOP-2040T/2070T/2080T/2100T, amb diagonals de pantalla de 4,3 polzades, 7 polzades, 8 polzades i 10.1 polzades, respectivament.

Tauler de control Habr basat en HMI d'Advantech
Sèrie 3000T — models més avançats basats en el sistema operatiu Windows CE. Es diferencien de la sèrie 2000T en un gran nombre d'interfícies de maquinari i tenen una interfície CAN a bord. Els dispositius funcionen en un rang de temperatures estès (-20 ~ 60 °C) i tenen protecció antiestàtica (aire: 15KV/Contacte: 8KV). La línia compleix totalment els requisits de l'estàndard IEC-61000, que permet utilitzar els dispositius en la fabricació de semiconductors on la descàrrega estàtica és un problema. La sèrie està representada per WebOP-3070T/3100T/3120T, amb diagonals de pantalla de 7 polzades, 10.1 polzades i 12.1 polzades, respectivament.

Entorn de desenvolupament WebAccess/HMI Designer

Fora de la caixa, el terminal WebOP és només un ordinador ARM de baix consum en el qual podeu executar qualsevol programari, però l'objectiu d'aquesta solució és l'entorn de desenvolupament d'interfície industrial WebAcess/HMI propietari. El sistema consta de dos components:

  • Dissenyador HMI — entorn per desenvolupar interfícies i lògica de programació. S'executa sota Windows a l'ordinador del programador. El programa final es compila en un fitxer i es transfereix al terminal per a l'execució en temps d'execució. El programa està disponible en rus.
  • Temps d'execució de l'HMI — temps d'execució per executar el programa compilat al terminal final. Pot funcionar no només en terminals WebOP, sinó també en Advantech UNO, MIC i ordinadors d'escriptori normals. Hi ha versions d'execució per a Linux, Windows, Windows CE.

Tauler de control Habr basat en HMI d'Advantech

Hola món: creant un projecte

Comencem a crear una interfície de prova per al nostre tauler de control Habr. Executaré el programa al terminal WebOP-3100T executant WinCE. Primer, creem un nou projecte a HMI Designer. Per executar un programa a WebOP, és important seleccionar el model correcte; d'això dependrà el format del fitxer final. En aquest pas, també podeu seleccionar l'arquitectura de l'escriptori i, a continuació, es compilarà el fitxer final per al temps d'execució X86.

Tauler de control Habr basat en HMI d'Advantech
Crear un nou projecte i triar una arquitectura

Seleccionar el protocol de comunicació a través del qual es carregarà el programa compilat a WebOP. En aquest pas, podeu seleccionar una interfície sèrie o especificar l'adreça IP del terminal.
Tauler de control Habr basat en HMI d'Advantech

Interfície de creació de projectes. Al costat esquerre hi ha un diagrama en arbre dels components del futur programa. De moment, només ens interessa l'element Pantalles, aquestes són directament les pantalles amb elements d'interfície gràfica que es mostraran al terminal.

Tauler de control Habr basat en HMI d'Advantech

Primer, creem dues pantalles amb el text "Hola món" i la possibilitat de canviar entre elles mitjançant botons. Per fer-ho, afegirem una nova pantalla, Pantalla #2, i a cada pantalla hi afegirem un element de text i dos botons per canviar entre pantalles (Botons de pantalla). Configurem cada botó per canviar a la pantalla següent.
Tauler de control Habr basat en HMI d'Advantech
Interfície per configurar el botó per canviar entre pantalles

El programa Hello World està llest, ara el podeu compilar i executar. En l'etapa de compilació pot haver-hi errors en cas de variables o adreces especificades incorrectament. Qualsevol error es considera fatal; el programa només es compilarà si no hi ha errors.
L'entorn ofereix la possibilitat de simular un terminal perquè pugueu depurar el programa a l'ordinador localment. Hi ha dos tipus de simulació:

  • Simulació en línia — S'utilitzaran totes les fonts de dades externes especificades al programa. Aquests poden ser USO o dispositius connectats mitjançant interfícies sèrie o Modbus TCP.
  • Simulació fora de línia — simulació sense l'ús de dispositius externs.

Tot i que no disposem de dades externes, fem servir la simulació fora de línia, havent compilat prèviament el programa. El programa definitiu estarà situat a la carpeta del projecte, amb el nom ProjectName_ProgramName.px3

Tauler de control Habr basat en HMI d'Advantech
Un programa que s'executa a la simulació es pot controlar amb el cursor del ratolí de la mateixa manera que ho faria a la pantalla tàctil d'un terminal WebOP. Veiem que tot funciona segons el previst. Genial.
Per descarregar el programa a un terminal físic, només cal que feu clic al botó Descarrega. Però com que no he configurat la connexió del terminal a l'entorn de desenvolupament, simplement podeu transferir el fitxer mitjançant una unitat flash USB o una targeta de memòria MicroSD.
Tauler de control Habr basat en HMI d'Advantech
La interfície del programa és intuïtiva, no passaré per tots els blocs gràfics. La creació de fons, formes i text serà clara per a qualsevol que hagi utilitzat programes similars a Word. Per crear una interfície gràfica, no calen coneixements de programació; tots els elements s'afegeixen arrossegant el ratolí al formulari.

Treballant amb la memòria

Ara que sabem com crear elements gràfics, aprenem a treballar amb contingut dinàmic i un llenguatge de script. Creem un gràfic de barres que mostri dades d'una variable O $ 100. A la configuració del gràfic, seleccioneu el tipus de dades: enter de 16 bits i l'interval de valors del gràfic: de 0 a 10.

Tauler de control Habr basat en HMI d'Advantech

El programa admet escriure scripts en tres idiomes: VBScript, JavaScript i el seu propi llenguatge. Faré servir la tercera opció perquè hi ha exemples a la documentació i l'ajuda de sintaxi automàtica directament a l'editor.

Afegim una nova macro:

Tauler de control Habr basat en HMI d'Advantech

Escrivim un codi senzill per canviar de manera incremental les dades d'una variable que es pot fer un seguiment en un gràfic. Afegirem 10 a la variable i la restablirem a zero quan sigui superior a 100.

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

Per executar l'script en un bucle, configureu-lo a la configuració general com a macro principal, amb un interval d'execució de 250 ms.

Tauler de control Habr basat en HMI d'Advantech
Compilem i executem el programa al simulador:

Tauler de control Habr basat en HMI d'Advantech

En aquesta etapa, hem après a manipular dades a la memòria i mostrar-les visualment. Això ja és suficient per crear un sistema de monitoratge senzill, rebent dades de dispositius externs (sensors, controladors) i gravant-les a la memòria. Hi ha diversos blocs de visualització de dades disponibles a HMI Designer: en forma de dials circulars amb fletxes, diversos gràfics i gràfics. Mitjançant scripts de JavaScript, podeu descarregar dades de fonts externes mitjançant HTTP.

Tauler de control Habr

Utilitzant les habilitats adquirides, farem una interfície còmica per a la consola d'administració Habr.

Tauler de control Habr basat en HMI d'Advantech

El nostre comandament a distància hauria de ser capaç de:

  • Canvia els perfils d'usuari
  • Emmagatzema el karma i les dades de valoració
  • Canvieu el karma i els valors de qualificació mitjançant controls lliscants
  • Quan feu clic al botó "prohibir", el perfil s'hauria de marcar com a prohibit, l'avatar hauria de canviar a ratllat

Mostrarem cada perfil en una pàgina separada, així que crearem una pàgina per a cada perfil. Emmagatzemarem el karma i la qualificació en variables locals a la memòria, que s'inicializaran mitjançant la macro de configuració quan s'iniciï el programa.

Tauler de control Habr basat en HMI d'Advantech
La imatge es pot fer clic

Ajust de karma i valoració

Per ajustar el karma utilitzarem el control lliscant (Slide Switch). Especifiquem la variable inicialitzada a la macro de configuració com a adreça de gravació. Limitem l'interval de valors del control lliscant de 0 a 1500. Ara, quan el control lliscant es mou, s'escriuran dades noves a la memòria. En aquest cas, l'estat inicial del control lliscant correspondrà als valors de la variable en memòria.

Tauler de control Habr basat en HMI d'Advantech
Per mostrar els valors numèrics de karma i valoració, utilitzarem l'element de visualització numèrica. El principi del seu funcionament és similar al diagrama de l'exemple del programa "Hello World"; simplement indiquem l'adreça de la variable a Monitor Address.

Botó Ban

El botó "prohibició" s'implementa mitjançant l'element de commutació. El principi d'emmagatzematge de dades és similar als exemples anteriors. A la configuració, podeu seleccionar diferents text, color o imatge, segons l'estat del botó.

Tauler de control Habr basat en HMI d'Advantech
Quan es prem el botó, l'avatar s'ha de ratllar en vermell. Això és fàcil d'implementar mitjançant el bloc de visualització d'imatges. Us permet especificar diverses imatges associades a l'estat del botó de commutació. Per fer-ho, el bloc rep la mateixa adreça que el bloc amb el botó i el nombre d'estats. La imatge amb plaques de nom sota l'avatar està configurada de manera similar.

Tauler de control Habr basat en HMI d'Advantech

Conclusió

En general, em va agradar el producte. Anteriorment, tenia experiència utilitzant una tauleta Android per a tasques similars, però desenvolupar-hi una interfície és molt més difícil i les API del navegador no permeten l'accés total als perifèrics. Un terminal WebOP pot substituir una combinació d'una tauleta, un ordinador i un controlador Android.

HMI Designer, malgrat el seu disseny arcaic, és força avançat. Sense habilitats especials de programació, podeu dibuixar ràpidament una interfície de treball. L'article no parla de tots els blocs gràfics, dels quals n'hi ha molts: canonades animades, cilindres, gràfics, interruptors de palanca. Admet molts controladors industrials populars des de la caixa i conté connectors de base de dades.

Referències

Es poden descarregar WebAccess/HMI Designer i l'entorn de desenvolupament Runtime aquí

Fonts del projecte del panell de control Habr

Font: www.habr.com

Afegeix comentari