Código Arduino
Incluye la librería Servo
#include <Servo.h>
Define los pines Tirg y Echo del sensor ultrasónico
const int trigPin = 10;
const int echoPin = 11;
Variables para la duración y la distancia
larga duración;
distancia int;
int spk=4;
int frecuencia=1240.32;
Servo myServo; Crea un objeto servo para controlar el servomotor
void configuración() {
pinMode(trigPin, SALIDA); Establece el trigPin como una salida
pinMode(echoPin, ENTRADA); Establece el echoPin como entrada
[Link](9600);
[Link](12); Define en qué pin está conectado el servomotor
void bucle() {
Gira el servomotor de 15 a 165 grados
for(int i=15; i<=165; i++){
[Link](i);
retraso(30);
distance = calculateDistance();// Llama a una función para calcular la distancia medida por el
sensor ultrasónico para cada dhnññ
[Link](i); Envía el grado actual al puerto serie
[Link](","); Envía el carácter de adición justo al lado del valor anterior necesario más
adelante en el IDE de procesamiento para la indexación
if(distancia==5)
{
tono(spk,frecuencia,100);
if(distancia<4)
tono (spk,1046.72,50);
Repite las líneas anteriores de 165 a 15 grados
for(int i=165; I>15; i--){
[Link](i);
retraso(30);
distancia = calcularDistancia();
[Link](i);
[Link](",");
[Link](distancia);
[Link](".");
if(distancia==5)
tono(spk,frecuencia,100);
if(distancia<4)
tono (spk,1046.72,50);
Función para calcular la distancia medida por el sensor ultrasónico
int calculateDistance(){
digitalWrite(trigPin, LOW);
retarMicrosegundos(2);
Establece el trigPin en estado ALTO durante 10 microsegundos
digitalWrite(trigPin, ALTO);
retarMicrosegundos(10);
digitalWrite(trigPin, LOW);
duración = pulso(echoPin, ALTO); Lee el echoPin, devuelve el tiempo de viaje de la onda sonora
en microsegundos
distancia= duración*0.034/2;
distancia de regreso;