jueves, 28 de marzo de 2019

SERVOMOTOR CONTROLADO CON TECLADO

#include <Servo.h>
Servo miservo;
int pos=0;
int TECLA=0;
void setup() {
  Serial.begin(9600);
  miservo.attach(9);
  pos=0;
}
void loop() {
    miservo.write(pos);
    delay(50);
    Serial.println(pos);
    if (Serial.available() > 0) {  //esto da algo de error
       delay(100);
       TECLA=Serial.read();
       switch (TECLA) {
        case 49:
             pos=45;
        break;
        case 50:
            pos=90;
        break;
        case 51:
            pos=135;
        break;
        defautl:
            pos=0;
       }
       }
}



Primero incluimos un servomotor y le llamamos miservo,creamos una variable de posición y la igualamos a la posición 0 y creamos  otra variable de tecla y la igualamos a 0 . Con el void setup le decimos que conecte con el ordenador a una velocidad de 9600 bytes por segundo, que el servomotor está conectado en la posición 9 y que se vaya a la posición 0. Con el void loop le decimos que escriba la posición del miservo, que espere 50 ms y que después imprima la posición. Después con el if le decimos que si el numero de bytes es mayor que cero que espere 100ms. Si el valor de la tecla es 49, que se vaya a la posición 45 y que pare(break) y después que vuelva a la posición 0. Si el valor de la tecla es 50, que se vaya a la posición 90 y que pare y vuelva a la posición 0 y si el valor de la tecla es 51, que vaya a la posición 135 , que pare y que vuelva a la posición 0.

SERVOMOTOR CONTROLADO CON UN POTENCIOMETRO

#include <Servo.h>
int val;
Servo servo;
int pot = 3;  //entrada analógica del potenciometro
void setup() {
  Serial.begin(9600);
  servo.attach(9);
}
void loop() {
  int valorpot= analogRead(pot);
  val=map(valorpot,0,1023,0,180);
  Serial.print(val);
  servo.write(val);
  delay(100);
}


Primero incluimos un servomotor y creamos una variable que se llame val. Creamos otra variable para el potenciometro cuya entrada analógica es el pin 3. Después, con el void setup le decimos que comience la comunicación con el ordenador  a 9600 bytes por segundo y que el servomotor está conectado al pin 9. Con el void loop, le decimos que lea el valor del potenciometro,después le decimos que relacione el valor del potenciometro como una regla de tres, si 0 es 0, 1023 es 180. Después con Serial print va a escribir la posición donde esté y también lo escribirá en el servomotor. Finalmemte le decimos que se espere 100ms.

viernes, 22 de marzo de 2019

BARRA DE APARCAMIENTO

#include <Servo.h>
Servo miservo;   
int pos = 0; 
void setup(){
  miservo.attach(9);
}
void loop() {

for (pos=0; pos<=90; pos+=90)  {
  miservo.write(pos);
  delay(3000);   
}
pos=0;
}


Primero indicamos que hay un Servomotor,después llamamos al servomotor "miservo" y le indicamos que está en la posición 0. Con void setup le decimos que miservo está conectado en el pin 9. Con el void loop le decimos que vaya desde la posición 0 hasta la 90 aumentando de 90 en 90. Cuando esté en la posición 90, le decimos que espere 3 segundos y después vuelva a la posición 0.

viernes, 15 de marzo de 2019

LIMPIAPARABRISAS

#include <Servo.h>   
#define pinServo 9   //
Servo miservo;       
int pos=0;                 
void setup() {
    miservo.attach(pinServo);     
}
void loop() {
    for (pos=0; pos<=170; pos=pos+130); {
       miservo.write(pos);                   
       delay(800);
    }
    for (pos=170; pos>=10; pos=pos-0.01); {
       miservo.write(pos);                 
       delay(500);
    }
}



Primero indicamos que hay un servomotor,después le indicamos que está conectado en el pin9 y le ponemos el nombre de "miservo". A continuación, le indicamos que siempre lea el pinServo. Con el void loop le decimos que primero empieze desde la posición 0 y llegue desde hasta la posición del ángulo menor o igual que 170 aumentando  la posición de 130 en 130 ,después de llegar a 170 le indicamos que espere 0,8 segundos.Después, con el siguiente for indicamos  que cuanto este situado en la posición170 vaya hasta una posición mayor o igual que 10 bajando de 0,01 en 0,01 y finalmente cuando llegue a esa posición espere 0,5 segundos y vuelva a empezar

calendario