Taller Introducción a la Ingeniería Eléctrica Robot y comunicaciones

Anuncio
Taller Introducción a la Ingeniería Eléctrica
Robot y comunicaciones basado en Microcontrolador
Arduino
Instituto de Ingeniería Eléctrica
Taller 1: Introducción a Arduino
29 de febrero de 2016
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
1 / 53
Presentación del curso
Objetivos y características.
Equipo docente.
Sitio de cursos y foro de consultas.
Horario de clases, cronograma, horarios de consulta.
Obligatorios, parcial y proyecto nal.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
2 / 53
Presentación del curso
Objetivos y características.
Equipo docente.
Sitio de cursos y foro de consultas.
Horario de clases, cronograma, horarios de consulta.
Obligatorios, parcial y proyecto nal.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
2 / 53
Presentación del curso
Objetivos y características.
Equipo docente.
Sitio de cursos y foro de consultas.
Horario de clases, cronograma, horarios de consulta.
Obligatorios, parcial y proyecto nal.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
2 / 53
Presentación del curso
Objetivos y características.
Equipo docente.
Sitio de cursos y foro de consultas.
Horario de clases, cronograma, horarios de consulta.
Obligatorios, parcial y proyecto nal.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
2 / 53
Presentación del curso
Objetivos y características.
Equipo docente.
Sitio de cursos y foro de consultas.
Horario de clases, cronograma, horarios de consulta.
Obligatorios, parcial y proyecto nal.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
2 / 53
Objetivos y características
Actividad orientada a la generación de ingreso.
Pretende introducir a la Ingeniería Eléctrica, sus métodos, sus
herramientas, sus actores.
De paso: datos básicos de la carrera:
Página de la carrera:
http://www.ng.edu.uy/carreras/grado/ingenieriaelectrica
Director de carrera: Alvaro Giusto ([email protected]).
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
3 / 53
Objetivos y características
Pretende aportar motivación, experiencia de trabajo en equipo,
comunicación oral, escrita y digital, a través de una metodología de
enseñanza activa.
No se viene a escuchar, se viene a HACER.
¾Qué vamos a hacer?
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
4 / 53
Objetivos y características
Pretende aportar motivación, experiencia de trabajo en equipo,
comunicación oral, escrita y digital, a través de una metodología de
enseñanza activa.
No se viene a escuchar, se viene a HACER.
¾Qué vamos a hacer?
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
4 / 53
Objetivos y características
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
5 / 53
Objetivos y características
Se formarán grupos de 3 estudiantes que en las primeras semanas
trabajarán con el Arduino.
Luego se agruparán de a 6 estudiantes para trabajar con un robot y
placas de comunicaciones.
Recibirán materiales para usar en el semestre.
Cuidar el material es responsabilidad del grupo!!.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
6 / 53
Objetivos y características
Se formarán grupos de 3 estudiantes que en las primeras semanas
trabajarán con el Arduino.
Luego se agruparán de a 6 estudiantes para trabajar con un robot y
placas de comunicaciones.
Recibirán materiales para usar en el semestre.
Cuidar el material es responsabilidad del grupo!!.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
6 / 53
Equipo docente
Docentes
Mariana del Castillo
Guillermo Airaldi
Sebastián Montes de Oca
Pablo Belzarena
Estudiantes Colaboradores
Juan Godoy
Matias Echeverria
Felipe Tambasco
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
7 / 53
Sitio de cursos y foro de consultas
El sitio de cursos: https://eva.ng.edu.uy
Allí se busca el EVA del Tallerine dentro de las asignaturas del
Instituto de Ingeniería Eléctrica (IIE).
Dentro del EVA, hay foros de información y foros de consulta.
Además hay material de apoyo, están los ejercicios a realizar y es la
plataforma a través de la cual se realiza buena parte de las
evaluaciones.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
8 / 53
Sitio de cursos y foro de consultas
El sitio de cursos: https://eva.ng.edu.uy
Allí se busca el EVA del Tallerine dentro de las asignaturas del
Instituto de Ingeniería Eléctrica (IIE).
Dentro del EVA, hay foros de información y foros de consulta.
Además hay material de apoyo, están los ejercicios a realizar y es la
plataforma a través de la cual se realiza buena parte de las
evaluaciones.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
8 / 53
Sitio de cursos y foro de consultas
El sitio de cursos: https://eva.ng.edu.uy
Allí se busca el EVA del Tallerine dentro de las asignaturas del
Instituto de Ingeniería Eléctrica (IIE).
Dentro del EVA, hay foros de información y foros de consulta.
Además hay material de apoyo, están los ejercicios a realizar y es la
plataforma a través de la cual se realiza buena parte de las
evaluaciones.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
8 / 53
Sitio de cursos y foro de consultas
El sitio de cursos: https://eva.ng.edu.uy
Allí se busca el EVA del Tallerine dentro de las asignaturas del
Instituto de Ingeniería Eléctrica (IIE).
Dentro del EVA, hay foros de información y foros de consulta.
Además hay material de apoyo, están los ejercicios a realizar y es la
plataforma a través de la cual se realiza buena parte de las
evaluaciones.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
8 / 53
Sitio de cursos y foro de consultas
El sitio de cursos: https://eva.ng.edu.uy
Allí se busca el EVA del Tallerine dentro de las asignaturas del
Instituto de Ingeniería Eléctrica (IIE).
Dentro del EVA, hay foros de información y foros de consulta.
Además hay material de apoyo, están los ejercicios a realizar y es la
plataforma a través de la cual se realiza buena parte de las
evaluaciones.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
8 / 53
Metodología y horarios de clase y de consulta
Las clases serán los viernes de 14.30 a 17.30 horas en el Laboratorio
de Software del Instituto de Ingeniería Eléctrica.
Serán en un formato que combina presentación de temas con mucho
trabajo por parte de los alumnos.
Habrá semanas con un esquema de trabajo más libre por parte del
grupo.
El laboratorio estará disponible los miércoles de 15.30 a 18 para
quienes quieran venir a trabajar.
El miércoles a las 15.30 y a las 17.30 habrá posibilidad de realizar
consultas.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
9 / 53
Metodología y horarios de clase y de consulta
Las clases serán los viernes de 14.30 a 17.30 horas en el Laboratorio
de Software del Instituto de Ingeniería Eléctrica.
Serán en un formato que combina presentación de temas con mucho
trabajo por parte de los alumnos.
Habrá semanas con un esquema de trabajo más libre por parte del
grupo.
El laboratorio estará disponible los miércoles de 15.30 a 18 para
quienes quieran venir a trabajar.
El miércoles a las 15.30 y a las 17.30 habrá posibilidad de realizar
consultas.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
9 / 53
Metodología y horarios de clase y de consulta
Las clases serán los viernes de 14.30 a 17.30 horas en el Laboratorio
de Software del Instituto de Ingeniería Eléctrica.
Serán en un formato que combina presentación de temas con mucho
trabajo por parte de los alumnos.
Habrá semanas con un esquema de trabajo más libre por parte del
grupo.
El laboratorio estará disponible los miércoles de 15.30 a 18 para
quienes quieran venir a trabajar.
El miércoles a las 15.30 y a las 17.30 habrá posibilidad de realizar
consultas.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
9 / 53
Metodología y horarios de clase y de consulta
Las clases serán los viernes de 14.30 a 17.30 horas en el Laboratorio
de Software del Instituto de Ingeniería Eléctrica.
Serán en un formato que combina presentación de temas con mucho
trabajo por parte de los alumnos.
Habrá semanas con un esquema de trabajo más libre por parte del
grupo.
El laboratorio estará disponible los miércoles de 15.30 a 18 para
quienes quieran venir a trabajar.
El miércoles a las 15.30 y a las 17.30 habrá posibilidad de realizar
consultas.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
9 / 53
Metodología y horarios de clase y de consulta
Las clases serán los viernes de 14.30 a 17.30 horas en el Laboratorio
de Software del Instituto de Ingeniería Eléctrica.
Serán en un formato que combina presentación de temas con mucho
trabajo por parte de los alumnos.
Habrá semanas con un esquema de trabajo más libre por parte del
grupo.
El laboratorio estará disponible los miércoles de 15.30 a 18 para
quienes quieran venir a trabajar.
El miércoles a las 15.30 y a las 17.30 habrá posibilidad de realizar
consultas.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
9 / 53
Metodología y horarios de clase y de consulta
Las clases serán los viernes de 14.30 a 17.30 horas en el Laboratorio
de Software del Instituto de Ingeniería Eléctrica.
Serán en un formato que combina presentación de temas con mucho
trabajo por parte de los alumnos.
Habrá semanas con un esquema de trabajo más libre por parte del
grupo.
El laboratorio estará disponible los miércoles de 15.30 a 18 para
quienes quieran venir a trabajar.
El miércoles a las 15.30 y a las 17.30 habrá posibilidad de realizar
consultas.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
9 / 53
Cronograma
Cuatro Módulos, cada uno de 3-4 talleres
Módulo 1: Arduino y comunicaciones básicas
Módulo 2: Robot
Módulo 3: Aplicación 1 - primer parcial
Módulo 4: Aplicación 2 - segundo parcial
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
10 / 53
Evaluación: obligatorios, parcial y proyecto nal
Habrá preguntas para responder individualmente antes de cada taller.
Se indicarán también lecturas previas respectivas.
Se darán ejercicios prácticos domiciliarios a ser entregados antes del
siguiente taller.
Cada módulo tendrá una evaluación (entrega práctica más informe).
Los entregables de los módulos 2 y 4 serán parciales además con
presentación oral.
Fechas tentativas. Primer parcial; Miércoles 11/5 en la tarde media
hora cada grupo. Parcial nal: Miércoles 22/6 o Viernes 24/6.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
11 / 53
Evaluación: obligatorios, parcial y proyecto nal
Habrá preguntas para responder individualmente antes de cada taller.
Se indicarán también lecturas previas respectivas.
Se darán ejercicios prácticos domiciliarios a ser entregados antes del
siguiente taller.
Cada módulo tendrá una evaluación (entrega práctica más informe).
Los entregables de los módulos 2 y 4 serán parciales además con
presentación oral.
Fechas tentativas. Primer parcial; Miércoles 11/5 en la tarde media
hora cada grupo. Parcial nal: Miércoles 22/6 o Viernes 24/6.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
11 / 53
Evaluación: obligatorios, parcial y proyecto nal
Habrá preguntas para responder individualmente antes de cada taller.
Se indicarán también lecturas previas respectivas.
Se darán ejercicios prácticos domiciliarios a ser entregados antes del
siguiente taller.
Cada módulo tendrá una evaluación (entrega práctica más informe).
Los entregables de los módulos 2 y 4 serán parciales además con
presentación oral.
Fechas tentativas. Primer parcial; Miércoles 11/5 en la tarde media
hora cada grupo. Parcial nal: Miércoles 22/6 o Viernes 24/6.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
11 / 53
Evaluación: obligatorios, parcial y proyecto nal
Habrá preguntas para responder individualmente antes de cada taller.
Se indicarán también lecturas previas respectivas.
Se darán ejercicios prácticos domiciliarios a ser entregados antes del
siguiente taller.
Cada módulo tendrá una evaluación (entrega práctica más informe).
Los entregables de los módulos 2 y 4 serán parciales además con
presentación oral.
Fechas tentativas. Primer parcial; Miércoles 11/5 en la tarde media
hora cada grupo. Parcial nal: Miércoles 22/6 o Viernes 24/6.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
11 / 53
Evaluación: obligatorios, parcial y proyecto nal
Habrá preguntas para responder individualmente antes de cada taller.
Se indicarán también lecturas previas respectivas.
Se darán ejercicios prácticos domiciliarios a ser entregados antes del
siguiente taller.
Cada módulo tendrá una evaluación (entrega práctica más informe).
Los entregables de los módulos 2 y 4 serán parciales además con
presentación oral.
Fechas tentativas. Primer parcial; Miércoles 11/5 en la tarde media
hora cada grupo. Parcial nal: Miércoles 22/6 o Viernes 24/6.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
11 / 53
Evaluación: obligatorios, parcial y proyecto nal
Habrá preguntas para responder individualmente antes de cada taller.
Se indicarán también lecturas previas respectivas.
Se darán ejercicios prácticos domiciliarios a ser entregados antes del
siguiente taller.
Cada módulo tendrá una evaluación (entrega práctica más informe).
Los entregables de los módulos 2 y 4 serán parciales además con
presentación oral.
Fechas tentativas. Primer parcial; Miércoles 11/5 en la tarde media
hora cada grupo. Parcial nal: Miércoles 22/6 o Viernes 24/6.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
11 / 53
Evaluación: obligatorios, parcial y proyecto nal
Habrá preguntas para responder individualmente antes de cada taller.
Se indicarán también lecturas previas respectivas.
Se darán ejercicios prácticos domiciliarios a ser entregados antes del
siguiente taller.
Cada módulo tendrá una evaluación (entrega práctica más informe).
Los entregables de los módulos 2 y 4 serán parciales además con
presentación oral.
Fechas tentativas. Primer parcial; Miércoles 11/5 en la tarde media
hora cada grupo. Parcial nal: Miércoles 22/6 o Viernes 24/6.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
11 / 53
Arrancamos!!!
1
Introducción
2
Hardware
3
Software
Introducción
Control de ujo
Manejo de pines
Materiales con los que vamos a trabajar
Ejercicios para hacer en el taller
EJERCICIOS para entregar en la próxima clase
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
12 / 53
Esquema de la presentación
1
Introducción
2
Hardware
3
Software
Introducción
Control de ujo
Manejo de pines
Materiales con los que vamos a trabajar
Ejercicios para hacer en el taller
EJERCICIOS para entregar en la próxima clase
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
13 / 53
¾Qué es Arduino?
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
14 / 53
¾Un microcontrolador? ¾para qué sirve?
Algunas de las muchas posibles aplicaciones:
Robótica
Control de un invernadero
Control de vehículos
Control de un proceso industrial: temperatura, pH, nivel de un tanque,
motores, etc.
Un sintetizador de sonidos
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
15 / 53
¾Un microcontrolador? ¾para qué sirve?
Algunas de las muchas posibles aplicaciones:
Robótica
Control de un invernadero
Control de vehículos
Control de un proceso industrial: temperatura, pH, nivel de un tanque,
motores, etc.
Un sintetizador de sonidos
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
15 / 53
¾Un microcontrolador? ¾para qué sirve?
Algunas de las muchas posibles aplicaciones:
Robótica
Control de un invernadero
Control de vehículos
Control de un proceso industrial: temperatura, pH, nivel de un tanque,
motores, etc.
Un sintetizador de sonidos
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
15 / 53
¾Un microcontrolador? ¾para qué sirve?
Algunas de las muchas posibles aplicaciones:
Robótica
Control de un invernadero
Control de vehículos
Control de un proceso industrial: temperatura, pH, nivel de un tanque,
motores, etc.
Un sintetizador de sonidos
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
15 / 53
¾Un microcontrolador? ¾para qué sirve?
Algunas de las muchas posibles aplicaciones:
Robótica
Control de un invernadero
Control de vehículos
Control de un proceso industrial: temperatura, pH, nivel de un tanque,
motores, etc.
Un sintetizador de sonidos
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
15 / 53
Arduino Uno
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
16 / 53
Filosofíía: Electrónica Libre
Basada en el software/hardware libre. Permite:
Estudiar el hardware para entender cómo funciona
Hacer modicaciones al hardware
Poder compartir esas modicaciones con la comunidad
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
17 / 53
Filosofíía: Electrónica Libre
Basada en el software/hardware libre. Permite:
Estudiar el hardware para entender cómo funciona
Hacer modicaciones al hardware
Poder compartir esas modicaciones con la comunidad
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
17 / 53
Filosofíía: Electrónica Libre
Basada en el software/hardware libre. Permite:
Estudiar el hardware para entender cómo funciona
Hacer modicaciones al hardware
Poder compartir esas modicaciones con la comunidad
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
17 / 53
Sitio web : http://www.arduino.cc/
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
18 / 53
Filosofía: Electrónica Libre
Consecuencias:
Comunidad activa de usuarios y desarrolladores (foros, ejemplos,
tutoriales, etc)
Gran cantidad de software y hardware disponible para autoconstruir
Precios bajos
Existe mucho material en el Web y muchos proyectos interesantes que
pueden hacer.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
19 / 53
Esquema de la presentación
1
Introducción
2
Hardware
3
Software
Introducción
Control de ujo
Manejo de pines
Materiales con los que vamos a trabajar
Ejercicios para hacer en el taller
EJERCICIOS para entregar en la próxima clase
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
20 / 53
Características
Microcontrolador: ATmega328 (8 bits)
Alimentación via USB (5 V) o independiente (7-12 V)
14 pines de entrada/salida (I/O) digitales (6 con Pulse Width
Modulation: PWM)
Corriente máxima por pin I/O: 40 mA
6 pines de entrada analógica
Permite comunicación serial
Memoria ash: 32 KB
Frecuencia del reloj: 16 MHz
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
21 / 53
Placa
M. Margolis, Arduino Cookbook, O'Reilly Media 2011.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
22 / 53
Esquema de la presentación
1
Introducción
2
Hardware
3
Software
Introducción
Control de ujo
Manejo de pines
Materiales con los que vamos a trabajar
Ejercicios para hacer en el taller
EJERCICIOS para entregar en la próxima clase
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
23 / 53
Lenguaje de programación
Basado en Wiring y similar a C++
Sketches = Código fuente
Lenguaje compilado
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
24 / 53
Entorno de desarrollo: Arduino IDE
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
25 / 53
Proceso
Código fuente
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
26 / 53
Proceso
Código fuente -> Compilación (verify)
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
27 / 53
Proceso
Código fuente -> Compilación (verify) -> Programarlo en la placa (upload)
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
28 / 53
Estructura de un archivo
d e c l a r a c i o n de v a r i a b l e s ;
void setup ()
{
s e t e o de p i n e s ;
i n i c i a l i z a c i o n de l a c o m u n i c a c i o n s e r i a l ;
}
void loop ()
{
l o que voy a h a c e r todo e l ti e m p o ;
}
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
29 / 53
No olvidar ; al nal de cada sentencia!
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
30 / 53
Variables
Tipos
byte: Enteros (1 byte): -128 a 127
int: Enteros (2 bytes): -32.768 a 32767
long: Enteros (4 bytes)
float, double: Números en punto otante (4 bytes)
boolean: Verdadero (TRUE) o Falso (FALSE)
char: Un solo caracter
String: Listas de caracteres
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
31 / 53
Comparación
A == B : A igual a B
A != B : A distinto de B
A < B : A menor que B
A <= B : A menor o igual a B
A > B : A mayor que B
A >= B : A mayor o igual a B
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
32 / 53
Operadores lógicos
A && B : A
AND
A || B : A
OR
B
NOT
A
!A
IIE
:
(TallerIne)
B
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
33 / 53
Control de ujo
if
i f ( condicion ) {
hacer algo ;
}
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
34 / 53
Control de ujo
if
i f ( condicion ) {
hacer algo ;
}
i f ( condicion ) {
hacer algo ;
} else {
hacer otra cosa ;
}
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
35 / 53
Control de ujo
if
i f ( condicion ) {
hacer algo ;
}
i f ( condicion ) {
hacer algo ;
} else {
hacer otra cosa ;
}
// Ejemplo :
i f ( a == 0){
b=1;
}
else {
b=0;
}
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
36 / 53
Otros bloques de control
if
Leerlos del material de estudio
case
for
while
do ... while
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
37 / 53
Otros bloques de control
if
Leerlos del material de estudio
case
for
while
do ... while
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
37 / 53
Otros bloques de control
if
Leerlos del material de estudio
case
for
while
do ... while
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
37 / 53
Manejo de pines digitales
Los pines digitales (pin 0 a 13) pueden tomar sólo 2 valores: 0 V (LOW) o
+5 V (HIGH).
i n t pinEntrada = 10;
i n t pinSalida = 13;
int l l a v e = 0;
void setup (){
pinMode ( p i n E n t r a d a , INPUT ) ;
pinMode ( p i n S a l i d a , OUTPUT) ;
}
void loop (){
l l a v e = d i g i t a l R e a d ( p i n E n t r a d a ) ; // l e e e l v a l o r d e l p i n 10
i f ( l l a v e == LOW){
d i g i t a l W r i t e ( p i n S a l i d a , HIGH ) ; // pone e l p i n 13 en +5V
}else{
d i g i t a l W r i t e ( p i n S a l i d a , LOW) ; // pone e l p i n 13 en +0V
}
}
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
38 / 53
Manejo de pines digitales
Los pines digitales (pin 0 a 13) pueden tomar sólo 2 valores: 0 V (LOW) o
+5 V (HIGH).
i n t pinEntrada = 10;
i n t pinSalida = 13;
int l l a v e = 0;
void setup (){
pinMode ( p i n E n t r a d a , INPUT ) ;
pinMode ( p i n S a l i d a , OUTPUT) ;
}
void loop (){
l l a v e = d i g i t a l R e a d ( p i n E n t r a d a ) ; // l e e e l v a l o r d e l p i n 10
i f ( l l a v e == LOW){
d i g i t a l W r i t e ( p i n S a l i d a , HIGH ) ; // pone e l p i n 13 en +5V
}else{
d i g i t a l W r i t e ( p i n S a l i d a , LOW) ; // pone e l p i n 13 en +0V
}
}
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
38 / 53
Manejo de pines digitales
Los pines digitales (pin 0 a 13) pueden tomar sólo 2 valores: 0 V (LOW) o
+5 V (HIGH).
i n t pinEntrada = 10;
i n t pinSalida = 13;
int l l a v e = 0;
void setup (){
pinMode ( p i n E n t r a d a , INPUT ) ;
pinMode ( p i n S a l i d a , OUTPUT) ;
}
void loop (){
l l a v e = d i g i t a l R e a d ( p i n E n t r a d a ) ; // l e e e l v a l o r d e l p i n 10
i f ( l l a v e == LOW){
d i g i t a l W r i t e ( p i n S a l i d a , HIGH ) ; // pone e l p i n 13 en +5V
}else{
d i g i t a l W r i t e ( p i n S a l i d a , LOW) ; // pone e l p i n 13 en +0V
}
}
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
38 / 53
Arduino
- Arduino
- Protoboard.
¾Cómo estan conectados los bornes?
Figura: http://taller.tagabot.org/index.php/Arduino/Armada
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
39 / 53
Resistencias
Resistencias - Código de Colores. ¾Corriente?
Código colores: tecnorik.blogspot.com
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
40 / 53
LEDs
LEDs. ¾Corriente?
Descripción Led: electroschematics.com
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
41 / 53
Ejemplo: Blink
Veremos un programa ejemplo que prende y apaga periódicamente un LED
conectado entre un PIN y tierra (GND).
Archivo -> Ejemplos -> Basics -> Blink
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
42 / 53
Ejemplo: Blink
Veremos un programa ejemplo que prende y apaga periódicamente un LED
conectado entre un PIN y tierra (GND).
Archivo -> Ejemplos -> Basics -> Blink
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
42 / 53
Ejemplo: Blink
/ ∗ B l i n k : Turns on an LED on f o r one second ,
t h e n o f f f o r one second , r e p e a t e d l y .
T h i s example code i s i n t h e p u b l i c domain . ∗ /
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
43 / 53
Ejemplo: Blink
/ ∗ B l i n k : Turns on an LED on f o r one second ,
t h e n o f f f o r one second , r e p e a t e d l y .
T h i s example code i s i n t h e p u b l i c domain . ∗ /
// Pin 13 has a LED c o n n e c t e d on most A r d u i n o b o a r d s .
G i v e i t a name :
i n t led = 13;
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
44 / 53
Ejemplo: Blink
/ ∗ B l i n k : Turns on an LED on f o r one second ,
t h e n o f f f o r one second , r e p e a t e d l y .
T h i s example code i s i n t h e p u b l i c domain . ∗ /
// Pin 13 has a LED c o n n e c t e d on most A r d u i n o b o a r d s .
G i v e i t a name :
i n t led = 13;
// t h e s e t u p r o u t i n e r u n s once when you p r e s s r e s e t :
void setup () {
// i n i t i a l i z e t h e d i g i t a l p i n a s an o u t p u t .
pinMode ( l e d , OUTPUT) ;
}
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
45 / 53
Ejemplo: Blink
/∗
Blink :
then
This
//
Pin
Give
int
//
//
on
for
one
example
13
has
a
name :
led
=
13;
setup
an
LED
routine
setup ()
LED
on
second ,
code
a
it
the
void
Turns
off
is
for
in
the
connected
runs
one
second ,
repeatedly .
public
on
once
most
when
domain .
∗/
Arduino
boards .
you
press
reset :
{
initialize
pinMode ( l e d ,
the
digital
pin
as
an
output .
over
again
OUTPUT ) ;
}
//
the
void
loop
loop ()
routine
runs
over
and
forever :
{
d i g i t a l W r i t e ( led ,
HIGH ) ;
delay (1000);
d i g i t a l W r i t e ( led ,
delay (1000);
LOW ) ;
//
turn
the
LED
//
wait
for
a
//
turn
the
LED
//
wait
for
a
on
second
off
second
}
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
46 / 53
Comparar con el Blink (1)
int
led
=
13;
boolean
a= f a l s e ;
boolean
b=t r u e ;
boolean
c=t r u e ;
void
setup ()
{
pinMode ( l e d ,
OUTPUT ) ;
}
void
loop ()
{
d i g i t a l W r i t e ( led ,
if
( a ==
! ( b&&c )
HIGH ) ;
||
b==
( ! a && c ) )
{
delay (1000);
d i g i t a l W r i t e ( led ,
LOW ) ;
delay (1000);
}
}
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
47 / 53
Comparar con el Blink (2)
int
led
=
13;
boolean
a= f a l s e ;
boolean
b=t r u e ;
boolean
c=t r u e ;
void
setup ()
{
pinMode ( l e d ,
OUTPUT ) ;
}
void
loop ()
{
d i g i t a l W r i t e ( led ,
if
HIGH ) ;
( a = ( ! ( b &&(! c ) ) ) )
if
( a==b )
{ OJO :
ESTO ES UN ERROR
¾por
qué ?
{
d i g i t a l W r i t e ( led ,
HIGH ) ;
delay (1000);
d i g i t a l W r i t e ( led ,
LOW ) ;
delay (1000);
}
}
}
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
48 / 53
Ejercicios para el Taller
Ej. 1. Implementar el circuito de la gura y escribir un programa que
prenda y apague el LED cada medio segundo. Para eso utilizar la función
delay(x) donde x es el tiempo que se detiene el programa en milisegundos.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
49 / 53
Ejercicios para el Taller
Ej. 2. Escribir un programa que prenda y apague el LED cada un segundo
si la entrada 5 está a 5V y la entrada 6 está a 0V y lo mantenga prendido
permanentemente en otro caso.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
50 / 53
Ejercicios para entregar
Ejercicio para entregar 1.
Modicar el circuito de los ejercicios anteriores y escribir un programa que
prenda y apague secuencialmente tres leds. Es decir se prende un led por
medio segundo, luego se apaga y se prende el siguiente por un segundo,
cuando llega al último vuelve al primero.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
51 / 53
Ejercicios para entregar
Ejercicio para entregar 2.
En base al Ejercicio anterior, se pide hacer que de acuerdo al valor de la
entrada 6, si está a 5V se recorran los leds de derecha a izquierda, cada
medio segundo, y si está a 0 se recorran de izquierda a derecha, cada un
segundo.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
52 / 53
Resumen para la próxima clase
1
2
3
4
5
Si no terminaron los ejercicios para hacer en este taller, terminarlos.
Tener funcionando los ejercicios para entregar 1 y 2.
Quedan disponibles preguntas sobre esta clase y los ejercicios para
entregar, que deberán contestar en el sitio EVA. Lo deberá hacer cada
estudiante individualmente hasta el próximo miércoles.
Deberán entregar en la próxima clase un breve informe de los ejercicios
para entregar 1 y 2. En esos informes debe estar el código fuente y la
explicación de cómo funciona el circuito y el código utilizado.
Esos informes serán corregidos por los docentes y se sorteará un
estudiante de cada grupo (o eventualmente dos) que deberá mostrar
los ejercicios funcionando, explicar al docente lo realizado por el grupo
y contestar las preguntas del docente sobre estos ejercicios o sobre lo
que se preguntó en el EVA. Se evaluará el trabajo del grupo y el
trabajo individual de quienes salgan sorteados.
IIE
(TallerIne)
Taller Introducción a la Ing. Eléctrica
29 de febrero de 2016
53 / 53
Descargar