Está en la página 1de 17

Nombres: Yeison Fernando Gallo Torres y David Alejandro Achury

Grado: 10-2

INFORME DE ELECTRONICA
T2 T3 T4 T5 T6 T7 T8 T9

Objetivos:
Adquirir conocimiento sobre la programación y utilización de arduino genuino uno.
Materiales:
Cables, leds, potenciómetro, Arduino uno, pulsadores, resistencia.

EJERCICIO 1
Una Maquina cortadora de papel necesita un maneja de dos botones para poder
funcionar, cuestión de que, el funcionario de la maquina mantenga las manos
ocupadas para evitar accidentes.
Comando
&& (y)

CODIGO
int pulsador = 2; //configuración de las variables//
int pulsador2 = 3;
int led = 13;
void setup() { //configuración de los pines//
pinMode(pulsador,INPUT); //pulsador 1 y 2 serán las entradas//
pinMode(pulsador2,INPUT);
pinMode(led,OUTPUT); //led será la salida de alimentación//
}

void loop() { //configuracion de las condiciones//


if(digitalRead(pulsador)==LOW && digitalRead(pulsador2)==LOW) {
//si el pulsador 1 y 2 se oprimen al mismo tiempo el led enciende//

digitalWrite(led,HIGH);

}else{ //caso contrario mantiene apagado//


digitalWrite(led,LOW);
}
}
__________________________________________________________________
EJERCICIO 2
Tu padre te pide que pongas luces en la escalera, las cuales tengas o cumplas con
las siguientes funciones: las luces de las escaleras puedan prenderse desde puntos
distintos de la casa y que también se puedan apagar

CODIGO
int pulsadorA=2; //configuracion de las variables//
int pulsadorB=3;
int led=13;
void setup() //configuracion de los pines digitales//
{
pinMode(pulsadorA,INPUT);
pinMode(pulsadorB,INPUT);
pinMode(led,OUTPUT);
}
void loop() //configuracion de las condiciones//
{
if (digitalRead(pulsadorA)==LOW) //cuando se pulsa el pulsador A el led enciende//
{
digitalWrite(led,HIGH);
}
else { //caso contrario el led mantiene apagado//
digitalWrite(led,LOW);
}
if (digitalRead(pulsadorB)==HIGH) //la misma condición que la anterior solo con
el B//
{
digitalWrite(led,LOW);
}
else{
digitalWrite(led,HIGH);
}
}

__________________________________________________________________

TALLER 3

EJERCICIO 1
En este ejercicio hay que hacer dos sensores para una empresa de botellas de
gaseosa, el primer sensor indicara que la botella se ha llenado, el segundo sensor
indicara que la gaseosa se ha tapado encenderá un led y indicara que se ha
empacado.

CODIGO

int boton1 = 2;
int boton2 = 3;
int led = 13;

void setup() { //
pinMode(boton1,INPUT);
pinMode(boton2,INPUT);
pinMode(led,OUTPUT);
Serial.begin(9600);
}

void loop() {

int estado1 = digitalRead(boton1);


int estado2 = digitalRead(boton2);
if(estado1==LOW){
Serial.println("gaseosa llena");
digitalWrite(led,LOW); }
delay(100);
if(estado2==LOW){
digitalWrite(led,HIGH);
Serial.println("gaseosa tapada");
delay(2000); //espere 2 segundos//
Serial.println("gaseosa empacada");
digitalWrite(led,LOW); //led apaga//
}
delay(100);
}

EJERCICIO 2
Consiste en crear una variable numérica que constantemente debe aumentar de 20
en 20 sin reiniciar hasta que se cumpla una condición que permita su reinicio, esta
variable se activa con un pulsador (el valor se mostrara en el monitor de arduino).
Luego de crear esta variable un pulsador 2 va hacer que se escriba un texto diciendo
hola mundo y encenderá un led intermitentemente. Y por último para reiniciar la
variable se deben presionar los dos a la vez.
Comandos
A +=X; (donde X es el numero que sumara a la variable A constantemente)
&& (y)
CODIGO

int b1 =2;
int b2 =3;
int led =13;
int A = 0;

void setup() {
pinMode(b1,INPUT);
pinMode(b2,INPUT);
pinMode(led,OUTPUT);
Serial.begin(9600);

void loop() {
int lectura = digitalRead(b1);
int lectura2 = digitalRead(b2);
if(lectura==LOW){
A +=20;
Serial.println(A);
}else{
Serial.println();
}
delay(1000);
if(lectura2==LOW){
A = Serial.println("HOLA MUNDO");
digitalWrite(led,HIGH);
delay(1000);
digitalWrite(led,LOW);
delay(1000);
}else{
Serial.println();
}

if(lectura==LOW && lectura2==LOW) {


A=0;
digitalWrite(led,LOW);
}else{
Serial.println();
}
}
TALLER 4

EJERCICIO 1
Es igual que en el ejemplo solo que en este caso vamos a cambiar la amplitud de la
lectura, ya no será de 0 a 1023 sino de 0 a 10.
Comando
X=map(X,0,1023,0,A); //donde X será la variable de lectura analógica y A será el
valor de la amplitud//

CODIGO

void setup() {
Serial.begin(9600);
}

void loop() {
int valor = analogRead(A5);
valor=map(valor,0,1023,0,10);
Serial.println(valor);
delay(10);
}

EJERCICIO 2
En este ejercicio se nos pide crear una caja fuerte y una llave. La caja fuerte tendrá
un valor analógico entre 0 y 1023 y la llave debe adivinar cuál número es el correcto
para abrir la caja. También debemos recordar que si no se ha logrado abrir la caja
el serial deberá poner un letrero que diga “sigue intentando” y si logras abrirla debe
decir “adivinaste el número”
Comandos

>= mayor e igual


<= menor e igual
&& (y)

CODIGO

int llave = 2;
void setup() {
pinMode(llave, INPUT);
Serial.begin(9600);
}

void loop() {
int value = analogRead(A5);
if(digitalRead(llave)==LOW && value>=500 && value<=600){
Serial.println("adivinaste el numero");
delay(100);
}else{
Serial.println("sigue intentando");
delay(100);
}
}
________________________________________________________________
TALLER 5

EJERCICIO 1
Este ejercicio consta de unos avisos luminosos simulados por leds con el Arduino.
Son 3 leds, si se escribe la letra A los tres encienden, si se escribe la letra B los 3
encienden intermitentemente uno por uno como si fuera una secuencia 1-2-3, si se
escribe la letra c los 3 se apagan.

CODIGO:
int led1 = 2;
int led2 = 3;
int led3 = 4;
boolean repetidor=false;
void setup(){
pinMode(led1,OUTPUT);
pinMode(led2,OUTPUT);
pinMode(led3,OUTPUT);
Serial.begin(9600);
}
char B;
void loop(){
char Dato = Serial.read();
if(Dato=='A'){
repetidor=false;
digitalWrite(led1,HIGH);
digitalWrite(led2,HIGH);
digitalWrite(led3,HIGH);
Serial.println("A");
}

if(Dato=='B'){
repetidor=true;
Serial.println("B");
}
if(repetidor==true){
digitalWrite(led1,HIGH);
delay(500);
digitalWrite(led1,LOW);
delay(500);
digitalWrite(led2,HIGH);
delay(500);
digitalWrite(led2,LOW);
delay(500);
digitalWrite(led3,HIGH);
delay(500);
digitalWrite(led3,LOW);
delay(500);
}
if(Dato=='C'){
repetidor=false;
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
Serial.println("C");
}
}

EJERCICIO 2:
El jardín de tu abuelo tiene tres regaderas el quiere poder prenderlas desde su
casa, desde un computador que el pueda escribir un código y prender las desde la
casa. Los siguientes códigos serán: 100(solo prendera la regadera 1); 110( prendera
la regadera 1 y 2); 111( se prenderán las tres regaderas); 001( se prendera solo el
numero 3); 000( se apagran todos).
Comando secundario: ‘/n’ (ósea que tome hasta la última línea el dato recibido)
Funcion secundaria: while (repita infinitamente)

CODIGO:

String s="";
String inputString = ""; +
bool stringComplete = false;
String a100="100";
String a010="010";
String a001="001";
String a110="110";
String a011="011";
String a101="101";
String a000="000";
String a111="111";
void setup() {
Serial.begin(9600);
pinMode(led1,OUTPUT);
pinMode(led2,OUTPUT);
pinMode(led3,OUTPUT);
s.reserve(200);
}
void loop() {
if(inputString==a100){
digitalWrite(led1,HIGH);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
}
if(inputString==a010){
digitalWrite(led1,LOW);
digitalWrite(led2,HIGH);
digitalWrite(led3,LOW);
}
if(inputString==a001){
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,HIGH);
}

if(inputString==a110){
digitalWrite(led1,HIGH);
digitalWrite(led2,HIGH);
digitalWrite(led3,LOW);
}
if(inputString==a011){
digitalWrite(led1,LOW);
digitalWrite(led2,HIGH);
digitalWrite(led3,HIGH);
}
if(inputString==a101){
digitalWrite(led1,HIGH);
digitalWrite(led2,LOW);
digitalWrite(led3,HIGH);
}
if(inputString==a000){
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
}
if(inputString==a111){
digitalWrite(led1,HIGH);
digitalWrite(led2,HIGH);
digitalWrite(led3,HIGH);
}
if(stringComplete) {
Serial.println(inputString);
inputString = "";
stringComplete = false;
}
}

void serialEvent() {
while (Serial.available()) {
char inChar = (char)Serial.read();
if (inChar == '\n') {
stringComplete = true;
}else{
inputString += inChar;
}
}
}
Aprendizaje:

Adquirimos el conocimiento necesario para el manejo optimo de arduino genuino


uno, aprendimos utilizar códigos como por ejemplo:
o pinMode se usa para configurar un pin digital
o Serial.begin lo usamos para iniciar serial
o If y else los usamos para las condiciones y sus casos contrarios
o && se usa para que el Arduino lea “x y x”
o <= >= += menor o igual, mayor o igual, suma compuesta.
o analogRead lo usamos para establecer una lectura digital en uno o
varios de los pines de Arduino
o digitalRead lo usamos para leer una entrada digital
o delay lo usamos para que el Arduino haga una espera o mantenga la
acción por un tiempo determinado en este caso la medida del tiempo
se establece en mili segundos
o Serial.println imprime en el monitor serie valores o textos línea por
línea
o Serial.print imprime en el monitor serial valores o textos en una sola
linea
o Int se usa para establecer las variables numéricas
o Map se usa para establecer una amplitud en la lectura analógica serial
o digitalWrite se usa para enviar una señal a través de los pines digitales
o void setup indicaciones que van antes de la ejecución del código tales
como saber cuál pin es entrada o salida o si se va a usar el monitor
serie etc.
o void loop se usa para ejecutar un código ya con las indicaciones
previas (void setup) ya configuradas.
o void SerialEvent se usa para cosas en concreto que específicamente
tengan que ver con el serial de esta manera separamos al loop y el
serial puede seguir trabajando sin ser interrumpido por una función
dentro del loop
o For se usa para establecer bucles finitos
o While se usa para establecer bucles infinitos (bucle quiere decir
repetición)
o Separador librería del Arduino que permite separar variables en
escritura serial
o ++ y – son incremento y decremento
o | | estas dos barras el Arduino las entiende como una “o” como decir
“x o y”
o ‘/n’ con esto se lee del primer hasta el ultimo valor escrito en el serial
o bool o boolean se usa para establecer variables tipo true o false
o analogWrite(x,y) se usa para activar una salida PWM done ”x” es el
pin y “y”es un valor entre 0 y 255 que controlara el voltaje de la salida
del pin.
o Serial.readString()se usa para leer en el serial de manera estricta un
valor que será convertido de inmediato en un dato disponible solo para
un String el cual se almacenara en la variable como cadena de datos.
o String variable que permite almacenar cualquier tipo de dato el cual
puede ser convertido a otra variable.

Conclusión:
Arduino geniuo uno, es sistema de programación de lenguaje simple que tiene una
amplia utilización en el campo de la electrónica, gracias a arduino conocimos un
poco más del mundo de la programación y cómo podemos manipularlo y utilizarlo a
necesidad del mundo cotidiano atreves de la electrónica.

PRUEBAS:
Los trabajos realizados y previamente supervisado por el maestro.