Veran, tengo una señal analógica recibida por un sensor ultrasónico, la cual varía su voltaje pico-pico (sin ser uniforme en amplitud) según las condiciones a las que someto la transmisión de la onda, este voltaje pico-pico lo visualizo en el osciloscopio.
Lo que me interesa es poder leer con mi arduino este voltaje pico-pico, he pensado en convertir esta onda por medio de pwm a señal digital, pero no he tenido éxito, recién aprendo arduino.
Hola @amos_226 podrias poner un esquema electronico del sensor y como lo has conectado. El tema es que hablas de algo analogico y no he visto ningun sensor ultrasonico con salida analogica salvo los sensores mas caros que si tienes una salida 0-5V
Un sensor analógico industrial tiene a veces :
salida PWM, o
salida de frecuencia proporcional al valor (obviamente) o
salida 485 o
salida 4-20mA Analogico o
salida 0-5 o 0-10V
En estos casos si entiendo tu consulta pero los típicos sensores de Arduino como el HC-SR04 solo tienen una salida digital que debe ser leida por ARduino para decodificar su valor.
Efectivamente estoy utilizando un HC-SR04, pero no estoy tomando el valor que arroja ECHO para mi análisis de datos, estoy tomando la onda puramente como llega a mi terminal del receptor ultrasónico, la cuál vista en el osciloscopio, varia su Vp-p dependiendo de las condiciones a las cuales someto esta onda.
En las imágenes se visualizan 4 condiciones distintas en donde claramente se observa que el Vp-p es diferente.
En lo que requiero ayuda es en poder leer este Vp-p con mi arduino para poder relacionarlo con las condiciones establecidas
Pero es un proyecto universitario o cual es el objetivo?
Tomar el Vpp es tan simple como comparar un valor muestrado con el siguiente y quedarse siempre con el mayor.
Deberías usar trigger como elemento que ponga dicho máximo en 0 y luego vuelves a consultar los valores leídos.
De solo observar la gráfica es lógica la secuencia que debes seguir.
Pones a 0 la variable maximo.
Disparas el trigger.
Comienzas a muestrear con analogRead(pin)
Si el valor es mayor al anterior lo cambias... y mantienes un flag en 1 porque asciende. Cuando el valor anterior sea menor que el máximo entonces pones el flag en 0 y das por terminada la búsqueda del Vpp máximo.