OpenSCADAWiki: Doc/ Logic Lev Param ...

Home | Index | Changes | Comments | Users | Registration | Login  Password:  
 
This is an old revision of Doc/LogicLevParam from 2008-03-31 14:22:17..

Ëîãè÷åñêèé óðîâåíü ïàðàìåòðîâ ñèñòåìû OpenSCADA.


Àâòîð: /RomanSavochenko


Contents

1 Ââåäåíèå

Îòêðûòàÿ SCADA ñèñòåìà OpenSCADA ïðèíàäëåæèò ê êëàññó SCADA(Supervisory Control and Data Aquisition) ñèñòåì. Ñèñòåìû äàííîãî êëàññà èñïîëüçóþòñÿ êàê ýëåìåíò ñèñòåì àâòîìàòèçàöèè òåõíîëîãè÷åñêèõ ïðîöåññîâ(ÀÑÓ-ÒÏ).


Ñèñòåìà OpenSCADA ñòðîèòñÿ êàê ìîäóëüíàÿ è âûñîêîìàñøòàáèðóåìàÿ ñèñòåìà. Ñëåäîâàòåëüíî âíóòðåííÿÿ ñòðóêòóðà ñèñòåìû äîëæíà óäîâëåòâîðÿòü âûñîêèì òðåáîâàíèÿì ãèáêîñòè.


Äëÿ ïîëó÷åíèÿ äàííûõ èçâíå â ñèñòåìå OpenSCADA ïðåäóñìîòðåíû, òàê íàçûâàåìûå, "Èñòî÷íèêè äàííûõ". Âñå èñòî÷íèêè äàííûõ ñîäåðæàòñÿ â îäíîèì¸ííîé ïîäñèñòåìå è ãðóïïèðîâàíû ïî òèïàì èñòî÷íèêîâ äàííûõ, îïðåäåëÿþùèõ ìîäóëü ïîäñèñòåìû èñòî÷íèêîâ äàííûõ (DAQ). Ìîäóëü ÿâëÿåòñÿ îòäåëÿåìûì êîìïîíåíòîì ñèñòåìû OpenSCADA, êîòîðûé, äëÿ ìîäóëåé ïîäñèñòåìû "DAQ", ñîäåðæèò êîíòðîëåðû ñ ïàðàìåòðàìè ïðåäîïðåäåë¸ííîé ñòðóêòóðû. Ïîä ñòðóêòóðîé ïàðàìåòðà ïîäðàçóìåâàåòñÿ íàïîëíåííîñòü åãî àòðèáóòàìè.


Ïðèðîäà èñòî÷íèêà äàííûõ ìîæåò êîëåáàòüñÿ îò "ñûðîãî" äî ïîëíîöåííîãî. Ïîä "ñûðûì" ïîäðàçóìåâàåòñÿ èñòî÷íèê, êîòîðûé ïðåäîñòàâëÿåò òîëüêî ýëåìåíòàðíûå ñèãíàëû (öåëîå, âåùåñòâåííîå, ëîãè÷åñêîå). Ïîä ïîëíîöåííûì, ïîäðàçóìåâàåòñÿ èñòî÷íèê, êîòîðûé, â ïàðàìåòðå, ñîäåðæèò àòðèáóòû äîïîëíèòåëüíîãî çíà÷åíèÿ, ïîêðûâàþùèå ïðàêòè÷åñêè âñå äèàãíîñòè÷åñêèå çàäà÷è, ò.å. ïàðàìåòð ÿâëÿåòñÿ çàêîí÷åííûì îáúåêòîì, íå òðåáóþùèì äîïîëíèòåëüíîé èíôîðìàöèè.


Ó÷èòûâàÿ òàêîé ðàçáðîñ, ìîæåò âîçíèêíóòü ñèòóàöèÿ, êîãäà èíôîðìàöèè â îáúåêòå ïàðàìåòðà íåäîñòàòî÷íî äëÿ îïèñàíèÿ îáúåêòà â öåëîì è íóæåí ïðîèçâîäíûé îáúåêò íà áîëåå âûñîêîì óðîâíå àáñòðàêöèè. Ðåøåíèåì òàêîé ñèòóàöèè ìîæåò áûòü ôîðìèðîâàíèå äîïîëíÿþùèõ ïàðàìåòðîâ, ÷òî ÿâëÿåòñÿ íåíàãëÿäíûì è âíîñèò ïóòàíèöó. Áîëåå ïðàâèëüíûì ðåøåíèåì áóäåò ñîçäàíèå ïðîñëîéêè, òàê íàçûâàåìîãî "Ëîãè÷åñêîãî óðîâíÿ", âûïîëíÿþùåé ôóíêöèè ãèáêîãî ôîðìèðîâàíèÿ ïàðàìåòðîâ/îáúåêòîâ íåîáõîäèìîé ñòðóêòóðû, âêëþ÷àÿ ïîñò-îáðàáîòêó.

2 Íàçíà÷åíèå

Ôóíêöèîíàëüíî, ðàçðàáîòêà ïðåäíàçíà÷åíà äëÿ ïðåäîñòàâëåíèÿ â ñèñòåìå OpenSCADA ìåõàíèçìà ñâîáîäíîãî ôîðìèðîâàíèÿ îáúåêòîâ ïàðàìåòðîâ íóæíîé ñòðóêòóðû.
Ýêñïëóàòàöèîííûì íàçíà÷åíèåì ðàçðàáîòêè ÿâëÿåòñÿ:

3 Òðåáîâàíèÿ

Àðõèòåêòóðíî, ëîãè÷åñêèé óðîâåíü äîëæåí óäîâëåòâîðÿòü ñëåäóþùèì òðåáîâàíèÿì:


Èñõîäÿ èç àðõèòåêòóðíûõ ñîîáðàæåíèé ìîæíî ñôîðìèðîâàòü òðåáîâàíèÿ ê îòäåëüíûì êîìïîíåíòàì.


Òðåáîâàíèÿ ê ïîäñèñòåìå "Ïàðàìåòðû":


Òðåáîâàíèÿ ê îáúåêòàì "Øàáëîíû ïàðàìåòðîâ":


Òðåáîâàíèÿ ê îáúåêòàì "Ïàðàìåòðîâ":

4 Ïðîåêòèðîâàíèå

Èñõîäÿ èç âûøåèçëîæåííûõ òðåáîâàíèé ðàçðàáîòàåì Ëîãè÷åñêèé óðîâåíü ïàðàìåòðîâ. Îáùàÿ ñòðóêòóðà Ëîãè÷åñêîãî óðîâíÿ, â êîíòåêñòå âçàèìîäåéñòâèÿ ñ ôèçè÷åñêèì, ïðåäñòàâëåíà íà ðèñ. 1.


Îáùàÿ ñòðóêòóðà ëîãè÷åñêîãî óðîâíÿ ïàðàìåòðîâ (69 Kb)
Ðèñ. 1. Îáùàÿ ñòðóêòóðà ëîãè÷åñêîãî óðîâíÿ

Ðàçðàáîòêà ïîäñèñòåìû "Ïàðàìåòðû" íè÷åì ñóùåñòâåííî íå îòëè÷àåòñÿ îò äðóãèõ ïîäñèñòåì ñèñòåìû OpenSCADA, ïîýòîìó ðàññìàòðèâàòü îñîáåííîñòè å¸ ôîðìèðîâàíèÿ íå áóäåì. Øàáëîíû ïàðàìåòðîâ è ïàðàìåòðû ÿâëÿþòñÿ èíòåðåñíûì âîïðîñîì, ïîýòîìó ðàññìîòðèì îñîáåííîñòè èõ ôîðìèðîâàíèÿ.


Òðåáîâàíèÿìè ê øàáëîíó ïàðàìåòðîâ, îçâó÷åíà íåîáõîäèìîñòü ñîäåðæàíèÿ ñòðóêòóðû àòðèáóòîâ, êîòîðûå áóäóò ôèãóðèðîâàòü êàê ñî ñòîðîíû êîíôèãóðàöèè ïàðàìåòðà, òàê è ñî ñòîðîíû ðåçóëüòèðóþùèõ àòðèáóòîâ. Êðîìå òîãî, íåîáõîäèìî îáåñïå÷èòü âîçìîæíîñòü âû÷èñëåíèÿ àòðèáóòîâ. Õîðîøèì ðåøåíèåì áóäåò èñïîëüçîâàíèÿ äëÿ ýòèõ öåëåé îáúåêòîâ ôóíêöèé ñðåäû ïðîãðàììèðîâàíèÿ?. Òàêîé ïîäõîä èçáàâèò îò íåîáõîäèìîñòè ñîçäàíèÿ ìåõàíèçìà äîáàâëåíèÿ àòðèáóòîâ, ïîñêîëüêó äîáàâëÿòüñÿ è ôîðìèðîâàòüñÿ îíè áóäóò â âèäå ïàðàìåòðîâ ôóíêöèè. Îáùóþ ñòðóêòóðó ôîðìèðîâàíèÿ ïàðàìåòðà ïî øàáëîíó ïðåäñòàâëåíî íà ðèñ. 2.


Ñòðóêòóðà ïàðàìåòðà ëîãè÷åñêîãî óðîâíÿ (37 Kb)
Ðèñ. 2. Ôîðìèðîâàíèå ïàðàìåòðà ëîãè÷åñêîãî óðîâíÿ ïî øàáëîíó

Àðõèòåêòóðà ëîãè÷åñêîãî óðîâíÿ ïîëó÷àåòñÿ ïðåäåëüíî ïðîñòàÿ.  âèäå äèàãðàììû êëàññîâ å¸ ìîæíî èçîáðàçèòü ñëåäóþùèì îáðàçîì (ðèñ 3). Îïèñàíèå êëàññîâ ïðèâåäåíî â òàáëèöå 1.


Ñòàòè÷åñêàÿ äèàãðàììà êëàññîâ ëîãè÷åñêîãî óðîâíÿ ïàðàìàòðîâ (30 Kb)
Ðèñ. 3. Äèàãðàììà êëàññîâ ëîãè÷åñêîãî óðîâíÿ ïàðàìåòðîâ

Òàáëèöà 1. Êëàññû ëîãè÷åñêîãî óðîâíÿ ïàðàìåòðîâ

ÊëàññÎòâåòñòâåííîñòüÑâÿçè
TParamSÊëàññ ïîäñèñòåìû "Ïàðàìåòðû". Ñîäåðæèò ìåõàíèçì âû÷èñëåíèÿ ïàðàìåòðîâ íà øàáëîíàõÑîäåðæèò ïàðàìåòðû è èõ øàáëîíû.
TParamÊëàññ ïàðàìåòðà. Ñîäåðæèò ñòðóêòóðó ñâÿçåé, êàäð çíà÷åíèé ôóíêöèè è ìîæåò âûïîëíÿòü âû÷èñëåíèÿ ñ ïîìîùüþ ôóíêöèè øàáëîíàÑîäåðæèòñÿ â ïîäñèñòåìå "Ïàðàìåòðû". Âêëþ÷àåò êàäð çíà÷åíèé îáúåêòà ôóíêöèè.
TPrmTmplÊëàññ øàáëîíà ïàðàìåòðà. Ñîäåðæèò ñòðóêòóðó àòðèáóòîâ(ïàðàìåòðîâ ôóíêöèè)Ñîäåðæèòñÿ â ïîäñèñòåìå "Ïàðàìåòðû". Âêëþ÷àåò ññûëêó íà îáúåêò ôóíêöèè.

Ëîãèêó ðàáîòû ëîãè÷åñêîãî óðîâíÿ ïàðàìåòðîâ ìîæíî çàïèñàòü ñëåäóþùèì îáðàçîì:


 øàáëîíå ïàðàìåòðà, ó àòðèáóòà, ïðåäóñìîòðåíî äâà ñâîéñòâà: "Àòðèáóò", "Äîñòóï" è "Çíà÷åíèå". Ñâîéñòâî "Àòðèáóò" îïèñûâàåò îòðàæåíèÿ íà àòðèáóò ïàðàìåòðà. Ïðåäóñìîòðåíû ñëåäóþùèå âàðèàíòû ýòîãî ñâîéñòâà:


Ñâîéñòâî "Äîñòóï" îïðåäåëÿåò ñâÿçè ýòîãî ïàðàìåòðà ôóíêöèè ñ ôèçè÷åñêèì óðîâíåì. Ïðåäóñìîòðåíû ñëåäóþùèå âàðèàíòû ýòîãî ñâîéñòâà:


Ïîëå "Çíà÷åíèå" îïèñûâàåò çíà÷åíèå äëÿ êîíñòàíò è ïðåäïî÷èòàåìûé àòðèáóò ïàðàìåòðà äëÿ ñâÿçåé. Îïèñàíèå ïðåäïî÷èòàåìîãî àòðèáóòà ïàðàìåòðà, äëÿ ñâÿçåé, èñïîëüçóåòñÿ â öåëÿõ îïèñàíèÿ íåÿâíîãî ðàñïðåäåëåíèÿ àòðèáóòîâ ïàðàìåòðîâ. Ñòðóêòóðà îïèñàíèÿ ñëåäóþùàÿ: <Îïèñàíèå ïàðàìåòðà>|<àòðèáóò>. Ãäå "Îïèñàíèå ïàðàìåòðà" èñïîëüçóåòñÿ äëÿ îáúåäèíåíèÿ ïàðàìåòðîâ è ïîìåùåíèÿ íà ôîðìó êîíôèãóðàöèè, à àòðèáóò äëÿ àâòîìàòè÷åñêîãî ñâÿçûâàíèÿ ïðè íàçíà÷åíèè ïàðàìåòðà.

5 Ðåàëèçàöèÿ

 ïðîöåññå ðåàëèçàöèè áûëè ñîçäàíû âñå êîìïîíåíòû, à òàêæå ñöåíàðèè êîíôèãóðàöèè, èíòåðôåéñà óïðàâëåíèÿ, äëÿ íèõ. Ôîðìû êîíôèãóðàöèè ïîäñèñòåìû "Ïàðàìåòðû" ïðèâåäåíû íà ðèñ. 4. è ðèñ. 5. Ôîðìû êîíôèãóðàöèè øàáëîíîâ ïàðàìåòðîâ ïðèâåäåíû íà ðèñ. 6 è ðèñ. 7. Ôîðìû êîíôèãóðàöèè ïàðàìåòðîâ ëîãè÷åñêîãî óðîâíÿ ïðèâåäåíû íà ðèñ. 8, ðèñ. 9 è ðèñ.10.

6 Çàìå÷àíèÿ


Ïîäñèñòåìà «Ïàðàìåòðû»: ïàðàìåòðû (59 Kb)
Ðèñ. 4. Ïîäñèñòåìà "Ïàðàìåòðû": Ïàðàìåòðû

Ïîäñèñòåìà «Ïàðàìåòðû»: øàáëîíû (54 Kb)
Ðèñ. 5. Ïîäñèñòåìà "Ïàðàìåòðû": Øàáëîíû

Øàáëîí: Îáùàÿ èíôîðìàöèÿ (64 Kb)
Ðèñ. 6. Øàáëîí: Îáùàÿ èíôîðìàöèÿ

Øàáëîí: Îáùàÿ èíôîðìàöèÿ (103 Kb)
Ðèñ. 7. Øàáëîí: Êîíôèãóðàöèÿ

Ïàðàìåòð: Îáùàÿ èíôîðìàöèÿ (62 Kb)
Ðèñ. 8. Ïàðàìåòð: Îáùàÿ èíôîðìàöèÿ

Ïàðàìåòð: Àòðèáóòû (77 Kb)
Ðèñ. 9. Ïàðàìåòð: Àòðèáóòû

Ïàðàìåòð: Êîíôèãóðàöèÿ øàáëîíà (55 Kb)
Ðèñ. 10. Ïàðàìåòð: Êîíôèãóðàöèÿ øàáëîíà

Ññûëêè

Referring pages: Doc
Doc/LogicLev
Doc/QuickStart
Doc/Siemens
HomePageUk/Doc
HomePageUk/Doc/Siemens
Works/ChangeLog/part2006


 
There are no files on this page.[Display files/form]
There is no comment on this page. [Display comments/form]