lunes, 27 de abril de 2015
Generar tonos con un buzzer
Cosas de Mecatrónica y Tienda de Robótica.
Programa que hace uso de un buzzer (chicharra) y un potenciómetro, la idea es generar diversos tonos
en el buzzer a partir del estado análogo del potenciómetro. Además se hace uso de la función tone que es muy útil para generar diversas melodías.
*/
//--------------------------------------------------
//Declara puertos de entradas y salidas y variables
//--------------------------------------------------
int buzzer = 9; //Declara Pin del buzzer
int tono = 0; //Declara Pin del potenciómetro
//------------------------------------
//Funcion principal
//------------------------------------
void setup() // Se ejecuta cada vez que el Arduino se inicia
{
// No se configuran parámetros inciales, pero se debe colocar el encabezado de la función setup()
}
//------------------------------------
//Funcion ciclicla
//------------------------------------
void loop() // Esta funcion se mantiene ejecutando
{ // cuando este energizado el Arduino. Variable entera donde se almacena el valor del potenciómetro
int sensor = analogRead(tono);
//Variable donde se escala la frecuencia de 100 a 5000Hz
int frecuencia = map(sensor,0,1023,100,5000);
//Variable entera para guardar el tiempo deseado en ms
int duracion = 250;
//Funcion tone(), que recibe:
// 1ra posición: Pin del elemento sonoro
// 2da posición: Frecuencia deseada en Hz
// 3ra posición: Duración del tono
tone(buzzer, frecuencia, duracion);
//Retardo
delay(100);
}
//Fin programa
Programa que hace uso de un buzzer (chicharra) y un potenciómetro, la idea es generar diversos tonos
en el buzzer a partir del estado análogo del potenciómetro. Además se hace uso de la función tone que es muy útil para generar diversas melodías.
*/
//--------------------------------------------------
//Declara puertos de entradas y salidas y variables
//--------------------------------------------------
int buzzer = 9; //Declara Pin del buzzer
int tono = 0; //Declara Pin del potenciómetro
//------------------------------------
//Funcion principal
//------------------------------------
void setup() // Se ejecuta cada vez que el Arduino se inicia
{
// No se configuran parámetros inciales, pero se debe colocar el encabezado de la función setup()
}
//------------------------------------
//Funcion ciclicla
//------------------------------------
void loop() // Esta funcion se mantiene ejecutando
{ // cuando este energizado el Arduino. Variable entera donde se almacena el valor del potenciómetro
int sensor = analogRead(tono);
//Variable donde se escala la frecuencia de 100 a 5000Hz
int frecuencia = map(sensor,0,1023,100,5000);
//Variable entera para guardar el tiempo deseado en ms
int duracion = 250;
//Funcion tone(), que recibe:
// 1ra posición: Pin del elemento sonoro
// 2da posición: Frecuencia deseada en Hz
// 3ra posición: Duración del tono
tone(buzzer, frecuencia, duracion);
//Retardo
delay(100);
}
//Fin programa
Práctica 3.4.2: simular el control de la velocidad de un limpiaparabrisas con un servomotor
Partiendo del sketch del ejemplo sweep, realiza las modificaciones necesarias para controlar la velocidad con que se mueve
// Sweep
// by BARRAGAN
// This example code is in the public domain.
#include
Servo myservo; // create servo object to control a servo
// a maximum of eight servo objects can be created
int pos = 0; // variable to store the servo position
void setup()
{
myservo.attach(9); // attaches the servo on pin 9 to the servo object
}
void loop()
{
for(pos = 0; pos < 180; pos += 1) // goes from 0 degrees to 180 degrees
{ // in steps of 1 degree
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(15); // waits 15ms for the servo to reach the position
}
for(pos = 180; pos>=1; pos-=1) // goes from 180 degrees to 0 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(15); // waits 15ms for the servo to reach the position
}
}
// Sweep
// by BARRAGAN
// This example code is in the public domain.
#include
Servo myservo; // create servo object to control a servo
// a maximum of eight servo objects can be created
int pos = 0; // variable to store the servo position
void setup()
{
myservo.attach(9); // attaches the servo on pin 9 to the servo object
}
void loop()
{
for(pos = 0; pos < 180; pos += 1) // goes from 0 degrees to 180 degrees
{ // in steps of 1 degree
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(15); // waits 15ms for the servo to reach the position
}
for(pos = 180; pos>=1; pos-=1) // goes from 180 degrees to 0 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(15); // waits 15ms for the servo to reach the position
}
}
martes, 21 de abril de 2015
Examen 1º de la tercera evaluación de electrónica:
Examen 1º de la tercera
evaluación de electrónica:
Teoría: cuestiones sobre el transistor y fuentes
de alimentación conmutada en primario.
Práctica: En un programa basado en
la plataforma arduino, que tomando
valores de una entrada analógica obtenidos a través de un sensor (que mide alguna
magnitud física). Activa tres salidas diferentes según los valores de entrada:
valores por debajo del mínimo, valores entre el máximo y el mínimo, o valores
superiores al máximo. La salida podrían ser tres leds o un RGB por ejemplo.
Problemas: Resolución de
problemas básicos de un transistor BJT con emisor común y trabajando en la zona
activa.
Suscribirse a:
Entradas (Atom)