Diferencia entre revisiones de «LibStargate»

De WikiRobotics
Saltar a: navegación, buscar
(Ejemplos de Utilización)
(Versión 1.2)
 
(No se muestran 22 ediciones intermedias del mismo usuario)
Línea 16: Línea 16:
  
 
== Agradecimientos ==
 
== Agradecimientos ==
* A [http://www.iearobotics.com/personal/ricardo Ricardo Gómez] por las pruebas en Windows
+
* A [http://www.iearobotics.com/personal/andres/ Andrés Prieto-Moreno] y [http://www.iearobotics.com/personal/ricardo Ricardo Gómez] por las pruebas en plataformas Windows
  
 
== Ejemplos de Utilización ==
 
== Ejemplos de Utilización ==
  
Se muestran dos ejemplos utilizando la [[Skypic|tarjeta Skypic]]. Son muy sencillos y no realizan ninguna gestión de errores.
+
Se muestran dos ejemplos utilizando la [[Skypic|tarjeta Skypic]]. Son muy sencillos y no realizan ninguna gestión de errores. Se utiliza el dispositivo serie '''/dev/ttyUSB0''' de una máquina linux. Para máquinas Windows habría que cambiarlo por el puerto '''COM''' corresponiente
  
 
=== Accediendo al led de la Skypic ===
 
=== Accediendo al led de la Skypic ===
PENDIENTE
+
Ejemplo de cómo acceder al '''puerto B''' de la [[Skypic|tarjeta Skypic]] para controlar el led que está conectado en el bit 1. En la tarjeta debe estar grabado el [http://www.iearobotics.com/proyectos/stargate/servidores/sg-generic/sg-generic.html servidor genérico].
 +
 
 +
<span style="color: #804000;">import</span> time
 +
<span style="color: #804000;">import</span> libStargate.Generic
 +
<span style="color: #804000;">from</span> libStargate.pic16f876 <span style="color:  #804000;">import</span> *
 +
 
 +
<span style="color: #800000;">#-- Abrir la conexion</span>
 +
g=libStargate.Generic.Open_session("<span style="color: #006000;">/dev/ttyUSB0</span>")
 +
   
 +
<span style="color: #800000;">#-- Configurar bit 1 del puerto B como salida</span>
 +
g[TRISB]=0xFD
 +
 
 +
<span style="color: #800000;">#-- Encender el led</span>
 +
g[PORTB]=0x02
 +
 +
<span style="color: #800000;">#-- Esperar 2 segundos</span>
 +
time.sleep(2)
 +
 +
<span style="color: #800000;">#-- Apagar el led</span>
 +
g[PORTB]=0x00
 +
 
 +
'''Ejemplos del repositorio:'''
 +
* [http://svn.iearobotics.com/libStargate/libstargate-1.2/test-generic/test-generic.py test-generic.py] Hacer parpadear el led de la Skypic. Se gestionan los errores
 +
* [http://svn.iearobotics.com/libStargate/libstargate-1.2/test-generic/boton.py boton.py]. Lectura del pulsador de pruebas de la Skypic
  
 
=== Posicionamiento de un servo con la Skypic ===
 
=== Posicionamiento de un servo con la Skypic ===
PENDIENTE
+
Ejemplo de cómo posicionar un servo del tipo '''Futaba 3003''' o compatible conectado a la [[Skypic]]. En la tarjeta debe estar grabado el [http://www.iearobotics.com/proyectos/stargate/servidores/sg-servos8/sg-servos8.html servidor servos8]
 +
 
 +
<span style="color: #804000;">import</span> time
 +
<span style="color: #804000;">import</span> libStargate.Servos8
 +
 +
<span style="color: #800000;">#-- Abrir la conexion y devolver el stargate generico</span>
 +
s=libStargate.Servos8.Open_session("<span style="color: #006000;">/dev/ttyUSB0</span>")
 +
   
 +
<span style="color: #800000;">#-- Habilitar servo 1</span>
 +
s.enable(0x01);
 +
 +
<span style="color: #800000;">#-- Mover servo 1 a un extreno</span>
 +
s[1]=-90
 +
 +
<span style="color: #800000;">#-- Esperar</span>
 +
time.sleep(2)
 +
 
 +
<span style="color: #800000;">#-- Mover servo 1 al otro extremo</span>
 +
s[1]=90
 +
 
 +
'''Ejemplos del repositorio''':
 +
* [http://svn.iearobotics.com/libStargate/libstargate-1.2/test-servos8/test-servos8.py test-servos8.py]. Posicionamiento de un servo
  
 
== Descargas ==
 
== Descargas ==
Línea 36: Línea 80:
 
| [http://www.iearobotics.com/wiki/images/f/f7/Libstargate-1.2.zip Libstargate-1.2.zip]
 
| [http://www.iearobotics.com/wiki/images/f/f7/Libstargate-1.2.zip Libstargate-1.2.zip]
 
|| Fuentes
 
|| Fuentes
 +
|--------------------
 +
| [http://www.iearobotics.com/downloads/packages/python-libstargate_1.2-1_i386-ubuntu-10.04.deb python-libstargate_1.2-1_i386-ubuntu-10.04.deb]
 +
|| Paquete para '''Ubuntu 10.04'''
 +
|-------------------
 +
| [http://www.iearobotics.com/downloads/packages/python-libstargate_1.2-1_i386-ubuntu-9-04.deb python-libstargate_1.2-1_i386-ubuntu-9-04.deb]
 +
|| Paquete para '''Ubuntu 9.04 (Jaunty Jackalope)'''
 
|--------------------
 
|--------------------
 
| [http://www.iearobotics.com/wiki/images/d/df/Python-libstargate_1.2-1_i386.deb Python-libstargate_1.2-1_i386.deb]
 
| [http://www.iearobotics.com/wiki/images/d/df/Python-libstargate_1.2-1_i386.deb Python-libstargate_1.2-1_i386.deb]
|| Paquete para '''Debian/Etch''' y '''Ubuntu'''
+
|| Paquete para '''Debian/Etch''' y '''Ubuntu 7.10'''
 
|--------------------
 
|--------------------
 
| [http://www.iearobotics.com/downloads/libstargate-1.2.win32.exe libstargate-1.2.win32.exe]
 
| [http://www.iearobotics.com/downloads/libstargate-1.2.win32.exe libstargate-1.2.win32.exe]
 
|| '''Windows XP'''. Autoinstalable.
 
|| '''Windows XP'''. Autoinstalable.
 
|}
 
|}
 
== Cambios ==
 
* '''13/Enero/2008''': Liberada version 1.2
 
  
 
== Acceso al repositorio ==
 
== Acceso al repositorio ==
Línea 75: Línea 122:
 
=== Versión 1.0 ===
 
=== Versión 1.0 ===
 
La primera [http://www.iearobotics.com/proyectos/stargate/clientes/libstargate/libstargate.html versión (1.0)] estaba implementada en '''lenguaje C'''. La última versión es de Julio de 2006.
 
La primera [http://www.iearobotics.com/proyectos/stargate/clientes/libstargate/libstargate.html versión (1.0)] estaba implementada en '''lenguaje C'''. La última versión es de Julio de 2006.
 +
 +
 +
== Noticias ==
 +
* '''13/Jun/2010''': Añadido paquete para Ubuntu 9.10
 +
* '''29/Jul/2009''': Añadido paquete para Ubuntu 9.04
 +
* '''13/Enero/2008''': Liberada version 1.2
  
  
 
----
 
----
  
 +
[[Categoría:Stargate]]
 
[[Categoría:PIC]]
 
[[Categoría:PIC]]
 
[[Categoría:Software]]
 
[[Categoría:Software]]
 
[[Categoría:Python]]
 
[[Categoría:Python]]
 
[[Categoría:SVN]]
 
[[Categoría:SVN]]
 +
[[Categoría:Skypic]]

Revisión actual del 02:25 13 jun 2010

Logo del PICP

Introducción

LibStargate es la librería de comunicación con los servidores del proyecto Stargate que se encuentran en un hardware externo y se comunican con el PC mediante el puerto serie, a una velocidad de 9600 bps.

Características

  • Licencia: GPL
  • Lenguaje: Python
  • Multiplataforma: Linux y Windows

Autores

Agradecimientos

Ejemplos de Utilización

Se muestran dos ejemplos utilizando la tarjeta Skypic. Son muy sencillos y no realizan ninguna gestión de errores. Se utiliza el dispositivo serie /dev/ttyUSB0 de una máquina linux. Para máquinas Windows habría que cambiarlo por el puerto COM corresponiente

Accediendo al led de la Skypic

Ejemplo de cómo acceder al puerto B de la tarjeta Skypic para controlar el led que está conectado en el bit 1. En la tarjeta debe estar grabado el servidor genérico.

import time
import libStargate.Generic
from libStargate.pic16f876 import * 
 
#-- Abrir la conexion
g=libStargate.Generic.Open_session("/dev/ttyUSB0")
   
#-- Configurar bit 1 del puerto B como salida
g[TRISB]=0xFD
 
#-- Encender el led
g[PORTB]=0x02

#-- Esperar 2 segundos
time.sleep(2)

#-- Apagar el led
g[PORTB]=0x00

Ejemplos del repositorio:

  • test-generic.py Hacer parpadear el led de la Skypic. Se gestionan los errores
  • boton.py. Lectura del pulsador de pruebas de la Skypic

Posicionamiento de un servo con la Skypic

Ejemplo de cómo posicionar un servo del tipo Futaba 3003 o compatible conectado a la Skypic. En la tarjeta debe estar grabado el servidor servos8

import time
import libStargate.Servos8

#-- Abrir la conexion y devolver el stargate generico
s=libStargate.Servos8.Open_session("/dev/ttyUSB0")
    
#-- Habilitar servo 1
s.enable(0x01);

#-- Mover servo 1 a un extreno
s[1]=-90

#-- Esperar
time.sleep(2)
 
#-- Mover servo 1 al otro extremo
s[1]=90

Ejemplos del repositorio:

Descargas

Versión 1.2

Fichero Descripción
Libstargate-1.2.zip Fuentes
python-libstargate_1.2-1_i386-ubuntu-10.04.deb Paquete para Ubuntu 10.04
python-libstargate_1.2-1_i386-ubuntu-9-04.deb Paquete para Ubuntu 9.04 (Jaunty Jackalope)
Python-libstargate_1.2-1_i386.deb Paquete para Debian/Etch y Ubuntu 7.10
libstargate-1.2.win32.exe Windows XP. Autoinstalable.

Acceso al repositorio

svn co http://svn.iearobotics.com/libStargate/
  • La versión 1.2 se puede bajar así:
svn co http://svn.iearobotics.com/libStargate/libstargate-1.2

Historia

Versión 1.2

La versión 1.2 es una reestructuración de la 1.1. Los cambios son:

  • Modularización: un módulo por cada clase para cada servidor
  • Programas de prueba para cada módulo
  • Pruebas en Linux/Windows
  • Paquetes para Linux/Windows

Versión 1.1

La siguiente versión fue una migración al lenguaje python y el impulsor fue Rafael Treviño. Esta versión se utilizó de forma experimental para comprobar su viabilidad. No se llegó a hacer una release oficial, sino que evolucionó directamente a la versión 1.2.

Los cambios con respecto a la versión 1.0 son:

  • Soporte para el servidor de movimiento de servos SERVOS8
  • Soporte para el servidor de grabación de pics PICP
  • Diseño orientado a objetos
  • Lenguaje python

Versión 1.0

La primera versión (1.0) estaba implementada en lenguaje C. La última versión es de Julio de 2006.


Noticias

  • 13/Jun/2010: Añadido paquete para Ubuntu 9.10
  • 29/Jul/2009: Añadido paquete para Ubuntu 9.04
  • 13/Enero/2008: Liberada version 1.2