What is data acquisition
Data acquisition is used extensively in modern day engineering and technologically based work areas and fields. MatDeck performs data acquisition, virtual instrumentation, AI, digital signal processing, GPU acceleration, programming, process control, signal filtering and conditioning, SCADA, Databases, generating custom GUIs with simultaneous generating documents all performed in harmony in the software with simplicity in mind providing an astounding user-friendly interface.
Some sensors that are often used in Data Acquisition applications include sensors for light, temperature, humidity, movement, speed, proximity, flow, gasses.. Each of these sensors are measured by data acquisition card or modules. Data acquisition hardware has analogue inputs with a resolution ranging from 8 to 32 bits and sampling rates ranging from a few Hz to tens of GHz.
To perform control based operations via DAQ, users need to run analogue output created by digital to analogue converter with resolution ranging from 8 to 32 bits and a rate ranging from a few Hz to tens of GHz or run digital outputs. Additionally, output can be categorised into two groups, current and voltage. Analogue and digital output can then run various drivers which will contribute to some process control. When users wish to watch and analyse a process, users need to monitor and record system parameters which is done by data acquisition. These parameters describe the system’s functionality and each parameter represents a single input data channel and data generated for output parameters represent output data channels.
A crucial aspect of data acquisition and DAQ applications is that all measurement data is recorded in real time and output channels responsible for process control are generated in real time as well. To achieve real time recording and control, suitable data acquisition software and hardware is required.

Data acquisition concept and introduction
We can divide data acquisition into several key segments:
- Tx data channel, RX data input channel
- Signal amplifying
- Signal smoothing, averaging and filtering
- Data logging, process control
- DSP Digital signal processing
- Signal source Sensors
- Transducers and switches
- IoT, PLC, Zigbee, Bluetooth, SPI, I2C, PCI, PCIe
- Timer, Capture compare
- Trigger input
- Attenuating
- Signal reader AIN analog input which usually converts analogue input signal to digital otput
- Digital input, Digital output
- Analog input, analog output, current and voltage AIN and AOUT
One of the main processes that is performed by dedicated data acquisition software is signal data smudging and signal data processing and recording.
If the DAQ application is comprised of multiple input channels and multiple hardware devices then it can be considered a DAQ system. If users have to perform some sort of control which is usually process control, control signals are generated by sending data to output channels which are in turn connected to digital/analogue converter, registers, PWM drivers, power drivers, relays and TX data channels. Control output signals usually control output drivers that are generated by data acquisition control software.
Data acquisition hardware
Data acquisition hardware includes various DAQ cards, modules and IoT devices which can be further divided into two main groups, data input and output channels. Input channels are analogue and digital inputs, trigger inputs, gate and interrupt inputs. All inputs can be split into current, voltage and Rx data channels. Analog inputs are connected to analogue to digital converters whereas digital inputs are connected to various registers and gates. Data acquisition output channels are used in process control via digital to analogue converters, registers PWM drivers, relays and TX data channels. Data acquisition channels are used to collect data or RX data and send or transmit data called TX data. TX data channels and RX data channels are more primed towards iot and control applications. Data acquisition devices can be connected to PC by ethernet, USB, RS232, RS 485, PCI, PCIe, BlueTooh, ZigBee, WiFi, ModBus, ProfiBus …
Data Acquisition protocols
Data acquisition hardware has various data transfer protocols. A protocol’s data speed can range from a few bits per second to 1000MB/s. The main protocols are: UART serial protocol which is usually as a RS232 voltage loop, R485, 4 to 24mA current loop, Ethernet data transfer, PCI, PCIe, Modbus, Profinet, EtherCAT, ZigBee, USB, WiFi, Bluetooth, IoT, IIoT, HART, DeviceNet, SATA. Choosing the right protocol depends on the ADC and DAC speed. Choosing the wrong data protocol can lead to the loss of input and/or output data. Usually, basic devices are on Etherent, USB, RS485, or Modbus. Higher speed devices will often use protocols such as for example PCI, PCIe, Profinet, and SATA. Please see https://labdeck.com/modbus/ and https://labdeck.com/modbus/introduction-to-modbus/
Data acquisition software
Data acquisition software is responsible for saving, processing and generating data. All inputs and outputs within DAQ software are represented as input and output channels. Data can be saved in excel, text and database files. Data acquisition software is usually equipped for signal smudging and filtering. Only advanced data acquisition software can perform digital signal processing. All these features are available in MatDeck. When using data acquisition software, users need to be careful with the number of channels that are connected to the software. Too many data channels will increase the necessary PC processing power meaning data acquisition software that require more channels will also require a better PC with better processors and memory. Some data processing can be passed onto the GPU card.
Data acquisition and AI
By analysing different process parameter data, AI can be used to find patterns and trends in data allowing for accurate predictions regarding future data. AI can also help to implement software protocol commands for communication with data acquisition devices. Additionally, AI can analyse data from channels and generate system status and conditions. The same approach is applied to process control where AI can recognise process conditions and status.
Data Acquisition Features and Function
As mentioned earlier, data acquisition applications have multiple layers that all function collaboratively. When there are more layers to a process there will naturally be more features and characteristics of the application as a whole. Additionally, data acquisition applications can be deployed on a wide range of processes and industries meaning Data Acquisition software will need an equally wide range of functions to accommodate for the different processes that may be undertaken.
Below is a list of important MatDeck features and functions for data acquisition applications. Feel free to look through to familiarise yourself better with Data Acquisition and MatDeck.
- Advantech
- ICP DAS
- LabJack
- DSP – Digital Signal Processing
- FFT – Fast Fourier Transform
- Digital filter design and analysis
- PID controller
- Signal Smoothing
- Wavelets
- Parallel PC processing
- Data logging
- Programming
- Adaptive Filters
- Spectral Analysis
- DSP Toolkits
- Vibrations Analysis
- Artificial Intelligence
- Virtual Instrumentation
- Waveform Audio File Format
- Database
- Units
- 2D Graphs
- 3D Graphs
- Probability Distributions
- Audio Testing
- Excel Interface
- Automatic control
- Build and EXE file
- Curve fitting
- Custom Graphical User Interface
- SCADA

Above is an example of a Data Acquisition application created in MatDeck. As you can see there are various elements used both for representational and data driven purposes. Custom instruments such as the R2 and R3 gauges are used to articulate data received from hardware units in a format that is accurate and easy to understand for operators. All elements are deployed using a drag and drop basis allowing users to reduce time spent coding instruments and elements.
Data Acquisition Forms
Data acquisition forms offer users a unique advantage in the fact that they can choose how to configure their data acquisition applications. Traditionally, operators would configure and set up data acquisition applications through programming configuration files that need to be deployed. However, MatDeck offers users the ability to configure data acquisition processes through dedicated forms as well. Users can still utilise the integrated coding aspect of MatDeck documents through Python or MatDeck script but, the use of configuration forms means users would cut countless lines of code and save countless hours of coding. On top of this, the pre-made configuration forms remove the possibility of errors or programming mistakes made by the users.
Naturally, users still have the option of configuring data acquisition applications through MatDeck’s programming engine.

Above are two examples of configuration forms used in a MatDeck document. Below is also another example.

Python Data Acquisition and MatDeck Script for Plug in Deploy EXE
All MatDeck functions are also ported and available in Python, this enables you to use our fast and custom built functions in a Python setting as a well. This includes the use of Virtument and GUI designer in Python code instead of MatDeck script. Users can also create their own libraries that collate their own custom functions and these libraries can be there used as Plug ins on MatDeck. Naturally, the custom libraries users create can be both Python and MatDeck script.
The Deploy EXE aspect of data acquisition in MatDeck allows for users to convert their Data acquisition files into .exe files that can be deployed executed on a unlimited number of computers without the prerequisite need for MatDeck.

GUI Designer for Instrumentation
MatDeck’s GUI Designer is a custom GUI builder that utilises a similar approach to Virtument where elements and widgets the user needs can be simply deployed in the work area via a drag and drop approach. Once the user has created their ideal GUI through the designer, the GUI Designer will generate the necessary code and the user can edit from there.
Through the GUI Designer, users can create dedicated data acquisition apps whilst reducing the need to code the actual layout and design of their GUI.

Virtument – Virtual Instrumentation for Data Acquisition
Users understand that being able to configure and perform data acquisition processes through hardware units is a large aspect of data acquisition as a whole. However, being able to interpret and represent valuable data in a usable human format is an equally large aspect.
Virtument is MatDeck’s dedicated toolbox that provides users with a work area and deployable instruments and elements. Instruments and elements can vary but all are deployable and moveable in the work area via a drag and drop basis. Utilising the ergonomic instruments, users can create instrument panels that are tailored to their application and preferences.
Below is an example of a Virtument panel and the MatDeck document that interface and work together.

SCADA
SCADA (supervisory control and data acquisition) is a layered system that incorporates both software and hardware components in order to monitor and control industrial processes. This system allows operators to monitor and view real time data from hardware units and control the said hardware units in a remote format. SCADA systems can be created and deployed in MatDeck for much larger industrial processes where singular data acquisition may not be viable.
Similar to data acquisition, MatDeck also has dedicated pre made configuration forms for users to set up their hardware devices efficiently without having to code. Below is an example of a SCADA configuration form that contains numerous settings and level of customisability for the users. Additionally, MatDeck has partnered with Data Acquisition hardware providers in order to create dedicated configuration forms for their devices as well.

Data acquisition Examples
Below is a list of data acquisition examples performed in MatDeck. The examples vary widely both in the hardware unit used and the processes that are undertaken. Feel free to have a look through to familiarise yourself.
ICP DAS Software Advantech Software ICP DAS Software
Adaptive Filters
Advantech
- Advantech example
- Advantech and MatDeck features
- Advantech Di and DO
- AI buffered mode realtime data processing
- AI buffered mode realtime data processing in loop
- AI buffered mode realtime graph
- AI buffered mode test
- AI buffered mode
- Analog output options
- AO example test universal
- AO example test
- Bit DI and DO
- Bitbased DI and DO
- DI DO buffered mode
- Port based DI and DO
- PWM test
LabJack
- ConfigLabJackTxAIN (PDF, MDD)
- ConfigLabJackTxDAC (PDF, MDD)
- ConfigLabJackTxDIO (PDF, MDD)
- MultipleConfigSameDevice (PDF, MDD)
- MultipleConfigWithTable (PDF, MDD)
- TemperatureVirtument (PDF, ZIP)
- TemperatureVirtumentGUI (PDF, ZIP)
- Labjackdatabase (PDF, ZIP)
- LabJack_PID_T_Direct_AT_example (PDF, MDD)
- LabJack_PID_T_Direct_AT_GUI_PID_Script (PDF, MDD)
- LabJack_PID_GUI_ALL (PDF, MDD)
- Opticalsystem (PDF, MDD)
- OpticalsystemGUI2 (PDF, MDD)
- Python_Document_LabJackConfig (PDF, MDD)
- Python_in_MatDeck_LabJackConfig (PDF, MDD)
- Python_MatDeck_GUI_LabJackConfig (PDF, MDD)
ICP DAS
- ICP COM Devices – DI and DO in MatDeck
- ICP Example
- ICP and MatDeck Features
- SCADA Example ICP DAS
- SCADA GUI Configuration
Audio Equipment Testing
- Generation of Chirp Audio Signal
- Inverse Equalizer Form
- Graphic Equalizer
- Microphone Testing with 10-bands Equalizer
- Microphone Testing and Graphic Equalizer
- Microphone Testing with Inverse Equalizer Toolkit
Automatic control
Build and Exe
DSP
- Basic shapes
- Basic shapes continued
- Decimation
- Envelope
- Interpolation
- Sawtooth
- PPG Signal processing with Database Interface
- Create Database for PPG Signal
DSP ECG Processing
DSP Filtering
- Butterworth filter
- Chebyshev filter BS and BP
- Chebyshev filter type I
- Inverse Chebyshev BP and BS
- Inverse Chebyshev LP and HP
- Elliptic filter – BP and BS
- Elliptic filter – LP and HP
- Finite impulse response filters
- FIR filter design by frequency sampling
- IIR filter implementation
DSP Spectral Analysis
DSP Toolkits
- Correlation and convolution toolkit
- Filtering toolkit for FIR by wind freq
- Filtering toolkit for FIR opt
- Filtering toolkit IIR filtering form
- Filtering transforms
- Signal resampling form
- Signal statistics form
- Signal transform toolkit
- Waveform toolkit example