El documento presenta un taller sobre introducción a la robótica educativa con hardware libre utilizando la plataforma Pinguino. Se explica que Pinguino es similar a Arduino pero basado en microcontroladores PIC de Microchip y es de código y hardware abiertos. El taller cubre temas como qué es un robot, proyectos de hardware libre como RepRap, Raspberry Pi y Arduino, y construcción de un prototipo básico de Pinguino con PIC18F2550.
3. TSU en Informática. Egresado del IUTIRLA
Cumaná. Estudiante Ing. Informática
UPTOS “Clodosbaldo Russián”.Activista
del Software Libre en Venezuela,
pertenece al Grupo de Usuario de
Software Libre de Cumaná CLUG.
Promotor del uso de Hardware y
Tecnologías Libres. 100% comprometido
con la Soberanía e Independencia
Tecnológica.
T.S.U. Oswaldo Hernández
Cel: 0416-593.63.95
@cumanadigital
oswaldoehc@gmail.com
http://cumanadigital.net.ve
http://cumanadigital.blogspot.com
21. Taller de Pinguino
Introducción a la Robótica Educativa con Hardware Libre
Hardware Libre
Hardware de Fuentes Abiertas
Open Source Hardware (OSHW)
Las fuentes del hardware
(entendidas como los ficheros
fuente) habrán de estar disponibles
en un formato apropiado para poder
realizar modificaciones sobre ellas.
Declaración de
Principios 1.0
Es aquel cuyo diseño se hace disponible públicamente
para que cualquier persona lo pueda estudiar, modificar,
distribuir, materializar y vender, tanto el original como
otros objetos basados en ese diseño.
http://www.oshwa.org/definition/spanish/
22. Algunos Proyectos de Hardware Libre
- Elphel, Inc. Cámaras reconfigurables de red
oswaldoehc@gmail.com / @cumanadigital
Taller de Pinguino
Introducción a la Robótica Educativa con Hardware Libre
23. Algunos Proyectos de Hardward Libre
- RepRap: Impresoras 3D.
oswaldoehc@gmail.com / @cumanadigital
Taller de Pinguino
Introducción a la Robótica Educativa con Hardware Libre
24. Algunos Proyectos de Hardware Libre
https://www.youtube.com/watch?v=NX46AXfkbso
RepRap BCN3D Printer
Taller de Pinguino
Introducción a la Robótica Educativa con Hardware Libre
25. Algunos Proyectos de Hardware Libre
- OpenMoko - Framework de open phone.
oswaldoehc@gmail.com / @cumanadigital
Taller de Pinguino
Introducción a la Robótica Educativa con Hardware Libre
26. Algunos Proyectos de Hardware Libre
Project Ara
Nace de Phoneblocks, un smartphone modular
Taller de Pinguino
Introducción a la Robótica Educativa con Hardware Libre
https://www.youtube.com/watch?v=intua_p4kE0
27. Algunos Proyectos de Hardware Libre
- OScar: es el primer intento
de diseñar un coche entero
usando los principios de la
cultura libre.
oswaldoehc@gmail.com / @cumanadigital
Taller de Pinguino
Introducción a la Robótica Educativa con Hardware Libre
28. Algunos Proyectos de Hardware Libre
Open Source Ecology
Desarrollar una nueva generación de maquinaria
industrial con acceso universal.
Taller de Pinguino
Introducción a la Robótica Educativa con Hardware Libre
29. Algunos Proyectos de Hardware Libre
Open Source Ecology
https://www.youtube.com/watch?v=HE6d-RXhVL0
Taller de Pinguino
Introducción a la Robótica Educativa con Hardware Libre
30. Algunos Proyectos de Hardware Libre
Novena
Iniciativa que recientemente ha promovido la
fabricación del primer ordenador portátil “de código
abierto"
Taller de Pinguino
Introducción a la Robótica Educativa con Hardware Libre
31. Algunos Proyectos de Hardware Libre
Uzebox
Desarrollar una
consola de
videojuegos
totalmente libre
y abierta
Taller de Pinguino
Introducción a la Robótica Educativa con Hardware Libre
32. Hardware Libre en dispositivos electrónicos
Raspberry Pi. es un ordenador de placa reducida o
(placa única) (SBC) de bajo costo.
oswaldoehc@gmail.com / @cumanadigital
Taller de Pinguino
Introducción a la Robótica Educativa con Hardware Libre
33. Hardware Libre en dispositivos electrónicos
- Arduino. Tarjeta de I/O y ambiente de desarrollo.
oswaldoehc@gmail.com / @cumanadigital
Taller de Pinguino
Introducción a la Robótica Educativa con Hardware Libre
34. Hardware Libre en dispositivos electrónicos
- Arduino. Diversos Sabores
oswaldoehc@gmail.com / @cumanadigital
Taller de Pinguino
Introducción a la Robótica Educativa con Hardware Libre
38. Pinguino
Es una plataforma similar a Arduino, y compatible
con ella, pero basada en los micro-controladores PIC
Microchip de 8 o 32 bits.
oswaldoehc@gmail.com / @cumanadigital
Taller de Pinguino
Introducción a la Robótica Educativa con Hardware Libre
40. Pinguino vs Arduino
Microchip Atmel
USB integrado en el
hardware.
Chip conversor Serie a
USB.
IDE escrito en Python. IDE esta escrito en JAVA.
La comunidad Pinguino es muy pequeña (voluntarios )
en comparación con la comunidad de Arduino.
El proyecto Pinguino no
se alimenta de grandes
y rentables las ventas
de tableros
Arduino ha generado una
gran cantidad de
compañías de clonación.
oswaldoehc@gmail.com / @cumanadigital
Taller de Pinguino
Introducción a la Robótica Educativa con Hardware Libre
41. 1. Pinguino IDE
GNU/Linux
- python-usb
- python-wxgtk
- python-wxversion
OS X
Windows
2. Hardware
8-bit
PIC18F2550,
PIC18F4550 and
PIC18F26J50
32-bit
PIC32MX (Mips family)
oswaldoehc@gmail.com / @cumanadigital
Taller de Pinguino
Introducción a la Robótica Educativa con Hardware Libre
42. 3. Bootloader
El bootloader es un pequeño programa ejecutandose
dentro del micro-controlador de Pinguino (PIC18F o
PIC32MX) que permite transferir el programa
compilados del usuario, desde el ordenador, a la
memoria de programa del micro-controlador, y dar el
control a dicho programa una vez esta gravado
correctamente.
oswaldoehc@gmail.com / @cumanadigital
Taller de Pinguino
Introducción a la Robótica Educativa con Hardware Libre
43. Programador de PIC
En las placas comerciales, el bootloader siempre esta
pre-instalado.
Si te has fabricado tu propia placa, entonces es
necesario que programes el micro-controlador (solo
la primera vez), usando un programador para PICs
(Pickit 2, PICkit 3) que soporte el micro-controlador
que estés usando.
Como cargar el Bootloader?
oswaldoehc@gmail.com / @cumanadigital
Taller de Pinguino
Introducción a la Robótica Educativa con Hardware Libre
44. Programador de PIC USB Casero
oswaldoehc@gmail.com / @cumanadigital
Taller de Pinguino
Introducción a la Robótica Educativa con Hardware Libre
47. Construcción del PIC18F2550
oswaldoehc@gmail.com / @cumanadigital
1. Pinguino Tradicional 2550
en PCB (placa de cobre)
2. Pinguino PIC18F2550 en
protoboard
3. Pinguino Básico 18F2550 en
Baquelita Universal
11
55
1010
1515
2020
2525
3030
3535
4040
4545
5050
5555
ABCDEFGHIJ
IC
C2
22pF C3
22pF
USB
LED1LED2
R1
470Ω
C4
47µF
S1
R3
10kΩ C1
22nF
PIC18F2550
R2
470Ω
XTAL2
20 MHz
PINGUINO 18F2550.
@cumanadigital
Taller de Pinguino
Introducción a la Robótica Educativa con Hardware Libre
48. 1. Pinguino Tradicional 2550 en PCB
oswaldoehc@gmail.com / @cumanadigital
https://sites.google.com/site/pinguinotutorial/hardware/traditional
Taller de Pinguino
Introducción a la Robótica Educativa con Hardware Libre
53. 2. Pinguino Básico en Protoboard
oswaldoehc@gmail.com / @cumanadigital
http://wiki.pinguino.cc/index.php/PIC18F2550_Pinguino
Taller de Pinguino
Introducción a la Robótica Educativa con Hardware Libre
54. 3. Pinguino Básico 18F2550 en Baquelita Universal
oswaldoehc@gmail.com / @cumanadigital
Taller de Pinguino
Introducción a la Robótica Educativa con Hardware Libre
67. PINGUINO
Como programar el PIC
Compilar (genera archivo .hex)
Upload to Pinguino Board
Venezuela/Cumaná 2014
Version Bootloader 2.12
- Presionar el boton de reset
- Esperar 3 seg.
- Hacer clic en boton Upload
70. PINGUINO
PIC18F2550
Ejemplo. Blink Led. Programación
oswaldoehc@gmail.com / @cumanadigital
Venezuela/Cumaná 2014
La instrucción pinMode se utiliza para definir el tipo de pin.
pinMode(0,OUTPUT ) define el pin 0 como salida.
La función Loop ejecuta nuestro programa.
La función digitalWrite define el estado de una salida .
digitalWrite (0,HIGH); pondrá ALTA (5 voltios) en la salida 0, el
led está encendido .
Delay(500) introduce un retardo (mlseg)
digitalWrite (0,LOW) ; Activa la salida a 0 voltios . El led se
apaga.
A continuación, el mismo retardo de 500 ms se detiene el
programa .
Cuando ha caducado este retraso , el procesador se reinicia el
ciclo. Función loop