🛠 Lire un capteur analogique 0–10 V sur les entrées Opta
Objetivos
Configurar las entradas multifunción I1..I8 en modo analógico para leer transmisores de 0–10 VDC. El Opta ofrece una resolución de usuario configurable de 12 a 16 bits (LSB 166 µV, precisión ±5 %, repetibilidad ±2 %, ciclo de adquisición 10 µs). Aprenderá a convertir la lectura bruta en tensión real mediante el divisor integrado (factor 0,3034).
Material
- Arduino Opta alimentado a 24 VDC
- Un transmisor de 0–10 V (presión, temperatura, potenciómetro alimentado)
- Conexiones en I1, I2, I3 (pines A0, A1, A2) y 0 V común
- IDE de Arduino, core Opta
Código completo
// opta_analogique_0_10v.ino — surveillance de 3 transmetteurs 0..10 V
const float VOLTAGE_MAX = 3.3; // pleine echelle ADC
const float RESOLUTION = 4095.0; // 12 bits
const float DIVIDER = 0.3034; // diviseur embarque 10 V -> ~3,3 V
const int TERMINAUX[] = {A0, A1, A2}; // borne I1, I2, I3
void setup {
Serial.begin(9600);
analogReadResolution(12); // 12..16 bits configurables sur Opta
}
void loop {
for (int i = 0; i < 3; i++) {
int brut = analogRead(TERMINAUX[i]);
float volts = brut * (VOLTAGE_MAX / RESOLUTION) / DIVIDER; // 0..10 V
Serial.printf("I%d : %d -> %.3f VDC\n", i + 1, brut, volts);
}
delay(1000);
}
Verificación esperada
Con un transmisor entregando 5 V a la salida, la línea correspondiente muestra aproximadamente 5,000 VDC. Al pasar a analogReadResolution(16), la estabilidad de los decimales mejora (sobremuestreo). El rango medible es de 0–10 VDC únicamente en modo analógico — no 24 V.
Errores frecuentes
- Enviar más de 10 V a una entrada en modo analógico: el rango es de 0–10 VDC; se debe respetar una señal de 0–20 mA o 0–10 V, se requiere una resistencia shunt para los lazos de corriente.
- Factor de conversión incorrecto: olvidar dividir por 0,3034 da tensiones erróneas por un factor de 3; consulte el sketch oficial del manual de usuario.
- Resolución mal entendida: 16 bits en configuración de usuario no equivale a 16 bits de precisión — la precisión sigue siendo ±5 %.
- Masa común olvidada: sin un 0 V común entre el sensor y el Opta, la lectura deriva u oscila.
Otros tutoriales para esta placa
- Premier sketch : faire clignoter une LED sur Arduino Opta
- Lire une entrée numérique 24 V (capteur de proximité)
- Commander une charge 230 V avec un relais de sortie
- Server Modbus TCP : exposer les relais sur Ethernet
- Remonter des données machine en MQTT via Ethernet
- Exploiter le double cœur : M7 pour le PLC, M4 en coprocesseur
Ejemplos de código para esta placa
relais_securise.inoArduinoentrees_numeriques.inoArduinoanalogique_0_10v.inoArduinomodbus_tcp_esclave.inoArduinomodbus_rtu_maitre.inoArduinomqtt_telemetrie.inoArduino