<?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="ru">Документы/ЧаÑто задаваемые вопроÑÑ‹</h1> </div><div class="mw-content-ltr" dir="ltr" id="mw-content-text" lang="ru"><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-Documents%2FFAQ&action=page&filter=&language=ru" rel="nofollow noreferrer noopener" target="_blank">translated version</a></span> of the page <a class="external" href="http://oscada.org/wiki/Documents/FAQ" title="Documents/FAQ">Documents/FAQ</a> and the translation is 91% 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/FAQ.html" title="Documents/FAQ (100% translated)">English</a> • ‎<span class="mw-pt-languages-selected mw-pt-progress mw-pt-progress--complete">mRussian</span> • ‎<a class="mw-pt-progress mw-pt-progress--complete" href="../uk/FAQ.html" title="Документи/ЧаÑто задавані Ð¿Ð¸Ñ‚Ð°Ð½Ð½Ñ (100% translated)">УкраїнÑька</a></div></div> <div class="toc" id="toc"><div id="toctitle"><h2>Contents</h2></div> <ul> <li class="toclevel-1 tocsection-1"><a href="#.D0.9F.D0.BE.D0.BB.D0.B8.D1.82.D0.B8.D1.87.D0.B5.D1.81.D0.BA.D0.B8.D0.B5_.D0.B8_.D0.BA.D0.BE.D0.BD.D1.86.D0.B5.D0.BF.D1.82.D1.83.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5"><span class="tocnumber">1</span> <span class="toctext">ПолитичеÑкие и концептуальные</span></a></li> <li class="toclevel-1 tocsection-2"><a href="#.D0.90.D1.80.D1.85.D0.B8.D1.82.D0.B5.D0.BA.D1.82.D1.83.D1.80.D0.BD.D1.8B.D0.B5.2C_.D0.B8.D1.81.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D0.BA.D0.BE.D1.80.D0.BE.D1.82.D0.BA.D0.B8.D0.B5_.22.D0.9A.D0.B0.D0.BA_.D0.B2.D1.8B.D0.BF.D0.BE.D0.BB.D0.BD.D0.B8.D1.82.D1.8C_....22"><span class="tocnumber">2</span> <span class="toctext">Ðрхитектурные, иÑпользование и короткие "Как выполнить ..."</span></a> <ul> <li class="toclevel-2 tocsection-3"><a href="#.D0.AF.D0.B4.D1.80.D0.BE_OpenSCADA"><span class="tocnumber">2.1</span> <span class="toctext"><span>Ядро OpenSCADA</span></span></a></li> <li class="toclevel-2 tocsection-4"><a href="#.D0.91.D0.94"><span class="tocnumber">2.2</span> <span class="toctext">БД</span></a></li> <li class="toclevel-2 tocsection-5"><a href="#.D0.A4.D0.B8.D0.B7.D0.B8.D1.87.D0.B5.D1.81.D0.BA.D0.B8.D0.B9_.D0.B8_.D0.BB.D0.BE.D0.B3.D0.B8.D1.87.D0.B5.D1.81.D0.BA.D0.B8.D0.B9-.D0.B2.D0.B8.D1.80.D1.82.D1.83.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B9_.D1.81.D0.B1.D0.BE.D1.80_.D0.B4.D0.B0.D0.BD.D0.BD.D1.8B.D1.85"><span class="tocnumber">2.3</span> <span class="toctext">ФизичеÑкий и логичеÑкий-виртуальный Ñбор данных</span></a></li> <li class="toclevel-2 tocsection-6"><a href="#.D0.90.D1.80.D1.85.D0.B8.D0.B2.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5-.D0.B8.D1.81.D1.82.D0.BE.D1.80.D0.B8.D1.8F_.D0.B8_.D0.9D.D0.B0.D1.80.D1.83.D1.88.D0.B5.D0.BD.D0.B8.D1.8F"><span class="tocnumber">2.4</span> <span class="toctext">Ðрхивирование-иÑÑ‚Ð¾Ñ€Ð¸Ñ Ð¸ ÐарушениÑ</span></a></li> <li class="toclevel-2 tocsection-7"><a href="#.D0.98.D0.BD.D1.82.D0.B5.D1.80.D1.84.D0.B5.D0.B9.D1.81_.D0.BA.D0.BE.D0.BD.D0.B5.D1.87.D0.BD.D0.BE.D0.B3.D0.BE_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8F"><span class="tocnumber">2.5</span> <span class="toctext">Ð˜Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ ÐºÐ¾Ð½ÐµÑ‡Ð½Ð¾Ð³Ð¾ пользователÑ</span></a></li> </ul> </li> <li class="toclevel-1 tocsection-8"><a href="#.D0.9F.D1.80.D0.BE.D0.B1.D0.BB.D0.B5.D0.BC.D1.8B_.28.D0.B0.D0.BA.D1.82.D1.83.D0.B0.D0.BB.D1.8C.D0.BD.D0.BE.2C_.D0.BE.D0.BA.D1.80.D1.83.D0.B6.D0.B5.D0.BD.D0.B8.D0.B5.2C_.D0.B8.D1.81.D0.BF.D1.80.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.BE.29"><span class="tocnumber">3</span> <span class="toctext"><span>Проблемы</span> (актуально, окружение, иÑправлено)</span></a></li> </ul> </div> <h2><span class="mw-headline" id=".D0.9F.D0.BE.D0.BB.D0.B8.D1.82.D0.B8.D1.87.D0.B5.D1.81.D0.BA.D0.B8.D0.B5_.D0.B8_.D0.BA.D0.BE.D0.BD.D1.86.D0.B5.D0.BF.D1.82.D1.83.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5"><span class="mw-headline-number">1</span> ПолитичеÑкие и концептуальные</span></h2> <p><b>Q:</b> OpenSCADA непонÑтна и Ñложна в оÑвоении. Почему так, и еÑÑ‚ÑŒ ли инÑтрукции быÑтрого Ñтарта и продвинутого "Как выполнить ..."?<br /> <b>Re:</b> OpenSCADA тщательно пропиÑана, предельно Ñтруктурирована и формализована. Однако Ð²Ð¿ÐµÑ‡Ð°Ñ‚Ð»ÐµÐ½Ð¸Ñ Ð½ÐµÐ¿Ð¾Ð½Ð¸Ð¼Ð°Ð½Ð¸Ñ Ð¸ ÑложноÑти ожидаемы. ИÑÑ…Ð¾Ð´Ñ Ð¸Ð· целей проекта, программа ÑвлÑетÑÑ Ð¿Ñ€ÐµÐ´ÐµÐ»ÑŒÐ½Ð¾ модульной, а значит вариантов конфигурации и иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¾Ñ‡ÐµÐ½ÑŒ много. С одной Ñтороны Ñто уÑложнÑет воÑприÑтие, но Ñ Ð´Ñ€ÑƒÐ³Ð¾Ð¹ — повышает шанÑÑ‹ "охвата" именно Вашей Ñпециализированной задачи. Кроме того, нужно вÑегда помнить, что Ñложное и непонÑтно вÑÑ‘ неизвеÑтное, которое дейÑтвительно ÑовÑем необÑзательно ÑвлÑетÑÑ Ñ‚Ð°ÐºÐ¸Ð¼. И Ñтот пÑихологичеÑкий барьер нужно преодолевать при каждом оÑвоении нового. РуководÑтво по быÑтрому Ñтарту ÑущеÑтвует и доÑтупно <a href="Quick_start.html" title="Special:MyLanguage/Documents/Quick start">здеÑÑŒ</a>, а раÑширенный "Как выполнить ..." также <a href="How_to.html" title="Special:MyLanguage/Documents/How to">тут</a>.. </p><p><b>Q:</b> Работает ли OpenSCADA в операционной ÑиÑтеме QNX, FreeBSD, MS Windows?<br /> <b>Re:</b> OpenSCADA разрабатываетÑÑ Ð¿Ð¾ принципам многоплатформенноÑти, оÑновываÑÑÑŒ на признанном мировом Ñтандарте POSIX и многоплатформенных библиотеках. Однако, ввиду ограниченноÑти реÑурÑов и интереÑами автора и разработчиков, проект ведётÑÑ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ в ОС Linux. Ð”Ð°Ð»ÑŒÐ½ÐµÐ¹ÑˆÐ°Ñ Ð°Ð´Ð°Ð¿Ñ‚Ð°Ñ†Ð¸Ñ Ðº другим платформам запланирована поÑле выпуÑка верÑии 1.0 и на данный момент OpenSCADA работает на аппаратных платформах x86, x86_64, ARM и программной платформе Android. Поддержка той или иной платформы будет завиÑеть от заинтереÑованноÑти ÑообщеÑтва и Ð½Ð°Ð»Ð¸Ñ‡Ð¸Ñ Ð¾Ñ‚Ð´ÐµÐ»ÑŒÐ½Ð¾Ð³Ð¾ мантейнера Ð´Ð»Ñ Ð°Ð¿Ð¿Ð°Ñ€Ð°Ñ‚Ð½Ð¾-программной платформы. </p><p><b>Q:</b> Возможно ли управлÑÑ‚ÑŒ OpenSCADA поÑредÑтвом обычного WEB-браузера?<br /> <b>Re:</b> Да, возможно. Ð”Ð»Ñ ÐºÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ð¸ OpenSCADA из WEB-браузера Ñозданы модули <a href="Modules/WebCfg.html" title="Special:MyLanguage/Modules/WebCfg">UI.WebCfg</a> и <a href="Modules/WebCfgD.html" title="Special:MyLanguage/Modules/WebCfgD">UI.WebCfgD</a>; Ð´Ð»Ñ Ð¸ÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñов оператора Ñоздан модуль <a href="Modules/WebVision.html" title="Special:MyLanguage/Modules/WebVision">UI.WebVision</a> и Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»ÑŒÑких HTML Ñтраниц Ñоздан модуль <a href="Modules/WebUser.html" title="Special:MyLanguage/Modules/WebUser">UI.WebUser</a>. Которые вызываютÑÑ Ð¼Ð¾Ð´ÑƒÐ»ÐµÐ¼ <a href="Modules/HTTP.html" title="Special:MyLanguage/Modules/HTTP">Protocol.HTTP</a>, подÑиÑтемы "ТранÑпортные Протоколы". </p><p><b>Q:</b> ДопуÑкает ли программа добавление/удаление/обновление модулей на ходу (без оÑтановки)?<br /> <b>Re:</b> Ð”Ð°Ð½Ð½Ð°Ñ Ð²Ð¾Ð·Ð¼Ð¾Ð¶Ð½Ð¾ÑÑ‚ÑŒ предуÑмотрена программой и обеÑпечиваетÑÑ Ð¿Ð¾Ð´ÑиÑтемой "Управление модулÑми". ФактичеÑки, обновление модулей может проиÑходить автоматичеÑки, поÑле Ð¾Ð±Ð½Ð°Ñ€ÑƒÐ¶ÐµÐ½Ð¸Ñ Ð½Ð¾Ð²Ð¾Ð¹ верÑии модулÑ. </p> <h2><span class="mw-headline" id=".D0.90.D1.80.D1.85.D0.B8.D1.82.D0.B5.D0.BA.D1.82.D1.83.D1.80.D0.BD.D1.8B.D0.B5.2C_.D0.B8.D1.81.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D0.BA.D0.BE.D1.80.D0.BE.D1.82.D0.BA.D0.B8.D0.B5_.22.D0.9A.D0.B0.D0.BA_.D0.B2.D1.8B.D0.BF.D0.BE.D0.BB.D0.BD.D0.B8.D1.82.D1.8C_....22"><span class="mw-headline-number">2</span> Ðрхитектурные, иÑпользование и короткие "Как выполнить ..."</span></h2> <h3><span class="mw-headline" id=".D0.AF.D0.B4.D1.80.D0.BE_OpenSCADA"><span class="mw-headline-number">2.1</span> <span id="UsingCore" title="#UsingCore">Ядро OpenSCADA</span></span></h3> <p><b>Q:</b> Каким образом реализуетÑÑ Ð¼Ð½Ð¾Ð³Ð¾ÑÐ·Ñ‹ÐºÐ¾Ð²Ð°Ñ Ð¿Ð¾Ð´Ð´ÐµÑ€Ð¶ÐºÐ°? Могу ли Ñ Ð²Ñ‹Ð¿Ð¾Ð»Ð½Ð¸Ñ‚ÑŒ локализацию на Ñвой родной Ñзык?<br /> <b>Re:</b> МногоÑÐ·Ñ‹ÐºÐ¾Ð²Ð°Ñ Ð¿Ð¾Ð´Ð´ÐµÑ€Ð¶ÐºÐ° реализована на оÑнове Ñтандарта интернационализации I18n. И файлы интернационализации модулей отделены от файла интернационализации Ñдра программы, что обеÑпечивает полноценную поддержку незавиÑимого раÑпроÑÑ‚Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ Ð¸ разработки модулей к OpenSCADA. Перевод программы в целом и модулей в отдельноÑти может быть выполнен незавиÑимо от Ð½Ð°Ð»Ð¸Ñ‡Ð¸Ñ Ð¸Ñходных текÑтов. Ð”Ð»Ñ Ð¿ÐµÑ€ÐµÐ²Ð¾Ð´Ð° доÑтаточно получить *.po или *.pot файлы нужного компонента и в обычном текÑтовом редакторе, или Ñпециализированной программе, выполнить перевод Ñообщений в файлах Ñ Ð°Ð½Ð³Ð»Ð¸Ð¹Ñкого на нужный Ñзык. Ðктуальные файлы вы можете получить из <a class="external text" href="http://oscada.org/svn/trunk/OpenSCADA" rel="nofollow noreferrer noopener" target="_blank">Ñ€ÐµÐ¿Ð¾Ð·Ð¸Ñ‚Ð¾Ñ€Ð¸Ñ Ð¸Ñходных текÑтов проекта</a> в каталоге "src/po" Ñдра программы и каталогах "src/moduls/{subsys}/{module}/po" модулей, а по завершению предложить результаты нового перевода Ð´Ð»Ñ Ð²ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ Ð² репозиторий иÑходных текÑтов, напиÑав в <a class="external text" href="http://oscada.org/ru/forum/topics/proekt/" rel="nofollow noreferrer noopener" target="_blank">форум проекта</a> или прÑмо <a class="external" href="http://oscada.org/wiki/User:RomanSavochenko" title="User:RomanSavochenko">автору и главному разработчику проекта</a>. PO-файлы не иÑпользуютÑÑ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¼Ð¾Ð¹ непоÑредÑтвенно, поÑтому Ð´Ð»Ñ Ð±Ñ‹Ñтрой проверки результата перевода и иÑÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¾ÑˆÐ¸Ð±Ð¾Ðº Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¼Ð¾Ð¶ÐµÑ‚Ðµ воÑпользоватьÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¾Ð¹ <span style="border: solid gray 1px; padding: 1px; font-family: monospace; font-size: 1.2em; white-space: nowrap;">msgfmt -vo [openscada|oscd_{ModId}].mo {lang}.po</span> и помеÑтить полученный MO-файл <b>[openscada|oscd_{ModId}].mo</b> в каталоге "/usr/share/locale/{lang}/LC_MESSAGES" актуальной инÑталлÑции OpenSCADA Ð´Ð»Ñ Ñзыка <i>lang</i>. </p><p><b>Q:</b> Могу ли Ñ Ñоздать Ñвой ÑобÑтвенный модуль Ð´Ð»Ñ ÐºÐ°ÐºÐ¾Ð¹ либо подÑиÑтемы?<br /> <b>Re:</b> Да, конечно. Ð”Ð»Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰Ð¸ в Ñтом Ñоздан <a href="../en/API.html" title="Special:MyLanguage/Documents/API">документ</a>, где практичеÑки полноÑтью опиÑана архитектура Ñдра, его функции и API модулей различных подÑиÑтем. Дополнительно Ñоздано <a href="How_to_Create_module.html" title="Special:MyLanguage/Documents/How to/Create module">руководÑтво по Ñозданию модулей к OpenSCADA</a> и Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð¹ подÑиÑтемы Ñоздан модуль-шаблон, взÑв за оÑнову который можно быÑтро Ñоздать ÑобÑтвенный модуль. </p><p><b>Q:</b> Как организовываетÑÑ Ñ€Ð°Ð·Ð´ÐµÐ»ÐµÐ½Ð¸Ðµ доÑтупа?<br /> <b>Re:</b> ИÑпользуетÑÑ Ñхема безопаÑноÑти Ð¿Ð¾Ð´Ð¾Ð±Ð½Ð°Ñ UNIX OC. Так, нужные компоненты имеют владельца, принадлежат группам и Ñодержат триаду доÑтупа "rwxrwxrwx". Кроме того, данный механизм безопаÑноÑти внедрён в <a href="../en/API.html#CntrNode" title="Special:MyLanguage/Documents/API">Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ OpenSCADA</a>, который в Ñвою очередь пронизывает вÑÑŽ программу. </p><p><b>Q:</b> Каким образом в OpenSCADA можно реализовывать межмодульные ÑвÑзи?<br /> <b>Re:</b> Межмодульные ÑвÑзи могут быть Ñледующих типов: </p> <ul><li> Стандартный Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ Ð´Ð¾Ñтупа — производитÑÑ Ð¿Ð¾ÑредÑтвом виртуального интерфейÑа модульных подÑиÑтем.</li> <li> РаÑширенный Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ Ð´Ð¾Ñтупа — предуÑматривает ÑкÑпорт функций внешнего интерфейÑа модулем ÑкÑпортёром и поÑледующее подключение Ð¼Ð¾Ð´ÑƒÐ»Ñ Ð¸Ð¼Ð¿Ð¾Ñ€Ñ‚Ñ‘Ñ€Ð° к Ñтим функциÑм Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ функций объекта "<a href="../en/API.html#TModule" title="Special:MyLanguage/Documents/API">TModule::modFunc()</a>".</li> <li> ПользовательÑкие функции — любой компонент программы может региÑтрировать Ñвои пользовательÑкие функции ("<a href="../en/API.html#TCntrNode" title="Special:MyLanguage/Documents/API">TCntrNode::objFuncCall()</a>"), которые в поÑледÑтвии могут быть иÑпользованы в окружении пользовательÑкого Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¼Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ OpenSCADA.</li></ul> <p><b>Q:</b> Как OpenSCADA Ñобрать из иÑходных текÑтов?<br /> <b>Re:</b> Сборка любого программного проекта из иÑходных текÑтов, на ÑиÑтемном Ñзыке вроде C/C++ и ÑложноÑтью выше Ñреднего, ÑвлÑетÑÑ Ð½ÐµÑ‚Ñ€Ð¸Ð²Ð¸Ð°Ð»ÑŒÐ½Ð¾Ð¹ задачей, оÑобенно Ð´Ð»Ñ ÑпецифичеÑких окружений и окружений Ð´Ð»Ñ ÐºÐ¾Ñ‚Ð¾Ñ€Ñ‹Ñ… ещё не выполнена адаптациÑ. Ð”Ð»Ñ Ñ€ÐµÑˆÐµÐ½Ð¸Ñ Ñтой задачи нужна ÑоответÑÑ‚Ð²ÑƒÑŽÑ‰Ð°Ñ Ð¿Ð¾Ð´Ð³Ð¾Ñ‚Ð¾Ð²ÐºÐ° и предварительный опыт Ñборки. ЕÑли еÑÑ‚ÑŒ возможноÑÑ‚ÑŒ получить OpenSCADA Ñобранной и в виде готовых пакетов под ваше окружение, то обÑзательно ею воÑпользуйтеÑÑŒ! ЕÑли же нет пакетов под ваше окружение или Ð’Ñ‹ Ñознательно желаете Ñобрать программу из иÑходных текÑтов под адаптированное окружение то воÑпользуйтеÑÑŒ <a href="../en/How_to_Build_from_source.html" title="Special:MyLanguage/Documents/How to/Build from source">руководÑтвом Ð´Ð»Ñ Ñборки из иÑходных текÑтов</a>. ÐÐ´Ð°Ð¿Ñ‚Ð°Ñ†Ð¸Ñ Ðº Ñборке и работе в других окружениÑÑ… ÑвлÑетÑÑ Ð·Ð½Ð°Ñ‡Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð¾ более нетривиальной задачей, оÑобенно Ð´Ð»Ñ Ð¾ÐºÑ€ÑƒÐ¶ÐµÐ½Ð¸Ð¹ очень далёких от POSIX или понÑÑ‚Ð¸Ñ Ð¼ÐµÐ¶-платформенной ÑовмеÑтимоÑти вообще, ÑвлÑетÑÑ Ð¾Ñ‚Ð´ÐµÐ»ÑŒÐ½Ñ‹Ð¼ под-проектом OpenSCADA и предуÑматривает продолжительный процеÑÑ Ð²Ñ€Ð¾Ð´Ðµ <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Sub-projects/Adaption_to_Android" title="Special:MyLanguage/Sub-projects/Adaption to Android">адаптации к Android</a>, поÑтому не нужно её путать Ñ Ð¿Ñ€Ð¾Ñтой Ñборкой под адаптированное окружение! </p> <h3><span class="mw-headline" id=".D0.91.D0.94"><span class="mw-headline-number">2.2</span> БД</span></h3> <p><b>Q:</b> Могу ли Ñ Ð¿Ð¾Ð»ÑƒÑ‡Ð¸Ñ‚ÑŒ данные непоÑредÑтвенно из БД?<br /> <b>Re:</b> Да, Ð’Ñ‹ можете. Ð”Ð»Ñ Ð±Ð°Ð· данных (БД), которые поддерживают SQL, Ð’Ñ‹ можете иÑпользовать <a href="User_API.html#SYS.BD" title="Special:MyLanguage/Documents/User API">функцию SQLReq()</a> к ÑоответÑтвующей БД. Ð’ общем и Ð´Ð»Ñ Ð½Ðµ SQL баз данных Ð’Ñ‹ можете иÑпользовать API доÑтупа к Ñлою баз данных OpenSCADA в функциÑÑ… таблицы БД <a href="User_API.html#SYS.BD" title="Special:MyLanguage/Documents/User API">fieldStruct(), fieldSeek(), fieldGet(), fieldSet(), fieldDel()</a>. </p> <h3><span class="mw-headline" id=".D0.A4.D0.B8.D0.B7.D0.B8.D1.87.D0.B5.D1.81.D0.BA.D0.B8.D0.B9_.D0.B8_.D0.BB.D0.BE.D0.B3.D0.B8.D1.87.D0.B5.D1.81.D0.BA.D0.B8.D0.B9-.D0.B2.D0.B8.D1.80.D1.82.D1.83.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B9_.D1.81.D0.B1.D0.BE.D1.80_.D0.B4.D0.B0.D0.BD.D0.BD.D1.8B.D1.85"><span class="mw-headline-number">2.3</span> ФизичеÑкий и логичеÑкий-виртуальный Ñбор данных</span></h3> <p><b>Q:</b> Где и как выполнÑÑ‚ÑŒ дополнительную логичеÑкую обработку атрибутов параметров, Ð²ÐºÐ»ÑŽÑ‡Ð°Ñ Ð»Ð¾Ð³Ð¸Ñ‡ÐµÑкое ÑвÑзывание в одном объекте?<br /> <b>Re:</b> Ð›ÑŽÐ±Ð°Ñ Ð¼Ð°Ñ‚ÐµÐ¼Ð°Ñ‚Ð¸Ñ‡ÐµÑÐºÐ°Ñ Ð¾Ð±Ñ€Ð°Ð±Ð¾Ñ‚ÐºÐ° атрибутов параметров может производитÑÑ Ð² вычиÑлительных объектах контроллеров (модулÑÑ… подÑиÑтемы "Сбор данных"), например, в блочном вычиÑлительном контроллере (<a href="Modules/BlockCalc.html" title="Special:MyLanguage/Modules/BlockCalc">DAQ.BlockCalc</a>) и объекте контроллера на оÑнове Java-подобного Ñзыка (<a href="Modules/JavaLikeCalc.html" title="Special:MyLanguage/Modules/JavaLikeCalc">DAQ.JavaLikeCalc</a>). Кроме того, обработка может выполнÑÑ‚ÑŒÑÑ Ð½Ð° логичеÑком уровне параметров (<a href="Modules/LogicLev.html" title="Special:MyLanguage/Modules/LogicLev">DAQ.LogicLev</a>) в модулÑÑ… подÑиÑтемы "Сбор данных", Ñпециально Ð´Ð»Ñ Ñтого предуÑмотренных (работающих по шаблонам параметров) или Ñодержащих вÑтроенную реализацию механизма шаблонов параметров. Т.е. пользователь может формировать параметры Ñ Ð½ÑƒÐ¶Ð½Ð¾Ð¹ ему Ñтруктурой и алгоритмом поÑÑ‚-обработки, Ñ„Ð¾Ñ€Ð¼Ð¸Ñ€ÑƒÑ Ð»Ð¾Ð³Ð¸Ñ‡ÐµÑки ÑвÑзанные объекты. ЧаÑÑ‚ÑŒ обработки может выполнÑÑ‚ÑŒÑÑ Ð² СВУ, непоÑредÑтвенно при визуализации (<a href="Modules/VCAEngine.html" title="Special:MyLanguage/Modules/VCAEngine">UI.VCAEngine</a>). Про Ñбор данных в целом Ñмотрите в <a href="DAQ.html" title="Special:MyLanguage/Documents/DAQ">документе</a>. </p><p><b>Q:</b> Где проверÑÑŽÑ‚ÑÑ ÑˆÐºÐ°Ð»Ñ‹ параметров и различные уÑтавки Ñигнализации?<br /> <b>Re:</b> Проверка шкал и уÑтавок может реализовыватьÑÑ Ñамим контроллером, Ñ Ñигнализацией через ÑоответÑтвующие атрибуты параметров, а также на логичеÑком уровне параметров, Ð´Ð»Ñ "Ñырых" иÑточников данных. Кроме того, данный анализ может производитÑÑ Ð½ÐµÐ¿Ð¾ÑредÑтвенно в Ñреде визуализации и ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ (СВУ). </p><p><b>Q:</b> Могу ли Ñ Ð¿Ð¾Ð»ÑƒÑ‡Ð¸Ñ‚ÑŒ (прочитать и запиÑать) значение атрибута параметра Ñбора данных, например, из процедуры пользовательÑкого интерфейÑа?<br /> <b>Re:</b> ОÑновным интерфейÑом обмена значениÑми параметров Ñбора данных Ñ Ñлементами или атрибутами ÑоответÑтвующей чаÑти OpenSCADA ÑвлÑетÑÑ Ñтатичное ÑвÑзывание, которое ÑвлÑетÑÑ Ñамым быÑтрым. Однако внутренний Ñзык и динамичеÑÐºÐ°Ñ Ð¾Ð±ÑŠÐµÐºÑ‚Ð½Ð°Ñ Ð¼Ð¾Ð´ÐµÐ»ÑŒ узлов OpenSCADA позволÑет Вам оÑущеÑтвлÑÑ‚ÑŒ динамичеÑкий доÑтуп к объектам атрибутов параметров Ñбора данных, например, Ð’Ñ‹ можете получить значение атрибута <a href="User_API.html#SYS.DAQ" title="Special:MyLanguage/Documents/User API">функцией get()</a>. </p><p><b>Q:</b> Как Ñ Ð¼Ð¾Ð³Ñƒ Ñохранить-воÑÑтановить модифицированные данные на логичеÑком уровне?<br /> <b>Re:</b> ДейÑтвительно, иногда может понадобитьÑÑ Ñохранение и затем воÑÑтановление, в оÑновном при перезапуÑке, некоторых модифицированных динамичеÑких данных вроде Ñчётчиков пробега оборудованиÑ. Ð’ целом, обработку такого рода иÑточников данных и Ð¾Ð±Ð¾Ñ€ÑƒÐ´Ð¾Ð²Ð°Ð½Ð¸Ñ Ð½ÑƒÐ¶Ð½Ð¾ оÑущеÑтвлÑÑ‚ÑŒ на <a class="external" href="http://oscada.org/wiki/Special:MyLanguage/Sub-projects/Logical_level" title="Special:MyLanguage/Sub-projects/Logical level">логичеÑком уровне</a> подÑиÑтемы "Сбор данных", а реализовать её можно многими путÑми, предуÑматривающими Ñохранение данных на некотором хранилище и поÑледующее их воÑÑтановление, однако наиболее извеÑтные ÑпоÑобы Ñто: </p> <ul><li> ПериодичеÑкое, или при завершении, Ñохранение контекÑта параметров шаблона Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ запроÑа пользовательÑкого API OpenSCADA через <a href="User_API.html#SYS" title="Special:MyLanguage/Documents/User API">cntrReq()</a>, где "force" Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð½ÑƒÐ´Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð¾Ð³Ð¾ ÑÐ¾Ñ…Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ Ð½ÐµÐ¼Ð¾Ð´Ð¸Ñ„Ð¸Ñ†Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð½Ñ‹Ñ… параметров:</li></ul> <div class="mw-highlight mw-content-ltr" dir="ltr"><pre><span class="nx">SYS</span><span class="p">.</span><span class="nx">cntrReq</span><span class="p">(</span><span class="nx">SYS</span><span class="p">.</span><span class="nx">XMLNode</span><span class="p">(</span><span class="s2">"save"</span><span class="p">).</span><span class="nx">setAttr</span><span class="p">(</span><span class="s2">"path"</span><span class="p">,</span><span class="k">this</span><span class="p">.</span><span class="nx">nodePath</span><span class="p">()</span><span class="o">+</span><span class="s2">"/%2fobj"</span><span class="p">).</span><span class="nx">setAttr</span><span class="p">(</span><span class="s2">"force"</span><span class="p">,</span><span class="s2">"1"</span><span class="p">));</span> </pre></div> <ul><li> ЕÑли атрибут шаблона Ñо Ñчётчиком архивируетÑÑ Ñ‚Ð¾Ð³Ð´Ð° при Ñтарте параметра Ð’Ñ‹ можете получить поÑледнее значение из Ñтого архива, например, так:</li></ul> <div class="mw-highlight mw-content-ltr" dir="ltr"><pre><span class="k">if</span><span class="p">(</span><span class="nx">f_start</span><span class="p">)</span> <span class="nx">prevArchRestore</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span> <span class="k">if</span><span class="p">(</span><span class="o">!</span><span class="nx">prevArchRestore</span> <span class="o">&&</span> <span class="p">(</span><span class="nx">archEnd</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">arch</span><span class="p">().</span><span class="nx">end</span><span class="p">(</span><span class="s2">"FSArch.1s"</span><span class="p">)))</span> <span class="p">{</span> <span class="nx">SYS</span><span class="p">.</span><span class="nx">messInfo</span><span class="p">(</span><span class="s2">"testArch"</span><span class="p">,</span> <span class="s2">"val="</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">arch</span><span class="p">().</span><span class="nx">getVal</span><span class="p">(</span><span class="nx">archEnd</span><span class="p">)</span><span class="o">+</span><span class="s2">"; "</span> <span class="s2">"val1="</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">arch</span><span class="p">().</span><span class="nx">getVal</span><span class="p">(</span><span class="nx">archEnd</span><span class="p">,</span><span class="kc">false</span><span class="p">,</span><span class="s2">"FSArch.1s"</span><span class="p">)</span><span class="o">+</span><span class="s2">"; "</span> <span class="s2">"val2="</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">get</span><span class="p">(</span><span class="nx">archEnd</span><span class="o">/</span><span class="mi">1000000</span><span class="p">,</span><span class="nx">archEnd</span><span class="o">%</span><span class="mi">1000000</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="nx">cntr</span><span class="p">.</span><span class="nx">arch</span><span class="p">().</span><span class="nx">getVal</span><span class="p">(</span><span class="nx">archEnd</span><span class="p">);</span> <span class="nx">prevArchRestore</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span> <span class="p">}</span> </pre></div> <ul><li> Создание Ñпециальной таблицы БД и запиÑÑŒ/чтение Ñтих данных прÑмо в Ñту таблицу поÑредÑтвом SQL-запроÑов через <a href="User_API.html#DB" title="Special:MyLanguage/Documents/User API">SQLReq()</a>.</li></ul> <p><b>Q:</b> Возможно ли, и каким образом, реализуетÑÑ Ñ€ÐµÐ·ÐµÑ€Ð²Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ðµ параметров?<br /> <b>Re:</b> Как и Ð»ÑŽÐ±Ð°Ñ Ð¿Ð¾ÑÑ‚-обработка, резервирование параметров оÑущеÑтвлÑетÑÑ <a href="DAQ.html#LogicLev" title="Special:MyLanguage/Documents/DAQ">логичеÑким уровнем</a> путём ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ ÑˆÐ°Ð±Ð»Ð¾Ð½Ð° параметра, реализующего возможноÑÑ‚ÑŒ в одном параметре опиÑывать неÑколько однотипных датчиков, которые будут иметь ÑобÑтвенные атрибуты значений. Результирующее значение будет помещатьÑÑ Ð² обобщающий атрибут значениÑ. </p> <h3><span class="mw-headline" id=".D0.90.D1.80.D1.85.D0.B8.D0.B2.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5-.D0.B8.D1.81.D1.82.D0.BE.D1.80.D0.B8.D1.8F_.D0.B8_.D0.9D.D0.B0.D1.80.D1.83.D1.88.D0.B5.D0.BD.D0.B8.D1.8F"><span class="mw-headline-number">2.4</span> Ðрхивирование-иÑÑ‚Ð¾Ñ€Ð¸Ñ Ð¸ ÐарушениÑ</span></h3> <p><b>Q:</b> Каким образом определÑетÑÑ Ñ†Ð¸ÐºÐ»Ð¸Ñ‡Ð½Ð¾ÑÑ‚ÑŒ Ð°Ñ€Ñ…Ð¸Ð²Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ð¹?<br /> <b>Re:</b> Ðрхивирование ÑвлÑетÑÑ Ð½ÐµÐ·Ð°Ð²Ð¸Ñимой от контроллеров и параметров задачей и выполнÑетÑÑ Ð¾Ð½Ð° модульной подÑиÑтемой "<a href="Program_manual.html#CfgArch" title="Special:MyLanguage/Documents/Program manual">Ðрхивы-ИÑториÑ</a>". Что и как архивировать определÑетÑÑ Ð¸Ð½Ð´Ð¸Ð²Ð¸Ð´ÑƒÐ°Ð»ÑŒÐ½Ð¾ Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾ атрибута параметра. ПредуÑмотрены два режима архивированиÑ: паÑÑивный и активный. ПаÑÑивное архивирование определÑетÑÑ Ñ†Ð¸ÐºÐ»Ð¸Ñ‡Ð½Ð¾Ñтью Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ð´Ð°Ð½Ð½Ñ‹Ñ… у контроллера — циклом Ð¼Ð¾Ð´ÑƒÐ»Ñ Ñбора данных. Ðктивное архивирование обеÑпечиваетÑÑ Ð·Ð°Ð´Ð°Ñ‡ÐµÐ¹ подÑиÑтемы Ð°Ñ€Ñ…Ð¸Ð²Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¸ незавиÑимо от цикла и ÑпоÑоба Ñбора данных модулем "DAQ". </p><p><b>Q:</b> Ð’ процеÑÑе разработки-наладки у Ð¼ÐµÐ½Ñ Ð¾ÑтаютÑÑ Ð½ÐµÑоответÑтвующие активные нарушениÑ. Что Ñ Ð½Ð¸Ð¼Ð¸ делать?<br /> <b>Re:</b> Да, учитываÑ, что Ð½Ð°Ñ€ÑƒÑˆÐµÐ½Ð¸Ñ Ð² таблицу активных нарушений чаÑто попадают-формируютÑÑ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»ÑŒÑкими процедурами, то "залипание" их там может ÑлучатьÑÑ. СоответÑтвенно, вы можете проÑто перезапуÑтить проект OpenSCADA или удалить-ÑнÑÑ‚ÑŒ такие Ð½Ð°Ñ€ÑƒÑˆÐµÐ½Ð¸Ñ Ð² <a class="external" href="http://oscada.org/wiki/File:QTCfg_subsys_arch_mess_ru.png" title="File:QTCfg subsys arch mess ru.png">главной вкладке "СообщениÑ" Ñтраницы подÑиÑтемы "Ðрхивы-ИÑториÑ"</a>: выбираете уровень нарушений "Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ (1[X]), ÐÐРУШЕÐИЕ", уÑтанавливаете размер в 0, поÑле чего в таблице Ñообщений должны быть вÑе актуальные нарушениÑ, отдельные из которых можно убрать через контекÑтное меню, а вÑÑ‘ видимое кнопкой под таблицей; Ð´Ð»Ñ Ð±Ð¾Ð»ÑŒÑˆÐ¾Ð¹ группы нарушений, и не вÑех, можете уÑтановить их чёткие характериÑтики времени, ÑƒÑ€Ð¾Ð²Ð½Ñ Ð¸ категории, чтобы увидеть в таблица, а ÑоответÑтвенно "ÑнÑÑ‚ÑŒ" Ñразу вÑе необходимые. </p><p><b>Q:</b> Возможна ли работа Ñ Ð¿Ð¾Ñ‚Ð¾ÐºÐ¾Ð²Ñ‹Ð¼Ð¸ данными?<br /> <b>Re:</b> Потоковый и пакетный Ñбор данных работает в ÑвÑзке Ñ Ð°Ñ€Ñ…Ð¸Ð²Ð¾Ð¼ и его буфером. Т.е. иÑточник, получив пакет/блок данных, непоÑредÑтвенно помещает его в архив атрибута параметра или же берет пакет Ñ Ð±ÑƒÑ„ÐµÑ€Ð° архива при потоковом выводе. </p><p><b>Q:</b> Могу ли Ñ Ð¾ÑущеÑтвить ÑкÑпорт архивных данных (иÑтории) в другой формат, Ñкажем — CSV, Excel?<br /> <b>Re:</b> Ð’ целом, ÑкÑпортировать архивные данные Ð’Ñ‹ можете и тут еÑÑ‚ÑŒ три оÑобенноÑти, а именно: меÑто, форматы и режим ÑкÑпорта. ПоÑкольку конечным пользователем, Ð´Ð»Ñ ÐºÐ¾Ñ‚Ð¾Ñ€Ð¾Ð³Ð¾ Ñти данные формируютÑÑ, ÑвлÑетÑÑ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»ÑŒ конечного интерфейÑа визуализации — оператор, то вÑÑ‚Ñ€Ð¾ÐµÐ½Ð½Ð°Ñ Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ ÑкÑпорта предоÑтавлÑетÑÑ <a href="Modules/Vision.html" title="Special:MyLanguage/Modules/Vision">Ñтими интерфейÑами</a> Ð´Ð»Ñ Ð´Ð°Ð½Ð½Ñ‹Ñ… примитивов <a href="Modules/VCAEngine.html#Diagram" title="Special:MyLanguage/Modules/VCAEngine">диаграммы</a> и <a href="Modules/VCAEngine.html#Document" title="Special:MyLanguage/Modules/VCAEngine">документа</a>, где можно оÑущеÑтвить ÑкÑпорт в CSV, файл Ð¸Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ Ð¸ HTML. Что каÑаетÑÑ Ð´Ñ€ÑƒÐ³Ð¸Ñ… форматов данных, оÑобенно закрытых и одноплатформенных вроде Excel, то ÑкÑпорт в них может быть реализован <a href="User_API.html" title="Special:MyLanguage/Documents/User API">пользовательÑкой процедурой</a> через общий Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ Ð²Ð¸Ð·ÑƒÐ°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ð¸ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ ÐºÐ°Ðº прÑмым формированием, еÑли формат проÑтой, так и вызовом внешней утилиты преобразованиÑ, еÑли она доÑтупна. ÐкÑпорт в целом может оÑущеÑтвлÑÑ‚ÑŒÑÑ Ð² двух режимах: интерактивном и потоковом. Именно интерактивный режим вÑтроен в Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸ он предуÑматривает указание диапазона и качеÑтва данных (данных примитивов), как ограничивающих факторов целеÑообразного времени иÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ñтой операции. Потоковый режим предуÑматривает фоновое, возможно даже вмеÑте Ñ Ð¾Ñновными процеÑÑами, оÑущеÑтвление ÑкÑпорта как текущих данных так и данных локальных архивов и чаÑто иÑпользуетÑÑ Ð´Ð»Ñ ÑкÑпорта в таблицу БД Ñ Ð½ÑƒÐ¶Ð½Ð¾Ð¹ Ñтруктурой. ÐкÑпорт из Ð¾ÐºÑ€ÑƒÐ¶ÐµÐ½Ð¸Ñ Ñ€Ð°Ð·Ñ€Ð°Ð±Ð¾Ñ‚ÐºÐ¸, как и потоковый режим, вÑтроенными функциÑми не предуÑматриваетÑÑ, кроме ÑкÑпериментальных вроде ÑкÑпорта в WAV. Ðто, при необходимоÑти, может быть реализовано <a href="Libs_Service_procedures.html" title="Special:MyLanguage/Libs/Service procedures">ÑервиÑной процедурой</a> или чаÑтью кода оÑновного процеÑÑа Ð´Ð»Ñ Ð¿Ð¾Ñ‚Ð¾ÐºÐ¾Ð²Ð¾Ð³Ð¾ режима. </p> <h3><span class="mw-headline" id=".D0.98.D0.BD.D1.82.D0.B5.D1.80.D1.84.D0.B5.D0.B9.D1.81_.D0.BA.D0.BE.D0.BD.D0.B5.D1.87.D0.BD.D0.BE.D0.B3.D0.BE_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8F"><span class="mw-headline-number">2.5</span> Ð˜Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ ÐºÐ¾Ð½ÐµÑ‡Ð½Ð¾Ð³Ð¾ пользователÑ</span></h3> <p><b>Q:</b> Каким образом оÑущеÑтвлÑетÑÑ Ñ€ÐµÑ‡ÐµÐ²Ð°Ñ ÑÐ¸Ð³Ð½Ð°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ñ Ð¸ что нужно Ð´Ð»Ñ ÐµÑ‘ работы?<br /> <b>Re:</b> Ð ÐµÑ‡ÐµÐ²Ð°Ñ ÑигнализациÑ, как и иные методы Ñигнализации, ÑвлÑетÑÑ Ñлементом подÑиÑтемы "ПользовательÑкие интерфейÑÑ‹" и оÑущеÑтвлÑетÑÑ Ð² модулÑÑ… Ñреды визуализации и ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ (СВУ), а именно: в движке СВУ <a href="Modules/VCAEngine.html" title="Special:MyLanguage/Modules/VCAEngine">UI.VCAEngine</a> и в визуализаторах <a href="Modules/Vision.html" title="Special:MyLanguage/Modules/Vision">UI.Vision</a> и <a href="Modules/WebVision.html" title="Special:MyLanguage/Modules/WebVision">UI.WebVision</a>. Обычно, Ð´Ð»Ñ Ñинтеза речи нужен ÑоответÑтвующий Ñинтезатор Ñ Ð¿Ð¾Ð´Ð´ÐµÑ€Ð¶ÐºÐ¾Ð¹ нужного Ñзыка, вроде <b>RHVoice</b>, <b>festival</b>, <b>espeak</b>. Ð”Ð»Ñ Ð¿Ñ€Ð¾Ð¸Ð³Ñ€Ñ‹Ð²Ð°Ð½Ð¸Ñ Ñинтезированного звука вам не нужны ÑпецифичеÑкие инÑтрументы в типовом окружении. Однако, Ð´Ð»Ñ ÑпецифичеÑких окружений, нужна программа <b>play</b>, ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ð¾Ð±Ñ‹Ñ‡Ð½Ð¾ ÑодержитÑÑ Ð² пакете <b>sox</b>, но Ð´Ð»Ñ Ñ‚Ð¾Ñ‡Ð½Ð¾Ð³Ð¾ Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ð·Ð°Ð²Ð¸ÑимоÑтей Ñмотрите в <a href="Modules/VCAEngine.html#Alarms" title="Special:MyLanguage/Modules/VCAEngine">ÑоответÑтвующих процедурах внешних методов уведомлениÑ</a>. </p><p><b>Q:</b> Как Ñ Ð¼Ð¾Ð³Ñƒ быÑтро и корректно изменить Ñоотношение Ñторон Ñкрана визуального интерфейÑа Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð½Ð° другое, например, на 16:9?<br /> <b>Re:</b> Да, оÑновной Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ OpenSCADA, оÑнованный на концепции объектов Ñигнализации и её <a href="Libs_Main_graphical_elements.html#RootPgSo" title="Special:MyLanguage/Libs/Main graphical elements">корневой Ñтранице</a>, приÑпоÑоблен и разработан под Ñоотношение Ñторон 4:3. Ð”Ð»Ñ Ð¾Ð±Ñ‰Ð¸Ñ… проектов СВУ запланирована Ñ€ÐµÐ°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ñ ÑоответÑтвующих Ñтилей на разные ÑÐ¾Ð¾Ñ‚Ð½Ð¾ÑˆÐµÐ½Ð¸Ñ Ñторон однако мнемоÑхемы должны оÑтаватьÑÑ Ð½ÐµÐ¸Ð·Ð¼ÐµÐ½Ð½Ñ‹Ð¼Ð¸. Т.е. Ð´Ð»Ñ Ñ€ÑƒÑ‡Ð½Ð¾Ð¹, быÑтрой и корректной Ñмены ÑÐ¾Ð¾Ñ‚Ð½Ð¾ÑˆÐµÐ½Ð¸Ñ Ñторон Ð’Ñ‹, на данный момент, должны выполнить Ñледующее, в дереве проекта СВУ: </p> <ul><li> УÑтановить, или умножить оригинальное, атрибут "ГеометриÑ: x маÑштаб" (geomX) в значение (16/9)/(4/3) = 1.333, длÑ: <ul><li> <a href="Libs_Main_graphical_elements.html#RootPgSo" title="Special:MyLanguage/Libs/Main graphical elements">корневой Ñтраницы</a>;</li> <li> вÑех шаблонных Ñтраниц вроде "<a href="Libs_Main_graphical_elements.html#grpGraph" title="Special:MyLanguage/Libs/Main graphical elements">Группы графиков</a>", только Ð´Ð»Ñ Ñтраниц иÑпользованных как шаблоны;</li> <li> вÑех Ñтраниц документов и панелей управлениÑ, индивидуально.</li></ul></li> <li> Из-за того, что Ñтраницы мнемоÑхем редко допуÑкают изменение оригинального ÑÐ¾Ð¾Ñ‚Ð½Ð¾ÑˆÐµÐ½Ð¸Ñ Ñторон, ввиду иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¿Ñ€Ð°Ð²Ð¸Ð»ÑŒÐ½Ñ‹Ñ… фигур вроде окружноÑти и квадратов, мы вынуждены разрабатывать Ñти кадры Ñ Ð½Ð°Ñ‡Ð°Ð»Ð° и в размере [900*1.333 x 550] = [1199 x 550].</li></ul> <p><b>Q:</b> How can I connect the visualiser UI.Vision to a remote visualisation server or PLC with such function?<br /> <b>Re:</b> Yes, you are allowed for creation of visualiser servers and PLCs based on the module <a href="Modules/VCAEngine.html" title="Special:MyLanguage/Modules/VCAEngine">UI.VCAEngine</a> with all VCA-data of the user visualisation projects on them and obliviously with OpenSCADA installed there. Next you are allowed for a connection to the remote visualisation servers or PLCs by the module <a href="Modules/Vision.html" title="Special:MyLanguage/Modules/Vision">UI.Vision</a> for locally developing and visualisation of the remote user visualisation projects. The detailed instruction you can get in the <a href="Quick_start.html" title="Special:MyLanguage/Documents/Quick start">Quick Start manual's</a> part "<a href="Quick_start.html#RemConUse" title="Special:MyLanguage/Documents/Quick start">Connecting and using remote and background configurations</a>" and here you have get a short instruction. This short instruction also usable to get remote control of the visualiser servers and PLCs. To do that you must follow next procedure on a client station with the module UI.Vision and any configuration include pure-empty one: </p> <ul><li> Create a connection to the visualiser server or PLC as an OpenSCADA station on <a class="external" href="http://oscada.org/wiki/File:QTCfg_subsys_tr_sub.png" title="File:QTCfg subsys tr sub.png">the transports page</a> of any OpenSCADA configurator, in the "System" mode. If you will set also the "User" mode you will be allowed to control the remote station from the configurator and user, after the navigation tree updating.</li> <li> Select on <a class="external" href="http://oscada.org/wiki/File:Vision_cfg.png" title="File:Vision cfg.png">the visualiser page</a> of any OpenSCADA configurator: a new connection, start user, user's password of the remote station and a project or projects for their automatic execution, else you will get in the developing mode. Next starting of the module UI.Vision should cause establishing of the remote connection to the visualiser server or PLC with their projects developing or execution. For querying the station together user and password at the module generic call you can select the connection-station "<Select>", useful at presence of many control stations and for opening several of them simultaneously.</li></ul> <p><b>Q:</b> Как Ñ Ð¼Ð¾Ð³Ñƒ автоматичеÑки запуÑтить OpenSCADA Ñ ÑоответÑтвующим оперативным интерфейÑом Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ â€” проектом диÑпетчерÑкого контролÑ?<br /> <b>Re:</b> Конечно, поÑле Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð¸Ñ Ð¿Ñ€Ð¾Ñ†ÐµÑÑа разработки, Ð’Ñ‹ должны обеÑпечить запуÑк программы вмеÑте Ñ Ð·Ð°Ð¿ÑƒÑком операционной ÑиÑтемы и полно-Ñкранное иÑполнение результирующего оперативного интерфейÑа пользователÑ. Ð”Ð»Ñ Ñтого Ð’Ñ‹ должны Ñледовать процедуре: </p> <ul><li> ОбеÑпечьте ÑпецифичеÑкие Ð´Ð»Ñ ÑиÑтемы мероприÑÑ‚Ð¸Ñ Ð·Ð°Ð¿ÑƒÑка Ñамой OpenSCADA Ñ Ð²Ð°ÑˆÐ¸Ð¼ проектом. Тут Ð’Ñ‹ должны предварительно Ñоздать или найти иконку рабочего Ñтола вашего проекта в OpenSCADA из <a href="Program_manual.html#Projects" title="Special:MyLanguage/Documents/Program manual">менеджера проектов OpenSCADA</a> и Ñкопировать или размеÑтить её в каталоге или перечне программ, которые запуÑкаютÑÑ Ð°Ð²Ñ‚Ð¾Ð¼Ð°Ñ‚Ð¸Ñ‡ÐµÑки вашим окружением рабочего Ñтола. Детали Ñмотрите в документации на ÑоответÑтвующее окружение рабочего Ñтола.</li> <li> Выберите запуÑк Ð¼Ð¾Ð´ÑƒÐ»Ñ <a href="Modules/Vision.html" title="Special:MyLanguage/Modules/Vision">UI.Vision</a> Ñ Ð¾Ð±Ñ‰Ð¸Ð¼ запуÑком OpenSCADA, в <a href="Modules/QTStarter.html#Cfg" title="Special:MyLanguage/Modules/QTStarter">поле "Модули Qt Ð´Ð»Ñ Ð·Ð°Ð¿ÑƒÑка" Ð¼Ð¾Ð´ÑƒÐ»Ñ UI.QTStarter</a> из любого конфигуратора OpenSCADA.</li> <li> Выберите Ваш проект СВУ Ð´Ð»Ñ ÐµÐ³Ð¾ автоматичеÑкого иÑполнениÑ, в <a href="Modules/Vision.html#Cfg" title="Special:MyLanguage/Modules/Vision">поле "Перечень проектов Ð´Ð»Ñ Ð·Ð°Ð¿ÑƒÑка" Ð¼Ð¾Ð´ÑƒÐ»Ñ UI.Vision</a> из любого конфигуратора OpenSCADA. Тут мы также рекомендуем уÑтановить Ð´Ð»Ñ Ð¸ÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ð¿Ñ€Ð¾ÐµÐºÑ‚Ð° пользователÑ, отличного от ÑиÑтемного, еÑтеÑтвенно Ñ Ð¿Ñ€Ð°Ð²Ð°Ð¼Ð¸ на Ñтот проект.</li></ul> <p><b>Q:</b> May I adjust my project for some specific branding?<br /> <b>Re:</b> Most visible branding by the end user is placed in <a href="Modules/VCAEngine.html" title="Special:MyLanguage/Modules/VCAEngine">the end user VCA interface</a> but you may want also in some adjustment the splash image, icons and so on: </p> <ul><li> icon in the right upper of the frame "<a href="Libs_Main_graphical_elements.html#RootPgSo" title="Special:MyLanguage/Libs/Main graphical elements">Root page (SO)</a>" — just upload your image in <a class="external" href="http://oscada.org/wiki/File:Vision_wlbpg_mime.png" title="File:Vision wlbpg mime.png">the project resources</a> as "logo", in the preferred size <b>110x55</b> pixels (2x1);</li> <li> icon of the project window-page in it runtime — just upload your <a class="external" href="http://oscada.org/wiki/File:Vision_wlbpg.png" title="File:Vision wlbpg.png">project icon</a>, in the preferred size <b>128x128</b> pixels or clean up that for use the common project icon image (see below) which can be translated — dependently from current interface language;</li> <li> the project <a class="external" href="http://oscada.org/wiki/File:QTStarter_splash.png" title="File:QTStarter splash.png">starting splash image</a> — prepare a representative image in the preferred size <b>600x300</b> and place it to <a href="Program_manual.html#Config" title="Special:MyLanguage/Documents/Program manual">the project's folder of icons</a> with the name "<b>{ProjectID}_splash.[png|gif|jpg|jpeg]</b>" for both start and exit splash and "<b>{ProjectID}_splash_exit.[png|gif|jpg|jpeg]</b>" for the exit splash;</li> <li> the project common icon image for <a class="external" href="http://oscada.org/wiki/File:QTCfg_listelem.png" title="File:QTCfg listelem.png">the navigation tree of the OpenSCADA configurators</a> — prepare a representative image in the preferred size <b>128x128</b> and place it to <a href="Program_manual.html#Config" title="Special:MyLanguage/Documents/Program manual">the project's folder of icons</a> with the name "<b>{ProjectName}.[png|gif|jpg|jpeg]</b>", where <i>ProjectName</i> can be whether the language specific one or on the Basic Language for whole cases or even both if your project is <a href="../en/Create_multi_language_project.html" title="Special:MyLanguage/Documents/How to/Create multi language project">the multilanguage one</a>.</li></ul> <p><b>Q:</b> Оперативный Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ Ð¾Ð¿ÐµÑ€Ð°Ñ‚Ð¾Ñ€Ð° запуÑкаетÑÑ Ð½Ð° веÑÑŒ Ñкран и Ñ Ð½Ðµ могу его закрыть Ð´Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ð´Ð¾Ñтупа к ÑиÑтемному окружению рабочего Ñтола!<br /> <b>Re:</b> Конечно, OpenSCADA защищает ÑиÑтему ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»Ñ Ð¾Ñ‚ Ð·Ð°ÐºÑ€Ñ‹Ñ‚Ð¸Ñ Ð¸ непривилегированного доÑтупа к ÑиÑтемному окружению рабочего Ñтола. Т.е. Ð´Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ð´Ð¾Ñтупа к ÑиÑтемному окружению рабочего Ñтола Ð’Ñ‹ должны быть привилегированным пользователем, изменить Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñа на Ñвою учётную запиÑÑŒ и в поÑвившемÑÑ Ð³Ð»Ð¾Ð±Ð°Ð»ÑŒÐ½Ð¾Ð¼ меню оÑущеÑтвить нужное: выключить полно-Ñкранный режим, закрыть или выйти из программы. ЕÑли глобальное меню не поÑвлÑетÑÑ Ñ‚Ð¾ Ð’Ñ‹ имеете проблемное окружение рабочего проÑтранÑтва, вроде Unity, которое "отрывает" меню окна; ÑоответÑтвенно, предварительно отключите Ñту функцию окружениÑ! </p><p><b>Q:</b> Я могу легко подключать аналоговые Ñигналы Ð´Ð»Ñ Ð¿Ð¾ÑÑ‚Ñ€Ð¾ÐµÐ½Ð¸Ñ Ñ‚Ñ€ÐµÐ½Ð´Ð¾Ð² примитивом <a href="Modules/VCAEngine.html#Diagram" title="Special:MyLanguage/Modules/VCAEngine">Диаграмма</a>, но иÑпользование тут диÑкретных-логичеÑких Ñигналов не ÑвлÑетÑÑ Ñ‚Ð°ÐºÐ¸Ð¼ очевидным...<br /> <b>Re:</b> Да, примитив <a href="Modules/VCAEngine.html#Diagram" title="Special:MyLanguage/Modules/VCAEngine">Диаграмма</a> разработан в оÑновном Ð´Ð»Ñ Ð°Ð½Ð°Ð»Ð¾Ð³Ð¾Ð²Ñ‹Ñ… Ñигналов, но вы можете также иÑпользовать тут диÑкретные-логичеÑкие Ñигналы как аналоговые Ñ Ð´Ð²ÑƒÐ¼Ñ ÑоÑтоÑниÑми [0,1], Ñ‚.е. их Ð½Ð°Ñ‚ÑƒÑ€Ð°Ð»ÑŒÐ½Ð°Ñ ÑˆÐºÐ°Ð»Ð° Ñто [0...1] и еÑли вы подключите один Ñигнал в автоматичеÑкой-натуральной шкале, то получите его на веÑÑŒ Ñкран, Ñ Ð·Ð°Ð¿Ð¾Ð»Ð½ÐµÐ½Ð½Ñ‹Ð¼Ð¸ полоÑами Ð´Ð»Ñ ÑоÑтоÑÐ½Ð¸Ñ ÐŸÐ ÐВДР(TRUE). Ðо Ñто не очень удобно и вы не Ñможете объединить его Ñ Ð´Ñ€ÑƒÐ³Ð¸Ð¼Ð¸ аналоговыми или диÑкретными-логичными Ñигналами даже в полупрозрачном цвете, Ñ‚.е. вы должны вручную указать шкалу Ð´Ð»Ñ Ð¿Ð¾Ð·Ð¸Ñ†Ð¸Ð¾Ð½Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¿Ð¾Ð»Ð¾ÑÑ‹ диÑкретного-логичеÑкого Ñигнала в необходимой чаÑти Ñкрана. Ðекоторые примеры шкал: </p> <ul><li> <b>[0...5]</b> — вы делите Ñкран по вертикали на пÑÑ‚ÑŒ Ð¿Ð¾Ð»Ð¾Ñ Ð¸ отображаете Ñигнал внизу;</li> <li> <b>[-4...1]</b> — вы делите Ñкран по вертикали на пÑÑ‚ÑŒ Ð¿Ð¾Ð»Ð¾Ñ Ð¸ отображаете Ñигнал вверху;</li> <li> <b>[-2...3]</b> — вы делите Ñкран по вертикали на пÑÑ‚ÑŒ Ð¿Ð¾Ð»Ð¾Ñ Ð¸ отображаете Ñигнал в центре;</li> <li> <b>[0...10]</b> — вы делите Ñкран по вертикали на деÑÑÑ‚ÑŒ Ð¿Ð¾Ð»Ð¾Ñ Ð¸ отображаете Ñигнал внизу.</li></ul> <p><b>Q:</b> I have a very busy system with many OpenSCADA processes working through the Web interface and I want to decrease the server loading and speed up all those interfaces.<br /> <b>Re:</b> Yes, by default OpenSCADA interface designed for work in some fast enough carrying-live period (100 ms) which suitable mostly for active local Qt-interfaces of <a href="Modules/Vision.html" title="Special:MyLanguage/Modules/Vision">the module UI.Vision</a> with high reactivity and on fast enough networks at working with the visualisation server. But currently you can tune your interface to achieve the loading decrease in times: </p> <ul><li> the first and an obviously step that is to increase the carrying-life period in <a class="external" href="http://oscada.org/wiki/File:Vision_wlbpg.png" title="File:Vision wlbpg.png">the VCA Project configuration</a>, where you can set the "Period of the calculation" in a value up to 500 ms for active local Qt-interfaces of <a href="Modules/Vision.html" title="Special:MyLanguage/Modules/Vision">the module UI.Vision</a> and up to 1000 ms for not fast Web-interfaces of <a href="Modules/WebVision.html" title="Special:MyLanguage/Modules/WebVision">the module UI.WebVision</a>;</li> <li> the second step that is to set the dynamic data updating period depending on what you mean as enough often or disable the periodic updating in whole by setting the period in -2; and do that for <a href="Libs_Main_graphical_elements.html#RootPgSo" title="Special:MyLanguage/Libs/Main graphical elements">the main-root page</a> in <a class="external" href="http://oscada.org/wiki/File:Vision_wdg.png" title="File:Vision wdg.png">the Widget configuration</a> of your project tree; the same you can do for all panels placed in the group "Control panels (control)" of the project logical structure from the same main-root page, setting the needing period for the group itself;</li> <li> the third step that is deepening to your dynamic widgets-cadres adaption for work on big periodicity without loss the reactivity like to the already adapted ones from the standard library as <a href="Libs_Main_graphical_elements.html#RootPgSo" title="Special:MyLanguage/Libs/Main graphical elements">the main-root page</a> and <a href="Libs_Main_graphical_elements.html#anShow" title="Special:MyLanguage/Libs/Main graphical elements">Analog show</a>; and the adaption mostly means: <ul><li> sending user events at need of rapid updation in the next life cycle after the events processing;</li> <li> controlling the widget execution period depending on the activity situation like to blinking the selection cursor and the alarm colors.</li></ul></li></ul> <h2><span class="mw-headline" id=".D0.9F.D1.80.D0.BE.D0.B1.D0.BB.D0.B5.D0.BC.D1.8B_.28.D0.B0.D0.BA.D1.82.D1.83.D0.B0.D0.BB.D1.8C.D0.BD.D0.BE.2C_.D0.BE.D0.BA.D1.80.D1.83.D0.B6.D0.B5.D0.BD.D0.B8.D0.B5.2C_.D0.B8.D1.81.D0.BF.D1.80.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.BE.29"><span class="mw-headline-number">3</span> <span id="Problems" title="#Problems">Проблемы</span> (<a class="external text" href="http://oscada.org/ru/forum/sbornyi-forum/?tx_mmforum_pi1%5Baction%5D=list_prefix&tx_mmforum_pi1%5Blist_prefix%5D%5Bprfx%5D=BugConfirmed" rel="nofollow noreferrer noopener" target="_blank">актуально</a>, <a class="external text" href="http://oscada.org/ru/forum/sbornyi-forum/?tx_mmforum_pi1%5Baction%5D=list_prefix&tx_mmforum_pi1%5Blist_prefix%5D%5Bprfx%5D=BugEnvironment" rel="nofollow noreferrer noopener" target="_blank">окружение</a>, <a class="external text" href="http://oscada.org/ru/forum/sbornyi-forum/?tx_mmforum_pi1%5Baction%5D=list_prefix&tx_mmforum_pi1%5Blist_prefix%5D%5Bprfx%5D=BugFixed" rel="nofollow noreferrer noopener" target="_blank">иÑправлено</a>)</span></h2> <p><b>Q:</b> Почему Ñ Ð¿Ð¾Ñ‚ÐµÑ€Ñл дробную чаÑÑ‚ÑŒ у вÑех загруженных значениÑÑ… вещеÑтвенного типа?<br /> <b>Re:</b> Ð’Ñ‹ иÑпользуете локаль, отличную от "C" или общего ÐнглийÑкого, и уÑтанавливаете её прÑмо переменной Ð¾ÐºÑ€ÑƒÐ¶ÐµÐ½Ð¸Ñ "LC_NUMERIC" или её общим вариантом "LC_ALL", что приводит к иÑпользованию в функциÑÑ… вроде atof() и sprintf() Ñимвола Ñ€Ð°Ð·Ð´ÐµÐ»Ð¸Ñ‚ÐµÐ»Ñ Ð´Ñ€Ð¾Ð±Ð½Ð¾Ð¹ чаÑти отличного от "." (точка), чаÑто Ñто "," (запÑтаÑ). </p> <dl><dd> <b>!></b> Т.е., никогда не уÑтанавливайте переменных Ð¾ÐºÑ€ÑƒÐ¶ÐµÐ½Ð¸Ñ "LC_NUMERIC" и "LC_ALL" прÑмо поÑкольку они переопределÑÑŽÑ‚ корректную уÑтановке "LC_NUMERIC" в "C", в Ñередине! Ð”Ð»Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñзыка программы иÑпользуйте только переменные "LANG" и "LANGUAGE", которых вÑегда доÑтаточно.</dd> <dd> <b>+></b> Ðа данный момент проблема полноÑтью иÑключена, путём проверки и очиÑтки переменной Ð¾ÐºÑ€ÑƒÐ¶ÐµÐ½Ð¸Ñ "LC_ALL"!</dd></dl> <p><b>Q:</b> "Ðет доÑтупа Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¿Ð¾Ð»Ð¸Ñ‚Ð¸ÐºÐ¸ реального времени Ð´Ð»Ñ '****'. Создан поток по умолчанию!"<br /> <b>Re:</b> Такое Ñообщение OpenSCADA формирует при попытке уÑтановить Ð´Ð»Ñ Ð¿Ð¾Ñ‚Ð¾ÐºÐ°-задачи политику реального времени, по приоритету больше 0, в Ñлучае запуÑка от обычного пользователÑ. </p> <dl><dd> <b>+></b> Потенциально такие права можно предоÑтавить путём Ñ€ÐµÐ´Ð°ÐºÑ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ñ„Ð°Ð¹Ð»Ð° "/etc/security/limits.conf" таким образом:</dd></dl> <pre style="white-space: pre;"> user hard nice -20 user soft nice -15 user hard rtprio 99 user soft rtprio 90 </pre> <p><b>Q:</b> Я наблюдаю отÑутÑтвие вÑех текÑтовых меток на графиках (примитив "Диаграмма") интерфейÑов Ð¼Ð¾Ð´ÑƒÐ»Ñ <a href="Modules/WebVision.html" title="Special:MyLanguage/Modules/WebVision">UI.WebVision</a>. Почему так?<br /> <b>Re:</b> Такой результат возможен на интерфейÑах, поÑтроенных на библиотеке GD, и еÑли Ñама Ñта библиотека Ñобрана без иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð±Ð¸Ð±Ð»Ð¸Ð¾Ñ‚ÐµÐºÐ¸ FontConfig. Ðа данное Ð²Ñ€ÐµÐ¼Ñ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ модуль <a href="Modules/WebVision.html" title="Special:MyLanguage/Modules/WebVision">UI.WebVision</a> иÑпользует Ñту библиотеку Ð´Ð»Ñ Ð¸Ñключительного поÑÑ‚Ñ€Ð¾ÐµÐ½Ð¸Ñ Ð¿Ñ€Ð¸Ð¼Ð¸Ñ‚Ð¸Ð²Ð¾Ð² "ÐÐ»ÐµÐ¼ÐµÐ½Ñ‚Ð°Ñ€Ð½Ð°Ñ Ð¤Ð¸Ð³ÑƒÑ€Ð°" и "Диаграмма". </p> <dl><dd> <b>+></b> Т.е. Ð´Ð»Ñ Ð¸ÑÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ñтой проблемы Ð’Ñ‹ должны уÑтановить корректный пакет-Ñборку библиотеки или Ñобрать библиотеку ÑамоÑтоÑтельно Ñ FontConfig. Ðа данный момент извеÑтен один Ñлучай такого Ñорта проблемы Ñ Ð¿Ð°ÐºÐµÑ‚Ð¾Ð¼ "libgd2-noxpm" Ñтарых верÑий диÑтрибутива Linux Debian, где Ð’Ñ‹ должны уÑтановить корректный пакет "libgd2-xpm".</dd></dl> <p><b>Q:</b> Я наблюдаю отÑутÑтвие SVG-изображений в интерфейÑах Qt. Почему так?<br /> <b>Re:</b> Как правило Ñто указывает на отÑутÑтвие в ÑиÑтеме Qt-Ð¼Ð¾Ð´ÑƒÐ»Ñ Ð´Ð»Ñ SVG-графики, например, пакет "libqt5svg5" в Linux диÑтрибутивах на оÑнове Debian. </p> <dl><dd> <b>+></b> УÑтановите пакет или непоÑредÑтвенно Qt-плагин поддержки SVG-графики.</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/Documents/FAQ/ru">Documents/FAQ/ru</a> - <a href="http://oscada.org/en/main/about-the-project/licenses/">GFDL</a></td><td style="text-align: center;">April 2025</td><td style="text-align: right;" width="40%">OpenSCADA 1+r3018</td></tr></table></body> </html>