PRACTICA DIRIGIDA 1
PRACTICA DIRIGIDA 1
Programación de la librería de la Circuit Playground en el IDE de Arduino
En esta primera parte de la practica dirigida hay que observar algunas de las pautas para programar en Arduino.
Algunos datos importantes al comenzar a programar con el software Arduino.
Algunos datos importantes al comenzar a programar con el software Arduino.
- La programación se desarrolla en módulos que realizan un proceso especifico.
- Se abre el programa.
- Se debe verificar que el Adafruit Circuit Playground este configurado, y en herramientas la placa y el puerto relacionado al mismo.
- Cada vez que iniciemos un programa nuevo debemos incluir la librería del Adafruit Circuit playground.
- Se debe programar 2 procedimientos
El Loop para ejecutar y definir los procedimientos.
Mostrare la practica que hice con sus comentarios que aparecen en la programación.
Aquí se programa un NeoPixel y y la bocina o parlante con frecuencia y tiempo.
#include <Adafruit_CircuitPlayground.h>
#include <Adafruit_Circuit_Playground.h>
void setup() {
CircuitPlayground.begin(); //inicializar tarjeta CircuitPlayground
Serial.begin(9600); //para monitor serial
}
void loop() {
CircuitPlayground.setPixelColor(0,255,0,255); // color morado con toda la intensidad
CircuitPlayground.playTone(100,2000); // frecuencia y tiempo
delay(1000);
}
Encontre un comando para apagar neopixeles
clearPixels
Puede apagar rápidamente todos los LED conCircuitPlayground.clearPixels()
tomado de:
https://learn.adafruit.com/circuit-playground-lesson-number-0/neopixels
#include <Adafruit_CircuitPlayground.h>
#include <Adafruit_Circuit_Playground.h>
void setup() {
CircuitPlayground.begin(); //inicializar tarjeta CircuitPlayground
Serial.begin(9600); //para monitor serial
}
void loop() {
CircuitPlayground.setPixelColor(7,255,0,0); //se activa el NeoPixel va de (0 - 9) CircuitPlayground.setPixelColor(p,r,g,b); y su maximo brillo que va de 0 a 255
CircuitPlayground.playTone(100,2000,1); //se configura el sonido (frecuencia,tiempo,esperapor el tiempo señalado)
delay(1000); // un segundo se espresa en milisegundos
CircuitPlayground.setPixelColor(7,0,0,0);
delay(1000);
CircuitPlayground.setPixelColor(0,0,0,255); //se activa el NeoPixel va de (0 - 9) CircuitPlayground.setPixelColor(p,r,g,b); y su maximo brillo que va de 0 a 255
CircuitPlayground.playTone(50,1000,1); //se configura el sonido (frecuencia,tiempo,esperapor el tiempo señalado)
delay(1000); // un segundo se espresa en milisegundos
CircuitPlayground.setPixelColor(0,0,0,0);
delay(1000);
}
Resultado:
Programando sensores de: contacto, interruptor, sonido, luz, temperatura
A continuación mostrare el código que se usa para programar en Arduino, usando la herramienta Adafruit.Circuit Playground, usando la libreria Adafruit Circuit Playground
Sensores Digitales los botones o interruptor, son aquellos que nos reportan valores lógicos, verdadero o falso. El interruptor que nos indica si esta a la derecha o a la izquierda o si esta presionado o no en el caso de los botones.
Programación del Sensor de Contacto
A continuación veremos la programación y los comentarios de cada una de las instrucciones después de colocar 2 //
#include <Adafruit_CircuitPlayground.h> // incluimos la libreria Circuit Playground
#include <Adafruit_Circuit_Playground.h>
////Programando sensor de contacto
void setup() { // inicialización
}
void loop() //ejecución
{
sensor_botones_contacto(); // para ver la ejecución del procedimiento debemos llamarlo en el loop
// copiamos el nombre del procedimiento sin espacios, parentisis () punto y coma para cerrar
// copiamos el nombre del procedimiento sin espacios, parentisis () punto y coma para cerrar
}
void sensor_botones_contacto() // //para crea un procedimiento escribimos la palabra void y el nombre del procedimiento
{
int valor_botonderecho=CircuitPlayground.rightButton(); //se declara las variable de valor entero
int valor_botonizquierdo=CircuitPlayground.leftButton(); //se declara las variable de valor entero
Serial.print ("valor del botón derecho: ");
delay(500);
Serial.println(valor_botonderecho);
delay(500);
Serial.print ("valor del botón izquierdo: ");
delay(500);
Serial.println(valor_botonizquierdo); //luego se imprime en el monitor serial cada variable
delay(500);
}
Luego de escribir las instrucciones compilamos el archivo y lo subimos a la Circuit Playgroound. podemos observar el reporte en el monitor serial.
PROGRAMACION DEL SENSOR INTERRUPTOR
Luego de escribir las instrucciones compilamos el archivo y lo subimos a la Circuit Playgroound. podemos observar el reporte en el monitor serial.
PROGRAMACION DEL SENSOR INTERRUPTOR
#include <Adafruit_CircuitPlayground.h>
#include <Adafruit_Circuit_Playground.h>
void setup()
{
Serial.begin (9600); // incluimos el monitor serial
}
void loop() // se crea un procedimiento para cada sensor
{
sensor_interruptor();
}
////Procedimiento para el interruptor
void sensor_interruptor() // para crea un procedimiento escribimos la palabra void y el nombre del procedimiento
{
int valor_interruptor = CircuitPlayground.slideSwitch(); // se declara las variable de valor entero
if (valor_interruptor ==0) // se usa una condicional para ver si esta al lado derecho o al izquierdo
// el valor de comparación de la condicional va entre ( )
// y cada segmento de la condional se abre y cierra con llaves
{
Serial.print("Posición del interruptor: derecho");
Serial.println(); //luego se imprime en el monitor serial cada variable
delay(500);
}
else
{
Serial.print("Posición del interruptor: izquierdo");
Serial.println();
delay(500); // tiempo de espera
}
}
Luego de escribir las instrucciones compilamos el archivo y lo subimos a la Circuit Playgroound, podemos observar el reporte del sensor en el monitor serial.
Sensores Análogos son aquellos que reportan valores entre o y 1023 que corresponden a distintos niveles que capturan del ambiente según lo que ellos miden como el sensor de luz, temperatura, sonido. En estos casos siempre vamos a reportar al monitor serial el valor que esta capturando el sensor para conocer los valores que reporta.
A continuación se mostrara la programación en forma de texto para su comprobación del sensor de Luz.
PROGRAMACIÓN DEL SENSOR DE LUZ
#include <Adafruit_CircuitPlayground.h> // incluimos la libreria Circuit Playground
#include <Adafruit_Circuit_Playground.h>
void setup()
{
Serial.begin (9600); //
}
void loop()
{
sensor_luz(); //se llama el procedimiento en loop
}
////Procedimiento para sensor de luz
void sensor_luz() //creación del procedimiento sensor Análogo de LUZ
{
int valor_luz = CircuitPlayground.lightSensor(); // se declara las variable local de valor entero
Serial.print("Valor detectado de luz: ");
Serial.println(valor_luz); ////luego se imprime en el monitor serial cada variable
delay(500);
}
A continuación se mostrara la programación en forma de texto para su comprobación del sensor de sonido.
PROGRAMANDO SENSOR DE SONIDO
#include <Adafruit_CircuitPlayground.h>
#include <Adafruit_Circuit_Playground.h>
void setup()
{
Serial.begin (9600);
}
void loop()
{
sensor_sonido();
}
////Procedimiento para sensor de sonido
void sensor_sonido()
{
int valor_sonido=CircuitPlayground.soundSensor();
Serial.print("valor detectado de sonido: ");
Serial.println(valor_sonido);
delay(500);
}
A continuación se mostrara la programación en forma de texto para su comprobación del sensor de Temperatura.
PROGRAMANDO SENSOR DE TEMPERATURA
#include <Adafruit_CircuitPlayground.h>
#include <Adafruit_Circuit_Playground.h>
void setup()
{
Serial.begin(9600);
}
void loop()
{
sensor_temperatura();
}
////Procedimiento para sensor de temperatura
void sensor_temperatura()
{
int valor_temperatura=CircuitPlayground.temperature();
Serial.print("valor detectado de temperatura: ");
Serial.println (valor_temperatura);
delay(500);
RETO 1
Enciende un neopixel cuando la Circuit Playground se incline a la derecha.
PROGRAMACION DEL RETO 1
#include <Adafruit_CircuitPlayground.h>
#include <Adafruit_Circuit_Playground.h>
void setup() {
CircuitPlayground.begin(); //inicializar tarjeta CircuitPlayground
Serial.begin(9600); //para monitor serial
}
///programndo NeoPixel que al inclinarlo hacia la derecha seencienda
void loop() {
inclinar_derecha();
}
void inclinar_derecha()
{
int inclinard = CircuitPlayground.motionX(); // se delara la variable
if (inclinard>1) //condicional
{
CircuitPlayground.setPixelColor(1,0,255,0); // programando neopixel # 1 con el color y la intensidad maxima del color,
delay(3000);
Serial.print( "valor de inclinard: ");
Serial.println(inclinard);
}
else
{
CircuitPlayground.setPixelColor(1,0,0,0); // el neopixel en 0
delay(500);
}
}
Comentarios
Publicar un comentario