Created
June 2, 2016 19:33
-
-
Save ubi-gists/01bd4d6e73deac618bebe2c55bb4007b to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
Ejemplo para Dispensador de comidas para mascotas | |
Este codigo es para controlar el servo | |
del dispensador de alimentos para mascotas | |
Arduino pins: | |
5V --> cable rojo del servo | |
GND --> cable negro del servo | |
9 --> cable blanco o amarillo del servo | |
Created 22 Octubre 2014 | |
by Mateo Vélez - Metavix | |
Codigo publico. | |
*/ | |
#include <WiFi.h> | |
#include <Ubidots.h> | |
#include <Servo.h> | |
Servo myservo; //crea el objeto para iniciar la libreria servo | |
int pos = 170; //valor inicial del servo, coloca como valor por defecto el de arriba | |
char ssid[] = "Atom House Medellin"; //nombre de tu red WiFi | |
char pass[] = "atommed2014"; //contraseña de tu red WiFi | |
String api = "5ca9b10038e49e0492c6794f9043f0918ddcbd26"; //tu numero de API Key | |
String idvari = "53beeca07625420bde83ce29"; //el numero de tu variable | |
Ubidots ubiclient(api); //crea el objeto para iniciar la libreria de Ubidots | |
String readvalue = ""; | |
boolean response; | |
int valor_sensor = 0; | |
int status = WL_IDLE_STATUS; | |
void setup() | |
{ | |
myservo.attach(9); | |
myservo.write(170); | |
Serial.begin(9600); //velocidad del serial 9600 baudios | |
response = ubiclient.WifiCon(ssid, pass, status, api); //con esta funcion se inicia la transmision a la API de Ubidots | |
myservo.write(170); | |
} | |
void loop() | |
{ | |
pinMode(A0, OUTPUT); | |
readvalue = ubiclient.get_value(idvari); | |
Serial.println(readvalue); | |
if(readvalue == "1.0") | |
{ | |
if (pos==0) | |
{ | |
for(pos = 0; pos <= 170; pos += 1) //el servo se mueve de 0 a 170 grados | |
{ //desplazamiento de a un grado | |
myservo.write(pos); //le envia el angulo al servo a traves de la variable 'pos' | |
delay(5); //espera 5 ms | |
} | |
} | |
else | |
{ | |
myservo.write(170); | |
} | |
} | |
else if (readvalue == "0.0") | |
{ | |
if(pos==170) | |
{ | |
for(pos = 170; pos>=0; pos-=1) | |
{ | |
myservo.write(pos); | |
delay(5); | |
} | |
} | |
else | |
{ | |
myservo.write(0); | |
} | |
} | |
else | |
{ | |
myservo.write(170); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment