Video: tastiera e administratorit Habr. Ju lejon të rregulloni karmën, vlerësimin dhe ndalimin e përdoruesve.
TL; DR: Në këtë artikull do të përpiqem të krijoj një panel kontrolli komik Habr duke përdorur mjedisin e zhvillimit të ndërfaqes industriale të Webaccess/HMI Designer dhe terminalin WebOP.
Ndërfaqja njeri-makinë (HMI) është një grup sistemesh për ndërveprimin njerëzor me makinat e kontrolluara. Zakonisht ky term zbatohet për sistemet industriale që kanë një operator dhe një panel kontrolli.
WebOP — një terminal industrial autonom për krijimin e ndërfaqeve njeri-makinë. Përdoret për krijimin e paneleve të kontrollit të prodhimit, sistemeve të monitorimit, dhomave të kontrollit, kontrolluesve të shtëpive inteligjente, etj. Mbështet lidhjen e drejtpërdrejtë me pajisjet industriale dhe mund të funksionojë si pjesë e një sistemi SCADA.
Terminali WebOP - harduer
Terminali WebOP është një kompjuter me fuqi të ulët i bazuar në një procesor ARM, në një rast të vetëm me një monitor dhe ekran me prekje, i krijuar për të ekzekutuar një program me një ndërfaqe grafike të krijuar në HMI Designer. Në varësi të modelit, terminalet kanë ndërfaqe të ndryshme industriale në bord: RS-232/422/485, autobus CAN për t'u lidhur me sistemet e automobilave, portë USB Host për lidhjen e pajisjeve shtesë periferike, portë USB Client për lidhjen e terminalit me një kompjuter, audio hyrje dhe dalje audio, lexues kartash MicroSD për memorie jo të paqëndrueshme dhe transferimin e cilësimeve.
Pajisjet pozicionohen si një zëvendësim buxhetor për PC-të gjithëpërfshirëse, për detyra që nuk kërkojnë procesorë të fuqishëm dhe burime të një kompjuteri desktop të plotë. WebOP mund të funksionojë si një terminal i pavarur për kontrollin dhe hyrjen/daljen e të dhënave, i çiftuar me WebOP të tjerë, ose si pjesë e një sistemi SCADA.
Terminali WebOP mund të lidhet drejtpërdrejt me pajisjet industriale
Ftohje pasive dhe mbrojtje IP66
Për shkak të shpërndarjes së ulët të nxehtësisë, disa modele WebOP janë projektuar tërësisht pa ftohje aktive të ajrit. Kjo lejon që pajisjet të montohen në zona që janë të ndjeshme ndaj niveleve të zhurmës dhe zvogëlon sasinë e pluhurit që futet brenda trupit.
Paneli i përparmë është bërë pa boshllëqe ose nyje, ka një nivel mbrojtjeje IP66 dhe lejon hyrjen e drejtpërdrejtë të ujit nën presion.
Paneli i pasmë i terminalit WOP-3100T
Memorie jo e paqëndrueshme
Për të parandaluar humbjen e të dhënave, WebOP ka 128 Kb memorie jo të paqëndrueshme, me të cilën mund të punohet në të njëjtën mënyrë si me RAM. Mund të ruajë leximet e njehsorit dhe të dhëna të tjera kritike. Në rast të një ndërprerjeje të energjisë, të dhënat do të ruhen dhe do të restaurohen pas një rindezjeje.
Përditësim në distancë
Programi që funksionon në terminal mund të përditësohet nga distanca nëpërmjet një rrjeti Ethernet ose nëpërmjet ndërfaqeve serike RS-232/485. Kjo thjeshton mirëmbajtjen, pasi eliminon nevojën për të shkuar në të gjitha terminalet për të përditësuar softuerin.
Modelet WebOP
Mjedisi i zhvillimit të WebAccess/HMI Designer
Nga kutia, terminali WebOP është thjesht një kompjuter ARM me fuqi të ulët, në të cilin mund të ekzekutoni çdo softuer, por e gjithë pika e kësaj zgjidhjeje është mjedisi i zhvillimit të ndërfaqes industriale WebAcess/HMI. Sistemi përbëhet nga dy komponentë:
- Projektuesi HMI — mjedis për zhvillimin e ndërfaqeve dhe logjikës së programimit. Punon nën Windows në kompjuterin e programuesit. Programi përfundimtar përpilohet në një skedar dhe transferohet në terminal për ekzekutim në kohën e ekzekutimit. Programi është në dispozicion në Rusisht.
- Koha e funksionimit HMI — koha e ekzekutimit për ekzekutimin e programit të përpiluar në terminalin përfundimtar. Mund të funksionojë jo vetëm në terminalet WebOP, por edhe në Advantech UNO, MIC dhe kompjuterë të zakonshëm desktop. Ka versione të ekzekutimit për Linux, Windows, Windows CE.
Përshëndetje botë - krijimi i një projekti
Le të fillojmë të krijojmë një ndërfaqe testimi për panelin tonë të kontrollit Habr. Unë do ta ekzekutoj programin në terminal
Krijimi i një projekti të ri dhe zgjedhja e një arkitekture
Zgjedhja e protokollit të komunikimit përmes të cilit programi i kompiluar do të ngarkohet në WebOP. Në këtë hap, mund të zgjidhni një ndërfaqe serike ose të specifikoni adresën IP të terminalit.
Ndërfaqja e krijimit të projektit. Në anën e majtë ka një diagram pemë të komponentëve të programit të ardhshëm. Për momentin, ne jemi të interesuar vetëm për artikullin Screens, këto janë drejtpërdrejt ekranet me elementë të ndërfaqes grafike që do të shfaqen në terminal.
Së pari, le të krijojmë dy ekrane me tekstin "Hello World" dhe aftësinë për të kaluar midis tyre duke përdorur butona. Për ta bërë këtë, ne do të shtojmë një ekran të ri, Screen #2, dhe në çdo ekran do të shtojmë një element teksti dhe dy butona për kalimin midis ekraneve (Screen Buttons). Le të konfigurojmë çdo buton për të kaluar në ekranin tjetër.
Ndërfaqja për vendosjen e butonit për të kaluar ndërmjet ekraneve
Programi Hello World është gati, tani mund ta përpiloni dhe ekzekutoni. Në fazën e përpilimit, mund të ndodhin gabime në rast të variablave ose adresave të specifikuara gabimisht. Çdo gabim konsiderohet fatal; programi do të përpilohet vetëm nëse nuk ka gabime.
Mjedisi ofron mundësinë për të simuluar një terminal në mënyrë që të mund të korrigjoni programin në kompjuterin tuaj në nivel lokal. Ekzistojnë dy lloje të simulimit:
- Simulimi online — do të përdoren të gjitha burimet e jashtme të të dhënave të specifikuara në program. Këto mund të jenë USO ose pajisje të lidhura nëpërmjet ndërfaqeve serike ose Modbus TCP.
- Simulimi jashtë linje — simulim pa përdorimin e pajisjeve të jashtme.
Ndërsa nuk kemi të dhëna të jashtme, ne përdorim simulimin offline, pasi e kemi përpiluar më parë programin. Programi përfundimtar do të gjendet në dosjen e projektit, me emrin Emri i projektit_Emri i programit.px3
Programi që funksionon në simulim mund të kontrollohet me kursorin e miut në të njëjtën mënyrë si në ekranin me prekje të një terminali WebOP. Ne shohim që gjithçka funksionon siç është menduar. E madhe.
Për të shkarkuar programin në një terminal fizik, thjesht klikoni butonin Shkarko. Por meqenëse nuk e konfigurova lidhjen e terminalit me mjedisin e zhvillimit, thjesht mund ta transferoni skedarin duke përdorur një USB flash drive ose kartë memorie MicroSD.
Ndërfaqja e programit është intuitive, nuk do të kaloj nëpër çdo bllok grafik. Krijimi i sfondeve, formave dhe tekstit do të jetë i qartë për këdo që ka përdorur programe të ngjashme me Word-in. Për të krijuar një ndërfaqe grafike, nuk kërkohen aftësi programimi; të gjithë elementët shtohen duke zvarritur miun mbi formular.
Puna me kujtesën
Tani që dimë se si të krijojmë elementë grafikë, le të mësojmë se si të punojmë me përmbajtje dinamike dhe një gjuhë skriptimi. Le të krijojmë një grafik me shirita që shfaq të dhëna nga një ndryshore U $ 100. Në cilësimet e grafikut, zgjidhni llojin e të dhënave: numër i plotë 16-bit dhe diapazoni i vlerës së grafikut: nga 0 në 10.
Programi mbështet shkrimin e skripteve në tre gjuhë: VBScript, JavaScript dhe gjuhën e tij. Unë do të përdor opsionin e tretë sepse ka shembuj për të në dokumentacionin dhe ndihmën e sintaksës automatike pikërisht në redaktues.
Le të shtojmë një makro të re:
Le të shkruajmë një kod të thjeshtë për të ndryshuar gradualisht të dhënat në një variabël që mund të gjurmohet në një grafik. Ne do t'i shtojmë 10 ndryshores dhe do ta rivendosim atë në zero kur është më i madh se 100.
$U100=$U100+10
IF $U100>100
$U100=0
ENDIF
Për të ekzekutuar skriptin në një lak, vendoseni atë në cilësimet e konfigurimit të përgjithshëm si Macro Main, me një interval ekzekutimi prej 250 ms.
Le të përpilojmë dhe ekzekutojmë programin në simulator:
Në këtë fazë, ne kemi mësuar të manipulojmë të dhënat në memorie dhe t'i shfaqim ato vizualisht. Kjo tashmë është e mjaftueshme për të krijuar një sistem të thjeshtë monitorimi, duke marrë të dhëna nga pajisjet e jashtme (sensorë, kontrollorë) dhe duke i regjistruar ato në memorie. Në HMI Designer, disponohen blloqe të ndryshme të shfaqjes së të dhënave: në formën e numrave rrethore me shigjeta, grafikët e ndryshëm dhe grafikët. Duke përdorur skriptet JavaScript, mund të shkarkoni të dhëna nga burime të jashtme nëpërmjet HTTP.
Paneli i kontrollit Habr
Duke përdorur aftësitë e fituara, ne do të krijojmë një ndërfaqe komike për konsolën e administratorit Habr.
Telekomanda jonë duhet të jetë në gjendje të:
- Ndërroni profilet e përdoruesve
- Ruani karmën dhe të dhënat e vlerësimit
- Ndryshoni karma dhe vlerat e vlerësimit duke përdorur rrëshqitës
- Kur klikoni në butonin "ndalim", profili duhet të shënohet si i ndaluar, avatari duhet të ndryshojë në të kryqëzuar
Ne do të shfaqim çdo profil në një faqe të veçantë, kështu që do të krijojmë një faqe për secilin profil. Ne do të ruajmë karmën dhe vlerësimin në variabla lokale në memorie, të cilat do të inicializohen duke përdorur Setup Macro kur të fillojë programi.
Rregullimi i karmës dhe vlerësimit
Për të rregulluar karmën do të përdorim rrëshqitësin (Slide Switch). Ne specifikojmë variablin e inicializuar në Setup Macro si adresën e regjistrimit. Le të kufizojmë gamën e vlerave të rrëshqitësve nga 0 në 1500. Tani, kur rrëshqitësi lëviz, të dhënat e reja do të shkruhen në memorie. Në këtë rast, gjendja fillestare e rrëshqitësit do të korrespondojë me vlerat e ndryshores në memorie.
Për të shfaqur vlerat numerike të karmës dhe vlerësimin, ne do të përdorim elementin e shfaqjes numerike. Parimi i funksionimit të tij është i ngjashëm me diagramin nga shembulli i programit "Hello World"; ne thjesht tregojmë adresën e ndryshores në Adresën e Monitorit.
Butoni i ndalimit
Butoni "ndalim" zbatohet duke përdorur elementin Toggle Switch. Parimi i ruajtjes së të dhënave është i ngjashëm me shembujt e mësipërm. Në cilësimet, mund të zgjidhni tekst, ngjyrë ose imazh të ndryshëm, në varësi të gjendjes së butonit.
Kur shtypet butoni, avatari duhet të kryqëzohet me të kuqe. Kjo është e lehtë për t'u zbatuar duke përdorur bllokun e ekranit të figurës. Kjo ju lejon të specifikoni imazhe të shumta të lidhura me gjendjen e butonit Toggle Switch. Për ta bërë këtë, bllokut i jepet e njëjta adresë si blloku me butonin dhe numri i gjendjeve. Fotografia me targat e emrave nën avatar është vendosur në mënyrë të ngjashme.
Përfundim
Në përgjithësi, produkti më pëlqeu. Më parë, kam pasur përvojë duke përdorur një tablet Android për detyra të ngjashme, por zhvillimi i një ndërfaqeje për të është shumë më i vështirë dhe API-të e shfletuesit nuk lejojnë qasje të plotë në pajisjet periferike. Një terminal WebOP mund të zëvendësojë një kombinim të një tableti, kompjuteri dhe kontrolluesi Android.
HMI Designer, pavarësisht dizajnit të tij arkaik, është mjaft i avancuar. Pa aftësi të veçanta programimi, mund të skiconi shpejt një ndërfaqe pune. Artikulli nuk diskuton të gjitha blloqet grafike, nga të cilat ka shumë: tuba të animuar, cilindra, grafikë, çelsat e ndërrimit. Ai mbështet shumë kontrollues industrialë të njohur jashtë kutisë dhe përmban lidhës të bazës së të dhënave.
Referencat
Mund të shkarkohet WebAccess/HMI Designer dhe mjedisi i zhvillimit Runtime
→
Burimi: www.habr.com