<?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>Модули/Платы Diamond Systems - 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">Модули/Платы Diamond Systems</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-Modules%2FDiamondBoards&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/Modules/DiamondBoards" title="Modules/DiamondBoards">Modules/DiamondBoards</a> and the translation is 90% 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/Modules/DiamondBoards.html" title="Modules/DiamondBoards (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/Modules/DiamondBoards.html" title="Модулі/Плати Diamond Systems (100% translated)">УкраїнÑька</a></div></div> <div class="noprint" style="float:right; border:1px solid gray; width:300px; background-color:ivory; padding:2px;"> <table cellspacing="0"> <tr> <td> <a class="image" href="http://oscada.org/wiki/File:Constr.png"><img alt="Constr.png" height="32" src="../../en/files/Constr.png" width="32" /></a> </td> <td style="padding-left:5px;"> The translation checking and actualizing </td></tr></table> </div> <table class="wikitable"> <tr> <th> Модуль </th> <th> Ð˜Ð¼Ñ </th> <th> ВерÑÐ¸Ñ </th> <th> Ð›Ð¸Ñ†ÐµÐ½Ð·Ð¸Ñ </th> <th> ИÑточник </th> <th> Языки </th> <th> Платформы </th> <th> Тип </th> <th> Ðвтор </th> <th> ОпиÑание </th></tr> <tr> <td> <a href="../Modules/DiamondBoards.html" title="Special:MyLanguage/Modules/DiamondBoards">DiamondBoards</a> </td> <td> Diamond платы Ñбора данных </td> <td> 2.1 </td> <td> GPL2 </td> <td> daq_DiamondBoards.so </td> <td> en,uk,ru,de </td> <td> x86 </td> <td> DAQ </td> <td> Роман Савоченко </td> <td> ПредоÑтавлÑет доÑтуп к "<a class="external text" href="http://diamondsystems.com" rel="nofollow noreferrer noopener" target="_blank">Diamond Systems</a>" DAQ платам. Включает оÑновную поддержку базовых плат. </td></tr></table> <div class="toc" id="toc"><div id="toctitle"><h2>Contents</h2></div> <ul> <li class="toclevel-1 tocsection-1"><a href="#.D0.9E.D0.B1.D1.8A.D0.B5.D0.BA.D1.82_.D0.BA.D0.BE.D0.BD.D1.82.D1.80.D0.BE.D0.BB.D0.BB.D0.B5.D1.80.D0.B0_.D0.B4.D0.B0.D0.BD.D0.BD.D1.8B.D1.85"><span class="tocnumber">1</span> <span class="toctext">Объект контроллера данных</span></a></li> <li class="toclevel-1 tocsection-2"><a href="#Parameter-board.27s_object"><span class="tocnumber">2</span> <span class="toctext">Parameter-board's object</span></a></li> <li class="toclevel-1 tocsection-3"><a href="#.D0.97.D0.B0.D0.BC.D0.B5.D1.87.D0.B0.D0.BD.D0.B8.D1.8F"><span class="tocnumber">3</span> <span class="toctext">ЗамечаниÑ</span></a></li> <li class="toclevel-1 tocsection-4"><a href="#.D0.A1.D1.81.D1.8B.D0.BB.D0.BA.D0.B8"><span class="tocnumber">4</span> <span class="toctext">СÑылки</span></a></li> </ul> </div> <p>Модуль предоÑтавлÑет в OpenSCADA поддержку иÑточников данных, оÑнованных на платах Ñбора данных фирмы Diamond Systems (<a class="external free" href="http://diamondsystems.com" rel="nofollow noreferrer noopener" target="_blank">http://diamondsystems.com</a>). Модуль поÑтроен на оÑнове универÑального драйвера Ð¿Ñ€Ð¾Ð¸Ð·Ð²Ð¾Ð´Ð¸Ñ‚ÐµÐ»Ñ Ð¿Ð»Ð°Ñ‚. УниверÑальный драйвер доÑтупен практичеÑки Ð´Ð»Ñ Ð²Ñех извеÑтных программных платформ, в виде библиотеки. УниверÑальный драйвер был получен по адреÑу <a class="external free" href="http://www.diamondsystems.com/support/software" rel="nofollow noreferrer noopener" target="_blank">http://www.diamondsystems.com/support/software</a> и включен в диÑтрибутив OpenSCADA, поÑтому Ð´Ð»Ñ Ñборки данного Ð¼Ð¾Ð´ÑƒÐ»Ñ Ð½Ðµ требуютÑÑ Ð²Ð½ÐµÑˆÐ½Ð¸Ðµ библиотеки. ТребуетÑÑ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ Ñборка Ð¼Ð¾Ð´ÑƒÐ»Ñ Ñдра Linux "dscudkp.ko" Ð´Ð»Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹ по прерыванию и Ñ FIFO. </p><p>Платы Ñбора данных фирмы Diamond Systems предÑтавлÑÑŽÑ‚ из ÑÐµÐ±Ñ Ð¼Ð¾Ð´ÑƒÐ»Ð¸ раÑÑˆÐ¸Ñ€ÐµÐ½Ð¸Ñ Ñ„Ð¾Ñ€Ð¼Ñ„Ð°ÐºÑ‚Ð¾Ñ€Ð° PC/104. Платы могут Ñодержать: аналоговые IO(входы/выходы), диÑкретные IO и Ñчётчики. ÐšÐ¾Ð¼Ð¿Ð»ÐµÐºÑ‚Ð°Ñ†Ð¸Ñ Ð¿Ð»Ð°Ñ‚ может значительно варьироватьÑÑ. Могут ÑодержатьÑÑ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ IO одного типа или же вÑего понемногу. Кроме того, функцией Ñбора данных могут наделÑÑ‚ÑŒÑÑ Ð¸ ÑиÑтемные платы Ñтой фирмы. Ðапример, ÑиÑÑ‚ÐµÐ¼Ð½Ð°Ñ Ð¿Ð»Ð°Ñ‚Ð° "<a class="external text" href="http://www.diamondsystems.com/products/athena" rel="nofollow noreferrer noopener" target="_blank">Athena</a>" Ñодержит: 16 AI, 4 AO, 24 DIO. </p><p>Модуль предоÑтавлÑет поддержку аналоговых и диÑкретных IO в режимах Ñинхронного и аÑинхронного доÑтупа. Сбор аналоговых входов (AI) поддерживаетÑÑ Ñ‚Ð°ÐºÐ¶Ðµ в режиме по прерыванию (Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ FIFO). Метод Ñбора по прерыванию позволÑет доÑтичь макÑимальной чаÑтоты опроÑа, поддерживаемой аппаратурой. Ð’ Ñлучае Ñ Ð¿Ñ€Ð¾Ñ†ÐµÑÑорной платой "Athena" Ñта чаÑтота доÑтигает 100 кГц. Ð’ процеÑÑе Ñбора по прерыванию данные получаютÑÑ Ð¿Ð°ÐºÐµÑ‚Ð°Ð¼Ð¸ оÑновного периода опроÑа и помещаютÑÑ Ð² буфера архивов значений. </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> Ð’ верÑии 2.0 Ñтот модуль, ÑоглаÑно <a class="external text" href="http://oscada.org/en/development/tasks/posts/subsystem_daq/module_daqdiamondboards_update" rel="nofollow noreferrer noopener" target="_blank">заданию</a>, был фактичеÑки полноÑтью перепиÑан Ð´Ð»Ñ Ð¾Ð±ÐµÑÐ¿ÐµÑ‡ÐµÐ½Ð¸Ñ Ð¿Ð¾Ð´Ð´ÐµÑ€Ð¶ÐºÐ¸ вÑего Ñпектра плат Ñбора данных фирмы <a class="external text" href="http://diamondsystems.com" rel="nofollow noreferrer noopener" target="_blank">Diamond Systems</a>. Полученный модуль Ñтал первым, поддерживающим работу во вÑех трёх режимах Ñбора данных (Ñинхронный, аÑинхронный, пакетный), в дополнении к тому, что он ÑвлÑетÑÑ Ð¿ÐµÑ€Ð²Ñ‹Ð¼ модулем Ñбора данных ÑиÑтемы OpenSCADA. </p> <h2><span class="mw-headline" id=".D0.9E.D0.B1.D1.8A.D0.B5.D0.BA.D1.82_.D0.BA.D0.BE.D0.BD.D1.82.D1.80.D0.BE.D0.BB.D0.BB.D0.B5.D1.80.D0.B0_.D0.B4.D0.B0.D0.BD.D0.BD.D1.8B.D1.85"><span class="mw-headline-number">1</span> Объект контроллера данных</span></h2> <p>Ðа уровне объекта контроллера ÑоздаётÑÑ Ð¾Ð±Ñ‰Ð°Ñ Ð´Ð»Ñ Ð²Ñех плат задача обÑÐ»ÑƒÐ¶Ð¸Ð²Ð°Ð½Ð¸Ñ Ð¿Ð»Ð°Ñ‚-параметров. Пример вкладки конфигурации объекта контроллера приведён на риÑ.1. </p> <div class="center"><div class="thumb tnone"><div class="thumbinner" style="width:769px;"><a class="image" href="http://oscada.org/wiki/File:DiamondBoards_cntr.png"><img class="thumbimage" height="629" src="../../en/files/DiamondBoards_cntr.png" width="767" /></a> <div class="thumbcaption">РиÑ.1. Вкладка конфигурации объекта контроллера.</div></div></div></div> <p>In assistance with the tab you can set: </p> <ul><li> State of the controller object, as follows: status, "Enabled", "Running" and the storage name containing the configuration.</li> <li> Identifier, name and description of the controller.</li> <li> The state "Enabled" and "Running", in which the controller object must be translated at start up.</li> <li> Policy of scheduling and priority of the data acquisition task.</li></ul> <h2><span class="mw-headline" id="Parameter-board.27s_object"><span class="mw-headline-number">2</span> Parameter-board's object</span></h2> <p>The module provides only one the "Standard (std)" type of the parameters with the parameters table name "DiamPrm_{CntrId}". </p><p>Объект параметра-платы непоÑредÑтвенно Ñодержит конфигурацию отдельно взÑтой платы и предоÑтавлÑет вÑе доÑтупные на плате данные в виде атрибутов. Пример вкладки "Параметр", конфигурации параметра-платы в целом, предÑтавлена на риÑ.2, а вкладка "КонфигурациÑ", ÑвойÑтв Ñигналов, предÑтавлена на риÑ.3. </p> <div class="center"><div class="thumb tnone"><div class="thumbinner" style="width:720px;"><a class="image" href="http://oscada.org/wiki/File:DiamondBoards_prm_ru.png"><img class="thumbimage" height="574" src="../files/DiamondBoards_prm_ru.png" width="718" /></a> <div class="thumbcaption">РиÑ.2. Вкладка "Параметр", конфигурации параметра-платы в целом.</div></div></div></div> <p>С помощью Ñтой вкладки можно уÑтановить: </p> <ul><li> СоÑтоÑние параметра, а именно: тип и ÑоÑтоÑние "Включен".</li> <li> Идентификатор, Ð¸Ð¼Ñ Ð¸ опиÑание параметра.</li> <li> СоÑтоÑние, в которое переводить параметр при загрузке: "Включен".</li> <li> Тип, Ð°Ð´Ñ€ÐµÑ Ð¸ вектор Ð¿Ñ€ÐµÑ€Ñ‹Ð²Ð°Ð½Ð¸Ñ Ð¿Ð»Ð°Ñ‚Ñ‹. Вектор Ð¿Ñ€ÐµÑ€Ñ‹Ð²Ð°Ð½Ð¸Ñ Ð´Ð¾Ñтупен только Ð´Ð»Ñ Ð¿Ð»Ð°Ñ‚ Ñ Ð°Ð½Ð°Ð»Ð¾Ð³Ð¾Ð²Ñ‹Ð¼Ð¸ входами и FIFO.</li> <li> ЧаÑтота измерений на один канал, при опроÑе аналоговых входов по прерыванию. ДоÑтупен только Ð´Ð»Ñ Ð¿Ð»Ð°Ñ‚ Ñ Ð°Ð½Ð°Ð»Ð¾Ð³Ð¾Ð²Ñ‹Ð¼Ð¸ входами и FIFO. Ðенулевые и корректные Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ñтого и предыдущего Ð¿Ð¾Ð»Ñ Ð²ÐºÐ»ÑŽÑ‡Ð°ÑŽÑ‚ режим опроÑа AI по прерыванию.</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> Реальное значение Ñтого Ð¿Ð¾Ð»Ñ Ð¼Ð¾Ð¶ÐµÑ‚ быть Ñброшено к лимиту чаÑтоты Ñчётчика обÑÐ»ÑƒÐ¶Ð¸Ð²Ð°Ð½Ð¸Ñ AI по прерыванию, при переÑчёте на один канал.</dd></dl> <ul><li> Режим аÑинхронного чтениÑ, Ñ Ð¿ÐµÑ€Ð¸Ð¾Ð´Ð¾Ð¼ объекта контроллера. Работает и в режиме опроÑа AI по прерыванию Ð´Ð»Ñ Ð´Ð¸Ñкретных Ñигналов.</li> <li> Режим Ð¾Ñ‚Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð°Ð½Ð°Ð»Ð¾Ð³Ð¾Ð²Ñ‹Ñ… входов: "Код ÐЦП (целое)", "Процент от шкалы Ñигнала (вещеÑтвенное)" и "ÐапрÑжение (вещеÑтвенное)". Режим "ÐапрÑжение" может быть доÑтупен не Ð´Ð»Ñ Ð²Ñех плат!</li> <li> Ограничение на количеÑтво обрабатываемых аналоговых параметров. Полезно при иÑпользовании меньшего количеÑтва каналов, но чаще. ОÑобенно в режиме опроÑа по прерыванию и ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ñ€ÐµÐ¶Ð¸Ð¼Ð¾Ð¼ канала SE(single-ended) и "Differential".</li></ul> <div class="center"><div class="thumb tnone"><div class="thumbinner" style="width:718px;"><a class="image" href="http://oscada.org/wiki/File:DiamondBoards_prm_cfg_ru.png"><img class="thumbimage" height="508" src="../files/DiamondBoards_prm_cfg_ru.png" width="716" /></a> <div class="thumbcaption">РиÑ.3. Вкладка "КонфигурациÑ", ÑвойÑтв Ñигналов.</div></div></div></div> <p>С помощью Ñтой вкладки можно уÑтановить: </p> <ul><li> Интервал ÑÐºÐ°Ð½Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð°Ð½Ð°Ð»Ð¾Ð³Ð¾Ð²Ñ‹Ñ… входов, указывает Ð²Ñ€ÐµÐ¼Ñ Ð¼ÐµÐ¶Ð´Ñƒ выборками в режиме опроÑа AI по прерыванию.</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> ÐšÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ Ð´Ð¸Ð°Ð¿Ð°Ð·Ð¾Ð½Ð° AI. Ð’ режиме опроÑа AI по прерыванию иÑпользуетÑÑ Ð´Ð¸Ð°Ð¿Ð°Ð·Ð¾Ð½ нулевого входа, почему в Ñкобках указано "(вÑе входы)".</li> <li> ÐšÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ Ð½Ð°Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ð¾Ñти групп диÑкретных входов (каналов), Ð´Ð»Ñ DIO, и режим инверÑии отдельных диÑкретных входов.</li></ul> <p>Ðа риÑунке 4 предÑтавлен пример вкладки "Ðтрибуты" Ð´Ð»Ñ Ð¿Ð»Ð°Ñ‚Ñ‹ "DMM-32x-AT". </p> <div class="center"><div class="thumb tnone"><div class="thumbinner" style="width:744px;"><a class="image" href="http://oscada.org/wiki/File:DiamondBoards_prm_attr_ru.png"><img class="thumbimage" height="631" src="../files/DiamondBoards_prm_attr_ru.png" width="742" /></a> <div class="thumbcaption">РиÑ.4. Вкладка "Ðтрибуты" параметра-платы.</div></div></div></div> <p>Ð’ таблице 1 предÑтавлен перечень плат фирмы "Diamond Systems", ÑÑ‚Ð°Ñ‚ÑƒÑ Ð¸Ñ… поддержки и теÑтированиÑ. </p><p><b>Таблица 1</b> СвойÑтва плат фирмы "Diamond Systems" </p> <table class="wikitable"> <tr> <th> Плата </th> <th> AI (16 бит) </th> <th> AO (12 бит) </th> <th> DIO (x8) </th> <th> DI (x8) </th> <th> DO (x8) </th> <th> Ð—Ð°Ð¼ÐµÑ‡Ð°Ð½Ð¸Ñ </th></tr> <tr> <td> DMM-16 </td> <td> 16 </td> <td> 4 </td> <td> 0 </td> <td> 1 </td> <td> 1 </td> <td> </td></tr> <tr> <td> Ruby-MM </td> <td> 0 </td> <td> 8 </td> <td> 3 </td> <td> 0 </td> <td> 0 </td> <td> </td></tr> <tr> <td> Opal-MM </td> <td> 0 </td> <td> 0 </td> <td> 0 </td> <td> 1 </td> <td> 1 </td> <td> </td></tr> <tr> <td> DMM </td> <td> 16 (12 bit) </td> <td> 2 </td> <td> 0 </td> <td> 1 </td> <td> 1 </td> <td> </td></tr> <tr> <td> Pearl-MM </td> <td> 0 </td> <td> 0 </td> <td> 0 </td> <td> 0 </td> <td> 2 </td> <td> </td></tr> <tr> <td> Onyx-MM </td> <td> 0 </td> <td> 0 </td> <td> 6 </td> <td> 0 </td> <td> 0 </td> <td> </td></tr> <tr> <td> Ruby-MM-416 </td> <td> 0 </td> <td> 4 (16 bit) </td> <td> 2 </td> <td> 0 </td> <td> 0 </td> <td> </td></tr> <tr> <td> DMM-AT </td> <td> 16 (12 bit, 100 kHz, 512 FIFO) </td> <td> 2 </td> <td> 0 </td> <td> 1 </td> <td> 1 </td> <td> </td></tr> <tr> <td> DMM-16-AT </td> <td> 16 (100 kHz, 512 FIFO) </td> <td> 4 </td> <td> 0 </td> <td> 1 </td> <td> 1 </td> <td> </td></tr> <tr> <td> IR104 </td> <td> 0 </td> <td> 0 </td> <td> 0 </td> <td> 3 </td> <td> 3 </td> <td> </td></tr> <tr> <td> Prometheus </td> <td> 16 (100 kHz, 48 FIFO) </td> <td> 4 </td> <td> 3 </td> <td> 0 </td> <td> 0 </td> <td> </td></tr> <tr> <td> Hercules EBX </td> <td> 32 (250 kHz, 2048 FIFO) </td> <td> 4 </td> <td> 5 </td> <td> 0 </td> <td> 0 </td> <td> </td></tr> <tr> <td> Onyx-MM-DIO </td> <td> 0 </td> <td> 0 </td> <td> 6 </td> <td> 0 </td> <td> 0 </td> <td> </td></tr> <tr> <td> Mercator </td> <td> 0 </td> <td> 0 </td> <td> 3 </td> <td> 0 </td> <td> 0 </td> <td> </td></tr> <tr> <td> Athena </td> <td> 16 (100 kHz, 48 FIFO) </td> <td> 4 </td> <td> 3 </td> <td> 0 </td> <td> 0 </td> <td> <span style="color: green">Verified</span> </td></tr> <tr> <td> DMM-32x(-AT) </td> <td> 32 (250 kHz, 1024 FIFO) </td> <td> 4 </td> <td> 3 </td> <td> 0 </td> <td> 0 </td> <td> </td></tr> <tr> <td> GPIO-MM-11[12](DIO) </td> <td> 0 </td> <td> 0 </td> <td> 6 </td> <td> 0 </td> <td> 0 </td> <td> </td></tr> <tr> <td> GPIO-MM-21 </td> <td> 0 </td> <td> 0 </td> <td> 12 </td> <td> 0 </td> <td> 0 </td> <td> </td></tr> <tr> <td> Poseidon </td> <td> 32 (250 kHz, 1024 FIFO) </td> <td> 4 </td> <td> 3 </td> <td> 0 </td> <td> 0 </td> <td> </td></tr> <tr> <td> Athena-II </td> <td> 16 (100 kHz, 2048 FIFO) </td> <td> 4 </td> <td> 3 </td> <td> 0 </td> <td> 0 </td> <td> </td></tr> <tr> <td> DMM-32dx(-AT) </td> <td> 32 (250 kHz, 1024 FIFO) </td> <td> 4 </td> <td> 3 </td> <td> 0 </td> <td> 0 </td> <td> <span style="color: green">Verified</span> </td></tr> <tr> <td> Helios </td> <td> 16 (100 kHz, 2048 FIFO) </td> <td> 4 </td> <td> 5 </td> <td> 0 </td> <td> 0 </td> <td> </td></tr> <tr> <td> Neptune </td> <td> 32 (250 kHz, 1024 FIFO) </td> <td> 4 </td> <td> 4 </td> <td> 0 </td> <td> 0 </td> <td> </td></tr></table> <p><br /> </p> <h2><span class="mw-headline" id=".D0.97.D0.B0.D0.BC.D0.B5.D1.87.D0.B0.D0.BD.D0.B8.D1.8F"><span class="mw-headline-number">3</span> ЗамечаниÑ</span></h2> <p>ОÑобенноÑтью работы Ñбора AI по прерыванию ÑвлÑетÑÑ ÑÐ¸Ð½Ñ…Ñ€Ð¾Ð½Ð¸Ð·Ð°Ñ†Ð¸Ñ Ð¿ÐµÑ€ÐµÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ ÐºÐ°Ð½Ð°Ð»Ð¾Ð²; измерений по отдельному, внутреннему, Ñчётчику и иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ FIFO как промежуточный буфер измерений. ЕÑтеÑтвенно, что Ñтот Ñчётчик на некоторое значение будет отличатьÑÑ Ð¾Ñ‚ Ñчётчика реального времени, а FIFO нужно уÑпевать вычитывать. СоответÑтвенно нужна подÑтройка-калибровка раÑÑ…Ð¾Ð¶Ð´ÐµÐ½Ð¸Ñ Ð¿Ð¾ÑÑ‚ÑƒÐ¿Ð»ÐµÐ½Ð¸Ñ Ð´Ð°Ð½Ð½Ñ‹Ñ… Ñ Ñ‡Ð°Ñами реального времени. Ð’ целом реализуютÑÑ Ñледующие механизмы компенÑации раÑÑ…Ð¾Ð¶Ð´ÐµÐ½Ð¸Ñ Ñчётчиков и других Ñвлений: </p> <ul><li> <b>Переполнение FIFO</b> — в ÑледÑтвии чего терÑетÑÑ Ð¾Ð´Ð¸Ð½ кадр данных размером в FIFO и проиÑходит Ñдвиг положений каналов в облаÑти данных, еÑли размер FIFO не выравнен к количеÑтву каналов, в дополнении к размеру блока измерений.</li> <li> <b>ÐŸÐ¾Ñ‚ÐµÑ€Ñ Ñ†Ð¸ÐºÐ»Ð¾Ð²</b> — вызов задачи обработки блоков данных может произойти через один или неÑколько циклов, в ÑледÑтвии низкого приоритета и других факторов. Результатом Ñтого ÑÐ²Ð»ÐµÐ½Ð¸Ñ ÑвлÑетÑÑ Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ðµ (заворачивание) данных блока измерений и нужно полноÑтью переуÑтановить Ð²Ñ€ÐµÐ¼Ñ Ð´Ð°Ð½Ð½Ñ‹Ñ… в реальное времÑ.</li> <li> <b>Различие в Ñчётчике Ð¸Ð·Ð¼ÐµÑ€ÐµÐ½Ð¸Ñ Ð¸ чаÑов реального времени</b> — компенÑируетÑÑ Ð¿ÑƒÑ‚Ñ‘Ð¼ подÑтройки реальной чаÑтоты измерений на размер Ð¾Ñ‚ÐºÐ»Ð¾Ð½ÐµÐ½Ð¸Ñ Ð²Ñ€ÐµÐ¼ÐµÐ½Ð¸ более цикла обработки. ЗдеÑÑŒ приÑутÑтвует погрешноÑÑ‚ÑŒ на Ð²Ñ€ÐµÐ¼Ñ Ð²Ñ‹Ð·Ð¾Ð²Ð° задачи обработки и Ð¿Ð¾Ð¿Ð°Ð´Ð°Ð½Ð¸Ñ Ð½Ð° границу ÑброÑа чаÑти буфера Ð¸Ð·Ð¼ÐµÑ€ÐµÐ½Ð¸Ñ (transfers threshold) на значение около размерноÑти ÑброÑа буфера измерений, половина от периода измерениÑ.</li></ul> <h2><span class="mw-headline" id=".D0.A1.D1.81.D1.8B.D0.BB.D0.BA.D0.B8"><span class="mw-headline-number">4</span> СÑылки</span></h2> <ul><li> <a class="external" href="http://oscada.org/wiki/File:DiamondBoards_dscud5.91linux.tar.gz" title="File:DiamondBoards dscud5.91linux.tar.gz">ИÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÐµÐ¼Ð°Ñ Ð²ÐµÑ€ÑÐ¸Ñ Linux драйвера от Diamond systems</a></li> <li> <a class="external" href="http://oscada.org/wiki/File:DiamondBoards_lastkernels.patch" title="File:DiamondBoards lastkernels.patch">Патч Ð´Ð»Ñ Ñборки драйвера Ð´Ð»Ñ Ñдра Linux 2.6.29, иÑпользуемого при Ñборе данных по прерыванию</a></li></ul> </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/Modules/DiamondBoards/ru">Modules/DiamondBoards/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>