Manera adecuada de conectar sensores lejos de arduino

Tengo una configuración simple cuando tengo que leer valores analógicos de un sensor de luz y necesito colocarlo lejos del arduino (a varios metros de distancia). Quiero saber cómo puedo crear una conexión confiable por cable desde el arduino al sensor .

esquemático

simular este circuito : esquema creado con CircuitLab

Aquí está la función que activa el sistema:

void photoResistorActivation () { int photoResistor = 1024 - analogRead(PHOTO_RESISTOR_PIN); if (DEBUG) { Serial.println (photoResistor, DEC); } if (photoResistor >= LIGHT_THRESHOLD) { personDetected = false; } else { if (personDetected == false) { trigger = true; personDetected = true; } } }

Editar: he recibido comentarios valiosos en las respuestas sobre cómo evitar el ruido, pero quiero aclarar que estoy preguntando sobre la conexión física (cables, conectores, etc.). ¿Qué tipo de cables debo usar? ¿Cables de salto?

Gracias

¿Qué quieres medir exactamente? El "sensor de luz" en el enlace dado es un detector IR. ¿Necesita un valor analógico real o simplemente encender/apagar en un umbral determinado?
Escribí el código y está funcionando, solo quiero saber cómo conectar físicamente el sensor a arduino
Para repetir la pregunta de @Stefan. ¿Necesita medir un valor analógico, o solo necesita un apagado/encendido contra un umbral? Nuestra respuesta depende del tipo de valor que necesite. Por favor aclare su pregunta; publique el esquema de cómo lo está usando y una parte del código que lo está usando.
Necesito encendido/apagado, pregunta actualizada con código
La naturaleza del sensor de luz y su circuito amplificador son realmente muy necesarios para responder a esta pregunta. De hecho, el código y el arduino no son muy relevantes en absoluto.

Respuestas (2)

Consideraría usar algunos condensadores, diodos de sujeción y resistencias de salida muy cerca del arduino.

Los cables largos tendrán cargas capacitivas e inductivas. Los golpes en el cable crearán picos de ruido.

  • Las resistencias de salida (entrada al arduino) limitarán el pico en función del aumento de corriente (debe ser bajo, la resistencia de 10k debería estar bien).
  • El capacitor estabilizará el voltaje, seleccionará el valor del capacitor en función de una ecuación RC de filtro de paso bajo y la frecuencia esperada del cambio de luz (f = 1/2*pi R C). Si es solo luz ambiental en una habitación, use 10 uF o lo que esté disponible, si es un diodo estroboscópico, calcule el valor del filtro.
  • Para el diodo de sujeción, elija un diodo de tiempo de respuesta rápido que se sujete a un poco más de 5 V para que el ruido aumente y la ESD al tocar el cable no elimine el pin de entrada en su arduino. El P6KE6V8CA debería hacer el truco.
Conecte la 'salida' (ánodo) del fototransistor a la resistencia ya la entrada del arduino. Conecte el cátodo a tierra.
Cualquier cable será suficiente, suponiendo que sea de metal y conductor. ¿No tienes cables de desecho por ahí? El calibre no debería importar para esta aplicación de baja potencia. Suponiendo que va a usar esto por un tiempo, es posible que desee algo que pueda soldar para que no se desmorone ni falle.

Tu pregunta es un poco vaga.

La mejor solución sería colocar un ADC detrás del sensor, ya que la transmisión digital es mucho más resistente a la distorsión. Si esto es posible, es posible que desee transmitirlo incluso de manera diferencial (invierta la señal y emita más y menos su nivel alto o 0).

Si esto no es posible, querrá al menos un cable de par trenzado o un cable blindado para reducir la distorsión. La mejor conexión debería ser un conector BNC en la placa y un cable coaxial.

Además, si no puede colocar un ADC detrás del sensor, es posible que desee amplificar su señal analógica dependiendo de lo que emita el sensor.