Los ejemplos de sensores demuestran cómo leer datos del entorno físico y reaccionar a ellos. Cod-ES incluye soporte nativo para sensores ultrasónicos HC-SR04 mediante el móduloDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/FrancoMartino/cod-es/llms.txt
Use this file to discover all available pages before exploring further.
Ultrasonico, y permite leer cualquier sensor analógico con leerPin().
Golpe
Detecta impactos físicos mediante un sensor de golpe analógico conectado al pin A0. Cuando la lectura supera un umbral de sensibilidad, el LED interno cambia de estado y se envía un mensaje por el puerto serie.Conecta el sensor de golpe (también llamado sensor de vibración o knock sensor) al pin A0. El pin de señal del sensor va a A0, VCC a 5 V y GND a GND.
Golpe.ino
Diagrama de conexión
Explicación línea por línea
#define sensibilidad 100
Define el umbral mínimo de lectura para considerar que hubo un golpe. El valor analógico del pin A0 va de 0 a 1023. Reducir este valor hace el sensor más sensible; aumentarlo lo hace más selectivo.
entero estadoLED = BAJO
Variable que almacena el estado actual del LED. Alterna entre
ALTO y BAJO con cada golpe detectado, actuando como un interruptor de encendido/apagado.leerPin(pinSensor, ANALOGICO)
Llama a
analogRead(A0). El argumento ANALOGICO indica lectura analógica (devuelve un valor entre 0 y 1023).si lecturaSensor >= sensibilidad entonces
Equivale a
if (lecturaSensor >= sensibilidad) {. Evalúa si la lectura supera el umbral definido.estadoLED = no estadoLED
El operador
no es equivalente a ! (negación lógica). Alterna el valor de estadoLED: si era ALTO pasa a BAJO, y viceversa.Ajuste de sensibilidad
Ultrasónico
Mide la distancia a un objeto en centímetros usando un sensor ultrasónico HC-SR04. La distancia se envía por el puerto serie cada segundo.Conecta el sensor HC-SR04 de la siguiente manera: TRIG al pin 9, ECHO al pin 10, VCC a 5 V y GND a GND.
Ultrasonico.ino
Diagrama de conexión del HC-SR04
Explicación línea por línea
#define INCLUIR_ULTRASONICO
Activa el módulo
Ultrasonico de Cod-ES. Debe declararse antes de #include <Cod-ES.h> para que la clase Ultrasonico y su método obtenerDistancia() estén disponibles.Ultrasonico sensor(trigPin, echoPin)
Crea un objeto de la clase
Ultrasonico asociado a los pines TRIG y ECHO definidos. A partir de este objeto se realizan todas las mediciones.flotante distancia = sensor.obtenerDistancia()
Llama al método
obtenerDistancia() del objeto sensor. Devuelve la distancia en centímetros como número de punto flotante (float). flotante es el equivalente en Cod-ES de float.Serie.imprimir() y Serie.imprimirEnNuevaLinea()
Serie.imprimir() equivale a Serial.print() (sin salto de línea). Serie.imprimirEnNuevaLinea() equivale a Serial.println() (con salto de línea). Se combinan para mostrar Distancia: 23.50 cm en una sola línea.Cómo funciona el sensor HC-SR04
El sensor ultrasónico envía un pulso de sonido de alta frecuencia (40 kHz) a través del transductor TRIG y escucha el eco en el transductor ECHO. La distancia se calcula con la fórmula:Ultrasonico de Cod-ES maneja esta lógica internamente. El rango de medición del HC-SR04 es de 2 cm a 400 cm, con una precisión de ±3 mm.
Referencia rápida de palabras clave usadas
| Cod-ES | Arduino estándar | Descripción |
|---|---|---|
leerPin(pin, ANALOGICO) | analogRead(pin) | Lee el valor analógico de un pin (0–1023) |
salidaDigital(pin, valor) | digitalWrite(pin, valor) | Escribe un valor digital en un pin |
flotante | float | Tipo de dato de punto flotante |
entero | int | Tipo de dato entero |
si … entonces | if ( … ) { | Estructura condicional |
cerrar | } | Cierre de bloque |
no | ! | Operador lógico NOT |
>= | >= | Operador mayor o igual (sin cambio en Cod-ES) |
Serie.imprimir(x) | Serial.print(x) | Imprime sin salto de línea |
Serie.imprimirEnNuevaLinea(x) | Serial.println(x) | Imprime con salto de línea |
esperar(t, SEGUNDOS) | delay(t * 1000) | Pausa en segundos |
ANALOGICO | — | Argumento de modo para leerPin() |
BAJO | LOW | Nivel lógico bajo |
ALTO | HIGH | Nivel lógico alto |