You are on page 1of 7

Available online at www.sciencedirect.

com

Procedia Computer Science 17 (2013) 222 – 228

Information Technology and Quantitative Management (ITQM2013)

Design of the Data Acquisition System Based on STM32


Hui-fu Zhang1, Wei Kang1*
1
Department of Computer Science and Technology, Hunan University of Science and Technology, Xiangtan 411201, China
Abstract

Early detection of failures in machinery equipments is one of the most important concerns to industry. In order to
monitor effective of rotating machinery, we development a micro- - system of signal acquisition system
based on STM32 in this paper. we have given the whole design scheme of system and the multi-channel vibration signal in
axis X, Y and Z of the rotary shaft can be acquired rapidly and display in real-time. Our system has the character of simple
structure, low power consumption, miniaturization.

©
© 2013 TheAuthors.
2013 The Authors.Published
Published
byby Elsevier
Elsevier B.V.B.V.
Selection and peer-review
Selection and/or peer-reviewunder
underresponsibility
responsibility of the organizers
of the organizersofofthe
the2013
2013International
International Conference
Conference on Information
on Computational
Technology
Science and Quantitative Management

Keywords: STM32; data acquisition; embedded system; - ;

1. Introduction

The real-time acquisition of vibration in rotating machinery can effectively predict, assess and diagnose
equipment operation state, the industry gets vibration data acquisition Rapidly and analysis in real-time can
monitor the rotating machinery state and guarantee the safe running of the equipment. In order to prevent
failure, reduce maintenance time, improve the economic efficiency, The purpose of fault diagnosis system can
detect these devices through the vibration signal acquisition of rotating machinery, and process the data
acquisition, then it will make timely judgment of running state of equipment .While the data acquisition module
is the core part of the fault diagnosis system [1-4].The practical application in the industrial field, is the
equipment operating parameters will be acquired to monitor equipment operating state. In traditional data
acquisition systems, the data from acquisition card are generally send into the computer, and specific software
will be developed for the data acquisition. The main contribution of this paper has designed the STM32
platform with ARM technology, that has become a traditional mainstream technology in embedded systems,
and the collecting data toward the direction of high real-time, multi-parameter, high-precision, while data
storage become large capacity, more miniaturization and portable, and the development of multi-
communication mode and long-distance for data transmission. So as to meet the actual acquisition system

* Corresponding author. Tel.: 086-0731-15073230255.


E-mail address: kwandy88@163.com

1877-0509 © 2013 The Authors. Published by Elsevier B.V.


Selection and peer-review under responsibility of the organizers of the 2013 International Conference on Information Technology and Quantitative
Management
doi:10.1016/j.procs.2013.05.030
Hui-fu Zhang and Wei Kang / Procedia Computer Science 17 (2013) 222 – 228 223

multitasking requirements, this article has - system of


signal acquisition system. Therefore, in order to meet the actual acquisition system multitask requirements, this
novelty of this article has designed a signal acquisition system in micro- - based on STM32.

2. Architecture of data acquisition system

Data acquisition as key technology for monitoring equipment, recently a lot of work has been done on it. An
embedded parallel data acquisition system based on FPGA is Optimized designed which will make it
reasonable to divide and allocate high-speed and low-speed A/D [5]. Instead, it has use a high-speed A/D
converter and Stratix II series of FPGA for data collection and processing, in which the main contribution is
used of the Compact Peripheral Component Interconnect, the system has the characters of modularization,
sturdiness and scalability [6].But remote control will be needed in Special Conditions, this paper introduce the
embedded operating system platform based on Windows CE and - to design a remote acquisition and
control system with the GPRS wireless technology [7-8].In order to achieve the data sharing of multi-user, it
has build the embedded dynamic website for data acquisition management and dissemination with the ARM9
and Linux operation system [9].A data collection terminal devices is designed based on ARM7 microprocessor
LPC2290 and embedded real-time - to solve the real-time acquisition of multi-
channel small signal and multi-channel transmission[10].On the other hands, two parallel DSP-based system
dedicated to the data acquisition on rotating machines, and the inner signal conditioner is used to adapt the
sensor output to the input range of the acquisition, and then signal post-processing by the design software,
while the most frequently structure is to use DAS and FPGA-based, and such programs are also dependent on
the DAS cost.
In order to meet market requirements of low power consumption, low cost, and mobility, Fig.1 in this paper
presents the design overall structure diagram of data acquisition system. Through SPI interface, the system gets
the data collection with three axis acceleration sensor into the STM32 controller of inner A/D conversion
module with 12-bit, this process is non-interfering parallel acquisition. Our system uses 240x400 LCD and
touch screen module real-time to display the collected data in real time.
SRAM RS232

Lcd touch-
screen USB

FLASH 670)9(7
Ethernet
&RUWH[0
Reset
circuit
RTC
circuit
Power
circuit
JTAG

MMA7455L A/D

Fig.1 Hardware Framework of System

2.1. STM32 micro-controller

A 32 bit RISC STM32F103VET6, used as the processor in our system, compared with similar products, the
STM32F103VET6 work at 72MHZ, with characters of strong performance and low power consumption, real-
224 Hui-fu Zhang and Wei Kang / Procedia Computer Science 17 (2013) 222 – 228

time and low-cost. The processor includes: 512K FLASH, 64K SRAM, and it will communicate by using five
serial ports which contain a CAN bus, a USB2.0 SLAVE mode and a Ethernet interface, what s more two
RS232 ports are also included. The system in our paper extend the SST25VF016B serial memory through the
SPI bus interface, that will regard as the temporary storage when collect large number of data, furthermore, we
have the A/D converter with 12 bits resolution, and the fastest conversion up to 1us, with 3.6 V full-scale of the
system. In addition to design of the system power supply circuit, the reset circuit, RTC circuit and GPIO port to
assurance system needs and normal operation.

2.2. Data acquisition

The machine state is normal or not is mainly depended on the vibration signal. In this paper, to acquire the
vibration data of rotating machinery rotor, we have used vibration acceleration transducers MMA7455L which
could collect the data from axis x, y, and z of the company of Free-scale. The kind of vibration acceleration
transducers has advantage of low cost and small size, high sensitivity and large dynamic range with small
interference. MMA7455L is mainly consists of gravity sensing unit and signal conditioning circuit composition,
and this sensor will amplify the tiny data before signal preprocessing.
In data acquisition process of our system, the error of sampling stage is mainly caused by quantified, and
the error is depended on the bits of the A/D converter ,when we regard the maximum voltage as V max , the
AD converter bits is n, and the quantization Q = V max/2n, then, the quantization error is obeyed uniform
distribution in [- q / 2, q / 2] [13].

e ep(e)de 0 (1)

2
2 q2 1 q2
n (e e) p(e)de e2 de (2)
q 2
q 12
2
S V max 2 V max 2 V max (3)
12( ) 12 x22 n
N e2 q2 q2
12

S
( )dB 6n 10.8 (4)
N

2 S
While e is average error, n is error variance , and is SNR.
N
The designed STM32 could built at most three 12-bit parallel ADC in this paper , which theoretical index is
72dB and the actual dynamic range is between 54 to 60dB while 2 or 3 bits is impacted by noise, the dynamic
range of measurement can up to 1000 times with 60dB. For the vast majority of the vibration signal, the
maximum sampling rate of 10kHZ can meet actual demand, and the higher frequency of collection is generally
used in the 8-12 bits AD, therefore one of contribution of this work is to choose a built-in 12-bit A/D to meet
the accuracy of vibration signal acquisition and lower cost in this experiment.
Hui-fu Zhang and Wei Kang / Procedia Computer Science 17 (2013) 222 – 228 225

2.3. Storage and display

Real-time data acquisition is needed that we have designed the system with 64K * 12bit capacity on chip
SRAM. The process is that the three-axis acceleration transducers system is connected to the controller with the
SPI interface, it will start to collect data when acquisition request is received, then the data transmitted through
the DMA and stored in the SRAM chip until the data buffer is full, it sends a interrupt signal to CPU, and CPU
read all the channels data from FIFO, then will display the result in the LCD directly. Our system is capable of
rapid, real-time and efficient to collect the original data and visually displayed.

3. Software design

3.1. Transplantation of C/OS-

In order to ensure real-time and safety data collection requirements, in this system, a kind of RTOS whose
source code is open and small is proposed. It also can be easily to be cut down, repotted and solidified, and its
basic functions including task management and resource management, storage management and system
management. The RTOS embedded system could support 64 tasks, with at most 56 user tasks, and four tasks of
the highest and the lowest priorities will be retained in system. The - assigns priorities of the tasks
according to their importance, the operation system executive the task from the priority sequence and each task
have independent priority. The operating system kernel is streamlined, and multi-tasking function is well
compared with others, it can be transplanted to processors that from 8-bit to 64-bit.The transplant in the system
are to modify the three file system structure: OS_CPU_C.H OS_CPU.C, OS_CPU_A.ASM. Main
transplantation procedure is as follows:
A. OS_CPU_C.H
It has defined the data types, the length and growth direction of stack in the processor. Because different
microprocessors have C/OS - II transplantation include a series of type definition
to ensure its portability, and the revised code as follows:
typedef unsigned char BOOLEAN;
typedef unsigned char INT8U;
typedef signed char INT8S;
typedef unsigned short INT16U;
typedef signed short INT16U;
typedef unsigned int INT32U;
typedef signed int INT32S;
typedef float FP32;
typedef double FP64;
typedef unsigned int OS_STK;
typedef unsigned int OS_CPU_SR;
Cortex-M3 processor defines the OS_ENTER_CRITICAL () and OS_EXIT_CRITICAL () as opening and
closing interrupt, and they must set to 32 bit of the stack OS_STK and CPU register length. In addition, that has
defined the stack pointer OS_STK_GROWTH stack growth direction from high address to lower address.
B. OS_CPU.C
To modify the function OSTaskStkInit() according to the processor, the nine remaining user interface
functions and hook functions can be null without special requirements, they will produce code for these
functions only when the OS_CPU_HOOKS_EN is set to 1 in the file of OS_CFG.H. The stack initialization
function OSTaskStkInit () return to the new top of the stack pointer.
226 Hui-fu Zhang and Wei Kang / Procedia Computer Science 17 (2013) 222 – 228

OS_CPU_A.ASM
Most of the transplant work are completed in these documents, and modify the following functions.
OsStartHighRdy() is used for running the most priority ready task, it will be responsible for stack pointer SP
from the highest priority task of TCB control block, and restore the CPU, then the task process created by the
user start to control the process.
OSCtxSw () is for task switching, When the current task ready queue have a higher priority task, the CPU
will start OSCtxSw () task switching to run the higher priority task and the current task stored in task stack.
OSIntCtxSw () has the similar function with OSIntSw (), in order to ensure real-time performance of the
system, it will run the higher priority task directly when the interrupt come, and will not store the current task.
OSTickISR () is use to handle the clock interrupt, which needs interrupt to schedule its implementation
when a higher priority task is waiting for the clock signal.
OS_CPU_SR_Save () and OS_CPU_SR_Restore () is completed to switch interrupt while entering and
leaving the critical code both functions implement by the critical protection function OS_ENTER_CRITICAL ()
and OS_EXIT_CRITICAL ().
- can run on the processors.

3.2. Software architecture

Fig.2 shows the system software architecture, so as to display the data visualized, and -
is transplanted in the system, our system contains six tasks such data acquisition, data transmission, LCD
display, touch screen driver, key-press interface. First of all, we should set the task
priority and the task scheduling based on the priority. It needs complete the required driver design before the
data acquisition, such as A/D driver, touch panel driver and system initialization, while the initializations
include: hardware platform initialization, system clock initialization, interrupt source configuration, GPIO port
configuration, serial port initialization and parameter configuration, and LCD initialization. The process is that
the channel module sent sampling command to the AD channel, then to inform the receiver module it has been
sent the sample start command, the receiver module is ready to receive and large data will store in the storage
module, after the completion of the first sampling, channel module will send the complete command of
sampling to the receiver module, the receiver sends an interrupt request to the storage module to stop the data
storing, then the data will display on the LCD touch screen. The data acquisition process shown in Fig.3
Hui-fu Zhang and Wei Kang / Procedia Computer Science 17 (2013) 222 – 228 227

System
Initialization

Drive Initialization
Task scheduling of C/OS-II

Create Sampling
Task

Sampling Task
Time

Start Sampling
Data Kiss-press Touch screen C/GUI Data
Lcd display
acquisition management drive interface transmission
AD Start

DMA Start

Ethernet Sampling
Channel Receiving Storage Completed
USB USAT
module module module

LCD Display

Fig.2 Software Architecture of System Fig.3 Data Acquisition of Flow Chart

4. Experiments

The experiment of the embedded system has been done and data acquisition comes from the acceleration of
MMA7455L, which is installed on the bench of rotating machine. The data acquisition have displayed as
shown in Fig.4 and Fig.5, the system can select three channels to collect the vibration signal from the three
directions of X, Y and Z-axis , and in this paper the sampling frequency is 5KHZ and we have collect the
vibration signal from normal state of unbalanced state at the same channel. The result shows that our system
can display real-time data acquisition and predict the preliminary diagnosis rapidly.

 
Fig.4 Normal Data Acquisition Fig.5 Unbalance Data Acquisition
228 Hui-fu Zhang and Wei Kang / Procedia Computer Science 17 (2013) 222 – 228

5. Conclusion

This paper has designed an embedded signal acquisition system for real time according to the mechanical
failure occurred with high frequency of in the rotating machines. The system is based on a low cost
microcontroller, Vibration signals is picked by the three axis acceleration sensor which has the performance of
low cost and high sensitivity, and the acquisition data from axis x, y, and z. We have designed the system
hardware structure, and analyses the working principle of data acquisition module. The proposed system of
C/OS- realize the data task management and scheduling, and it is compacted with structure and low cost,
what's more the system collects the vibration signal and analysis in real-time of the rotating machines, and then
quickly gives diagnostic results.

Acknowledgements

This work was supported by The National Natural Science Foundation of China (51175169); China Nation
al Key Technology R&D Program(2012BAF02B01); Planned Science and Technology Project of Hunan Pr
ovince(2009FJ4055);Scientific Research Fund of Hunan Provincial Education Department(10K023).

References

[1] Cheng, L., Yu, H., Research on intelligent maintenance unit of rotary machine, Computer Integrated Manufacturing Systems, vol. 10,
Issue: 10, page 1196-1198, 2004.
[2] Yu, C., Zhong, Ou., Zhen, D., Wei, F., .Design and Implementation of Monitoring and Management Platform in Embedded Fault
Diagnosis System, Computer Engineering, vol. 34 , Issue: 8, page 264-266, 2008.
[3]Bi, D., Gui, T., Jun, S., Dynam . Behavior of a High-speed Hybrid Gas Bearing-rotor System for a Rotating ramjet, Journal of Vibration
and Shock, vol. 28, Issue: 9, page 79-80, 2009.
[4] Hai, L., Jun, S., Research of Driver Based on Fault Diagnosis System Data Acquisition Module, Machine Tool& Hydraulics, vol. 38 ,
Issue: 13, page 166-168, 2011.
[5] Hao, W., Qin, W., Xiao, S., Optimized. Design of Embedded Parallel Data Acquisition System, Computer Engineering and Design, vol.
32, Issue: 5, page 1622-1625, 2011.
[6] Lei, S., Ming, N., Design and Implementation of High Speed Data Acquisition System Based on FPGA, Computer Engineering, vol. 37,
Issue: 19, page 221-223, 2011.
[7] Chao, T., Jun, Z., Ru, G., Design of remote data acquisition and control system based on Window CE, Microcomputer& Its
Applications , vol. 30, Issue: 14, page 21-27, 2011.
[8]Xiao, W., Bin, W., SMS controlled information collection system based on /OS- , Computer Application, vol. 12, Issue: 31, page
29-31, 2011.
[9]Ting,Y., Zhong, C., Construction of Data Collection& Release in Embedded System, Computer Engineering, vol. 33, Issue: 19, page
270-272, 2007.
[10]Yong, W., Hao, Z., Peng,D., Design and Realization of Multi-function Data Acquisition System Based on ARM, Process Automation
Instrumentation, vol. 32, Issue: 1, page: 13-16, 2010.
[11] Betta, G., Liguori, C., Paolillo, A., A DSP-Based FFT Analyzer for the Fault Diagnosis of Rotating Machine Based on Vibration
Analysis, IEEE Transaction on Instrumentation and Measurement, vol. 51, Issue: 6, 2002.
[12] Contreras-Medina LM., Romero Troncoso RJ., Millan Almarez JR., FPGA Based Multiple-Channel Vibration Analyzer Embedded
System for Industrial Application in Automatic Failure Detection, IEEE transactions on International and measurement, vol. 59, Issue:
1, page 63-67, 2008.
[13]Chon, W., Shuang, C., Design and implementation of signal detection system based on ARM for ship borne equipment, Computer
Engineering and Design, vol. 32, Issue: 4, page: 1300-1301, 2011.
[14]Miao, L., Tian, W., Hong, W., Real-time Analysis of Embedded CNC System Based on /OS- , Computer Engineering, vol. 32,
Issue: 22, page 222-223, 2006.

You might also like