OpenSCADA

Modules/DiamondBoards

English • ‎mRussian • ‎Українська
Constr.png The translation checking and actualizing
Module Name Version License Source Languages Platforms Type Author Description
DiamondBoards Diamond DAQ boards 2.1 GPL2 daq_DiamondBoards.so en,uk,ru,de x86 DAQ Roman Savochenko
Maxim Lysenko (2009) — the page translation
Provides an access to "Diamond Systems" DAQ boards. Includes main support for all generic boards.

Contents

The module provides for the system OpenSCADA support of dynamic data sources, based on cards for data acquisition from Diamond Systems company (http://diamondsystems.com). The module based on an universal driver of the manufacturer of the boards. Universal driver is available for almost all known software platforms in the form of a library. Universal driver has been received at http://www.diamondsystems.com/support/software and it was included in the distribution kit of OpenSCADA, therefore, for the building of the module external libraries are not required. You need only an assembling of the Linux kernel module "dscudkp.ko" for operating by interrupts and with FIFO.

The boards of data acquisition of Diamond Systems represent the modules of expansion of the PC/104 form-factor. Boards may include: analog IO (input/outputs), digital IO, and counters. Complete constitution of the cards can vary greatly. There can be contained only one type of IO or some theirs mix. In addition, the function of data acquisition can be given to system boards of this company. For example, the motherboard "Athena" contains: 16 AI, 4 AO, 24 DIO.

The module provides support for analog and digital IO into synchronous and asynchronous access modes. Analog inputs (AI) acquisition supports also into an interruption mode (by FIFO assistance). The acquisition method by interrupts allows to achieve maximum frequency of interrogation for a hardware supports that. In the case of "Athena" system board the frequency achieves 100 kHz. In the acquisition on interrupts process the data becomes by packages of the main acquisition period and places into an archives buffer.

At.png In version 2.0 the module, in accordance the task, was in fact rewrote for providing the support of all wide-range boards of data acquisition of firm Diamond Systems. The result module is first which supports operating into all three modes of the data acquisition (synchronous, asynchronous, by packets), addition to that the module is first data acquisition module of OpenSCADA system.

1 Data controller's object

On the controller's object level creates generic task for all board-parameters processing. Example of the tab of configuration of the controller's object shown in Figure 1.

Fig.1. Tab of configuration of a controller object.

In assistance with the tab you can set:

2 Parameter-board's object

The module provides only one the "Standard (std)" type of the parameters with the parameters table name "DiamPrm_{CntrId}".

Parameter-board's object same has a configuration of concrete board and provides available on the board data by attributes. Example of the tab "Parameter", configuration of the parameter-board at all, shown on Figure 2, and the tab "Configuration", signals properties, shown on Figure 3.

Fig.2. Configuration tab "Parameter" of a parameter-board at all.

In assistance with the tab you can set:

At.png Value of the field may be dropped to the limit of the counter's frequency of service AI by interrupts, on it's recounting to single channel.
Fig.3. Tab "Configuration" of properties of signals.

In assistance with the tab you can set:

At.png In case of the requested samplerate and the interval too big then the result frequency may be dropped to a value got from the scan interval.

On the Figure 4 shown an example of tab "Attributes" for board "DMM-32x-AT".

Fig.4. Tab "Attributes" of a parameter-board.

Into table 1 shown a list of boards of firm "Diamond Systems", their support status and testing.

Table 1 Properties of firm "Diamond Systems" boards

Board AI (16 bit) AO (12 bit) DIO (x8) DI (x8) DO (x8) Notes
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


3 Notes

Specific in an operation by the AI acquisition by interrupts is the channels switching sync; measuring by different, external, counter and using FIFO for intermediate measuring buffer. Sure, this measuring counter will different to some value from the real-time clock and the FIFO need to have time to it reading. Course it is needs to adjust-calibrate the data receipts with the real-time clock. At all here implemented next compensation mechanisms of the counters walk difference and other effects:

4 Links

Modules/DiamondBoards/en - GFDLMarch 2024OpenSCADA 0.9.7