Paso 5: Código de ARDUINO
Realmente no tiene sentido para mi código postal porque puede usar diferentes pernos y hardware diferente, así que aquí tiene un tutorial que hacer:
En primer lugar, descargar e instalar la librería servo.h .
También en el guión, no olvide incluir la biblioteca llamando al #include al principio del script.
Hacer un slider de lapso de tiempo por ejemplo puede utilizar analogRead() leer una olla conectada a un pin analógico.
El INs analógica Utilice 10 BIT conversión A/D, que es 1024 pasos.
Los servos lectura 0-180 grados.
El intervall utiliza milisegundos vs 1024 pasos de las ollas.
Convierte la función de "mapa".
Deja para asumir que se trata del variable "tiempo" por lo que el código sería:
tiempo = mapa(tiempo, 0, 1023, 1000, 10000); / / por lo que cualquier valor entre 0-1023 "tiempo" tenía antes, es convertida a un valor donde 0 representa 1 segundos y 180 representan 10 segundos
Así que empezamos con:
Zaxis servo; / / que define a la variable "zaxis" como un Servo usando la biblioteca
int pos = 90; / / define la variable "pos", es un número entero, que no significa decimales,
/ / Variable dirá el servo en su posición por defecto en el arranque, puede ser un número de 0-180
un timelapse con retardo de 5 segundos para 180 grados sería:
para (pos = 0; pos < = 180; pos += 1) / / incrementa las variable pos hasta que llegue a 180
{
Zaxis. escribir (pos);
retardo de (tiempo); / / que es nuestra variable de retardo también conocido como pote
}
Fácil como eso.
Si esto fuera un ESC, todo lo que tienes que hacer es, tener en cuenta que los grados significan adelante velocidad atrás de la velocidad en este caso.
Permite asumir el objeto servo motor se llama "motorspeed", entonces la secuencia de comandos sería similar
{
motorspeed.Write(70); //m70 de 90 grados de disponibles en velocidad de avance, 70/90 * 100 = 77,8 por ciento potencia.
Delay(200); / / cuánto tiempo el motor tiene la velocidad superior, en milisegundos
motorspeed.Write(0); / / detener el motor.
Delay(Time); / / esperar a que el resto del tiempo
}
Por supuesto necesita un botón final para hacerla detener :)
Nunca hice esto y también es no implementado en mi código. Lapso de tiempo tanto tiempo y tan predecibles que nunca sentí la necesidad de.
Por otro lado, si usted quiere hacer en ubicaciones remotas o programado por otro dispositivo, para iniciar a las cuatro de la mañana quieres una manera de detener una vez llega al final de la pista.