# How to create Wireless Measurement System

#### romene

Joined Oct 1, 2020
6
Hello,
i am working on project to create a wireless Measurement system that let me monitor a machine with different sensors.
So could you please tell me what are exactly the devices that you think i am going to need if i want to read data with a high rate from the sensors to the computer.
I know that i will need a transmitter for the sensors, a receiver to connect to the PC and also power supply for the transmitter, but i don't know what are the best devices to use for a fast data reading and sending and don't know if i use Wifi, Bluetooth...
The sensors have BNC connectors and they are IEPE sensors.
For the Software i will use LabVIEW.
I hope that i gave you alle the information needed.

Thank you

#### MrChips

Joined Oct 2, 2009
22,097
Welcome to AAC!

You need to quantify fast, high rate.
100 samples per second?
1000 sps
1Msps

#### romene

Joined Oct 1, 2020
6
Welcome to AAC!

You need to quantify fast, high rate.
100 samples per second?
1000 sps
1Msps
over 60ksps

#### MrChips

Joined Oct 2, 2009
22,097
Ok.
Next, quantify how many sensors and distance from transmitter to receiver.
Also, continuous at over 60ksps or burst mode, e.g. data every 100ms.

#### romene

Joined Oct 1, 2020
6
I am going to use 5 sensors:
two to measure the vibration (3 axis accelometer), one to measure the speed (Laser Tachometer), a microphone. Those 3 senors have BNC connectors. and the last one for the temperature.
continuous mode at over 60ksps.
I am actually thinking to use 2 Arduinos one as Transmitter the other as Receiver with nRF24L01 Module. The Problem is how to connect the Sensors and if i use one Transmitter and one Receiver or more.
Thank you

#### MrChips

Joined Oct 2, 2009
22,097
You need to sit down and crunch the numbers.

Two 3-axis accelerometer = 6 data points
speed
microphone
temperature

= a total of 9 data points x 2 bytes @ 60ksps = 1080 ksps = 8.64Mbps
You are going to have a difficult time implementing that. Arduino is not going to do it.

3-axis accelerometer often has built-in temperature measurement.
A microphone is most likely going to give the same information as the accelerometer.

For simplicity I would start off with a single 3-axis accelerometer and one speed sensor (which I presume is measuring machine rpm?) If you are measuring machine vibration you may want to consider limiting the range of frequencies and hence going for lower data rates, for example 20kHz.

Next, determine if it is necessary to record data continuously. Instead you can record in burst, for example, once every second, and measure one axis at a time.

If you use multiple TX/RX pairs you will need to operate on different channel frequencies which complicates things. I would go with a single pair of nRF24L01+.

You have not stated your distance between TX and RX.

#### romene

Joined Oct 1, 2020
6
The distance is not too long, it's about 6m between TX and RX.

If Arduino can't do that and i can't use multiple TX/R, how am i going to use all the sensors?

I need to monitor the machine while it's working, so i can test all the parameters for example the vibration if is it high or low during the whole working time. So i really don't know if burst mode will be useful.

the speed sensor will measure machine rpm yes.
and sorry i didn't understand why i need to limit the range of frequencies by the vibration measurement.
thank you very much for the helpful information and sorry if i say or ask sth stupid.

#### MrChips

Joined Oct 2, 2009
22,097
I am trying to help you design a system that is feasible.

Machine vibration does not go into high frequencies beyond 10kHz. Most of the energy is under 1kHz.
If you can limit the range to say 4kHz then your sampling rate can be reduced to 8kHz.

What kind of motor or machine are you monitoring? How much is the rpm changing?
In most circumstances, taking a rotational speed and temperature once every second should be adequate.
You don't need multiple TX/RX for every channel. Data such as speed and temperature can be embedded in the data packet.

For accelerometer data, I would sample one axis at a time for say 1 second at 8ksps. This will require 16k bytes of data to save and transmit. You will need enough memory space to save the data. Then transmit all 16kb to the receiver along with speed and temperature data. Repeat with the other two axes.

#### romene

Joined Oct 1, 2020
6
yea, now i understand what you mean about the limiting of the Range frequencies. Thank's for the explication.
The machine is an angle grinder. The rpm Value ist between 9000rpm and 10000rpm.
do you mean then with your proposition of sampling data it will be possible to work with the Arduino?
if you have other proposition for using other or better hardware, i would be pleased to hear it.
thank's

#### MrChips

Joined Oct 2, 2009
22,097
It depends on what you intend to do with the data.
Why would you need three axes? Will one axis give the information you are seeking?
I am not an Arduino user. Does Arduino have memory space for 16kb of data?

FYI, I am using STM32 MCU, IIS3DWB MEMS 3-axis sensor, nRF24L01+ TX/RX pair.

#### romene

Joined Oct 1, 2020
6
i need the 3 axis because the machine will not be stable. i will measure the 3 axis and then calculate the resulting of them
The Arduino UNO has 32K bytes of Flash memory and 2K bytes of SRAM.
Thank you for your help

#### Papabravo

Joined Feb 24, 2006
14,685
i need the 3 axis because the machine will not be stable. i will measure the 3 axis and then calculate the resulting of them
The Arduino UNO has 32K bytes of Flash memory and 2K bytes of SRAM.
Thank you for your help
"the machine will not be stable"

Do you mean to suggest the the motions of the machine will increase without bound? If so you need to get those positive real roots back into the left half plane.

#### MrChips

Joined Oct 2, 2009
22,097
i need the 3 axis because the machine will not be stable. i will measure the 3 axis and then calculate the resulting of them
The Arduino UNO has 32K bytes of Flash memory and 2K bytes of SRAM.
Thank you for your help
Arduino (ATmega328) has only 2K bytes of SRAM. You need more than 16K bytes.
If you are going to combine three axes into one then do it on the MCU and then you only need to transmit one array of data.