I have a new project where I need to use various sensors as analog inputs. The sensor values should be displayed on an LCD and stored somewhere for at least 48 hours. The intervals between measurements can be up to 5 minutes. In total, I will need about 20 analog inputs for this. The sensors themselves will be distributed in a room that is approximately 7m x 2.5m x 2m in size. Therefore, the cables should be relatively long. To also be able to control things with the values, at least 10 digital inputs and outputs should be available. Ideally, the values should also be accessible on a cloud or online somewhere.
Now my question, which Arduino board would you recommend for this?
Can you gave a list of the sensors and tell what you want to read ? For example: RS-485, 4-20mA, -10V...+10V, 0...10mV. We also need to know if the output of the sensors is a absolute voltage or a ratiometric voltage (the output is relative to VCC) and how you power the sensors.
Maybe you need 10 boards wireless connected, or an external ADC, or an analog multiplexer. Is it okay if a computer is connected and the computer stores the data ?
Thanks for your answers and the Shop @horace.
I saw different sensors, that I would like to use. I am not sure if it is worth the sensors of atlas sensors, this I need to discuss with my partner, as we need a lot of sensors.
In the following is my list:
I will need at least 6 of the O2-Sensors, 2 of the Humidity and Temperature Sensors, and one of the CO and CO2-Sensors.
It could be possible, that the amount of sensors will be upgraded, as I need a qualified result of the measurement.
It is possible to log everything on a pc or a server, that I have here.
in the project where I used Altas sensors cost was no problem
in your case I would experiment with alternative sensors - if low cost sensors give sufficiently accurate results fine
I agree with @kmin in the use of ESP32 microcontrollers which have onboard WiFi, Bluetooth Classic and BLE plus plenty of memory and IO capabilities
if you have local WiFi coverage the ESP32 could send results to your server
alternatively the ESP32 could run a web server - you could connect to it from a smartphone, laptop, etc etc to view results using a web browser
SEEED Gove O2 Sensor: analog output (unknown if it is ratiometric or not).
They sell it for less money: https://www.seeedstudio.com/Grove-Oxygen-Sensor-MIX8410-p-4697.html
Every O2 sensor is expensive, but 40 dollars is not so bad for the cheapest sensor MIX8410.
The one that Reichelt sells has a Winsen sensor, that is a well known brand.
Atlas Scientific sensors: Serial/UART and I2C and it works with 3.3V and 5V.
EZO sensor: Serial/UART and I2C and it works with 3.3V and 5V.
MQ-7 sensor: Buy it and try it and have a laugh. It is sensitive, but it is almost impossible to calculate the real amount of CO from its analog output.
DHT22: It can be used for the temperature, but the humidity is inaccurate. Some report 5% inaccuracy, others report 20% or 40% inaccuracy for the humidity.
Length of cables:
The Serial/UART cables can have some length. If you choose the right cable. The I2C bus is not designed to go through a cable. An analog signal through a cable is possible, any noise that is picked up on the way can be filtered out in software.
We need to analyze a chamber with dimensions of 7 x 2.5 x 2 meters, which will be filled with nitrogen using a generator to a specific level. Inside the chamber, we need to monitor the air quality, specifically measuring the levels of O2, humidity, temperature, CO, and CO2 for safety reasons.
When the O2 level reaches a predefined threshold, the nitrogen generator should automatically stop. Humidity will only be controlled. If the temperature, CO, or CO2 levels exceed safe limits, the chamber must be opened to restore safe conditions.
To ensure accurate results, we plan to implement multiple measurement points within the chamber. This will allow us to thoroughly assess the air quality and understand the distribution of these parameters throughout the entire chamber.
What I see is a laptop outside the chamber, and a USB cable with an extra 5V power cable to a box with an Arduino board.
A few sensors next to the Arduino board with I2C.
All other sensors via Serial/UART.
A digital or analog multiplexer or external UART board for all the Serial/UART interfaces. A cheap option is to use multiple SoftwareSerial buses and select them one by one.
The Arduino board can almost be any board. For example a Raspberry Pi Pico or a ESP32 (or variant) or even an Arduino Uno with a I2C level shifter.
In case you need two I2C sensors a few meters apart, then I would use a number of ESP32-C3 boards with wireless ESP-NOW communication. That is very modular and the main board (connected to a computer) can be outside the chamber. You can work on a new module with a new sensor, while the project is running. There is less soldering, and it looks and feels more "professional".
I have reviewed the information you provided, and I have decided to use the sensors from Atlas and EZO for measuring O2, temperature, CO2, and humidity. The sensors should integrate well into the chamber through the wall. Now, I just need to find a suitable CO sensor.
The most critical factor is the O2 level, so I plan to measure it at a minimum of six points along one wall, and possibly on the opposite side as well. However, this would require very long cables, which might affect the accuracy of the measurements.
What I envision is similar to what you suggested, Koepel—a single laptop connected to a "mainboard" (like an Arduino UNO or similar). This mainboard would then communicate with the sensors wirelessly, either via Bluetooth or Wi-Fi. The sensors would be connected to a circuit board, which in turn would link to the mainboard.
I’ll also look into the ESP32 system as an option. Since I'm relatively new to all of this, it will take me some time to figure out how everything works and how to proceed.
10 meters long sensor wiring is like asking troubles. Esp32 costs less than $5, put one in all 6 sensor location. That way you can use whatever sensors, i2c, serial,analog. No problems with interferences on wiring. No need for Rs485 converters etc.
Esp32 can be programmed as webserver and it can log data automatically to cloud, like Google sheets, ThingSpeak etc.
After some days off i am coming back to this project, as I need to finish this. I was looking for CO Sensors now again and found the ones from DFROBOT . Does anybody has experience with them?
About the ESP32 I have a question too. Do I just need for example this (maybe you can recommend something better of ESP32) or do i need also an arduino board at the sensors?
Good choice. Wiring would be a nightmare with only one board. So 6 Esp32 boards is all you need. Pick the Esp Wroom32 boards like in your link, not some weird versions. It's the most commonly available anyway. Also choose micro-usb version. There is a recent usb-c version stock that have some bug.