0% encontró este documento útil (0 votos)
5 vistas39 páginas

Clase 4

El documento aborda el uso de librerías en Arduino, explicando su estructura y cómo instalarlas, ya sea manualmente o a través del gestor de librerías. También se discuten conceptos relacionados con microcontroladores, actuadores y robots seguidores de línea, así como ejemplos de código para la implementación de sensores y controladores. Se incluyen preguntas para reflexionar sobre el contenido y su aplicación práctica.

Cargado por

gabriel barrera
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
5 vistas39 páginas

Clase 4

El documento aborda el uso de librerías en Arduino, explicando su estructura y cómo instalarlas, ya sea manualmente o a través del gestor de librerías. También se discuten conceptos relacionados con microcontroladores, actuadores y robots seguidores de línea, así como ejemplos de código para la implementación de sensores y controladores. Se incluyen preguntas para reflexionar sobre el contenido y su aplicación práctica.

Cargado por

gabriel barrera
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 39

UNITEC

MICROPROCESADORES
CLASE 4
LOS SISTEMAS DE LIBRERIAS DE ARDUINO

Las librerías son trozos de código hechas por


terceros que usamos en nuestro sketch. Esto
nos facilita mucho la programación y permite
la abstracción haciendo que nuestro programa
sea más sencillo de hacer y de entender. En
este apartado también veremos cómo escribir
o modificar librerías.
Disponemos de infinidad de librerías a nuestra
disposición para facilitarnos el trabajo, todas
ellas son open source y disponemos de su
código.

01 / 10
CONTENIDO DE LA LIBRERIA

• Un archivo .cpp (código de C++)


• Un archivo .h o encabezado de C, que contiene las
propiedades y métodos o funciones de la librería.
• Un archivo Keywords.txt, que contiene las palabras
clave que se resaltan en el IDE (opcional).
• Muy posiblemente la librería incluye un archivo
readme con información adicional de lo que hace y
con instrucciones de como usarla.
• Directorio denominado examples con varios sketchs
de ejemplo que nos ayudará a entender cómo usar la
librería (opcional).

01 / 10
COMO SE USAN
Para usar una librería que acabamos de instalar, lo
que hay que hacer es leer la documentación de esa
librería si es que está disponible y luego leer y probar
los ejemplos que dispone la librerías.
Pero ahora que ya sabemos manejar clases y objetos,
si queremos entrar a fondo en una librería para saber
usarla, podemos abrir el fichero del encabezado (.h) y
ver las propiedades y métodos, ver si hereda de otra
librería, etc… y luego incluso ver cómo funciona la
propia librería leyendo el código en el fichero .cpp e
incluso si nos atrevemos añadir nuevos métodos o
modificar un método que nos interese.

https://es.wikipedia.org/wiki/Reset
http://apuntes-electronicos.blogspot.com/2013/02/diseno-de-sistema-microcontrolador-en.html
http://hyperphysics.phy-astr.gsu.edu/hbasees/Electronic/setreset.html
01 / 10
01 / 10
INSTALACION
• Instalación Manual. Descomprimiendo en un directorio la librería y
copiandolo en el directorio de librerías. Generalmente Mi
Documentos – Arduino – libraries. Aquí se guardan las librerías
contribuidas por el usuario como lo denomina el IDE.
• Desde el gestor de librerías. A partir de la versión 1.6.2 del IDE de
Arduino se incorpora el gestor de librerías que facilita el trabajo.
Esta herramienta es accesible desde Programa → Incluir Librería →
Gestionar Librerías. Desde aquí podemos ver las librerías instaladas,
buscar librerías disponibles, instalar librerías y actualizarlas.
Esta herramienta también nos permite gestionar las librerías
instaladas manualmente.
Desde C:\Users\nombre_usuario\AppData\Local\Arduino15, podemos
ver en formato json el listado de librerías y placas disponibles desde
el gestor de librerías y tarjetas.

01 / 10
Acumulador

Es el registro principal de un microprocesador o microcontrolador, el único


registro de memoria que tiene conexión con todas las instrucciones , los
espacios de memoria y los puertos de entrada- salida

Ejemplo:

Dato llega al periférico de entrada—acumulador—acumulador dato a la salida

01 / 10
Ayuda automática librería

01 / 10
01 / 10
Posibles librerías
LCD
SERVO
SENSORES DE TEMPERATURA
BIOELECTRONICAS
MODULACION DE PULSOS PWM
SERIAL
I2C
SENSORES EN GENERAL

01 / 10
¿Que es un seguidor de línea?

Es un robot capas de seguir un camino señalizado


de alguna forma, esto pude ser mediante métodos
ópticos ,magnéticos, reconocimiento de imágenes u
otros.

Los más sencillos de construir , son los ópticos y su


aplicación puede ser variada, pero lo platicáremos
después.
Un robot seguidor de líneas es uno de los proyectos , más recomendables
para empezar en el mundo de la robótica.
Mediante sensores estos pueden seguir una línea, utilizando varios
métodos,
en esta ocasión utilizaremos sensores ópticos.
Los robots seguidores de línea se utilizan en la industria en muy diversas
áreas.
En cuestiones Didácticas y Concursos, fomentan el concomimiento , y
habilidades mentales en el diseño de nuevas aplicaciones tecnológicas

02 / 10
En esta temática , las pistas de prueba utilizadas para seguidores de línea ópticos infrarrojos son
de dos tipos , Una superficie Negra , con línea blanca, y planos blancos , con líneas negras, el
grosor estándar es el de la cinta de aislar 3M.

02 / 10
Para poder “VER” la línea el Robot Utiliza Sensores, uno de los los mas comunes son los
Infrarrojos

02 / 10
Que tiene adentro un sensor

02 / 10
Otros sensores
CNY-70 o el QR1114

02 / 10
Controladores: (cerebros)

Estos pueden ser muy sencillos, emulando actos reflejos , ( estos son reflejados por
comportamientos neuronales pre condicionados). NO necesariamente razonados.
Algunos Seres vivos , como los insectos , presentan estos, por su simplicidad, El diseñador
electrónico , utiliza esta técnica:

Comprende en este tipo de diseño , el caso de simples alambrados , circuitos electrónicos muy
baciscos.

02 / 10
Otros Controladores , pueden ser más complejos:
Como Los microcontroladores o los populares SBC

02 / 10
SEÑALES DIGITALES BAJO
SEÑALES ANALOGICAS DE
NIVEL
BAJO NIVEL

SENSORES CONTROLADORES
SBC

02 / 10
ALGO DE BATERIAS:
• DESECHABLES
• RECARGABLES TRADICIONALES
• RECARGABLES NUEVA
GENERACION

02 / 10
ACTUADORES
Los actuadores: transforman señales de bajo
nivel , a señales de POTENCIA

02 / 10
02 / 10
02 / 10
Motor de corriente
directa
Características:

• Buen Torque
• Se alimenta con
baterías
• Cambio de polaridad
• Cambio velocidad

02 / 10
10 / 10
// Declaracion de librerias
#include <dht11.h>
#include <LiquidCrystal_I2C.h>
//Declaracion de variables

LiquidCrystal_I2C lcd(0x27, 16, 2);


const int LEDROJO =2; // pin conectado al led rojo
const int LEDAMARILLO =3; // pin conectado al led
amarillo
const int LEDVERDE=4; // pin conectado a led verde
const int BOTON=5; // pin de boton para selector
dht11 DHT;
#define DHT11_PIN 6
int err;
float temp, hum;
int a,direccion, direcciony,CONTROL,selec;

01 / 10
void setup() {
direccion=0;
direcciony=20;
CONTROL=0;
//lcd.begin(); //Si marca error intenta con lcd.init();
lcd.init();
lcd.backlight();
Serial.begin(9600);
pinMode(LEDROJO, OUTPUT);// lo hace salida
pinMode(LEDAMARILLO,OUTPUT);// lo hace salida
pinMode(LEDVERDE, OUTPUT);// lo hace salida
pinMode(BOTON, INPUT);// lo hace entrada
lcd.setCursor(1, 0);

lcd.print("Centro de");
lcd.setCursor(0, 1);
lcd.print("Temperatura 0.0");
delay(3000);
lcd.clear();
lcd.setCursor(13,1);
lcd.print("OFF");
}

01 / 10
void loop()
{
selector();
SENSOR();
if (selec==1)
TEMPERATURA();
if (selec==2) HUMEDAD();
if (selec==3)
CONTROLADOR();
ACCION();
}

01 / 10
void selector()
{
a=analogRead(A0);
a=map(a,0,1023,0,100);
// Serial.println(a);
if (a>=12 && a<=14)
direccion=direccion+1;
if (a>=15 && a<=17)
direccion=direccion-1;
if (direccion==4) direccion=0;
if (direccion=
=-1)direccion=3;

selec=direccion;
//Serial.println(direccion);
//delay(500);
}

01 / 10
void SENSOR()
{
float dato;
dato = DHT.read(DHT11_PIN);
hum=DHT.humidity;
temp=DHT.temperature;
delay(100);
}

void TEMPERATURA()
{
lcd.setCursor(0, 0);
lcd.print(" ");
lcd.setCursor(2, 1);
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("La temperatura es:");
lcd.setCursor(2, 1);
lcd.print(temp);
lcd.print(" C");
Serial.print("La temperatura es: ");
Serial.print(temp);
Serial.println(" C");

01 / 10
void ACCION()
{
if (CONTROL==1 && temp>=direcciony)
{
digitalWrite(LEDROJO,HIGH);
digitalWrite(LEDAMARILLO,HIGH);
lcd.setCursor(13, 1);
lcd.print("ON ");
}
if (CONTROL==1 && temp>=(direcciony+2))
{
digitalWrite(LEDROJO,LOW);
digitalWrite(LEDAMARILLO,LOW);
lcd.setCursor(13,1);
lcd.print("OFF");
}
if (CONTROL==1 && temp<=direcciony)
{
digitalWrite(LEDROJO,LOW);
digitalWrite(LEDAMARILLO,LOW);
lcd.setCursor(13,1);
lcd.print("OFF");
}
if (CONTROL==0 )
{
digitalWrite(LEDROJO,LOW);
digitalWrite(LEDAMARILLO,LOW);
lcd.setCursor(13,1);
lcd.print("OFF");
}
}
01 / 10
void HUMEDAD()
{
lcd.setCursor(0, 0);
lcd.print(" ");
void CONTROLADOR()
lcd.setCursor(2, 1);
{
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.setCursor(0, 0);
lcd.print(" ");
lcd.print("La humedad es:");
lcd.setCursor(2, 0);
lcd.setCursor(2, 1);
lcd.print(" ");
lcd.print(hum);
lcd.setCursor(0, 0);
Serial.print("La humedad es: ");
lcd.print("La temp de control es:");
Serial.println(hum);
lcd.setCursor(2, 1);
lcd.print(direcciony);
}
lcd.print(" C ");

a=analogRead(A0);
a=map(a,0,1023,0,100);
Serial.println(a);
if (a>=23 && a<=26) direcciony=direcciony+1;
if (a>=15 && a<=20) direcciony=direcciony-1;
if (a>=49 && a<=51) CONTROL=1;
if (a>=100 && a<=102) CONTROL=0;
Serial.println(CONTROL);

01 / 10
PRACTICA NO 3
•Arduino uno o nano con cable
 Motoreductor CABLES MONTADOS
 Puente h L298 para arduino
 Potenciometro 10K
 TCR5000 MODULO DE SEGUIMIENTO 8
CANALES
 Protoboard
 Cables jumpers

01 / 10
01 / 10
01 / 10
01 / 10
CUESTIONARIO PRACTICA NO 2

Describe los dos métodos de carga de librerias


Qué ventajas tiene una interface del joystick , calcula los voltajes
Explica funcionamiento del procedimiento CONTROLADOR
Explica funcionamiento del procedimiento ACCION

01 / 10
CUESTIONARIO 3
1)Que es una librería
2)Determina las características
eléctricas del sensor de temp
3)Para que serviría un control así
4)Reflexiona acerca del mapeo del
selector con joystik
GRACIAS

También podría gustarte