Vidjow: Habr admin console. Jippermettilek tirregola l-karma, il-klassifikazzjoni, u tipprojbixxi lill-utenti.
TL; DR: F'dan l-artikolu ser nipprova noħloq pannell tal-kontroll Habr komiku billi tuża l-ambjent ta 'żvilupp ta' interface industrijali Webaccess/HMI Designer u t-terminal WebOP.
Interface bejn il-bniedem u l-magna (HMI) huwa sett ta 'sistemi għall-interazzjoni tal-bniedem ma' magni kkontrollati. Tipikament dan it-terminu huwa applikat għal sistemi industrijali li għandhom operatur u pannell tal-kontroll.
WebOP — terminal industrijali awtonomu għall-ħolqien ta' interfaces bejn il-bniedem u l-magna. Użati biex jinħolqu pannelli ta 'kontroll tal-produzzjoni, sistemi ta' monitoraġġ, kmamar tal-kontroll, kontrolluri tad-dar intelliġenti, eċċ. Jappoġġja konnessjoni diretta ma 'tagħmir industrijali u jista' jaħdem bħala parti minn sistema SCADA.
WebOP terminal - ħardwer
It-terminal WebOP huwa kompjuter b'enerġija baxxa bbażat fuq proċessur ARM, f'każ wieħed b'moniter u touchscreen, iddisinjat biex imexxi programm b'interface grafika maħluqa f'HMI Designer. Skont il-mudell, it-terminals għandhom diversi interfaces industrijali abbord: RS-232/422/485, bus CAN għall-konnessjoni ma 'sistemi tal-karozzi, port USB Host għall-konnessjoni ta' periferali addizzjonali, port USB Klijent għall-konnessjoni tat-terminal ma 'kompjuter, awdjo input u output tal-awdjo, qarrej tal-karta MicroSD għal memorja mhux volatili u trasferiment tas-settings.
L-apparati huma pożizzjonati bħala sostituzzjoni tal-baġit għal kompjuters kollha f'wieħed, għal kompiti li ma jeħtiġux proċessuri b'saħħithom u r-riżorsi ta 'kompjuter desktop sħiħ. WebOP jista 'jaħdem bħala terminal waħdu għall-kontroll u l-input/output tad-dejta, flimkien ma' WebOPs oħra, jew bħala parti minn sistema SCADA.
It-terminal WebOP jista 'jikkonnettja direttament ma' apparat industrijali
Tkessiħ passiv u protezzjoni IP66
Minħabba d-dissipazzjoni baxxa tas-sħana, xi mudelli WebOP huma ddisinjati kompletament mingħajr tkessiħ attiv tal-arja. Dan jippermetti li l-apparati jiġu mmuntati f'żoni li huma sensittivi għal-livelli ta 'storbju u jnaqqas l-ammont ta' trab li jidħol ġewwa l-akkomodazzjoni.
Il-pannell ta 'quddiem huwa magħmul mingħajr vojt jew ġonot, għandu livell ta' protezzjoni ta 'IP66, u jippermetti d-dħul dirett ta' ilma taħt pressjoni.
Panew ta 'wara tat-terminal WOP-3100T
Memorja mhux volatili
Biex jipprevjeni t-telf tad-dejta, WebOP għandu 128Kb ta 'memorja mhux volatili, li tista' tinħadem bl-istess mod bħal ma 'RAM. Jista 'jaħżen qari tal-miter u data kritika oħra. F'każ ta' nuqqas ta' enerġija, id-dejta tiġi ssejvjata u restawrata wara reboot.
Aġġornament mill-bogħod
Il-programm li jaħdem fuq it-terminal jista 'jiġi aġġornat mill-bogħod permezz ta' netwerk Ethernet jew permezz ta 'interfaces serjali RS-232/485. Dan jissimplifika l-manutenzjoni, peress li jelimina l-ħtieġa li tmur fit-terminals kollha biex taġġorna s-softwer.
Mudelli WebOP
Ambjent ta' żvilupp WebAccess/HMI Designer
Barra mill-kaxxa, it-terminal WebOP huwa biss kompjuter ARM ta 'enerġija baxxa li fuqu tista' tħaddem kwalunkwe softwer, iżda l-punt kollu ta 'din is-soluzzjoni huwa l-ambjent ta' żvilupp tal-interface industrijali WebAcess/HMI proprjetarju. Is-sistema tikkonsisti minn żewġ komponenti:
- Disinjatur HMI — ambjent għall-iżvilupp ta' interfaces u loġika ta' programmar. Jiġi taħt Windows fuq il-kompjuter tal-programmatur. Il-programm finali huwa miġbur f'fajl wieħed u trasferit għat-terminal għall-eżekuzzjoni waqt ir-runtime. Il-programm huwa disponibbli bir-Russu.
- HMI Runtime — runtime għat-tħaddim tal-programm ikkumpilat fuq it-terminal finali. Jista 'jaħdem mhux biss fuq terminals WebOP, iżda wkoll fuq Advantech UNO, MIC, u kompjuters desktop regolari. Hemm verżjonijiet runtime għal Linux, Windows, Windows CE.
Hello dinja - ħolqien ta 'proġett
Ejja nibdew noħolqu interface tat-test għall-pannell tal-kontroll Habr tagħna. Se nmexxi l-programm fuq it-terminal
Ħolqien ta 'proġett ġdid u għażla ta' arkitettura
Għażla tal-protokoll ta 'komunikazzjoni li permezz tiegħu l-programm ikkumpilat se jitgħabba f'WebOP. F'dan il-pass, tista 'tagħżel interface serjali, jew tispeċifika l-indirizz IP tat-terminal.
Interfaċċja tal-ħolqien tal-proġett. Fuq in-naħa tax-xellug hemm dijagramma tas-siġra tal-komponenti tal-programm futur. Għalissa, aħna biss interessati fl-oġġett Skrins, dawn huma direttament l-iskrins b'elementi ta 'interface grafika li se jintwerew fuq it-terminal.
L-ewwel, ejja noħolqu żewġ skrins bit-test "Hello World" u l-abbiltà li taqleb bejniethom billi tuża buttuni. Biex nagħmlu dan, se nżidu skrin ġdid, Screen #2, u fuq kull skrin se nżidu element ta’ test u żewġ buttuni biex naqleb bejn l-iskrins (Screen Buttons). Ejja kkonfiguraw kull buttuna biex taqleb għall-iskrin li jmiss.
Interface għall-issettjar tal-buttuna biex taqleb bejn l-iskrins
Il-programm Hello World huwa lest, issa tista' tiġbor u tmexxih. Fl-istadju ta' kumpilazzjoni jista' jkun hemm żbalji f'każ ta' varjabbli jew indirizzi speċifikati b'mod żbaljat. Kwalunkwe żball jitqies bħala fatali; il-programm jiġi kkompilat biss jekk ma jkunx hemm żbalji.
L-ambjent jipprovdi l-abbiltà li jissimula terminali sabiex inti tista 'tiddibaggja l-programm fuq il-kompjuter tiegħek lokalment. Hemm żewġ tipi ta 'simulazzjoni:
- Simulazzjoni onlajn — se jintużaw is-sorsi esterni kollha tad-dejta speċifikati fil-programm. Dawn jistgħu jkunu USOs jew apparati konnessi permezz ta' interfaces serjali jew Modbus TCP.
- Simulazzjoni offline — simulazzjoni mingħajr l-użu ta' tagħmir estern.
Filwaqt li m'għandniex data esterna, nużaw simulazzjoni offline, wara li kkumpilajna l-programm qabel. Il-programm finali se jkun jinsab fil-folder tal-proġett, bl-isem ProjectName_ProgramName.px3
Il-programm li jaħdem fis-simulazzjoni jista 'jiġi kkontrollat bil-cursor tal-maws bl-istess mod kif ikun fuq it-touchscreen ta' terminal WebOP. Naraw li kollox jaħdem kif maħsub. Kbir.
Biex tniżżel il-programm f'terminal fiżiku, ikklikkja fuq il-buttuna Niżżel. Imma peress li ma kkonfigurajtx il-konnessjoni tat-terminal mal-ambjent tal-iżvilupp, tista 'sempliċement tittrasferixxi l-fajl billi tuża flash drive USB jew karta tal-memorja MicroSD.
L-interface tal-programm hija intuwittiva, mhux se ngħaddi minn kull blokka grafika. Il-ħolqien ta' sfondi, forom u test ikun ċar għal kull min uża programmi simili għal Word. Biex tinħoloq interface grafiku, m'hemmx bżonn ta 'ħiliet ta' programmar; l-elementi kollha huma miżjuda billi tkaxkru l-maws fuq il-formola.
Ħidma bil-memorja
Issa li nafu kif noħolqu elementi grafiċi, ejja nitgħallmu kif naħdmu b'kontenut dinamiku u lingwa tal-kitba. Ejja noħolqu bar chart li turi dejta minn varjabbli U $ 100. Fis-settings taċ-ċart, agħżel it-tip tad-dejta: numru sħiħ ta '16-bit, u l-firxa ta' valuri taċ-ċart: minn 0 sa 10.
Il-programm jappoġġja kitba ta 'skripts fi tliet lingwi: VBScript, JavaScript u l-lingwa tiegħu stess. Se nuża t-tielet għażla għax hemm eżempji għaliha fid-dokumentazzjoni u l-għajnuna awtomatika tas-sintassi dritt fl-editur.
Ejja nżidu makro ġdid:
Ejja niktbu xi kodiċi sempliċi biex tibdel id-dejta b'mod inkrementali f'varjabbli li tista 'tiġi ssorveljata fuq chart. Aħna se nżidu 10 mal-varjabbli, u reset għal żero meta jkun akbar minn 100.
$U100=$U100+10
IF $U100>100
$U100=0
ENDIF
Biex tesegwixxi l-iskript f'linja, issettjah fis-settings tas-Setup Ġenerali bħala Makro Prinċipali, b'intervall ta 'eżekuzzjoni ta' 250ms.
Ejja niġbru u nħaddmu l-programm fis-simulatur:
F'dan l-istadju, tgħallimna nimanipulaw data fil-memorja u nuruha viżwalment. Dan diġà huwa biżżejjed biex tinħoloq sistema ta 'monitoraġġ sempliċi, li tirċievi data minn apparati esterni (sensuri, kontrolluri) u tirreġistrahom fil-memorja. Diversi blokki tal-wiri tad-dejta huma disponibbli f'HMI Designer: fil-forma ta 'dials ċirkolari bi vleġeġ, mapep varji, u graffs. Bl-użu ta' skripts JavaScript, tista' tniżżel dejta minn sorsi esterni permezz ta' HTTP.
Panew tal-kontroll Habr
Bl-użu tal-ħiliet miksuba, aħna se nagħmlu interface komiku għall-console tal-amministrazzjoni Habr.
Il-kontroll mill-bogħod tagħna għandu jkun kapaċi:
- Aqleb il-profili tal-utent
- Aħżen karma u data tal-klassifikazzjoni
- Ibdel il-valuri tal-karma u tal-klassifikazzjoni billi tuża sliders
- Meta tikklikkja l-buttuna "projbizzjoni", il-profil għandu jiġi mmarkat bħala pprojbit, l-avatar għandu jinbidel għal maqtugħ
Aħna se nuru kull profil fuq paġna separata, għalhekk se noħolqu paġna għal kull profil. Aħna se naħżnu l-karma u l-klassifikazzjoni f'varjabbli lokali fil-memorja, li se jiġu inizjalizzati billi tuża Setup Macro meta jibda l-programm.
L-aġġustament tal-karma u l-klassifikazzjoni
Biex taġġusta l-karma se nużaw is-slider (Slide Switch). Aħna nispeċifikaw il-varjabbli inizjalizzat f'Setup Macro bħala l-indirizz tar-reġistrazzjoni. Ejja nillimitaw il-firxa tal-valuri tas-slajder minn 0 sa 1500. Issa, meta s-slajder jiċċaqlaq, dejta ġdida tinkiteb fil-memorja. F'dan il-każ, l-istat inizjali tas-slajder se jikkorrispondi għall-valuri tal-varjabbli fil-memorja.
Biex turi l-valuri numeriċi tal-karma u l-klassifikazzjoni, se nużaw l-element tal-wiri numeriku. Il-prinċipju tat-tħaddim tiegħu huwa simili għad-dijagramma mill-eżempju tal-programm "Hello World"; aħna sempliċement nindikaw l-indirizz tal-varjabbli fl-Indirizz tal-Monitor.
buttuna Projbizzjoni
Il-buttuna "projbizzjoni" hija implimentata bl-użu tal-element Toggle Switch. Il-prinċipju tal-ħażna tad-data huwa simili għall-eżempji ta 'hawn fuq. Fis-settings, tista 'tagħżel test, kulur jew immaġni differenti, skont l-istat tal-buttuna.
Meta l-buttuna tiġi ppressata, l-avatar għandu jiġi maqtugħ bl-aħmar. Dan huwa faċli biex timplimenta bl-użu tal-blokk Display Picture. Jippermettilek tispeċifika immaġini multipli assoċjati mal-istat tal-buttuna Toggle Switch. Biex tagħmel dan, il-blokk jingħata l-istess indirizz bħall-blokk bil-buttuna u n-numru ta 'stati. L-istampa bil-pjanċi tal-isem taħt l-avatar hija mwaqqfa b'mod simili.
Konklużjoni
B'mod ġenerali, għoġobni l-prodott. Preċedentement, kelli esperjenza bl-użu ta 'pillola Android għal kompiti simili, iżda l-iżvilupp ta' interface għaliha huwa ħafna aktar diffiċli, u l-APIs tal-browser ma jippermettux aċċess sħiħ għall-periferali. Terminal WebOP wieħed jista 'jissostitwixxi kombinazzjoni ta' tablet Android, kompjuter u kontrollur.
HMI Designer, minkejja d-disinn arkajku tiegħu, huwa pjuttost avvanzat. Mingħajr ħiliet speċjali ta 'programmazzjoni, tista' malajr tfassal interface ta 'ħidma. L-artikolu ma jiddiskutix il-blokki grafiċi kollha, li minnhom hemm ħafna: pajpijiet animati, ċilindri, graffs, toggle switches. Jappoġġja ħafna kontrolluri industrijali popolari barra mill-kaxxa u fih konnetturi tad-database.
referenzi
WebAccess/HMI Designer u l-ambjent tal-iżvilupp Runtime jistgħu jitniżżlu
→
Sors: www.habr.com