pinguino pic18f2550

18
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

Upload: william-diaz

Post on 30-Dec-2014

145 views

Category:

Documents


9 download

DESCRIPTION

Trabajo acerca de Pinguino cone el PIC18F2550

TRANSCRIPT

Page 1: Pinguino PIC18F2550

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

Page 2: Pinguino PIC18F2550

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

Page 3: Pinguino PIC18F2550

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

Page 4: Pinguino PIC18F2550

Plataforma Pingüino

Hardware de la Placa Pinguino

Sistemas Digitales Página 4

Page 5: Pinguino PIC18F2550

Plataforma Pingüino

Sistemas Digitales Página 5

Page 6: Pinguino PIC18F2550

Plataforma Pingüino

Materiales Necesarios:

Sistemas Digitales Página 6

Page 7: Pinguino PIC18F2550

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

Page 8: Pinguino PIC18F2550

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

Page 9: Pinguino PIC18F2550

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

Page 10: Pinguino PIC18F2550

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

Page 11: Pinguino PIC18F2550

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

Page 12: Pinguino PIC18F2550

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

Page 13: Pinguino PIC18F2550

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

Page 14: Pinguino PIC18F2550

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

Page 15: Pinguino PIC18F2550

Plataforma Pingüino

ANEXOS:

Sistemas Digitales Página 15