Escolar Documentos
Profissional Documentos
Cultura Documentos
Que es pingüino son descargados por medio del puerto USB, sin la
Pingüino es un tarjeta como el Arduino pero basada en necesidad de utilizar un programador de
microcontroladores, además de que se puede probar
un microcontrolador PIC. La meta de este proyecto el
la de construir un IDE de fácil utilización en LINUX, inmediatamente la aplicación sin necesidad de
desconectar el sistema del computador siempre y
WINDOWS y MAC OS X.
cuando el circuito no necesite mas potencia que la
Arduino es una herramienta poderosa con muchos suministrada por el puerto USB, en otras palabras no
desarrollos. Pero uno de sus se necesita fuente de
inconvenientes es que no tiene una alimentación externa para el
interfase nativa USB, es por esto “PINGUINO permite la realización circuito en estas condiciones.
que la tarjeta Pingüino se hace tan de programas en un lenguaje de alto
llamativa. Arduino y Pingüino nivel similar al C, con unas funciones Una tarjeta Pingüino tiene
grabado un programa que
comparten el mismo lenguaje de
definidas y orientadas al manejo del permite su funcionamiento
programación así que no es tan
difícil de migrar a una o la otra, hardware del microcontrolador ” como bootloader, es decir
que se pueden cargar
esto ya dependerá del gusto o
programas compilados sin la
necesidades del usuario.
necesidad de utilizar un
El hardware de Pingüino esta basado en el programador de microcontroladores, sin embargo este
microcontrolador PIC 18F2550, que tiene tiene un programa bootloader si debe ser grabado primero con
modulo nativo USB y una UART para comunicación un programador de microcontroladores PIC.
serial.
Pingüino es open hardware y open software. Para que sirve Pingüino
Pingüino es una tarjeta sencilla, flexible y fácil de usar
Como se programa la tarjeta pingüino que sirve para el prototipado rápido de aplicaciones
El modulo PINGUINO permite la realización de microcontroladas y de electrónica en general. Es una
programas en un lenguaje de alto nivel similar al C, herramienta utilizada por estudiantes de ingeniería
con unas funciones definidas y orientadas al manejo electrónica, de ingeniería multimedia, artistas plásticos
del hardware del microcontrolador. en muchas partes del mundo, para la realización de
proyectos particulares.
Los programas una vez compilados en el computador
Características del PIC 18F2550 Como montar la tarjeta
La Tabla 1 muestra algunas de las características mas En esta guia están los diagramas de montaje, ya sea
sobresalientes de este microcontrolador que el el para un protoboard o tarjeta universal. Se recomienda
corazón del la tarjeta Pingüino. la tarjeta universal ya que el conector USB no esta
Este micro es compatible con el microcontrolador adaptado para encajar bien en el protoboard.
18F4550 en el caso de necesitar un microcontrolador Los enlaces para bajar este documento, esta en la
con mas pines de entrada y salida. dirección http://integradorelectronica.blogspot.com
El microcontrolador 18F2550 tiene como ventaja que están los archivos para el montaje, puede imprimir el
puede conseguirse el el mercado de componentes archivo . pegarlos sobre una tarjeta universal que tenga
el mismo esquema de un protobard, utilizándolo como
electrónicos de la ciudad de Cali y es de bajo costo.
guia.
Parámetros Valores
Program Memory (KB) 32
CPU Speed (MIPS) 12
RAM Bytes 2,048
Data EEPROM (bytes) 256
Digital Communication 1-A/E/USART
Peripherals 1-MSSP(SPI/I2C)
Capture/Compare/PWM 2 CCP
Peripherals
Timers 1 x 8-bit
3 x 16-bit
ADC 10 chanels, 10-bit
Comparators 2
USB (ch, speed, 1, Full Speed, USB 2.0
compliance)
Operating Voltage 2 to 5.5
Range (V) Periféricos PIC 18F2550
Tabla 1
IC
2 Led ON RUN
2 Resistencias 470ohm
2 Capacitor 22pf
1 Capacitor 0.1uf
1 Capacitor 10uf
1 Conector USB
1 Oscilador 20Mhz
Diagrama para su
montaje en protoboard
Esquema 3
Montaje en el protoboard
Motores Unipolares
Este tipo de motor paso a paso es que
utilizaremos en nuestro ejemplo con la tarjeta
pingüino. Este tipo de motor se identifica por que
puede tener 5, 6 u 8 cables. En caso de 5 cables
uno de ellos es el común a todas la bobinas, en
el de 6 cables hay un común por cada par de Resistencia en bobinas
bobinas y finalmente en el de 8 cables no hay
punto común en las bobinas.
Configuración pines
El siguiente paso sera el de generar los pasos
para polarizar las bobinas del motor,
emplearemos el método de una fase o
denominado por ola. Si se observa este método
necesita 4 pasos para hacer un ciclo completo,
así que en nuestro programa generaremos estos
4 pasos.
Una de las parámetros del motor es el de la
frecuencia máxima por paso, esto quiere decir
que entre paso y paso debe haber un retardo, en
nuestro ejemplo sera de 100 milisegundos.
Como ejemplo se supondrá que el motor es de
7,5 grados por paso así que dará un giro
completo en 48 pasos.
Conexión con el ULN2003
También si cada paso demora 100 milisegundos
tardara 4800 milisegundos o 4,8 segundos en dar
el giro completo.
El bloque de programa en donde escribimos el
código para generar la secuencia de pasos es el
void loop(void) se observa que polarizamos
bobina por bobina y que este proceso se repite
indefinidamente.
Ejemplo : Hacer un programa que haga girar el
motor 5 giros completos en sentido a las
manecillas del reloj y que terminado este proceso
de 5 giros completos en sentido opuesto a las
manecillas del reloj.
void loop(void)
{
for(i=1;i<=5;i++){
for(j=1;i<=48;j++){
digitalWrite(13,HIGH);//1
digitalWrite(14,LOW);//0
digitalWrite(15,LOW);//0
digitalWrite(16,LOW);//0
delay(100);
digitalWrite(13,LOW);//0
digitalWrite(14,HIGH);//1
digitalWrite(15,LOW);//0
digitalWrite(16,LOW);//0
delay(100);
digitalWrite(13,LOW);//0
digitalWrite(14,LOW);//0
digitalWrite(15,HIGH);//1
digitalWrite(16,LOW);//0
Ciclo de pasos completo delay(100);
digitalWrite(13,LOW);//0
digitalWrite(14,LOW);//0
digitalWrite(15,LOW);//0
digitalWrite(16,HIGH);//1
delay(100);
}//fin for 48 pasos
}// fin for 5 giros
//Giro en el otro sentido
for(i=1;i<=5;i++){
for(j=1;i<=48;j++){
digitalWrite(13,LOW);//0
digitalWrite(14,LOW);//0
digitalWrite(15,LOW);//0
digitalWrite(16,HIGH);//1
delay(100);
digitalWrite(13,LOW);//0
digitalWrite(14,LOW);//0
digitalWrite(15,HIGH);//1
digitalWrite(16,LOW);//0
delay(100);
digitalWrite(13,LOW);//0
digitalWrite(14,HIGH);//1
digitalWrite(15,LOW);//0
digitalWrite(16,LOW);//0
delay(100);
digitalWrite(13,HIGH);//1
digitalWrite(14,LOW);//0
digitalWrite(15,LOW);//0
digitalWrite(16,LOW);//0
delay(100);
}//fin for 48 pasos
}// fin for 5 giros
}