OpenSCADAWiki: Doc/ Siemens ...

Home | Index | Changes | Comments | Users | Registration | Login  Password:  
 
This is an old revision of Doc/Siemens from 2016-01-14 11:44:57..

Ìîäóëü "Siemens", ïîäñèñòåìû "Ñáîð äàííûõ"

Ìîäóëü: Siemens
Èìÿ: Ñáîð äàííûõ Siemens
Òèï: DAQ
Èñòî÷íèê: daq_Siemens.so
Âåðñèÿ: 2.0.0
Àâòîð: Ðîìàí Ñàâî÷åíêî
Îïèñàíèå: Ïðåäîñòàâëÿåò èñòî÷íèê äàííûõ ÏËÊ Siemens ïîñðåäñòâîì êàðò Hilscher CIF, ñ èñïîëüçîâàíèåì ïðîòîêîëà MPI, è áèáëèîòåêè Libnodave, èëè ñîáñòâåííîé, äëÿ îñòàëüíîãî.
Ëèöåíçèÿ: GPL

Contents

Ââåäåíèå

Ïåðâîî÷åðåäíîé öåëüþ ñîçäàíèÿ ìîäóëÿ ÿâëÿåòñÿ îáåñïå÷åíèå ïîääåðæêè ïðîìûøëåííûõ êîíòðîëëåðîâ ôèðìû Siemens ñåðèè S7 (S7-200,300,400). Èñòîðè÷åñêè ñëîæèëîñü, ÷òî äîñòóï ê êîíòðîëëåðàì óêàçàííîé ôèðìû â ñåòè ProfiBus ïðîèçâîäèëñÿ òîëüêî ïîñðåäñòâîì ñîáñòâåííûõ êîììóíèêàöèîííûõ ïðîöåññîðîâ (CP5412, CP5613 è ò.ä.) è ñîáñòâåííîãî ïðîòîêîëà S7. Óêàçàííûå êîììóíèêàöèîííûå ïðîöåññîðû è API ê ïðîòîêîëó S7 äîñòàòî÷íî äîðîãîñòîÿùèå, êðîìå òîãî äðàéâåðà ê êîììóíèêàöèîííûì ïðîöåññîðàì è S7 API çàêðûòû, à òàêæå äîñòóïíû òîëüêî äëÿ ïëàòôîðìû Intel+Windows (âñòðå÷àëàñü èíôîðìàöèÿ î âîçìîæíîñòè êóïèòü äëÿ Linux).


 êà÷åñòâå àëüòåðíàòèâû êîììóíèêàöèîííûì ïðîöåññîðàì îò ôèðìû Siemens, êîòîðûå ïîçâîëÿþò ïîëíîöåííî ðàáîòàòü ñ êîíòðîëëåðàìè ôèðìû Siemens, ÿâëÿåòñÿ ñïåêòð êîììóíèêàöèîííûõ ïðîäóêòîâ ôèðìû Hilscher (http://hilscher.com) â ëèöå êîììóíèêàöèîííûõ ïðîöåññîðîâ CIF ñåðèè PB(Profibus) è áèáëèîòåêà LibnoDave (http://libnodave.sourceforge.net).


Îñîáåííîñòüþ ïðîäóêòîâ Hilscher ÿâëÿåòñÿ ïîëíîñòüþ îòêðûòàÿ ñïåöèôèêàöèÿ ïðîòîêîëà îáìåíà ñ êîììóíèêàöèîííûì ïðîöåññîðîì, óíèôèöèðîâàííûé äðàéâåð äëÿ âñåõ ïëàò CIF, íàëè÷èå äðàéâåðà äëÿ ìíîãèõ ðàñïðîñòðàí¸ííûõ îïåðàöèîííûõ ñèñòåì(ÎÑ) è îòêðûòîñòü äðàéâåðà äëÿ ÎÑ Linux (GPL).


 îñíîâó äàííîãî ìîäóëÿ ïîëîæåí äðàéâåð âåðñèè 2.621 ôèðìû Hilsher, ëþáåçíî ïðåäîñòàâëåííûé ôèðìîé Hilsher â ëèöå Devid Tsaava äëÿ ÿäåð ñåðèè 2.6 ÎÑ Linux. Âñå íåîáõîäèìûå äëÿ ñáîðêè ôàéëû âêëþ÷åíû â ìîäóëü è íå òðåáóåòñÿ óäîâëåòâîðåíèÿ ñïåöèàëüíûõ çàâèñèìîñòåé. Äðàéâåð âåðñèè 2.621 äëÿ ïëàò CIF ìîæíî çàãðóçèòü çäåñü.


Ñïåêòð ïëàò ôèðìû Hilsher ñåìåéñòâà CIF è óíèôèöèðîâàííûé äðàéâåð ïîääåðæèâàþò øèðî÷àéøèé ñïåêòð îáîðóäîâàíèÿ. Çàëîæèòü ïîääåðæêó âñåõ ýòèõ âîçìîæíîñòåé â äàííîì ìîäóëå, íå èìåÿ âñåãî ýòîãî îáîðóäîâàíèÿ íà ðóêàõ, íå ïðåäñòàâëÿåòñÿ âîçìîæíûì. Ïîýòîìó ïîääåðæêà òîãî èëè èíîãî îáîðóäîâàíèÿ áóäåò äîáàâëÿòüñÿ ïî ìåðå íàäîáíîñòè è íàëè÷èÿ îáîðóäîâàíèÿ. Ïî ñîñòîÿíèþ íà âåðñèþ 2.0.0 ìîäóëåì ïðåäîñòàâëÿåòñÿ ïîääåðæêà èñòî÷íèêîâ äàííûõ íà ñåòè ProfiBus èëè MPI ïîñðåäñòâîì ïðîòîêîëà MPI, íà ñêîðîñòÿõ ñåòè îò 9600Áîä äî 12ÌÁîä.  ÷àñòíîñòè ïîääåðæèâàþòñÿ è âûïîëíåíà ïðîâåðêà íà êîíòðîëëåðàõ ôèðìû Siemens ñåìåéñòâà S7 (S7-200,300,400).


Áèáëèîòåêà LibnoDave ÿâëÿåòñÿ ðåàëèçàöèåé, ïóò¸ì ðåâåðñèíæåíèðèíãà, ïðîòîêîëîâ MPI, S7, ISO-TSAP è äðóãèõ, êîòîðûå èñïîëüçóþòñÿ ïðè âçàèìîäåéñòâèè ñ êîíòðîëëåðàìè ôèðìû Siemens. Áèáëèîòåêîé ïîääåðæèâàþòñÿ ìíîãèå MPI è USB àäàïòåðû, à òàêæå ProfiNet. Êîììóíèêàöèîííûå ïðîöåññîðû ôèðìû Siemens, íà ïëàòôîðìàõ îòëè÷íûõ îò Windows, áèáëèîòåêîé íå ïîääåðæèâàþòñÿ. Íà äàííîì ýòàïå ìîäóëåì îáåñïå÷åíà ïîääåðæêà ïðîòîêîëà ISO-TSAP(ProfiNet) ïîñðåäñòâîì áèáëèîòåêè LibnoDave. Áèáëèîòåêà LibnoDave ïîëíîñòüþ âêëþ÷åíà â äàííûé ìîäóëü è íå òðåáóåò ðàçðåøåíèÿ çàâèñèìîñòåé êàê ïðè ñáîðêå, òàê è ïðè èñïîëíåíèè.


 (2 Kb)  êîäå áèáëèîòåêè LibnoDave ïðèñóòñòâóþò ñëîæíî-óëîâèìûå îøèáêè, êîòîðûå â îñíîâíîì âîñïðîèçâîäÿòñÿ ïîä áîëüøîé íàãðóçêîé è â ìîìåíò ïîäêëþ÷åíèé, ÷òî ïðèâîäèò ê ïîð÷å ïàìÿòè ïðîöåññà è ïàäåíèÿì â íåïðåäñêàçóåìûõ ìåñòàõ.  ñâÿçè ñ ýòèì, ñ âåðñèè 2 ýòîãî ìîäóëÿ, íà÷àò ïðîöåññ ïåðåïèñûâàíèÿ íóæíûõ ôóíêöèé è êîä ñâÿçè ISO-TCP óæå ãîòîâ ê èñïîëüçîâàíèþ.


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

1. Êîììóíèêàöèîííûå êîíòðîëëåðû CIF

Äðàéâåðîì ïëàò ñåìåéñòâà CIF ïîääåðæèâàåòñÿ âîçìîæíîñòü óñòàíîâêè äî 4 CIF ïëàò. Ñ öåëüþ êîíòðîëÿ çà íàëè÷èåì ïëàò â ñèñòåìå è âîçìîæíîñòè èõ êîíôèãóðàöèè, ìîäóëü ñîäåðæèò ôîðìó êîíòðîëÿ è êîíôèãóðàöèè CIF-ïëàò (ðèñ.1).


Âêëàäêà êîíôèãóðàöèè CIF-ïëàò. (90 Kb)
Ðèñ.1. Âêëàäêà êîíôèãóðàöèè CIF-ïëàò.

Ñ ïîìîùüþ ýòîé ôîðìû ìîæíî ïðîêîíòðîëèðîâàòü íàëè÷èå êîììóíèêàöèîííûõ ïðîöåññîðîâ, èõ êîíôèãóðàöèþ, à òàêæå íàñòðîèòü ïàðàìåòðû ñåòè ProfiBus â âèäå PB àäðåñà êîììóíèêàöèîííîãî ïðîöåññîðà è ñêîðîñòè øèíû ProfiBus.  äðóãîé âêëàäêå ìîäóëÿ (ðèñ.2) ìîæíî ïðîêîíòðîëèðîâàòü íàëè÷èå ðàçëè÷íûõ ñòàíöèé â ñåòè ProfiBus.


Âêëàäêà ìîíèòîðèíãà ñåòè Profibus. (74 Kb)
Ðèñ.2. Âêëàäêà ìîíèòîðèíãà ñåòè ProfiBus.

2. Îáúåêò êîíòðîëëåðà èñòî÷íèêà äàííûõ

Äëÿ äîáàâëåíèÿ èñòî÷íèêà äàííûõ ñîçäà¸òñÿ è êîíôèãóðèðóåòñÿ îáúåêò êîíòðîëëåðà â ñèñòåìå OpenSCADA. Ïðèìåð âêëàäêè êîíôèãóðàöèè îáúåêòà êîíòðîëëåðà äàííîãî òèïà èçîáðàæåí íà ðèñóíêå 3.


Âêëàäêà êîíôèãóðàöèè êîíòðîëëåðà. (127 Kb)
Ðèñ.3. Âêëàäêà êîíôèãóðàöèè êîíòðîëëåðà.

Ñ ïîìîùüþ ýòîé âêëàäêè ìîæíî óñòàíîâèòü:

3. Îáúåêò ïàðàìåòðà èñòî÷íèêà äàííûõ

Ó÷èòûâàÿ âûñîêóþ èíòåëëåêòóàëüíîñòü èñòî÷íèêîâ äàííûõ â ëèöå ïðîìûøëåííûõ êîíòðîëëåðîâ ôèðìû Siemens S7-200,300,400, îáúåêòû ïàðàìåòðà âûïîëíÿþòñÿ íà îñíîâå øàáëîíîâ?. Äàííûé ïîäõîä ïîçâîëÿåò íå îãðàíè÷èâàòüñÿ æ¸ñòêèì ïåðå÷íåì òèïîâ ïàðàìåòðîâ, ÷òî îãðàíè÷èâàåò è âîçìîæíîñòè êîíòðîëëåðîâ, à ïðåäîñòàâèòü âîçìîæíîñòü ïîëüçîâàòåëþ ôîðìèðîâàòü íóæíûå åìó òèïû ïàðàìåòðîâ ñàìîñòîÿòåëüíî èëè èñïîëüçîâàòü áèáëèîòåêè óæå ðàçðàáîòàííûõ ðàíåå òèïîâ ïàðàìåòðîâ (øàáëîíîâ).


Èñõîäÿ èç ýòîãî, ìîäóëü ïðåäîñòàâëÿåò òîëüêî îäèí òèï ïàðàìåòðîâ — "Ëîãè÷åñêèé". Äîïîëíèòåëüíûìè êîíôèãóðàöèîííûìè ïîëÿìè ïàðàìåòðîâ äàííîãî ìîäóëÿ (ðèñ.4) ÿâëÿåòñÿ ïîëå âûáîðà øàáëîíà ïàðàìåòðà.


Âêëàäêà êîíôèãóðàöèè ïàðàìåòðà. (81 Kb)
Ðèñ.4. Âêëàäêà êîíôèãóðàöèè îáúåêòà ïàðàìåòðà.

Äëÿ êîíôèãóðàöèè øàáëîíà ïàðàìåòðà ïðåäîñòàâëÿåòñÿ ñîîòâåòñòâóþùàÿ âêëàäêà. Ñîäåðæèìîå ýòîé âêëàäêè îïðåäåëÿåòñÿ êîíôèãóðàöèåé øàáëîíà, ò.å ôîðìèðóþòñÿ ñîîòâåòñòâóþùèå ññûëî÷íûå ïîëÿ è ïîëÿ óñòàíîâêè ïîñòîÿííûõ.


Òèïû ññûëîê îïðåäåëÿþòñÿ òèïîì ïàðàìåòðà â øàáëîíå (Ëîãè÷åñêèé, Öåëûé, Âåùåñòâåííûé è Ñòðîêîâûé) è îïðåäåëåíèåì çíà÷åíèÿ ññûëêè (äëÿ ãðóïïîâûõ ññûëîê). Îïðåäåëåíèå ãðóïïîâîé ññûëêè â øàáëîíå çàïèñûâàåòñÿ â ôîðìàòå: "{Èìÿ ññûëêè}|{Ñìåùåíèå â ÁÄ}|{Ðàçìåð çíà÷åíèÿ}", ãäå:

Èìÿ ññûëêè — èìÿ ãðóïïîâîé ññûëêè. Âñå ññûëêè ñ îäèíàêîâûì èìåíåì ãðóïïèðóþòñÿ è óêàçûâàþòñÿ êàê îäíà ññûëêà íà ÁÄ èëè ÁÄ ñ óêàçàííûì ñìåùåíèåì.
Ñìåùåíèå â ÁÄ — èìÿ ñìåùåíèÿ â áëîêå äàííûõ (ÁÄ). Ïðè óêàçàíèè òîëüêî ÁÄ, ïðè êîíôèãóðàöèè øàáëîíà, ýòî ñìåùåíèå áóäåò óêàçàííî äëÿ ïàðàìåòðà, åñëè æå ïðè êîíôèãóðàöèè øàáëîíà áóäåò óêàçàíî è ñìåùåíèå, òî îáà ñìåùåíèÿ áóäóò ñóììèðîâàòüñÿ âìåñòå. Òàêîé ïîäõîä ïîçâîëÿåò îáðàùàòüñÿ ê ìíîæåñòâó ñòðóêòóð â îäíîì ÁÄ. Íîìåð ÁÄ è ñìåùåíèå ìîæíî óêàçûâàòü â äåñÿòè÷íîé (3245) è øåñòíàäöàòåðè÷íîé ôîðìå (0xCAD).
Ðàçìåð çíà÷åíèÿ — íåîáÿçàòåëüíîå ïîëå, êîòîðîå îïðåäåëÿåò íåñòàíäàðòíûé ðàçìåð çíà÷åíèÿ â êîíòðîëëåðå. Ïðåäóñìîòðåíû ñëåäóþùèå ðàçìåðû òèïîâ çíà÷åíèé:
Öåëîå: — 1 áàéò(çíàêîâûé), 2 áàéòà(çíàêîâûé, ïî óìîë÷àíèþ) è 4 áàéòà(çíàêîâûé).
Âåùåñòâåííîå: — 4 áàéòà(float, ïî óìîë÷àíèþ), 8 áàéò(double).
Ëîãè÷åñêèé: — âñåãäà îäèí áàéò (ñ óêàçàíèåì áèòà ÷åðåç òî÷êó - DB1.10.1).
Ñòðîêà: — 10 áàéò(ïî óìîë÷àíèþ) è 1-200 ìîæíî óêàçûâàòü.

Íàãëÿäíûé ïðèìåð îáùåãî ïðîöåññà êîíôèãóðàöèè ïàðàìåòðà îò øàáëîíà è äî çíà÷åíèé ïðèâåäåí â ðèñóíêàõ îò 5 äî 8.


Ïðèìåð øàáëîíà ñ ãðóïïèðîâàíèåì. (103 Kb)
Ðèñ.5. Ïðèìåð øàáëîíà ñ ãðóïïèðîâàíèåì.

Âêëàäêà êîíôèãóðàöèè øàáëîíà ïàðàìåòðà. (75 Kb)
Ðèñ.6. Âêëàäêà êîíôèãóðàöèè øàáëîíà ïàðàìåòðà

Âêëàäêà êîíôèãóðàöèè øàáëîíà ïàðàìåòðà ñ óêàçàíèåì ïàðàìåòðîâ ïî îòäåëüíîñòè. (81 Kb)
Ðèñ.7. Âêëàäêà êîíôèãóðàöèè øàáëîíà ïàðàìåòðà ñ óêàçàíèåì ïàðàìåòðîâ ïî îòäåëüíîñòè.

Çíà÷åíèÿ ïàðàìåòðà. (85 Kb)
Ðèñ.8. Çíà÷åíèÿ ïàðàìåòðà.

 (2 Kb) Ìîäóëåì ïîääåðæèâàåòñÿ àäðåñàöèÿ òîëüêî ê áëîêàì äàííûõ (ÁÄ) êîíòðîëëåðîâ.


Ìîäóëåì ïðåäóñìîòðåíà îñîáàÿ îáðàáîòêà ðÿäà àòðèáóòîâ øàáëîíà:

4. Àñèíõðîííûé ðåæèì çàïèñè

Ñòàíäàðòíûì ðåæèìîì çàïèñè äëÿ SCADA-ñèñòåì, âçàèìîäåéñòâóþùèõ ñ PLC, ÿâëÿåòñÿ ñèíõðîííûé ïîñêîëüêó ïîçâîëÿåò êîíòðîëèðîâàòü êîððåêòíîñòü çàâåðøåíèÿ îïåðàöèè çàïèñè. Îäíàêî â ñëó÷àå çàïèñè ìíîæåñòâà ïàðàìåòðîâ ñðàçó òàêîé ïîäõîä íå îïðàâäàí â âèäó îòïðàâêè ìíîæåñòâà ìåëêèõ çàïðîñîâ â êîíòðîëëåð, ÷òî ïåðåãðóæàåò PLC è çàíèìàåò áîëüøîé èíòåðâàë âðåìåíè. Ðåøåíèåì ýòîé ïðîáëåìû ÿâëÿåòñÿ àñèíõðîííàÿ çàïèñü ñìåæíûõ çíà÷åíèé îäíèì áëîêîì. Òàêîé ðåæèì ïîääåðæèâàåòñÿ ýòèì ìîäóëåì è ïîçâîëÿåò çàïèñûâàòü âñå ïàðàìåòðû ñðàçó ñìåæíûìè áëîêàìè ïî 240 áàéò. ×òåíèå è çàïèñü â òàêîì ðåæèìå ïðîèçâîäèòñÿ ñìåæíûìè áëîêàìè ñ ïåðèîäè÷íîñòüþ îïðîñà êîíòðîëëåðà.

5. Çàìå÷àíèÿ

Ïîñëå öåëåíàïðàâëåííîãî ïîèñêà áûëî îáíàðóæåíî íåñêîëüêî ðåøåíèé ïðîáëåìû êîììóíèêàöèè ñ ïðîìûøëåííûìè êîíòðîëëåðàìè ôèðìû Siemens ïîñðåäñòâîì ðàçëè÷íûõ êîììóíèêàöèîííûõ èíòåðôåéñîâ:

Ññûëêè

Äðàéâåð ôèðìû Hilscher äëÿ ïëàò ñåìåéñòâà CIF: file:cif2621.tgz
Ïàò÷ äëÿ ñáîðêè äðàéâåðà äëÿ ÿäðà Linux 2.6.29: file:lastkernels.patch


Referring pages: Doc
Doc/DAQ
Doc/OpenSCADA060
Function
HomePageUk/Doc/DAQ


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