LibStargate

De WikiRobotics
Saltar a: navegación, buscar
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