Модуль | Ім'я | Версія | Ліцензія | Джерело | Мови | Платформи | Тип | Автор | Опис |
---|---|---|---|---|---|---|---|---|---|
DiamondBoards | Diamond плати збору даних | 2.1 | GPL2 | daq_DiamondBoards.so | en,uk,ru,de | x86 | DAQ | Роман Савоченко | Надає доступ до "Diamond Systems" DAQ плат. Включає основну підтримку базових плат. |
Модуль надає до OpenSCADA підтримку джерел даних, основаних на платах збору даних фірми Diamond Systems (http://diamondsystems.com). Модуль побудовано на основі універсального драйверу виробника плат. Універсальний драйвер доступний практично для всіх відомих програмних платформ, у вигляді бібліотеки. Універсальний драйвер було отримано за адресою http://www.diamondsystems.com/support/software та включено до дистрибутиву OpenSCADA, тому для збірки цього модуля не потрібно зовнішніх бібліотек. Потрібно тільки збірку модуля ядра Linux "dscudkp.ko" для роботи за перериванням та з FIFO.
Плати збору даних фірми Diamond Systems представляють з себе модулі розширення формфактору PC/104. Плати можуть містити: аналогові IO(входи/виходи), дискретні IO та лічильники. Комплектація плат може значно варіюватися. Можуть міститися тільки IO одного типу або ж всього потроху. Крім того, функцією збору даних можуть наділятися і системні плати цієї фірми. Наприклад, системна плата "Athena" містить: 16 AI, 4 AO, 24 DIO.
Модуль надає підтримку аналогових та дискретних IO у режимах синхронного та асинхронного доступу. Збір аналогових входів (AI) підтримується також у режимі за перериванням (за допомогою FIFO). Метод збору за перериванням дозволяє досягнути максимальної частоти опитування, апаратурою яка це підтримує. У випадку із процесорною платою "Athena" ця частота досягає 100 кГц. У процесі збору за перериванням дані отримуються пакетами основного періоду опитування та розташовуються у буфер архівів значень.
У версії 2.0 цей модуль, згідно із завданням, було фактично повністю переписана за для забезпечення підтримки всього спектру плат збору даних фірми Diamond Systems. Отриманий модуль став першим, який підтримує роботу в усіх трьох режимах збору даних (синхронний, асинхронний, пакетний), додатково до того, що він є першим модулем збору даних системи OpenSCADA.
На рівні об'єкта контролеру створюється загальне для всіх плат завдання обслуговування плат-параметрів. Приклад вкладки конфігурації об'єкту контролера наведено на рис.1.
За допомогою цієї вкладки можна встановити:
Модуль надає тільки один "Стандартний (std)" тип параметрів із назвою таблиці параметрів "DiamPrm_{CntrId}".
Об'єкт параметру-плати безпосередньо містить конфігурацію окремо взятої плати та надає всі доступні на платі дані у вигляді атрибутів. Приклад вкладки "Параметр", конфігурації параметру-плати цілком, представлено на рис.2, а вкладку "Конфігурація", властивостей сигналів, наведено на рис.3.
За допомогою цієї вкладки можна встановити:
За допомогою цієї вкладки можна встановити:
На рисунку 4 представлено приклад вкладки "Атрибути" для плати "DMM-32x-AT".
В таблиці 1 наведено перелік плат фірми "Diamond Systems", статус їх підтримки та тестування.
Таблиця 1 Властивості плат фірми "Diamond Systems"
Плата | AI (16 біт) | AO (12 біт) | DIO (x8) | DI (x8) | DO (x8) | Зауваження |
---|---|---|---|---|---|---|
DMM-16 | 16 | 4 | 0 | 1 | 1 | |
Ruby-MM | 0 | 8 | 3 | 0 | 0 | |
Opal-MM | 0 | 0 | 0 | 1 | 1 | |
DMM | 16 (12 bit) | 2 | 0 | 1 | 1 | |
Pearl-MM | 0 | 0 | 0 | 0 | 2 | |
Onyx-MM | 0 | 0 | 6 | 0 | 0 | |
Ruby-MM-416 | 0 | 4 (16 bit) | 2 | 0 | 0 | |
DMM-AT | 16 (12 bit, 100 kHz, 512 FIFO) | 2 | 0 | 1 | 1 | |
DMM-16-AT | 16 (100 kHz, 512 FIFO) | 4 | 0 | 1 | 1 | |
IR104 | 0 | 0 | 0 | 3 | 3 | |
Prometheus | 16 (100 kHz, 48 FIFO) | 4 | 3 | 0 | 0 | |
Hercules EBX | 32 (250 kHz, 2048 FIFO) | 4 | 5 | 0 | 0 | |
Onyx-MM-DIO | 0 | 0 | 6 | 0 | 0 | |
Mercator | 0 | 0 | 3 | 0 | 0 | |
Athena | 16 (100 kHz, 48 FIFO) | 4 | 3 | 0 | 0 | Verified |
DMM-32x(-AT) | 32 (250 kHz, 1024 FIFO) | 4 | 3 | 0 | 0 | |
GPIO-MM-11[12](DIO) | 0 | 0 | 6 | 0 | 0 | |
GPIO-MM-21 | 0 | 0 | 12 | 0 | 0 | |
Poseidon | 32 (250 kHz, 1024 FIFO) | 4 | 3 | 0 | 0 | |
Athena-II | 16 (100 kHz, 2048 FIFO) | 4 | 3 | 0 | 0 | |
DMM-32dx(-AT) | 32 (250 kHz, 1024 FIFO) | 4 | 3 | 0 | 0 | Verified |
Helios | 16 (100 kHz, 2048 FIFO) | 4 | 5 | 0 | 0 | |
Neptune | 32 (250 kHz, 1024 FIFO) | 4 | 4 | 0 | 0 |
Особливістю роботи збору AI за перериванням є синхронізація переключення каналів; вимірів за окремим, внутрішнім, лічильником та використання FIFO як проміжного буферу вимірювання. Звісно, що цей лічильник на деяке значення буде відрізнятися від лічильника реального часу, а FIFO потрібно встигати вичитувати. Природно що потрібне підлаштування-калібровка розходження надходження даних із годинником реального часу. В цілому реалізуються наступні механізми компенсації розходження лічильників та інших явищ:
Modules/DiamondBoards/uk - GFDL | March 2024 | OpenSCADA 0.9.7 |