pinguino pic18f2550
DESCRIPTION
Trabajo acerca de Pinguino cone el PIC18F2550TRANSCRIPT
Plataforma Pingüino
INTRODUCCIÓN
El termino Hardware Libre, surge de la necesidad de hacer referencia a un nuevo
concepto en el desarrollo de tecnologías accesibles y disponibles, para el uso o
acceso del publico en general donde el estudio, modificación, reproducción y
distribución son “Legales”.
Pingüino es un Dispositivo Electrónico capaz de realizar tareas complejas,
procesando distintos tipos de datos; por los puerto periféricos de entrada y salida
que lo conforman.
Un Pinguino puede ser programado con instrucciones lógicas para automatizar
procesos industriales y/o particulares, donde una ventaja de su plataforma de
desarrollo es interactuar con el hardware de manera sencilla y rápida.
Sistemas Digitales Página 1
Plataforma Pingüino
Objetivo General
Desarrollar y estudiar el funcionamiento de los PIC's a través de la
investigación, para poder evaluar la diferencia que radica en los diferentes
modelos
Objetivos Específicos
Identificar las principales ventajas que tiene este tipo de circuitos en la vida
cotidiana.
Estudiar los diferentes y mas usados tipos de PIC's para evaluar cual es el
que mejor se adapta a las necesidades requeridas.
Establecer un marco de referencia para poder evaluar que PIC tiene el
mayor desempeño en cuanto a memoria, capacidad de almacenamiento de
datos.
Sistemas Digitales Página 2
Plataforma Pingüino
Plataforma Pingüino:
Pinguino es una plataforma de hardware y software
"open source" para la experimentación con
microcontroladores, similar a Arduino pero basada en un
microcontrolador PIC18F2550 y cuenta con su propio
Entorno de Desarrollo Integrado de uso y apariencia
similar al de Arduino. A diferencia de la placa Arduino, el Pinguino no necesita una
Interfaz UART a USB adicional para comunicarse con la PC, debido a que el
microcontrolador PIC18F2550 tiene un módulo USB integrado, lo cual le permite
comunicarse directamente con la PC y reduce el costo del hardware, dejando
además libre el puerto UART del microcontrolador para las aplicaciones.
El circuito básico del Pinguino es muy simple y sólo se precisan unos pocos
componentes; todo el software necesario está disponible para bajarse de internet
gratuitamente. A pesar de estar todavía en de desarrollo, la plataforma promete
mucho en cuanto a costo de entrada pues es muy económico, los componentes de
la placa son mínimos y relativamente más fáciles de conseguir en Bolivia y
Latinoamérica en comparación con el Arduino.
Sistemas Digitales Página 3
Plataforma Pingüino
Hardware de la Placa Pinguino
Sistemas Digitales Página 4
Plataforma Pingüino
Sistemas Digitales Página 5
Plataforma Pingüino
Materiales Necesarios:
Sistemas Digitales Página 6
Plataforma Pingüino
C1 Capacitor de poliéster 22pF 0.20
C2 Capacitor de poliéster 22pF 0.20
C3 Capacitor de poliéster 100nF 0.30
C4 Capacitor de poliéster 220nF 0.30
C5 Capacitor electrolítico 10uF 0.30
C6 Capacitor electrolítico 10uF 0.30
R1 Resistencia 10KΩ 0.30
R2 Resistencia 470Ω 0.30
R3 Resistencia 470Ω 0.30
X1 Resonador 20Mhz
U1 Regulador LM7805 0.70
U2 PIC18F2550 23
RUN LED verde de 3mm 0.15
PWR LED rojo de 3mm 0.15
SW1 Botón pulsador pequeño 0.60
SW2 Botón pulsador pequeño 0.60
USB USB BERG tipo B(conector hembra USB tipo B)
CT1 Bornera de 2 pines 0.35
3 Brocas 1/16 0.75
3 Jumpers
Tira de pines hembra
Tira de pines macho (mínimo 40 pines)
Tableta de cobre 1.25
4 resistencias de 220Ω
2 yardas de estaño $0.80
2 onzas de percloruro $1.80
2 bases DIP de 28 pines 0.40
1 base DIP de 40 pines
Software Necesario Para Pinguino
Sistemas Digitales Página 7
Plataforma Pingüino
Actualmente el software para Pinguino solo está soportado oficialmente para los
sistemas operativos Linux, Windows XP, Windows 7 y MACOSX, sin embargo
probamos instalarlo en Windows Vista (Home Premiun Service Pack 2) y funcionó
junto al hardware sin problemas desde el inicio.
Debido a que el entorno de desarrollo integrado de Pinguino (versión beta al
momento de la preparación de este tutorial), el cual permite escribir, compilar y
grabar los programas, está escrito en Python, es necesario instalar componentes
Python para su funcionamiento. En el caso de Windows, la lista de componentes
varía ligeramente según sea el sistema operativo (Windows XP o 7) en el cual
querramos instalar, sin embargo todo esto está detallado en los tutoriales oficiales
del proyecto Pinguino.
Instalación del Software Pinguino en Windows 7
En el sitio : https://sites.google.com/site/pinguinotutorial/installation/windows-7 se
encuentra el procedimiento para la instalación del software en Windows 7. Como
se encuentra en inglés, simplemente lo tradujimos y desarrollamos a continuación.
Primero es necesario instalar el driver libusb. El instalador lo puedes bajar de aquí
(http://www.hackinglab.org/pinguino/download/driver%20pinguino%20windows
%207/setup.exe).
Este driver es compatible con 32 y 64 bits con múltiples arquitecturas
( X86,AMD64,IA64 ).
Cuando este driver esté instalado, conecta tu placa Pinguino y verifica en el
Administrador de Dispositivos (panel de control/sistema/administrador de
dispositivos). Se debe ver algo parecido a esto:
Sistemas Digitales Página 8
Plataforma Pingüino
Si "Pinguino project" aparece con un ícono de advertencia (!), selecciónalo, haz
click en "propiedades", selecciona el botón "Driver" y haz click en el botón "Update
Driver". A continuación deberás elegir la opción "Browse my computer for driver
software" para guiar a la computadora a una instalación manual del software. la
localización del driver y el archivo pinguino.inf se encuentra en c:\program files\
LibUSB\driver
Luego debes instalar:
Python 2.6.6 (http://www.python.org/ftp/python/2.6.6/python-2.6.6.msi)
wxpython 2.8 (http://downloads.sourceforge.net/wxpython/wxPython2.8-
win32-unicode-2.8.11.0-py26.exe)
pyusb for python 2.6 (http://sourceforge.net/projects/pyusb/files/PyUSB
%200.x/0.4.3/pyusb-0.4.3.win32-py2.6.exe/download)
Descarga la última versión de Pinguino:
(http://www.hackinglab.org/pinguino/download/latestpinguino/)
Sistemas Digitales Página 9
Plataforma Pingüino
Extráelo a una carpeta de tu elección, ingresa al folder y haz click en el archivo
"pinguinobetax-x.py" (pinguinobeta9-05windows.py al momento de la preparación
de este tutorial) para lanzar el entorno de desarrollo integrado. (Si el archivo sale
como desconocido para el sistema operativo, hacer clcik derecho en el archivo,
elegir "Abrir con.." y selecciona Python.)
Probé el procedimiento de instalación en una laptop HP con Windows 7 de 64 bits
y funcionó sin problema. El único problema que se presentó es que el driver no se
instaló apropiadamente de inicio (aparecía "Pinguino project" con el ícono de
advertencia) pero siguiendo el procedimiento arriba indicado se solucionó al
instante.
Instalación del Software Pinguino en Windows XP
En el sitio: https://sites.google.com/site/pinguinotutorial/installation/windows se
encuentra el procedimiento para la instalación del software en Windows XP,
también está en ingles, pero es muy similar al procedimiento para Windows 7
arriba detallado. Se debe tomar en cuenta sin embargo, que los componentes de
software para la instalación son de versiones distintas y los enlaces para bajarlos
se encuentran también en dicha página.
Instalación del Software Pinguino en Windows Vista
Como dije al principio, el entorno de desarrollo no está oficialmente soportado para
Windows Vista y no existe ningún tutorial en el sitio oficial para su instalación en
este sistema operativo, sin embargo yo por mi parte logré una instalación exitosa
en una laptop HP con Windows Vista (Home Premiun Service Pack 2) utilizando el
mismo procedimiento y componentes de la instalación en Windows 7. Obviamente
no garantizo que pueda funcionar en cualquier máquina con Windows Vista,
solamente lo comparto como información para quien quiera probar por su propia
cuenta.
Sistemas Digitales Página 10
Plataforma Pingüino
Corriendo el Primer Programa
En la página: https://sites.google.com/site/pinguinotutorial/beginners/led-blink se
encuentra un ejemplo sencillo de programa para el Pinguino para probar que todo
funciona correctamente. Todo lo que hace es simplemente prender y apagar un
LED intermitentemente. Lo traducimos a continuación para su conveniencia
(dibujos y texto original perteneciente al mencionado sitio):
Led Blink: Esta es la primera prueba de tu placa Pinguino. La meta es parpadear
un LED.
Qué necesitas:
Circuito de prueba:
Nota: PIN 0 corresponde a USER I/O-0 en el diagrama de circuito del Pinguino.
Sistemas Digitales Página 11
Plataforma Pingüino
Software
Copia el siguiente código en la ventana de un nuevo
01.// Parpadeo de prueba con Pinguino
02.
03.#define PIC18F2550
04.
05.void setup()
06.{
07.pinMode(0,OUTPUT);
08.}
09.
10.void loop()
11.{
12.digitalWrite(0,HIGH);
13.delay(500);
14.digitalWrite(0,LOW);
15.delay(500);
16.}
Compílalo con el botón "Compile" en el menú de íconos (si apuntas los
íconos con el mouse, se pueden ver los nombres de cada función realizada
por cada ícono).
Cárgalo a tu placa o circuito Pinguino con el botón "Upload to Pinguino"
En la ventana "Vascobootloader" pulsa el botón "Write" para cargar el
programa al circuito Pinguino. Una vez cargado, el programa empieza a
ejecutarse automáticamente y en este caso el LED empieza a parpadear.
Prueba algo: el número "500" en la instrucción "delay(500);" representa el tiempo
en milisegundos que el LED permanece prendido y apagado para lograr el
parpadeo. Cambia la cantidad a digamos 200 u 800 para ver qué sucede.
Sistemas Digitales Página 12
Plataforma Pingüino
Nota: Para grabar otro nuevo programa en la placa, si esta ya ha sido grabada y
está corriendo un programa anterior, debes apretar el botón reset, contar hasta 3 y
recién pulsar el botón "Write" en la ventana "Vascobootloader", de otro modo el
Pinguino no es reconocido por el software.
La explicación del funcionamiento del lenguaje usado en Pinguino (que es el
mismo que el usado en Arduino) sale del alcance de este tutorial, sin embargo se
puede encontrar una referencia completa del mismo en el sitio oficial de Arduino:
http://arduino.cc/es/Reference/HomePage
Así como varios tutoriales en: http://arduino.cc/es/Tutorial/HomePage
Sitio Oficial
El desarrollador del proyecto Pinguino es Jean Pierre Mandon, cuyo sitio oficial es:
http://www.hackinglab.org/ y el sitio de tutoriales se encuentra en
https://sites.google.com/site/pinguinotutorial/home donde se encuentra información
de loscircuitos y placas oficiales de Pinguino con PIC18F2550 y PIC18F4550, los
procedimientos de instalación ya descritos, varios ejemplo de programa para
principiantes y demás información adicional.
Sistemas Digitales Página 13
Plataforma Pingüino
Conclusión
En nuestro nos me llevó no mas de un día armar el circuito, instalar el software y
correr nuestro primer programa. La plataforma todavía está en etapa de desarrollo
y se han reportado ciertos casos de problemas de instalación incluso en los
sistema soportados Windows XP y 7, sin embargo, otras plataformas (incluyendo
Arduino) presentan también esporádicamente los mismos problemas. El costo es
muy atractivo, pues los componentes cuestan casi la mitad que lo que cuesta
armar un circuito Arduino básico; el hecho de no necesitar un circuito adicional de
interfaz USB abarata su costo.
El entorno de desarrollo es básicamente similar al de Arduino, el lenguaje de
programación también y por consiguiente podemos suponer que muchos
programas y librerías existentes para Arduino pueden ser usadas o adaptadas con
facilidad para su uso con Pinguino.
Sistemas Digitales Página 14
Plataforma Pingüino
ANEXOS:
Sistemas Digitales Página 15