<?xml version='1.0' encoding='UTF-8' ?> <!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'> <html class="client-nojs" dir="ltr" lang="en"> <head> <meta charset="UTF-8" /> <title>Бібліотеки/ОÑновна - OpenSCADAWiki</title> <meta content="MediaWiki 1.26.4" name="generator" /> <link href="https://www.gnu.org/copyleft/fdl.html" rel="copyright" /> <link href="../en/files/doc.css" rel="stylesheet" /></head> <body><div class="floatright"><a href="index.html"><img alt="OpenSCADA" src="../en/files/index.png" /></a></div><div id="mw_header"> <div class="mw-indicators"> </div> <h1 id="firstHeading" lang="uk">Бібліотеки/ОÑновна</h1> </div><div class="mw-content-ltr" dir="ltr" id="mw-content-text" lang="uk"><div class="mw-pt-translate-header noprint" dir="ltr" lang="en">This page is a <span class="plainlinks"><a class="external text" href="http://oscada.org/wiki/index.php?title=Special:Translate&group=page-Libs%2FMain&action=page&filter=&language=uk" rel="nofollow noreferrer noopener" target="_blank">translated version</a></span> of the page <a class="external" href="http://oscada.org/wiki/Libs/Main" title="Libs/Main">Libs/Main</a> and the translation is 100% complete.</div><hr /><div class="mw-pt-languages" dir="ltr" lang="en"><div class="mw-pt-languages-list autonym"><a class="mw-pt-languages-ui mw-pt-progress mw-pt-progress--complete" href="../en/Libs_Main.html" title="Libs/Main (100% translated)">English</a> • ‎<a class="mw-pt-progress mw-pt-progress--stub" href="../ru/Libs_Main.html" title="Библиотеки/ОÑÐ½Ð¾Ð²Ð½Ð°Ñ (6% translated)">mRussian</a> • ‎<span class="mw-pt-languages-selected mw-pt-progress mw-pt-progress--complete">УкраїнÑька</span></div></div> <table class="wikitable"> <tr> <th> Ðазва </th> <th> ВерÑÑ–Ñ </th> <th> Ð›Ñ–Ñ†ÐµÐ½Ð·Ñ–Ñ </th> <th> Джерело </th> <th> Мови </th> <th> Ðвтор </th> <th> ÐžÐ¿Ð¸Ñ </th></tr> <tr> <td> <a href="Libs_Main.html" title="Special:MyLanguage/Libs/Main">ОÑновна бібліотека</a> </td> <td> 2.3 </td> <td> GPLv2 </td> <td> OscadaLibs.db (<a class="external text" href="http://oscada.org/svn/trunk/OpenSCADA/data/LibsDB/OscadaLibs.sql" rel="nofollow noreferrer noopener" target="_blank">SQL</a>, <a class="external" href="http://oscada.org/wiki/File:OscadaLibs.db.gz" title="File:OscadaLibs.db.gz">GZip</a>) > DAQ.tmplb_base </td> <td> en, uk, ru </td> <td> <a class="external" href="http://oscada.org/wiki/User:RomanSavochenko" title="User:RomanSavochenko">Роман Савоченко</a> </td> <td> Бібліотека оÑновних шаблонів Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ DAQ-джерел та похідних ÑервіÑів. <ul><li> <b>ЗаÑновано:</b> Січень 2006</li> <li> <b>СпонÑоровано:</b> залежно від елементу ...</li> <li> <b>ВикориÑтано:</b> <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Using" title="Special:MyLanguage/Using">більшіÑÑ‚ÑŒ проектів на OpenSCADA</a></li> <li> <b><a href="../en/To_do.html" title="Special:MyLanguage/Works/To do">Ð—Ð°Ð²Ð´Ð°Ð½Ð½Ñ (To Do)</a>:</b></li></ul> <p><br /> </p> </td></tr></table> <p>Бібліотеку Ñтворено Ð´Ð»Ñ Ð½Ð°Ð´Ð°Ð½Ð½Ñ Ð¾Ñновних шаблонів Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ DAQ-джерел та похідних ÑервіÑів. </p><p>Ðазви шаблонів та Ñ—Ñ… параметрів доÑтупні на мовах: ÐнглійÑька, УкраїнÑька та mRussian. Їх вихідний код напиÑано у мово(людÑька)-незалежному режимі з викликом функції перекладу <i>tr()</i> та переклад цих повідомлень також доÑтупний ÐнглійÑькою, УкраїнÑькою та mRussian. </p><p>Ð”Ð»Ñ Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð±Ñ–Ð±Ð»Ñ–Ð¾Ñ‚ÐµÐºÐ¸ до проекту Ñтанції OpenSCADA ви можете отримати файл БД Ñк: </p> <ul><li> такий що поÑтачаєтьÑÑ Ð· готовим та відповідним пакетом диÑтрибутиву Linux на кшталт "openscada-libdb-main", "openscada-LibDB.Main";</li> <li> найбільш актуальний та безпоÑередньо отриманий з <a class="external text" href="http://oscada.org/svn/trunk/OpenSCADA/data/LibsDB/OscadaLibs.sql" rel="nofollow noreferrer noopener" target="_blank">репозиторію subversion</a>, перетворений у файл БД SQLite шлÑхом:</li></ul> <div class="mw-highlight mw-content-ltr" dir="ltr" style="margin-left: 15px"><pre>wget http://oscada.org/svn/trunk/OpenSCADA/data/LibsDB/OscadaLibs.sql sqlite3 -init OscadaLibs.sql OscadaLibs.db .exit </pre></div> <ul><li> Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ <a class="external" href="http://oscada.org/wiki/File:OscadaLibs.db.gz" title="File:OscadaLibs.db.gz">прикріпленого тут</a>.</li></ul> <p>Цей завантажений файл ви надалі можете розміÑтити у теці проекту Ñтанції та Ñтворити об'єкт бази даних Ð¼Ð¾Ð´ÑƒÐ»Ñ Ð‘Ð” "SQLite", зареєÑтрувавши файл бази даних у конфігурації. </p><p>Ð”Ð»Ñ DAQ-шаблонів загалом Вам треба Ñтворити предÑтавницький об'єкт приÑтрою у <a href="Modules/LogicLev.html" title="Special:MyLanguage/Modules/LogicLev">модулі Логічного РівнÑ</a> та обрати відповідний шаблон з бібліотеки шаблонів. Далі, Ð´Ð»Ñ ÐºÐ¾Ñ€ÐµÐºÑ‚Ð½Ð¾Ñ— конфігурації, дотримуйтеÑÑŒ Ñпецифіки шаблону у оÑобиÑтому опиÑÑ–. </p> <div class="toc" id="toc"><div id="toctitle"><h2>Contents</h2></div> <ul> <li class="toclevel-1 tocsection-1"><a href="#.D0.A8.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B8_.D1.81.D1.82.D0.B0.D0.BD.D0.B4.D0.B0.D1.80.D1.82.D0.BD.D0.B8.D1.85_.D1.81.D1.82.D1.80.D1.83.D0.BA.D1.82.D1.83.D1.80_DAQ-.D0.BF.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.96.D0.B2"><span class="tocnumber">1</span> <span class="toctext">Шаблони Ñтандартних Ñтруктур DAQ-параметрів</span></a> <ul> <li class="toclevel-2"><a href="#.D0.90.D0.BD.D0.B0.D0.BB.D0.BE.D0.B3.D0.BE.D0.B2.D0.B8.D0.B9_.D1.81.D0.B8.D0.B3.D0.BD.D0.B0.D0.BB.2C_.D1.83.D0.BD.D1.96.D1.84.D1.96.D0.BA.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B9_.28anUnif.29"><span class="tocnumber">1.1</span> <span class="toctext">Ðналоговий Ñигнал, уніфікований (anUnif)</span></a></li> <li class="toclevel-2"><a href="#.D0.90.D0.BD.D0.B0.D0.BB.D0.BE.D0.B3.D0.BE.D0.B2.D0.B8.D0.B9_.D1.81.D0.B8.D0.B3.D0.BD.D0.B0.D0.BB.2C_.D1.83.D0.BD.D1.96.D1.84.D1.96.D0.BA.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B9.2C_.D1.81.D1.82.D0.B0.D0.BD.D0.B8_.D0.BF.D0.BE.D1.80.D1.83.D1.88.D0.B5.D0.BD.D1.8C_.28anUnifSt.29"><span class="tocnumber">1.2</span> <span class="toctext">Ðналоговий Ñигнал, уніфікований, Ñтани порушень (anUnifSt)</span></a></li> <li class="toclevel-2"><a href="#.D0.A0.D1.83.D1.87.D0.BD.D0.B8.D0.B9_.D0.B2.D0.B2.D1.96.D0.B4.2C_.D1.83.D0.BD.D1.96.D1.84.D1.96.D0.BA.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B9_.28manInUnif.29"><span class="tocnumber">1.3</span> <span class="toctext">Ручний ввід, уніфікований (manInUnif)</span></a></li> <li class="toclevel-2"><a href="#.D0.94.D0.B8.D1.81.D0.BA.D1.80.D0.B5.D1.82.D0.BD.D0.B8.D0.B9_.D0.B1.D0.BB.D0.BE.D0.BA.2C_.D1.83.D0.BD.D1.96.D1.84.D1.96.D0.BA.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B9_.28digitBlockUnif.29"><span class="tocnumber">1.4</span> <span class="toctext">ДиÑкретний блок, уніфікований (digitBlockUnif)</span></a></li> <li class="toclevel-2"><a href="#.D0.A1.D0.B8.D0.B3.D0.BD.D0.B0.D0.BB.D1.96.D0.B7.D0.B0.D1.86.D1.96.D1.8F_.D0.B4.D0.B8.D1.81.D0.BA.D1.80.D0.B5.D1.82.D0.BD.D0.B0_.28digAlarm.29"><span class="tocnumber">1.5</span> <span class="toctext">Ð¡Ð¸Ð³Ð½Ð°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ Ð´Ð¸Ñкретна (digAlarm)</span></a></li> <li class="toclevel-2"><a href="#.D0.A1.D1.82.D0.B0.D0.BD_.D0.B7.D0.B0_.D0.BA.D0.BE.D0.B4.D0.BE.D0.BC_.28codeState.29"><span class="tocnumber">1.6</span> <span class="toctext">Стан за кодом (codeState)</span></a></li> <li class="toclevel-2"><a href="#.D0.9F.D0.86.D0.94_.D1.81.D0.B8.D0.B3.D0.BD.D0.B0.D0.BB.2C_.D1.83.D0.BD.D1.96.D1.84.D1.96.D0.BA.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B9.2C_.D1.81.D1.82.D0.B0.D0.BD.D0.B8_.D0.BF.D0.BE.D1.80.D1.83.D1.88.D0.B5.D0.BD.D1.8C_.28pidUnif.29"><span class="tocnumber">1.7</span> <span class="toctext">ПІД Ñигнал, уніфікований, Ñтани порушень (pidUnif)</span></a></li> <li class="toclevel-2"><a href="#.D0.86.D0.BC.D0.BF.D1.83.D0.BB.D1.8C.D1.81.D0.BD.D0.B8.D0.B9_.D0.9F.D0.86.D0.94_.D1.81.D0.B8.D0.B3.D0.BD.D0.B0.D0.BB.2C_.D1.83.D0.BD.D1.96.D1.84.D1.96.D0.BA.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B9.2C_.D1.81.D1.82.D0.B0.D0.BD.D0.B8_.D0.BF.D0.BE.D1.80.D1.83.D1.88.D0.B5.D0.BD.D1.8C_.28pidUnifImp.29"><span class="tocnumber">1.8</span> <span class="toctext">ІмпульÑний ПІД Ñигнал, уніфікований, Ñтани порушень (pidUnifImp)</span></a></li> </ul> </li> <li class="toclevel-1 tocsection-2"><a href="#.D0.A8.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B8_.D0.BA.D0.BE.D0.BC.D0.BF.D0.BB.D0.B5.D0.BA.D1.81.D0.BD.D0.B8.D1.85_.D0.BE.D0.B1.27.D1.94.D0.BA.D1.82.D1.96.D0.B2"><span class="tocnumber">2</span> <span class="toctext"><span>Шаблони комплекÑних об'єктів</span></span></a> <ul> <li class="toclevel-2"><a href="#.D0.94.D0.B6.D0.B5.D1.80.D0.B5.D0.BB.D0.BE_.D0.91.D0.B5.D0.B7.D0.BF.D0.B5.D1.80.D0.B5.D0.B1.D1.96.D0.B9.D0.BD.D0.BE.D0.B3.D0.BE_.D0.96.D0.B8.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F_.28UPS.29"><span class="tocnumber">2.1</span> <span class="toctext">Джерело Безперебійного Ð–Ð¸Ð²Ð»ÐµÐ½Ð½Ñ (UPS)</span></a></li> <li class="toclevel-2"><a href="#.D0.9C.D0.B5.D1.80.D0.B5.D0.B6.D0.B5.D0.B2.D1.96_.D0.BF.D1.80.D0.B8.D1.81.D1.82.D1.80.D0.BE.D1.97_.D0.B7.D0.B0_SNMP_.28SNMP.29"><span class="tocnumber">2.2</span> <span class="toctext">Мережеві приÑтрої за SNMP (SNMP)</span></a></li> <li class="toclevel-2"><a href="#.D0.94.D0.B8.D1.81.D0.BA.D0.BE.D0.B2.D0.B8.D0.B9_SMART_.28DiskSMART.29"><span class="tocnumber">2.3</span> <span class="toctext">ДиÑковий SMART (DiskSMART)</span></a></li> </ul> </li> <li class="toclevel-1 tocsection-3"><a href="#.D0.A1.D0.B5.D1.80.D0.B2.D1.96.D1.81.D0.B8"><span class="tocnumber">3</span> <span class="toctext">СервіÑи</span></a> <ul> <li class="toclevel-2"><a href="#.D0.A1.D0.BF.D0.BE.D0.B2.D1.96.D1.89.D1.83.D0.B2.D0.B0.D1.87_.D0.B7.D0.B0_SMS.2C_EMail-SMTP_.28ntf.29"><span class="tocnumber">3.1</span> <span class="toctext">Сповіщувач за SMS, EMail-SMTP (ntf)</span></a></li> <li class="toclevel-2"><a href="#.D0.9A.D0.BE.D0.BD.D1.82.D1.80.D0.BE.D0.BB.D1.8C_.D0.B2.D1.96.D0.B4.D0.B4.D0.B0.D0.BB.D0.B5.D0.BD.D0.B8.D1.85_.D1.96.D0.BD.D1.96.D1.86.D1.96.D0.B0.D1.82.D0.B8.D0.B2.D0.BD.D0.B8.D1.85_.D0.BF.D1.96.D0.B4.D0.BA.D0.BB.D1.8E.D1.87.D0.B5.D0.BD.D1.8C_.28initRemCntr.29"><span class="tocnumber">3.2</span> <span class="toctext">Контроль віддалених ініціативних підключень (initRemCntr)</span></a></li> <li class="toclevel-2"><a href="#.D0.9E.D0.BF.D1.80.D0.B0.D1.86.D1.8E.D0.B2.D0.B0.D0.BD.D0.BD.D1.8F_.D1.96.D0.BD.D1.96.D1.86.D1.96.D0.B0.D1.82.D0.B8.D0.B2.D0.BD.D0.B8.D1.85_.D0.BF.D1.96.D0.B4.D0.BA.D0.BB.D1.8E.D1.87.D0.B5.D0.BD.D1.8C_.D1.89.D0.BE.D0.B4.D0.BE_.D0.B0.D1.81.D0.BE.D1.86.D1.96.D0.B9.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D1.85_.D0.B2.D0.B8.D1.85.D1.96.D0.B4.D0.BD.D0.B8.D1.85_.D1.82.D1.80.D0.B0.D0.BD.D1.81.D0.BF.D0.BE.D1.80.D1.82.D1.96.D0.B2_.28initConAssociateTrs.29"><span class="tocnumber">3.3</span> <span class="toctext">ÐžÐ¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ñ–Ð½Ñ–Ñ†Ñ–Ð°Ñ‚Ð¸Ð²Ð½Ð¸Ñ… підключень щодо аÑоційованих вихідних транÑпортів (initConAssociateTrs)</span></a></li> <li class="toclevel-2"><a href="#.D0.9F.D0.BE.D0.B3.D0.BE.D0.B4.D0.B0_.28weather.29"><span class="tocnumber">3.4</span> <span class="toctext">Погода (weather)</span></a></li> </ul> </li> <li class="toclevel-1 tocsection-4"><a href="#.D0.94.D0.BB.D1.8F_WebUser"><span class="tocnumber">4</span> <span class="toctext">Ð”Ð»Ñ WebUser</span></a> <ul> <li class="toclevel-2"><a href="#WebUser:_HTTP_.D0.A4.D0.B0.D0.B9.D0.BB.D0.BE.D0.B2.D0.B8.D0.B9_.D0.A1.D0.B5.D1.80.D0.B2.D0.B5.D1.80_.28fileServerHTTP.29"><span class="tocnumber">4.1</span> <span class="toctext">WebUser: HTTP Файловий Сервер (fileServerHTTP)</span></a></li> </ul> </li> </ul> </div> <h2><span class="mw-headline" id=".D0.A8.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B8_.D1.81.D1.82.D0.B0.D0.BD.D0.B4.D0.B0.D1.80.D1.82.D0.BD.D0.B8.D1.85_.D1.81.D1.82.D1.80.D1.83.D0.BA.D1.82.D1.83.D1.80_DAQ-.D0.BF.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.96.D0.B2"><span class="mw-headline-number">1</span> Шаблони Ñтандартних Ñтруктур DAQ-параметрів</span></h2> <table class="wikitable"> <tr> <td> <span id="anUnif" title="#anUnif"><h3><span class="mw-headline" id=".D0.90.D0.BD.D0.B0.D0.BB.D0.BE.D0.B3.D0.BE.D0.B2.D0.B8.D0.B9_.D1.81.D0.B8.D0.B3.D0.BD.D0.B0.D0.BB.2C_.D1.83.D0.BD.D1.96.D1.84.D1.96.D0.BA.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B9_.28anUnif.29"><span class="mw-headline-number">1.1</span> Ðналоговий Ñигнал, уніфікований (<a href="Libs_Main.html#anUnif" title="Special:MyLanguage/Libs/Main">anUnif</a>)</span></h3></span> </td> <td> 2.4 </td> <td> GPLv2 </td> <td> * </td> <td> en, uk, ru </td> <td> <a class="external" href="http://oscada.org/wiki/User:RomanSavochenko" title="User:RomanSavochenko">Роман Савоченко</a> </td></tr></table> <div class="floatright"><a class="image" href="http://oscada.org/wiki/File:LibsMainAnUnifOp_uk.png" title="Результат та оперативні налаштуваннÑ."><img alt="Результат та оперативні налаштуваннÑ." height="736" src="files/LibsMainAnUnifOp_uk.png" width="402" /></a></div> <p>Загальний, предÑтавницький та уніфікований шаблон обробки аналогових вхідних Ñигналів. Шаблон формує Ñтруктуру аналогового параметру (Ñкладного тегу) Ñкий може бути легко підключений до більшоÑÑ‚Ñ– віджетів та кадрів <a href="Libs_Main_graphical_elements.html" title="Special:MyLanguage/Libs/Main graphical elements">бібліотеки оÑновних елементів інтерфейÑу кориÑтувача</a> проÑто вказавши об'єкт параметру. </p><p>ПредÑтавницькою Ñтруктурою аналогового параметру (Ñкладного тегу) Ñ”: </p> <ul><li> "Змінна (<b>var</b>)" — кінцева змінна параметру — інженерне реальне значеннÑ, доÑтупне та придатне до архівації.</li> <li> "Помилка (<b>err</b>)" — обов'Ñзковий атрибут будь Ñкого параметру, що міÑтить комбінацію коду помилки та короткого опиÑу, на кшталт "2:Ðемає даних або Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð´Ð¾ джерела". Шаблон резервує наÑтупні коди помилок: <ul><li> <b>1, 2</b> — помилки обладнаннÑ, коли дані переважно помилкові;</li> <li> <b>3, 4</b> — помилки аварійної границі;</li> <li> <b>5, 6</b> — помилки попереджувальної границі;</li> <li> <b>7</b> — помилка швидкоÑÑ‚Ñ– зміни змінної.</li></ul></li> <li> "ÐŸÑ€Ð¸Ð´ÑƒÑˆÐµÐ½Ð½Ñ (<b>alSup</b>) та затримка (<b>alDelay</b>) порушень" — загальний контроль порушень щодо Ð¿Ñ€Ð¸Ð´ÑƒÑˆÐµÐ½Ð½Ñ Ñ‚Ð° затримки.</li> <li> "Шкала: мінімум (<b>min</b>)" та "Шкала: макÑимум (<b>max</b>)" — головна шкала кінцевої змінної, вихід за Ñку призводить до помилки апаратної границі. Шкала також викориÑтовуєтьÑÑ Ñк шкала Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ñ‚Ñ€ÐµÐ½Ð´Ñƒ змінної на графіках.</li> <li> "Логарифмічна шкала (<b>log</b>)" — ознака Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ñ‚Ñ€ÐµÐ½Ð´Ñƒ змінної на графіках у логарифмічній шкалі.</li> <li> "ÐžÐ´Ð¸Ð½Ð¸Ñ†Ñ Ð²Ð¸Ð¼Ñ–Ñ€Ñƒ (<b>ed</b>)" — Ð¾Ð´Ð¸Ð½Ð¸Ñ†Ñ Ð²Ð¸Ð¼Ñ–Ñ€Ñƒ змінної.</li> <li> "ТочніÑÑ‚ÑŒ (<b>prec</b>)" — кількіÑÑ‚ÑŒ знаків піÑÐ»Ñ ÐºÑ€Ð°Ð¿ÐºÐ¸, Ð´Ð»Ñ Ð¿Ð¾Ð·Ð¸Ñ‚Ð¸Ð²Ð½Ð¸Ñ… значень, та точніÑÑ‚ÑŒ (знаків загалом), Ð´Ð»Ñ Ð½ÐµÐ³Ð°Ñ‚Ð¸Ð²Ð½Ð¸Ñ…, Ð´Ð»Ñ Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ñ€ÐµÐ°Ð»ÑŒÐ½Ð¾Ñ— кінцевої змінної на екрані.</li></ul> <p>Значні графічні образи предÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ñтруктури: </p> <ul><li> <a href="Libs_Main_graphical_elements.html" title="Special:MyLanguage/Libs/Main graphical elements">Бібліотека оÑновних елементів інтерфейÑу кориÑтувача</a>: <ul><li> <a href="Libs_Main_graphical_elements.html#anShow" title="Special:MyLanguage/Libs/Main graphical elements">Ð’Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ð°Ð½Ð°Ð»Ð¾Ð³Ð¾Ð²Ð¾Ð³Ð¾</a></li> <li> <a href="Libs_Main_graphical_elements.html#anShow1" title="Special:MyLanguage/Libs/Main graphical elements">Ð’Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ð°Ð½Ð°Ð»Ð¾Ð³Ð¾Ð²Ð¾Ð³Ð¾ 1</a>; <a href="Libs_Main_graphical_elements.html#anShow1s" title="Special:MyLanguage/Libs/Main graphical elements">Ð’Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ð°Ð½Ð°Ð»Ð¾Ð³Ð¾Ð²Ð¾Ð³Ð¾ 1, короткий</a></li> <li> <a href="Libs_Main_graphical_elements.html#ElViewGraph" title="Special:MyLanguage/Libs/Main graphical elements">Елемент групи графіків</a></li> <li> <a href="Libs_Main_graphical_elements.html#ElViewCadr" title="Special:MyLanguage/Libs/Main graphical elements">Кадр групи оглÑду</a></li> <li> <a href="Libs_Main_graphical_elements.html#ResultGraphEl" title="Special:MyLanguage/Libs/Main graphical elements">Кадр зведених графіків</a></li> <li> <a href="Libs_Main_graphical_elements.html#ElCadr" title="Special:MyLanguage/Libs/Main graphical elements">Елемент кадр</a></li> <li> <a href="Libs_Main_graphical_elements.html#cntrPaspExt" title="Special:MyLanguage/Libs/Main graphical elements">ПаÑпорт, розширений</a></li></ul></li> <li> <a href="Libs_Mnemo_elements.html" title="Special:MyLanguage/Libs/Mnemo elements">Бібліотека елементів мнемоÑхем інтерфейÑу кориÑтувача</a>: <ul><li> <a href="Libs_Mnemo_elements.html#Level" title="Special:MyLanguage/Libs/Mnemo elements">Рівень</a></li></ul></li> <li> <a href="Libs_Documents.html" title="Special:MyLanguage/Libs/Documents">Бібліотека звітів та документів</a>: <ul><li> <a href="Libs_Documents.html#docRepInstVals" title="Special:MyLanguage/Libs/Documents">Звіт миттєвих значень</a></li> <li> <a href="Libs_Documents.html#docRepDay" title="Special:MyLanguage/Libs/Documents">Добовий звіт Ñередніх за годину значень</a></li> <li> <a href="Libs_Documents.html#docRepMonth" title="Special:MyLanguage/Libs/Documents">МіÑÑчний звіт Ñередніх за добу значень</a></li> <li> <a href="Libs_Documents.html#docRepYear" title="Special:MyLanguage/Libs/Documents">Річний звіт міÑÑчних значень</a></li> <li> <a href="Libs_Documents.html#docRep2WorkSh" title="Special:MyLanguage/Libs/Documents">Звіт двох робочих змін</a></li></ul></li></ul> <ul><li> <b>СпонÑоруваннÑ, Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ð·Ð°Ð³Ð°Ð»ÑŒÐ½Ð¾Ð³Ð¾ Ð¿Ð¾Ð»Ñ "DESCR" викориÑтаннÑм Ð´Ð»Ñ Ñпецифічних параметрів порушеньна на 0.1 <span title="людино-днів, 1ЛД — 10 годин">ЛД<sup style="color: blue">[!]</sup></span>:</b> INSERTEC LTDA</li></ul> <p><b><u>Функції</u></b><br /> </p> <ul><li> Загальне Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð°Ð½Ð°Ð»Ð¾Ð³Ð¾Ð²Ð¾Ð³Ð¾ входу щодо:</li></ul> <dl><dd><ul><li> проÑта корекціÑ-ÐºÐ°Ð»Ñ–Ð±Ñ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð° формулою "<b>in</b> = <b>iMult</b>*(<b>in</b>+<b>iAdd</b>)";</li> <li> маÑÑˆÑ‚Ð°Ð±ÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ñ–Ð´ апаратної границі [<b>plcMin</b>...<b>plcMax</b>] у головну границю [<b>min</b>...<b>max</b>], враховуючи квадратичну шкалу <b>scSqr</b>;</li></ul> <dl><dd> <a class="image" href="http://oscada.org/wiki/File:At.png"><img alt="At.png" height="22" src="../en/files/At.png" width="22" /></a> Ðпаратні границі може бути інвертовано та взагалі вимкнено однаковими значеннÑми макÑимуму та мінімуму, коли викориÑтовуєтьÑÑ Ñ‚Ñ–Ð»ÑŒÐºÐ¸ головна шкала.</dd></dl> <ul><li> дозвіл на Ð¿ÐµÑ€ÐµÐ²Ð¸Ñ‰ÐµÐ½Ð½Ñ Ð³Ñ€Ð°Ð½Ð¸Ñ†Ñ– вхідним значеннÑм на величину <b>plcExcess</b> відÑотків;</li> <li> Ñ„Ñ–Ð»ÑŒÑ‚Ñ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð¼Ñ–Ð½Ð¸ вхідного Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð½Ð° Ñ‡Ð°Ñ <b>Tf</b>.</li></ul></dd></dl> <ul><li> ПроÑта Ñ–Ð¼Ñ–Ñ‚Ð°Ñ†Ñ–Ñ Ð°Ð½Ð°Ð»Ð¾Ð³Ð¾Ð²Ð¾Ð³Ð¾ входу, вÑтановленнÑм <b>plcImit</b> та підключеннÑм джерела імітації-ÑимулÑції до <b>plcImitIn</b>.</li></ul> <dl><dd><dl><dd> <a class="image" href="http://oscada.org/wiki/File:At.png"><img alt="At.png" height="22" src="../en/files/At.png" width="22" /></a> ВідÑутніÑÑ‚ÑŒ зв'Ñзка <b>plcImitIn</b> (EVAL) призводить до генерації випадкового аналогового входу</dd></dl></dd></dl> <ul><li> Складна передобробка та повна генераціÑ-Ñ–Ð¼Ñ–Ñ‚Ð°Ñ†Ñ–Ñ Ð°Ð½Ð°Ð»Ð¾Ð³Ð¾Ð²Ð¾Ð³Ð¾ входу на внутрішній мові Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ OpenSCADA у конфігураційному Ð’Ð’ <b>inProc</b> (із доповненнÑм вбудованими правилами підÑÐ²Ñ–Ñ‚Ð»ÐµÐ½Ð½Ñ ÑинтакÑиÑу), де ви можете оперувати наÑтупними ÑервіÑними параметрами:</li></ul> <dl><dd><ul><li> <i>in</i> [IN|OUT] — той Ñамий Ñирий аналоговий Ð’Ð’;</li> <li> <i>var</i> [IN] — Ð’Ð’ кінцевої змінної;</li> <li> <i>min</i>, <i>max</i> [IN] — Ð’Ð’ головної шкали;</li> <li> <i>plcMin</i>, <i>plcMax</i> [IN] — Ð’Ð’ апаратної шкали;</li> <li> <i>plcImit</i>, <i>plcImitIn</i> [IN] — Ð’Ð’ проÑтої імітації;</li> <li> <i>levErr</i>, <i>tErr</i> [IN|OUT] — рівень аварії [-79...0] та текÑÑ‚ помилки (формат атрибуту "err");</li> <li> <i>f_frq</i> [IN] — чаÑтота обчиÑленнÑ, шаблонний Ð’Ð’;</li> <li> <i>this</i> [IN] — поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° об'єкт параметру, що виконує шаблон;</li> <li> <i>ctx</i> [IN] — об'єкт кориÑтувацького контекÑту, що зберігаєтьÑÑ Ð¼Ñ–Ð¶ циклами виклику;</li> <li> <i>toSave</i> [OUT] — примуÑово зберігати об'єкт параметру при виході.</li></ul></dd></dl> <ul><li> ПроÑта підÑтановка Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ <b>subVar</b> за помилкою (недоÑтовірніÑÑ‚ÑŽ) вхідної змінної (EVAL) у режимах: "немає", "оÑтаннє" та "підÑтановка".</li> <li> ÐžÐ¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ ÐºÑ–Ð½Ñ†ÐµÐ²Ð¾Ñ— змінної <b>var</b> на предмет Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ð´ÐµÑких границь та критеріїв, генеруючи аварії та відповідно вÑтановлюючи атрибут <b>err</b>. Границі аварії можуть мати деÑкий гіÑÑ‚ÐµÑ€ÐµÐ·Ð¸Ñ <b>HystBnd</b>, можуть бути затримані на Ñ‡Ð°Ñ <b>alDelay</b> та можуть бути придушені вÑтановленнÑм <b>alSup</b>. ÐадаютьÑÑ Ð½Ð°Ñтупні границі та критерії:</li></ul> <dl><dd><ul><li> відÑутніÑÑ‚ÑŒ даних або Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð´Ð¾ джерела за вхідним значеннÑм EVAL — код помилки 1 та рівень аварії 5;</li> <li> Ð¿ÐµÑ€ÐµÐ²Ð¸Ñ‰ÐµÐ½Ð½Ñ Ð°Ð¿Ð°Ñ€Ð°Ñ‚Ð½Ð¾Ñ— границі вхідним значеннÑм — код помилки 1,2 та рівень аварії 5;</li> <li> Ð¿ÐµÑ€ÐµÐ²Ð¸Ñ‰ÐµÐ½Ð½Ñ Ð°Ð²Ð°Ñ€Ñ–Ð¹Ð½Ð¾Ñ— границі кінцевою змінною [<b>aMin</b>...<b>aMax</b>] — код помилки 3,4 та рівень аварії 4;</li></ul> <dl><dd> <a class="image" href="http://oscada.org/wiki/File:At.png"><img alt="At.png" height="22" src="../en/files/At.png" width="22" /></a> ВимикаєтьÑÑ Ð²ÑтановленнÑм однакових або інверÑних значень границі</dd></dl> <ul><li> Ð¿ÐµÑ€ÐµÐ²Ð¸Ñ‰ÐµÐ½Ð½Ñ Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÑƒÐ²Ð°Ð»ÑŒÐ½Ð¾Ñ— границі кінцевою змінною [<b>wMin</b>...<b>wMax</b>] — код помилки 5,6 та рівень аварії 2;</li></ul> <dl><dd> <a class="image" href="http://oscada.org/wiki/File:At.png"><img alt="At.png" height="22" src="../en/files/At.png" width="22" /></a> ВимикаєтьÑÑ Ð²ÑтановленнÑм однакових або інверÑних значень границі</dd></dl> <ul><li> велика швидкіÑÑ‚ÑŒ зміни <b>speed</b> кінцевої змінної — код помилки 7 та рівень аварії 2.</li></ul></dd></dl> <ul><li> ÐŸÐµÑ€ÐµÐ²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñпецифічних параметрів у загальному атрибуті <b>DESCR</b>:</li></ul> <dl><dd><ul><li> <i>перший Ñ€Ñдок</i> — Ñк Ð¾Ð¿Ð¸Ñ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½ÑŒ порушень;</li> <li> поле <i>CustomFlds</i> — Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ <a href="Program_manual.html#ArchMess" title="Special:MyLanguage/Documents/Program manual">кориÑтувацьких полів</a> повідомлень порушень у формі "<b>CustomFlds: {CustFld0} => {CustFld1} => ... => {CustFldN}</b>";</li> <li> поле <i>CustomAlarms</i> — Ð¿ÐµÑ€ÐµÐ²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñтандартних рівнів порушень Ð´Ð»Ñ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½ÑŒ порушень у формі "<b>CustomAlarms: {ConErr};{BrdAlarm};{BrdWarn}</b>".</li></ul></dd></dl> <p><b><u>Ð’Ð’ шаблону</u></b><br /> </p> <table class="wikitable"> <tr> <th> Ідентифікатор </th> <th> Ім'Ñ </th> <th> Тип </th> <th> Режим </th> <th> Ðтрибут </th> <th> ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ </th> <th> Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ </th></tr> <tr> <td> in </td> <td> Вхід </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Зв'Ñзок </td> <td> Вхід|var </td></tr> <tr> <td> inProc </td> <td> Вхідна процедура обробки </td> <td> ТекÑÑ‚ </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> </td></tr> <tr> <td> var </td> <td> Змінна </td> <td> Реальний </td> <td> Вхід </td> <td> Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> ed </td> <td> ÐžÐ´Ð¸Ð½Ð¸Ñ†Ñ Ð²Ð¸Ð¼Ñ–Ñ€Ñƒ </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> </td></tr> <tr> <td> min </td> <td> Шкала: мінімум </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> max </td> <td> Шкала: макÑимум </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 100 </td></tr> <tr> <td> scSqr </td> <td> Шкала: квадратична </td> <td> Логічний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> subMode </td> <td> Заміна: режим </td> <td> Вибір цілих чиÑел </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0<br /> <p>0;1;2<br /> немає;оÑтаннє;підÑтановка </p> </td></tr> <tr> <td> subVar </td> <td> Заміна: змінна </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> alSup </td> <td> ÐŸÑ€Ð¸Ð´ÑƒÑˆÐµÐ½Ð½Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½ÑŒ </td> <td> Логічний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> </td></tr> <tr> <td> alDelay </td> <td> Затримка порушень, Ñекунди </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> aMin </td> <td> Ð“Ñ€Ð°Ð½Ð¸Ñ†Ñ Ð½Ð¸Ð¶Ð½Ñ Ð°Ð²Ð°Ñ€Ñ–Ð¹Ð½Ð° </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> aMax </td> <td> Ð“Ñ€Ð°Ð½Ð¸Ñ†Ñ Ð²ÐµÑ€Ñ…Ð½Ñ Ð°Ð²Ð°Ñ€Ñ–Ð¹Ð½Ð° </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> wMin </td> <td> Ð“Ñ€Ð°Ð½Ð¸Ñ†Ñ Ð½Ð¸Ð¶Ð½Ñ Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÑƒÐ². </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> wMax </td> <td> Ð“Ñ€Ð°Ð½Ð¸Ñ†Ñ Ð²ÐµÑ€Ñ…Ð½Ñ Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÑƒÐ². </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> HystBnd </td> <td> ГиÑÑ‚ÐµÑ€ÐµÐ·Ð¸Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ð³Ñ€Ð°Ð½Ð¸Ñ†ÑŒ </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 1 </td></tr> <tr> <td> speed </td> <td> ШвидкіÑÑ‚ÑŒ зміни, %/цикл </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> prec </td> <td> ТочніÑÑ‚ÑŒ, знаків </td> <td> Цілий </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 2 </td></tr> <tr> <td> log </td> <td> Логарифмічна шкала </td> <td> Логічний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> Tf </td> <td> Ð§Ð°Ñ Ñ„Ñ–Ð»ÑŒÑ‚Ñ€Ñƒ, Ñекунд </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> iAdd </td> <td> Додаток до входу </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> 0 </td></tr> <tr> <td> iMult </td> <td> Множник входу </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> 1 </td></tr> <tr> <td> plcMin </td> <td> Мінімум шкали Ð¼Ð¾Ð´ÑƒÐ»Ñ </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> 0 </td></tr> <tr> <td> plcMax </td> <td> МакÑимум шкали Ð¼Ð¾Ð´ÑƒÐ»Ñ </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> 0 </td></tr> <tr> <td> plcExcess </td> <td> Дозволене Ð¿ÐµÑ€ÐµÐ²Ð¸Ñ‰ÐµÐ½Ð½Ñ ÑˆÐºÐ°Ð»Ð¸, % </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> 0 </td></tr> <tr> <td> plcImit </td> <td> Ð†Ð¼Ñ–Ñ‚Ð°Ñ†Ñ–Ñ ÐŸÐ›Ðš </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> 0 </td></tr> <tr> <td> plcImitIn </td> <td> Вхід імітації ПЛК </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Зв'Ñзок </td> <td> ІмітаціÑ|var </td></tr> <tr> <td> this </td> <td> Об'єкт </td> <td> Об'єкт </td> <td> Вихід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> SHIFR </td> <td> Шифр </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> NAME </td> <td> Ім'Ñ </td> <td> Ð Ñдок (переклад) </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> DESCR </td> <td> ÐžÐ¿Ð¸Ñ </td> <td> ТекÑÑ‚ (переклад) </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> f_err </td> <td> Помилка функції </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_frq </td> <td> ЧаÑтота обчиÑÐ»ÐµÐ½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ—, Гц </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 1000 </td></tr> <tr> <td> f_start </td> <td> Прапорець запуÑку функції </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_stop </td> <td> Прапорець зупинки функції </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr></table> <div class="floatright"><a class="image" href="http://oscada.org/wiki/File:LibsMainAnUnifCfg_uk.png" title="КонфігураціÑ."><img alt="КонфігураціÑ." height="448" src="files/LibsMainAnUnifCfg_uk.png" width="446" /></a></div> <p><b><u>ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ Ñ‚Ð° викориÑтаннÑ</u></b><br /> </p> <dl><dd>1. Створити та запуÑтити <a href="Modules/LogicLev.html" title="Special:MyLanguage/Modules/LogicLev">об'єкт логічного контролеру</a> або викориÑтати будь Ñкий наÑвний з потрібними влаÑтивоÑÑ‚Ñми плануваннÑ.</dd> <dd>2. Створити <a href="Modules/LogicLev.html" title="Special:MyLanguage/Modules/LogicLev">об'єкт логічного параметру</a> та обрати цей шаблон Ð´Ð»Ñ Ð½ÑŒÐ¾Ð³Ð¾. Ввімкнути параметр.</dd> <dd>3. У вкладці "ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ ÑˆÐ°Ð±Ð»Ð¾Ð½Ñƒ" об'єкту логічного параметру ви маєте вÑтановити: <ul><li> <i>Вхід</i> — <a href="DAQ.html#LogicLevLnks" title="Special:MyLanguage/Documents/DAQ">зв'Ñзати із джерелом "Ñирого" Ñигналу</a>.</li> <li> <i>Вхідна процедура обробки</i> — Ñформувати Ð´Ð»Ñ Ñкладної передобробки та повної генерації-імітації аналогового входу на внутрішній мові Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ OpenSCADA. Є необов'Ñзковою та має визначатиÑÑ Ð·Ð° Ñкладних випадків, наприклад:</li></ul> <dl><dd><ul><li> проÑта та прозора Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð½Ñ Ð¾Ð±Ñ€Ð¾Ð±ÐºÐ° з Ð¿Ñ€Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð²Ñ–Ð´Ñотків Ð½Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð”Ð‘Ð– до потужноÑÑ‚Ñ–, що можна виконати Ñ– за допомогою <b>iMult</b>:</li></ul></dd></dl></dd></dl> <div class="mw-highlight mw-content-ltr" dir="ltr" style="margin-left: 40pt"><pre><span class="k">in</span> <span class="o">=</span> <span class="mi">490</span><span class="o">*</span><span class="k">in</span><span class="sr">/100; /</span><span class="o">/</span><span class="nx">the</span> <span class="nx">UPS</span> <span class="nx">has</span> <span class="mi">480</span><span class="nx">W</span> </pre></div> <dl><dd><dl><dd><ul><li> Ñ€ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ Ð»Ñ–Ñ‡Ð¸Ð»ÑŒÐ½Ð¸ÐºÐ° вхідного Ñигналу — Ñпожитої електрики ДБЖ:</li></ul></dd></dl></dd></dl> <div class="mw-highlight mw-content-ltr" dir="ltr" style="margin-left: 40pt"><pre><span class="c1">//Checking for the data validity</span> <span class="k">if</span><span class="p">(</span><span class="nx">ctx</span><span class="p">.</span><span class="nx">cntr</span><span class="p">.</span><span class="nx">isEVal</span><span class="p">())</span> <span class="nx">ctx</span><span class="p">.</span><span class="nx">cntr</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="kd">var</span><span class="p">.</span><span class="nx">get</span><span class="p">();</span> <span class="k">if</span><span class="p">(</span><span class="o">!</span><span class="k">in</span><span class="p">.</span><span class="nx">isEVal</span><span class="p">())</span> <span class="p">{</span> <span class="nx">pUPS</span> <span class="o">=</span> <span class="mi">33</span><span class="p">;</span> <span class="k">if</span><span class="p">(</span><span class="nx">ctx</span><span class="p">.</span><span class="nx">cntr</span><span class="p">.</span><span class="nx">isEVal</span><span class="p">())</span> <span class="nx">ctx</span><span class="p">.</span><span class="nx">cntr</span> <span class="o">=</span> <span class="p">(</span><span class="nx">pUPS</span><span class="o">+</span><span class="k">in</span><span class="p">)</span><span class="o">/</span><span class="p">(</span><span class="mi">3600</span><span class="o">*</span><span class="nx">f_frq</span><span class="p">);</span> <span class="k">else</span> <span class="nx">ctx</span><span class="p">.</span><span class="nx">cntr</span> <span class="o">+=</span> <span class="p">(</span><span class="nx">pUPS</span><span class="o">+</span><span class="k">in</span><span class="p">)</span><span class="o">/</span><span class="p">(</span><span class="mi">3600</span><span class="o">*</span><span class="nx">f_frq</span><span class="p">);</span> <span class="p">}</span> <span class="c1">//Checking for the next month reset</span> <span class="nx">month</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="nx">SYS</span><span class="p">.</span><span class="nx">localtime</span><span class="p">(</span><span class="nx">SYS</span><span class="p">.</span><span class="nx">time</span><span class="p">(),</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="nx">month</span><span class="p">);</span> <span class="k">if</span><span class="p">(</span><span class="o">!</span><span class="nx">ctx</span><span class="p">.</span><span class="nx">month</span><span class="p">.</span><span class="nx">isEVal</span><span class="p">()</span> <span class="o">&&</span> <span class="nx">month</span> <span class="o">!=</span> <span class="nx">ctx</span><span class="p">.</span><span class="nx">month</span><span class="p">)</span> <span class="nx">ctx</span><span class="p">.</span><span class="nx">cntr</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="nx">ctx</span><span class="p">.</span><span class="nx">month</span> <span class="o">=</span> <span class="nx">month</span><span class="p">;</span> <span class="k">in</span> <span class="o">=</span> <span class="nx">ctx</span><span class="p">.</span><span class="nx">cntr</span><span class="p">;</span> </pre></div> <dl><dd><dl><dd><ul><li> генерації розширених порушень — обробка зовнішніх Ñигналів, пов'Ñзаних з джерелом:</li></ul></dd></dl></dd></dl> <div class="mw-highlight mw-content-ltr" dir="ltr" style="margin-left: 40pt"><pre><span class="nx">gO</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">cntr</span><span class="p">().</span><span class="nx">prm_grps</span><span class="p">;</span> <span class="k">if</span><span class="p">(</span><span class="nx">SYS</span><span class="p">.</span><span class="nx">DAQ</span><span class="p">.</span><span class="nx">JavaLikeCalc</span><span class="p">.</span><span class="nx">lib_aviary</span><span class="p">.</span><span class="nx">sensorError</span><span class="p">(</span><span class="nx">gO</span><span class="p">.</span><span class="nx">prm_generic</span><span class="p">.</span><span class="nx">PRG_Input_Err_T_room_S</span><span class="p">.</span><span class="nx">get</span><span class="p">(),</span><span class="nx">levErr</span><span class="p">,</span><span class="nx">tErr</span><span class="p">));</span> <span class="k">else</span> <span class="k">if</span><span class="p">(</span><span class="o">!</span><span class="p">(</span><span class="nx">tVl</span><span class="o">=</span><span class="nx">gO</span><span class="p">.</span><span class="nx">prm_alarms</span><span class="p">.</span><span class="nx">PRG_Alarm_T_max</span><span class="p">.</span><span class="nx">get</span><span class="p">()).</span><span class="nx">isEVal</span><span class="p">()</span> <span class="o">&&</span> <span class="nx">tVl</span><span class="p">)</span> <span class="nx">levErr</span> <span class="o">=</span> <span class="o">-</span><span class="mi">4</span><span class="p">,</span> <span class="nx">tErr</span> <span class="o">=</span> <span class="s2">"11:above the set limit"</span><span class="p">;</span> <span class="k">else</span> <span class="k">if</span><span class="p">(</span><span class="o">!</span><span class="p">(</span><span class="nx">tVl</span><span class="o">=</span><span class="nx">gO</span><span class="p">.</span><span class="nx">prm_alarms</span><span class="p">.</span><span class="nx">PRG_Alarm_T_min</span><span class="p">.</span><span class="nx">get</span><span class="p">()).</span><span class="nx">isEVal</span><span class="p">()</span> <span class="o">&&</span> <span class="nx">tVl</span><span class="p">)</span> <span class="nx">levErr</span> <span class="o">=</span> <span class="o">-</span><span class="mi">4</span><span class="p">,</span> <span class="nx">tErr</span> <span class="o">=</span> <span class="s2">"11:below the set limit"</span><span class="p">;</span> </pre></div> <dl><dd><ul><li> <i>Мінімум та макÑимум шкали модулÑ</i> — має вказуватиÑÑ Ñƒ випадку значного Ñ€Ð¾Ð·Ñ…Ð¾Ð´Ð¶ÐµÐ½Ð½Ñ Ð°Ð¿Ð°Ñ€Ð°Ñ‚Ð½Ð¾Ñ— шкали із загальною, наприклад:</li></ul> <dl><dd><ul><li> вхід Ñирий та вимірюєтьÑÑ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñм Ñтруму [4...20]мÐ, тобто тут треба вказати 4 та 20 мÐ;</li> <li> попередній випадок де треба проÑто та прозоро відкалібрувати покази — зразковим приладом задаємо 4мРта 20мРта вказуємо тут реальні вимірÑні Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ "Ñирого" Ñигналу.</li></ul></dd></dl> <ul><li> <i>Додаток та множник до входу</i> — викориÑтати Ð´Ð»Ñ Ð¿Ñ€Ð¾Ñтої лінійної корекції входу, наприклад:</li></ul> <dl><dd><ul><li> ÐºÐ°Ð»Ñ–Ð±Ñ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾ÐºÐ°Ð·Ñ–Ð², що менш прозоро та ці коефіцієнти мають вираховуватиÑÑ Ð·Ð° формулами:</li></ul> <dl><dd> <b>iAdd = ((plcMin*precMeasMax)/plcMax - precMeasMin)*(plcMax/(plcMax-plcMin))</b></dd> <dd> <b>iMult = (plcMax - plcMin) / (precMeasMax - precMeasMin)</b></dd></dl></dd></dl> <ul><li> <i>Дозволене Ð¿ÐµÑ€ÐµÐ²Ð¸Ñ‰ÐµÐ½Ð½Ñ ÑˆÐºÐ°Ð»Ð¸</i> — вÑтановити за потреби Ð¿ÐµÑ€ÐµÐ²Ð¸Ñ‰ÐµÐ½Ð½Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñм загальної шкали та коли Ñ†Ñ ÑˆÐºÐ°Ð»Ð° починає виконувати рекомендавчу функцію, Ñкажемо Ð´Ð»Ñ Ð¿Ð¾Ñ‡Ð°Ñ‚ÐºÐ¾Ð²Ð¾Ð³Ð¾ Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ñ–Ñторії у цій шкалі.</li> <li> <i>Ð†Ð¼Ñ–Ñ‚Ð°Ñ†Ñ–Ñ Ñ‚Ð° вхід імітації ПЛК</i> — визначити за потреби імітації входу згідно опиÑу у функціÑÑ….</li></ul></dd> <dd>4. РЕЗУЛЬТÐТ: ЗапуÑтивши об'єкт контролеру (де Ñтворено цей параметр) та Ñкщо він не був запущений, маємо отримати оперативні дані у вкладці "Ðтрибути", длÑ: змінної, Ñтану помилки; та генерацію порушень, Ñкщо Ñтан помилки ненульовий.</dd> <dd>5. У процеÑÑ– роботи, через вкладку оперативних даних "Ðтрибути", окрім Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ñ€ÐµÐ·ÑƒÐ»ÑŒÑ‚Ð°Ñ‚Ñƒ можна здійÑнювати оперативне Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚Ð° контроль щодо: <ul><li> <i>Шкала: мінімум та макÑимум</i> — Ñуворо <a class="image" href="http://oscada.org/wiki/File:At.png"><img alt="At.png" height="22" src="../en/files/At.png" width="22" /></a> вÑтановити у діапазон зміни даних за наÑвніÑÑ‚ÑŽ та відповідно до апаратної границі, інакше Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð±ÑƒÐ´Ðµ викривлене! За відÑутноÑÑ‚Ñ– апаратної границі цÑ, оÑновна границÑ, Ñ” довільною та дорадчою, хоча вихід Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð·Ð° неї також ÑупроводжуєтьÑÑ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñм.</li> <li> <i>Шкала: квадратична</i> — вÑтановити Ñкщо апаратна шкала квадратична.</li> <li> <i>Ð§Ð°Ñ Ñ„Ñ–Ð»ÑŒÑ‚Ñ€Ñƒ</i> — вÑтановити у Ñ‡Ð°Ñ Ñ„Ñ–Ð»ÑŒÑ‚Ñ€Ð°Ñ†Ñ–Ñ— Ð´Ð»Ñ Ð·Ð°ÑˆÑƒÐ¼Ð»ÐµÐ½Ð¸Ñ… Ñигналів.</li> <li> <i>Заміна: режим та змінна</i> — вÑтановити у потрібний режим підÑтановки-заміни Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð·Ð° недоÑтовірною змінною.</li> <li> <i>ÐŸÑ€Ð¸Ð´ÑƒÑˆÐµÐ½Ð½Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½ÑŒ</i> — вÑтановити за потреби повного Ð¿Ñ€Ð¸Ð´ÑƒÑˆÐµÐ½Ð½Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½ÑŒ параметру — вимкнути Ñ—Ñ… генерацію взагалі.</li> <li> <i>Затримка порушень</i> — вÑтановити Ñ‡Ð°Ñ Ð·Ð°Ñ‚Ñ€Ð¸Ð¼ÐºÐ¸ генерації порушеннÑ, Ð´Ð»Ñ Ð²Ð¸ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ñ‡Ð°Ñтої генерації, характерної Ð´Ð»Ñ Ð½ÐµÐ¿ÐµÐ²Ð½Ð¸Ñ… джерел даних, що відрізнÑÑŽÑ‚ÑŒÑÑ ÐºÐ¾Ñ€Ð¾Ñ‚ÐºÐ¾Ñ‡Ð°Ñною втратою зв'Ñзку.</li> <li> <i>Ð“Ñ€Ð°Ð½Ð¸Ñ†Ñ Ð²ÐµÑ€Ñ…Ð½Ñ/Ð½Ð¸Ð¶Ð½Ñ Ð°Ð²Ð°Ñ€Ñ–Ð¹Ð½Ð°/попереджувальна</i> — вÑтановити коли треба генерувати Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ð·Ð° виходом за аварійну/попереджувальну границі.</li> <li> <i>ГиÑÑ‚ÐµÑ€ÐµÐ·Ð¸Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ð³Ñ€Ð°Ð½Ð¸Ñ†ÑŒ</i> — вÑтановити у гіÑÑ‚ÐµÑ€ÐµÐ·Ð¸Ñ Ð·Ð½ÑÑ‚Ñ‚Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ, тобто знÑÑ‚Ñ‚Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ð²Ñ–Ð´Ð±ÑƒÐ²Ð°Ñ”Ñ‚ÑŒÑÑ Ð½Ð° вказаний відÑоток пізніше, щоб запобігти чаÑтій генерації за коливаннÑм Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð±Ñ–Ð»Ñ Ð³Ñ€Ð°Ð½Ð¸Ñ†Ñ–.</li> <li> <i>ШвидкіÑÑ‚ÑŒ зміни</i> — вÑтановити Ñкщо треба попереджати про швидку зміну значеннÑ.</li> <li> <i>Ðазва, ОпиÑ, ÐžÐ´Ð¸Ð½Ð¸Ñ†Ñ Ð²Ð¸Ð¼Ñ–Ñ€Ñƒ, ТочніÑÑ‚ÑŒ, Логарифмічна шкала</i> — вÑтановити за потреби такої інформації при відображені, або Ñк елементи паÑпорту.</li></ul></dd></dl> <p><br /> </p> <table class="wikitable"> <tr> <td> <span id="anUnifSt" title="#anUnifSt"><h3><span class="mw-headline" id=".D0.90.D0.BD.D0.B0.D0.BB.D0.BE.D0.B3.D0.BE.D0.B2.D0.B8.D0.B9_.D1.81.D0.B8.D0.B3.D0.BD.D0.B0.D0.BB.2C_.D1.83.D0.BD.D1.96.D1.84.D1.96.D0.BA.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B9.2C_.D1.81.D1.82.D0.B0.D0.BD.D0.B8_.D0.BF.D0.BE.D1.80.D1.83.D1.88.D0.B5.D0.BD.D1.8C_.28anUnifSt.29"><span class="mw-headline-number">1.2</span> Ðналоговий Ñигнал, уніфікований, Ñтани порушень (<a href="Libs_Main.html#anUnifSt" title="Special:MyLanguage/Libs/Main">anUnifSt</a>)</span></h3></span> </td> <td> 1.3 </td> <td> GPLv2 </td> <td> * </td> <td> en, uk, ru </td> <td> <a class="external" href="http://oscada.org/wiki/User:RomanSavochenko" title="User:RomanSavochenko">Роман Савоченко</a> </td></tr></table> <p>Загальний, предÑтавницький та уніфікований шаблон обробки аналогових вхідних Ñигналів, розширений бінарними Ñтанами індикації порушень. Шаблон заÑновано на базовому шаблоні "<a href="#anUnif">Ðналоговий Ñигнал, уніфікований</a>" з відповідною до нього предÑтавницькою Ñтруктурою та деÑкими відмінноÑÑ‚Ñми, характерними до незалежного розвитку та розширеннÑ. </p><p>Бінарні Ñтани передбачалоÑÑ Ð´Ð»Ñ Ð·Ñ€ÑƒÑ‡Ð½Ð¾Ð³Ð¾ викориÑÑ‚Ð°Ð½Ð½Ñ Ñƒ алгоритмах роботи за границÑми Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ð¾Ð±'єкту параметру, переважно у <a href="Modules/BlockCalc.html" title="Special:MyLanguage/Modules/BlockCalc">блокових Ñхемах</a> загальних алгоритмів керуваннÑ. </p><p><b><u>Функції</u></b><br /> Переважно відповідають базовому шаблону "<a href="#anUnif">Ðналоговий Ñигнал, уніфікований</a>" та додатково надаютьÑÑ Ð¾Ð·Ð½Ð°ÐºÐ¸ порушень границь: "H", "L", "HH", "LL", "EVAL". </p><p><b><u>Ð’Ð’ шаблону</u></b><br /> </p> <table class="wikitable"> <tr> <th> Ідентифікатор </th> <th> Ім'Ñ </th> <th> Тип </th> <th> Режим </th> <th> Ðтрибут </th> <th> ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ </th> <th> Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ </th></tr> <tr> <td colspan="7"> Ð’Ð’ шаблону "<a href="#anUnif">Ðналоговий Ñигнал, уніфікований</a>" </td></tr> <tr> <td> H </td> <td> ÐŸÐ¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ð²ÐµÑ€Ñ…Ð½ÑŒÐ¾Ñ— попереджув. границі </td> <td> Логічний </td> <td> Вихід </td> <td> Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td> Змінна </td> <td> </td></tr> <tr> <td> L </td> <td> ÐŸÐ¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ð½Ð¸Ð¶Ð½ÑŒÐ¾Ñ— попереджув. границі </td> <td> Логічний </td> <td> Вихід </td> <td> Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td> Змінна </td> <td> </td></tr> <tr> <td> HH </td> <td> ÐŸÐ¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ð²ÐµÑ€Ñ…Ð½ÑŒÐ¾Ñ— аварійної границі </td> <td> Логічний </td> <td> Вихід </td> <td> Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td> Змінна </td> <td> </td></tr> <tr> <td> LL </td> <td> ÐŸÐ¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ð½Ð¸Ð¶Ð½ÑŒÐ¾Ñ— аварійної границі </td> <td> Логічний </td> <td>Вихід </td> <td> Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td> Змінна </td> <td> </td></tr> <tr> <td> EVAL </td> <td> Помилка Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ </td> <td> Логічний </td> <td> Вихід </td> <td> Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td> Змінна </td> <td> </td></tr></table> <p><b><u>ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ Ñ‚Ð° викориÑтаннÑ</u></b><br /> ПовніÑÑ‚ÑŽ ідентичне базовому "<a href="#anUnif">Ðналоговий Ñигнал, уніфікований</a>" за відмінніÑÑ‚ÑŽ викориÑÑ‚Ð°Ð½Ð½Ñ Ð¾Ð·Ð½Ð°Ðº порушень границь: "H", "L", "HH", "LL", "EVAL"; на Ñкі можна під'єднуватиÑÑ Ñ–Ð· зовнішніх обчиÑлень. </p><p><br /> </p> <table class="wikitable"> <tr> <td> <span id="manInUnif" title="#manInUnif"><h3><span class="mw-headline" id=".D0.A0.D1.83.D1.87.D0.BD.D0.B8.D0.B9_.D0.B2.D0.B2.D1.96.D0.B4.2C_.D1.83.D0.BD.D1.96.D1.84.D1.96.D0.BA.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B9_.28manInUnif.29"><span class="mw-headline-number">1.3</span> Ручний ввід, уніфікований (<a href="Libs_Main.html#manInUnif" title="Special:MyLanguage/Libs/Main">manInUnif</a>)</span></h3></span> </td> <td> 1.2 </td> <td> GPLv2 </td> <td> * </td> <td> en, uk, ru </td> <td> <a class="external" href="http://oscada.org/wiki/User:RomanSavochenko" title="User:RomanSavochenko">Роман Савоченко</a> </td></tr></table> <div class="floatright"><a class="image" href="http://oscada.org/wiki/File:LibsMainManInUnifOp_uk.png" title="Результат та оперативні налаштуваннÑ."><img alt="Результат та оперативні налаштуваннÑ." height="679" src="files/LibsMainManInUnifOp_uk.png" width="382" /></a></div> <p>Загальний, предÑтавницький та уніфікований шаблон ручного вводу та Ñигналу аналогового виходу. Шаблон формує Ñтруктуру параметру (Ñкладного тегу) ручного вводу, Ñкий може бути легко підключений до більшоÑÑ‚Ñ– віджетів та кадрів <a href="Libs_Main_graphical_elements.html" title="Special:MyLanguage/Libs/Main graphical elements">бібліотеки оÑновних елементів інтерфейÑу кориÑтувача</a> проÑто вказавши об'єкт параметру, контроль переважно можна здійÑнювати через панель контролю <a href="Libs_Main_graphical_elements.html#ElCadr" title="Special:MyLanguage/Libs/Main graphical elements">Елемент кадр</a>. </p><p>ПредÑтавницькою Ñтруктурою параметру (Ñкладного тегу) ручного вводу Ñ”: </p> <ul><li> "Змінна (<b>var</b>)" — кінцева змінна параметру — інженерне реальне значеннÑ, доÑтупне та придатне до архівації.</li> <li> "Ð’Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð·Ð¼Ñ–Ð½Ð½Ð¾Ñ— (<b>varIn</b>)" — атрибут Ð²Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ інженерного значеннÑ, Ñкий надалі потраплÑÑ” до змінної.</li> <li> "Помилка (<b>err</b>)" — обов'Ñзковий атрибут будь Ñкого параметру, що міÑтить комбінацію коду помилки та короткого опиÑу, на кшталт "2:Ðемає даних або Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð´Ð¾ джерела". Шаблон резервує наÑтупні коди помилок: <ul><li> <b>1, 2</b> — помилки обладнаннÑ, коли дані переважно помилкові;</li> <li> <b>3, 4</b> — помилки аварійної границі;</li> <li> <b>5, 6</b> — помилки попереджувальної границі;</li> <li> <b>7</b> — помилка швидкоÑÑ‚Ñ– зміни змінної.</li></ul></li> <li> "ÐŸÑ€Ð¸Ð´ÑƒÑˆÐµÐ½Ð½Ñ (<b>alSup</b>) та затримка (<b>alDelay</b>) порушень" — загальний контроль порушень щодо Ð¿Ñ€Ð¸Ð´ÑƒÑˆÐµÐ½Ð½Ñ Ñ‚Ð° затримки.</li> <li> "Шкала: мінімум (<b>min</b>)" та "Шкала: макÑимум (<b>max</b>)" — головна шкала кінцевої змінної, вихід за Ñку призводить до помилки апаратної границі. Шкала також викориÑтовуєтьÑÑ Ñк шкала Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ñ‚Ñ€ÐµÐ½Ð´Ñƒ змінної на графіках.</li> <li> "Логарифмічна шкала (<b>log</b>)" — ознака Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ñ‚Ñ€ÐµÐ½Ð´Ñƒ змінної на графіках у логарифмічній шкалі.</li> <li> "ÐžÐ´Ð¸Ð½Ð¸Ñ†Ñ Ð²Ð¸Ð¼Ñ–Ñ€Ñƒ (<b>ed</b>)" — Ð¾Ð´Ð¸Ð½Ð¸Ñ†Ñ Ð²Ð¸Ð¼Ñ–Ñ€Ñƒ змінної.</li> <li> "ТочніÑÑ‚ÑŒ (<b>prec</b>)" — кількіÑÑ‚ÑŒ знаків піÑÐ»Ñ ÐºÑ€Ð°Ð¿ÐºÐ¸, Ð´Ð»Ñ Ð¿Ð¾Ð·Ð¸Ñ‚Ð¸Ð²Ð½Ð¸Ñ… значень, та точніÑÑ‚ÑŒ (знаків загалом), Ð´Ð»Ñ Ð½ÐµÐ³Ð°Ñ‚Ð¸Ð²Ð½Ð¸Ñ…, Ð´Ð»Ñ Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ñ€ÐµÐ°Ð»ÑŒÐ½Ð¾Ñ— кінцевої змінної на екрані.</li></ul> <p>Значні графічні образи предÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ñтруктури: </p> <ul><li> <a href="Libs_Main_graphical_elements.html" title="Special:MyLanguage/Libs/Main graphical elements">Бібліотека оÑновних елементів інтерфейÑу кориÑтувача</a>: <ul><li> <a href="Libs_Main_graphical_elements.html#ElCadr" title="Special:MyLanguage/Libs/Main graphical elements">Елемент кадр</a></li></ul></li></ul> <p><b><u>Функції</u></b><br /> </p> <ul><li> Загальне Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð°Ð½Ð°Ð»Ð¾Ð³Ð¾Ð²Ð¾Ð³Ð¾ входу щодо:</li></ul> <dl><dd><ul><li> проÑта корекціÑ-ÐºÐ°Ð»Ñ–Ð±Ñ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð° формулою "<b>in</b> = <b>iMult</b>*(<b>in</b>+<b>iAdd</b>)";</li> <li> маÑÑˆÑ‚Ð°Ð±ÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ñ–Ð´ апаратної границі [<b>plcMin</b>...<b>plcMax</b>] у головну границю [<b>min</b>...<b>max</b>], враховуючи квадратичну шкалу <b>scSqr</b>;</li></ul> <dl><dd> <a class="image" href="http://oscada.org/wiki/File:At.png"><img alt="At.png" height="22" src="../en/files/At.png" width="22" /></a> Ðпаратні границі може бути інвертовано та взагалі вимкнено однаковими значеннÑми макÑимуму та мінімуму, коли викориÑтовуєтьÑÑ Ñ‚Ñ–Ð»ÑŒÐºÐ¸ головна шкала.</dd></dl> <ul><li> дозвіл на Ð¿ÐµÑ€ÐµÐ²Ð¸Ñ‰ÐµÐ½Ð½Ñ Ð³Ñ€Ð°Ð½Ð¸Ñ†Ñ– вхідним значеннÑм на величину <b>plcExcess</b> відÑотків;</li> <li> Ñ„Ñ–Ð»ÑŒÑ‚Ñ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð¼Ñ–Ð½Ð¸ вхідного Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð½Ð° Ñ‡Ð°Ñ <b>Tf</b>.</li></ul></dd></dl> <ul><li> ÐžÐ¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ ÐºÑ–Ð½Ñ†ÐµÐ²Ð¾Ñ— змінної <b>var</b> на предмет Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ð´ÐµÑких границь та критеріїв, генеруючи аварії та відповідно вÑтановлюючи атрибут <b>err</b>. Границі аварії можуть мати деÑкий гіÑÑ‚ÐµÑ€ÐµÐ·Ð¸Ñ <b>HystBnd</b>, можуть бути затримані на Ñ‡Ð°Ñ <b>alDelay</b> та можуть бути придушені вÑтановленнÑм <b>alSup</b>. ÐадаютьÑÑ Ð½Ð°Ñтупні границі та критерії:</li></ul> <dl><dd><ul><li> відÑутніÑÑ‚ÑŒ даних або Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð´Ð¾ джерела за вхідним значеннÑм EVAL — код помилки 1 та рівень аварії 5;</li> <li> Ð¿ÐµÑ€ÐµÐ²Ð¸Ñ‰ÐµÐ½Ð½Ñ Ð°Ð¿Ð°Ñ€Ð°Ñ‚Ð½Ð¾Ñ— границі вхідним значеннÑм — код помилки 1,2 та рівень аварії 5;</li> <li> Ð¿ÐµÑ€ÐµÐ²Ð¸Ñ‰ÐµÐ½Ð½Ñ Ð°Ð²Ð°Ñ€Ñ–Ð¹Ð½Ð¾Ñ— границі кінцевою змінною [<b>aMin</b>...<b>aMax</b>] — код помилки 3,4 та рівень аварії 4;</li></ul> <dl><dd> <a class="image" href="http://oscada.org/wiki/File:At.png"><img alt="At.png" height="22" src="../en/files/At.png" width="22" /></a> ВимикаєтьÑÑ Ð²ÑтановленнÑм однакових або інверÑних значень границі</dd></dl> <ul><li> Ð¿ÐµÑ€ÐµÐ²Ð¸Ñ‰ÐµÐ½Ð½Ñ Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÑƒÐ²Ð°Ð»ÑŒÐ½Ð¾Ñ— границі кінцевою змінною [<b>wMin</b>...<b>wMax</b>] — код помилки 5,6 та рівень аварії 2;</li></ul> <dl><dd> <a class="image" href="http://oscada.org/wiki/File:At.png"><img alt="At.png" height="22" src="../en/files/At.png" width="22" /></a> ВимикаєтьÑÑ Ð²ÑтановленнÑм однакових або інверÑних значень границі</dd></dl> <ul><li> велика швидкіÑÑ‚ÑŒ зміни <b>speed</b> кінцевої змінної — код помилки 7 та рівень аварії 2.</li></ul></dd></dl> <ul><li> Зворотне Ð¿ÐµÑ€ÐµÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð²Ð²ÐµÐ´ÐµÐ½Ð¾Ð³Ð¾ інженерного Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð·Ð¼Ñ–Ð½Ð½Ð¾Ñ— та Ð·Ð°Ð¿Ð¸Ñ Ñƒ вихід.</li></ul> <dl><dd> <a class="image" href="http://oscada.org/wiki/File:At.png"><img alt="At.png" height="22" src="../en/files/At.png" width="22" /></a> За відÑутноÑÑ‚Ñ– Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ "Входу/Виходу" запиÑу не здійÑнюєтьÑÑ Ñ‚Ð° відбуваєтьÑÑ Ð°Ð²Ñ‚Ð¾Ð½Ð¾Ð¼Ð½Ð° робота.</dd></dl> <p><b><u>Ð’Ð’ шаблону</u></b><br /> </p> <table class="wikitable"> <tr> <th> Ідентифікатор </th> <th> Ім'Ñ </th> <th> Тип </th> <th> Режим </th> <th> Ðтрибут </th> <th> ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ </th> <th> Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ </th></tr> <tr> <td> inout </td> <td> Вхід/Вихід </td> <td> Реальний </td> <td> Вихід </td> <td> Ðе атрибут </td> <td> Зв'Ñзок </td> <td> Parameter|var </td></tr> <tr> <td> var </td> <td> Змінна </td> <td> Реальний </td> <td> Вхід </td> <td> Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> varIn </td> <td> Ð’Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð·Ð¼Ñ–Ð½Ð½Ð¾Ñ— </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> ed </td> <td> ÐžÐ´Ð¸Ð½Ð¸Ñ†Ñ Ð²Ð¸Ð¼Ñ–Ñ€Ñƒ </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> </td></tr> <tr> <td> min </td> <td> Шкала: мінімум </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> max </td> <td> Шкала: макÑимум </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 100 </td></tr> <tr> <td> scSqr </td> <td> Шкала: квадратична </td> <td> Логічний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> alSup </td> <td> ÐŸÑ€Ð¸Ð´ÑƒÑˆÐµÐ½Ð½Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½ÑŒ </td> <td> Логічний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> alDelay </td> <td> Затримка порушень, Ñекунди </td> <td> Логічний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> </td></tr> <tr> <td> aMin </td> <td> Ð“Ñ€Ð°Ð½Ð¸Ñ†Ñ Ð½Ð¸Ð¶Ð½Ñ Ð°Ð²Ð°Ñ€Ñ–Ð¹Ð½Ð° </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> aMax </td> <td> Ð“Ñ€Ð°Ð½Ð¸Ñ†Ñ Ð²ÐµÑ€Ñ…Ð½Ñ Ð°Ð²Ð°Ñ€Ñ–Ð¹Ð½Ð° </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> wMin </td> <td> Ð“Ñ€Ð°Ð½Ð¸Ñ†Ñ Ð½Ð¸Ð¶Ð½Ñ Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÑƒÐ². </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> wMax </td> <td> Ð“Ñ€Ð°Ð½Ð¸Ñ†Ñ Ð²ÐµÑ€Ñ…Ð½Ñ Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÑƒÐ². </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> HystBnd </td> <td> ГиÑÑ‚ÐµÑ€ÐµÐ·Ð¸Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ð³Ñ€Ð°Ð½Ð¸Ñ†ÑŒ </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 1 </td></tr> <tr> <td> speed </td> <td> ШвидкіÑÑ‚ÑŒ зміни, %/цикл </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> prec </td> <td> ТочніÑÑ‚ÑŒ, знаків </td> <td> Цілий </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 2 </td></tr> <tr> <td> log </td> <td> Логарифмічна шкала </td> <td> Логічний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> Tf </td> <td> Ð§Ð°Ñ Ñ„Ñ–Ð»ÑŒÑ‚Ñ€Ñƒ, Ñекунд </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> iAdd </td> <td> Додаток до входу </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> 0 </td></tr> <tr> <td> iMult </td> <td> Множник входу </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> 1 </td></tr> <tr> <td> plcMin </td> <td> Мінімум шкали Ð¼Ð¾Ð´ÑƒÐ»Ñ </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> 0 </td></tr> <tr> <td> plcMax </td> <td> МакÑимум шкали Ð¼Ð¾Ð´ÑƒÐ»Ñ </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> 0 </td></tr> <tr> <td> plcExcess </td> <td> Дозволене Ð¿ÐµÑ€ÐµÐ²Ð¸Ñ‰ÐµÐ½Ð½Ñ ÑˆÐºÐ°Ð»Ð¸, % </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> 0 </td></tr> <tr> <td> this </td> <td> Об'єкт </td> <td> Об'єкт </td> <td> Вихід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> SHIFR </td> <td> Шифр </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> NAME </td> <td> Ім'Ñ </td> <td> Ð Ñдок (переклад) </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> DESCR </td> <td> ÐžÐ¿Ð¸Ñ </td> <td> ТекÑÑ‚ (переклад) </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> f_err </td> <td> Помилка функції </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_frq </td> <td> ЧаÑтота обчиÑÐ»ÐµÐ½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ—, Гц </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 1000 </td></tr> <tr> <td> f_start </td> <td> Прапорець запуÑку функції </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_stop </td> <td> Прапорець зупинки функції </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr></table> <div class="floatright"><a class="image" href="http://oscada.org/wiki/File:LibsMainManInUnifCfg_uk.png" title="КонфігураціÑ."><img alt="КонфігураціÑ." height="298" src="files/LibsMainManInUnifCfg_uk.png" width="439" /></a></div> <p><b><u>ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ Ñ‚Ð° викориÑтаннÑ</u></b><br /> </p> <dl><dd>1. Створити та запуÑтити <a href="Modules/LogicLev.html" title="Special:MyLanguage/Modules/LogicLev">об'єкт логічного контролеру</a> або викориÑтати будь Ñкий наÑвний з потрібними влаÑтивоÑÑ‚Ñми плануваннÑ.</dd> <dd>2. Створити <a href="Modules/LogicLev.html" title="Special:MyLanguage/Modules/LogicLev">об'єкт логічного параметру</a> та обрати цей шаблон Ð´Ð»Ñ Ð½ÑŒÐ¾Ð³Ð¾. Ввімкнути параметр.</dd> <dd>3. У вкладці "ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ ÑˆÐ°Ð±Ð»Ð¾Ð½Ñƒ" об'єкту логічного параметру ви маєте вÑтановити: <ul><li> <i>Вхід/Вихід</i> — <a href="DAQ.html#LogicLevLnks" title="Special:MyLanguage/Documents/DAQ">зв'Ñзати із джерелом "Ñирого" Ñигналу Ð’Ð’</a>, або не прив'Ñзувати Ð´Ð»Ñ Ð°Ð²Ñ‚Ð¾Ð½Ð¾Ð¼Ð½Ð¾Ð³Ð¾ режиму.</li> <li> <i>Мінімум та макÑимум шкали модулÑ</i> — має вказуватиÑÑ Ñƒ випадку значного Ñ€Ð¾Ð·Ñ…Ð¾Ð´Ð¶ÐµÐ½Ð½Ñ Ð°Ð¿Ð°Ñ€Ð°Ñ‚Ð½Ð¾Ñ— шкали із загальною, Ð´Ð»Ñ Ð¿Ñ€Ð¸ÐºÐ»Ð°Ð´Ñƒ дивітьÑÑ ÑˆÐ°Ð±Ð»Ð¾Ð½ "<a href="#anUnif">Ðналоговий Ñигнал, уніфікований</a>".</li> <li> <i>Додаток та множник до входу</i> — викориÑтати Ð´Ð»Ñ Ð¿Ñ€Ð¾Ñтої лінійної корекції входу, Ð´Ð»Ñ Ð¿Ñ€Ð¸ÐºÐ»Ð°Ð´Ñƒ дивітьÑÑ ÑˆÐ°Ð±Ð»Ð¾Ð½ "<a href="#anUnif">Ðналоговий Ñигнал, уніфікований</a>".</li> <li> <i>Дозволене Ð¿ÐµÑ€ÐµÐ²Ð¸Ñ‰ÐµÐ½Ð½Ñ ÑˆÐºÐ°Ð»Ð¸</i> — вÑтановити за потреби Ð¿ÐµÑ€ÐµÐ²Ð¸Ñ‰ÐµÐ½Ð½Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñм загальної шкали та коли Ñ†Ñ ÑˆÐºÐ°Ð»Ð° починає виконувати рекомендавчу функцію, Ñкажемо Ð´Ð»Ñ Ð¿Ð¾Ñ‡Ð°Ñ‚ÐºÐ¾Ð²Ð¾Ð³Ð¾ Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ñ–Ñторії у цій шкалі.</li></ul></dd> <dd>4. РЕЗУЛЬТÐТ: ЗапуÑтивши об'єкт контролеру (де Ñтворено цей параметр) та Ñкщо він не був запущений, маємо отримати оперативні дані у вкладці "Ðтрибути", длÑ: змінної, Ñтану помилки; та генерацію порушень, Ñкщо Ñтан помилки ненульовий; та він буде доÑтупний до вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð½Ð¾Ð²Ð¸Ñ… значень.</dd> <dd>5. У процеÑÑ– роботи, через вкладку оперативних даних "Ðтрибути", окрім Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ñ€ÐµÐ·ÑƒÐ»ÑŒÑ‚Ð°Ñ‚Ñƒ можна здійÑнювати оперативне Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚Ð° контроль щодо: <ul><li> <i>Шкала: мінімум та макÑимум</i> — Ñуворо <a class="image" href="http://oscada.org/wiki/File:At.png"><img alt="At.png" height="22" src="../en/files/At.png" width="22" /></a> вÑтановити у діапазон зміни даних за наÑвніÑÑ‚ÑŽ та відповідно до апаратної границі, інакше Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð±ÑƒÐ´Ðµ викривлене! За відÑутноÑÑ‚Ñ– апаратної границі цÑ, оÑновна границÑ, Ñ” довільною та дорадчою, хоча вихід Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð·Ð° неї також ÑупроводжуєтьÑÑ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñм.</li> <li> <i>Шкала: квадратична</i> — вÑтановити Ñкщо апаратна шкала квадратична.</li> <li> <i>Ð§Ð°Ñ Ñ„Ñ–Ð»ÑŒÑ‚Ñ€Ñƒ</i> — вÑтановити у Ñ‡Ð°Ñ Ñ„Ñ–Ð»ÑŒÑ‚Ñ€Ð°Ñ†Ñ–Ñ— Ð´Ð»Ñ Ð·Ð°ÑˆÑƒÐ¼Ð»ÐµÐ½Ð¸Ñ… Ñигналів.</li> <li> <i>ÐŸÑ€Ð¸Ð´ÑƒÑˆÐµÐ½Ð½Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½ÑŒ</i> — вÑтановити за потреби повного Ð¿Ñ€Ð¸Ð´ÑƒÑˆÐµÐ½Ð½Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½ÑŒ параметру — вимкнути Ñ—Ñ… генерацію взагалі.</li> <li> <i>Затримка порушень</i> — вÑтановити Ñ‡Ð°Ñ Ð·Ð°Ñ‚Ñ€Ð¸Ð¼ÐºÐ¸ генерації порушеннÑ, Ð´Ð»Ñ Ð²Ð¸ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ñ‡Ð°Ñтої генерації, характерної Ð´Ð»Ñ Ð½ÐµÐ¿ÐµÐ²Ð½Ð¸Ñ… джерел даних, що відрізнÑÑŽÑ‚ÑŒÑÑ ÐºÐ¾Ñ€Ð¾Ñ‚ÐºÐ¾Ñ‡Ð°Ñною втратою зв'Ñзку.</li> <li> <i>Ð“Ñ€Ð°Ð½Ð¸Ñ†Ñ Ð²ÐµÑ€Ñ…Ð½Ñ/Ð½Ð¸Ð¶Ð½Ñ Ð°Ð²Ð°Ñ€Ñ–Ð¹Ð½Ð°/попереджувальна</i> — вÑтановити коли треба генерувати Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ð·Ð° виходом за аварійну/попереджувальну границі.</li> <li> <i>ГиÑÑ‚ÐµÑ€ÐµÐ·Ð¸Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ð³Ñ€Ð°Ð½Ð¸Ñ†ÑŒ</i> — вÑтановити у гіÑÑ‚ÐµÑ€ÐµÐ·Ð¸Ñ Ð·Ð½ÑÑ‚Ñ‚Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ, тобто знÑÑ‚Ñ‚Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ð²Ñ–Ð´Ð±ÑƒÐ²Ð°Ñ”Ñ‚ÑŒÑÑ Ð½Ð° вказаний відÑоток пізніше, щоб запобігти чаÑтій генерації за коливаннÑм Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð±Ñ–Ð»Ñ Ð³Ñ€Ð°Ð½Ð¸Ñ†Ñ–.</li> <li> <i>ШвидкіÑÑ‚ÑŒ зміни</i> — вÑтановити Ñкщо треба попереджати про швидку зміну значеннÑ.</li> <li> <i>Ðазва, ОпиÑ, ÐžÐ´Ð¸Ð½Ð¸Ñ†Ñ Ð²Ð¸Ð¼Ñ–Ñ€Ñƒ, ТочніÑÑ‚ÑŒ (знаків), Логарифмічна шкала</i> — вÑтановити за потреби такої інформації при відображені, або Ñк елементи паÑпорту.</li></ul></dd></dl> <p><br /> </p> <table class="wikitable"> <tr> <td> <span id="digitBlockUnif" title="#digitBlockUnif"><h3><span class="mw-headline" id=".D0.94.D0.B8.D1.81.D0.BA.D1.80.D0.B5.D1.82.D0.BD.D0.B8.D0.B9_.D0.B1.D0.BB.D0.BE.D0.BA.2C_.D1.83.D0.BD.D1.96.D1.84.D1.96.D0.BA.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B9_.28digitBlockUnif.29"><span class="mw-headline-number">1.4</span> ДиÑкретний блок, уніфікований (<a href="Libs_Main.html#digitBlockUnif" title="Special:MyLanguage/Libs/Main">digitBlockUnif</a>)</span></h3></span> </td> <td> 1.0 </td> <td> GPLv2 </td> <td> * </td> <td> en, uk, ru </td> <td> <a class="external" href="http://oscada.org/wiki/User:RomanSavochenko" title="User:RomanSavochenko">Роман Савоченко</a> </td></tr></table> <div class="floatright"><a class="image" href="http://oscada.org/wiki/File:LibsMainDigitBlockUnifOp_uk.png" title="Результат та оперативні налаштуваннÑ."><img alt="Результат та оперативні налаштуваннÑ." height="346" src="files/LibsMainDigitBlockUnifOp_uk.png" width="308" /></a></div> <p>Загальний, предÑтавницький та уніфікований шаблон блоку Ð¿Ð¾Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð´Ð¸Ñкретних параметрів у приÑтрій загального контролю. Шаблон формує Ñтруктуру диÑкретного параметру-блоку (Ñкладного тегу) Ñкий може бути легко підключений до більшоÑÑ‚Ñ– віджетів та кадрів <a href="Libs_Main_graphical_elements.html" title="Special:MyLanguage/Libs/Main graphical elements">бібліотеки оÑновних елементів інтерфейÑу кориÑтувача</a> проÑто вказавши об'єкт параметру. </p><p>ПредÑтавницькою Ñтруктурою диÑкретного параметру (Ñкладного тегу) Ñ” об'єкт заÑувки із характерними двома Ñтанами та трьома командами, Ñкі у кінцевому предÑтавленні можуть мати інше Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ‚Ð° назву: </p> <ul><li> "Стан "Відкрито" (<b>st_open</b>)" — Ñтан заÑувки "Відкрито". Є первинним Ñигналом Ñтану, Ñкий може викориÑтовуватиÑÑ Ð±ÐµÐ· наÑтупного, коли <b>1 (true)</b> — "Відкрито", а <b>0 (false)</b> — "Закрито".</li> <li> "Стан "Закрито" (<b>st_close</b>)" — Ñтан заÑувки "Відкрито".</li> <li> "Команда "Відкрити" (<b>com</b>)" — команда заÑувки "Відкрити". Є первинним Ñигналом команди, Ñкий може викориÑтовуватиÑÑ Ð±ÐµÐ· наÑтупного, коли <b>1 (true)</b> — "Відкрити", а <b>0 (false)</b> — "Закрити".</li> <li> "Команда "Закрити" (<b>close</b>)" — команда заÑувки "Закрити".</li> <li> "Команда "Зупинити" (<b>stop</b>)" — команда заÑувки "Зупинити".</li></ul> <p>Значні графічні образи предÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ñтруктури: </p> <ul><li> <a href="Libs_Main_graphical_elements.html" title="Special:MyLanguage/Libs/Main graphical elements">Бібліотека оÑновних елементів інтерфейÑу кориÑтувача</a>: <ul><li> <a href="Libs_Main_graphical_elements.html#TextLab" title="Special:MyLanguage/Libs/Main graphical elements">ТекÑтова мітка</a></li> <li> <a href="Libs_Main_graphical_elements.html#ImgLab" title="Special:MyLanguage/Libs/Main graphical elements">Мітка зображеннÑм</a></li> <li> <a href="Libs_Main_graphical_elements.html#ElViewGraph" title="Special:MyLanguage/Libs/Main graphical elements">Елемент групи графіків</a></li> <li> <a href="Libs_Main_graphical_elements.html#ElCadr" title="Special:MyLanguage/Libs/Main graphical elements">Елемент кадр</a></li> <li> <a href="Libs_Main_graphical_elements.html#cntrPaspExt" title="Special:MyLanguage/Libs/Main graphical elements">ПаÑпорт, розширений</a></li></ul></li> <li> <a href="Libs_Mnemo_elements.html" title="Special:MyLanguage/Libs/Mnemo elements">Бібліотека елементів мнемоÑхем інтерфейÑу кориÑтувача</a>: <ul><li> <a href="Libs_Mnemo_elements.html#El_Alarm" title="Special:MyLanguage/Libs/Mnemo elements">СигналізаціÑ</a></li> <li> <a href="Libs_Mnemo_elements.html#discrApps" title="Special:MyLanguage/Libs/Mnemo elements">ДиÑкретні апарати</a></li></ul></li> <li> <a href="Libs_Electrical_elements.html" title="Special:MyLanguage/Libs/Electrical elements">Бібліотека електричних елементів кориÑтувацького інтерфейÑу</a>: <ul><li> <a href="Libs_Electrical_elements.html#ActualActive" title="Special:MyLanguage/Libs/Electrical elements">Ключ, уніфікований</a></li> <li> <a href="Libs_Electrical_elements.html#ActualActive" title="Special:MyLanguage/Libs/Electrical elements">Перемикач, уніфікований</a></li> <li> <a href="Libs_Electrical_elements.html#ActualActive" title="Special:MyLanguage/Libs/Electrical elements">Загальний Ñтан, уніфікований</a></li> <li> <a href="Libs_Electrical_elements.html#ActualActive" title="Special:MyLanguage/Libs/Electrical elements">Стан облаÑÑ‚Ñ–, уніфікований</a></li></ul></li></ul> <p><b><u>Функції</u></b><br /> </p> <ul><li> ПрÑме отриманнÑ, за поÑиланнÑм, двох Ñтанів (тільки читаннÑ) та трьох команд (Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ñ‚Ð° запиÑ).</li> <li> МожливіÑÑ‚ÑŒ ÑƒÑ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¸ протÑгом визначеного чаÑу та знÑÑ‚Ñ‚Ñ Ñ—Ñ….</li> <li> МожливіÑÑ‚ÑŒ Ð¿ÐµÑ€ÐµÐ²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñтанів та команд <a href="Libs_Main_graphical_elements.html" title="Special:MyLanguage/Libs/Main graphical elements">відповідним налаштуваннÑм елементів інтерфейÑу</a>, Ñк то <i>digStts</i>, Ð´Ð»Ñ ÑтатуÑів, та <i>digComs</i>, Ð´Ð»Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´.</li></ul> <p><b><u>Ð’Ð’ шаблону</u></b><br /> </p> <table class="wikitable"> <tr> <th> Ідентифікатор </th> <th> Ім'Ñ </th> <th> Тип </th> <th> Режим </th> <th> Ðтрибут </th> <th> ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ </th> <th> Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ </th></tr> <tr> <td> com </td> <td> Команда "Відкрити" </td> <td> Логічний </td> <td> Вихід </td> <td> Повний доÑтуп </td> <td> Зв'Ñзок </td> <td> Кран|com </td></tr> <tr> <td> close </td> <td> Команда "Закрити" </td> <td> Логічний </td> <td> Вихід </td> <td> Повний доÑтуп </td> <td> Зв'Ñзок </td> <td> Кран|close </td></tr> <tr> <td> stop </td> <td> Команда "Зупинити" </td> <td> Логічний </td> <td> Вихід </td> <td> Повний доÑтуп </td> <td> Зв'Ñзок </td> <td> Кран|stop </td></tr> <tr> <td> st_open </td> <td> Стан "Відкрито" </td> <td> Логічний </td> <td> Вхід </td> <td> Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td> Зв'Ñзок </td> <td> Кран|st_open </td></tr> <tr> <td> st_close </td> <td> Стан "Закрито" </td> <td> Логічний </td> <td> Вхід </td> <td> Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td> Зв'Ñзок </td> <td> Кран|st_close </td></tr> <tr> <td> tCmd </td> <td> Ð§Ð°Ñ ÑƒÑ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¸, Ñекунди </td> <td> Цілий </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> 5 </td></tr> <tr> <td> last_cmd </td> <td> ОÑÑ‚Ð°Ð½Ð½Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð° </td> <td> Цілий </td> <td> Вихід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> w_tm </td> <td> Лічильник обробки команди </td> <td> Реальний </td> <td> Вихід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_err </td> <td> Помилка функції </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_frq </td> <td> ЧаÑтота обчиÑÐ»ÐµÐ½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ—, Гц </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 1000 </td></tr> <tr> <td> f_start </td> <td> Прапорець запуÑку функції </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_stop </td> <td> Прапорець зупинки функції </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr></table> <div class="floatright"><a class="image" href="http://oscada.org/wiki/File:LibsMainDigitBlockUnifCfg_uk.png" title="КонфігураціÑ."><img alt="КонфігураціÑ." height="298" src="files/LibsMainDigitBlockUnifCfg_uk.png" width="403" /></a></div> <p><b><u>ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ Ñ‚Ð° викориÑтаннÑ</u></b><br /> </p> <dl><dd>1. Створити та запуÑтити <a href="Modules/LogicLev.html" title="Special:MyLanguage/Modules/LogicLev">об'єкт логічного контролеру</a> або викориÑтати будь Ñкий наÑвний з потрібними влаÑтивоÑÑ‚Ñми плануваннÑ.</dd> <dd>2. Створити <a href="Modules/LogicLev.html" title="Special:MyLanguage/Modules/LogicLev">об'єкт логічного параметру</a> та обрати цей шаблон Ð´Ð»Ñ Ð½ÑŒÐ¾Ð³Ð¾. Ввімкнути параметр.</dd> <dd>3. У вкладці "ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ ÑˆÐ°Ð±Ð»Ð¾Ð½Ñƒ" об'єкту логічного параметру ви маєте вÑтановити: <ul><li> Ð’ÑÑ– Ñтани та команди — <a href="DAQ.html#LogicLevLnks" title="Special:MyLanguage/Documents/DAQ">зв'Ñзати із джерелом "Ñирого" Ñигналу</a>.</li> <li> <i>Ð§Ð°Ñ ÑƒÑ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¸, Ñекунди</i> — вÑтановити у потрібне Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ ÑƒÑ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð°Ð±Ð¾ у 0 Ð´Ð»Ñ Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ñ†Ñ–Ñ”Ñ— функції.</li></ul></dd> <dd>4. РЕЗУЛЬТÐТ: ЗапуÑтивши об'єкт контролеру (де Ñтворено цей параметр) та Ñкщо він не був запущений, маємо отримати оперативні дані у вкладці "Ðтрибути", длÑ: Ñтанів та команд.</dd> <dd>5. У процеÑÑ– роботи, через вкладку оперативних даних "Ðтрибути", окрім Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ñ€ÐµÐ·ÑƒÐ»ÑŒÑ‚Ð°Ñ‚Ñƒ можна здійÑнювати оперативний контроль, видачею команд.</dd></dl> <p><br /> </p> <table class="wikitable"> <tr> <td> <span id="digAlarm" title="#digAlarm"><h3><span class="mw-headline" id=".D0.A1.D0.B8.D0.B3.D0.BD.D0.B0.D0.BB.D1.96.D0.B7.D0.B0.D1.86.D1.96.D1.8F_.D0.B4.D0.B8.D1.81.D0.BA.D1.80.D0.B5.D1.82.D0.BD.D0.B0_.28digAlarm.29"><span class="mw-headline-number">1.5</span> Ð¡Ð¸Ð³Ð½Ð°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ Ð´Ð¸Ñкретна (<a href="Libs_Main.html#digAlarm" title="Special:MyLanguage/Libs/Main">digAlarm</a>)</span></h3></span> </td> <td> 1.3 </td> <td> GPLv2 </td> <td> * </td> <td> en, uk, ru </td> <td> <a class="external" href="http://oscada.org/wiki/User:RomanSavochenko" title="User:RomanSavochenko">Роман Савоченко</a> </td></tr></table> <div class="floatright"><a class="image" href="http://oscada.org/wiki/File:LibsMainDigAlarmOp_uk.png" title="Результат та оперативні налаштуваннÑ."><img alt="Результат та оперативні налаштуваннÑ." height="373" src="files/LibsMainDigAlarmOp_uk.png" width="382" /></a></div> <p>Загальний, предÑтавницький шаблон обробки окремого диÑкретного параметру (Ñкладного тегу) із Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ñигналізації за визначеним критерієм. Шаблон формує Ñтруктуру диÑкретного параметру (Ñкладного тегу) Ñкий може бути легко підключений до більшоÑÑ‚Ñ– віджетів та кадрів <a href="Libs_Main_graphical_elements.html" title="Special:MyLanguage/Libs/Main graphical elements">бібліотеки оÑновних елементів інтерфейÑу кориÑтувача</a> проÑто вказавши об'єкт параметру. </p><p>Шаблон надає окремі Ð¿Ð¾Ð»Ñ <a href="#digitBlockUnif">предÑтавницької Ñтруктури диÑкретного параметру</a> та додає поле помилки: </p> <ul><li> "Стан "Відкрито" (<b>st_open</b>)" — Ñтан "Відкрито".</li> <li> "Стан "Закрито" (<b>st_close</b>)" — Ñтан "Відкрито".</li> <li> "Помилка (<b>err</b>)" — обов'Ñзковий атрибут будь Ñкого параметру, що міÑтить комбінацію коду помилки та короткого опиÑу, на кшталт "1:Ðемає даних або Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð´Ð¾ джерела". Шаблон резервує наÑтупні коди помилок: <ul><li> <b>1</b> — помилки обладнаннÑ, коли дані переважно помилкові;</li> <li> <b>3</b> — Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ð·Ð° визначеної умови.</li></ul></li> <li> "ÐŸÑ€Ð¸Ð´ÑƒÑˆÐµÐ½Ð½Ñ (<b>alSup</b>) та затримка (<b>alDelay</b>) порушень" — загальний контроль порушень щодо Ð¿Ñ€Ð¸Ð´ÑƒÑˆÐµÐ½Ð½Ñ Ñ‚Ð° затримки.</li></ul> <p><b><u>Функції</u></b><br /> </p> <ul><li> ПрÑме отриманнÑ, за поÑиланнÑм, первинного Ñтану та Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð²Ð¾Ñ… репрезентативних Ñтанів з можливіÑÑ‚ÑŽ Ñ—Ñ… інверÑÑ–Ñ— <b>stInv</b>.</li> <li> Складна передобробка та повна генераціÑ-Ñ–Ð¼Ñ–Ñ‚Ð°Ñ†Ñ–Ñ Ð´Ð¸Ñкретного входу на внутрішній мові Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ OpenSCADA у конфігураційному Ð’Ð’ <b>inProc</b> (із доповненнÑм вбудованими правилами підÑÐ²Ñ–Ñ‚Ð»ÐµÐ½Ð½Ñ ÑинтакÑиÑу), де ви можете оперувати наÑтупними ÑервіÑними параметрами:</li></ul> <dl><dd><ul><li> <i>in</i> [IN|OUT] — той Ñамий Ñирий диÑкретний Ð’Ð’;</li> <li> <i>levErr</i>, <i>tErr</i> [IN|OUT] — рівень аварії [-79...0] та текÑÑ‚ помилки (формат атрибуту "err");</li> <li> <i>f_frq</i> [IN] — чаÑтота обчиÑленнÑ, шаблонний Ð’Ð’;</li> <li> <i>this</i> [IN] — поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° об'єкт параметру, що виконує шаблон;</li> <li> <i>ctx</i> [IN] — об'єкт кориÑтувацького контекÑту, що зберігаєтьÑÑ Ð¼Ñ–Ð¶ циклами виклику.</li></ul></dd></dl> <ul><li> ÐžÐ¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð´Ð¸Ñкретного входу <b>in</b> на предмет Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ñ‚Ð° відповідного вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ñƒ <b>err</b>, за умови "<b>{st}:{lev}:{mess}</b>", тобто Ð³ÐµÐ½ÐµÑ€Ð°Ñ†Ñ–Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ð· рівнем <i>lev</i> та текÑтом <i>mess</i> за Ñтану входу <i>st</i> (0|1). Що може бути затримано на Ñ‡Ð°Ñ <b>alDelay</b> та придушено вÑтановленнÑм <b>alSup</b>.</li> <li> ÐŸÐµÑ€ÐµÐ²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñпецифічних параметрів у загальному атрибуті <b>DESCR</b>:</li></ul> <dl><dd><ul><li> <i>перший Ñ€Ñдок</i> — Ñк Ð¾Ð¿Ð¸Ñ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½ÑŒ порушень;</li> <li> поле <i>CustomFlds</i> — Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ <a href="Program_manual.html#ArchMess" title="Special:MyLanguage/Documents/Program manual">кориÑтувацьких полів</a> повідомлень порушень у формі "<b>CustomFlds: {CustFld0} => {CustFld1} => ... => {CustFldN}</b>".</li></ul></dd></dl> <p><b><u>Ð’Ð’ шаблону</u></b><br /> </p> <table class="wikitable"> <tr> <th> Ідентифікатор </th> <th> Ім'Ñ </th> <th> Тип </th> <th> Режим </th> <th> Ðтрибут </th> <th> ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ </th> <th> Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ </th></tr> <tr> <td> alrm </td> <td> Сигнал "{st}:{lev}:{mess}" </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> </td></tr> <tr> <td> stInv </td> <td> ІнверÑÑ–Ñ Ñтану </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> </td></tr> <tr> <td> in </td> <td> Вхід </td> <td> Логічний </td> <td> Вхід </td> <td> Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td> Зв'Ñзок </td> <td> Input|in </td></tr> <tr> <td> inProc </td> <td> Вхідна процедура обробки </td> <td> ТекÑÑ‚ </td> <td> Вхід </td> <td> Ðе атрибут </td> <td>КонÑтанта </td> <td> </td></tr> <tr> <td> alSup </td> <td> ÐŸÑ€Ð¸Ð´ÑƒÑˆÐµÐ½Ð½Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½ÑŒ </td> <td> Логічний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> </td></tr> <tr> <td> alDelay </td> <td> Затримка порушень, Ñекунди </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> st_open </td> <td> Стан "Відкрито" </td> <td> Логічний </td> <td> Вхід </td> <td> Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td>Змінна </td> <td> </td></tr> <tr> <td> st_close </td> <td> Стан "Закрито" </td> <td> Логічний </td> <td> Вхід </td> <td> Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td>Змінна </td> <td> </td></tr> <tr> <td> SHIFR </td> <td> Шифр </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> NAME </td> <td> Ім'Ñ </td> <td> Ð Ñдок (переклад) </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> DESCR </td> <td> ÐžÐ¿Ð¸Ñ </td> <td> ТекÑÑ‚ (переклад) </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> this </td> <td> Об'єкт </td> <td> Об'єкт </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> f_err </td> <td> Помилка функції </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_frq </td> <td> ЧаÑтота обчиÑÐ»ÐµÐ½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ—, Гц </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 1000 </td></tr> <tr> <td> f_start </td> <td> Прапорець запуÑку функції </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_stop </td> <td> Прапорець зупинки функції </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr></table> <div class="floatright"><a class="image" href="http://oscada.org/wiki/File:LibsMainDigAlarmCfg_uk.png" title="КонфігураціÑ."><img alt="КонфігураціÑ." height="312" src="files/LibsMainDigAlarmCfg_uk.png" width="411" /></a></div> <p><b><u>ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ Ñ‚Ð° викориÑтаннÑ</u></b><br /> </p> <dl><dd>1. Створити та запуÑтити <a href="Modules/LogicLev.html" title="Special:MyLanguage/Modules/LogicLev">об'єкт логічного контролеру</a> або викориÑтати будь Ñкий наÑвний з потрібними влаÑтивоÑÑ‚Ñми плануваннÑ.</dd> <dd>2. Створити <a href="Modules/LogicLev.html" title="Special:MyLanguage/Modules/LogicLev">об'єкт логічного параметру</a> та обрати цей шаблон Ð´Ð»Ñ Ð½ÑŒÐ¾Ð³Ð¾. Ввімкнути параметр.</dd> <dd>3. У вкладці "ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ ÑˆÐ°Ð±Ð»Ð¾Ð½Ñƒ" об'єкту логічного параметру ви маєте вÑтановити: <ul><li> "Сигнал "{st}:{lev}:{mess}" — визначити критерій Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ, залишити порожнім Ð´Ð»Ñ Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ð³ÐµÐ½ÐµÑ€Ð°Ñ†Ñ–Ñ— порушень.</li> <li> "ІнверÑÑ–Ñ Ñтану" — вÑтановити Ð´Ð»Ñ Ñ–Ð½Ð²ÐµÑ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñ€ÐµÐ¿Ñ€ÐµÐ·ÐµÐ½Ñ‚Ð°Ñ‚Ð¸Ð²Ð½Ð¸Ñ… атрибутів, тобто "st_open" вÑтановити за "in" рівного <b>false</b>.</li> <li> "Вхід" — <a href="DAQ.html#LogicLevLnks" title="Special:MyLanguage/Documents/DAQ">зв'Ñзати із джерелом "Ñирого" Ñигналу</a>.</li> <li> <i>Вхідна процедура обробки</i> — Ñформувати Ð´Ð»Ñ Ñкладної передобробки та повної генерації-імітації диÑкретного входу на внутрішній мові Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ OpenSCADA. Ðаприклад:</li></ul> <dl><dd><ul><li> повне ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñкладного ÑтатуÑу:</li></ul></dd></dl></dd></dl> <div class="mw-highlight mw-content-ltr" dir="ltr" style="margin-left: 40pt"><pre><span class="nx">gO</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">cntr</span><span class="p">().</span><span class="nx">prm_grps</span><span class="p">;</span> <span class="nx">status</span> <span class="o">=</span> <span class="nx">gO</span><span class="p">.</span><span class="nx">prm_generic</span><span class="p">.</span><span class="nx">PRG_Input_Err_T_Zone1_S</span><span class="p">.</span><span class="nx">get</span><span class="p">();</span> <span class="k">in</span> <span class="o">=</span> <span class="nx">gO</span><span class="p">.</span><span class="nx">prm_generic</span><span class="p">.</span><span class="nx">SET_CalcFan_UseSensor_T1</span><span class="p">.</span><span class="nx">get</span><span class="p">()</span> <span class="o">||</span> <span class="o">!</span><span class="p">(</span><span class="nx">status</span> <span class="o">==</span> <span class="mi">0</span> <span class="o">||</span> <span class="nx">status</span> <span class="o">==</span> <span class="mi">2</span> <span class="o">||</span> <span class="nx">status</span> <span class="o">==</span> <span class="mi">3</span><span class="p">);</span> </pre></div> <dl><dd>4. РЕЗУЛЬТÐТ: ЗапуÑтивши об'єкт контролеру (де Ñтворено цей параметр) та Ñкщо він не був запущений, маємо отримати оперативні дані у вкладці "Ðтрибути", длÑ: змінної, Ñтану помилки; та генерацію порушень, Ñкщо Ñтан помилки ненульовий.</dd></dl> <p><br /> </p> <table class="wikitable"> <tr> <td> <span id="codeState" title="#codeState"><h3><span class="mw-headline" id=".D0.A1.D1.82.D0.B0.D0.BD_.D0.B7.D0.B0_.D0.BA.D0.BE.D0.B4.D0.BE.D0.BC_.28codeState.29"><span class="mw-headline-number">1.6</span> Стан за кодом (<a href="Libs_Main.html#codeState" title="Special:MyLanguage/Libs/Main">codeState</a>)</span></h3></span> </td> <td> 1.4 </td> <td> GPLv2 </td> <td> * </td> <td> en, uk, ru </td> <td> <a class="external" href="http://oscada.org/wiki/User:RomanSavochenko" title="User:RomanSavochenko">Роман Савоченко</a> </td></tr></table> <div class="floatright"><a class="image" href="http://oscada.org/wiki/File:LibsMainCodeStateOp_uk.png" title="Результат та оперативні налаштуваннÑ."><img alt="Результат та оперативні налаштуваннÑ." height="654" src="files/LibsMainCodeStateOp_uk.png" width="325" /></a></div> <p>Варіант <a href="#digitBlockUnif">загального, предÑтавницького та уніфікованого шаблону блоку Ð¿Ð¾Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð´Ð¸Ñкретних параметрів</a>, розширений більш ніж двома Ñтанами та трьома командами Ñкі можна закодувати цілим значеннÑм. Шаблон формує Ñтруктуру параметру (Ñкладного тегу) Ñтану за кодом Ñкий може бути легко підключений до більшоÑÑ‚Ñ– віджетів та кадрів <a href="Libs_Main_graphical_elements.html" title="Special:MyLanguage/Libs/Main graphical elements">бібліотеки оÑновних елементів інтерфейÑу кориÑтувача</a> проÑто вказавши об'єкт параметру. </p> <ul><li> <b>СпонÑоруваннÑ:</b> Вінницька Птахофабрика</li></ul> <p>ПредÑтавницькою Ñтруктурою параметру (Ñкладного тегу) Ñтану за кодом Ñ”: </p> <ul><li> "Стан "ТекÑÑ‚" (<b>st_text</b>)" — текÑтовий Ð¾Ð¿Ð¸Ñ Ñтану.</li> <li> "Команда "ТекÑÑ‚" (<b>com_text</b>)" — текÑÑ‚ команди.</li> <li> "Команди (<b>digComs</b>)" — загальний перелік можливих команд, Ð´Ð»Ñ Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ð¾Ð±Ñ€Ð°Ð½Ð½Ñ.</li> <li> "Помилка (<b>err</b>)" — обов'Ñзковий атрибут будь Ñкого параметру, що міÑтить комбінацію коду помилки та короткого опиÑу, на кшталт "1:Ðемає даних або Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð´Ð¾ джерела". Шаблон резервує наÑтупні коди помилок: <ul><li> <b>1</b> — помилки обладнаннÑ, коли дані переважно помилкові.</li></ul></li> <li> "ÐŸÑ€Ð¸Ð´ÑƒÑˆÐµÐ½Ð½Ñ (<b>alSup</b>) та затримка (<b>alDelay</b>) порушень" — загальний контроль порушень щодо Ð¿Ñ€Ð¸Ð´ÑƒÑˆÐµÐ½Ð½Ñ Ñ‚Ð° затримки.</li></ul> <p>Значні графічні образи предÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ñтруктури: </p> <ul><li> <a href="Libs_Main_graphical_elements.html" title="Special:MyLanguage/Libs/Main graphical elements">Бібліотека оÑновних елементів інтерфейÑу кориÑтувача</a>: <ul><li> <a href="Libs_Main_graphical_elements.html#TextLab" title="Special:MyLanguage/Libs/Main graphical elements">ТекÑтова мітка</a></li> <li> <a href="Libs_Main_graphical_elements.html#ImgLab" title="Special:MyLanguage/Libs/Main graphical elements">Мітка зображеннÑм</a></li> <li> <a href="Libs_Main_graphical_elements.html#ElCadr" title="Special:MyLanguage/Libs/Main graphical elements">Елемент кадр</a></li></ul></li></ul> <p><b><u>Функції</u></b><br /> </p> <ul><li> ПрÑме отриманнÑ, за поÑиланнÑм, коду Ñтану та команди (тільки читаннÑ), а також вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñ‚ÐµÐºÑту Ñтану згідно до переліку Ñтанів <i>stats</i>.</li> <li> ÐžÐ¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ñ‚ÐµÐºÑту команди <i>com_text</i> на предмет пошуку Ñ—Ñ— у загальному переліку команд <i>coms</i> та видача отриманого коду команди на вихід.</li> <li> Ð¤Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ñ–Ð· загальному переліку команд <i>coms</i> переліку команд Ð´Ð»Ñ Ð¾Ð±Ñ€Ð°Ð½Ð½Ñ Ñƒ <i>digComs</i>.</li> <li> Складна обробка та повна генераціÑ-Ñ–Ð¼Ñ–Ñ‚Ð°Ñ†Ñ–Ñ ÐºÐ¾Ð´Ñƒ Ñтану, а також обробка коду або текÑту команди Ð´Ð»Ñ Ñ†Ñ–Ð»ÑŒÐ¾Ð²Ð¸Ñ… дій, на внутрішній мові Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ OpenSCADA у конфігураційному Ð’Ð’ <b>inProc</b>, де ви можете оперувати наÑтупними ÑервіÑними параметрами:</li></ul> <dl><dd><ul><li> <i>in</i> [IN|OUT] — Ð’Ð’ коду ÑтатуÑу;</li> <li> <i>text</i> [OUT] — прÑме вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñ‚ÐµÐºÑту ÑтатуÑу;</li> <li> <i>coms</i> [IN] — перелік наÑвних команд, відповідного Ð’Ð’;</li> <li> <i>com_text</i> [IN|OUT] — текÑÑ‚ отриманої команди;</li> <li> <i>levErr</i>, <i>tErr</i> [IN|OUT] — рівень аварії [-79...0] та текÑÑ‚ помилки (формат атрибуту "err");</li> <li> <i>f_frq</i> [IN] — чаÑтота обчиÑленнÑ, шаблонний Ð’Ð’;</li> <li> <i>this</i> [IN] — поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° об'єкт параметру, що виконує шаблон;</li> <li> <i>ctx</i> [IN] — об'єкт кориÑтувацького контекÑту, що зберігаєтьÑÑ Ð¼Ñ–Ð¶ циклами виклику.</li></ul></dd></dl> <ul><li> Ð¤Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ñ‚Ð° відповідне вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ñƒ <b>err</b>, за умови вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñƒ процедурі обробки або відÑутноÑÑ‚Ñ– зв'Ñзку (<i>in</i> = EVAL). Що може бути затримано на Ñ‡Ð°Ñ <b>alDelay</b> та придушено вÑтановленнÑм <b>alSup</b>.</li></ul> <p><b><u>Ð’Ð’ шаблону</u></b><br /> </p> <table class="wikitable"> <tr> <th> Ідентифікатор </th> <th> Ім'Ñ </th> <th> Тип </th> <th> Режим </th> <th> Ðтрибут </th> <th> ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ </th> <th> Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ </th></tr> <tr> <td> in </td> <td> Вхід </td> <td> Цілий </td> <td> Вхід </td> <td> Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td> Зв'Ñзок </td> <td> Signal|in </td></tr> <tr> <td> out </td> <td> Вихід </td> <td> Цілий </td> <td> Вихід </td> <td> Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td> Зв'Ñзок </td> <td> Signal|out </td></tr> <tr> <td> inProc </td> <td> Вхідна процедура обробки </td> <td> ТекÑÑ‚ </td> <td> Вхід </td> <td> Ðе атрибут </td> <td>КонÑтанта </td> <td> </td></tr> <tr> <td> alSup </td> <td> ÐŸÑ€Ð¸Ð´ÑƒÑˆÐµÐ½Ð½Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½ÑŒ </td> <td> Логічний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> </td></tr> <tr> <td> alDelay </td> <td> Затримка порушень, Ñекунди </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> st_text </td> <td> Стан "ТекÑÑ‚" </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td> Змінна </td> <td> </td></tr> <tr> <td> stats </td> <td> Стани, Ñ€Ñдки "{code}:{State}" </td> <td> ТекÑÑ‚ </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> </td></tr> <tr> <td> com_text </td> <td> Команда "ТекÑÑ‚" </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td>Змінна </td> <td> </td></tr> <tr> <td> coms </td> <td> Команди-Ñтани, Ñ€Ñдки "{code}:{State}" </td> <td> ТекÑÑ‚ </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> </td></tr> <tr> <td> digComs </td> <td> Команди </td> <td> ТекÑÑ‚ </td> <td> Вхід </td> <td> Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td> Змінна </td> <td> </td></tr> <tr> <td> SHIFR </td> <td> Код </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> NAME </td> <td> Ім'Ñ </td> <td> Ð Ñдок (переклад) </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> DESCR </td> <td> ÐžÐ¿Ð¸Ñ </td> <td> ТекÑÑ‚ (переклад) </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> this </td> <td> Об'єкт </td> <td> Об'єкт </td> <td> Вихід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> f_err </td> <td> Помилка функції </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_frq </td> <td> ЧаÑтота обчиÑÐ»ÐµÐ½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ—, Гц </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 1000 </td></tr> <tr> <td> f_start </td> <td> Прапорець запуÑку функції </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_stop </td> <td> Прапорець зупинки функції </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr></table> <div class="floatright"><a class="image" href="http://oscada.org/wiki/File:LibsMainCodeStateCfg_uk.png" title="КонфігураціÑ."><img alt="КонфігураціÑ." height="298" src="files/LibsMainCodeStateCfg_uk.png" width="326" /></a></div> <p><b><u>ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ Ñ‚Ð° викориÑтаннÑ</u></b><br /> </p> <dl><dd>1. Створити та запуÑтити <a href="Modules/LogicLev.html" title="Special:MyLanguage/Modules/LogicLev">об'єкт логічного контролеру</a> або викориÑтати будь Ñкий наÑвний з потрібними влаÑтивоÑÑ‚Ñми плануваннÑ.</dd> <dd>2. Створити <a href="Modules/LogicLev.html" title="Special:MyLanguage/Modules/LogicLev">об'єкт логічного параметру</a> та обрати цей шаблон Ð´Ð»Ñ Ð½ÑŒÐ¾Ð³Ð¾. Ввімкнути параметр.</dd> <dd>3. У вкладці "ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ ÑˆÐ°Ð±Ð»Ð¾Ð½Ñƒ" об'єкту логічного параметру ви маєте вÑтановити: <ul><li> <i>Вхід</i> та <i>Вихід</i> — <a href="DAQ.html#LogicLevLnks" title="Special:MyLanguage/Documents/DAQ">зв'Ñзати із джерелом "Ñирого" Ñигналу</a>.</li> <li> <i>Вхідна процедура обробки</i> — Ñформувати Ð´Ð»Ñ Ð¾Ð±Ñ€Ð¾Ð±ÐºÐ¸ та повної генерації-імітації входу, та видачі Ñпецифічного виходу, на внутрішній мові Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ OpenSCADA. Ðаприклад:</li></ul> <dl><dd><ul><li> повне ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ ÐºÐ¾Ð´Ñƒ ÑтатуÑу та Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ:</li></ul></dd></dl></dd></dl> <div class="mw-highlight mw-content-ltr" dir="ltr" style="margin-left: 40pt"><pre><span class="nx">gO</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">cntr</span><span class="p">().</span><span class="nx">prm_grps</span><span class="p">;</span> <span class="k">if</span><span class="p">(</span><span class="nx">gO</span><span class="p">.</span><span class="nx">prm_fansControl</span><span class="p">.</span><span class="nx">PRG_CntrFan_AutoMode_G1</span><span class="p">.</span><span class="nx">get</span><span class="p">().</span><span class="nx">isEVal</span><span class="p">())</span> <span class="k">in</span> <span class="o">=</span> <span class="mi">4</span><span class="p">;</span> <span class="k">else</span> <span class="p">{</span> <span class="k">if</span><span class="p">(</span><span class="o">!</span><span class="p">(</span><span class="nx">tVl</span><span class="o">=</span><span class="nx">gO</span><span class="p">.</span><span class="nx">prm_fansControl</span><span class="p">.</span><span class="nx">PRG_CntrFan_Alarm_ThermalRelay</span><span class="p">.</span><span class="nx">get</span><span class="p">()).</span><span class="nx">isEVal</span><span class="p">()</span> <span class="o">&&</span> <span class="nx">tVl</span><span class="p">)</span> <span class="nx">levErr</span> <span class="o">=</span> <span class="o">-</span><span class="mi">4</span><span class="p">,</span> <span class="nx">tErr</span> <span class="o">=</span> <span class="s2">"11:alarm"</span><span class="p">;</span> <span class="k">if</span><span class="p">(</span><span class="nx">gO</span><span class="p">.</span><span class="nx">prm_fansControl</span><span class="p">.</span><span class="nx">PRG_CntrFan_AutoMode_G1</span><span class="p">.</span><span class="nx">get</span><span class="p">())</span> <span class="k">in</span> <span class="o">=</span> <span class="nx">gO</span><span class="p">.</span><span class="nx">prm_fansControl</span><span class="p">.</span><span class="nx">PRG_CntrFan_On_G1</span><span class="p">.</span><span class="nx">get</span><span class="p">()</span> <span class="o">?</span> <span class="mi">1</span> <span class="o">:</span> <span class="mi">2</span><span class="p">;</span> <span class="k">else</span> <span class="k">in</span> <span class="o">=</span> <span class="mi">3</span><span class="p">;</span> <span class="p">}</span> </pre></div> <dl><dd><dl><dd><ul><li> Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚ÐµÐºÑту чаÑу годинника та виклик Ñинхронізації чаÑу — прÑме вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñ‚ÐµÐºÑту ÑтатуÑу та Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ñпецифічних команд:</li></ul></dd></dl></dd></dl> <div class="mw-highlight mw-content-ltr" dir="ltr" style="margin-left: 40pt"><pre><span class="nx">curTm</span> <span class="o">=</span> <span class="nx">SYS</span><span class="p">.</span><span class="nx">time</span><span class="p">();</span> <span class="nx">text</span> <span class="o">=</span> <span class="nx">SYS</span><span class="p">.</span><span class="nx">strftime</span><span class="p">(</span><span class="nx">curTm</span><span class="p">,</span> <span class="s2">"%HÖ‰%M %d.%m.%Y"</span><span class="p">);</span> <span class="nx">gO</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">cntr</span><span class="p">().</span><span class="nx">prm_grps</span><span class="p">;</span> <span class="k">if</span><span class="p">(</span><span class="o">!</span><span class="p">(</span><span class="nx">tVl</span><span class="o">=</span><span class="nx">gO</span><span class="p">.</span><span class="nx">prm_other</span><span class="p">.</span><span class="nx">PRG_RTC_UNIX</span><span class="p">.</span><span class="nx">get</span><span class="p">()).</span><span class="nx">isEVal</span><span class="p">())</span> <span class="p">{</span> <span class="nx">text</span> <span class="o">+=</span> <span class="s2">" ("</span><span class="o">+</span><span class="p">(</span><span class="nx">tVl</span><span class="o">-</span><span class="nx">curTm</span><span class="p">).</span><span class="nx">toString</span><span class="p">(</span><span class="mi">10</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="kc">true</span><span class="p">)</span><span class="o">+</span><span class="s2">")"</span><span class="p">;</span> <span class="p">}</span> <span class="k">if</span><span class="p">(</span><span class="nx">com_text</span><span class="p">.</span><span class="nx">length</span> <span class="o">&&</span> <span class="o">!</span><span class="nx">com_text</span><span class="p">.</span><span class="nx">isEVal</span><span class="p">()</span> <span class="o">&&</span> <span class="p">(</span><span class="nx">tVl</span><span class="o">=</span><span class="nx">coms</span><span class="p">.</span><span class="nx">match</span><span class="p">(</span><span class="s2">"^([^:]+):"</span><span class="o">+</span><span class="nx">com_text</span><span class="p">,</span><span class="s2">"m"</span><span class="p">)).</span><span class="nx">length</span> <span class="o">&&</span> <span class="nx">tVl</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="o">==</span> <span class="mi">1</span><span class="p">)</span> <span class="p">{</span> <span class="nx">gO</span><span class="p">.</span><span class="nx">prm_other</span><span class="p">.</span><span class="nx">SET_RTC_New_UNIX</span><span class="p">.</span><span class="nx">set</span><span class="p">(</span><span class="nx">curTm</span><span class="p">);</span> <span class="nx">gO</span><span class="p">.</span><span class="nx">prm_other</span><span class="p">.</span><span class="nx">KEY_RTC_set_time</span><span class="p">.</span><span class="nx">set</span><span class="p">(</span><span class="kc">true</span><span class="p">);</span> <span class="p">}</span> </pre></div> <dl><dd>4. РЕЗУЛЬТÐТ: ЗапуÑтивши об'єкт контролеру (де Ñтворено цей параметр) та Ñкщо він не був запущений, маємо отримати оперативні дані у вкладці "Ðтрибути", длÑ: входу, виходу, Ñтану за кодом-входом, Ñтану помилки; та генерацію порушень, Ñкщо Ñтан помилки ненульовий.</dd> <dd>5. У процеÑÑ– роботи, через вкладку оперативних даних "Ðтрибути", окрім Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ñ€ÐµÐ·ÑƒÐ»ÑŒÑ‚Ð°Ñ‚Ñƒ можна здійÑнювати оперативне Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚Ð° контроль щодо: <ul><li> <i>Стани</i> — вÑтановити у перелік відповідноÑÑ‚Ñ– коду Ñтану до його текÑту.</li> <li> <i>Команди-Ñтани</i> — вÑтановити у перелік відповідноÑÑ‚Ñ– коду Ñтану-команди до його текÑту.</li> <li> <i>Команда "ТекÑÑ‚"</i> — вÑтановити у текÑÑ‚ команди, Ñку опиÑано у переліку команд, Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñƒ код та видачі.</li> <li> <i>ÐŸÑ€Ð¸Ð´ÑƒÑˆÐµÐ½Ð½Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½ÑŒ</i> — вÑтановити за потреби повного Ð¿Ñ€Ð¸Ð´ÑƒÑˆÐµÐ½Ð½Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½ÑŒ параметру — вимкнути Ñ—Ñ… генерацію взагалі.</li> <li> <i>Затримка порушень</i> — вÑтановити Ñ‡Ð°Ñ Ð·Ð°Ñ‚Ñ€Ð¸Ð¼ÐºÐ¸ генерації порушеннÑ, Ð´Ð»Ñ Ð²Ð¸ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ñ‡Ð°Ñтої генерації, характерної Ð´Ð»Ñ Ð½ÐµÐ¿ÐµÐ²Ð½Ð¸Ñ… джерел даних, що відрізнÑÑŽÑ‚ÑŒÑÑ ÐºÐ¾Ñ€Ð¾Ñ‚ÐºÐ¾Ñ‡Ð°Ñною втратою зв'Ñзку.</li></ul></dd></dl> <p><br /> </p> <table class="wikitable"> <tr> <td> <span id="pidUnif" title="#pidUnif"><h3><span class="mw-headline" id=".D0.9F.D0.86.D0.94_.D1.81.D0.B8.D0.B3.D0.BD.D0.B0.D0.BB.2C_.D1.83.D0.BD.D1.96.D1.84.D1.96.D0.BA.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B9.2C_.D1.81.D1.82.D0.B0.D0.BD.D0.B8_.D0.BF.D0.BE.D1.80.D1.83.D1.88.D0.B5.D0.BD.D1.8C_.28pidUnif.29"><span class="mw-headline-number">1.7</span> ПІД Ñигнал, уніфікований, Ñтани порушень (<a href="Libs_Main.html#pidUnif" title="Special:MyLanguage/Libs/Main">pidUnif</a>)</span></h3></span> </td> <td> 1.2 </td> <td> GPLv2 </td> <td> * </td> <td> en, uk, ru </td> <td> <a class="external" href="http://oscada.org/wiki/User:RomanSavochenko" title="User:RomanSavochenko">Роман Савоченко</a> </td></tr></table> <div class="floatright"><a class="image" href="http://oscada.org/wiki/File:LibsMainPidUnifOp_uk.png" title="Результат та оперативні налаштуваннÑ."><img alt="Результат та оперативні налаштуваннÑ." height="886" src="files/LibsMainPidUnifOp_uk.png" width="414" /></a></div> <p>Загальний, предÑтавницький та уніфікований шаблон інтерфейÑу до Пропорційного Інтегрального Диференційного (ПІД) регулÑтору заÑнованому на аналоговому вхідному Ñигналі, розширеному бінарними Ñтанами індикації порушень. Шаблон формує Ñтруктуру аналогового ПІД-регулÑтору, Ñкий може бути легко підключений до деÑких кадрів та віджетів <a href="Libs_Main_graphical_elements.html" title="Special:MyLanguage/Libs/Main graphical elements">бібліотеки оÑновних елементів інтерфейÑу кориÑтувача</a>, проÑто вказавши об'єкт параметру. </p> <ul><li> <b>СпонÑоровано:</b> <a class="external text" href="http://diyaorg.dp.ua" rel="nofollow noreferrer noopener" target="_blank">ТОВ "ДІЯ"</a></li></ul> <p>ПредÑтавницькою Ñтруктурою аналогового ПІД-регулÑтору Ñ”: </p> <ul><li> "Змінна (<b>var</b>)" — кінцева змінна параметру — інженерне реальне значеннÑ, доÑтупне та придатне до архівації.</li> <li> "Помилка (<b>err</b>)" — обов'Ñзковий атрибут будь Ñкого параметру, що міÑтить комбінацію коду помилки та короткого опиÑу, на кшталт "2:Ðемає даних або Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð´Ð¾ джерела". Шаблон резервує наÑтупні коди помилок: <ul><li> <b>1, 2</b> — помилки обладнаннÑ, коли дані переважно помилкові;</li> <li> <b>3, 4</b> — помилки аварійної границі;</li> <li> <b>5, 6</b> — помилки попереджувальної границі;</li> <li> <b>7</b> — помилка швидкоÑÑ‚Ñ– зміни змінної.</li></ul></li> <li> "ÐŸÑ€Ð¸Ð´ÑƒÑˆÐµÐ½Ð½Ñ (<b>alSup</b>) та затримка (<b>alDelay</b>) порушень" — загальний контроль порушень щодо Ð¿Ñ€Ð¸Ð´ÑƒÑˆÐµÐ½Ð½Ñ Ñ‚Ð° затримки.</li> <li> "Ð—Ð°Ð²Ð´Ð°Ð½Ð½Ñ (<b>sp</b>)" — Ð·Ð°Ð²Ð´Ð°Ð½Ð½Ñ Ð´Ð»Ñ Ð´Ð¾ÑÑÐ³Ð½ÐµÐ½Ð½Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñм аналоговим Ñигналом у автоматичному режимі.</li> <li> "Ручний ввід (<b>manIn</b>)" — атрибут Ð²Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð²Ð¸Ñ…Ð¾Ð´Ñƒ, Ñке надалі потраплÑÑ” до виходу у ручному режимі.</li> <li> "Вихід (<b>out</b>)" — вихід (Ñигнал контролю) ПІД-регулÑтору.</li> <li> "Режим: автомат (<b>auto</b>)" — режим "Ðвтомат" ПІД-регулÑтору.</li> <li> "Режим: каÑкад (<b>casc</b>)" — режим "КаÑкад" ПІД-регулÑтору.</li> <li> "Шкала: мінімум (<b>min</b>)" та "Шкала: макÑимум (<b>max</b>)" — головна шкала кінцевої змінної, вихід за Ñку призводить до помилки апаратної границі. Шкала також викориÑтовуєтьÑÑ Ñк шкала Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ñ‚Ñ€ÐµÐ½Ð´Ñƒ змінної на графіках.</li> <li> "Логарифмічна шкала (<b>log</b>)" — ознака Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ñ‚Ñ€ÐµÐ½Ð´Ñƒ змінної на графіках у логарифмічній шкалі.</li> <li> "ÐžÐ´Ð¸Ð½Ð¸Ñ†Ñ Ð²Ð¸Ð¼Ñ–Ñ€Ñƒ (<b>ed</b>)" — Ð¾Ð´Ð¸Ð½Ð¸Ñ†Ñ Ð²Ð¸Ð¼Ñ–Ñ€Ñƒ змінної.</li> <li> "ТочніÑÑ‚ÑŒ (<b>prec</b>)" — кількіÑÑ‚ÑŒ знаків піÑÐ»Ñ ÐºÑ€Ð°Ð¿ÐºÐ¸, Ð´Ð»Ñ Ð¿Ð¾Ð·Ð¸Ñ‚Ð¸Ð²Ð½Ð¸Ñ… значень, та точніÑÑ‚ÑŒ (знаків загалом), Ð´Ð»Ñ Ð½ÐµÐ³Ð°Ñ‚Ð¸Ð²Ð½Ð¸Ñ…, Ð´Ð»Ñ Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ñ€ÐµÐ°Ð»ÑŒÐ½Ð¾Ñ— кінцевої змінної на екрані.</li></ul> <p>Значні графічні образи предÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ñтруктури: </p> <ul><li> <a href="Libs_Main_graphical_elements.html" title="Special:MyLanguage/Libs/Main graphical elements">Бібліотека оÑновних елементів інтерфейÑу кориÑтувача</a>: <ul><li> <a href="Libs_Main_graphical_elements.html#cntrRegul" title="Special:MyLanguage/Libs/Main graphical elements">Панель Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñ€ÐµÐ³ÑƒÐ»Ñтору</a></li> <li> <a href="Libs_Main_graphical_elements.html#ElCadr" title="Special:MyLanguage/Libs/Main graphical elements">Елемент кадр</a></li> <li> <a href="Libs_Main_graphical_elements.html#cntrPaspExt" title="Special:MyLanguage/Libs/Main graphical elements">ПаÑпорт, розширений</a></li></ul></li> <li> <a href="Libs_Mnemo_elements.html" title="Special:MyLanguage/Libs/Mnemo elements">Бібліотека елементів мнемоÑхем інтерфейÑу кориÑтувача</a>: <ul><li> <a href="Libs_Mnemo_elements.html#analogApps" title="Special:MyLanguage/Libs/Mnemo elements">Ðналогові апарати</a></li></ul></li></ul> <p><b><u>Функції</u></b><br /> </p> <ul><li> Загальне Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð°Ð½Ð°Ð»Ð¾Ð³Ð¾Ð²Ð¾Ð³Ð¾ входу щодо:</li></ul> <dl><dd><ul><li> проÑта корекціÑ-ÐºÐ°Ð»Ñ–Ð±Ñ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð° формулою "<b>in</b> = <b>iMult</b>*(<b>in</b>+<b>iAdd</b>)";</li> <li> маÑÑˆÑ‚Ð°Ð±ÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ñ–Ð´ апаратної границі [<b>plcMin</b>...<b>plcMax</b>] у головну границю [<b>min</b>...<b>max</b>], враховуючи квадратичну шкалу <b>scSqr</b>;</li> <li> дозвіл на Ð¿ÐµÑ€ÐµÐ²Ð¸Ñ‰ÐµÐ½Ð½Ñ Ð³Ñ€Ð°Ð½Ð¸Ñ†Ñ– вхідним значеннÑм на величину <b>plcExcess</b> відÑотків;</li> <li> Ñ„Ñ–Ð»ÑŒÑ‚Ñ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð¼Ñ–Ð½Ð¸ вхідного Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð½Ð° Ñ‡Ð°Ñ <b>Tf</b>.</li></ul></dd></dl> <ul><li> ПроÑта Ñ–Ð¼Ñ–Ñ‚Ð°Ñ†Ñ–Ñ Ð°Ð½Ð°Ð»Ð¾Ð³Ð¾Ð²Ð¾Ð³Ð¾ входу, вÑтановленнÑм <b>plcImit</b> та підключеннÑм джерела імітації-ÑимулÑції до <b>plcImitIn</b>.</li> <li> ÐžÐ¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ ÐºÑ–Ð½Ñ†ÐµÐ²Ð¾Ñ— змінної <b>var</b> на предмет Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ð´ÐµÑких границь та критеріїв, генеруючи аварії та відповідно вÑтановлюючи атрибут <b>err</b>. Границі аварії можуть мати деÑкий гіÑÑ‚ÐµÑ€ÐµÐ·Ð¸Ñ <b>HystBnd</b>, можуть бути затримані на Ñ‡Ð°Ñ <b>alDelay</b> та можуть бути придушені вÑтановленнÑм <b>alSup</b>. ÐадаютьÑÑ Ð½Ð°Ñтупні границі та критерії:</li></ul> <dl><dd><ul><li> відÑутніÑÑ‚ÑŒ даних або Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð´Ð¾ джерела за вхідним значеннÑм EVAL — код помилки 1 та рівень аварії 5;</li> <li> Ð¿ÐµÑ€ÐµÐ²Ð¸Ñ‰ÐµÐ½Ð½Ñ Ð°Ð¿Ð°Ñ€Ð°Ñ‚Ð½Ð¾Ñ— границі вхідним значеннÑм — код помилки 1,2 та рівень аварії 5;</li> <li> Ð¿ÐµÑ€ÐµÐ²Ð¸Ñ‰ÐµÐ½Ð½Ñ Ð°Ð²Ð°Ñ€Ñ–Ð¹Ð½Ð¾Ñ— границі кінцевою змінною [<b>aMin</b>...<b>aMax</b>] — код помилки 3,4 та рівень аварії 4;</li></ul> <dl><dd> <a class="image" href="http://oscada.org/wiki/File:At.png"><img alt="At.png" height="22" src="../en/files/At.png" width="22" /></a> ВимикаєтьÑÑ Ð²ÑтановленнÑм однакових або інверÑних значень границі</dd></dl> <ul><li> Ð¿ÐµÑ€ÐµÐ²Ð¸Ñ‰ÐµÐ½Ð½Ñ Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÑƒÐ²Ð°Ð»ÑŒÐ½Ð¾Ñ— границі кінцевою змінною [<b>wMin</b>...<b>wMax</b>] — код помилки 5,6 та рівень аварії 2;</li></ul> <dl><dd> <a class="image" href="http://oscada.org/wiki/File:At.png"><img alt="At.png" height="22" src="../en/files/At.png" width="22" /></a> ВимикаєтьÑÑ Ð²ÑтановленнÑм однакових або інверÑних значень границі</dd></dl> <ul><li> велика швидкіÑÑ‚ÑŒ зміни <b>speed</b> кінцевої змінної — код помилки 7 та рівень аварії 2.</li></ul></dd></dl> <ul><li> ÐŸÐµÑ€ÐµÐ´Ð°Ð²Ð°Ð½Ð½Ñ Ñпецифічної ПІД інформації, контролю та атрибутів коефіцієнтів до та з ПЛК або іншого джерела даних із регулюваннÑм.</li></ul> <p><b><u>Ð’Ð’ шаблону</u></b><br /> </p> <table class="wikitable"> <tr> <th> Ідентифікатор </th> <th> Ім'Ñ </th> <th> Тип </th> <th> Режим </th> <th> Ðтрибут </th> <th> ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ </th> <th> Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ </th></tr> <tr> <td> in </td> <td> Вхід </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Зв'Ñзок </td> <td> Signal|in </td></tr> <tr> <td> sp </td> <td> Ð—Ð°Ð²Ð´Ð°Ð½Ð½Ñ </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Зв'Ñзок </td> <td> ПІД|sp </td></tr> <tr> <td> var </td> <td> Змінна </td> <td> Реальний </td> <td> Вхід </td> <td> Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> manIn </td> <td> Ручний ввід, % </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Зв'Ñзок </td> <td> ПІД|manIn </td></tr> <tr> <td> out </td> <td> Вихід, % </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Зв'Ñзок </td> <td> ПІД|out </td></tr> <tr> <td> auto </td> <td> Режим: автомат </td> <td> Логічний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Зв'Ñзок </td> <td> ПІД|auto </td></tr> <tr> <td> casc </td> <td> Режим: каÑкад </td> <td> Логічний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Зв'Ñзок </td> <td> ПІД|casc </td></tr> <tr> <td> ed </td> <td> ÐžÐ´Ð¸Ð½Ð¸Ñ†Ñ Ð²Ð¸Ð¼Ñ–Ñ€Ñƒ </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> </td></tr> <tr> <td> min </td> <td> Шкала: мінімум </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Зв'Ñзок </td> <td> ПІД|min </td></tr> <tr> <td> max </td> <td> Шкала: макÑимум </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Зв'Ñзок </td> <td> ПІД|max </td></tr> <tr> <td> scSqr </td> <td> Шкала: квадратична </td> <td> Логічний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> alSup </td> <td> ÐŸÑ€Ð¸Ð´ÑƒÑˆÐµÐ½Ð½Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½ÑŒ </td> <td> Логічний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> alDelay </td> <td> Затримка порушень, Ñекунди </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> aMin </td> <td> Ð“Ñ€Ð°Ð½Ð¸Ñ†Ñ Ð½Ð¸Ð¶Ð½Ñ Ð°Ð²Ð°Ñ€Ñ–Ð¹Ð½Ð° </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> aMax </td> <td> Ð“Ñ€Ð°Ð½Ð¸Ñ†Ñ Ð²ÐµÑ€Ñ…Ð½Ñ Ð°Ð²Ð°Ñ€Ñ–Ð¹Ð½Ð° </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> wMin </td> <td> Ð“Ñ€Ð°Ð½Ð¸Ñ†Ñ Ð½Ð¸Ð¶Ð½Ñ Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÑƒÐ². </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> wMax </td> <td> Ð“Ñ€Ð°Ð½Ð¸Ñ†Ñ Ð²ÐµÑ€Ñ…Ð½Ñ Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÑƒÐ². </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> HystBnd </td> <td> ГіÑÑ‚ÐµÑ€ÐµÐ·Ð¸Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½ÑŒ границь </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> speed </td> <td> ШвидкіÑÑ‚ÑŒ зміни, %/цикл </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> prec </td> <td> ТочніÑÑ‚ÑŒ, знаків </td> <td> Цілий </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 2 </td></tr> <tr> <td> log </td> <td> Логарифмічна шкала </td> <td> Логічний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td>Змінна </td> <td> 0 </td></tr> <tr> <td> H </td> <td> ÐŸÐ¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ð²ÐµÑ€Ñ…Ð½ÑŒÐ¾Ñ— попереджув. границі </td> <td> Логічний </td> <td> Вихід </td> <td>Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> L </td> <td> ÐŸÐ¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ð½Ð¸Ð¶Ð½ÑŒÐ¾Ñ— попереджув. границі </td> <td> Логічний </td> <td> Вихід </td> <td>Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> HH </td> <td> ÐŸÐ¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ð²ÐµÑ€Ñ…Ð½ÑŒÐ¾Ñ— аварійної границі </td> <td> Логічний </td> <td> Вихід </td> <td>Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> LL </td> <td> ÐŸÐ¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ð½Ð¸Ð¶Ð½ÑŒÐ¾Ñ— аварійної границі </td> <td> Логічний </td> <td> Вихід </td> <td> Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> EVAL </td> <td> Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð½ÐµÐ²Ñ–Ñ€Ð¾Ð³Ñ–Ð´Ð½Ðµ </td> <td> Логічний </td> <td> Вихід </td> <td> Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> Tf </td> <td> Ð§Ð°Ñ Ñ„Ñ–Ð»ÑŒÑ‚Ñ€Ñƒ, міліÑекунд </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> Kp </td> <td> Kп </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Зв'Ñзок </td> <td> ПІД|Kp </td></tr> <tr> <td> Ti </td> <td> TÑ–, міліÑекунд </td> <td> Цілий </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Зв'Ñзок </td> <td>ПІД|Ti </td></tr> <tr> <td> Kd </td> <td> Кп диференціалу </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Зв'Ñзок </td> <td> ПІД|Kd </td></tr> <tr> <td> Td </td> <td> Tд, міліÑекунд </td> <td> Цілий </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Зв'Ñзок </td> <td> ПІД|Td </td></tr> <tr> <td> Tzd </td> <td> T фільтру диференціалу, міліÑекунд </td> <td> Цілий </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Зв'Ñзок </td> <td> ПІД|Tzd </td></tr> <tr> <td> Zi </td> <td> ÐечутливіÑÑ‚ÑŒ, % </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Зв'Ñзок </td> <td> ПІД|Zi </td></tr> <tr> <td> Hup </td> <td> Ð’ÐµÑ€Ñ…Ð½Ñ Ð³Ñ€Ð°Ð½Ð¸Ñ†Ñ Ð²Ð¸Ñ…Ð¾Ð´Ñƒ, % </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Зв'Ñзок </td> <td> ПІД|Hup </td></tr> <tr> <td> Hdwn </td> <td> ÐÐ¸Ð¶Ð½Ñ Ð³Ñ€Ð°Ð½Ð¸Ñ†Ñ Ð²Ð¸Ñ…Ð¾Ð´Ñƒ, % </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Зв'Ñзок </td> <td> ПІД|Hdwn </td></tr> <tr> <td> K1 </td> <td> Коефіцієнт входу 1 </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td>Зв'Ñзок </td> <td> ПІД|K1 </td></tr> <tr> <td> K2 </td> <td> Коефіцієнт входу 2 </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Зв'Ñзок </td> <td> ПІД|K2 </td></tr> <tr> <td> K3 </td> <td> Коефіцієнт входу 3 </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Зв'Ñзок </td> <td> ПІД|K3 </td></tr> <tr> <td> K4 </td> <td> Коефіцієнт входу 4 </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Зв'Ñзок </td> <td> ПІД|K4 </td></tr> <tr> <td> iAdd </td> <td> Додаток до входу </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> 0 </td></tr> <tr> <td> iMult </td> <td> Множник входу </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> 1 </td></tr> <tr> <td> plcMin </td> <td> Мінімум шкали Ð¼Ð¾Ð´ÑƒÐ»Ñ </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> 1 </td></tr> <tr> <td> plcMax </td> <td> МакÑимум шкали Ð¼Ð¾Ð´ÑƒÐ»Ñ </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> 5 </td></tr> <tr> <td> plcExcess </td> <td> Дозволене Ð¿ÐµÑ€ÐµÐ²Ð¸Ñ‰ÐµÐ½Ð½Ñ ÑˆÐºÐ°Ð»Ð¸, % </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> 0 </td></tr> <tr> <td> plcImit </td> <td> Ð†Ð¼Ñ–Ñ‚Ð°Ñ†Ñ–Ñ ÐŸÐ›Ðš </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> 0 </td></tr> <tr> <td> plcImitIn </td> <td> Вхід імітації ПЛК </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Зв'Ñзок </td> <td> ІмітаціÑ|var </td></tr> <tr> <td> this </td> <td> Об'єкт </td> <td> Об'єкт </td> <td> Вихід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> SHIFR </td> <td> Шифр </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> NAME </td> <td> Ім'Ñ </td> <td> Ð Ñдок (переклад) </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> DESCR </td> <td> ÐžÐ¿Ð¸Ñ </td> <td> ТекÑÑ‚ (переклад) </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> f_frq </td> <td> ЧаÑтота обчиÑÐ»ÐµÐ½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ—, Гц </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 1000 </td></tr> <tr> <td> f_err </td> <td> Помилка функції </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td>0 </td></tr> <tr> <td> f_start </td> <td> Прапорець запуÑку функції </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_stop </td> <td> Прапорець зупинки функції </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr></table> <div class="floatright"><a class="image" href="http://oscada.org/wiki/File:LibsMainPidUnifCfg_uk.png" title="КонфігураціÑ."><img alt="КонфігураціÑ." height="883" src="files/LibsMainPidUnifCfg_uk.png" width="425" /></a></div> <p><b><u>ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ Ñ‚Ð° викориÑтаннÑ</u></b><br /> </p> <dl><dd>1. Створити та запуÑтити <a href="Modules/LogicLev.html" title="Special:MyLanguage/Modules/LogicLev">об'єкт логічного контролеру</a> або викориÑтати будь Ñкий наÑвний з потрібними влаÑтивоÑÑ‚Ñми плануваннÑ.</dd> <dd>2. Створити <a href="Modules/LogicLev.html" title="Special:MyLanguage/Modules/LogicLev">об'єкт логічного параметру</a> та обрати цей шаблон Ð´Ð»Ñ Ð½ÑŒÐ¾Ð³Ð¾. Ввімкнути параметр.</dd> <dd>3. У вкладці "ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ ÑˆÐ°Ð±Ð»Ð¾Ð½Ñƒ" об'єкту логічного параметру ви маєте вÑтановити: <ul><li> <i>Вхід</i> — <a href="DAQ.html#LogicLevLnks" title="Special:MyLanguage/Documents/DAQ">зв'Ñзати із джерелом "Ñирого" аналогового Ñигналу</a>.</li> <li> <i>ЗавданнÑ</i>, <i>Ручний ввід</i>, <i>Вихід</i>, <i>Режим: автомат</i>, <i>Режим: каÑкад</i>, <i>Шкала: мінімум</i>, <i>Шкала: макÑимум</i>, <i>Kп</i>, <i>TÑ–</i>, <i>Кп диференціалу</i>, <i>Tд</i>, <i>T фільтру диференціалу, міліÑекунд</i>, <i>ÐечутливіÑÑ‚ÑŒ</i>, <i>Ð’ÐµÑ€Ñ…Ð½Ñ Ð³Ñ€Ð°Ð½Ð¸Ñ†Ñ Ð²Ð¸Ñ…Ð¾Ð´Ñƒ</i>, <i>ÐÐ¸Ð¶Ð½Ñ Ð³Ñ€Ð°Ð½Ð¸Ñ†Ñ Ð²Ð¸Ñ…Ð¾Ð´Ñƒ</i>, <i>Коефіцієнт входу 1</i>, <i>Коефіцієнт входу 2</i>, <i>Коефіцієнт входу 3</i>, <i>Коефіцієнт входу 4</i> — <a href="DAQ.html#LogicLevLnks" title="Special:MyLanguage/Documents/DAQ">зв'Ñзати із джерелом ПІД-регулÑтору</a>.</li> <li> <i>Додаток та множник до входу</i> — викориÑтати Ð´Ð»Ñ Ð¿Ñ€Ð¾Ñтої лінійної корекції входу, Ð´Ð»Ñ Ð¿Ñ€Ð¸ÐºÐ»Ð°Ð´Ñƒ дивітьÑÑ ÑˆÐ°Ð±Ð»Ð¾Ð½ "<a href="#anUnif">Ðналоговий Ñигнал, уніфікований</a>".</li> <li> <i>Дозволене Ð¿ÐµÑ€ÐµÐ²Ð¸Ñ‰ÐµÐ½Ð½Ñ ÑˆÐºÐ°Ð»Ð¸</i> — вÑтановити за потреби Ð¿ÐµÑ€ÐµÐ²Ð¸Ñ‰ÐµÐ½Ð½Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñм загальної шкали та коли Ñ†Ñ ÑˆÐºÐ°Ð»Ð° починає виконувати рекомендавчу функцію, Ñкажемо Ð´Ð»Ñ Ð¿Ð¾Ñ‡Ð°Ñ‚ÐºÐ¾Ð²Ð¾Ð³Ð¾ Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ñ–Ñторії у цій шкалі.</li> <li> <i>Ð†Ð¼Ñ–Ñ‚Ð°Ñ†Ñ–Ñ Ñ‚Ð° вхід імітації ПЛК</i> — визначити за потреби імітації входу згідно опиÑу у функціÑÑ….</li></ul></dd> <dd>4. РЕЗУЛЬТÐТ: ЗапуÑтивши об'єкт контролеру (де Ñтворено цей параметр) та Ñкщо він не був запущений, маємо отримати оперативні дані у вкладці "Ðтрибути", длÑ: змінної, Ñтану помилки; та генерацію порушень, Ñкщо Ñтан помилки ненульовий. Також отримаємо вÑÑ– ПІД-Ñпецифічні атрибути.</dd> <dd>5. У процеÑÑ– роботи, через вкладку оперативних даних "Ðтрибути", окрім Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ñ€ÐµÐ·ÑƒÐ»ÑŒÑ‚Ð°Ñ‚Ñƒ можна здійÑнювати оперативне Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚Ð° контроль щодо: <ul><li> <i>Шкала: мінімум та макÑимум</i> — Ñуворо <a class="image" href="http://oscada.org/wiki/File:At.png"><img alt="At.png" height="22" src="../en/files/At.png" width="22" /></a> вÑтановити у діапазон зміни даних за наÑвніÑÑ‚ÑŽ та відповідно до апаратної границі, інакше Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð±ÑƒÐ´Ðµ викривлене! </li> <li> <i>Шкала: квадратична</i> — вÑтановити Ñкщо апаратна шкала квадратична.</li> <li> <i>Ð§Ð°Ñ Ñ„Ñ–Ð»ÑŒÑ‚Ñ€Ñƒ</i> — вÑтановити у Ñ‡Ð°Ñ Ñ„Ñ–Ð»ÑŒÑ‚Ñ€Ð°Ñ†Ñ–Ñ— Ð´Ð»Ñ Ð·Ð°ÑˆÑƒÐ¼Ð»ÐµÐ½Ð¸Ñ… Ñигналів.</li> <li> <i>ÐŸÑ€Ð¸Ð´ÑƒÑˆÐµÐ½Ð½Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½ÑŒ</i> — вÑтановити за потреби повного Ð¿Ñ€Ð¸Ð´ÑƒÑˆÐµÐ½Ð½Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½ÑŒ параметру — вимкнути Ñ—Ñ… генерацію взагалі.</li> <li> <i>Затримка порушень</i> — вÑтановити Ñ‡Ð°Ñ Ð·Ð°Ñ‚Ñ€Ð¸Ð¼ÐºÐ¸ генерації порушеннÑ, Ð´Ð»Ñ Ð²Ð¸ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ñ‡Ð°Ñтої генерації, характерної Ð´Ð»Ñ Ð½ÐµÐ¿ÐµÐ²Ð½Ð¸Ñ… джерел даних, що відрізнÑÑŽÑ‚ÑŒÑÑ ÐºÐ¾Ñ€Ð¾Ñ‚ÐºÐ¾Ñ‡Ð°Ñною втратою зв'Ñзку.</li> <li> <i>Ð“Ñ€Ð°Ð½Ð¸Ñ†Ñ Ð²ÐµÑ€Ñ…Ð½Ñ/Ð½Ð¸Ð¶Ð½Ñ Ð°Ð²Ð°Ñ€Ñ–Ð¹Ð½Ð°/попереджувальна</i> — вÑтановити коли треба генерувати Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ð·Ð° виходом за аварійну/попереджувальну границі.</li> <li> <i>ГиÑÑ‚ÐµÑ€ÐµÐ·Ð¸Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ð³Ñ€Ð°Ð½Ð¸Ñ†ÑŒ</i> — вÑтановити у гіÑÑ‚ÐµÑ€ÐµÐ·Ð¸Ñ Ð·Ð½ÑÑ‚Ñ‚Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ, тобто знÑÑ‚Ñ‚Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ð²Ñ–Ð´Ð±ÑƒÐ²Ð°Ñ”Ñ‚ÑŒÑÑ Ð½Ð° вказаний відÑоток пізніше, щоб запобігти чаÑтій генерації за коливаннÑм Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð±Ñ–Ð»Ñ Ð³Ñ€Ð°Ð½Ð¸Ñ†Ñ–.</li> <li> <i>ШвидкіÑÑ‚ÑŒ зміни</i> — вÑтановити Ñкщо треба попереджати про швидку зміну значеннÑ.</li> <li> <i>Ðазва, ОпиÑ, ÐžÐ´Ð¸Ð½Ð¸Ñ†Ñ Ð²Ð¸Ð¼Ñ–Ñ€Ñƒ, ТочніÑÑ‚ÑŒ, Логарифмічна шкала</i> — вÑтановити за потреби такої інформації при відображені, або Ñк елементи паÑпорту.</li></ul></dd></dl> <p><br /> </p> <table class="wikitable"> <tr> <td> <span id="pidUnifImp" title="#pidUnifImp"><h3><span class="mw-headline" id=".D0.86.D0.BC.D0.BF.D1.83.D0.BB.D1.8C.D1.81.D0.BD.D0.B8.D0.B9_.D0.9F.D0.86.D0.94_.D1.81.D0.B8.D0.B3.D0.BD.D0.B0.D0.BB.2C_.D1.83.D0.BD.D1.96.D1.84.D1.96.D0.BA.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B9.2C_.D1.81.D1.82.D0.B0.D0.BD.D0.B8_.D0.BF.D0.BE.D1.80.D1.83.D1.88.D0.B5.D0.BD.D1.8C_.28pidUnifImp.29"><span class="mw-headline-number">1.8</span> ІмпульÑний ПІД Ñигнал, уніфікований, Ñтани порушень (<a href="Libs_Main.html#pidUnifImp" title="Special:MyLanguage/Libs/Main">pidUnifImp</a>)</span></h3></span> </td> <td> 1.1 </td> <td> GPLv2 </td> <td> * </td> <td> en, uk, ru </td> <td> <a class="external" href="http://oscada.org/wiki/User:RomanSavochenko" title="User:RomanSavochenko">Роман Савоченко</a> </td></tr></table> <p>Загальний, предÑтавницький та уніфікований шаблон інтерфейÑу до Пропорційного Інтегрального Диференційного (ПІД) регулÑтору заÑнованому на аналоговому вхідному Ñигналі але із ШІМ-виходом, розширеному бінарними Ñтанами індикації порушень та переважно Ñхоже на шаблон "<a href="#pidUnif">ПІД Ñигнал, уніфікований, Ñтани порушень</a>". Шаблон формує Ñтруктуру імпульÑного ПІД-регулÑтору, Ñкий може бути легко підключений до деÑких кадрів та віджетів <a href="Libs_Main_graphical_elements.html" title="Special:MyLanguage/Libs/Main graphical elements">бібліотеки оÑновних елементів інтерфейÑу кориÑтувача</a>, проÑто вказавши об'єкт параметру. </p> <ul><li> <b>СпонÑоровано:</b> <a class="external text" href="http://diyaorg.dp.ua" rel="nofollow noreferrer noopener" target="_blank">ТОВ "ДІЯ"</a></li></ul> <p>ПредÑтавницька Ñтруктура імпульÑних ПІД-регулÑторів переважно еквівалентна шаблону "<a href="#pidUnif">ПІД Ñигнал, уніфікований, Ñтани порушень</a>" та міÑтить низку атрибутів, Ñпецифічних до імпульÑного виходу та атрибут Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ€Ð¾Ð±Ð¾Ñ‚Ð¸ цього регулÑтору у аналоговому режимі, тобто цей шаблон Ñ” навіть більш узагальнювальним: </p> <ul><li> "ІмпульÑний вихід у гору (<b>impQup</b>)" та "ІмпульÑний вихід до низу (<b>impQdwn</b>)" — Ñигнали ШІМ-виходу.</li> <li> "Режим: аналоговий (<b>analog</b>)" — ознака роботи регулÑтору у режимі аналогового виходу.</li></ul> <p><b><u>Функції</u></b><br /> Переважно те Ñаме що у базового шаблону "<a href="#pidUnif">ПІД Ñигнал, уніфікований, Ñтани порушень</a>" та додатково надаютьÑÑ Ñ–Ð¼Ð¿ÑƒÐ»ÑŒÑно-Ñпецифічні атрибути: "ІмпульÑний вихід у гору", "ІмпульÑний вихід до низу", "Режим: аналоговий", "T період імпульÑів", "Мінімальна довжина імпульÑу", "Рейтинг фактор імпульÑів". </p><p><b><u>Ð’Ð’ шаблону</u></b><br /> </p> <table class="wikitable"> <tr> <th> Ідентифікатор </th> <th> Ім'Ñ </th> <th> Тип </th> <th> Режим </th> <th> Ðтрибут </th> <th> ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ </th> <th> Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ </th></tr> <tr> <td colspan="7"> Ð’Ð’ шаблону "<a href="#anUnif">ПІД Ñигнал, уніфікований, Ñтани порушень</a>" </td></tr> <tr> <td> impQup </td> <td> ІмпульÑний вихід у гору </td> <td> Логічний </td> <td> Вхід </td> <td> Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td> Зв'Ñзок </td> <td> ПІД|impQupTm </td></tr> <tr> <td> impQdwn </td> <td> ІмпульÑний вихід до низу </td> <td> Логічний </td> <td> Вхід </td> <td> Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td> Зв'Ñзок </td> <td> ПІД|impQdwnTm </td></tr> <tr> <td> analog </td> <td> Режим: аналоговий </td> <td> Логічний </td> <td> Вхід </td> <td> Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td> Зв'Ñзок </td> <td> ПІД|analog </td></tr> <tr> <td> TImpPer </td> <td> T період імпульÑів, міліÑекунд </td> <td> Цілий </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Зв'Ñзок </td> <td> ПІД|TImpPer </td></tr> <tr> <td> TImpMin </td> <td> Мінімальна довжина імпульÑу, міліÑекунд </td> <td> Цілий </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Зв'Ñзок </td> <td> ПІД|TImpMin </td></tr> <tr> <td> KImpRfact </td> <td> Рейтинг фактор імпульÑів </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Зв'Ñзок </td> <td> ПІД|KImpRfact </td></tr></table> <p><b><u>ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ Ñ‚Ð° викориÑтаннÑ</u></b><br /> Переважно те Ñаме що у базового шаблону "<a href="#pidUnif">ПІД Ñигнал, уніфікований, Ñтани порушень</a>" із відмінніÑÑ‚ÑŽ викориÑÑ‚Ð°Ð½Ð½Ñ Ñ–Ð¼Ð¿ÑƒÐ»ÑŒÑо-Ñпецифічного виходу: "ІмпульÑний вихід у гору", "ІмпульÑний вихід до низу", "Режим: аналоговий", "T період імпульÑів", "Мінімальна довжина імпульÑу", "Рейтинг фактор імпульÑів". </p> <h2><span class="mw-headline" id=".D0.A8.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B8_.D0.BA.D0.BE.D0.BC.D0.BF.D0.BB.D0.B5.D0.BA.D1.81.D0.BD.D0.B8.D1.85_.D0.BE.D0.B1.27.D1.94.D0.BA.D1.82.D1.96.D0.B2"><span class="mw-headline-number">2</span> <span id="ComplexObject" title="#ComplexObject">Шаблони комплекÑних об'єктів</span></span></h2> <p>У окремих випадках, коли деÑкий об'єкт Ñ” лише чаÑтиною загальної автоматизованої ÑиÑтеми та такий що не потребує глибокої деталізації до Ñ€Ñ–Ð²Ð½Ñ Ñигналів та параметрів (Ñкладного тегу) довкола них, включно без потреби архівації, Ñ—Ñ… зручно уніфікувати у одному предÑтавницькому об'єкті джерела даних OpenSCADA із відповідним конÑолідованим предÑтавленнÑм та контролем об'єкту, Ñк набору проÑтих атрибутів із елементами Ñигналізації. Така конÑÐ¾Ð»Ñ–Ð´Ð°Ñ†Ñ–Ñ Ñ‡Ð°Ñто відбуваєтьÑÑ Ð´Ð¾Ð²ÐºÐ¾Ð»Ð° Ñпеціалізованих джерел даних, доÑтуп до даних Ñких зазвичай й реалізуютьÑÑ Ð¾ÐºÑ€ÐµÐ¼Ð¸Ð¼ протоколом обміну, але без уніфікації передачі цих даних на рівень візуалізації та Ñигналізації за окремим атрибутом об'єкту. </p><p>Загалом, предÑтавницькою Ñтруктурою комплекÑного об'єкту Ñ”: </p> <ul><li> "Ð’ÑÑ– елементи (<b>items</b>)" — Ñпільний атрибут об'єктного типу де атрибути фізичного об'єкту прÑмо опиÑуютьÑÑ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ð°Ð¼Ð¸ об'єктного типу у <b>items</b> та із визначеними опиÑовими атрибутами у кожному: <ul><li> <i>id</i> — ідентифікатор атрибуту;</li> <li> <i>descr</i> — текÑтовий Ð¾Ð¿Ð¸Ñ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ñƒ;</li> <li> <i>wr</i> — ознака можливоÑÑ‚Ñ– запиÑу до атрибуту або перелік варіантів значень Ð´Ð»Ñ Ñ—Ñ… обраннÑ, через Ñимвол ';';</li> <li> <i>alarm</i> — код порушеннÑ: <ul><li> 0 — відÑутніÑÑ‚ÑŒ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ â€” "ÐОРМÐ";</li> <li> 1 — Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ñ€Ñ–Ð²Ð½Ñ "ПОПЕРЕДЖЕÐÐЯ";</li> <li> 2 — Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ñ€Ñ–Ð²Ð½Ñ "ÐÐ’ÐРІЯ";</li></ul></li> <li> <i>val</i> — Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ñƒ;</li> <li> <i>set</i> — Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ñƒ Ð´Ð»Ñ Ð²ÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ñ–Ð² доÑтупних Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸Ñу.</li></ul></li> <li> "Помилка (<b>err</b>)" — обов'Ñзковий атрибут загального ÑтатуÑу Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ð·Ð° об'єктом цілком, що міÑтить комбінацію коду помилки та короткого опиÑу, на кшталт "2:Ðемає даних або Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð´Ð¾ джерела". Зарезервовано наÑтупні коди помилок: <ul><li> <b>1</b> — Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ñ€Ñ–Ð²Ð½Ñ "ПОПЕРЕДЖЕÐÐЯ";</li> <li> <b>2</b> — Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ñ€Ñ–Ð²Ð½Ñ "ÐÐ’ÐРІЯ";</li> <li> <b>3</b> — недоÑтовірніÑÑ‚ÑŒ або відÑутніÑÑ‚ÑŒ даних.</li></ul></li> <li> "ÐŸÑ€Ð¸Ð´ÑƒÑˆÐµÐ½Ð½Ñ (<b>alSup</b>) та затримка (<b>alDelay</b>) порушень" — загальний контроль порушень щодо Ð¿Ñ€Ð¸Ð´ÑƒÑˆÐµÐ½Ð½Ñ Ñ‚Ð° затримки.</li></ul> <p>Узагальнюючи, такий шаблон (прошарок над об'єктом фізичних джерел даних) доцільно Ñтворювати над джерелом Ñирих даних, Ñке надає ці дані у виглÑді атрибутів та без обробки, та цей шаблон відтак здійÑнює: </p> <ul><li> збірку цих атрибутів Ñирого джерела до <b>items</b>;</li> <li> Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð²Ð»Ð°ÑтивоÑтей атрибутів;</li> <li> перевірку та передачу команд вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½ÑŒ;</li> <li> Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ ÑƒÐ¼Ð¾Ð² порушень Ñк за окремими атрибутами так Ñ– загалом за об'єктом, разом з Ñким ці Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ð¼Ð¾Ð¶ÑƒÑ‚ÑŒ фікÑуватиÑÑ Ñƒ <a href="Program_manual.html#ArchMess" title="Special:MyLanguage/Documents/Program manual">таблиці поточних порушень</a>, зазвичай <a href="User_API.html#SYS.DAQ" title="Special:MyLanguage/Documents/User API">функцією alarmSet()</a>.</li></ul> <p>Окрім шаблонів комплекÑного об'єкту цей механізм загально-об'єктного контролю може реалізовуватиÑÑ ÑˆÐ°Ð±Ð»Ð¾Ð½Ð°Ð¼Ð¸ реалізації <a href="DAQ.html#LogicLev" title="Special:MyLanguage/Documents/DAQ">логічного Ñ€Ñ–Ð²Ð½Ñ Ð´Ð¾Ñтупу до даних</a>, Ñк то у <a href="Libs_Devices.html#IEC60870" title="Special:MyLanguage/Libs/Devices">IEC60870</a>. </p><p>Ð”Ð»Ñ Ð¿Ñ€ÐµÐ´ÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… механізму загально-об'єктного контролю наразі надаєтьÑÑ Ð²Ñ–Ð´Ð¿Ð¾Ð²Ñ–Ð´Ð½Ð¸Ð¹ <a href="Libs_Main_graphical_elements.html#objProps" title="Special:MyLanguage/Libs/Main graphical elements">кадр "ВлаÑтивоÑÑ‚Ñ– об'єкту"</a>, Ñкий надає ці влаÑтивоÑÑ‚Ñ– у виглÑді таблиці-переліку із підÑвіченнÑм порушень та можливіÑÑ‚ÑŽ зміни обраних та редагованих влаÑтивоÑтей-Ñ€Ñдків. </p><p><br /> </p> <table class="wikitable"> <tr> <td> <span id="UPS" title="#UPS"><h3><span class="mw-headline" id=".D0.94.D0.B6.D0.B5.D1.80.D0.B5.D0.BB.D0.BE_.D0.91.D0.B5.D0.B7.D0.BF.D0.B5.D1.80.D0.B5.D0.B1.D1.96.D0.B9.D0.BD.D0.BE.D0.B3.D0.BE_.D0.96.D0.B8.D0.B2.D0.BB.D0.B5.D0.BD.D0.BD.D1.8F_.28UPS.29"><span class="mw-headline-number">2.1</span> Джерело Безперебійного Ð–Ð¸Ð²Ð»ÐµÐ½Ð½Ñ (<a href="Libs_Main.html#UPS" title="Special:MyLanguage/Libs/Main">UPS</a>)</span></h3></span> </td> <td> 1.3 </td> <td> GPLv2 </td> <td> * </td> <td> en, uk, ru </td> <td> <a class="external" href="http://oscada.org/wiki/User:RomanSavochenko" title="User:RomanSavochenko">Роман Савоченко</a> </td></tr></table> <div class="floatright"><a class="image" href="http://oscada.org/wiki/File:LibsMainUPSOp_uk.png" title="Результат та оперативні налаштуваннÑ."><img alt="Результат та оперативні налаштуваннÑ." height="749" src="files/LibsMainUPSOp_uk.png" width="385" /></a></div> <p>Об'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… Джерела Безперебійного Ð–Ð¸Ð²Ð»ÐµÐ½Ð½Ñ Ñƒ комплекÑному об'єкті атрибуту "Ð’ÑÑ– елементи". Шаблон розроблено Ð´Ð»Ñ Ð²Ð¸ÐºÐ¾Ñ€Ð¸ÑÑ‚Ð°Ð½Ð½Ñ Ñ–Ð· модулем джерела даних "<a href="Modules/System.html" title="Special:MyLanguage/Modules/System">СиÑтема</a>" у чаÑтині "ДБЖ" та предÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ñ†Ð¸Ñ… даних <a href="Libs_Main_graphical_elements.html#objProps" title="Special:MyLanguage/Libs/Main graphical elements">кадром "ВлаÑтивоÑÑ‚Ñ– об'єкту"</a> Ñк комплекÑний об'єкт із влаÑтивоÑÑ‚Ñми, Ñигналізацією за окремими границÑми та запиÑом. </p> <ul><li> <b>СпонÑоровано:</b> <a class="external text" href="http://diyaorg.dp.ua" rel="nofollow noreferrer noopener" target="_blank">ТОВ "ДІЯ"</a></li></ul> <p><b><u>Ð’Ð’ шаблону</u></b><br /> </p> <table class="wikitable"> <tr> <th> Ідентифікатор </th> <th> Ім'Ñ </th> <th> Тип </th> <th> Режим </th> <th> Ðтрибут </th> <th> ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ </th> <th> Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ </th></tr> <tr> <td> srcAddr </td> <td> ÐдреÑа вихідного об'єкту </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> </td></tr> <tr> <td> alSup </td> <td> ÐŸÑ€Ð¸Ð´ÑƒÑˆÐµÐ½Ð½Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½ÑŒ </td> <td> Логічний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td>Змінна </td> <td> </td></tr> <tr> <td> alDelay </td> <td> Затримка порушень, Ñекунди </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> items </td> <td> Ð’ÑÑ– елементи </td> <td> Об'єкт </td> <td> Вихід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> </td></tr> <tr> <td> bChL </td> <td> ЗарÑд батареї низький </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 20 </td></tr> <tr> <td> bChLL </td> <td> ЗарÑд батареї критичний </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 5 </td></tr> <tr> <td> inVL </td> <td> Ðизька вхідна напруга </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 210 </td></tr> <tr> <td> inVH </td> <td> ВиÑока вхідна напруга </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 250 </td></tr> <tr> <td> inFLL </td> <td> Дуже низька вхідна чаÑтота </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 40 </td></tr> <tr> <td> inFL </td> <td> Ðизька вхідна чаÑтота </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 45 </td></tr> <tr> <td> inFH </td> <td> ВиÑока вхідна чаÑтота </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 55 </td></tr> <tr> <td> inFHH </td> <td> Дуже виÑока вхідна чаÑтота </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 60 </td></tr> <tr> <td> loadH </td> <td> ÐÐ°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð²Ð¸Ñоке </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 80 </td></tr> <tr> <td> loadHH </td> <td> ÐÐ°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð´ÑƒÐ¶Ðµ виÑоке </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 100 </td></tr> <tr> <td> tH </td> <td> Температура виÑока </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 50 </td></tr> <tr> <td> tHH </td> <td> Температура дуже виÑока </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 70 </td></tr> <tr> <td> this </td> <td> Об'єкт </td> <td> Об'єкт </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> SHIFR </td> <td> Шифр </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> NAME </td> <td> Ім'Ñ </td> <td> Ð Ñдок (переклад) </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> DESCR </td> <td> ÐžÐ¿Ð¸Ñ </td> <td> ТекÑÑ‚ (переклад) </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> f_stop </td> <td> Прапорець зупинки функції </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_frq </td> <td> ЧаÑтота обчиÑÐ»ÐµÐ½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ—, Гц </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 1000 </td></tr> <tr> <td> f_err </td> <td> Помилка функції </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_start </td> <td> Прапорець запуÑку функції </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr></table> <div class="floatright"><a class="image" href="http://oscada.org/wiki/File:LibsMainUPSCfg_uk.png" title="КонфігураціÑ."><img alt="КонфігураціÑ." height="170" src="files/LibsMainUPSCfg_uk.png" width="382" /></a></div> <p><b><u>ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ Ñ‚Ð° викориÑтаннÑ</u></b><br /> </p> <dl><dd>1. Створити об'єкт контролеру джерела у модулі "<a href="Modules/System.html" title="Special:MyLanguage/Modules/System">СиÑтема</a>" та вÑтановити його Ідентифікатор на кшталт "SYSData".</dd> <dd>2. Створити об'єкт параметру джерела у попередньо Ñтвореному об'єкті контролера та вÑтановити його Ідентифікатор на кшталт "UPS".</dd> <dd>3. Створити та запуÑтити <a href="Modules/LogicLev.html" title="Special:MyLanguage/Modules/LogicLev">об'єкт логічного контролеру</a> або викориÑтати будь Ñкий наÑвний з потрібними влаÑтивоÑÑ‚Ñми плануваннÑ.</dd> <dd>4. Створити <a href="Modules/LogicLev.html" title="Special:MyLanguage/Modules/LogicLev">об'єкт логічного параметру</a> та обрати цей шаблон Ð´Ð»Ñ Ð½ÑŒÐ¾Ð³Ð¾. Ввімкнути параметр.</dd> <dd>5. У вкладці "ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ ÑˆÐ°Ð±Ð»Ð¾Ð½Ñƒ" об'єкту логічного параметру ви маєте вÑтановити: <ul><li> <i>ÐдреÑа вихідного об'єкту</i> — у адреÑу об'єкту вихідного параметру ДБЖ (дивітьÑÑ ÐºÑ€Ð¾Ðº 1), на кшталт "System.SYSData.UPS".</li></ul></dd> <dd>6. РЕЗУЛЬТÐТ: ЗапуÑтивши об'єкт контролеру (де Ñтворено цей параметр) та Ñкщо він не був запущений, маємо отримати у атрибуті параметру <i>items</i> цей об'єкт з уÑіма атрибутами та Ñ—Ñ… влаÑтивоÑÑ‚Ñми. У випадку деÑких порушень отримаємо відповідну інформацію у атрибуті параметру <i>err</i>, ÑтоÑовно чого ви можете налаштувати атрибути границь відповідних порушень.</dd> <dd>7. У візуальному інтерфейÑÑ– розробки Ð¼Ð¾Ð´ÑƒÐ»Ñ <a href="Modules/Vision.html" title="Special:MyLanguage/Modules/Vision">Vision</a> розташуйте кадр "<a href="Libs_Main_graphical_elements.html#objProps" title="Special:MyLanguage/Libs/Main graphical elements">ВлаÑтивоÑÑ‚Ñ– об'єкту</a>" до будь-Ñкої Ñторінки та зв'Ñжіть його із об'єктом цього параметру, Ñтвореного на кроці 4.</dd> <dd>8. РЕЗУЛЬТÐТ: При виконанні Ñторінки ви отримаєте таблицю з даними об'єкту, повідомленнÑм про Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ñƒ заголовку та об'єкті Ñигналізації та можливіÑÑ‚ÑŽ вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð²Ð»Ð°ÑтивоÑтей доÑтупних до запиÑу.</dd></dl> <p><br /> </p> <table class="wikitable"> <tr> <td> <span id="SNMP" title="#SNMP"><h3><span class="mw-headline" id=".D0.9C.D0.B5.D1.80.D0.B5.D0.B6.D0.B5.D0.B2.D1.96_.D0.BF.D1.80.D0.B8.D1.81.D1.82.D1.80.D0.BE.D1.97_.D0.B7.D0.B0_SNMP_.28SNMP.29"><span class="mw-headline-number">2.2</span> Мережеві приÑтрої за SNMP (<a href="Libs_Main.html#SNMP" title="Special:MyLanguage/Libs/Main">SNMP</a>)</span></h3></span> </td> <td> 1.1 </td> <td> GPLv2 </td> <td> * </td> <td> en, uk, ru </td> <td> <a class="external" href="http://oscada.org/wiki/User:RomanSavochenko" title="User:RomanSavochenko">Роман Савоченко</a> </td></tr></table> <div class="floatright"><a class="image" href="http://oscada.org/wiki/File:LibsMainSNMPOp_uk.png" title="Результат та оперативні налаштуваннÑ."><img alt="Результат та оперативні налаштуваннÑ." height="531" src="files/LibsMainSNMPOp_uk.png" width="368" /></a></div> <p>Об'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… приÑтрою, доÑтупного за протоколом SNMP, у комплекÑному об'єкті атрибуту "Ð’ÑÑ– елементи". Шаблон розроблено Ð´Ð»Ñ Ð²Ð¸ÐºÐ¾Ñ€Ð¸ÑÑ‚Ð°Ð½Ð½Ñ Ñ–Ð· модулем джерела даних "<a href="Modules/SNMP.html" title="Special:MyLanguage/Modules/SNMP">SNMP</a>" та предÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ñ†Ð¸Ñ… даних <a href="Libs_Main_graphical_elements.html#objProps" title="Special:MyLanguage/Libs/Main graphical elements">кадром "ВлаÑтивоÑÑ‚Ñ– об'єкту"</a> Ñк комплекÑний об'єкт із влаÑтивоÑÑ‚Ñми, Ñигналізацією за окремими границÑми та запиÑом. Враховуючи велику Ñпецифіку та Ñ€Ð¾Ð·Ð¼Ð°Ñ—Ñ‚Ñ‚Ñ Ð¿Ñ€Ð¸Ñтроїв доÑтупних за протоколом SNMP, цей шаблон фактично Ñ” заготовкою та прикладом ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð½Ð° його оÑнові шаблону до відповідного приÑтрою із Ñпецифічною до нього обробкою вхідних влаÑтивоÑтей, Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½ÑŒ та можливіÑÑ‚ÑŽ запиÑу. </p> <ul><li> <b>СпонÑорувано:</b> ПÐС Ð¥ÐРТРОÐ</li></ul> <p><b><u>Ð’Ð’ шаблону</u></b><br /> </p> <table class="wikitable"> <tr> <th> Ідентифікатор </th> <th> Ім'Ñ </th> <th> Тип </th> <th> Режим </th> <th> Ðтрибут </th> <th> ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ </th> <th> Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ </th></tr> <tr> <td> srcAddr </td> <td> ÐдреÑа вихідного об'єкту </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> </td></tr> <tr> <td> manTables </td> <td> Ручні таблиці </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> </td></tr> <tr> <td> alSup </td> <td> ÐŸÑ€Ð¸Ð´ÑƒÑˆÐµÐ½Ð½Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½ÑŒ </td> <td> Логічний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td>Змінна </td> <td> </td></tr> <tr> <td> alDelay </td> <td> Затримка порушень, Ñекунди </td> <td> Реальний </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> items </td> <td> Ð’ÑÑ– елементи </td> <td> Об'єкт </td> <td> Вихід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> </td></tr> <tr> <td> this </td> <td> Об'єкт </td> <td> Об'єкт </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> SHIFR </td> <td> Шифр </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> NAME </td> <td> Ім'Ñ </td> <td> Ð Ñдок (переклад) </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> DESCR </td> <td> ÐžÐ¿Ð¸Ñ </td> <td> ТекÑÑ‚ (переклад) </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> f_err </td> <td> Помилка функції </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_start </td> <td> Прапорець запуÑку функції </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_stop </td> <td> Прапорець зупинки функції </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_frq </td> <td> ЧаÑтота обчиÑÐ»ÐµÐ½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ—, Гц </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 1000 </td></tr></table> <div class="floatright"><a class="image" href="http://oscada.org/wiki/File:LibsMainSNMPCfg_uk.png" title="КонфігураціÑ."><img alt="КонфігураціÑ." height="197" src="files/LibsMainSNMPCfg_uk.png" width="370" /></a></div> <p><b><u>ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ Ñ‚Ð° викориÑтаннÑ</u></b><br /> </p> <dl><dd>1. Створити об'єкт контролеру джерела у модулі "<a href="Modules/SNMP.html" title="Special:MyLanguage/Modules/SNMP">SNMP</a>" та вÑтановити його Ідентифікатор на кшталт "SYSData".</dd> <dd>2. Створити об'єкт параметру джерела у попередньо Ñтвореному об'єкті контролера та вÑтановити його Ідентифікатор на кшталт "DEV".</dd> <dd>3. Створити та запуÑтити <a href="Modules/LogicLev.html" title="Special:MyLanguage/Modules/LogicLev">об'єкт логічного контролеру</a> або викориÑтати будь Ñкий наÑвний з потрібними влаÑтивоÑÑ‚Ñми плануваннÑ.</dd> <dd>4. Створити <a href="Modules/LogicLev.html" title="Special:MyLanguage/Modules/LogicLev">об'єкт логічного параметру</a> та обрати цей шаблон Ð´Ð»Ñ Ð½ÑŒÐ¾Ð³Ð¾. Ввімкнути параметр.</dd> <dd>5. У вкладці "ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ ÑˆÐ°Ð±Ð»Ð¾Ð½Ñƒ" об'єкту логічного параметру ви маєте вÑтановити: <ul><li> <i>ÐдреÑа вихідного об'єкту</i> — у адреÑу об'єкту параметру вихідного приÑтрою SNMP (дивітьÑÑ ÐºÑ€Ð¾Ðº 1), на кшталт "SNMP.SYSData.DEV";</li> <li> <i>Ручні таблиці</i> — вручну введіть деÑкі Ñтатичні MIB-змінні.</li></ul></dd> <dd>6. РЕЗУЛЬТÐТ: ЗапуÑтивши об'єкт контролеру (де Ñтворено цей параметр) та Ñкщо він не був запущений, маємо отримати у атрибуті параметру <i>items</i> цей об'єкт з уÑіма атрибутами та Ñ—Ñ… влаÑтивоÑÑ‚Ñми. У випадку деÑких порушень отримаємо відповідну інформацію у атрибуті параметру <i>err</i>, ÑтоÑовно чого ви можете налаштувати атрибути границь відповідних порушень.</dd> <dd>7. У візуальному інтерфейÑÑ– розробки Ð¼Ð¾Ð´ÑƒÐ»Ñ <a href="Modules/Vision.html" title="Special:MyLanguage/Modules/Vision">Vision</a> розташуйте <a href="Libs_Main_graphical_elements.html#objProps" title="Special:MyLanguage/Libs/Main graphical elements">кадр "ВлаÑтивоÑÑ‚Ñ– об'єкту"</a> до будь-Ñкої Ñторінки та зв'Ñжіть його із об'єктом цього параметру, Ñтвореного на кроці 4.</dd> <dd>8. РЕЗУЛЬТÐТ: При виконанні Ñторінки ви отримаєте таблицю з даними об'єкту, повідомленнÑм про Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ñƒ заголовку та об'єкті Ñигналізації та можливіÑÑ‚ÑŽ вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð²Ð»Ð°ÑтивоÑтей доÑтупних до запиÑу.</dd></dl> <p><br /> </p> <table class="wikitable"> <tr> <td> <span id="DiskSMART" title="#DiskSMART"><h3><span class="mw-headline" id=".D0.94.D0.B8.D1.81.D0.BA.D0.BE.D0.B2.D0.B8.D0.B9_SMART_.28DiskSMART.29"><span class="mw-headline-number">2.3</span> ДиÑковий SMART (<a href="Libs_Main.html#DiskSMART" title="Special:MyLanguage/Libs/Main">DiskSMART</a>)</span></h3></span> </td> <td> 1.0 </td> <td> GPLv2 </td> <td> * </td> <td> en, uk </td> <td> <a class="external" href="http://oscada.org/wiki/User:RomanSavochenko" title="User:RomanSavochenko">Роман Савоченко</a> </td></tr></table> <div class="floatright"><a class="image" href="http://oscada.org/wiki/File:LibsMainDiskSMARTOp_uk.png" title="Результат та оперативні налаштуваннÑ."><img alt="Результат та оперативні налаштуваннÑ." height="547" src="files/LibsMainDiskSMARTOp_uk.png" width="382" /></a></div> <p>Об'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… диÑкового SMART у комплекÑному об'єкті атрибуту "Ð’ÑÑ– елементи". Шаблон розроблено Ð´Ð»Ñ Ð²Ð¸ÐºÐ¾Ñ€Ð¸ÑÑ‚Ð°Ð½Ð½Ñ Ñ–Ð· модулем джерела даних "<a href="Modules/System.html" title="Special:MyLanguage/Modules/System">СиÑтема</a>" у чаÑтині "SMART ДиÑку" та предÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ñ†Ð¸Ñ… даних <a href="Libs_Main_graphical_elements.html#objProps" title="Special:MyLanguage/Libs/Main graphical elements">кадром "ВлаÑтивоÑÑ‚Ñ– об'єкту"</a> Ñк комплекÑний об'єкт із влаÑтивоÑÑ‚Ñми Ñ– Ñигналізацією за загальних помилок. ДеÑкі атрибути SMART можуть бути невідомими або помилковими Ð´Ð»Ñ Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¾Ð³Ð¾ диÑку через Ñ—Ñ… відÑутніÑÑ‚ÑŒ у БД диÑків, оÑобливо Ð´Ð»Ñ ÑучаÑних SSD, тож шаблоном надаєтьÑÑ Ð²Ð»Ð°ÑтивіÑÑ‚ÑŒ Ð¿ÐµÑ€ÐµÐ²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð½Ð°Ð·Ð² атрибутів. </p><p><b><u>Ð’Ð’ шаблону</u></b><br /> </p> <table class="wikitable"> <tr> <th> Ідентифікатор </th> <th> Ім'Ñ </th> <th> Тип </th> <th> Режим </th> <th> Ðтрибут </th> <th> ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ </th> <th> Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ </th></tr> <tr> <td> srcAddr </td> <td> ÐдреÑа вихідного об'єкту </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> </td></tr> <tr> <td> items </td> <td> Ð’ÑÑ– елементи </td> <td> Об'єкт </td> <td> Вихід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> </td></tr> <tr> <td> defs </td> <td> Ð’Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ ÐµÐ»ÐµÐ¼ÐµÐ½Ñ‚Ñ–Ð² </td> <td> ТекÑÑ‚ </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> </td></tr> <tr> <td> this </td> <td> Об'єкт </td> <td> Об'єкт </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> SHIFR </td> <td> Шифр </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> NAME </td> <td> Ðазва </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> DESCR </td> <td> ÐžÐ¿Ð¸Ñ </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> f_err </td> <td> Помилка функції </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_start </td> <td> Прапорець запуÑку функції </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_stop </td> <td> Прапорець зупинки функції </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_frq </td> <td> ЧаÑтота обчиÑÐ»ÐµÐ½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ—, Гц </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 1000 </td></tr></table> <div class="floatright"><a class="image" href="http://oscada.org/wiki/File:LibsMainDiskSMARTCfg_uk.png" title="КонфігураціÑ."><img alt="КонфігураціÑ." height="187" src="files/LibsMainDiskSMARTCfg_uk.png" width="383" /></a></div> <p><b><u>ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ Ñ‚Ð° викориÑтаннÑ</u></b><br /> </p> <dl><dd>1. Створити об'єкт контролеру джерела у модулі "<a href="Modules/System.html" title="Special:MyLanguage/Modules/System">СиÑтема</a>" та вÑтановити його Ідентифікатор на кшталт "SYSData", вÑтановити влаÑтивіÑÑ‚ÑŒ "Ðвт. Ñтворювати активні джерела даних" у "Ð’ÑÑ– джерела" Ñ– запуÑтити вÑтановленнÑм "ВиконуєтьÑÑ".</dd> <dd>2. Створити та запуÑтити <a href="Modules/LogicLev.html" title="Special:MyLanguage/Modules/LogicLev">об'єкт логічного контролеру</a> або викориÑтати будь Ñкий наÑвний з потрібними влаÑтивоÑÑ‚Ñми плануваннÑ.</dd> <dd>3. Створити <a href="Modules/LogicLev.html" title="Special:MyLanguage/Modules/LogicLev">об'єкт логічного параметру</a> та обрати цей шаблон Ð´Ð»Ñ Ð½ÑŒÐ¾Ð³Ð¾. Ввімкнути параметр.</dd> <dd>4. У вкладці "ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ ÑˆÐ°Ð±Ð»Ð¾Ð½Ñƒ" об'єкту логічного параметру ви маєте вÑтановити: <ul><li> <i>ÐдреÑа вихідного об'єкту</i> — у адреÑу об'єкту вихідного параметру диÑку SMART на кшталт "System.SYSData.DiskSMARTsda".</li></ul></dd> <dd>5. РЕЗУЛЬТÐТ: ЗапуÑтивши об'єкт контролеру (де Ñтворено цей параметр) та Ñкщо він не був запущений, маємо отримати у атрибуті параметру <i>items</i> цей об'єкт з уÑіма атрибутами та Ñ—Ñ… влаÑтивоÑÑ‚Ñми. У випадку деÑких порушень отримаємо відповідну інформацію у атрибуті параметру <i>err</i>.</dd> <dd>6. У візуальному інтерфейÑÑ– розробки Ð¼Ð¾Ð´ÑƒÐ»Ñ <a href="Modules/Vision.html" title="Special:MyLanguage/Modules/Vision">Vision</a> розташуйте кадр "<a href="Libs_Main_graphical_elements.html#objProps" title="Special:MyLanguage/Libs/Main graphical elements">ВлаÑтивоÑÑ‚Ñ– об'єкту</a>" до будь Ñкої Ñторінки та зв'Ñжіть його із об'єктом цього параметру, Ñтвореного на кроці 3.</dd> <dd>7. РЕЗУЛЬТÐТ: При виконанні Ñторінки ви отримаєте таблицю з даними об'єкту, повідомленнÑм про Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ñƒ заголовку та об'єкті Ñигналізації Ñ– можливіÑÑ‚ÑŽ перевизначити назви атрибутів SMART.</dd></dl> <h2><span class="mw-headline" id=".D0.A1.D0.B5.D1.80.D0.B2.D1.96.D1.81.D0.B8"><span class="mw-headline-number">3</span> СервіÑи</span></h2> <table class="wikitable"> <tr> <td> <span id="ntf" title="#ntf"><h3><span class="mw-headline" id=".D0.A1.D0.BF.D0.BE.D0.B2.D1.96.D1.89.D1.83.D0.B2.D0.B0.D1.87_.D0.B7.D0.B0_SMS.2C_EMail-SMTP_.28ntf.29"><span class="mw-headline-number">3.1</span> Сповіщувач за SMS, EMail-SMTP (<a href="Libs_Main.html#ntf" title="Special:MyLanguage/Libs/Main">ntf</a>)</span></h3></span> </td> <td> 1.0 </td> <td> GPLv2 </td> <td> * => <a href="Modules/UserProtocol.html" title="Special:MyLanguage/Modules/UserProtocol">UserProtocol</a> </td> <td> en, uk, ru </td> <td> <a class="external" href="http://oscada.org/wiki/User:RomanSavochenko" title="User:RomanSavochenko">Роман Савоченко</a> </td></tr></table> <div class="floatright"><a class="image" href="http://oscada.org/wiki/File:LibsMainNtfOp_uk.png" title="Результат та оперативні налаштуваннÑ."><img alt="Результат та оперативні налаштуваннÑ." height="527" src="files/LibsMainNtfOp_uk.png" width="600" /></a></div> <p>КомплекÑний шаблон ÑÐ¿Ð¾Ð²Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð¼Ñ–Ñтить чаÑтини диÑпетчеру та вихідний кориÑтувацький протокол ÑÐ¿Ð¾Ð²Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð·Ð° EMail(SMTP) та SMS. </p> <ul><li> <b>Загальна працеміÑткіÑÑ‚ÑŒ:</b> > 1.05 <span title="людино-днів, 1ЛД — 10 годин">ЛД<sup style="color: blue">[!]</sup></span></li> <li> <b>СпонÑоруваннÑ, ініціативної імплементації чаÑтини SMS-надÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° 0.2 <span title="людино-днів, 1ЛД — 10 годин">ЛД<sup style="color: blue">[!]</sup></span>:</b> <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Using/HouseSpirit" title="Special:MyLanguage/Using/HouseSpirit">Олег Сидашов</a></li> <li> <b>СпонÑоруваннÑ, уніфікації, Ð´Ð¾Ð´Ð°Ð½Ð½Ñ SMTP та контролеру ÑÐ¿Ð¾Ð²Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð½Ð° 0.65 <span title="людино-днів, 1ЛД — 10 годин">ЛД<sup style="color: blue">[!]</sup></span>:</b> ТОВ "СВІТоВИРÐВТоМÐТИК"</li></ul> <p><b>ДИСПЕТЧЕР</b> може виконуватиÑÑ Ð´Ð»Ñ Ð²ÐºÐ°Ð·Ð°Ð½Ð¸Ñ… повідомлень буферу повідомлень OpenSCADA та заÑтоÑовуєтьÑÑ Ð½Ð° <a href="DAQ.html#LogicLev" title="Special:MyLanguage/Documents/DAQ">Логічному рівні</a> або об'єкті контролеру <a href="Modules/JavaLikeCalc.html" title="Special:MyLanguage/Modules/JavaLikeCalc">Ð¼Ð¾Ð´ÑƒÐ»Ñ JavaLikeCalc</a>. </p><p><b><u>Ð’Ð’ шаблону</u></b><br /> </p> <table class="wikitable"> <tr> <th> Ідентифікатор </th> <th> Ім'Ñ </th> <th> Тип </th> <th> Режим </th> <th> Ðтрибут </th> <th> ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ </th> <th> Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ </th></tr> <tr> <td> io </td> <td> UserPrt: Вихідний Ð’Ð’ </td> <td> Об'єкт </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> tr </td> <td> UserPrt: ТранÑпорт </td> <td> Об'єкт </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> tmOut </td> <td> МакÑимальний таймаут ÑповіщеннÑ, Ñекунд </td> <td> Цілий </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> 5 </td></tr> <tr> <td> messLev </td> <td> Рівень Ñповіщень, негативний Ð´Ð»Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½ÑŒ </td> <td> Цілий </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> 1 </td></tr> <tr> <td> messCat </td> <td> ÐšÐ°Ñ‚ÐµÐ³Ð¾Ñ€Ñ–Ñ Ñповіщень, шаблон або регулÑрний вираз </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> al*:* </td></tr> <tr> <td> messCatExcl </td> <td> ÐšÐ°Ñ‚ÐµÐ³Ð¾Ñ€Ñ–Ñ Ð²Ð¸ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½ÑŒ, у регулÑрному виразі </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> </td></tr> <tr> <td> emailState </td> <td> Поточний Ñтан ÑÐ¿Ð¾Ð²Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð•Ð».поштою </td> <td> Ð Ñдок </td> <td> Вихід </td> <td> Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td> Змінна </td> <td> </td></tr> <tr> <td> emailTrAddr </td> <td> Вихідний транÑпорт SMTP підключень, порожньо Ð´Ð»Ñ Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> Sockets.out_SMTP </td></tr> <tr> <td> emailAuth </td> <td> ÐвтентифікаціÑ, порожньо Ð´Ð»Ñ Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> user:pass </td></tr> <tr> <td> emailSender </td> <td> Відправник </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> noreply@oscada.org </td></tr> <tr> <td> emailReceiver </td> <td> ÐдреÑа Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¾Ð´ÐµÑ€Ð¶ÑƒÐ²Ð°Ñ‡Ð° </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> test@oscada.org </td></tr> <tr> <td> emailTopic </td> <td> Тема Ел.пошти </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> ÐŸÐ¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ </td></tr> <tr> <td> emailMess </td> <td> ÐŸÐ¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð•Ð».пошти </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> </td></tr> <tr> <td> SMSState </td> <td> Поточний Ñтан Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ SMS </td> <td> Ð Ñдок </td> <td> Вихід </td> <td> Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td> Змінна </td> <td> </td></tr> <tr> <td> SMSTrAddr </td> <td> ПоÑлідовний транÑпорт SMS, порожньо Ð´Ð»Ñ Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> Serial.out_SMS </td></tr> <tr> <td> SMSPin </td> <td> Пін-код SMS, порожньо Ð´Ð»Ñ Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> 1111 </td></tr> <tr> <td> SMSTel </td> <td> ÐдреÑа одержувача SMS, номер телефону </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> +380XXXXXXXXX </td></tr> <tr> <td> SMSTextMd </td> <td> SMS у текÑтовому режимі, інакше PDU </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> 0 </td></tr> <tr> <td> f_frq </td> <td> ЧаÑтота обчиÑÐ»ÐµÐ½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ—, Гц </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 1000 </td></tr> <tr> <td> f_start </td> <td> Прапорець запуÑку функції </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_err </td> <td> Помилка функції </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_stop </td> <td> Прапорець зупинки функції </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr></table> <div class="floatright"><a class="image" href="http://oscada.org/wiki/File:LibsMainNtfCfg_uk.png" title="КонфігураціÑ."><img alt="КонфігураціÑ." height="475" src="files/LibsMainNtfCfg_uk.png" width="620" /></a></div> <p><b><u>ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ Ñ‚Ð° викориÑтаннÑ</u></b><br /> </p> <dl><dd>1. Створити параметр у об'єкті контролеру <a href="DAQ.html#LogicLev" title="Special:MyLanguage/Documents/DAQ">Логічного рівнÑ</a> або об'єкт контролеру у <a href="Modules/JavaLikeCalc.html" title="Special:MyLanguage/Modules/JavaLikeCalc">модулі DAQ.JavaLikeCalc</a>.</dd> <dd>2. Створити вихідний транÑпорт типу "<a href="Modules/Serial.html" title="Special:MyLanguage/Modules/Serial">ПоÑлідовний</a>" та вÑтановити його Ідентифікатор на кшталт "SMS", один транÑпорт підходить Ð´Ð»Ñ Ð±Ð°Ð³Ð°Ñ‚ÑŒÐ¾Ñ… одержувачів.</dd> <dd>3. Ð’Ñтановити влаÑтиву адреÑу, тільки Ð´Ð»Ñ <a href="Modules/Serial.html" title="Special:MyLanguage/Modules/Serial">ПоÑлідовного</a> приÑтрою. ШвидкіÑÑ‚ÑŒ, формат аÑинхронних даних та таймаути поÑлідовного порту будуть налаштовані функцією.</dd> <dd>4. Створити вихідний транÑпорт типу "<a href="Modules/Sockets.html" title="Special:MyLanguage/Modules/Sockets">Сокети</a>" або "<a href="Modules/SSL.html" title="Special:MyLanguage/Modules/SSL">SSL</a>" та вÑтановити його Ідентифікатор на кшталт "SMTP", один транÑпорт підходить Ð´Ð»Ñ Ð±Ð°Ð³Ð°Ñ‚ÑŒÐ¾Ñ… одержувачів.</dd> <dd>5. Ð’Ñтановити влаÑтиву адреÑу, Ð´Ð»Ñ Ð¡Ð¾ÐºÐµÑ‚Ñ–Ð²(25) або SSL(465). Таймаути транÑпорту будуть налаштовані функцією.</dd> <dd>6. У вкладці "ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ ÑˆÐ°Ð±Ð»Ð¾Ð½Ñƒ" ви маєте вÑтановити: <ul><li> МакÑимальний таймаут ÑповіщеннÑ, Ñекунд.</li> <li> Рівень повідомлень, негативний Ð´Ð»Ñ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½ÑŒ.</li> <li> ÐšÐ°Ñ‚ÐµÐ³Ð¾Ñ€Ñ–Ñ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½ÑŒ, шаблон або регулÑрний вираз.</li> <li> ÐšÐ°Ñ‚ÐµÐ³Ð¾Ñ€Ñ–Ñ Ð²Ð¸ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½ÑŒ, у регулÑрному виразі</li> <li> Вихідний транÑпорт SMTP підключень, порожньо Ð´Ð»Ñ Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ.</li> <li> ÐвтентифікаціÑ, порожньо Ð´Ð»Ñ Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ.</li> <li> Відправник.</li> <li> ÐдреÑа Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¾Ð´ÐµÑ€Ð¶ÑƒÐ²Ð°Ñ‡Ð°.</li> <li> Тема Ел.пошти.</li> <li> ÐŸÐ¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð•Ð».пошти.</li> <li> ПоÑлідовний транÑпорт SMS, порожньо Ð´Ð»Ñ Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ.</li> <li> Пін-код SMS, порожньо Ð´Ð»Ñ Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ.</li> <li> ÐдреÑа одержувача SMS, номер телефону.</li> <li> SMS у текÑтовому режимі, інакше PDU.</li></ul></dd> <dd>7. РЕЗУЛЬТÐТ: ÐадÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð²ÐºÐ°Ð·Ð°Ð½Ð¸Ñ… Ñповіщень Ñк SMS або EMail(SMTP).</dd></dl> <p><b>"SMS" ЧÐСТИÐРВИХІДÐОГО КОРИСТУВÐЦЬКОГО ПРОТОКОЛУ</b> надає операції із SMS за допомогою GSM-модему, підключеного Ñк поÑлідовний приÑтрій. Ðаразі підтримуєтьÑÑ Ð»Ð¸ÑˆÐµ відправка SMS Ñповіщень на номер віддаленого мобільного телефону або GSM-модему. Ð”Ð»Ñ Ð½Ð°Ð´ÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð¿Ñ–Ð´Ñ‚Ñ€Ð¸Ð¼ÑƒÑ”Ñ‚ÑŒÑÑ: Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ð›Ð£ÐИ, перевірка та вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ PIN, надÑÐ¸Ð»Ð°Ð½Ð½Ñ Ñƒ PDU та текÑтовому режимі.<br /> </p><p><b><u>Структура XML-запиту вихідного кориÑтувацького протоколу</u></b><br /> <b><cmd pin="1111" tel="+380XXXXXXXXX" text="{0|1}" err="1:Error">{SMSText}</cmd></b> </p> <dl><dd><i>cmd</i> — команда, наразі наÑвне лише "send";</dd> <dd><i>pin</i> — PIN-код Ð´Ð»Ñ Ð´Ð¾Ñтупу до SIM-карти;</dd> <dd><i>tel</i> — номер телефону одержувача (віддалений номер телефону або GSM-модем);</dd> <dd><i>text{0,1}</i> — SMS у текÑтовому режимі, лише ASCII;</dd> <dd><i>SMSText</i> — текÑÑ‚ повідомленнÑ;</dd> <dd><i>err</i> — вÑтановлюєтьÑÑ Ñƒ результат запиту.</dd></dl> <p><b><u>ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ Ñ‚Ð° викориÑтаннÑ</u></b><br /> </p> <dl><dd>1. Створити вихідний транÑпорт типу "<a href="Modules/Serial.html" title="Special:MyLanguage/Modules/Serial">ПоÑлідовний</a>" та вÑтановити його Ідентифікатор на кшталт "SMS", один транÑпорт підходить Ð´Ð»Ñ Ð±Ð°Ð³Ð°Ñ‚ÑŒÐ¾Ñ… одержувачів.</dd> <dd>2. Ð’Ñтановити влаÑтиву адреÑу. ШвидкіÑÑ‚ÑŒ, формат аÑинхронних даних та таймаути поÑлідовного порту будуть налаштовані функцією.</dd> <dd>3. Створити потрібний <a href="Modules/UserProtocol.html" title="Special:MyLanguage/Modules/UserProtocol">об'єкт кориÑтувацького протоколу</a> заÑнованого на шаблонах, із Ідентифікатором на кшталт "SMS".</dd> <dd>4. РозміÑтити деÑкі команди запиту безпоÑередньо у наÑвній або новій внутрішній процедурі OpenSCADA на кшталт:</dd></dl> <div class="mw-highlight mw-content-ltr" dir="ltr" style="margin-left: 30pt"><pre><span class="nx">req</span> <span class="o">=</span> <span class="nx">SYS</span><span class="p">.</span><span class="nx">XMLNode</span><span class="p">(</span><span class="s2">"send"</span><span class="p">);</span> <span class="nx">req</span><span class="p">.</span><span class="nx">setAttr</span><span class="p">(</span><span class="s2">"ProtIt"</span><span class="p">,</span><span class="s2">"SMS"</span><span class="p">).</span><span class="nx">setAttr</span><span class="p">(</span><span class="s2">"pin"</span><span class="p">,</span><span class="s2">"1111"</span><span class="p">).</span><span class="nx">setAttr</span><span class="p">(</span><span class="s2">"tel"</span><span class="p">,</span><span class="s2">"+380XXXXXXXXX"</span><span class="p">).</span><span class="nx">setText</span><span class="p">(</span><span class="s2">"Notify message"</span><span class="p">);</span> <span class="nx">SYS</span><span class="p">.</span><span class="nx">Transport</span><span class="p">.</span><span class="nx">Serial</span><span class="p">.</span><span class="nx">out_SMS</span><span class="p">.</span><span class="nx">messIO</span><span class="p">(</span><span class="nx">req</span><span class="p">,</span> <span class="s2">"UserProtocol"</span><span class="p">);</span> <span class="nx">rez</span> <span class="o">=</span> <span class="nx">req</span><span class="p">.</span><span class="nx">attr</span><span class="p">(</span><span class="s2">"err"</span><span class="p">).</span><span class="nx">toInt</span><span class="p">()</span> <span class="o">?</span> <span class="nx">req</span><span class="p">.</span><span class="nx">attr</span><span class="p">(</span><span class="s2">"err"</span><span class="p">)</span> <span class="o">:</span> <span class="s2">"OK"</span><span class="p">;</span> </pre></div> <dl><dd>5. РЕЗУЛЬТÐТ: У змінній <i>rez</i> ви отримаєте "OK" Ñкщо не виникло жодної помилки та Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð²Ð´Ð°Ð»Ð¾ надіÑлано одержувачу.</dd></dl> <p><b>"SMTP" ЧÐСТИÐРВИХІДÐОГО КОРИСТУВÐЦЬКОГО ПРОТОКОЛУ</b> надає операції із SMTP-Ñервером щодо доÑтавки електронної пошти відправленнÑм через TCP-Сокет або SSL. Ðаразі підтримуютьÑÑ: TCP, SSL, AUTH, ÐºÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚ÐµÐ¼Ð¸ у UTF-8.<br /> </p><p><b><u>Структура XML-запиту вихідного кориÑтувацького протоколу</u></b><br /> <b><send auth="{user}:{pass}" from="{FromAddr}" to="{ToAddr}" topic="{My Topic}" err="1:Error">{MessageText}</send></b> </p> <dl><dd><i>topic</i> — тема повідомленнÑ;</dd> <dd><i>from</i> — адреÑа відправника;</dd> <dd><i>to</i> — адреÑа Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼ÑƒÐ²Ð°Ñ‡Ð°;</dd> <dd><i>auth</i> — кориÑтувач та пароль отримувача;</dd> <dd><i>MessageText</i> — текÑÑ‚ повідомленнÑ;</dd> <dd><i>err</i> — вÑтановлюєтьÑÑ Ñƒ результат запиту.</dd></dl> <p><b><u>ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ Ñ‚Ð° викориÑтаннÑ</u></b><br /> </p> <dl><dd>1. Створити вихідний транÑпорт типу "<a href="Modules/Sockets.html" title="Special:MyLanguage/Modules/Sockets">Сокети</a>" або "<a href="Modules/SSL.html" title="Special:MyLanguage/Modules/SSL">SSL</a>" та вÑтановити його Ідентифікатор на кшталт "SMTP", один транÑпорт підходить Ð´Ð»Ñ Ð±Ð°Ð³Ð°Ñ‚ÑŒÐ¾Ñ… одержувачів.</dd> <dd>2. Ð’Ñтановити влаÑтиву адреÑу, Ð´Ð»Ñ Ð¡Ð¾ÐºÐµÑ‚Ñ–Ð²(25) або SSL(465). Таймаути транÑпорту будуть налаштовані функцією.</dd> <dd>3. Створити потрібний <a href="Modules/UserProtocol.html" title="Special:MyLanguage/Modules/UserProtocol">об'єкт кориÑтувацького протоколу</a> заÑнованого на шаблонах, із Ідентифікатором на кшталт "SMTP".</dd> <dd>4. РозміÑтити деÑкі команди запиту безпоÑередньо у наÑвній або новій внутрішній процедурі OpenSCADA на кшталт:</dd></dl> <div class="mw-highlight mw-content-ltr" dir="ltr" style="margin-left: 30pt"><pre><span class="nx">req</span> <span class="o">=</span> <span class="nx">SYS</span><span class="p">.</span><span class="nx">XMLNode</span><span class="p">(</span><span class="s2">"send"</span><span class="p">);</span> <span class="nx">req</span><span class="p">.</span><span class="nx">setAttr</span><span class="p">(</span><span class="s2">"ProtIt"</span><span class="p">,</span><span class="s2">"SMTP"</span><span class="p">).</span><span class="nx">setAttr</span><span class="p">(</span><span class="s2">"from"</span><span class="p">,</span><span class="s2">"noreply@oscada.org"</span><span class="p">).</span><span class="nx">setAttr</span><span class="p">(</span><span class="s2">"to"</span><span class="p">,</span><span class="s2">"oscada@oscada.org"</span><span class="p">).</span><span class="nx">setAttr</span><span class="p">(</span><span class="s2">"topic"</span><span class="p">,</span><span class="s2">"My topic"</span><span class="p">).</span><span class="nx">setText</span><span class="p">(</span><span class="s2">"My message"</span><span class="p">);</span> <span class="nx">SYS</span><span class="p">.</span><span class="nx">Transport</span><span class="p">.</span><span class="nx">Sockets</span><span class="p">.</span><span class="nx">out_SMTP</span><span class="p">.</span><span class="nx">messIO</span><span class="p">(</span><span class="nx">req</span><span class="p">,</span> <span class="s2">"UserProtocol"</span><span class="p">);</span> <span class="nx">rez</span> <span class="o">=</span> <span class="nx">req</span><span class="p">.</span><span class="nx">attr</span><span class="p">(</span><span class="s2">"err"</span><span class="p">).</span><span class="nx">toInt</span><span class="p">()</span> <span class="o">?</span> <span class="nx">req</span><span class="p">.</span><span class="nx">attr</span><span class="p">(</span><span class="s2">"err"</span><span class="p">)</span> <span class="o">:</span> <span class="s2">"OK"</span><span class="p">;</span> </pre></div> <dl><dd>5. РЕЗУЛЬТÐТ: У змінній <i>rez</i> ви отримаєте "OK" Ñкщо не виникло жодної помилки та Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð²Ð´Ð°Ð»Ð¾ надіÑлано одержувачу.</dd></dl> <p><br /> </p> <table class="wikitable"> <tr> <td> <span id="initRemCntr" title="#initRemCntr"><h3><span class="mw-headline" id=".D0.9A.D0.BE.D0.BD.D1.82.D1.80.D0.BE.D0.BB.D1.8C_.D0.B2.D1.96.D0.B4.D0.B4.D0.B0.D0.BB.D0.B5.D0.BD.D0.B8.D1.85_.D1.96.D0.BD.D1.96.D1.86.D1.96.D0.B0.D1.82.D0.B8.D0.B2.D0.BD.D0.B8.D1.85_.D0.BF.D1.96.D0.B4.D0.BA.D0.BB.D1.8E.D1.87.D0.B5.D0.BD.D1.8C_.28initRemCntr.29"><span class="mw-headline-number">3.2</span> Контроль віддалених ініціативних підключень (<a href="Libs_Main.html#initRemCntr" title="Special:MyLanguage/Libs/Main">initRemCntr</a>)</span></h3></span> </td> <td> 1.1 </td> <td> GPLv2 </td> <td> * </td> <td> en, uk </td> <td> <a class="external" href="http://oscada.org/wiki/User:RomanSavochenko" title="User:RomanSavochenko">Роман Савоченко</a> </td></tr></table> <div class="floatright"><a class="image" href="http://oscada.org/wiki/File:LibsMainInitRemCntrOp_uk.png" title="Результат та оперативні налаштуваннÑ."><img alt="Результат та оперативні налаштуваннÑ." height="1035" src="files/LibsMainInitRemCntrOp_uk.png" width="436" /></a></div> <p>Шаблон Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð²Ñ…Ñ–Ð´Ð½Ð¸Ñ… ініціативних підключень розширює попередній шаблон <a href="#initConAssociateTrs">Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ñ–Ð½Ñ–Ñ†Ñ–Ð°Ñ‚Ð¸Ð²Ð½Ð¸Ñ… підключень щодо аÑоційованих вихідних транÑпортів</a> повним предÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… віддалених хоÑтів OpenSCADA на деÑкому агрегувальному Ñервері, чим завершуючи <a href="DAQ.html#PassiveAndInitiative" title="Special:MyLanguage/Documents/DAQ">концепцію збору даних у паÑивному режимі та ініціативного підключеннÑ</a>. </p><p>Шаблон загалом здійÑнює: </p> <ul><li> виÑÐ²Ð»ÐµÐ½Ð½Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð²Ñ–Ð´ віддаленого хоÑту, Ñке не має ІД;</li> <li> надÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð¾Ð·Ð½Ð°Ð¹Ð¾Ð¼Ñ‡Ð¾Ð³Ð¾ прÑмого запиту за вÑтановленим підключеннÑм Ð´Ð»Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ ÐšÐ›Ð®Ð§Ð Ñ…Ð¾Ñту, Ñкщо це Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð²Ð¶Ðµ раніше було, Ñ– Ð´Ð»Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ñ–Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ñ–Ñ— щодо хоÑту Ð´Ð»Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð†Ð” хоÑту;</li> <li> вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð†Ð” Ð´Ð»Ñ Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ;</li> <li> ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð·Ð°Ð¿Ð¸Ñу у <a href="Program_manual.html#Transports" title="Special:MyLanguage/Documents/Program manual">таблиці хоÑтів OpenSCADA</a> Ð´Ð»Ñ Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ñ– надÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð¿Ð¾Ð´Ð°Ð»ÑŒÑˆÐ¸Ñ… запитів вже через хоÑÑ‚;</li> <li> ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð½Ð° віддаленому хоÑÑ‚Ñ– предÑтавницького <a href="Modules/LogicLev.html" title="Special:MyLanguage/Modules/LogicLev">Логічного Контролеру</a>;</li> <li> ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð½Ð° віддаленому хоÑÑ‚Ñ– предÑтавницького <a href="Modules/System.html" title="Special:MyLanguage/Modules/System">Об'єкту Контролеру DAQ.System</a> у автоматичному режимі, за відÑутноÑÑ‚Ñ– інших там;</li> <li> Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð½Ð°Ñвних Об'єктів Контролеру DAQ.System щодо поÑилань параметрів Логічного Ð Ñ–Ð²Ð½Ñ Ð½Ð° них Ñ– ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð´ÐµÑких логічних параметрів обробки;</li> <li> Ð·Ð°Ð¿Ð¸Ñ Ð·Ð³ÐµÐ½ÐµÑ€Ð¾Ð²Ð°Ð½Ð¾Ð³Ð¾ ключа Ñ€Ñдком "<b>SrcKey: {ID}</b>" до опиÑу Логічного Контролеру у ÑкоÑÑ‚Ñ– ознаки Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ñ–Ð½Ñ–Ñ†Ñ–Ð°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ—;</li> <li> ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ ÐžÐ±'єкту Контролеру у <a href="Modules/DAQGate.html" title="Special:MyLanguage/Modules/DAQGate">DAQ.DAQGate</a> із підключеннÑм до віддаленого Логічного Контролеру.</li></ul> <p>ІД віддаленого хоÑту формуєтьÑÑ Ñƒ виглÑді "<b>{HostDomain}{StatName}{RandKey}</b>" Ñ– з обмеженнÑм у 20Ñ‚ÑŒ Ñимволів, де: </p> <ul><li> <i>HostDomain</i> — мережеве ім'Ñ-домен хоÑту;</li> <li> <i>StatName</i> — ім'Ñ Ñтанції проєкту OpenSCADA;</li> <li> <i>RandKey</i> — випадковий ключ у шіÑÑ‚ÑŒ цифр.</li></ul> <p>Модель даних предÑтавницького Логічного Контролеру може міÑтити Ñк згенеровані поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ñ–Ð· параметрами обробки, так Ñ– кориÑтувацькі параметри, Ñкщо кориÑтувач вирішить опублікцівати додаткові дані. Згенеровані із DAQ.System елементи наразі предÑтавлÑÑŽÑ‚ÑŒ джерела: </p> <ul><li> "CPU", "MEM", "sensors", "Power", "uptime" => поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ñƒ контейнері параметрів "СиÑтема (SYS)";</li> <li> "fs", "hddstat", "hddsmart" => поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ñƒ контейнері параметрів "ДиÑк (DISK)" із однією обробкою Ð´Ð»Ñ "hddsmart" за шаблоном <a href="Libs_Main.html#DiskSMART" title="Special:MyLanguage/Libs/Main">base.DiskSMART</a>;</li> <li> "netstat" => поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ñƒ контейнері параметрів "Мережа (NET)";</li> <li> "ups" => поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ñƒ корені із однією обробкою за шаблоном <a href="Libs_Main.html#UPS" title="Special:MyLanguage/Libs/Main">base.UPS</a>.</li></ul> <p>Ðгреговані дані у <a href="Modules/DAQGate.html" title="Special:MyLanguage/Modules/DAQGate">DAQ.GAQGate</a> можуть бути піднÑÑ‚Ñ– на гору, або викориÑтані у похідних DAQ об'єктах, або прÑмо на кориÑтувацьких кадрах, або у майбутньому на Динамічному Кадрі, Ñкий заплановано до реалізації; та без жодних додаткових дій ви отримаєте ÑÐ¿Ð¾Ð²Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾ Ð¿Ð¾Ñ€ÑƒÑˆÐµÐ½Ð½Ñ Ð½Ð° хоÑтах. </p><p><b><u>Ð’Ð’ шаблону</u></b><br /> </p> <table class="wikitable"> <tr> <th> Ідентифікатор </th> <th> Ім'Ñ </th> <th> Тип </th> <th> Режим </th> <th> Ðтрибут </th> <th> ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ </th> <th> Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ </th></tr> <tr> <td> inTransport </td> <td> Вхідний транÑпорт </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> Sockets.InitRemCntr </td></tr> <tr> <td> conTm </td> <td> Ð§Ð°Ñ Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ, Ð¼Ñ </td> <td> Цілий </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> 5000 </td></tr> <tr> <td> accessTm </td> <td> Ð§Ð°Ñ Ð´Ð¾Ñтупу, години <p>ВикориÑтовуєтьÑÑ Ð´Ð»Ñ Ð¿Ð¾Ð²Ñ‚Ð¾Ñ€Ñƒ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð¿Ñ€ÐµÐ´Ñтавницьких об'єктів недоÑтупних хоÑтів Ñ– Ð´Ð»Ñ Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ñтарих підключень.<br /> Ðуль або негативне Ð´Ð»Ñ Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»ÑŽ! </p> </td> <td> Цілий </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> 24 </td></tr> <tr> <td> cntrUser </td> <td> ДоÑтуп: кориÑтувач </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> root </td></tr> <tr> <td> cntrPass </td> <td> ДоÑтуп: пароль </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> openscada </td></tr> <tr> <td> cntrObj </td> <td> Об'єкт контролю у DAQ.LogicLev Ñ– DAQ.System </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> RemCntr </td></tr> <tr> <td> prcTr </td> <td> Опрацьовані Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ </td> <td> ТекÑÑ‚ </td> <td> Вихід </td> <td> Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td> Змінна </td> <td> </td></tr> <tr> <td> this </td> <td> Об'єкт </td> <td> Об'єкт </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_stop </td> <td> Прапорець зупинки функції </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_start </td> <td> Прапорець запуÑку функції </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_err </td> <td> Помилка функції </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_frq </td> <td> ЧаÑтота обчиÑÐ»ÐµÐ½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ—, Гц </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 1000 </td></tr></table> <div class="floatright"><a class="image" href="http://oscada.org/wiki/File:LibsMainInitRemCntrCfg_uk.png" title="КонфігураціÑ."><img alt="КонфігураціÑ." height="340" src="files/LibsMainInitRemCntrCfg_uk.png" width="390" /></a></div> <p><b><u>ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ Ñ‚Ð° викориÑтаннÑ</u></b><br /> </p> <dl><dd>1. Створити вхідний транÑпорт прийнÑÑ‚Ñ‚Ñ Ñ–Ð½Ñ–Ñ†Ñ–Ð°Ñ‚Ð¸Ð²Ð½Ð¸Ñ… підключень у модулі "<a href="Modules/Sockets.html#InTr" title="Special:MyLanguage/Modules/Sockets">Сокети</a>" або "<a href="Modules/Sockets.html#InTr" title="Special:MyLanguage/Modules/Sockets">SSL</a>" із назвою на кшталт "Sockets.InitRemCntr".</dd> <dd>2. Ð”Ð»Ñ Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð½ÑŒÐ¾ Ñтвореного транÑпорту вÑтановити потрібну адреÑу Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð²Ñ…Ñ–Ð´Ð½Ð¾Ð³Ð¾ Ñокету Ñ– перевеÑти його у режим ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð°Ñоційованих вихідних транÑпортів, залишивши поле протоколу порожнім.</dd> <dd>3. Ð”Ð»Ñ Ñ†ÑŒÐ¾Ð³Ð¾ шаблону Ñтворити Ñ– запуÑтити <a href="Modules/LogicLev.html" title="Special:MyLanguage/Modules/LogicLev">об'єкт логічного контролеру</a> або викориÑтати будь Ñкий наÑвний з потрібними влаÑтивоÑÑ‚Ñми плануваннÑ.</dd> <dd>4. Створити <a href="Modules/LogicLev.html" title="Special:MyLanguage/Modules/LogicLev">об'єкт логічного параметру</a> Ñ– обрати цей шаблон Ð´Ð»Ñ Ð½ÑŒÐ¾Ð³Ð¾. Ввімкнути параметр.</dd> <dd>5. У вкладці "ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ ÑˆÐ°Ð±Ð»Ð¾Ð½Ñƒ" об'єкту логічного параметру маєте вÑтановити: <ul><li> <i>Вхідний транÑпорт</i> — у Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ–Ð´ÐµÐ½Ñ‚Ð¸Ñ„Ñ–ÐºÐ°Ñ‚Ð¾Ñ€Ñƒ вхідного транÑпорту, Ñтвореного у пункті 1, на кшталт "Sockets.InitRemCntr";</li> <li> <i>Ð§Ð°Ñ Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ</i> — Ñ‡Ð°Ñ Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð´Ð¾ ініціативних хоÑтів піÑÐ»Ñ Ñкого закривати підключеннÑ;</li> <li> <i>Ð§Ð°Ñ Ð´Ð¾Ñтупу</i> — викориÑтовуєтьÑÑ Ð´Ð»Ñ Ð¿Ð¾Ð²Ñ‚Ð¾Ñ€Ñƒ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð¿Ñ€ÐµÐ´Ñтавницьких об'єктів недоÑтупних хоÑтів Ñ– Ð´Ð»Ñ Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ñтарих підключень; нуль або негативне Ð´Ð»Ñ Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð½Ñ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»ÑŽ;</li> <li> <i>ДоÑтуп: кориÑтувач Ñ– пароль</i> — кориÑтувач Ñ– пароль віддаленого хоÑту із правами ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñ‚Ð°Ð¼ Логічного Контролеру Ñ– Об'єкту Контролеру DAQ.System, тобто кориÑтувач муÑить бути включеним до групи "DAQ";</li> <li> <i>Об'єкт контролю у DAQ.LogicLev Ñ– DAQ.System</i> — у ІД контрольованого-Ñтворюваного Об'єкту Контролеру на віддаленому хоÑÑ‚Ñ–.</li></ul></dd> <dd>6. РЕЗУЛЬТÐТ: ЗапуÑтивши об'єкт контролеру (де Ñтворено цей параметр) та Ñкщо він не був запущений, маємо отримати перевірку визначеного вхідного транÑпорту на предмет ініціативних підключень Ñ– Ñ—Ñ… ініціалізацію у опиÑаний вище ÑпоÑіб, та із зауваженнÑм опрацьованих підключень у атрибуті "Опрацьовані підключеннÑ".</dd></dl> <p><br /> </p> <table class="wikitable"> <tr> <td> <span id="initConAssociateTrs" title="#initConAssociateTrs"><h3><span class="mw-headline" id=".D0.9E.D0.BF.D1.80.D0.B0.D1.86.D1.8E.D0.B2.D0.B0.D0.BD.D0.BD.D1.8F_.D1.96.D0.BD.D1.96.D1.86.D1.96.D0.B0.D1.82.D0.B8.D0.B2.D0.BD.D0.B8.D1.85_.D0.BF.D1.96.D0.B4.D0.BA.D0.BB.D1.8E.D1.87.D0.B5.D0.BD.D1.8C_.D1.89.D0.BE.D0.B4.D0.BE_.D0.B0.D1.81.D0.BE.D1.86.D1.96.D0.B9.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D1.85_.D0.B2.D0.B8.D1.85.D1.96.D0.B4.D0.BD.D0.B8.D1.85_.D1.82.D1.80.D0.B0.D0.BD.D1.81.D0.BF.D0.BE.D1.80.D1.82.D1.96.D0.B2_.28initConAssociateTrs.29"><span class="mw-headline-number">3.3</span> ÐžÐ¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ñ–Ð½Ñ–Ñ†Ñ–Ð°Ñ‚Ð¸Ð²Ð½Ð¸Ñ… підключень щодо аÑоційованих вихідних транÑпортів (<a href="Libs_Main.html#initConAssociateTrs" title="Special:MyLanguage/Libs/Main">initConAssociateTrs</a>)</span></h3></span> </td> <td> 1.2 </td> <td> GPLv2 </td> <td> * </td> <td> en, uk, ru </td> <td> <a class="external" href="http://oscada.org/wiki/User:RomanSavochenko" title="User:RomanSavochenko">Роман Савоченко</a> </td></tr></table> <div class="floatright"><a class="image" href="http://oscada.org/wiki/File:LibsMainInitConsAssignTrsOp_uk.png" title="Результат та оперативні налаштуваннÑ."><img alt="Результат та оперативні налаштуваннÑ." height="388" src="files/LibsMainInitConsAssignTrsOp_uk.png" width="346" /></a></div> <p>Шаблон Ñлужби Ð¾Ð¿Ñ€Ð°Ñ†ÑŽÐ²Ð°Ð½Ð½Ñ Ð²Ñ…Ñ–Ð´Ð½Ð¸Ñ… ініціативних підключень Ñтворено Ð´Ð»Ñ Ð½Ð°Ð´Ð°Ð½Ð½Ñ Ð¾Ñтанньої ланки реалізації та підтримки <a href="DAQ.html#PassiveAndInitiative" title="Special:MyLanguage/Documents/DAQ">концепції збору даних у паÑивному режимі та ініціативного підключеннÑ</a>, а Ñаме — контролю аÑоційованих транÑпортів Ñтворюваних вхідним транÑпортом за кожного підключеннÑ. </p><p><a class="image" href="http://oscada.org/wiki/File:At.png"><img alt="At.png" height="22" src="../en/files/At.png" width="22" /></a> ПіÑÐ»Ñ Ñ€ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ— цього контролю разом із новою функцією загального-уніфікованого Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð²Ð¸Ñ…Ñ–Ð´Ð½Ð¾Ð³Ð¾ транÑпорту <a href="User_API.html#SYSTransport" title="Special:MyLanguage/Documents/User API">outAt()</a> цей шаблон Ñтав заÑтарілим Ð´Ð»Ñ Ð´Ð¶ÐµÑ€ÐµÐ» адаптованих до викориÑÑ‚Ð°Ð½Ð½Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ механізму, але ви вÑе ще можете викориÑтовувати шаблон Ð´Ð»Ñ Ð½ÐµÐ°Ð´Ð°Ð¿Ñ‚Ð¾Ð²Ð°Ð½Ð¸Ñ… джерел. </p><p>Функцію ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð²Ð¸Ñ…Ñ–Ð´Ð½Ð¸Ñ… аÑоційованих транÑпортів за підключеннÑм на вхідний наразі підтримує лише <a href="Modules/Sockets.html" title="Special:MyLanguage/Modules/Sockets">модуль транÑпортів "Сокети"</a> та Ð´Ð»Ñ TCP-Ñокетів. </p> <ul><li> <b>Загальна працеміÑткіÑÑ‚ÑŒ:</b> 0.9 <span title="людино-днів, 1ЛД — 10 годин">ЛД<sup style="color: blue">[!]</sup></span></li> <li> <b>СпонÑоровано, загальну працеміÑткіÑÑ‚ÑŒ:</b> Еліор Турабоєв, ТОВ BLUE STAR GROUP</li></ul> <p>Контроль аÑоційованих транÑпортів передбачає: </p> <ul><li> Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÐ»Ñ–ÐºÑƒ аÑоційованих транÑпортів функцією вхідного транÑпорту <i>assignTrsList()</i>;</li> <li> Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ñ–Ð· нових транÑпортів (відкритих) ідентифікаційної інформації Ñка наразі репрезентує тільки ідентифікатор об'єкту джерела; <ul><li> пошук за отриманим ідентифікатором об'єкта джерела та Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¹Ð¾Ð¼Ñƒ адреÑи цього транÑпорту;</li> <li> реєÑтрацію у атрибуті об'єктного типу "prcTr".</li></ul></li> <li> перевірка діючих транÑпортів на предмет Ñ—Ñ… Ð·Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñ (від'єднаннÑ), щодо чого здійÑнюєтьÑÑ Ð´ÐµÑ€ÐµÑ”ÑÑ‚Ñ€Ð°Ñ†Ñ–Ñ Ñƒ атрибуті об'єктного типу "prcTr" та вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¾Ð±'єкту джерела порожнього значеннÑ; вимкнені вихідні аÑоціативні транÑпорти повторно викориÑтовуютьÑÑ Ð²Ñ…Ñ–Ð´Ð½Ð¸Ð¼ за отриманнÑм нового Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð¿Ñ–ÑÐ»Ñ Ñ‡Ð¾Ð³Ð¾ він вмикаєтьÑÑ.</li></ul> <p>Шаблон може керувати контейнерами об'єктів джерел даних, побудованих Ñк у виглÑді DAQ-об'єктів контролерів, так Ñ– параметрів логічного рівнÑ, що репрезентують джерело даних та мають поле Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð°Ð´Ñ€ÐµÑи транÑпорту та що загалом визначаєтьÑÑ ÐºÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ð¹Ð½Ð¸Ð¼ полем "srcObjPath" із форматом <b>{CntrAddr}:{TrCntrFldAddr}</b>, де: </p> <ul><li> <i>CntrAddr</i> — адреÑа контейнеру, наприклад: "ModBus" — Ð´Ð»Ñ DAQ-об'єктів контролерів, "LogicLev.CntrPLC" — Ð´Ð»Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ñ–Ð² логічного рівнÑ;</li> <li> <i>TrCntrFldAddr</i> — адреÑа Ð¿Ð¾Ð»Ñ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»ÑŽ транÑпорту у об'єкті джерела, наприклад — "%2fcntr%2fcfg%2fADDR" Ð´Ð»Ñ "ModBus"; що може бути отримано у конфігураторі за Ñ–Ñторією Ð½Ð°Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð½Ð° Ð¿Ð¾Ð»Ñ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»ÑŽ у Ñ€Ñдку ÑтатуÑу.</li></ul> <p><b><u>Ð’Ð’ шаблону</u></b><br /> </p> <table class="wikitable"> <tr> <th> Ідентифікатор </th> <th> Ім'Ñ </th> <th> Тип </th> <th> Режим </th> <th> Ðтрибут </th> <th> ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ </th> <th> Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ </th></tr> <tr> <td> inTransport </td> <td> Вхідний транÑпорт </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> ПоÑтійна </td> <td> InitiateCons </td></tr> <tr> <td> outTrTm </td> <td> Таймаути вихідних транÑпортів </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> ПоÑтійна </td> <td> 10:0.1 </td></tr> <tr> <td> srcObjPath </td> <td> ШлÑÑ… об'єкту джерела </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> ПоÑтійна </td> <td> ModBus:%2fcntr%2fcfg%2fADDR </td></tr> <tr> <td> prcTr </td> <td> Опрацьовані транÑпорти </td> <td> Об'єкт </td> <td> Вихід </td> <td> Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td> Змінна </td> <td> </td></tr> <tr> <td> f_err </td> <td> Помилка функції </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_start </td> <td> Прапорець запуÑку функції </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_stop </td> <td> Прапорець зупинки функції </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_frq </td> <td> ЧаÑтота обчиÑÐ»ÐµÐ½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ—, Гц </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 1000 </td></tr></table> <div class="floatright"><a class="image" href="http://oscada.org/wiki/File:LibsMainInitConsAssignTrsCfg_uk.png" title="КонфігураціÑ."><img alt="КонфігураціÑ." height="227" src="files/LibsMainInitConsAssignTrsCfg_uk.png" width="425" /></a></div> <p><b><u>ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ Ñ‚Ð° викориÑтаннÑ</u></b><br /> </p> <dl><dd>1. Створити вхідний транÑпорт прийнÑÑ‚Ñ‚Ñ Ñ–Ð½Ñ–Ñ†Ñ–Ð°Ñ‚Ð¸Ð²Ð½Ð¸Ñ… підключень у <a href="Modules/Sockets.html#InTr" title="Special:MyLanguage/Modules/Sockets">модулі "Сокети"</a> із назвою на кшталт "InitiateCons".</dd> <dd>2. Ð”Ð»Ñ Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð½ÑŒÐ¾ Ñтвореного транÑпорту вÑтановити потрібну адреÑу Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð²Ñ…Ñ–Ð´Ð½Ð¾Ð³Ð¾ Ñокету Ñ– перевеÑти його у режим ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð°Ñоційованих вихідних транÑпортів, залишивши поле протоколу порожнім.</dd> <dd>3. Передбачити контейнер джерел даних до Ñких аÑоціативні транÑпорти мають під'єднуватиÑÑ, Ñкий може бути або DAQ-модулем (Ñк то "DAQ.ModBus"), або логічним контролером (Ñк то "DAQ.LogicLev.Sources"), чи параметром у ньому (Ñк то "DAQ.LogicLev.PLC.Sources"), із вміÑтом параметрів логічного рівнÑ, що предÑтавлÑÑŽÑ‚ÑŒ джерело даних.</dd> <dd>4. Ð”Ð»Ñ Ñ†ÑŒÐ¾Ð³Ð¾ шаблону Ñтворити Ñ– запуÑтити <a href="Modules/LogicLev.html" title="Special:MyLanguage/Modules/LogicLev">об'єкт логічного контролеру</a> або викориÑтати будь Ñкий наÑвний з потрібними влаÑтивоÑÑ‚Ñми плануваннÑ.</dd> <dd>5. Створити <a href="Modules/LogicLev.html" title="Special:MyLanguage/Modules/LogicLev">об'єкт логічного параметру</a> Ñ– обрати цей шаблон Ð´Ð»Ñ Ð½ÑŒÐ¾Ð³Ð¾. Ввімкнути параметр.</dd> <dd>6. У вкладці "ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ ÑˆÐ°Ð±Ð»Ð¾Ð½Ñƒ" об'єкту логічного параметру маєте вÑтановити: <ul><li> <i>Вхідний транÑпорт</i> — у Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ–Ð´ÐµÐ½Ñ‚Ð¸Ñ„Ñ–ÐºÐ°Ñ‚Ð¾Ñ€Ñƒ вхідного транÑпорту, Ñтвореного у пункті 1, на кшталт "InitiateCons;</li> <li> <i>Таймаути вихідних транÑпортів</i> — збільшити першу цифру Ð´Ð»Ñ Ð´ÑƒÐ¶Ðµ повільних підключень та типове Ñ” нормальним Ð´Ð»Ñ Ð±Ñ–Ð»ÑŒÑˆÐ¾ÑÑ‚Ñ– Ñитуацій;</li> <li> <i>ШлÑÑ… об'єктів джерела</i> — вÑтановити згідно до пункту 3, Ð´Ð»Ñ Ð¿ÐµÑ€ÑˆÐ¾Ñ— чаÑтини, та у шлÑÑ… до контрольного полÑ, Ð´Ð»Ñ Ð´Ñ€ÑƒÐ³Ð¾Ñ— чаÑтини, наприклад, та типово Ð´Ð»Ñ "ModBus", це — "ModBus:%2fcntr%2fcfg%2fADDR".</li></ul></dd> <dd>6. РЕЗУЛЬТÐТ: ЗапуÑтивши об'єкт контролеру (де Ñтворено цей параметр) та Ñкщо він не був запущений, маємо отримати у атрибуті параметру <i>prcTr</i> інформацію щодо вдало опрацьованих, а відтак Ñ– вдало пов'Ñзаних із транÑпортом, джерелах даних. У випадку деÑких порушень отримаємо відповідну інформацію у атрибуті параметру <i>err</i>. Ð†Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ñ–Ñ Ð¿Ñ€Ð¾ відÑутніÑÑ‚ÑŒ предÑтавницького об'єкту Ð´Ð»Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð¾Ð³Ð¾ ідентифікатору поміщаєтьÑÑ Ñƒ протоколі порушень.</dd></dl> <p><br /> </p> <table class="wikitable"> <tr> <td> <span id="weather" title="#weather"><h3><span class="mw-headline" id=".D0.9F.D0.BE.D0.B3.D0.BE.D0.B4.D0.B0_.28weather.29"><span class="mw-headline-number">3.4</span> Погода (<a href="Libs_Main.html#weather" title="Special:MyLanguage/Libs/Main">weather</a>)</span></h3></span> </td> <td> 1.0 </td> <td> GPLv2 </td> <td> * </td> <td> en, uk </td> <td> <a class="external" href="http://oscada.org/wiki/User:RomanSavochenko" title="User:RomanSavochenko">Роман Савоченко</a> </td></tr></table> <div class="floatright"><a class="image" href="http://oscada.org/wiki/File:LibsMainWeatherOp_uk.png" title="Результат та оперативні налаштуваннÑ."><img alt="Результат та оперативні налаштуваннÑ." height="596" src="files/LibsMainWeatherOp_uk.png" width="412" /></a></div> <p>Шаблон Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… погоди з різних погодних Ñлужб у Інтернет Ñ– первинно лише <a class="external text" href="https://openweathermap.org/" rel="nofollow noreferrer noopener" target="_blank">Open Weather</a>. </p><p>Погодні дані ділÑÑ‚ÑŒÑÑ Ð½Ð° поточні Ñ– прогноз із Ñ—Ñ… розміщеннÑм у відповідних об'єктах, де поточні атрибути розташовуютьÑÑ Ð¿Ñ€Ñмо у корені та прогноз на день (об'єкт "day") Ñ– Ñ‡Ð°Ñ (об'єкт "time") вÑередині відповідного Ð´Ð½Ñ Ð·Ð³Ñ–Ð´Ð½Ð¾ до поточної чаÑової зони. Ці дані отримуютьÑÑ Ð·Ð° відповідним розкладом незалежно Ð´Ð»Ñ Ð¿Ð¾Ñ‚Ð¾Ñ‡Ð½Ð¸Ñ… Ñ– прогнозу, та типово поточні запитуютьÑÑ Ñ‰Ð¾Ð³Ð¾Ð´Ð¸Ð½Ð½Ð¾, а прогноз один раз на день. Дані можуть бути доÑтупні кориÑтувачу Ñк прÑмо, так Ñ– поÑередництвом Ñпеціально-Ñтвореного віджету <a href="Libs_Main_graphical_elements.html#weather" title="Special:MyLanguage/Libs/Main graphical elements">оÑновної бібліотеки</a>. </p><p><b><u>Ð’Ð’ шаблону</u></b><br /> </p> <table class="wikitable"> <tr> <th> Ідентифікатор </th> <th> Ім'Ñ </th> <th> Тип </th> <th> Режим </th> <th> Ðтрибут </th> <th> ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ </th> <th> Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ </th></tr> <tr> <td> schedCur </td> <td> ÐŸÐ»Ð°Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð° CRON Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ð¾Ñ‚Ð¾Ñ‡Ð½Ð¸Ñ… даних </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> 0 8-20 * * * </td></tr> <tr> <td> schedFC </td> <td> ÐŸÐ»Ð°Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð° CRON Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾Ð³Ð½Ð¾Ð·Ð¾Ð²Ð°Ð½Ð¸Ñ… даних </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> 0 8 * * * </td></tr> <tr> <td> city </td> <td> ІД МіÑта </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Повний доÑтуп </td> <td> Змінна </td> <td> 709932 </td></tr> <tr> <td> current </td> <td> Поточне </td> <td> Об'єкт </td> <td> Вхід </td> <td> Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td> Змінна </td> <td> </td></tr> <tr> <td> forecast </td> <td> Прогноз </td> <td> Об'єкт </td> <td> Вхід </td> <td> Тільки Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ </td> <td> Змінна </td> <td> </td></tr> <tr> <td> this </td> <td> Параметр </td> <td> Об'єкт </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_start </td> <td> Прапорець запуÑку функції </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_frq </td> <td> ЧаÑтота обчиÑÐ»ÐµÐ½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ—, Гц </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 1000 </td></tr> <tr> <td> f_stop </td> <td> Прапорець зупинки функції </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_err </td> <td> Помилка функції </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr></table> <div class="floatright"><a class="image" href="http://oscada.org/wiki/File:LibsMainWeatherCfg_uk.png" title="КонфігураціÑ."><img alt="КонфігураціÑ." height="218" src="files/LibsMainWeatherCfg_uk.png" width="531" /></a></div> <p><b><u>ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ Ñ‚Ð° викориÑтаннÑ</u></b><br /> </p> <dl><dd>1. Ð”Ð»Ñ Ñ†ÑŒÐ¾Ð³Ð¾ шаблону Ñтворити та запуÑтити <a href="Modules/LogicLev.html" title="Special:MyLanguage/Modules/LogicLev">об'єкт логічного контролеру</a> або викориÑтати будь Ñкий наÑвний з потрібними влаÑтивоÑÑ‚Ñми плануваннÑ.</dd> <dd>2. Створити <a href="Modules/LogicLev.html" title="Special:MyLanguage/Modules/LogicLev">об'єкт логічного параметру</a> та обрати цей шаблон Ð´Ð»Ñ Ð½ÑŒÐ¾Ð³Ð¾. Ввімкнути параметр.</dd> <dd>3. У вкладці "ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ ÑˆÐ°Ð±Ð»Ð¾Ð½Ñƒ" об'єкту логічного параметру треба вÑтановити: <ul><li> <i>ÐŸÐ»Ð°Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð° CRON Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ð¾Ñ‚Ð¾Ñ‡Ð½Ð¸Ñ… даних</i> — у Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð½ÐµÐ¾Ð±Ñ…Ñ–Ð´Ð½Ð¾Ð³Ð¾ Ð¿Ð»Ð°Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð»Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð¿Ð¾Ñ‚Ð¾Ñ‡Ð½Ð¸Ñ… даних у <a href="User_API.html#CRON" title="Special:MyLanguage/Documents/User API">форматі CRON</a>, за порожнього Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð·Ð´Ñ–Ð¹ÑнюватиметьÑÑ Ñ–Ð· періодом Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð¾Ð±'єкту контролеру;</li> <li> <i>ÐŸÐ»Ð°Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð° CRON Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾Ð³Ð½Ð¾Ð·Ð¾Ð²Ð°Ð½Ð¸Ñ… даних</i> — у Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð½ÐµÐ¾Ð±Ñ…Ñ–Ð´Ð½Ð¾Ð³Ð¾ Ð¿Ð»Ð°Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð»Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¾Ð³Ð½Ð¾Ð·Ð¾Ð²Ð°Ð½Ð¸Ñ… даних у <a href="User_API.html#CRON" title="Special:MyLanguage/Documents/User API">форматі CRON</a>, за порожнього Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð·Ð´Ñ–Ð¹ÑнюватиметьÑÑ Ñ–Ð· періодом Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð¾Ð±'єкту контролеру.</li></ul></dd> <dd>4. РЕЗУЛЬТÐТ: ЗапуÑтивши об'єкт контролеру (де Ñтворено цей параметр) та Ñкщо він не був запущений, маємо отримати у атрибуті параметру <i>Поточне (current)</i> Ñ– <i>Прогноз (forecast)</i> та піÑÐ»Ñ Ð²ÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ ÐºÐ¾Ð´Ð° вашого міÑта у відповідному атрибуті. Код міÑта ви можете отримати із <a class="external text" href="https://openweathermap.org/" rel="nofollow noreferrer noopener" target="_blank">офіційного Ñайту</a> у адреÑÑ– (URL) піÑÐ»Ñ Ð¿Ð¾ÑˆÑƒÐºÑƒ вашого міÑта у формі Ñайту.</dd></dl> <h2><span class="mw-headline" id=".D0.94.D0.BB.D1.8F_WebUser"><span class="mw-headline-number">4</span> <a href="Modules/WebUser.html" title="Special:MyLanguage/Modules/WebUser">Ð”Ð»Ñ WebUser</a></span></h2> <table class="wikitable"> <tr> <td> <span id="fileServerHTTP" title="#fileServerHTTP"><h3><span class="mw-headline" id="WebUser:_HTTP_.D0.A4.D0.B0.D0.B9.D0.BB.D0.BE.D0.B2.D0.B8.D0.B9_.D0.A1.D0.B5.D1.80.D0.B2.D0.B5.D1.80_.28fileServerHTTP.29"><span class="mw-headline-number">4.1</span> WebUser: HTTP Файловий Сервер (<a href="Libs_Main.html#fileServerHTTP" title="Special:MyLanguage/Libs/Main">fileServerHTTP</a>)</span></h3></span> </td> <td> 1.2 </td> <td> GPLv2 </td> <td> * </td> <td> en, uk </td> <td> <a class="external" href="http://oscada.org/wiki/User:RomanSavochenko" title="User:RomanSavochenko">Роман Савоченко</a> </td></tr></table> <p>Шаблон Ð´Ð»Ñ Ñ€ÐµÐ°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ— Файлового Серверу HTTP безпоÑередньо в OpenSCADA, Ñкий кориÑний за відÑутноÑÑ‚Ñ– повнофункціонального Ð´Ð»Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ð¹ обÑÐ»ÑƒÐ³Ð¾Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ñ„Ð°Ð¹Ð»Ð¾Ð²Ð¸Ñ… запитів із OpenSCADA Web-інтерфейÑів. </p><p>Ðаразі реалізовано лише запити файлів HTTP запитом GET. Також реалізуютьÑÑ ÑˆÐ¼Ð°Ñ‚ÐºÐ¸ Ñ– запити ЧаÑток Контенту за одним діапазоном зі змушуваннÑм до цього режиму за певного налаштованого розміру файлу. </p><p><b><u>Ð’Ð’ шаблону</u></b><br /> </p> <table class="wikitable"> <tr> <th> Ідентифікатор </th> <th> Ім'Ñ </th> <th> Тип </th> <th> Режим </th> <th> Ðтрибут </th> <th> ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ </th> <th> Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ </th></tr> <tr> <td> rez </td> <td> Результат </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 200 OK </td></tr> <tr> <td> HTTPreq </td> <td> HTTP запит </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> url </td> <td> URL </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> sender </td> <td> Відправник </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> page </td> <td> WWW-Ñторінка </td> <td> Ð Ñдок </td> <td> Вихід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> HTTPvars </td> <td> HTTP змінні </td> <td> Об'єкт </td> <td> Вихід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> baseD </td> <td> Базовий каталог </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> /data/share_res/local/Lib/ </td></tr> <tr> <td> fSzSolidLim </td> <td> ÐžÐ±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ Ð½Ð° розмір файлу Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ñ†Ñ–Ð»ÐºÐ¾Ð¼, інакше вмикаєтьÑÑ Ð²Ð¼Ñ–ÑÑ‚ чаÑтками </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> КонÑтанта </td> <td> 10e6 </td></tr> <tr> <td> tr </td> <td> ТранÑпорт </td> <td> Об'єкт </td> <td> Вихід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> prt </td> <td> Протокол </td> <td> Об'єкт </td> <td> Вихід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> </td></tr> <tr> <td> f_start </td> <td> Прапорець запуÑку функції </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_frq </td> <td> ЧаÑтота обчиÑÐ»ÐµÐ½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ—, Гц </td> <td> Реальний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 1000 </td></tr> <tr> <td> f_stop </td> <td> Прапорець зупинки функції </td> <td> Логічний </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr> <tr> <td> f_err </td> <td> Помилка функції </td> <td> Ð Ñдок </td> <td> Вхід </td> <td> Ðе атрибут </td> <td> Змінна </td> <td> 0 </td></tr></table> <div class="floatright"><a class="image" href="http://oscada.org/wiki/File:LibsMainFileServerHTTPCfg.png" title="КонфігураціÑ."><img alt="КонфігураціÑ." height="513" src="../en/files/LibsMainFileServerHTTPCfg.png" width="575" /></a></div> <p><b><u>ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ Ñ– викориÑтаннÑ</u></b><br /> </p> <dl><dd>1. Створити Ñторінку у модулі <a href="Modules/WebUser.html" title="Special:MyLanguage/Modules/WebUser">UI.WebUser</a> із певним доцільним ідентифікатором <i>PageId</i>.</dd> <dd>2. У вкладці "Процедура" необхідно вÑтановити: <ul><li> Базовий каталог від Ñкого Ñторінка буде шукати файли.</li> <li> ÐžÐ±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ Ð½Ð° розмір файлу Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ñ†Ñ–Ð»ÐºÐ¾Ð¼, інакше вмикаєтьÑÑ Ð²Ð¼Ñ–ÑÑ‚ чаÑтками.</li></ul></dd> <dd>3. РЕЗУЛЬТÐТ: Ð’Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ URL "http://{OpenSCADAHost}/WebUser/{PageId}/{MyFile}" у Web ОглÑдачі відкриє та надішле вам файл на ФС "{baseD}/{MyFile}".</dd></dl> </div><table style="border-top: dotted 2px #999999; margin-top: 20pt; color: gray;" width="100%"><tr><td style="text-align: left;" width="40%"><a href="http://oscada.org/wiki/Libs/Main/uk">Libs/Main/uk</a> - <a href="http://oscada.org/en/main/about-the-project/licenses/">GFDL</a></td><td style="text-align: center;">March 2025</td><td style="text-align: right;" width="40%">OpenSCADA 1+r3012</td></tr></table></body> </html>