Èìÿ: | wlb_Main |
Îñíîâàí: | ñåíòÿáðü 2007ã |
Âåðñèÿ: | 1.1.0 |
Ñòàòóñ: | Îòêðûòûé (GPL) |
Àâòîð: | Ðîìàí Ñàâî÷åíêî, Ìàêñèì Ëûñåíêî (2011-2012) |
Îïèñàíèå: | Ïðåäîñòàâëÿåò áèáëèîòåêó îñíîâíûõ ýëåìåíòîâ ïîëüçîâàòåëüñêîãî èíòåðôåéñà. |
Èñòî÷íèê: | ÁÄ îñíîâíûõ áèáëèîòåê ãðàôè÷åñêèõ ýëåìåíòîâ, â ôàéëå: SQLite.vcaBase.wlb_Main (![]() |
Áèáëèîòåêà ñîçäà¸òñÿ äëÿ ïðåäîñòàâëåíèÿ îñíîâíûõ ýëåìåíòîâ ïîëüçîâàòåëüñêîãî èíòåðôåéñà. Ñòðîèòñÿ áèáëèîòåêà íà îñíîâå ïðèìèòèâîâ âèäæåòîâ è ìîäóëÿ JavaLikeCalc, ïîçâîëÿþùåãî ñîçäàâàòü âû÷èñëåíèÿ íà Java-ïîäîáíîì ÿçûêå.
Ïîäêëþ÷èòü áèáëèîòåêó îñíîâíûõ ýëåìåíòîâ ïîëüçîâàòåëüñêîãî èíòåðôåéñà ê íîâîìó ïðîåêòó ñòàíöèè OpenSCADA ìîæíî ïóò¸ì çàãðóçêè âëîæåííîãî ôàéëà ÁÄ, ðàçìåùåíèÿ åãî â äèðåêòîðèè ÁÄ "SQLite" íîâîãî ïðîåêòà, è ñîçäàíèÿ îáúåêòà ÁÄ äëÿ ìîäóëÿ ÁÄ "SQLite", óêàçàâ ôàéë ÁÄ â êîíôèãóðàöèè.
 ñâî¸ì ñîñòàâå áèáëèîòåêà ñîäåðæèò îêîëî äâóõ äåñÿòêîâ ãðàôè÷åñêèõ ýëåìåíòîâ, ÷àñòî âîñòðåáîâàííûõ ïðè ôîðìèðîâàíèè ïîëüçîâàòåëüñêîãî èíòåðôåéñà óïðàâëåíèÿ òåõíîëîãè÷åñêèì ïðîöåññîì. Íàçâàíèÿ ýëåìåíòîâ è èõ òåêñòîâûå ïàðàìåòðû äîñòóïíû íà òð¸õ ÿçûêàõ: Àíãëèéñêèé, Ðóññêèé è Óêðàèíñêèé.
Ýëåìåíò, ïðåäñòàâëåííûé íà ðèñ. 1, ñëóæèò äëÿ îòîáðàæåíèÿ òåêóùåãî çíà÷åíèÿ àíàëîãîâîãî ïàðàìåòðà è ðåæèìà ðåãóëÿòîðà, åñëè ïàðàìåòð ÿâëÿåòñÿ òàêîâûì. Òàêæå ýòîò ýëåìåíò ãåíåðèðóåò ñèãíàëèçàöèè (alarms) ïî ñîîòâåòñòâóþùèì óñòàâêàì ïàðàìåòðà.
Äàííûé âèäæåò ìîæåò áûòü èñïîëüçîâàí ðàçðàáîò÷èêîì ïðè ñîçäàíèè ìíåìîñõåì äëÿ îòîáðàæåíèÿ çíà÷åíèé àíàëîãîâûõ ïàðàìåòðîâ è ÏÈÄ ðåãóëÿòîðîâ. Äëÿ èñïîëüçîâàíèÿ íóæíî äîáàâèòü äàííûé âèäæåò íà ìíåìîñõåìó è ñâÿçàòü ñ ïàðàìåòðîì èñòî÷íèêà äàííûõ.
 ðåæèìå èñïîëíåíèÿ äëÿ ïàðàìåòðà ìîæíî ïîëó÷èòü ïàñïîðò ïóò¸ì íàæàòèÿ ïðàâîé êëàâèøè ìûøè íà ïîëå âèäæåòà.  ïàñïîðòå áóäóò ïðåäñòàâëåíû âñå ñâîéñòâà ïàðàìåòðà. Ïðè íàæàòèè ëåâîé êëàâèøåé ìûøè â îáëàñòü âèäæåòà ñïðàâà ïîÿâèòñÿ ïàíåëü óïðàâëåíèÿ ïàðàìåòðîì, à âûáîð äàííîãî âèäæåòà áóäåò îòîáðàæàòüñÿ ìèãàþùåé ðàìêîé.
Ýëåìåíò, ïðåäñòàâëåííûé íà ðèñ. 2, ñëóæèò äëÿ îòîáðàæåíèÿ òåêóùåãî çíà÷åíèÿ àíàëîãîâîãî ïàðàìåòðà ñ îäíîñèìâîëüíûì ïðåôèêñîì òèïà èçìåðÿåìîé âåëè÷èíû.
Äàííûé âèäæåò ìîæåò áûòü èñïîëüçîâàí ðàçðàáîò÷èêîì ïðè ñîçäàíèè ìíåìîñõåì äëÿ îòîáðàæåíèÿ çíà÷åíèé àíàëîãîâûõ ïàðàìåòðîâ. Äëÿ èñïîëüçîâàíèÿ íóæíî äîáàâèòü äàííûé âèäæåò íà ìíåìîñõåìó è ñâÿçàòü ñ ïàðàìåòðîì èñòî÷íèêà äàííûõ.
ID | Ïàðàìåòð | Òèï | Êîíôèãóðàöèÿ | Êîíôèãóðàöèîííûé øàáëîí | Îïèñàíèå |
pName | Èìÿ ïàðàìåòðà | Ñòðîêà | Ïîñòîÿííàÿ | Parametr|NAME | Îäíîñèìâîëüíûé ïðåôèêñ òèïà èçìåðÿåìîé âåëè÷èíû. |
pVal | Çíà÷åíèå ïàðàìåòðà | Âåùåñòâ. | Âõîäíàÿ ñâÿçü | Parametr|var | Íåïîñðåäñòâåííî çíà÷åíèå ïàðàìåòðà. |
pPrec | Òî÷íîñòü (çíàêîâ) | Öåëûé | Âõîäíàÿ ñâÿçü | Parametr|prec | Êîëè÷åñòâî çíàêîâ ïîñëå çàïÿòîé ó çíà÷åíèÿ. |
Ýëåìåíò, ïðåäñòàâëåííûé íà ðèñ. 3, ÿâëÿåòñÿ ïî ñóòè óíèâåðñàëüíîé ïàíåëüþ óïðàâëåíèÿ ðàçëè÷íûìè óñòðîéñòâàìè:
Äàííûé âèäæåò íå ïðåäíàçíà÷åí äëÿ ñïåöèàëüíîãî ðàçìåùåíèÿ è êîíôèãóðàöèè ïîëüçîâàòåëåì, ïîñêîëüêó çàëîæåí â øàáëîíå ïðîåêòà "Îáúåêòû ñèãíàëèçàöèè", è, åñëè íîâûé ïðîåêò ñîçäà¸òñÿ íà îñíîâå ýòîãî øàáëîíà, âûçîâ äàííîãî âèäæåòà îñóùåñòâëÿåòñÿ àâòîìàòè÷åñêè ñ åãî îòîáðàæåíèåì â îáëàñòè ïàíåëåé óïðàâëåíèÿ ïðè âûáîðå âèäæåòà ïàðàìåòðà, êîòîðûé ïðåäóñìàòðèâàåò óïðàâëåíèå ïàðàìåòðîì, íàïðèìåð, ðàíåå ðàññìîòðåííûé "anShow".
Íà ðèñ. 4 ïðåäñòàâëåíû ðåæèìû ýòîãî ýëåìåíòà â ðåæèìå èñïîëíåíèÿ.
Ðåæèìû:
Êàæäîå äåéñòâèå íà ýòîé ïàíåëè óïðàâëåíèÿ (ñìåíà çàäàíèÿ ÏÈÄ ðåãóëÿòîðà, èçìåíåíèå ñîñòîÿíèÿ äèñêðåòíîãî ïàðàìåòðà...) ðåãèñòðèðóåòñÿ â æóðíàëå (ïðîòîêîëå) âìåøàòåëüñòâ ïîñðåäñòâîì ãåíåðàöèè ñîîòâåòñòâóþùèõ ñîîáùåíèé.
Äëÿ ëþáîãî îòîáðàæàåìîãî èëè óïðàâëÿåìîãî ïàðàìåòðà ìîæíî ïîëó÷èòü ïàñïîðò â ðåæèìå èñïîëíåíèÿ ïóò¸ì íàæàòèÿ ïðàâîé êëàâèøè ìûøè íà ïîëå êîíòóðà.  ïàñïîðòå áóäóò ïðåäñòàâëåíû âñå ñâîéñòâà ïàðàìåòðà.
ID | Ïàðàìåòð | Òèï | Êîíôèãóðàöèÿ | Êîíôèãóðàöèîííûé øàáëîí | Îïèñàíèå |
prmId | Èäåíòèôèêàòîð | Ñòðîêà | Âõîäíàÿ ñâÿçü | Parametr|SHIFR | Èäåíòèôèêàòîð ïàðàìåòðà èñïîëüçóåòñÿ äëÿ ïîìåùåíèÿ â ïðîòîêîë äåéñòâèé îïåðàòîðà. |
prmShifr | Øèôð | Ñòðîêà | Âõîäíàÿ ñâÿçü | Parametr|NAME | Êðàòêîå íàèìåíîâàíèå ïàðàìåòðà, øèôð. Ïîìåùàåòñÿ ñíèçó êàäðà. |
prmDescr | Îïèñàíèå | Ñòðîêà | Âõîäíàÿ ñâÿçü | Parametr|DESCR | Îïèñàíèå ïàðàìåòðà èñïîëüçóåòñÿ äëÿ ïîìåùåíèÿ â ïðîòîêîë äåéñòâèé îïåðàòîðà. |
prmColor | Öâåò ðàìêè | Ñòðîêà | Âõîäíàÿ ñâÿçü | Parametr|color | Óñòàíàâëèâàåò öâåò ðàìêè êîíòóðà. |
Ïàðàìåòðû àíàëîãîâîãî óñòðîéñòâà | |||||
prmDemention | Åäèíèöà èçìåðåíèÿ | Ñòðîêà | Âõîäíàÿ ñâÿçü | Parametr|ed | |
prmPrec | Òî÷íîñòü (çíàêîâ) | Öåëûé | Âõîäíàÿ ñâÿçü | Parametr|prec | Êîëè÷åñòâî çíàêîâ ïîñëå çàïÿòîé ó ïàðàìåòðà è øàã èçìåíåíèÿ ðó÷íîãî ââîäà çíà÷åíèÿ, à òàêæå çàäàíèÿ è âûõîäà ÏÈÄ ðåãóëÿòîðà. |
prmVar | Ïåðåìåííàÿ | Âåùåñòâ. | Ïîëíàÿ ñâÿçü | Parametr|var | Íåïîñðåäñòâåííî çíà÷åíèå àíàëîãîâîãî ïàðàìåòðà. |
max | Ìàêñèìóì | Âåùåñòâ. | Âõîäíàÿ ñâÿçü | Parametr|max | Ìàêñèìàëüíàÿ ãðàíèöà çíà÷åíèÿ ïàðàìåòðà. |
min | Ìèíèìóì | Âåùåñòâ. | Âõîäíàÿ ñâÿçü | Parametr|min | Ìèíèìàëüíàÿ ãðàíèöà çíà÷åíèÿ ïàðàìåòðà. |
prmAMax | Ãðàíèöà âåðõíÿÿ àâàðèéíàÿ | Âåùåñòâ. | Âõîäíàÿ ñâÿçü | Parametr|aMax | |
prmAMin | Ãðàíèöà íèæíÿÿ àâàðèéíàÿ | Âåùåñòâ. | Âõîäíàÿ ñâÿçü | Parametr|aMin | |
prmWMax | Ãðàíèöà âåðõíÿÿ ïðåäóïðåäèòåëüíàÿ | Âåùåñòâ. | Âõîäíàÿ ñâÿçü | Parametr|wMax | |
prmWMin | Ãðàíèöà íèæíÿÿ ïðåäóïðåäèòåëüíàÿ | Âåùåñòâ. | Âõîäíàÿ ñâÿçü | Parametr|wMin | |
Ðó÷íîé àíàëîãîâûé ââîä | |||||
prmVarIn | Ââîä ïåðåìåííîé | Âåùåñòâ. | Ïîëíàÿ ñâÿçü | Parametr|varIn | Âûõîä äëÿ ðó÷íîãî ââîäà çíà÷åíèÿ àíàëîãîâîãî ïàðàìåòðà. Íàëè÷èå ýòîãî ïàðàìåòðà ÿâëÿåòñÿ ïðèçíàêîì òîãî, ÷òî ïàðàìåòð - îïðåäåëÿåòñÿ "Ðó÷íîé àíàëîãîâûé ââîä". |
ÏÈÄ ðåãóëÿòîð | |||||
prmAnalog | Àíàëîãîâûé ðåãóëÿòîð | Ëîãè÷. | Âõîäíàÿ ñâÿçü | Parametr|analog | Ïðèçíàê àíàëîãîâîãî ðåãóëÿòîðà, ïðè îòñóòñòâèè ýòîãî ïàðàìåòðà ðåãóëÿòîð ñ÷èòàåòñÿ àíàëîãîâûì. |
prmAuto | Àâòîìàò | Ëîãè÷. | Ïîëíàÿ ñâÿçü | Parametr|auto | Ðåæèì ðåãóëÿòîðà "Àâòîìàò". |
prmCasc | Êàñêàä | Ëîãè÷. | Ïîëíàÿ ñâÿçü | Parametr|casc | Ðåæèì ðåãóëÿòîðà "Êàñêàä". |
prmSp | Çàäàíèå | Âåùåñòâ. | Ïîëíàÿ ñâÿçü | Parametr|sp | Çàäàíèå ÏÈÄ ðåãóëÿòîðà, îíî ìîæåò áûòü óñòàíîâëåíî ïîëüçîâàòåëåì. |
prmImpQdwnTm | Èìïóëüñíûé âûõîä âíèç | Ëîãè÷. | Âõîäíàÿ ñâÿçü | Parametr|impQdwn | Âûõîä "Âíèç" äëÿ èìïóëüñíîãî ðåãóëÿòîðà. |
prmImpQupTm | Èìïóëüñíûé âûõîä ââåðõ | Ëîãè÷. | Âõîäíàÿ ñâÿçü | Parametr|impQup | Âûõîä "Ââåðõ" äëÿ èìïóëüñíîãî ðåãóëÿòîðà. |
prmOut | Âûõîä | Âåùåñòâ. | Ïîëíàÿ ñâÿçü | Parametr|out | Âûõîä àíàëîãîâîãî ÏÈÄ-ðåãóëÿòîðà äëÿ îòîáðàæåíèÿ è ðó÷íîãî ââîäà çíà÷åíèÿ âûõîäà ÏÈÄ â ðó÷íîì ðåæèìå. |
prmManIn | Ðó÷íîé ââîä | Âåùåñòâ. | Ïîëíàÿ ñâÿçü | Parametr|manIn | Ðó÷íîé ââîä íîâîãî çíà÷åíèÿ âûõîäà ÏÈÄ ðåãóëÿòîðà â ðó÷íîì ðåæèìå. |
Ïàðàìåòðû äèñêðåòíûõ óñòðîéñòâ | |||||
prmCom | Êîìàíäà - "Îòêðûòü" | Ëîãè÷. | Ïîëíàÿ ñâÿçü | Parametr|com | |
prmClose | Êîìàíäà - "Çàêðûòü" | Ëîãè÷. | Ïîëíàÿ ñâÿçü | Parametr|close | |
prmStop | Êîìàíäà - "Ñòîï" | Ëîãè÷. | Ïîëíàÿ ñâÿçü | Parametr|stop | |
prmOpenSt | Ñîñòîÿíèå - "Îòêðûòî" | Ëîãè÷. | Âõîäíàÿ ñâÿçü | Parametr|st_open | |
prmCloseSt | Ñîñòîÿíèå - "Çàêðûòî" | Ëîãè÷. | Âõîäíàÿ ñâÿçü | Parametr|st_close | |
digComs | Êîìàíäû äèñêðåòíûõ ñèãíàëîâ | Ñòðîêà | Âõîäíàÿ ñâÿçü | Parametr|digComs | Íàèìåíîâàíèÿ è öâåò êíîïîê êîìàíä â ôîðìàòå: {On}[-color]:{Off}[-color][:{Stop}[-color]]. Ïî óìîë÷àíèþ öâåòà: çåëåíûé, êðàñíûé è æ¸ëòûé. |
digStts | Ñîñòîÿíèÿ äèñêðåòíûõ ïàðàìåòðîâ | Ñòðîêà | Âõîäíàÿ ñâÿçü | Parametr|digStts | Íàèìåíîâàíèÿ è öâåò íàäïèñåé ñîñòîÿíèé â ôîðìàòå: {On}[-color]:{Off}[-color]. Ïî óìîë÷àíèþ öâåòà - çåëåíûé è êðàñíûé. |
Ýëåìåíò, ïðåäñòàâëåííûé íà ðèñ. 5, ñëóæèò äëÿ îäíîâðåìåííîãî íàáëþäåíèÿ è óïðàâëåíèÿ íåñêîëüêèìè êîíòóðàìè, äî âîñüìè, âêëþ÷àåò â ñåáÿ êàê ýêçåìïëÿðû âèäæåòà "Ýëåìåíò êàäð" äëÿ êàæäîãî êîíòóðà, òàê è âèäæåò "Äèàãðàììà" äëÿ íàáëþäåíèÿ çà òðåíäàìè êîíòóðîâ è ïðîñìîòðà èñòîðèè.
Äàííûé âèäæåò ïðåäíàçíà÷åí äëÿ âûïîëíåíèÿ ðîëè ñòðàíèöû-øàáëîíà, à, ñëåäîâàòåëüíî, äîëæåí íåïîñðåäñòâåííî ïîìåùàòüñÿ â äåðåâî ïðîåêòà.  ïðîåêòå-øàáëîíå "Ãðóïïû ñèãíàëèçàöèé", äëÿ êàæäîãî îáúåêòà ñèãíàëèçàöèè ýòîò âèäæåò-êàäð âêëþ÷åí â ðîëè øàáëîíà, ÷òî ïîçâîëÿåò ñîçäàâàòü íà åãî îñíîâå ìíîæåñòâî ñòðàíèö ãðóïï êîíòóðîâ. Ê êàæäîìó âèäæåòó-êàäðó ìîæåò ïîäêëþ÷àòüñÿ äî âîñüìè ïàðàìåòðîâ ïóò¸ì óñòàíîâêè ñâÿçåé. Êîíòóðà, äëÿ êîòîðûõ íå áóäóò óñòàíîâëåíû ñâÿçè, áóäóò ñêðûòû ïðè èñïîëíåíèè.
 ðåæèìå èñïîëíåíèÿ îòîáðàæàþòñÿ êîíòóðà è ãðàôèêè, äëÿ êîòîðûõ óñòàíîâëåíû ñâÿçè. Óïðàâëåíèå ïàðàìåòðàìè ñ êîíòóðîâ ñîîòâåòñòâåííî äåòàëüíî îïèñàíî â ðàçäåëå âèäæåòà "Ýëåìåíò êàäð (ElCadr) ".  äîïîëíåíèè ê ýòîìó ìîæíî óïðàâëÿòü ñâîéñòâàìè îòîáðàæåíèÿ ãðàôèêîâ, äëÿ ÷åãî íåîáõîäèìî ëåâîé êëàâèøåé ìûøè íàæàòü â îáëàñòü ãðàôèêà è ñ ïîìîùüþ ïîÿâèâøåéñÿ ïàíåëè óïðàâëåíèÿ ãðàôèêîì îñóùåñòâèòü íåîáõîäèìûå äåéñòâèÿ.
Íà ðèñ. 6 ïðåäñòàâëåí ïðèìåð ýòîãî ýëåìåíòà â ðåæèìå èñïîëíåíèÿ.
ID | Ïàðàìåòð | Òèï | Êîíôèãóðàöèÿ | Êîíôèãóðàöèîííûé øàáëîí | Îïèñàíèå |
grpName | Èìÿ ãðóïïû | Ñòðîêà | Ïîñòîÿííàÿ | Èìÿ ãðóïïû | |
Ýëåìåíò {n} îò 1 äî 8. | |||||
el{n} | Ïåðå÷åíü ñâÿçûâàåìûõ àòðèáóòîâ ñîîòâåòñòâóåò ïåðå÷íþ âèäæåòà "Ýëåìåíò êàäð (ElCadr)" |
Ýëåìåíò, ïðåäñòàâëåííûé íà ðèñ. 7, ñëóæèò îñíîâîé îáçîðíîãî êàäðà è îáû÷íî íå èñïîëüçóåòñÿ ñàìîñòîÿòåëüíî. Ýëåìåíò îòðàæàåò òåêñòîâóþ èíôîðìàöèþ î ïàðàìåòðå â âèäå íàèìåíîâàíèÿ è çíà÷åíèÿ, à òàêæå ãðàôèê (òðåíä) ïàðàìåòðà çà íåáîëüøîé (íàñòðàèâàåìûé) ïðîìåæóòîê âðåìåíè äëÿ íàáëþäåíèÿ çà òåêóùåé òåíäåíöèåé ïîâåäåíèÿ ïàðàìåòðà ñ àâòî-ìàñøòàáèðîâàíèåì ïî øêàëå çíà÷åíèÿ.
Õîòÿ äàííûé âèäæåò íå ïðåäíàçíà÷åí äëÿ ñàìîñòîÿòåëüíîãî èñïîëüçîâàíèÿ, â îòðûâå îò îáçîðíîãî êàäðà, èñïîëüçîâàòü åãî ìîæíî, íàïðèìåð, ïîìåñòèâ íà ìíåìîñõåìó è óñòàíîâèâ ñâÿçü ñ ïàðàìåòðîì èñòî÷íèêà äàííûõ.
 ðåæèìå èñïîëíåíèÿ äëÿ ïàðàìåòðà ìîæíî ïîëó÷èòü ïàñïîðò ïóò¸ì íàæàòèÿ ïðàâîé êëàâèøè ìûøè íà ïîëå âèäæåòà.  ïàñïîðòå áóäóò ïðåäñòàâëåíû âñå ñâîéñòâà ïàðàìåòðà. Ïðè íàæàòèè ëåâîé êëàâèøåé ìûøè â îáëàñòü âèäæåòà ñïðàâà ïîÿâèòñÿ ïàíåëü óïðàâëåíèÿ ïàðàìåòðîì, à âûáîð äàííîãî âèäæåòà áóäåò îòîáðàæàòüñÿ ìèãàþùåé ðàìêîé.
Íà ðèñ. 8 ïðåäñòàâëåíû ïðèìåðû ýòîãî ýëåìåíòà â ðåæèìå èñïîëíåíèÿ äëÿ àíàëîãîâîãî è äèñêðåòíîãî ïàðàìåòðà.
ID | Ïàðàìåòð | Òèï | Êîíôèãóðàöèÿ | Êîíôèãóðàöèîííûé øàáëîí | Îïèñàíèå |
name | Èìÿ | Ñòðîêà | Âõîäíàÿ ñâÿçü | Parametr|NAME | Èìÿ ïàðàìåòðà, øèôð, äëÿ îòîáðàæåíèÿ â ïîëå èìåíè. |
addr | Àäðåñ | Àäðåñ | Âõîäíàÿ ñâÿçü | Parametr|var | Àäðåñ ê àòðèáóòó çíà÷åíèÿ ïàðàìåòðà äëÿ ïîñòðîåíèÿ ãðàôèêà. |
var | Çíà÷åíèå | Âåùåñòâ. | Âõîäíàÿ ñâÿçü | Parametr|var | Íåïîñðåäñòâåííî çíà÷åíèå ïàðàìåòðà äëÿ îòîáðàæåíèÿ â ïîëå çíà÷åíèÿ. |
Ýëåìåíò, ïðåäñòàâëåííûé íà ðèñ. 9, ñëóæèò äëÿ îòîáðàæåíèÿ òåêóùèõ òðåíäîâ ïî ïàðàìåòðàì îáúåêòà ñèãíàëèçàöèè â êîëè÷åñòâå äî 24 øòóê, ïîääåðæèâàåò ôóíêöèþ ìàñøòàáèðîâàíèÿ ýëåìåíòîâ â çàâèñèìîñòè îò èõ êîëè÷åñòâà. Ñîñòîèò èç âèäæåòîâ "Ýëåìåíò îáçîðíîãî êàäðà (ElViewCadr) ".
Äàííûé âèäæåò ïðåäíàçíà÷åí äëÿ âûïîëíåíèÿ ðîëè ñòðàíèöû-øàáëîíà, à, ñëåäîâàòåëüíî, äîëæåí íåïîñðåäñòâåííî ïîìåùàòüñÿ â äåðåâî ïðîåêòà.  ïðîåêòå-øàáëîíå "Ãðóïïû ñèãíàëèçàöèé" äëÿ êàæäîãî îáúåêòà ñèãíàëèçàöèè ýòîò âèäæåò-êàäð âêëþ÷åí â ðîëè øàáëîíà, ÷òî ïîçâîëÿåò ñîçäàâàòü íà åãî îñíîâå ìíîæåñòâî ñòðàíèö ãðóïï îáçîðíûõ ãðàôèêîâ. Ê êàæäîìó âèäæåòó-êàäðó ìîæåò ïîäêëþ÷àòüñÿ äî 24õ ïàðàìåòðîâ ïóò¸ì óñòàíîâêè ñâÿçåé. Ãðàôèêè, äëÿ êîòîðûõ íå áóäóò óñòàíîâëåíû ñâÿçè, áóäóò ñêðûòû ïðè èñïîëíåíèè, à ïðè ïîòðåáíîñòè âûïîëíåíî ðàñøèðåíèå è ìàñøòàáèðîâàíèå ïîäêëþ÷åííûõ äëÿ çàïîëíåíèÿ îáëàñòè âñåãî âèäæåòà.
 ðåæèìå èñïîëíåíèÿ îòîáðàæàþòñÿ êîíòóðà ãðàôèêîâ, äëÿ êîòîðûõ óñòàíîâëåíû ñâÿçè. Óïðàâëåíèå ïàðàìåòðàìè ñ êîíòóðîâ ñîîòâåòñòâåííî äåòàëüíî îïèñàíî â ðàçäåëå âèäæåòà "Ýëåìåíò îáçîðíîãî êàäðà (ElViewCadr) ".
Íà ðèñ. 10 ïðåäñòàâëåí ïðèìåð ýòîãî ýëåìåíòà â ðåæèìå èñïîëíåíèÿ.
ID | Ïàðàìåòð | Òèï | Êîíôèãóðàöèÿ | Êîíôèãóðàöèîííûé øàáëîí | Îïèñàíèå |
name | Èìÿ | Ñòðîêà | Ïîñòîÿííàÿ | Èìÿ êàäðà | |
Ýëåìåíò {r}_{c}, ãäå ñòðîêè {r} îò 1 äî 4 è êîëîíêè {c} îò 1 äî 6. | |||||
el{r}_{c} | Ïåðå÷åíü ñâÿçûâàåìûõ àòðèáóòîâ ñîîòâåòñòâóåò ïåðå÷íþ âèäæåòà "Ýëåìåíò îáçîðíîãî êàäðà (ElViewCadr)" |
Ýëåìåíò, ïðåäñòàâëåííûé íà ðèñ. 11, ñëóæèò äëÿ ñîçäàíèÿ ãðóïï ãðàôèêîâ. Ýëåìåíò ñîäåðæèò èíôîðìàöèþ î ïàðàìåòðå, ðåæèì ðåãóëÿòîðà, åñëè ïàðàìåòð ÿâëÿåòñÿ òàêîâûì, åäèíèöû èçìåðåíèÿ àíàëîãîâîãî ïàðàìåòðà, à òàêæå öâåò, ñîîòâåòñòâóþùèé ïàðàìåòðó òðåíäà.
Õîòÿ äàííûé âèäæåò íå ïðåäíàçíà÷åí äëÿ ñàìîñòîÿòåëüíîãî èñïîëüçîâàíèÿ â îòðûâå îò ãðóïïû ãðàôèêîâ, èñïîëüçîâàòü åãî ìîæíî, íàïðèìåð, ïîìåñòèâ íà ìíåìîñõåìó è óñòàíîâèâ ñâÿçü ñ ïàðàìåòðîì èñòî÷íèêà äàííûõ.
 ðåæèìå èñïîëíåíèÿ, êðîìå íåïîñðåäñòâåííî äîñòóïíûõ âèçóàëüíûõ äàííûõ, ïðåäîñòàâëÿåòñÿ ðÿä ýëåìåíòîâ êîíòðîëÿ:
Íà ðèñ. 12 ïðåäñòàâëåíû ðàçëè÷íûå ïðèìåðû ýòîãî ýëåìåíòà â ðåæèìå èñïîëíåíèÿ.
ID | Ïàðàìåòð | Òèï | Êîíôèãóðàöèÿ | Êîíôèãóðàöèîííûé øàáëîí | Îïèñàíèå |
name | Èìÿ ïàðàìåòðà | Ñòðîêà | Âõîäíàÿ ñâÿçü | Parametr|NAME | Èìÿ ïàðàìåòðà, øèôð, äëÿ îòîáðàæåíèÿ â ïîëå èìåíè. |
addr | Àäðåñ | Àäðåñ | Âõîäíàÿ ñâÿçü | Parametr|var | Àäðåñ ê àòðèáóòó çíà÷åíèÿ ïàðàìåòðà äëÿ ïîñòðîåíèÿ ãðàôèêà. |
color | Öâåò ãðàôèêà | Ñòðîêà. | Ïîñòîÿííàÿ | ||
Ïàðàìåòðû àíàëîãîâîãî óñòðîéñòâà | |||||
ed | Åäèíèöà èçìåðåíèÿ | Ñòðîêà | Âõîäíàÿ ñâÿçü | Parametr|ed | |
prec | Òî÷íîñòü | Öåëûé | Âõîäíàÿ ñâÿçü | Parametr|prec | Êîëè÷åñòâî çíàêîâ ïîñëå çàïÿòîé ó ïàðàìåòðà. |
max | Ìàêñèìóì | Âåùåñòâ. | Âõîäíàÿ ñâÿçü | Parametr|max | Ìàêñèìàëüíàÿ ãðàíèöà çíà÷åíèÿ ïàðàìåòðà. |
min | Ìèíèìóì | Âåùåñòâ. | Âõîäíàÿ ñâÿçü | Parametr|min | Ìèíèìàëüíàÿ ãðàíèöà çíà÷åíèÿ ïàðàìåòðà. |
aMax | Ãðàíèöà âåðõíÿÿ àâàðèéíàÿ | Âåùåñòâ. | Âõîäíàÿ ñâÿçü | Parametr|aMax | |
aMin | Ãðàíèöà íèæíÿÿ àâàðèéíàÿ | Âåùåñòâ. | Âõîäíàÿ ñâÿçü | Parametr|aMin | |
wMax | Ãðàíèöà âåðõíÿÿ ïðåäóïðåäèòåëüíàÿ | Âåùåñòâ. | Âõîäíàÿ ñâÿçü | Parametr|wMax | |
wMin | Ãðàíèöà íèæíÿÿ ïðåäóïðåäèòåëüíàÿ | Âåùåñòâ. | Âõîäíàÿ ñâÿçü | Parametr|wMin | |
pModeA | Ðåæèì ðåãóëÿòîðà (àâòîìàò) | Ëîãè÷. | Âõîäíàÿ ñâÿçü | Parametr|auto | Ðåæèì ðåãóëÿòîðà "Àâòîìàò". |
pModeC | Ðåæèì ðåãóëÿòîðà (êàñêàä) | Ëîãè÷. | Âõîäíàÿ ñâÿçü | Parametr|casc | Ðåæèì ðåãóëÿòîðà "Êàñêàä". |
Ïàðàìåòðû äèñêðåòíûõ óñòðîéñòâ | |||||
digComs | Êîìàíäû äèñêðåòíûõ ñèãíàëîâ | Ñòðîêà | Ïîñòîÿííàÿ | Íàèìåíîâàíèÿ è öâåò êíîïîê êîìàíä â ôîðìàòå: {On}[-color]:{Off}[-color][:{Stop}[-color]]. Ïî óìîë÷àíèþ öâåòà: çåëåíûé, êðàñíûé è æ¸ëòûé. | |
digStts | Ñîñòîÿíèÿ äèñêðåòíûõ ïàðàìåòðîâ | Ñòðîêà | Ïîñòîÿííàÿ | Íàèìåíîâàíèÿ è öâåò íàäïèñåé ñîñòîÿíèé â ôîðìàòå: {On}[-color]:{Off}[-color]. Ïî óìîë÷àíèþ öâåòà - çåëåíûé è êðàñíûé. | |
digRevers | Ðåâåðñ | Ëîãè÷. | Ïîñòîÿííàÿ | Ðåâåðñ äèñêðåòíîãî ñèãíàëà. |
Ýëåìåíò, ïðåäñòàâëåííûé íà ðèñ. 13, ñëóæèò äëÿ îäíîâðåìåííîãî íàáëþäåíèÿ òðåíäà è óïðàâëåíèÿ ïàðàìåòðàìè îáúåêòà ñèãíàëèçàöèè, âêëþ÷àåò â ñåáÿ êàê ýêçåìïëÿðû âèäæåòà "Ýëåìåíò ãðóïïû ãðàôèêîâ (ElViewGraph) " äëÿ êàæäîãî ïàðàìåòðà, òàê è âèäæåò "Äèàãðàììà" äëÿ íàáëþäåíèÿ çà ãðàôèêàìè ïàðàìåòðîâ è ïðîñìîòðà èñòîðèè, à òàê-æå ãîðèçîíòàëüíóþ ïîëîñó ïðîêðóòêè äëÿ áûñòðîé íàâèãàöèè ïî äîñòóïíîé èñòîðèè âûáðàííûõ äëÿ îòîáðàæåíèÿ ïàðàìåòðîâ.
Äàííûé âèäæåò ïðåäíàçíà÷åí äëÿ âûïîëíåíèÿ ðîëè ñòðàíèöû-øàáëîíà, à, ñëåäîâàòåëüíî, äîëæåí íåïîñðåäñòâåííî ïîìåùàòüñÿ â äåðåâî ïðîåêòà.  ïðîåêòå-øàáëîíå "Ãðóïïû ñèãíàëèçàöèé", äëÿ êàæäîãî îáúåêòà ñèãíàëèçàöèè ýòîò âèäæåò-êàäð âêëþ÷åí â ðîëè øàáëîíà, ÷òî ïîçâîëÿåò ñîçäàâàòü íà åãî îñíîâå ìíîæåñòâî ñòðàíèö ãðóïï ãðàôèêîâ. Ê êàæäîìó âèäæåòó-êàäðó ìîæåò ïîäêëþ÷àòüñÿ äî âîñüìè ïàðàìåòðîâ ïóò¸ì óñòàíîâêè ñâÿçåé. Ãðàôèêè, äëÿ êîòîðûõ íå áóäóò óñòàíîâëåíû ñâÿçè, áóäóò ñêðûòû ïðè èñïîëíåíèè èëè äîñòóïíû äëÿ ïîëüçîâàòåëüñêîãî âûáîðà â ñëó÷àå íàëè÷èÿ ñïèñêà âûáîðíûõ ïàðàìåòðîâ â àòðèáóòå "Ïàðàìåòðû äîñòóïíûå äëÿ âûáîðà" (ôîðìàò ñïèñêà îïèñàí â äèàëîãå âûáîðà ïàðàìåòðîâ).
 ðåæèìå èñïîëíåíèÿ îòîáðàæàþòñÿ ãðàôèêè, äëÿ êîòîðûõ óñòàíîâëåíû ñâÿçè. Óïðàâëåíèå ïàðàìåòðàìè ñ ýëåìåíòîâ òåêñòà ãðàôèêîâ ñîîòâåòñòâåííî äåòàëüíî îïèñàíî â ðàçäåëå âèäæåòà "(Ýëåìåíò ãðóïïû ãðàôèêîâ (ElViewGraph)".  äîïîëíåíèå ê ýòîìó ìîæíî óïðàâëÿòü ñâîéñòâàìè îòîáðàæåíèÿ ãðàôèêîâ, äëÿ ÷åãî íåîáõîäèìî ëåâîé êëàâèøåé ìûøè íàæàòü â îáëàñòü ãðàôèêà è ñ ïîìîùüþ ïîÿâèâøåéñÿ ïàíåëè óïðàâëåíèÿ ãðàôèêîì îñóùåñòâèòü íåîáõîäèìûå äåéñòâèÿ.
Íà ðèñ. 14 ïðåäñòàâëåí ïðèìåð ýòîãî ýëåìåíòà â ðåæèìå èñïîëíåíèÿ.
ID | Ïàðàìåòð | Òèï | Êîíôèãóðàöèÿ | Êîíôèãóðàöèîííûé øàáëîí | Îïèñàíèå |
grpName | Èìÿ ãðóïïû | Ñòðîêà | Ïîñòîÿííàÿ | Èìÿ ãðóïïû | |
Ýëåìåíò {n} îò 1 äî 8. | |||||
el{n} | Ïåðå÷åíü ñâÿçûâàåìûõ àòðèáóòîâ ñîîòâåòñòâóåò ïåðå÷íþ âèäæåòà "Ýëåìåíò ãðóïïû ãðàôèêîâ (ElViewGraph)". |
Ýëåìåíò, ïðåäñòàâëåííûé íà ðèñ. 15, ñëóæèò äëÿ ñîçäàíèÿ ñâîäíûõ ãðàôèêîâ. Ýëåìåíò ïîçâîëÿåò îòîáðàæàòü òðåíäû ïî ïÿòè ïàðàìåòðàì çà óêàçàííûé ïðîìåæóòîê âðåìÿ è äî òåêóùåãî âðåìåíè.
Õîòÿ äàííûé âèäæåò íå ïðåäíàçíà÷åí äëÿ ñàìîñòîÿòåëüíîãî èñïîëüçîâàíèÿ â îòðûâå îò ñâîäíûõ ãðàôèêîâ, èñïîëüçîâàòü åãî ìîæíî, íàïðèìåð, ïîìåñòèâ íà ìíåìîñõåìó è óñòàíîâèâ ñâÿçü ñ ïàðàìåòðîì èñòî÷íèêà äàííûõ.
Íà ðèñ. 16 ïðåäñòàâëåí ïðèìåð ýòîãî ýëåìåíòà â ðåæèìå èñïîëíåíèÿ.
ID | Ïàðàìåòð | Òèï | Êîíôèãóðàöèÿ | Êîíôèãóðàöèîííûé øàáëîí | Îïèñàíèå |
title | Çàãîëîâîê | Ñòðîêà | Ïîñòîÿííàÿ | Îòîáðàæàåòñÿ ñâåðõó ãðàôèêà. Ïðè îïóñêàíèè çàãîëîâêà ïîëå ãðàôèêà ðàñøèðèòñÿ ââåðõ. | |
Ãðàôèê {n} îò 1 äî 5. | |||||
p{n}_addr | Ïàðàìåòð{n}:àäðåñ | Àäðåñ | Âõîäíàÿ ñâÿçü | Parametr_{n}|var | Àäðåñ ê àòðèáóòó çíà÷åíèÿ ïàðàìåòðà äëÿ ïîñòðîåíèÿ ãðàôèêà {n}. |
p{n}_clr | Ïàðàìåòð{n}:öâåò | Öâåò | Ïîñòîÿííàÿ | Parametr_{n} | |
p{n}_max | Ïàðàìåòð{n}:ìàêñèìóì | Âåùåñòâ. | Âõîäíàÿ ñâÿçü | Parametr_{n}|max | Ìàêñèìàëüíàÿ ãðàíèöà ãðàôèêà. |
p{n}_min | Ïàðàìåòð{n}:ìèíèìóì | Âåùåñòâ. | Âõîäíàÿ ñâÿçü | Parametr_{n}|min | Ìèíèìàëüíàÿ ãðàíèöà ãðàôèêà. |
p{n}_name | Ïàðàìåòð{n}:èìÿ | Ñòðîêà | Âõîäíàÿ ñâÿçü | Parametr_{n}|NAME | Êîðîòêîå èìÿ ïàðàìåòðà äëÿ îòîáðàæåíèÿ â ïîëå ñëåâà. |
Ýëåìåíò, ïðåäñòàâëåííûé íà ðèñ. 17, ñëóæèò äëÿ îòîáðàæåíèÿ òðåíäîâ îñíîâíûõ ïàðàìåòðîâ ïî âñåìó ïðîåêòó âèçóàëèçàöèè.
Äàííûé âèäæåò ïðåäíàçíà÷åí äëÿ âûïîëíåíèÿ ðîëè ñòðàíèöû-øàáëîíà, à, ñëåäîâàòåëüíî, äîëæåí íåïîñðåäñòâåííî ïîìåùàòüñÿ â äåðåâî ïðîåêòà.  ïðîåêòå-øàáëîíå "Ãðóïïû ñèãíàëèçàöèé" íà óðîâíå êîðíåâîé ñòðàíèöû äëÿ íåãî ïðåäóñìîòðåíà ñïåöèàëüíàÿ âèðòóàëüíàÿ ñòðàíèöà "Ñâîäíûå ãðàôèêè" ñ øàáëîíîì ñâîäíûõ ãðàôèêîâ, ÷òî ïîçâîëÿåò ñîçäàâàòü íà åãî îñíîâå ìíîæåñòâî ñòðàíèö ñâîäíûõ ãðàôèêîâ. Ê êàæäîìó âèäæåòó-êàäðó ìîæåò ïîäêëþ÷àòüñÿ äî 16*5 ïàðàìåòðîâ ïóò¸ì óñòàíîâêè ñâÿçåé. Ãðàôèêè, äëÿ êîòîðûõ íå áóäóò óñòàíîâëåíû ñâÿçè, áóäóò ñêðûòû ïðè èñïîëíåíèè, è ïðè ïîòðåáíîñòè áóäåò âûïîëíåíî ðàñøèðåíèå è ìàñøòàáèðîâàíèå ïîäêëþ÷åííûõ ãðàôèêîâ äëÿ çàïîëíåíèÿ îáëàñòè âñåãî âèäæåòà.
 ðåæèìå èñïîëíåíèÿ îòîáðàæàþòñÿ êîíòóðà ãðàôèêîâ, äëÿ êîòîðûõ óñòàíîâëåíû ñâÿçè.
Íà ðèñ. 18 ïðåäñòàâëåí ïðèìåð ýòîãî ýëåìåíòà â ðåæèìå èñïîëíåíèÿ.
ID | Ïàðàìåòð | Òèï | Êîíôèãóðàöèÿ | Êîíôèãóðàöèîííûé øàáëîí | Îïèñàíèå |
grpName | Èìÿ ãðóïïû | Ñòðîêà | Ïîñòîÿííàÿ | Èìÿ ãðóïïû | |
Ýëåìåíò {n} îò 1 äî 16. | |||||
el{n} | Ïåðå÷åíü ñâÿçûâàåìûõ àòðèáóòîâ ñîîòâåòñòâóåò ïåðå÷íþ âèäæåòà "Ýëåìåíò ñâîäíûõ ãðàôèêîâ (ResultGraphEl) ". |
Ýëåìåíò, ïðåäñòàâëåííûé íà ðèñ. 19, ñëóæèò äëÿ íàñòðîéêè ÏÈÄ ðåãóëÿòîðà, âêëþ÷àåò â ñåáÿ èíôîðìàöèþ î ïàðàìåòðå-ðåãóëÿòîðå, ïîëÿ íàñòðîåê ðåãóëÿòîðà, è âèäæåò "Äèàãðàììà" äëÿ íàáëþäåíèÿ çà òðåíäàìè ðåãóëÿòîðà è ïðîñìîòðà èñòîðèè.
Äàííûé âèäæåò ìîæåò èñïîëüçîâàòüñÿ êàê â ðîëè ïàíåëè, âûçûâàåìîé èç ïàíåëè óïðàâëåíèÿ ïàðàìåòðàìè "ElCadr", òàê è â ðîëè ñòðàíèöû-øàáëîíà. Âèäæåò äîëæåí íåïîñðåäñòâåííî ïîìåùàòüñÿ â äåðåâî ïðîåêòà, à èìåííî â êîíòåéíåð ïàíåëåé, ãäå áóäåò îñóùåñòâëÿòüñÿ äèíàìè÷åñêàÿ ëèíêîâêà íà ïàðàìåòð ðåãóëÿòîðà. Äëÿ ñîçäàíèÿ ñòàòè÷åñêîãî ïåðå÷íÿ êîíòóðîâ íàñòðîåê ðåãóëÿòîðîâ, ñ âîçìîæíîñòüþ ïîñëåäóþùåãî ëèñòàíèÿ ïî íèì, íåîáõîäèìî ïîìåñòèòü èõ â êîíòåéíåð êîíòóðîâ ðåãóëÿòîðîâ "greg" êàæäîãî îáúåêòà ñèãíàëèçàöèè è ñòàòè÷åñêè ñâÿçàòü ñ ñîîòâåòñòâóþùèì ïàðàìåòðîì, à òàêæå îáåñïå÷èòü ðàâåíñòâî èäåíòèôèêàòîðà ïàíåëè è ñâÿçàííîãî ïàðàìåòðà.
 ðåæèìå èñïîëíåíèÿ îòîáðàæàåòñÿ:
Ó ïîëüçîâàòåëÿ åñòü âîçìîæíîñòü èçìåíèòü êîýôôèöèåíòû ÏÈÄ-ðåãóëÿòîðà, ðåæèì, çàäàíèå, âûõîä è ñðàçó æå óâèäåòü ðåàêöèþ íà ãðàôèêå. Êðîìå ýòîãî, ïîëüçîâàòåëü ìîæåò èçó÷èòü èñòîðèþ ðàáîòû ðåãóëÿòîðà, äëÿ ÷åãî íåîáõîäèìî ëåâîé êëàâèøåé ìûøè íàæàòü â îáëàñòü ãðàôèêà è ñ ïîìîùüþ ïîÿâèâøåéñÿ ïàíåëè óïðàâëåíèÿ ãðàôèêîì îñóùåñòâèòü íåîáõîäèìûå äåéñòâèÿ íàâèãàöèè. Äëÿ âîçâðàòà ïàíåëè ïàðàìåòðà ðåãóëÿòîðà íåîáõîäèìî ëåâîé êëàâèøåé ìûøè íàæàòü â ñâîáîäíóþ îáëàñòü äàííîãî êàäðà.
Íà ðèñ. 20 ïðåäñòàâëåí ïðèìåð ýòîãî ýëåìåíòà â ðåæèìå èñïîëíåíèÿ.
ID | Ïàðàìåòð | Òèï | Êîíôèãóðàöèÿ | Êîíôèãóðàöèîííûé øàáëîí | Îïèñàíèå |
SHIFR | Øèôð | Ñòðîêà | Âõîäíàÿ ñâÿçü | Parameter|SHIFR | |
NAME | Èìÿ | Ñòðîêà | Âõîäíàÿ ñâÿçü | Parameter|NAME | |
DESCR | Îïèñàíèå | Ñòðîêà | Âõîäíàÿ ñâÿçü | Parameter|DESCR | |
max | Ìàêñèìóì øêàëû | Âåùåñòâ. | Âõîäíàÿ ñâÿçü | Parameter|max | |
min | Ìèíèìóì øêàëû | Âåùåñòâ. | Âõîäíàÿ ñâÿçü | Parameter|min | |
ed | Åäèíèöû èçìåðåíèÿ | Ñòðîêà | Âõîäíàÿ ñâÿçü | Parameter|ed | |
prec | Òî÷íîñòü | Öåëûé | Âõîäíàÿ ñâÿçü | Parametr|prec | Êîëè÷åñòâî çíàêîâ ïîñëå çàïÿòîé â çíà÷åíèè è çàäàíèè ïàðàìåòðà ÏÈÄ. |
var | Ïåðåìåííàÿ | Âåùåñòâ. | Âõîäíàÿ ñâÿçü | Parameter|var | |
var_addr | Àäðåñ ïåðåìåííîé | Àäðåñ | Âõîäíàÿ ñâÿçü | Parameter|var | Àäðåñ äëÿ ïîñòðîåíèÿ ãðàôèêà ïåðåìåííîé. |
ÏÈÄ - ðåãóëÿòîð | |||||
auto_addr | Ðåæèì | Àäðåñ | Âõîäíàÿ ñâÿçü | Parameter|auto | Àäðåñ äëÿ ïîñòðîåíèÿ ãðàôèêà ðåæèìà "Àâòîìàò". |
sp | Çàäàíèå | Âåùåñòâ. | Âõîäíàÿ ñâÿçü | Parameter|sp | |
sp_addr | Àäðåñ çàäàíèÿ | Àäðåñ | Âõîäíàÿ ñâÿçü | Parameter|sp | Àäðåñ äëÿ ïîñòðîåíèÿ ãðàôèêà çàäàíèÿ. |
out | Âûõîä | Âåùåñòâ. | Âõîäíàÿ ñâÿçü | Parameter|out | |
out_addr | Àäðåñ âûõîäà | Àäðåñ | Âõîäíàÿ ñâÿçü | Parameter|out | Àäðåñ äëÿ ïîñòðîåíèÿ ãðàôèêà àíàëîãîâîãî âûõîäà. |
Hdwn | Íèæíÿÿ ãðàíèöà âûõîäà | Âåùåñòâ. | Ïîëíàÿ ñâÿçü | Parameter|Hdwn | Îãðàíè÷åíèå çíà÷åíèÿ àíàëîãîâîãî âûõîäà ïî íèçó. |
Hup | Âåðõíÿÿ ãðàíèöà âûõîäà | Âåùåñòâ. | Ïîëíàÿ ñâÿçü | Parameter|Hup | Îãðàíè÷åíèå çíà÷åíèÿ àíàëîãîâîãî âûõîäà ïî âåðõó. |
Kp | Êîýô. ïðîïîðöèîíàëüíîñòè | Âåùåñòâ. | Ïîëíàÿ ñâÿçü | Parameter|Kp | |
Ki | Êîýô. ïðîïîðöèîíàëüíîñòè èíòåãðàëà | Âåùåñòâ. | Ïîëíàÿ ñâÿçü | Parameter|Ki | |
Ti | Âðåìÿ èíòåãðèðîâàíèÿ | Âåùåñòâ. | Ïîëíàÿ ñâÿçü | Parameter|Ti | |
Kd | Êîýô. ïðîïîðöèîíàëüíîñòè ïðîèçâîäíîé | Âåùåñòâ. | Ïîëíàÿ ñâÿçü | Parameter|Kd | |
Td | Âðåìÿ äèôôåðåíöèðîâàíèÿ | Âåùåñòâ. | Ïîëíàÿ ñâÿçü | Parameter|Td | |
Tzd | Âðåìÿ çàäåðæêè äèôôåðåíöèàëüíîé ÷àñòè | Âåùåñòâ. | Ïîëíàÿ ñâÿçü | Parameter|Tzd | |
Zi | Çîíà íå÷óâñòâèòåëüíîñòè | Âåùåñòâ. | Ïîëíàÿ ñâÿçü | Parameter|Zi | |
K1 | Êîýô. âõîäà 1 | Âåùåñòâ. | Ïîëíàÿ ñâÿçü | Parameter|K1 | |
K2 | Êîýô. âõîäà 2 | Âåùåñòâ. | Ïîëíàÿ ñâÿçü | Parameter|K2 | |
K3 | Êîýô. âõîäà 3 | Âåùåñòâ. | Ïîëíàÿ ñâÿçü | Parameter|K3 | |
K4 | Êîýô. âõîäà 4 | Âåùåñòâ. | Ïîëíàÿ ñâÿçü | Parameter|K4 | |
Èìïóëüñíûé ÏÈÄ - ðåãóëÿòîð | |||||
impQup_addr | Àäðåñ âûõîäà èìïóëüñà ââåðõ | Àäðåñ | Âõîäíàÿ ñâÿçü | Parameter|impQup | Àäðåñ äëÿ ïîñòðîåíèÿ ãðàôèêà èìïóëüñíîãî âûõîäà "Ââåðõ". |
impQdwn_addr | Àäðåñ âûõîäà èìïóëüñà âíèç | Àäðåñ | Âõîäíàÿ ñâÿçü | Parameter|impQdwn | Àäðåñ äëÿ ïîñòðîåíèÿ ãðàôèêà èìïóëüñíîãî âûõîäà "Âíèç". |
KImpRfact | Ðåéòèíã ôàêòîð | Âåùåñòâ. | Ïîëíàÿ ñâÿçü | Parameter|KImpRfact | Íåñèììåòðèÿ â ãåíåðàöèè øèðèíû èìïóëüñà ââåðõ è âíèç. |
TImpMin | Ìèíèìàëüíîå âðåìÿ èìïóëüñà | Öåëûé | Ïîëíàÿ ñâÿçü | Parameter|TImpMin | Áóäóò ãåíåðèðîâàòüñÿ èìïóëüñû, íà÷èíàÿ ñ óêàçàííîé øèðèíû. |
TImpPer | Ïåðèîä ïîâòîðåíèÿ èìïóëüñîâ | Öåëûé | Ïîëíàÿ ñâÿçü | Parameter|TImpPer | Ïåðèîäè÷íîñòü ïîâòîðåíèÿ ãåíåðàöèè èìïóëüñà. |
Ýëåìåíò "Êîðíåâàÿ ñòðàíèöà", ïðåäñòàâëåííûé íà ðèñ. 21, ñëóæèò áàçîé äëÿ ñîçäàíèÿ ïîëüçîâàòåëüñêèõ èíòåðôåéñîâ óïðàâëåíèÿ òåõíîëîãè÷åñêèìè ïðîöåññàìè, îñíîâàííûìè íà îáúåêòàõ ñèãíàëèçàöèè. Êîðíåâàÿ ñòðàíèöà ñîäåðæèò ÷åòûðå îáëàñòè:
Ïîä êîíòåéíåðîì ïàíåëåé óïðàâëåíèÿ ðàñïîëàãàåòñÿ êíîïêà çàïóñêà äåìîíñòðàöèîííîãî ðåæèìà — ðåæèìà ïðè êîòîðîì îñóùåñòâëÿåòñÿ ïåðèîäè÷åñêîå ïåðåêëþ÷åíèå ïîêàçàòåëüíûõ êàäðîâ, èçìåíåíèå ðåæèìîâ è äðóãèõ îïåðàöèé ñîãëàñíî ñöåíàðèþ.
Äàííûé âèäæåò ìîæåò èñïîëüçîâàòüñÿ òîëüêî â ðåæèìå êîðíåâîé ñòðàíèöû, êîòîðàÿ äîëæíà ïîìåùàòüñÿ â äåðåâî ïðîåêòà êàê ýëåìåíò "/*/so". Êðîìå ýòîãî âîêðóã ãëàâíîé ñòðàíèöû äîëæíà áûòü ðàçâ¸ðíóòà ñëåäóþùàÿ äðåâîâèäíàÿ èåðàðõèÿ:
Ïðè íàëè÷èè äåìîíñòðàöèîííîãî ðåæèìà íåîáõîäèìî â àòðèáóòå "Ïðîö. ïðîèãðûâàíèÿ äåìî" îïèñàòü ïðîöåäóðó äåìîíñòðàöèè íà âíóòðåííåì ÿçûêå OpenSCADA DAQ.JavaLikeCalc.  êà÷åñòâå ïðèìåðà íèæå ïðèâåäåíà ïðîöåäóðà äåìîíñòðàöèè "Äèíàìè÷åñêîé ìîäåëè ÀÃËÊÑ":
stepCur++; stepTm = 20; //>> Open main mnemo if(stepCur == 0) { this.pg_1.pg_mn.pg_1.attrSet("pgOpen",true); this.attrSet("tipStatus","Îòêðûòèå ãëàâíîé ìíåìîñõåìû."); } //>> Open main graphics else if(stepCur == 1) { this.pg_1.pg_ggraph.pg_1.attrSet("pgOpen",true); this.attrSet("tipStatus","Îòêðûòèå ãëàâíûõ ãðàôèêîâ."); } //>> Setpoint set more for PC KRD1 else if(stepCur == 2) { SYS.DAQ.BlockCalc.Anast1to2node_cntr.PC_ÊÐÄ1.sp.set(6); this.attrSet("tipStatus","Óâåëè÷åíèå çàäàíèÿ ðåãóëÿòîðà PC_ÊÐÄ1."); } //>> Open contours group else if(stepCur == 3) { this.pg_1.pg_gcadr.pg_1.attrSet("pgOpen",true); this.attrSet("tipStatus","Îòêðûòèå ãðóïïû êîíòóðîâ."); } //>> Open overview cadr else if(stepCur == 4) { this.pg_1.pg_gview.pg_1.attrSet("pgOpen",true); this.attrSet("tipStatus","Îòêðûòèå îáçîðíîãî êàäðà."); } //>> Open document else if(stepCur == 5) { this.pg_1.pg_doc.pg_1.attrSet("pgOpen",true); this.attrSet("tipStatus","Îòêðûòèå äîêóìåíòà."); } //>> Open result graphics else if(stepCur == 6) { this.pg_rg.pg_rg.pg_1.attrSet("pgOpen",true); this.attrSet("tipStatus","Îòêðûòèå ñâîäíûõ ãðàôèêîâ."); } //>> Open mnemo for KM101 else if(stepCur == 7) { this.pg_2.pg_mn.pg_KM101.attrSet("pgOpen",true); this.attrSet("tipStatus","Îòêðûòèå ìíåìîñõåìû ÊÌ101."); } //>> Open graphics for KM101 else if(stepCur == 8) { this.pg_2.pg_ggraph.pg_1.attrSet("pgOpen",true); this.attrSet("tipStatus","Îòêðûòèå ãðàôèêîâ ÊÌ101."); } //>> Open PID-control panel else if(stepCur == 9) { this.ownerSess().pg_control.pg_ElCadr.attrSet("pgOpenSrc",this.pg_1.pg_mn.pg_1.wdg_PC1.attr("path")); this.attrSet("tipStatus","Îòêðûòèå ïàíåëè óïðàâëåíèÿ ïàðàìåòðà PC_ÊÐÄ1."); stepTm = 1; } //>> Open PID-control page else if(stepCur == 10) { this.ownerSess().pg_control.pg_cntrRegul.attrSet("pgOpenSrc",this.ownerSess().pg_control.pg_ElCadr.attr("path")); this.attrSet("tipStatus","Îòêðûòèå ïàíåëè óïðàâëåíèÿ ðåãóëÿòîðà PC_ÊÐÄ1."); } //>> Setpoint restore for PC KRD1 else if(stepCur == 11) { SYS.DAQ.BlockCalc.Anast1to2node_cntr.PC_ÊÐÄ1.sp.set(5.8); this.attrSet("tipStatus","Âîññòàíîâëåíèå çàäàíèÿ ðåãóëÿòîðà PC_ÊÐÄ1."); } else { stepCur = -1; stepTm = 0; }
 ñëó÷àå îòñóòñòâèÿ Äåìî-ðåæèìà íóæíî íà ñòðàíèöå ïðîåêòà, äàííîãî êàäðà, îòêëþ÷èòü êíîïêó çàïóñêà äåìîíñòðàöèè, à ïîëå ïàíåëåé óïðàâëåíèÿ ðàñøèðèòü.
 ðåæèìå èñïîëíåíèÿ ïîëüçîâàòåëü ìîæåò âûáðàòü íóæíûé èç äîñòóïíûõ îáúåêò ñèãíàëèçàöèè (Ctrl+1...0), âûáðàòü âèä îòîáðàæåíèÿ (Ctrl+M,G,C,V,D,R), îñóùåñòâèòü êâèòàöèþ íàðóøåíèé, à òàêæå âûçâàòü ïàíåëü óïðàâëåíèÿ íóæíîãî ýëåìåíòà. Ïîñëå îñóùåñòâëåíèÿ âûáîðà ïîëüçîâàòåëþ ïðåäîñòàâëÿåòñÿ ìíåìîñõåìà èëè îáùèé êàäð â îáëàñòè êîíòåéíåðà ìíåìîñõåì, à òàêæå ïàíåëè óïðàâëåíèÿ â îáëàñòè êîíòåéíåðà ïàíåëåé óïðàâëåíèÿ. Ïîñëå ÷åãî ïîëüçîâàòåëü ìîæåò íàáëþäàòü ñîñòîÿíèÿ íà ìíåìîñõåìàõ è ïàíåëÿõ, à òàêæå îñóùåñòâëÿòü âîçäåéñòâèÿ, ïðåäóñìîòðåííûå èìè.
Íà ðèñ. 22 ïðåäñòàâëåí ïðèìåð ýòîãî ýëåìåíòà â ðåæèìå èñïîëíåíèÿ.
Ýëåìåíò, ïðåäñòàâëåííûé íà ðèñ. 23, ñëóæèò äëÿ îòîáðàæåíèÿ ïàñïîðòà ïàðàìåòðà: äåòàëüíîé èíôîðìàöèè, âêëþ÷àþùåé øèôð, îïèñàíèå, åäèíèöû èçìåðåíèÿ, àâàðèéíûå ãðàíèöû è ò.ä. Äîêóìåíò ôîðìèðóåòñÿ ïîëíîñòüþ äèíàìè÷åñêè.
Äàííûé ýëåìåíò äîëæåí ïîìåùàòüñÿ â ëîãè÷åñêèé êîíòåéíåð ïàíåëåé äåðåâà ïðîåêòà.  ðåæèìå ðåäàêòèðîâàíèÿ ýòîò âèäæåò ïðåäñòàâëÿåò èç ñåáÿ ïóñòîé "Äîêóìåíò", ïîýòîìó ïðèâåäåí òîëüêî ñíèìîê ýêðàíà ñ ýòèì âèäæåòîì â ðåæèìå èñïîëíåíèÿ ïðîåêòà. Ñâÿçûâàíèå ñ ïàðàìåòðîì îñóùåñòâëÿåòñÿ äèíàìè÷åñêè ïðè âûçîâå èç ýëåìåíòîâ ïðåäñòàâëåíèÿ äàííûõ ïàðàìåòðà.
Âûçîâ ïàñïîðòà îñóùåñòâëÿåòñÿ èç ýëåìåíòîâ ïðåäñòàâëåíèÿ äàííûõ ïàðàìåòðà, íàïðèìåð: ïî ïðàâîìó êëèêó ìûøè íà ýëåìåíòå "Àíàëîãîâûé ïàðàìåòð" (anShow) è îáëàñòè âèäæåòà "Ýëåìåíò êàäð" (ElCadr). Ïîñëå âûçîâà îòêðûâàåòñÿ îòäåëüíîå îêíî âèäæåòà-ïàñïîðòà ñî ñïèñêîì è çíà÷åíèÿìè âñåõ ñâîéñòâ ïàðàìåòðà â âèäå òàáëèöû.
ID | Ïàðàìåòð | Òèï | Êîíôèãóðàöèÿ | Êîíôèãóðàöèîííûé øàáëîí | Îïèñàíèå |
pName | Èìÿ ïàðàìåòðà | Àäðåñ | Âõîäíàÿ ñâÿçü | Parametr|NAME | Àäðåñ ê èìåíè ïàðàìåòðà äëÿ îáðàùåíèÿ ê ïàðàìåòðó öåëèêîì è èçúÿòèÿ âñåõ åãî ñâîéñòâ. |
Ýëåìåíò, ïðåäñòàâëåííûé íà ðèñ. 24, ñëóæèò äëÿ óïðàâëåíèÿ äîêóìåíòàìè è íàâèãàöèè ïî èõ èñòîðèè. Ýëåìåíòîì ïîääåðæèâàþòñÿ äèíàìè÷åñêèå è àðõèâíûå äîêóìåíòû.
Äàííûé ýëåìåíò äîëæåí ïîìåùàòüñÿ â ëîãè÷åñêèé êîíòåéíåð ïàíåëåé äåðåâà ïðîåêòà. Ñâÿçûâàíèå ñ ïàðàìåòðîì îñóùåñòâëÿåòñÿ äèíàìè÷åñêè ïðè âûçîâå èç ýëåìåíòà äîêóìåíòà.
Âûçîâ ïàíåëè îñóùåñòâëÿåòñÿ èç ýëåìåíòîâ äîêóìåíòà. Íà ïàíåëè ïðåäîñòàâëÿþòñÿ èíñòðóìåíòû, êîòîðûå íåñêîëüêî îòëè÷àþòñÿ äëÿ äèíàìè÷åñêîãî è àðõèâíîãî äîêóìåíòà.
Äëÿ äèíàìè÷åñêîãî äîêóìåíòà ïðåäóñìàòðèâàåòñÿ:
Äëÿ àðõèâíîãî äîêóìåíòà ïðåäóñìàòðèâàåòñÿ òîëüêî íàâèãàöèÿ ïî äîêóìåíòàì â àðõèâå ïóò¸ì èõ ïåðåëèñòûâàíèÿ, à òàêæå èíôîðìàöèÿ î òåêóùåì è îáùåì êîëè÷åñòâå äîêóìåíòîâ â àðõèâå.
Íà ðèñ. 25 ïðåäñòàâëåíû ïðèìåðû ýòîãî ýëåìåíòà â ðåæèìå èñïîëíåíèÿ: äèíàìè÷åñêèé (ñëåâà) è àðõèâíûé (ñïðàâà).
ID | Ïàðàìåòð | Òèï | Êîíôèãóðàöèÿ | Êîíôèãóðàöèîííûé øàáëîí | Îïèñàíèå |
Äèíàìè÷åñêèé äîêóìåíò | |||||
time | Âðåìÿ äîêóìåíòà | ÄàòàÂðåìÿ | Ïîëíàÿ ñâÿçü | <page>|time | |
bTime | Íà÷àëî äîêóìåíòà | ÄàòàÂðåìÿ | Ïîëíàÿ ñâÿçü | <page>|bTime | |
doc | Äîêóìåíò | Ñòðîêà | Ïîëíàÿ ñâÿçü | <page>|doc | |
Àðõèâíûé äîêóìåíò | |||||
n | Ðàçìåð àðõèâà | Öåëûé | Âõîäíàÿ ñâÿçü | <page>|n | |
vCur | Êóðñîð îòîáðàæåíèÿ | Öåëûé | Ïîëíàÿ ñâÿçü | <page>|vCur | |
aCur | Êóðñîð òåêóùåãî äîêóìåíòà àðõèâà | Öåëûé | Âõîäíàÿ ñâÿçü | <page>|aCur | |
aSize | Ðàçìåð àðõèâà | Öåëûé | Âõîäíàÿ ñâÿçü | <page>|aSize |
Ýëåìåíò, ïðåäñòàâëåííûé íà ðèñ. 26, ñëóæèò äëÿ óïðàâëåíèÿ âèäæåòîì "Äèàãðàììà", îí ïîçâîëÿåò ïðîñìîòðåòü èñòîðèþ ãðàôèêîâ çà íåîáõîäèìûé ïåðèîä âðåìåíè è â íóæíîì ðàçðåøåíèè, ïîääåðæèâàåòñÿ ìàñøòàáèðîâàíèå øêàëû, âûáîð àðõèâàòîðîâ äëÿ îòîáðàæåíèÿ, à òàêæå ïðåäñòàâëåíèå ãðàôèêîâ â âèäå ñïåêòðà ïðèñóòñòâóþùèõ ÷àñòîò èëè XY.
Äàííûé ýëåìåíò äîëæåí ïîìåùàòüñÿ â ëîãè÷åñêèé êîíòåéíåð ïàíåëåé äåðåâà ïðîåêòà. Ñâÿçûâàíèå ñ ïàðàìåòðîì îñóùåñòâëÿåòñÿ äèíàìè÷åñêè ïðè âûçîâå èç ýëåìåíòà äèàãðàììà.
Âûçîâ ïàíåëè îñóùåñòâëÿåòñÿ èç ýëåìåíòîâ äèàãðàììû. Íà ïàíåëè ïðåäîñòàâëÿþòñÿ ñëåäóþùèå èíñòðóìåíòû:
ID | Ïàðàìåòð | Òèï | Êîíôèãóðàöèÿ | Êîíôèãóðàöèîííûé øàáëîí | Îïèñàíèå |
tSek | Âðåìÿ òðåíäà | ÄàòàÂðåìÿ | Ïîëíàÿ ñâÿçü | <page>|tSek | |
tSize | Ðàçìåð òðåíäà | Âåùåñòâåííûé | Ïîëíàÿ ñâÿçü | <page>|tSize | Âðåìåííîé ðàçìåð ãðàôèêà â èñòîðèþ îò âðåìåíè òðåíäà. |
trcPer | Ïåðèîä ñëåæåíèÿ | Öåëûé | Ïîëíàÿ ñâÿçü | <page>|trcPer | Ïåðèîä îáíîâëåíèÿ ãðàôèêà. |
type | Òèï | Öåëûé | Ïîëíàÿ ñâÿçü | <page>|type | Òèï ãðàôèêà: "Ãðàôèê", "Ñïåêòð ÷àñòîò", "XY". |
valArch | Àðõèâàòîð | Ñòðîêà | Ïîëíàÿ ñâÿçü | <page>|valArch | |
curSek | Êóðñîð | ÄàòàÂðåìÿ | Ïîëíàÿ ñâÿçü | <page>|curSek | Âðåìÿ óñòàíîâêè êóðñîðà. |
curUSek | Êóðñîð, ìêñ | Öåëûé | Ïîëíàÿ ñâÿçü | <page>|curUSek | Âðåìÿ óñòàíîâêè êóðñîðà, ìèêðîñåêóíä. |
sclVer | Âåðòèêàëüíûé ìàñøòàá | Âåùåñòâåííûé | Ïîëíàÿ ñâÿçü | <page>|sclVerScl | Ïðîöåíò âåðòèêàëüíîãî ìàñøòàáà. |
sclVerOff | Ñìåùåíèå âåðòèêàëüíîãî ìàñøòàáà | Âåùåñòâåííûé | Ïîëíàÿ ñâÿçü | <page>|sclVerSclOff | Ïðîöåíò ñìåùåíèÿ ïî âåðòèêàëüíîé øêàëå. |
sclHor | Ãîðèçîíòàëüíûé ìàñøòàá | Âåùåñòâåííûé | Ïîëíàÿ ñâÿçü | <page>|sclHorScl | Ïðîöåíò ãîðèçîíòàëüíîãî ìàñøòàáà. |
sclHorOff | Ñìåùåíèå ãîðèçîíòàëüíîãî ìàñøòàáà | Âåùåñòâåííûé | Ïîëíàÿ ñâÿçü | <page>|sclHorSclOff | Ïðîöåíò ñìåùåíèÿ ïî ãîðèçîíòàëüíîé øêàëå. |
sclWin | Ìàñøòàá îêíîì | Ëîãè÷åñêèé | Ïîëíàÿ ñâÿçü | <page>|sclWin | Ïåðåêëþ÷åíèå ðåæèìà ìàñøòàáèðîâàíèÿ îêíîì. |
sclWinCtx | Ìàñøòàá: îêíîì, ñîõðàí¸ííûé êîíòåêñò | Îáúåêò | Âõîäíàÿ ñâÿçü | <page>|sclWinCtx | Êîíòåêñò ñîõðàíåíèÿ èñõîäíûõ ïàðàìåòðîâ ìàñøòàáèðîâàíèÿ îêíîì, äëÿ âîçâðàòà. |
Ýëåìåíò, ïðåäñòàâëåííûé íà ðèñ. 27, ñëóæèò äëÿ çàïîëíåíèÿ ïóñòîãî ìåñòà, êîãäà íå âûáðàí ýëåìåíò äëÿ óïðàâëåíèÿ.
Äàííûé ýëåìåíò äîëæåí ïîìåùàòüñÿ â ëîãè÷åñêèé êîíòåéíåð ïàíåëåé äåðåâà ïðîåêòà.
Âûçîâ ïàíåëè îñóùåñòâëÿåòñÿ èç ãëàâíîé ñòðàíèöû "RootPgSo" ïðè ñìåíå îáúåêòà ñèãíàëèçàöèè èëè ðåæèìà îòîáðàæåíèÿ.
Ýëåìåíò "Ðåöåïò: ðåäàêòèðîâàíèå", ïðåäñòàâëåííûé íà ðèñ. 28, ÿâëÿåòñÿ îäíèì èç ãðóïïû êàäðîâ ðàáîòû ñ ðåöåïòàìè, êîòîðûé ñëóæèò äëÿ ïîëüçîâàòåëüñêîãî ðåäàêòèðîâàíèÿ ïðîãðàìì-ðåöåïòîâ.
Ïðîãðàììà-ðåöåïò ïðåäñòàâëÿåò ñîáîé ïîñëåäîâàòåëüíûé âûçîâ áëîêîâ ôóíêöèé — êîìàíäû (ìàêðîñû), ïðèíèìàþùèå äî ïÿòè àðãóìåíòîâ è âîçâðàùàþùèå ñòðîêó ðåçóëüòàòà, ñ êîäîì çàâåðøåíèÿ â íà÷àëå: "Ðàáîòà" (0), "Çàâåðøåí" (> 0) è "Îøèáêà" (< 0). Âûçîâ êîìàíäû øàãà ïðîèçâîäèòñÿ öèêëè÷åñêè ïîêà âîçâðàùàåòñÿ ðåçóëüòàò "Ðàáîòà" (0). Ïåðåõîä ê ñëåäóþùåìó øàãó îñóùåñòâëÿåòñÿ â ñëó÷àå ðåçóëüòàòà "Çàâåðøåí" (> 0) è êîìàíäû "Ïðîïóñê" (2).  ñëó÷àå îøèáêè, ðåçóëüòàò "Îøèáêà" (< 0), âûïîëíåíèå ðåöåïòà ïðåðûâàåòñÿ. Âû÷èñëåíèå ðåöåïòà îñóùåñòâëÿåòñÿ ÷åðåç ïàðàìåòð êîíòðîëëåðà ðåöåïòà, êîòîðûé ïîääåðæèâàåò äâà ñïîñîáà èñïîëíåíèÿ ðåöåïòà:
Êîìàíäû-ìàêðîñû, êîòîðûå ïîëüçîâàòåëü ìîæåò âûáèðàòü ïðè ôîðìèðîâàíèè ðåöåïòà-ïðîãðàììû, ôîðìèðóþòñÿ ïðîãðàììèñòîì SCADA-ñèñòåìû ïîä ðåàëèçóåìóþ ïðèêëàäíóþ îáëàñòü ïóò¸ì ðåäàêòèðîâàíèÿ òàáëèöû êîìàíä â OpenSCADA èëè ïåðå÷íÿ ïàðàìåòðîâ âûáðàííîãî ëîãè÷åñêîãî êîíòðîëëåðà. Òàáëèöà êîìàíä ïîìåùàåòñÿ â îäíó èç ÁÄ äîñòóïíûõ â êîíêðåòíîé êîíôèãóðàöèè OpenSCADA.  êà÷åñòâå ïðèìåðà, ýòà òàáëèöà ïîìåùåíà â ÁÄ äàííîé áèáëèîòåêè ïîä èìåíåì "PrescrComs". Òàáëèöà êîìàíä èìååò ñòðóêòóðó PrescrComs = (name, proc, arg1, arg2, arg3, arg4, arg5), Ãäå:
JavaLikeCalc.JavaScript if(f_start) tmp1 = arg1; var curTm = tmp1.toReal(); if(curTm <= 0) { rez = "1:Âðåìÿ èñòåêëî äëÿ "+arg1+"ñ"; return; } curTm -= 1/f_frq; tmp1 = max(0,curTm); rez = "0:Îæèäàíèå ñåé÷àñ "+curTm+"ñ";
Äëÿ ñïåöèàëüíûõ öåëåé çàðåçåðâèðîâàíî íåñêîëüêî êîìàíä ñ èìåíàìè:
Êîìàíäû-ïàðàìåòðû ëîãè÷åñêîãî êîíòðîëëåðà ôîðìèðóþòñÿ â âèäå øàáëîíà ïàðàìåòðîâ ïîäñèñòåìû "Ñáîð äàííûõ", êîòîðûå çàòåì èñïîëüçóþòñÿ â ëîãè÷åñêîì êîíòðîëëåðå ðåöåïòà, ñ ðÿäîì îáÿçàòåëüíûõ, ñëóæåáíûõ è âíóòðåííèõ àòðèáóòîâ:
Îñîáåííîñòüþ èñïîëüçîâàíèÿ êîìàíä-ïàðàìåòðîâ ÿâëÿåòñÿ íåçàâèñèìîå èõ èñïîëíåíèå è âîçìîæíîñòü îñòàâëÿòü ðÿä êîìàíä èñïîëíÿþùèìèñÿ â ôîíå, íàïðèìåð, ðåãóëÿòîðû.
 ïðîöåññå ôîðìèðîâàíèÿ ðåöåïòà-ïðîãðàììû ïîëüçîâàòåëåì, ïîñðåäñòâîì äàííîãî êàäðà, îñóùåñòâëÿåòñÿ ðàáîòà ñ òàáëèöåé ïðîãðàìì.  êà÷åñòâå ïðèìåðà ýòà òàáëèöà ïîìåùåíà â ÁÄ äàííîé áèáëèîòåêè ïîä èìåíåì "PrescrProgs". Òàáëèöà ïðîãðàìì èìååò ñòðóêòóðó: PrescrProgs = (name, prgTxt), Ãäå:
Êàäð "Ðåöåïò: ðåäàêòèðîâàíèå" ñîäåðæèò ñëåâà íà ïðàâî:
Äàííûé êàäð äîëæåí áûòü ïîìåùåí â ëîãè÷åñêèé êîíòåéíåð ìíåìîñõåì èëè ïàíåëåé äåðåâà ïðîåêòà.
Äëÿ êîððåêòíîé ðàáîòû êàäðà íåîáõîäèìî ñêîïèðîâàòü ñóùåñòâóþùóþ òàáëèöó "PrescrComs" (åñëè ðåæèì êîìàíä íå â ëîãè÷åñêîì êîíòðîëëåðå) è "PrescrProgs" èç ÁÄ â äàííîé áèáëèîòåêè â íóæíóþ ÁÄ èëè ñîçäàòü òàì íîâûå ïóñòûå òàáëèöû, SQL êîìàíäàìè â íóæíîé ÁÄ?, íàïðèìåð, äëÿ SQLite:
Ïóñòóþ èëè ñêîïèðîâàííóþ òàáëèöó êîìàíä íåîáõîäèìî îòðåäàêòèðîâàòü è íàïîëíèòü íóæíûìè ïîëüçîâàòåëþ êîìàíäàìè, íà ñòðàíèöå "Òàáëèöà" ÁÄ?, åñëè èñïîëüçîâàí ïåðâûé ðåæèì êîìàíä, èëè óêàçàòü ëîãè÷åñêèé êîíòðîëëåð, ñ ïåðå÷íåì êîìàíä, â îáúåêòå êîíòðîëëåðà ðåöåïòà äëÿ âòîðîãî ðåæèìà.
Ïîñëå ôîðìèðîâàíèÿ íåîáõîäèìî, â ñâÿçÿõ äàííîãî êàäðà, óñòàíîâèòü çíà÷åíèÿ ÁÄ ñ òàáëèöàìè è íàçâàíèÿ ñàìèõ òàáëèö, óêàçàòü èìÿ ýêñïîðòíîãî/èìïîðòíîãî ôàéëà è óñòàíîâèòü ñâÿçü íà îáúåêò êîíòðîëëåðà ðåöåïòà.
 ðåæèìå èñïîëíåíèÿ ïîëüçîâàòåëü ìîæåò äîáàâëÿòü íîâûå ðåöåïòû-ïðîãðàììû, óäàëÿòü, êîïèðîâàòü è ýêñïîðòèðîâàòü ñóùåñòâóþùèå, à òàêæå èìïîðòèðîâàòü ðåöåïòû äðóãèõ ñòàíöèé OpenSCADA.  âûáðàííîì ðåöåïòå-ïðîãðàììå ïîëüçîâàòåëü ìîæåò âûïîëíèòü: äîáàâëåíèå èëè âñòàâêó íîâîãî øàãà, óäàëåíèå èëè èçìåíåíèå ïîëîæåíèÿ âûáðàííîãî øàãà. Äëÿ âûáðàííîãî øàãà ðåöåïòà-ïðîãðàììû ïîëüçîâàòåëü ìîæåò óñòàíîâèòü êîìàíäó è ââåñòè çíà÷åíèÿ äîñòóïíûõ ïàðàìåòðîâ-àðãóìåíòîâ âûáðàííîé êîìàíäû, ïîñëå ÷åãî ñîõðàíèòü èçìåíåíèÿ øàãà.
Íà ðèñ. 29 ïðåäñòàâëåí ïðèìåð êàäðà â ðåæèìå èñïîëíåíèÿ.
ID | Ïàðàìåòð | Òèï | Êîíôèãóðàöèÿ | Êîíôèãóðàöèîííûé øàáëîí | Îïèñàíèå |
Îáùàÿ êîíôèãóðàöèÿ | |||||
dbDB | ÁÄ:Áàçà äàííûõ | Ñòðîêà | Ïîñòîÿííàÿ | DB | Àäðåñ ÁÄ ñ òàáëèöàìè â âèäå {ÒèïÁÄ}.{ÈìÿÁÄ}. |
dbProgs | ÁÄ:Ïðîãðàììû | Ñòðîêà | Ïîñòîÿííàÿ | DB | Èìÿ òàáëèöû ðåöåïòîâ-ïðîãðàìì. |
fileExpImp | Ôàéë ýêñïîðòà/èìïîðòà | Ñòðîêà | Ïîñòîÿííàÿ | File | Ôàéë ýêñïîðòà/èìïîðòà ðåöåïòîâ-ïðîãðàìì ïîëüçîâàòåëÿ. |
Ñâÿçûâàíèå ñ êîíòðîëëåðîì ðåöåïòà. Ïðèìåð ðåàëèçàöèè êîíòðîëëåðà ðåöåïòà ïðèñóòñòâóåò â ÁÄ Äèíàìè÷åñêîé ìîäåëè "ÀÃËÊÑ" | |||||
prExtComLs | Ñïèñîê äîñòóïíûõ êîìàíä ðåöåïòà | Îáúåêò | Âõîäíàÿ ñâÿçü | Controller|comLs |
Ýëåìåíò "Ðåöåïò: èñïîëíåíèå", ïðåäñòàâëåííûé íà ðèñ. 30, ÿâëÿåòñÿ îäíèì èç ãðóïïû êàäðîâ ðàáîòû ñ ðåöåïòàìè, êîòîðûé ñëóæèò äëÿ íåïîñðåäñòâåííîãî èñïîëíåíèÿ èëè íàáëþäåíèÿ çà èñïîëíåíèåì âî âíåøíåì âû÷èñëèòåëå ïðîãðàìì-ðåöåïòîâ, ðàíåå ñôîðìèðîâàííûõ â êàäðå Ðåöåïò: ðåäàêòèðîâàíèå.
Êàäð "Ðåöåïò: èñïîëíåíèå" ñîäåðæèò ñëåâà íà ïðàâî:
Èñïîëíÿåìûé ðåöåïò-ïðîãðàììà ìîæåò áûòü ïðèîñòàíîâëåí ïóò¸ì íàæàòèÿ êíîïêè "Ïàóçà" â ìåñòå êíîïêè "Çàïóñê" èëè ïðåðâàí ïóò¸ì íàæàòèÿ êíîïêè "Îñòàíîâ". Òàêæå âîçìîæíî ïðîïóñòèòü øàã íàæàâ êíîïêó "Ïðîïóñòèòü", â ìîìåíò èñïîëíåíèÿ øàãà.
Ïî ëþáîìó çàâåðøåíèþ ðåöåïòà-ïðîãðàììû ïðîèñõîäèò ãåíåðàöèÿ ñîîáùåíèÿ ñ ïàðàìåòðàìè ñåàíñà, à òàêæå àðõèâèðîâàíèå äîêóìåíòà ñåàíñà. Ñîîáùåíèå ñ ïàðàìåòðàìè ñåàíñà ìîæåò áûòü èñïîëüçîâàíî ïðîñòî ïðè ïðîñìîòðå àðõèâà ñîîáùåíèé, èëè æå äëÿ ôîðìèðîâàíèÿ ñïèñêà ñåàíñîâ, íàïðèìåð, â ãðóïïå ãðàôèêîâ äëÿ ïåðåõîäà ê èñòîðèè íà âðåìÿ ñåàíñà. Äëÿ ïðîñìîòðà èñòîðèè îò÷¸òîâ èñïîëíåíèÿ ïðîãðàìì ìîæíî íàæàòü íà ïîëå äîêóìåíòà è ïîëèñòàòü íà ïîÿâèâøåéñÿ ñïðàâà ïàíåëè íàâèãàöèè ïî àðõèâíîìó äîêóìåíòó. Ïî óìîë÷àíèþ àðõèâ äîêóìåíòîâ íàñòðîåí íà ãëóáèíó 10 äîêóìåíòîâ.
 äîïîëíåíèè ê ïîëíîôîðìàòíîìó êàäðó èñïîëíåíèÿ ðåöåïòîâ ïðåäóñìîòðåí óïðîù¸ííûé, êîòîðûé ïîçâîëÿåò êîìïàêòíî óïðàâëÿòü è îòñëåæèâàòü èñïîëíåíèå ðåöåïòîâ â ñîñòàâå äðóãèõ êàäðîâ òåõíîëîãè÷åñêîãî ïðîöåññà (ðèñ.30).
Äàííûå êàäðû äîëæíû áûòü ïîìåùåíû â ëîãè÷åñêèé êîíòåéíåð ìíåìîñõåì èëè ïàíåëåé äåðåâà ïðîåêòà, äëÿ ïîëíîôîðìàòíîãî, è íà ìíåìîñõåìó, äëÿ óïðîù¸ííîãî.
 ñâÿçÿõ êàäðîâ íåîáõîäèìî óñòàíîâèòü çíà÷åíèÿ ÁÄ ñ òàáëèöàìè è íàçâàíèÿ ñàìîé òàáëèöû ïðîãðàìì, à òàê-æå ñâÿçàòü ñ êîíòðîëëåðîì ðåöåïòà, êàê â Ðåöåïò: ðåäàêòèðîâàíèå.
Äëÿ âîçìîæíîñòè àðõèâèðîâàíèÿ çàâåðø¸ííûõ ñåàíñîâ, ïîêà îïåðàòîð ïåðåêëþ÷àåòñÿ ïî äðóãèì êàäðàì, íåîáõîäèìî äëÿ ïîëíîôîðìàòíîãî êàäðà â äåðåâå ïðîåêòà óñòàíîâèòü ïàðàìåòð "Ñòðàíèöà: îáðàáàòûâàòü çàêðûòîé".
 ðåæèìå èñïîëíåíèÿ ïîëüçîâàòåëü ìîæåò âûáðàòü íóæíûé ðåöåïò-ïðîãðàììó è çàïóñòèòü íà èñïîëíåíèå, ïîñëå ÷åãî îòñëåæèâàòü ïðîöåññ èñïîëíåíèÿ èëè ïåðåéòè ê äðóãèì êàäðàì. Èñïîëíÿåìóþ ïðîãðàììó ïîëüçîâàòåëü ìîæåò ïðèîñòàíîâèòü ïóò¸ì íàæàòèÿ êíîïêè "Ïàóçà" â ìåñòå êíîïêè "Çàïóñê" èëè ïðåðâàòü ïóò¸ì íàæàòèÿ êíîïêè "Îñòàíîâ". Êðîìå ýòîãî ïîëüçîâàòåëü ìîæåò ïðîïóñòèò èñïîëíåíèå òåêóùåãî øàãà, íàæàâ êíîïêó "Ïðîïóñòèòü". Òàêæå ïîëüçîâàòåëü ìîæåò ïåðåñìîòðåòü èëè ðàñïå÷àòàòü îò÷¸òû ðàíåå èñïîëíÿåìûõ ðåöåïòîâ, ïîëíîôîðìàòíîãî êàäðà, äëÿ ÷åãî íóæíî íàæàòü ëåâîé êëàâèøåé ìûøè íà ïîëå äîêóìåíòà è ïîëèñòàòü íà ïîÿâèâøåéñÿ ñïðàâà ïàíåëè íàâèãàöèè ïî àðõèâó èñïîëíÿåìûõ ðåöåïòîâ.
Íà ðèñ. 31 ïðåäñòàâëåí ïðèìåð ïîëíîôîðìàòíîãî è óïðîù¸ííîãî êàäðîâ â ðåæèìå èñïîëíåíèÿ.
ID | Ïàðàìåòð | Òèï | Êîíôèãóðàöèÿ | Êîíôèãóðàöèîííûé øàáëîí | Îïèñàíèå |
Îáùàÿ êîíôèãóðàöèÿ | |||||
dbDB | ÁÄ:Áàçà äàííûõ | Ñòðîêà | Ïîñòîÿííàÿ | DB | Àäðåñ ÁÄ ñ òàáëèöàìè â âèäå {ÒèïÁÄ}.{ÈìÿÁÄ}. |
dbProgs | ÁÄ:Ïðîãðàììû | Ñòðîêà | Ïîñòîÿííàÿ | DB | Èìÿ òàáëèöû ðåöåïòîâ-ïðîãðàìì. |
Ñâÿçûâàíèå ñ êîíòðîëëåðîì ðåöåïòà. Ïðèìåð ðåàëèçàöèè êîíòðîëëåðà ðåöåïòà ïðèñóòñòâóåò â ÁÄ Äèíàìè÷åñêîé ìîäåëè "ÀÃËÊÑ" | |||||
prExtCurCom | Êîíòðîëëåð:òåêóùàÿ êîìàíäà | Öåëûé | Âõîäíàÿ ñâÿçü | Controller|curCom | |
prExtMode | Êîíòðîëëåð:ðåæèì | Öåëûé | Ïîëíàÿ ñâÿçü | Controller|mode | |
prExtProg | Êîíòðîëëåð:ïðîãðàììà | Ñòðîêà | Ïîëíàÿ ñâÿçü | Controller|prog | |
prExtStartTm | Êîíòðîëëåð:çàïóñê | Öåëûé | Âõîäíàÿ ñâÿçü | Controller|startTm | |
prExtWork | Êîíòðîëëåð:ðàáî÷àÿ | Îáúåêò | Âõîäíàÿ ñâÿçü | Controller|work |
Ýëåìåíò "Ïîäòâåðæäåíèå", ïðåäñòàâëåííûé íà ðèñ. 32, ðåàëèçóåò ïðîñòåéøèé äèàëîã ïîäòâåðæäåíèÿ îïåðàöèé. Ýëåìåíò ñîäåðæèò ñîîáùåíèå ñ âîïðîñîì è äâå êíîïêè "Ïðèíÿòü" è "Îòìåíà". Äàííûé äèàëîã, íàïðèìåð, èñïîëüçîâàí â êàäðå Ðåöåïò: ðåäàêòèðîâàíèå äëÿ ïîäòâåðæäåíèÿ îïåðàöèè óäàëåíèÿ.
Äàííûé âèäæåò ìîæåò áûòü èñïîëüçîâàí ðàçðàáîò÷èêîì ïðè ñîçäàíèè êàäðîâ äèíàìè÷åñêîãî âçàèìîäåéñòâèÿ â îïåðàöèÿõ, òðåáóþùèõ ïîäòâåðæäåíèÿ ó ïîëüçîâàòåëÿ. Äëÿ èñïîëüçîâàíèÿ íóæíî äîáàâèòü äàííûé ýëåìåíò â ëîãè÷åñêèé êîíòåéíåð ïàíåëåé äåðåâà ïðîåêòà. Äëÿ âçàèìîäåéñòâèÿ äàííûé âèäæåò îòêðûâàåòñÿ êàäðîì-èíèöèàòîðîì â ðåçóëüòàòå ÷åãî ïðîèñõîäèò äèíàìè÷åñêîå ñâÿçûâàíèå äèàëîãà ñ àòðèáóòàìè "event" è "mess" êàäðà-èíèöèàòîðà. Èç àòðèáóòà "mess" áåð¸òñÿ ñîîáùåíèå âîïðîñà, à â "event" ïåðåäà¸òñÿ ñèãíàë "dlg_Apply", ïðè ïîäòâåðæäåíèè.
Âûçîâ äèàëîãà îñóùåñòâëÿåòñÿ èç êàäðà èíèöèàòîðà, à çàêðûòèå ïðîèñõîäèò ïî íàæàòèþ ëþáîé êíîïêè íà äèàëîãå.  ñëó÷àå íàæàòèÿ êíîïêè "Ïðèìåíèòü" êàäðó-èíèöèàòîðó áóäåò îòïðàâëåí ñèãíàë "dlg_Apply", ïî êîòîðîìó îí ìîæåò âûïîëíèòü íóæíûå äåéñòâèÿ.
ID | Ïàðàìåòð | Òèï | Êîíôèãóðàöèÿ | Êîíôèãóðàöèîííûé øàáëîí | Îïèñàíèå |
elEvent | Ýëåìåíò:ñîáûòèå | Ñòðîêà | Ïîëíàÿ ñâÿçü | <page>|event | Èñïîëüçóåòñÿ äëÿ îòïðàâêè ñîáûòèÿ "dlg_Apply" â ñëó÷àå ïîäòâåðæäåíèÿ. |
elMess | Ýëåìåíò:ñîîáùåíèå | Ñòðîêà | Âõîäíàÿ ñâÿçü | <page>|mess | Èñòî÷íèê ñîîáùåíèÿ âîïðîñà â äèàëîãå. |
Ýëåìåíò "Âûáîð ïàðàìåòðà ãðàôèêà", ïðåäñòàâëåííûé íà ðèñ. 33, ðåàëèçóåò äèàëîã âûáîðà èñòî÷íèêà äàííûõ, ÷àñòî àðõèâíûõ, äëÿ ôîðìèðîâàíèÿ ãðàôèêà â êàäðå "Ãðóïïà ãðàôèêîâ". Âûáîð ïðåäîñòàâëÿåòñÿ èç ïåðå÷íÿ óêàçàííîãî â àòðèáóòå "Ïàðàìåòðû äîñòóïíûå äëÿ âûáîðà (allowSelLst)", êàäðà-èíèöèàòîðà. Äëÿ âûáðàííîãî èñòî÷íèêà ìîæíî óêàçàòü èìÿ, øêàëó, åäèíèöó èçìåðåíèÿ è öâåò ãðàôèêà.
 àòðèáóòå "Ïàðàìåòðû äîñòóïíûå äëÿ âûáîðà (allowSelLst)" äîëæíû ïîìåùàòüñÿ èñòî÷íèêè äàííûõ â âèäå:
Ïðèìåð ñîäåðæèìîãî àòðèáóòà "Ïàðàìåòðû äîñòóïíûå äëÿ âûáîðà (allowSelLst)":
Äàííûé êàäð äîëæåí áûòü ïîìåùåí â ëîãè÷åñêèé êîíòåéíåð ïàíåëåé äåðåâà ïðîåêòà.  "Ãðóïïàõ ãðàôèêîâ", êîòîðûå äîëæíû ïðåäîñòàâëÿòü âîçìîæíîñòü ïîëüçîâàòåëüñêîãî âûáîðà èñòî÷íèêà, äîëæåí áûòü îïðåäåë¸í àòðèáóò "Ïàðàìåòðû äîñòóïíûå äëÿ âûáîðà (allowSelLst)", ïåðå÷íåì èñòî÷íèêîâ ñîãëàñíî ïðàâèëàì óêàçàííûì âûøå. Êàê ðåçóëüòàò â êîíòåêñòíîì ìåíþ ýëåìåíòà ãðàôèêà ïîÿâèòñÿ ïóíêò "Âûáîð".
Âûçîâ äèàëîãà îñóùåñòâëÿåòñÿ ïîñðåäñòâîì ïóíêòà "Âûáîð", êîíòåêñòíîãî ìåíþ ýëåìåíòà ãðàôèêà. Äèàëîãîì ïîëüçîâàòåëþ ïðåäîñòàâëÿåòñÿ âûáîð èñòî÷íèêà äàííûõ èç ñïèñêà, à òàê-æå óêàçàíèå îñíîâíûõ åãî ïàðàìåòðîâ: èìÿ, øêàëà, åäèíèöà èçìåðåíèÿ è öâåò ãðàôèêà. Ïðè ïîäòâåðæäåíèè âûáðàííûå ïàðàìåòðû ïðèìåíÿþòñÿ ê ýëåìåíòó ãðàôèêà, çàìåíÿÿ ññûëêè. Âûáîð è ïîäòâåðæäåíèå ïóñòîãî ýëåìåíòà ïðèâåä¸ò ê î÷èñòêå âñåõ ññûëîê è ýëåìåíòà ãðàôèêà.  òåêñòîâîì ïîëå ïîä ñïèñêîì ìîæíî áûñòðî íàéòè íóæíûé ïàðàìåòð.