SlideShare une entreprise Scribd logo
1  sur  72
ARDUINO I
Sesión 1
Bach. Max Andy Diaz Neyra
mdiazn@uni.pe
Universidad Nacional de Ingeniería
Centro de Tecnología de Información y Comunicaciones
2019
Objetivo:
• Utilizar la plataforma de hardware libre Arduino para solucionar
problemas de adquisición y de control a través de programas que
trabajen con sensores y actuadores.
• Conoceremos las características de la plataforma.
• Aprenderemos a usar el entorno de desarrollo integrado(IDE) de
Arduino.
• Diseñar programas para el uso de las interfaces
Cronograma
• Semana 1: Tarjeta Arduino y programación: declaración de variables, tipo de datos y
operadores. Leds y display 7 segmentos.
• Semana 2: Programación: Estructuras de control. Funciones. Arreglos. Uso de pulsadores.
Comunicación Arduino-PC.
• Semana 3: Librerías. Interfaces y shields. Uso de la matriz de led 8x8. Uso del teclado
matricial 4x4. Pantalla LCD 16x2.
• Semana 4: Concepto de conversor analógico digital. Potenciómetro. Sensores analógicos:
ultrasónicos y de temperatura.
• Semana 5: Concepto de señales PWM. Concepto de motores de corriente continua y
tipos. Uso de un módulo puente H.
• Semana 6: Modulo bluetooth. Comunicación Android – Arduino. Proyecto: Carro a
control remoto controlado con celular.
Sistema de calificación
• 6 evaluaciones/ 1 al final de cada clase
• La nota final será el promedio de las 6
• La nota mínima para el certificado será 14
¿Qué es un Arduino?
• Una computadora completa en un solo circuito. (Single Board
Computer).
• Arduino es una plataforma de hardware libre.
• Programadas a través de un entorno de desarrollo integrado (IDE).
• Diseñado para desarrollar proyectos de electrónica.
Single Board Computer (SBC)
Un SBC es una computadora completa en un solo circuito. El diseño se
centra en un solo microprocesador o microcontrolador, que cuenta con
memoria ROM, RAM e interfases de entrada y salida (E/S) en una sola
tarjeta que suele ser de tamaño reducido.
Ejemplos de SBC
Arduino Raspberry
Open hardware
• Significa que tanto su diseño como su distribución es libre, y puede
utilizarse libremente para desarrollar cualquier tipo de proyecto sin
tener que adquirir ningún tipo de licencia.
Modelos de Arduino: Boards
Robótica
IoT
Industria
Agricultura
Un mundo de posibilidades
• https://www.youtube.com/watch?v=nfm3qQoZIuo
Arduino UNO
• Utiliza microcontroladores de 8
bits ATmega328.
• 14 pines entradas/salidas digitales
(0 al 13).
• 6 pines de entradas analógicas (0 al
5).
• 6 pines de salida analógica
(soportan PWM).
• Los pines de Atmega328
pueden entregar o recibir hasta 40
mA (miliamperios).
Microcontrolador ATmega328
• Es un microcontrolador RISC
(Reduce Instruction Set
Computer)
• Memoria flash 32KB
• SRAM 2KB
• EEPROM 1KB
• 6 ADC de 10 bits .
• Velocidad de reloj de 16MHz
Integrated Development Environment (IDE)
https://www.arduino.cc/en/Main/Software
Fritzing
http://fritzing.org/download/?donation=0
Tinkercad
Estructura del Sketch
• Se denomina Sketch al programa
desarrollado para ser ejecutado
en la placa Arduino.
• Cada instrucción finaliza con un ;
• Los comentarios se indican con
//
• La extensión de los programas
de Arduino es .ino
Tipo de datos
• bool: Almacena el valor de 1 bit. Puede valer "0" o "1".
• byte: Almacena un valor numérico de 8 bits. Tienen un rango de 0 a 255.
• char: Almacena el código ASCII de un caracter.
• int: Almacena un valor entero de 16 bits con un rango de -32,768 a 32,767.
• long: Valor entero almacenado en 32 bits con un rango de -2,147,483,648
a 2,147,483,647.
• float: Tipo coma flotante almacenado en 32 bits con un rango de -
3.4028235E+38 a 3.4028235E+38.
• double: Número en coma flotante de doble precisión de 32 bits. La
implementación "double" en Arduino es exactamente lo mismo que la float,
sin ganar nada de precisión.
• array: Es una colección de variables que son accedidas mediante un número
de índice (el primer valor del índice es 0).
Variable
• Es un posición en la memora donde se almacena el valor de un dato.
• Dependiendo del tipo de dato, la variable ocupara un determinado
espacio
• Ejemplo: int inputVariable ;
• La variable es global es aquella que puede ser usado en cualquier
función
• Una variable local si es definida dentro de una función.
Funciones
• Una función es un bloque de código identificado por un nombre y que
es ejecutado cuando la función es llamada. Tiene la misma estructura
que las funciones en C.
• Setup() y Loop() son ejemplos de función.
Entradas/salidas digitales
• pinMode(pin, mode)
• digitalRead(pin)
• digitalWrite(pin,value)
Funcione de tiempo
• delay(ms)
• delayMicroseconds(us)
LED(Light Emitting Diode)
• El LED, como su nombre indica,
es un diodo emisor de luz
• Este tiene dos pines llamados
ánodo y cátodo.
• Se puede verificar cual es el
ánodo y cátodo con ayuda de un
multímetro.
Ejemplo
• Programa el Arduino UNO para hacer parpadear el led conectado al
pin 13 cada 1 segundo.
Solución
• void setup() {
pinMode(13, OUTPUT);
}
void loop() {
digitalWrite(13, 1); // Encendemos el led
delay(1000); // Esperamos 1 segundo
digitalWrite(13, 0); // Apagamos el led
delay(1000); // Esperamos 1 segundo
}
Protoboard
Ejemplo
• Lograr el parpadeo de 1 segundo de un LED usando el pin 10
Solución
• void setup() {
pinMode(10, OUTPUT);
}
void loop() {
digitalWrite(10, 1); // Encendemos el led
delay(1000); // Esperamos 1 segundo
digitalWrite(10, 0); // Apagamos el led
delay(1000); // Esperamos 1 segundo
}
Ejercicio
• Elabora un programa que controla 3 leds, encendiendo uno a la vez
durante medio segundo.
Ejemplo
• Encender el led del Arduino cuando el switch cambia de posición.
Solución
bool var;
void setup(){
pinMode(10, OUTPUT);
pinMode(5,INPUT);
}
void loop(){
var=digitalRead(5);
digitalWrite(10, var);
}
Display 7 segmentos
Display 7 segmentos
Código BDC
Decodificador de BDC a 7 segmentos
Funcionamiento
Conexión
Implementar
Ejemplo
Que el display muestre los numero 2 y 5 cada 1 segundo.
Solución
void setup() {
pinMode(13,OUTPUT);
pinMode(12,OUTPUT);
pinMode(11,OUTPUT);
pinMode(10,OUTPUT);
}
void loop() {
//El número DOS se expresa en binario como 0010
digitalWrite(13,0); // Leemos el bit0
digitalWrite(12,1); // Leemos el bit1
digitalWrite(11,0); // Leemos el bit2
digitalWrite(10,0); // Leemos el bit3
delay(1000);
//El número CINCO se expresa en binario como 0101
digitalWrite(13,1); // Leemos el bit0
digitalWrite(12,0); // Leemos el bit1
digitalWrite(11,1); // Leemos el bit2
digitalWrite(10,0); // Leemos el bit3
delay(1000);
}
Ejercicio
• Que el display muestre los números 8 y 3
Implementar
Ejercicio
• Programa (sketch) que muestra en el display el dígito decimal
ingresado por el slideswitch.
Solución
void setup() {
pinMode(13,OUTPUT);
pinMode(12,OUTPUT);
pinMode(11,OUTPUT);
pinMode(10,OUTPUT);
}
void loop() {
bool bit1,bit2,bit3,bit4;
bit1=digitalRead(4);
bit2=digitalRead(5);
bit3=digitalRead(6);
bit4=digitalRead(7);
digitalWrite(13,bit1);
digitalWrite(12,bit2);
digitalWrite(11,bit3);
digitalWrite(10,bit4);
delay(1000);}
Operadores
• Operadores aritméticos
• Operadores de comparación
• Operadores booleanos
• Operadores a nivel de bits
Operador aritmético
• +
• -
• *
• /
• =
• %
• ++
• --
Ejemplo
Realizar un programa con el cual se hace parpadear un led cada 4
segundos, cuando se active el switch el tiempo de parpadeo debe ser
de 8 segundos.
Solución
void setup(){
pinMode(13, OUTPUT);
pinMode(3, INPUT);
}
void loop(){
bool var;
var=digitalRead(3);
digitalWrite(13,HIGH);
delay(4000+var*4000);
digitalWrite(13,LOW);
delay(4000+var*4000);
}
Ejercicio
• Elaborar un programa en el cual un slideswitch encienda un led
cuando esta en una posición y encender otro cuando este en la otra
posición
Implementar
Ejemplo
• Programa que muestra en el display el dígito decimal ingresado por
el slideswitch solo si este es par.
Solución
bool bit0,bit1,bit2,bit3;
byte numero;
bool m;
void setup(){
pinMode(13, OUTPUT);
pinMode(12, OUTPUT);
pinMode(11, OUTPUT);
pinMode(10, OUTPUT);
pinMode(7, INPUT);
pinMode(6, INPUT);
pinMode(5, INPUT);
pinMode(4, INPUT);
}
void loop(){
bit0=digitalRead(4);
bit1=digitalRead(5);
bit2=digitalRead(6);
bit3=digitalRead(7);
numero=bit3*8+bit2*4+bit1*2+bit0;
m=numero%2==0;
digitalWrite(13,(numero%2)*m);
numero=numero/2;
digitalWrite(12,(numero%2)*m);
numero=numero/2;
digitalWrite(11,(numero%2)*m);
numero=numero/2;
digitalWrite(10,(numero%2)*m);
}
Implementar(pregunta de examen)
Reto
Programa (Sketch) que convierte un numero binario en decimal. Utilizar
la implementación anterior
Operador comparador
• ==
• !=
• <
• >
• <=
• >=
Ejemplo
• Encender el led cuando la señales de entrada se encuentren en el
mismo estado
Solución
byte var1,var2,var;
void setup(){
pinMode(13, OUTPUT);
}
void loop(){
var1=digitalRead(6);
var2=digitalRead(5);
var=var1==var2;
digitalWrite(13, var);
}
Ejercicio
Elaborar un sketch el cual encenderá el led solo cuando el primero slide
tenga valor alto.
Operador booleano
• &&(and)
• ||(or)
• !(not)
&&(and)
||(or)
!(not)
Implementar
Ejemplo
Programa (sketch) que indica encendiendo un LED, si las tres señales
de entrada son ingresadas son iguales a nivel alto.
Solución
byte var1,var2,var3,var;
void setup()
{
pinMode(13, OUTPUT);
}
void loop()
{
var1=digitalRead(6);
var2=digitalRead(5);
var3=digitalRead(4);
var=(var1==true&&var2==true&&var3==1);
digitalWrite(13, var);
}
Ejercicio
Programa (sketch) que indica encendiendo un LED, si las 3 señales
digitales ingresadas son iguales.
Operador a nivel de bit
• &(and)
• |(or)
• ^(xor)
• ~(not)
• <<(bitshift left)
• >>(bitshift right)
Ejemplo
Programa (sketch) que lee un número BCD y muestra en una "barra de
leds" la misma cantidad, en leds encendidos. Ejemplo:
número = 2, entonces se encienden 2 leds.
número = 1, entonces se encienden 1 leds.
Solución
byte dato,leds;
bool bit0,bit1,bit2,bit3;
void setup() {
pinMode(9,OUTPUT);
pinMode(8,OUTPUT);
pinMode(7,OUTPUT);
pinMode(6,OUTPUT);
pinMode(5,INPUT);
pinMode(4,INPUT);
pinMode(3,INPUT);
}
void loop() {
bit0 = digitalRead(5);
bit1 = digitalRead(4);
bit2 = digitalRead(3);
dato = bit2*4 + bit1*2 + bit0;
leds = 0B00001111 >>(4-dato);
digitalWrite(6,leds%2);
leds = leds/2;
digitalWrite(7,leds%2);
leds = leds/2;
digitalWrite(8,leds%2);
leds = leds/2;
digitalWrite(9,leds%2);
}

Contenu connexe

Tendances

Tendances (14)

Manual programacion arduino
Manual programacion arduinoManual programacion arduino
Manual programacion arduino
 
PRIMER Proyecto alarma arduino
PRIMER Proyecto alarma arduinoPRIMER Proyecto alarma arduino
PRIMER Proyecto alarma arduino
 
Robotica Educativa CEP Granada 2015
Robotica Educativa CEP Granada 2015Robotica Educativa CEP Granada 2015
Robotica Educativa CEP Granada 2015
 
SIALESA - Sistema de Alarma Escolar Automtizada
SIALESA - Sistema de Alarma Escolar AutomtizadaSIALESA - Sistema de Alarma Escolar Automtizada
SIALESA - Sistema de Alarma Escolar Automtizada
 
Arduino - Ejercicios Básicos
Arduino - Ejercicios BásicosArduino - Ejercicios Básicos
Arduino - Ejercicios Básicos
 
Taller roboticalibrearduino
Taller roboticalibrearduinoTaller roboticalibrearduino
Taller roboticalibrearduino
 
Mis proyectos con Arduino
Mis proyectos con ArduinoMis proyectos con Arduino
Mis proyectos con Arduino
 
Cerradura Electrónica
Cerradura ElectrónicaCerradura Electrónica
Cerradura Electrónica
 
Practicas
PracticasPracticas
Practicas
 
GUIA BASICA ARDUINO
GUIA BASICA ARDUINOGUIA BASICA ARDUINO
GUIA BASICA ARDUINO
 
Minibloq+ arduino
Minibloq+ arduinoMinibloq+ arduino
Minibloq+ arduino
 
Manual de Prácticas en Arduino Uno
Manual de Prácticas en Arduino UnoManual de Prácticas en Arduino Uno
Manual de Prácticas en Arduino Uno
 
Introduccion Arduino 2010
Introduccion  Arduino 2010Introduccion  Arduino 2010
Introduccion Arduino 2010
 
Arduino c++ y puerto serie
Arduino c++ y puerto serieArduino c++ y puerto serie
Arduino c++ y puerto serie
 

Similaire à Arduino uno

Introducción arduino
Introducción arduinoIntroducción arduino
Introducción arduinotoni
 
Seminario de arduino DeustoTech
Seminario de arduino DeustoTechSeminario de arduino DeustoTech
Seminario de arduino DeustoTechAdolfo García
 
CONTADOR BINARIO ASCENDENTE DE 8 BITS CON ARDUINO
CONTADOR BINARIO ASCENDENTE DE 8 BITS CON ARDUINOCONTADOR BINARIO ASCENDENTE DE 8 BITS CON ARDUINO
CONTADOR BINARIO ASCENDENTE DE 8 BITS CON ARDUINOFernando Marcos Marcos
 
Taller robotica libre arduino
Taller robotica libre arduinoTaller robotica libre arduino
Taller robotica libre arduinojoseromo10
 
CONTADOR BINARIO DESCENDENTE DE 8 BITS CON ARDUINO
CONTADOR BINARIO DESCENDENTE DE 8 BITS CON ARDUINOCONTADOR BINARIO DESCENDENTE DE 8 BITS CON ARDUINO
CONTADOR BINARIO DESCENDENTE DE 8 BITS CON ARDUINOFernando Marcos Marcos
 
Proyect cubos led 4x4x4 final
Proyect cubos led 4x4x4 finalProyect cubos led 4x4x4 final
Proyect cubos led 4x4x4 finalIsrael Chala
 
P01: Kiwibot Basic Shield: Empezamos con Arduino
P01: Kiwibot Basic Shield: Empezamos con ArduinoP01: Kiwibot Basic Shield: Empezamos con Arduino
P01: Kiwibot Basic Shield: Empezamos con ArduinoJosé Pujol Pérez
 
Examen de robotica
Examen de roboticaExamen de robotica
Examen de roboticaJosDeLen17
 
Aplicación de un Sistema Operativo de Tiempo Real (RTOS) en un robot Arduino
Aplicación de un Sistema Operativo de Tiempo Real (RTOS) en un robot ArduinoAplicación de un Sistema Operativo de Tiempo Real (RTOS) en un robot Arduino
Aplicación de un Sistema Operativo de Tiempo Real (RTOS) en un robot ArduinoMaría Emilia Charnelli
 
Introduccion a arduino circuitos basicos de entrada y salida
Introduccion a arduino circuitos basicos de entrada y salidaIntroduccion a arduino circuitos basicos de entrada y salida
Introduccion a arduino circuitos basicos de entrada y salidaMoises Nuñez Silva
 

Similaire à Arduino uno (20)

Sesion 1 Curso Arduino.pdf
Sesion 1 Curso Arduino.pdfSesion 1 Curso Arduino.pdf
Sesion 1 Curso Arduino.pdf
 
Introducción arduino
Introducción arduinoIntroducción arduino
Introducción arduino
 
Seminario de arduino DeustoTech
Seminario de arduino DeustoTechSeminario de arduino DeustoTech
Seminario de arduino DeustoTech
 
CONTADOR BINARIO ASCENDENTE DE 8 BITS CON ARDUINO
CONTADOR BINARIO ASCENDENTE DE 8 BITS CON ARDUINOCONTADOR BINARIO ASCENDENTE DE 8 BITS CON ARDUINO
CONTADOR BINARIO ASCENDENTE DE 8 BITS CON ARDUINO
 
Taller robotica libre arduino
Taller robotica libre arduinoTaller robotica libre arduino
Taller robotica libre arduino
 
Taller roboticalibrearduino
Taller roboticalibrearduinoTaller roboticalibrearduino
Taller roboticalibrearduino
 
CONTADOR BINARIO DESCENDENTE DE 8 BITS CON ARDUINO
CONTADOR BINARIO DESCENDENTE DE 8 BITS CON ARDUINOCONTADOR BINARIO DESCENDENTE DE 8 BITS CON ARDUINO
CONTADOR BINARIO DESCENDENTE DE 8 BITS CON ARDUINO
 
Basicos arduino
Basicos arduinoBasicos arduino
Basicos arduino
 
Básicos arduino
Básicos arduinoBásicos arduino
Básicos arduino
 
Proyect cubos led 4x4x4 final
Proyect cubos led 4x4x4 finalProyect cubos led 4x4x4 final
Proyect cubos led 4x4x4 final
 
Señales con arduino y DAC
Señales con arduino y DACSeñales con arduino y DAC
Señales con arduino y DAC
 
P01: Kiwibot Basic Shield: Empezamos con Arduino
P01: Kiwibot Basic Shield: Empezamos con ArduinoP01: Kiwibot Basic Shield: Empezamos con Arduino
P01: Kiwibot Basic Shield: Empezamos con Arduino
 
arduino
arduinoarduino
arduino
 
Presentacion
PresentacionPresentacion
Presentacion
 
Arduino corrimiento de bits con leds
Arduino corrimiento de bits con ledsArduino corrimiento de bits con leds
Arduino corrimiento de bits con leds
 
Examen de robotica
Examen de roboticaExamen de robotica
Examen de robotica
 
Aplicación de un Sistema Operativo de Tiempo Real (RTOS) en un robot Arduino
Aplicación de un Sistema Operativo de Tiempo Real (RTOS) en un robot ArduinoAplicación de un Sistema Operativo de Tiempo Real (RTOS) en un robot Arduino
Aplicación de un Sistema Operativo de Tiempo Real (RTOS) en un robot Arduino
 
Proyecto de arduino
Proyecto de arduinoProyecto de arduino
Proyecto de arduino
 
Introduccion a arduino circuitos basicos de entrada y salida
Introduccion a arduino circuitos basicos de entrada y salidaIntroduccion a arduino circuitos basicos de entrada y salida
Introduccion a arduino circuitos basicos de entrada y salida
 
Tarjeta arduino
Tarjeta arduinoTarjeta arduino
Tarjeta arduino
 

Dernier

nomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestacionesnomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestacionesCarlosMeraz16
 
Six Sigma Process and the dmaic metodo process
Six Sigma Process and the dmaic metodo processSix Sigma Process and the dmaic metodo process
Six Sigma Process and the dmaic metodo processbarom
 
QUIMICA GENERAL UNIVERSIDAD TECNOLOGICA DEL PERU
QUIMICA GENERAL UNIVERSIDAD TECNOLOGICA DEL PERUQUIMICA GENERAL UNIVERSIDAD TECNOLOGICA DEL PERU
QUIMICA GENERAL UNIVERSIDAD TECNOLOGICA DEL PERUManuelSosa83
 
Minería convencional: datos importantes y conceptos
Minería convencional: datos importantes y conceptosMinería convencional: datos importantes y conceptos
Minería convencional: datos importantes y conceptosisauVillalva
 
27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.ppt27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.pptjacnuevarisaralda22
 
ATS-FORMATO cara.pdf PARA TRABAJO SEGURO
ATS-FORMATO cara.pdf  PARA TRABAJO SEGUROATS-FORMATO cara.pdf  PARA TRABAJO SEGURO
ATS-FORMATO cara.pdf PARA TRABAJO SEGUROalejandrocrisostomo2
 
Tabla de referentes empíricos para tesis-1.docx
Tabla de referentes empíricos para tesis-1.docxTabla de referentes empíricos para tesis-1.docx
Tabla de referentes empíricos para tesis-1.docxLuisJJacinto
 
tesis maíz univesidad catolica santa maria
tesis maíz univesidad catolica santa mariatesis maíz univesidad catolica santa maria
tesis maíz univesidad catolica santa mariasusafy7
 
Trazos paileros para realizar trazos, cortes y calculos.pptx
Trazos paileros para realizar trazos, cortes y calculos.pptxTrazos paileros para realizar trazos, cortes y calculos.pptx
Trazos paileros para realizar trazos, cortes y calculos.pptxmiguelmateos18
 
Ficha Tecnica de Ladrillos de Tabique de diferentes modelos
Ficha Tecnica de Ladrillos de Tabique de diferentes modelosFicha Tecnica de Ladrillos de Tabique de diferentes modelos
Ficha Tecnica de Ladrillos de Tabique de diferentes modelosRamiroCruzSalazar
 
Clasificación de Equipos e Instrumentos en Electricidad.docx
Clasificación de Equipos e Instrumentos en Electricidad.docxClasificación de Equipos e Instrumentos en Electricidad.docx
Clasificación de Equipos e Instrumentos en Electricidad.docxwilliam801689
 
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHTAPORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHTElisaLen4
 
ingenieria grafica para la carrera de ingeniera .pptx
ingenieria grafica para la carrera de ingeniera .pptxingenieria grafica para la carrera de ingeniera .pptx
ingenieria grafica para la carrera de ingeniera .pptxjhorbycoralsanchez
 
Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...
Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...
Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...GuillermoRodriguez239462
 
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNATINSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNATevercoyla
 
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)Ricardo705519
 
ESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVO
ESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVOESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVO
ESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVOeldermishti
 
CALCULO DE ENGRANAJES RECTOS SB-2024.pptx
CALCULO DE ENGRANAJES RECTOS SB-2024.pptxCALCULO DE ENGRANAJES RECTOS SB-2024.pptx
CALCULO DE ENGRANAJES RECTOS SB-2024.pptxCarlosGabriel96
 
Determinación de espacios en la instalación
Determinación de espacios en la instalaciónDeterminación de espacios en la instalación
Determinación de espacios en la instalaciónQualityAdviceService
 

Dernier (20)

nomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestacionesnomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestaciones
 
Six Sigma Process and the dmaic metodo process
Six Sigma Process and the dmaic metodo processSix Sigma Process and the dmaic metodo process
Six Sigma Process and the dmaic metodo process
 
QUIMICA GENERAL UNIVERSIDAD TECNOLOGICA DEL PERU
QUIMICA GENERAL UNIVERSIDAD TECNOLOGICA DEL PERUQUIMICA GENERAL UNIVERSIDAD TECNOLOGICA DEL PERU
QUIMICA GENERAL UNIVERSIDAD TECNOLOGICA DEL PERU
 
Minería convencional: datos importantes y conceptos
Minería convencional: datos importantes y conceptosMinería convencional: datos importantes y conceptos
Minería convencional: datos importantes y conceptos
 
27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.ppt27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.ppt
 
ATS-FORMATO cara.pdf PARA TRABAJO SEGURO
ATS-FORMATO cara.pdf  PARA TRABAJO SEGUROATS-FORMATO cara.pdf  PARA TRABAJO SEGURO
ATS-FORMATO cara.pdf PARA TRABAJO SEGURO
 
Tabla de referentes empíricos para tesis-1.docx
Tabla de referentes empíricos para tesis-1.docxTabla de referentes empíricos para tesis-1.docx
Tabla de referentes empíricos para tesis-1.docx
 
tesis maíz univesidad catolica santa maria
tesis maíz univesidad catolica santa mariatesis maíz univesidad catolica santa maria
tesis maíz univesidad catolica santa maria
 
Trazos paileros para realizar trazos, cortes y calculos.pptx
Trazos paileros para realizar trazos, cortes y calculos.pptxTrazos paileros para realizar trazos, cortes y calculos.pptx
Trazos paileros para realizar trazos, cortes y calculos.pptx
 
Ficha Tecnica de Ladrillos de Tabique de diferentes modelos
Ficha Tecnica de Ladrillos de Tabique de diferentes modelosFicha Tecnica de Ladrillos de Tabique de diferentes modelos
Ficha Tecnica de Ladrillos de Tabique de diferentes modelos
 
Clasificación de Equipos e Instrumentos en Electricidad.docx
Clasificación de Equipos e Instrumentos en Electricidad.docxClasificación de Equipos e Instrumentos en Electricidad.docx
Clasificación de Equipos e Instrumentos en Electricidad.docx
 
422382393-Curso-de-Tableros-Electricos.pptx
422382393-Curso-de-Tableros-Electricos.pptx422382393-Curso-de-Tableros-Electricos.pptx
422382393-Curso-de-Tableros-Electricos.pptx
 
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHTAPORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
 
ingenieria grafica para la carrera de ingeniera .pptx
ingenieria grafica para la carrera de ingeniera .pptxingenieria grafica para la carrera de ingeniera .pptx
ingenieria grafica para la carrera de ingeniera .pptx
 
Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...
Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...
Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...
 
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNATINSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
 
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
 
ESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVO
ESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVOESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVO
ESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVO
 
CALCULO DE ENGRANAJES RECTOS SB-2024.pptx
CALCULO DE ENGRANAJES RECTOS SB-2024.pptxCALCULO DE ENGRANAJES RECTOS SB-2024.pptx
CALCULO DE ENGRANAJES RECTOS SB-2024.pptx
 
Determinación de espacios en la instalación
Determinación de espacios en la instalaciónDeterminación de espacios en la instalación
Determinación de espacios en la instalación
 

Arduino uno

  • 1. ARDUINO I Sesión 1 Bach. Max Andy Diaz Neyra mdiazn@uni.pe Universidad Nacional de Ingeniería Centro de Tecnología de Información y Comunicaciones 2019
  • 2. Objetivo: • Utilizar la plataforma de hardware libre Arduino para solucionar problemas de adquisición y de control a través de programas que trabajen con sensores y actuadores. • Conoceremos las características de la plataforma. • Aprenderemos a usar el entorno de desarrollo integrado(IDE) de Arduino. • Diseñar programas para el uso de las interfaces
  • 3. Cronograma • Semana 1: Tarjeta Arduino y programación: declaración de variables, tipo de datos y operadores. Leds y display 7 segmentos. • Semana 2: Programación: Estructuras de control. Funciones. Arreglos. Uso de pulsadores. Comunicación Arduino-PC. • Semana 3: Librerías. Interfaces y shields. Uso de la matriz de led 8x8. Uso del teclado matricial 4x4. Pantalla LCD 16x2. • Semana 4: Concepto de conversor analógico digital. Potenciómetro. Sensores analógicos: ultrasónicos y de temperatura. • Semana 5: Concepto de señales PWM. Concepto de motores de corriente continua y tipos. Uso de un módulo puente H. • Semana 6: Modulo bluetooth. Comunicación Android – Arduino. Proyecto: Carro a control remoto controlado con celular.
  • 4. Sistema de calificación • 6 evaluaciones/ 1 al final de cada clase • La nota final será el promedio de las 6 • La nota mínima para el certificado será 14
  • 5. ¿Qué es un Arduino? • Una computadora completa en un solo circuito. (Single Board Computer). • Arduino es una plataforma de hardware libre. • Programadas a través de un entorno de desarrollo integrado (IDE). • Diseñado para desarrollar proyectos de electrónica.
  • 6. Single Board Computer (SBC) Un SBC es una computadora completa en un solo circuito. El diseño se centra en un solo microprocesador o microcontrolador, que cuenta con memoria ROM, RAM e interfases de entrada y salida (E/S) en una sola tarjeta que suele ser de tamaño reducido.
  • 8. Open hardware • Significa que tanto su diseño como su distribución es libre, y puede utilizarse libremente para desarrollar cualquier tipo de proyecto sin tener que adquirir ningún tipo de licencia.
  • 11. IoT
  • 14. Un mundo de posibilidades • https://www.youtube.com/watch?v=nfm3qQoZIuo
  • 15. Arduino UNO • Utiliza microcontroladores de 8 bits ATmega328. • 14 pines entradas/salidas digitales (0 al 13). • 6 pines de entradas analógicas (0 al 5). • 6 pines de salida analógica (soportan PWM). • Los pines de Atmega328 pueden entregar o recibir hasta 40 mA (miliamperios).
  • 16. Microcontrolador ATmega328 • Es un microcontrolador RISC (Reduce Instruction Set Computer) • Memoria flash 32KB • SRAM 2KB • EEPROM 1KB • 6 ADC de 10 bits . • Velocidad de reloj de 16MHz
  • 17. Integrated Development Environment (IDE) https://www.arduino.cc/en/Main/Software
  • 20. Estructura del Sketch • Se denomina Sketch al programa desarrollado para ser ejecutado en la placa Arduino. • Cada instrucción finaliza con un ; • Los comentarios se indican con // • La extensión de los programas de Arduino es .ino
  • 21. Tipo de datos • bool: Almacena el valor de 1 bit. Puede valer "0" o "1". • byte: Almacena un valor numérico de 8 bits. Tienen un rango de 0 a 255. • char: Almacena el código ASCII de un caracter. • int: Almacena un valor entero de 16 bits con un rango de -32,768 a 32,767. • long: Valor entero almacenado en 32 bits con un rango de -2,147,483,648 a 2,147,483,647. • float: Tipo coma flotante almacenado en 32 bits con un rango de - 3.4028235E+38 a 3.4028235E+38. • double: Número en coma flotante de doble precisión de 32 bits. La implementación "double" en Arduino es exactamente lo mismo que la float, sin ganar nada de precisión. • array: Es una colección de variables que son accedidas mediante un número de índice (el primer valor del índice es 0).
  • 22. Variable • Es un posición en la memora donde se almacena el valor de un dato. • Dependiendo del tipo de dato, la variable ocupara un determinado espacio • Ejemplo: int inputVariable ; • La variable es global es aquella que puede ser usado en cualquier función • Una variable local si es definida dentro de una función.
  • 23. Funciones • Una función es un bloque de código identificado por un nombre y que es ejecutado cuando la función es llamada. Tiene la misma estructura que las funciones en C. • Setup() y Loop() son ejemplos de función.
  • 24. Entradas/salidas digitales • pinMode(pin, mode) • digitalRead(pin) • digitalWrite(pin,value)
  • 25. Funcione de tiempo • delay(ms) • delayMicroseconds(us)
  • 26. LED(Light Emitting Diode) • El LED, como su nombre indica, es un diodo emisor de luz • Este tiene dos pines llamados ánodo y cátodo. • Se puede verificar cual es el ánodo y cátodo con ayuda de un multímetro.
  • 27. Ejemplo • Programa el Arduino UNO para hacer parpadear el led conectado al pin 13 cada 1 segundo.
  • 28. Solución • void setup() { pinMode(13, OUTPUT); } void loop() { digitalWrite(13, 1); // Encendemos el led delay(1000); // Esperamos 1 segundo digitalWrite(13, 0); // Apagamos el led delay(1000); // Esperamos 1 segundo }
  • 30. Ejemplo • Lograr el parpadeo de 1 segundo de un LED usando el pin 10
  • 31. Solución • void setup() { pinMode(10, OUTPUT); } void loop() { digitalWrite(10, 1); // Encendemos el led delay(1000); // Esperamos 1 segundo digitalWrite(10, 0); // Apagamos el led delay(1000); // Esperamos 1 segundo }
  • 32. Ejercicio • Elabora un programa que controla 3 leds, encendiendo uno a la vez durante medio segundo.
  • 33. Ejemplo • Encender el led del Arduino cuando el switch cambia de posición.
  • 34. Solución bool var; void setup(){ pinMode(10, OUTPUT); pinMode(5,INPUT); } void loop(){ var=digitalRead(5); digitalWrite(10, var); }
  • 38. Decodificador de BDC a 7 segmentos
  • 42. Ejemplo Que el display muestre los numero 2 y 5 cada 1 segundo.
  • 43. Solución void setup() { pinMode(13,OUTPUT); pinMode(12,OUTPUT); pinMode(11,OUTPUT); pinMode(10,OUTPUT); } void loop() { //El número DOS se expresa en binario como 0010 digitalWrite(13,0); // Leemos el bit0 digitalWrite(12,1); // Leemos el bit1 digitalWrite(11,0); // Leemos el bit2 digitalWrite(10,0); // Leemos el bit3 delay(1000); //El número CINCO se expresa en binario como 0101 digitalWrite(13,1); // Leemos el bit0 digitalWrite(12,0); // Leemos el bit1 digitalWrite(11,1); // Leemos el bit2 digitalWrite(10,0); // Leemos el bit3 delay(1000); }
  • 44. Ejercicio • Que el display muestre los números 8 y 3
  • 46. Ejercicio • Programa (sketch) que muestra en el display el dígito decimal ingresado por el slideswitch.
  • 47. Solución void setup() { pinMode(13,OUTPUT); pinMode(12,OUTPUT); pinMode(11,OUTPUT); pinMode(10,OUTPUT); } void loop() { bool bit1,bit2,bit3,bit4; bit1=digitalRead(4); bit2=digitalRead(5); bit3=digitalRead(6); bit4=digitalRead(7); digitalWrite(13,bit1); digitalWrite(12,bit2); digitalWrite(11,bit3); digitalWrite(10,bit4); delay(1000);}
  • 48. Operadores • Operadores aritméticos • Operadores de comparación • Operadores booleanos • Operadores a nivel de bits
  • 49. Operador aritmético • + • - • * • / • = • % • ++ • --
  • 50. Ejemplo Realizar un programa con el cual se hace parpadear un led cada 4 segundos, cuando se active el switch el tiempo de parpadeo debe ser de 8 segundos.
  • 51. Solución void setup(){ pinMode(13, OUTPUT); pinMode(3, INPUT); } void loop(){ bool var; var=digitalRead(3); digitalWrite(13,HIGH); delay(4000+var*4000); digitalWrite(13,LOW); delay(4000+var*4000); }
  • 52. Ejercicio • Elaborar un programa en el cual un slideswitch encienda un led cuando esta en una posición y encender otro cuando este en la otra posición
  • 54. Ejemplo • Programa que muestra en el display el dígito decimal ingresado por el slideswitch solo si este es par.
  • 55. Solución bool bit0,bit1,bit2,bit3; byte numero; bool m; void setup(){ pinMode(13, OUTPUT); pinMode(12, OUTPUT); pinMode(11, OUTPUT); pinMode(10, OUTPUT); pinMode(7, INPUT); pinMode(6, INPUT); pinMode(5, INPUT); pinMode(4, INPUT); } void loop(){ bit0=digitalRead(4); bit1=digitalRead(5); bit2=digitalRead(6); bit3=digitalRead(7); numero=bit3*8+bit2*4+bit1*2+bit0; m=numero%2==0; digitalWrite(13,(numero%2)*m); numero=numero/2; digitalWrite(12,(numero%2)*m); numero=numero/2; digitalWrite(11,(numero%2)*m); numero=numero/2; digitalWrite(10,(numero%2)*m); }
  • 57. Reto Programa (Sketch) que convierte un numero binario en decimal. Utilizar la implementación anterior
  • 58. Operador comparador • == • != • < • > • <= • >=
  • 59. Ejemplo • Encender el led cuando la señales de entrada se encuentren en el mismo estado
  • 60. Solución byte var1,var2,var; void setup(){ pinMode(13, OUTPUT); } void loop(){ var1=digitalRead(6); var2=digitalRead(5); var=var1==var2; digitalWrite(13, var); }
  • 61. Ejercicio Elaborar un sketch el cual encenderá el led solo cuando el primero slide tenga valor alto.
  • 67. Ejemplo Programa (sketch) que indica encendiendo un LED, si las tres señales de entrada son ingresadas son iguales a nivel alto.
  • 68. Solución byte var1,var2,var3,var; void setup() { pinMode(13, OUTPUT); } void loop() { var1=digitalRead(6); var2=digitalRead(5); var3=digitalRead(4); var=(var1==true&&var2==true&&var3==1); digitalWrite(13, var); }
  • 69. Ejercicio Programa (sketch) que indica encendiendo un LED, si las 3 señales digitales ingresadas son iguales.
  • 70. Operador a nivel de bit • &(and) • |(or) • ^(xor) • ~(not) • <<(bitshift left) • >>(bitshift right)
  • 71. Ejemplo Programa (sketch) que lee un número BCD y muestra en una "barra de leds" la misma cantidad, en leds encendidos. Ejemplo: número = 2, entonces se encienden 2 leds. número = 1, entonces se encienden 1 leds.
  • 72. Solución byte dato,leds; bool bit0,bit1,bit2,bit3; void setup() { pinMode(9,OUTPUT); pinMode(8,OUTPUT); pinMode(7,OUTPUT); pinMode(6,OUTPUT); pinMode(5,INPUT); pinMode(4,INPUT); pinMode(3,INPUT); } void loop() { bit0 = digitalRead(5); bit1 = digitalRead(4); bit2 = digitalRead(3); dato = bit2*4 + bit1*2 + bit0; leds = 0B00001111 >>(4-dato); digitalWrite(6,leds%2); leds = leds/2; digitalWrite(7,leds%2); leds = leds/2; digitalWrite(8,leds%2); leds = leds/2; digitalWrite(9,leds%2); }

Notes de l'éditeur

  1. Arduino es un proyecto que inicia en 2005 en el instituto de IVREA Diseñado para realizar proyectos electrónicos. Raspberry es de origen ingles y se diseño pensado en llevar informática a los colegios.
  2. Realiza una pausa especificada por el valor colocado entre los paréntesis. La base de tiempos es en milisegundos. Los valores permitidos van de 0 hasta 1000. Actualmente, el mayor valor que producirá un retardo preciso es 16383 (esto puede cambiar en futuras versiones de Arduino).
  3. La corriente máxima recomendada para un LED es de 10 miliamperios.
  4. El Protoboard es una placa de desarrollo electrónico en el cual se pueden insertar componentes electrónicos y cables para el armado de circuitos electrónicos
  5. Ánodo común: Los segmentos se encienden con "0". Cátodo común: Los segmentos se encienden con "1".
  6. Cada dígito decimal es codificado con una secuencia de 4 bits (nibble). Con BCD solo se utilizan 10 de las 16 posibles combinaciones que se pueden formar con números de 4 bits.
  7. CI que nos permite utilizar el display de 7 segmentos utilizando un menor numero de pines digitales.
  8. 7447 y 7448, las pines 3 4 5 van a fuente Los pines restantes LT, BI/RBO y RBI son entradas que se activan en nivel bajo (0 voltios), es decir que si las vamos a conectar por lo general deben permanecer en estado alto (5 Voltios). La función que cumplen son las siguientes: LT (Lamp Test): Poniendo en estado Lógico 0 este pin y manteniendo BI/RBO en 1, el decodificador encenderá todos los segmentos del display (sin importar el valor que este en las entradas A, B, C y D), es una forma de probar que ninguno se encuentre dañado. RBI (Ripple Blanking Input): Cuando todas nuestras entradas se encuentran en estado lógico 0 y manteniendo LT en 1, al poner el pin RBI en 0 este apagará todo el display, por tanto, en algunos casos podemos usarlo para suprimir el cero cuando no hace falta mostrarlo. BI/RBO (Blanking Input/Ripple Blanking Output): Siempre permanece en estado alto (1), a menos que RBI, A, B, C y D estén es estado bajo, de este modo, BI/RBO también pasará a estado bajo. Al aplicarle directamente un estado bajo, sin importar el estado de las demás entradas, apagará los segmentos del display.
  9. 4511 Pin 3 y 4 fuente, pint 5 tierra