Habr-kontrolpanelo bazita sur HMI de Advantech


Vidbendo: Habr-administra konzolo. Permesas al vi reguligi karmon, taksadon kaj malpermesi uzantojn.

TL; DR: En ĉi tiu artikolo mi provos krei komikan kontrolpanelon Habr uzante la Webaccess/HMI Designer industria interfaca evolumedio kaj la WebOP-terminalo.

Hom-maŝina interfaco (HMI) estas aro de sistemoj por homa interago kun kontrolitaj maŝinoj. Tipe tiu esprimo estas aplikita al industriaj sistemoj kiuj havas funkciigiston kaj kontrolpanelon.

WebOP — aŭtonoma industria terminalo por krei hom-maŝinajn interfacojn. Uzita por krei produktajn kontrolpanelojn, monitorajn sistemojn, kontrolĉambrojn, inteligentajn hejmajn regilojn ktp. Subtenas rektan ligon al industria ekipaĵo kaj povas funkcii kiel parto de SCADA-sistemo.

WebOP-terminalo - aparataro

Habr-kontrolpanelo bazita sur HMI de AdvantechLa WebOP-terminalo estas malalt-potenca komputilo bazita sur ARM-procesoro, en ununura kazo kun ekrano kaj tuŝekrano, dizajnita por ruli programon kun grafika interfaco kreita en HMI Designer. Depende de la modelo, la terminaloj havas diversajn industriajn interfacojn surŝipe: RS-232/422/485, CAN-buso por konekti al aŭtomobilaj sistemoj, USB-Gastiganto-haveno por konekti pliajn ekstercentrajn, USB-klient-havenon por konekti la terminalon al komputilo, audio. enigo kaj aŭda eligo, leganto de kartoj MicroSD por nevolatila memoro kaj translokigo de agordoj.

La aparatoj estas poziciigitaj kiel buĝeta anstataŭaĵo por ĉiu-en-unu komputiloj, por taskoj kiuj ne postulas potencajn procesorojn kaj la rimedojn de plentaŭga labortabla komputilo. WebOP povas funkcii kiel memstara terminalo por kontrolo kaj datenenigo/eligo, parigita kun aliaj WebOPoj, aŭ kiel parto de SCADA sistemo.

Habr-kontrolpanelo bazita sur HMI de Advantech
La WebOP-terminalo povas konekti rekte al industriaj aparatoj

Pasiva malvarmigo kaj protekto IP66

Pro malalta varmodissipado, kelkaj WebOP-modeloj estas dizajnitaj tute sen aktiva aermalvarmigo. Ĉi tio permesas la aparatojn esti muntitaj en lokoj kiuj estas sentemaj al bruniveloj kaj reduktas la kvanton de polvo eniranta en la loĝejon.

La antaŭa panelo estas farita sen interspacoj aŭ juntoj, havas protektan nivelon de IP66, kaj permesas rektan eniron de akvo sub premo.

Habr-kontrolpanelo bazita sur HMI de Advantech
Malantaŭa panelo de la terminalo WOP-3100T

Ne-volatila memoro

Por malhelpi datumperdon, WebOP havas 128KB da nevolatila memoro, kun kiu povas esti laborita same kiel kun RAM. Ĝi povas stoki mezurlegojn kaj aliajn kritikajn datumojn. Okaze de elektropaneo, la datumoj estos konservitaj kaj restarigitaj post rekomenco.

Fora ĝisdatigo

La programo funkcianta sur la terminalo povas esti ĝisdatigita malproksime per Ethernet-reto aŭ per seriaj interfacoj RS-232/485. Ĉi tio simpligas prizorgadon, ĉar ĝi forigas la bezonon iri al ĉiuj fina stacioj por ĝisdatigi la programaron.

WebOP-Modeloj

Habr-kontrolpanelo bazita sur HMI de Advantech
2000T Serio - la plej atingeblaj aparatoj konstruitaj surbaze de la realtempa operaciumo HMI RTOS. La serio estas reprezentita per WebOP-2040T/2070T/2080T/2100T, kun ekrandiagonaloj de 4,3 coloj, 7 coloj, 8 coloj kaj 10.1 coloj, respektive.

Habr-kontrolpanelo bazita sur HMI de Advantech
3000T Serio — pli altnivelaj modeloj bazitaj sur la operaciumo Windows CE. Ili diferencas de la 2000T-serio en granda nombro da aparataj interfacoj kaj havas CAN-interfacon surŝipe. La aparatoj funkcias en etendita temperaturo (-20 ~ 60 °C) kaj havas kontraŭstatikan protekton (Aero: 15KV / Kontakto: 8KV). La linio plene plenumas la postulojn de la normo IEC-61000, kiu ebligas al la aparatoj esti uzataj en fabrikado de semikonduktaĵoj kie senmova malŝarĝo estas problemo. La serio estas reprezentita per WebOP-3070T/3100T/3120T, kun ekrandiagonaloj de 7 coloj, 10.1 coloj kaj 12.1 coloj, respektive.

WebAccess/HMI Designer evolumedio

Ekstere de la skatolo, la WebOP-terminalo estas nur malalta potenco ARM-komputilo sur kiu vi povas ruli ajnan programaron, sed la tuta celo de ĉi tiu solvo estas la propra WebAcess/HMI-industria interfaca evolumedio. La sistemo konsistas el du komponentoj:

  • HMI-Projektisto — medio por evoluigado de interfacoj kaj programa logiko. Funkcias sub Vindozo sur la komputilo de la programisto. La fina programo estas kompilita en unu dosieron kaj transdonita al la terminalo por ekzekuto ĉe rultempo. La programo haveblas en la rusa.
  • HMI Runtime — rultempo por ruli la kompilitan programon sur la fina terminalo. Ĝi povas funkcii ne nur ĉe WebOP-terminaloj, sed ankaŭ ĉe Advantech UNO, MIC kaj regulaj labortablaj komputiloj. Estas rultempaj versioj por Linukso, Vindozo, Windows CE.

Habr-kontrolpanelo bazita sur HMI de Advantech

Saluton mondo - kreante projekton

Ni komencu krei testan interfacon por nia kontrolpanelo Habr. Mi rulos la programon sur la terminalo WebOP-3100T kurante WinCE. Unue, ni kreu novan projekton en HMI Designer. Por ruli programon sur WebOP, estas grave elekti la ĝustan modelon; la formato de la fina dosiero dependos de tio. Je ĉi tiu paŝo, vi ankaŭ povas elekti la labortablan arkitekturon, tiam la fina dosiero estos kompilita por X86 rultempo.

Habr-kontrolpanelo bazita sur HMI de Advantech
Krei novan projekton kaj elektante arkitekturon

Elektante la komunikan protokolon per kiu la kompilita programo estos ŝarĝita en WebOP. Je ĉi tiu paŝo, vi povas elekti serian interfacon, aŭ specifi la IP-adreson de la terminalo.
Habr-kontrolpanelo bazita sur HMI de Advantech

Interfaco de kreado de projekto. Sur la maldekstra flanko estas arbdiagramo de la komponantoj de la estonta programo. Nuntempe, ni nur interesiĝas pri la elemento Ekranoj, ĉi tiuj estas rekte la ekranoj kun grafikaj interfacaj elementoj, kiuj estos montrataj en la terminalo.

Habr-kontrolpanelo bazita sur HMI de Advantech

Unue, ni kreu du ekranojn kun la teksto "Saluton Mondo" kaj la kapablo ŝanĝi inter ili per butonoj. Por fari tion, ni aldonos novan ekranon, Ekrano #2, kaj sur ĉiu ekrano ni aldonos tekstan elementon kaj du butonojn por ŝanĝi inter ekranoj (Ekranaj Butonoj). Ni agordu ĉiun butonon por ŝanĝi al la sekva ekrano.
Habr-kontrolpanelo bazita sur HMI de Advantech
Interfaco por agordi la butonon por ŝanĝi inter ekranoj

La programo Saluton Mondo estas preta, nun vi povas kompili kaj ruli ĝin. En la kompila stadio povas esti eraroj en kazo de malĝuste specifitaj variabloj aŭ adresoj. Ajna eraro estas konsiderata fatala; la programo estos kompilita nur se ne estas eraroj.
La medio disponigas la kapablon simuli terminalon por ke vi povu sencimigi la programon en via komputilo loke. Estas du specoj de simulado:

  • Reta simulado — ĉiuj eksteraj datumfontoj specifitaj en la programo estos uzataj. Ĉi tiuj povas esti USO aŭ aparatoj ligitaj per seriaj interfacoj aŭ Modbus TCP.
  • Senreta simulado — simulado sen uzo de eksteraj aparatoj.

Kvankam ni ne havas eksterajn datumojn, ni uzas eksterreta simuladon, antaŭe kompilinte la programon. La fina programo troviĝos en la projekta dosierujo, kun la nomo Projektonomo_Programnomo.px3

Habr-kontrolpanelo bazita sur HMI de Advantech
La programo kuranta en la simulado povas esti kontrolita per la muskursoro en la sama maniero kiel ĝi estus sur la tuŝekrano de WebOP-terminalo. Ni vidas, ke ĉio funkcias kiel celite. Bonege.
Por elŝuti la programon al fizika terminalo, simple alklaku la butonon Elŝuti. Sed ĉar mi ne agordis la konekton de la terminalo al la evolua medio, vi povas simple translokigi la dosieron per USB-memorkarto aŭ MicroSD-memorkarto.
Habr-kontrolpanelo bazita sur HMI de Advantech
La programa interfaco estas intuicia, mi ne trairos ĉiun grafikan blokon. Krei fonojn, formojn kaj tekston estos klara por ĉiu, kiu uzis programojn similajn al Word. Por krei grafikan interfacon, neniuj programaj kapabloj estas bezonataj; ĉiuj elementoj estas aldonitaj per trenado de la muso sur la formularon.

Laborante kun memoro

Nun kiam ni scias kiel krei grafikajn elementojn, ni lernu kiel labori kun dinamika enhavo kaj skriptlingvo. Ni kreu strektablon montrantan datumojn de variablo U $ 100. En la diagramo-agordoj, elektu la datumtipo: 16-bita entjero, kaj la diagramo-valora gamo: de 0 ĝis 10.

Habr-kontrolpanelo bazita sur HMI de Advantech

La programo subtenas verki skriptojn en tri lingvoj: VBScript, JavaScript kaj sia propra lingvo. Mi uzos la trian opcion ĉar estas ekzemploj por ĝi en la dokumentado kaj aŭtomata sintaksa helpo ĝuste en la redaktilo.

Ni aldonu novan makroon:

Habr-kontrolpanelo bazita sur HMI de Advantech

Ni skribu iun simplan kodon por pliige ŝanĝi datumojn en variablo, kiu povas esti spurita sur diagramo. Ni aldonos 10 al la variablo, kaj restarigos ĝin al nulo kiam ĝi estas pli granda ol 100.

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

Por ekzekuti la skripton en buklo, agordu ĝin en la Ĝenerala Agordo kiel Ĉefa Makroo, kun ekzekutintervalo de 250ms.

Habr-kontrolpanelo bazita sur HMI de Advantech
Ni kompilu kaj rulu la programon en la simulilo:

Habr-kontrolpanelo bazita sur HMI de Advantech

En ĉi tiu etapo, ni lernis manipuli datumojn en memoro kaj montri ĝin vide. Ĉi tio jam sufiĉas por krei simplan monitoran sistemon, ricevi datumojn de eksteraj aparatoj (sensiloj, regiloj) kaj registri ilin en memoro. En HMI Designer, malsamaj datenmontraj blokoj estas haveblaj: en la formo de cirklaj ciferdiskoj kun sagoj, diversaj diagramoj kaj grafikaĵoj. Uzante JavaScript-skriptojn, vi povas elŝuti datumojn de eksteraj fontoj per HTTP.

Habr kontrolpanelo

Uzante la akiritajn kapablojn, ni faros komikan interfacon por la Habr-administra konzolo.

Habr-kontrolpanelo bazita sur HMI de Advantech

Nia teleregilo devus povi:

  • Ŝanĝu uzantprofilojn
  • Stoku karmon kaj taksajn datumojn
  • Ŝanĝu karmon kaj taksajn valorojn per glitiloj
  • Kiam vi alklakas la butonon "malpermeso", la profilo devus esti markita kiel malpermesita, la avataro devus ŝanĝiĝi al forstrekita

Ni montros ĉiun profilon sur aparta paĝo, do ni kreos paĝon por ĉiu profilo. Ni stokos karmon kaj taksadon en lokaj variabloj en memoro, kiuj estos pravigitaj uzante Setup Macro kiam la programo komenciĝos.

Habr-kontrolpanelo bazita sur HMI de Advantech
La bildo estas klakebla

Ĝustigante karmon kaj taksadon

Por ĝustigi karmon ni uzos la glitilon (Slide Switch). Ni specifas la variablon pravigitan en Setup Macro kiel la registradreson. Ni limigu la gamon de glitilaj valoroj de 0 ĝis 1500. Nun, kiam la glitilo moviĝas, novaj datumoj estos skribitaj en memoron. En ĉi tiu kazo, la komenca stato de la glitilo respondas al la valoroj de la variablo en memoro.

Habr-kontrolpanelo bazita sur HMI de Advantech
Por montri la nombrajn valorojn de karmo kaj taksado, ni uzos la Numera ekranelemento. La principo de ĝia funkciado estas simila al la diagramo de la ekzemplo "Saluton Mondo" programo; ni simple indikas la adreson de la variablo en Monitor Address.

Butono Ban

La "malpermeso" butono estas efektivigita per la Ŝaltilo Ŝaltilo elemento. La principo de konservado de datumoj similas al la supraj ekzemploj. En la agordoj, vi povas elekti malsaman tekston, koloron aŭ bildon, depende de la stato de la butono.

Habr-kontrolpanelo bazita sur HMI de Advantech
Kiam la butono estas premata, la avataro devas esti forstrekita ruĝe. Ĉi tio estas facile efektivigi uzante la Picture Display-blokon. Ĝi permesas vin specifi plurajn bildojn asociitajn kun la stato de la butono Ŝaltilo. Por fari tion, la bloko ricevas la saman adreson kiel la bloko kun la butono kaj la nombro da ŝtatoj. La bildo kun nomplatoj sub la avataro estas starigita en simila maniero.

Habr-kontrolpanelo bazita sur HMI de Advantech

konkludo

Ĝenerale, mi ŝatis la produkton. Antaŭe, mi havis sperton uzante Android-tabulojn por similaj taskoj, sed disvolvi interfacon por ĝi estas multe pli malfacila, kaj retumiloj API ne permesas plenan aliron al la ekstercentraj. Unu WebOP-terminalo povas anstataŭigi kombinaĵon de Android-tablojdo, komputilo kaj regilo.

HMI Designer, malgraŭ sia arkaika dezajno, estas sufiĉe progresinta. Sen specialaj programaj kapabloj, vi povas rapide skizi funkciantan interfacon. La artikolo ne diskutas ĉiujn grafikajn blokojn, el kiuj estas multaj: viglaj tuboj, cilindroj, grafikaĵoj, baskuliloj. Ĝi subtenas multajn popularajn industriajn regilojn el la skatolo kaj enhavas datumbazkonektilojn.

referencoj

WebAccess/HMI Designer kaj Runtime evolumedio povas esti elŝutitaj tie

Fontoj de la projekto de kontrolpanelo Habr

fonto: www.habr.com

Aldoni komenton