Diferencia entre revisiones de «Stargate»

De WikiRobotics
Saltar a: navegación, buscar
(Una alternativa: Puerto paralelo)
(Servidores)
 
(No se muestran 14 ediciones intermedias de 2 usuarios)
Línea 16: Línea 16:
  
 
La otra alternativa es usar '''un microcontrolador''' que estará '''conectado al PC a través del puerto serie'''. El microcontrolador será el que realice el control de los dispositivos exteriores y se comunicará con nuestro software en el PC. Las''' ventajas''' de esta arquitectura son [[imagen:icono_alegre.png]]:
 
La otra alternativa es usar '''un microcontrolador''' que estará '''conectado al PC a través del puerto serie'''. El microcontrolador será el que realice el control de los dispositivos exteriores y se comunicará con nuestro software en el PC. Las''' ventajas''' de esta arquitectura son [[imagen:icono_alegre.png]]:
* '''La comunicación por puerto serie (RS-232) está estandarizada''' y hay un hardware que la realiza por nosotros. De manera que siempre funcionará independientemente del PC que utilicemos. Incluso se podrán sustituir el PC por otro microcontrolador, un teléfono móvil... las comunicaciones seguirán funcionando.
+
* [[imagen:icono_ok.png]]'''La comunicación por puerto serie (RS-232) está estandarizada''' y hay un hardware que la realiza por nosotros. De manera que siempre funcionará independientemente del PC que utilicemos. Incluso se podrán sustituir el PC por otro microcontrolador, un teléfono móvil... las comunicaciones seguirán funcionando.
* '''Los programas podrán ser multiplataforma'''
+
* [[imagen:icono_ok.png]]'''Los programas podrán ser multiplataforma'''
* Si no disponemos de puerto serie podemos usar un '''conversor USB-serie''' o bien usar nuestro propio chip de conversión USB-serie
+
* [[imagen:icono_ok.png]]Si no disponemos de puerto serie podemos usar un '''conversor USB-serie''' o bien usar nuestro propio chip de conversión USB-serie
* Sólo son necesarios '''tres hilos''' para realizar la comunicación
+
* [[imagen:icono_ok.png]]Sólo son necesarios '''tres hilos''' para realizar la comunicación
* Estos hilos pueden ser fácilmente sustituibles por '''canales inhalámbricos''': modems radios, bluetooth, etc.
+
* [[imagen:icono_ok.png]]Estos hilos pueden ser fácilmente sustituibles por '''canales inhalámbricos''': modems radios, bluetooth, etc.
* '''Todos los microcontroladores soporta la comunicación serie'''.
+
* [[imagen:icono_ok.png]]'''Todos los microcontroladores soportan la comunicación serie'''.
* Los microcontroladores son muy baratos y muy fáciles de poner en marcha
+
* [[imagen:icono_ok.png]]Los microcontroladores son muy baratos y muy fáciles de poner en marcha
 +
 
 +
== ¿Qué es el proyecto Stargate? ==
 +
El conjunto de varias cosas:
 +
* Una arquitectura cliente/servidor para comunicar por el puerto serie el cliente (PC) con el stargate (firmware que corre en el microcontrolador)
 +
* Una serie de servicios definidos que ofrece el microcontrolador
 +
* El protocolo que implementa esos servicios
 +
* El firmware que se ejecuta en los microcontroladores (servidores)
 +
 
 +
== ¿Cómo empezar a usarlo? ==
 +
Los pasos para comenzar a utilizar Stargate como plataforma de desarrollo son sencillos.
 +
* Disponer de un dispositivo controlado con un microcontrolador soportado.
 +
* Grabar en el PIC el [[PIC_Bootloader]] para poder comenzar a utilizarlo.
 +
* Mediante el uso de un cargador tal y como se describen en [[PIC_Bootloader]] cargar el servidor que más os interese.
 +
* Listo! Ya podeis empezar a enviar comandos a vuestros servidores favoritos a través de [[libStargate]].
 +
 
 +
== Servidores ==
 +
{|{{tablabonita}}
 +
!Servidor!!Descripción
 +
|-----------------
 +
|  [http://www.iearobotics.com/proyectos/stargate/servidores/sg-echo/sg-echo.html Echo]
 +
  || '''Servidor de eco'''. Hace eco de todo lo recibido. Se usa para hacer pruebas
 +
|-----------------
 +
|  [http://www.iearobotics.com/proyectos/stargate/servidores/sg-null/sg-null.html NULO]
 +
  || '''Servidor Nulo'''. Sólo implementa los servicios básicos (PING e ID). Sirve de base para la implementación de otros más avanzados
 +
|-----------------
 +
|  [http://www.iearobotics.com/proyectos/stargate/servidores/sg-generic/sg-generic.html GENERICO]
 +
  || '''Servidor Genérico'''. Permite acceder a todos los recursos del microcontrolador por medio de los servios LOAD y STORE
 +
|-----------------
 +
|  [[Stargate:Servos8|SERVOS8]]
 +
  || '''Servidor Servos8'''. Control de posición de 8 servos del tipo Futaba 3003 o compatibles
 +
|-----------------
 +
|  [[Stargate:PICP|PICP]]
 +
  || '''Servidor PICP'''. Grabación de microcontroladores PIC
 +
|}
 +
 
 +
== Acceso al repositorio ==
 +
* SVN del proyecto: [http://svn.iearobotics.com/Stargate/ http://svn.iearobotics.com/Stargate/]
 +
* La última versión se puede obtener así:
 +
svn co http://svn.iearobotics.com/Stargate/
 +
 
 +
== Noticias ==
 +
* '''26/Jul/2007''': Creado repositorio. Importado el servidor picp para la [[Skypic]]
  
 
== Enlaces ==
 
== Enlaces ==
 
[http://www.iearobotics.com/proyectos/stargate/index.html Página oficial] del proyecto stargate
 
[http://www.iearobotics.com/proyectos/stargate/index.html Página oficial] del proyecto stargate
 +
 +
[[Categoría:Stargate]]
 +
[[Categoría:Proyectos]]

Revisión actual del 09:06 7 feb 2010

Proyecto Stargate


Introducción

Una parte muy interesante de la informática es la posibilidad de acceder al "mundo exterior" al PC, para leer datos e interactuar con él. Por ejemplo controlar el encendido y apagado de unas luces (aplicación domótica), mover un robot, programar un microcontrolador, leer la temperatura o luz exteriores, cronometrar un evento, etc.

Una alternativa: Puerto paralelo

La manera más sencilla de acceder al exterior desde el PC es el uso del puerto paralelo. Proporciona un canal digital para entrada/salida de bits. Sin embargo tiene muchas desventajas Icono triste.png:

  • Icono no ok.pngEl puerto paralelo y su conector DB25 están en extinción. Los nuevos ordenadores ya no lo traen.
  • Icono no ok.pngSon necesarios muchos cables: uno por cada bit que utilicemos. Tendrán que salir desde el PC y llegar hasta nuestra electrónica
  • Icono no ok.pngEs muy fácil cometer un error y dañar el puerto paralelo
  • Icono no ok.pngLa sincronización entre el PC y los periféricos la hace el software. Esto implica que el software NO será multiplataforma. Además, un programa que funcione en mi PC es muy problable que falle en otro (aunque el sistema operativo sea el mismo).

Otra alternativa mejor: Puerto serie + microcontrolador

La otra alternativa es usar un microcontrolador que estará conectado al PC a través del puerto serie. El microcontrolador será el que realice el control de los dispositivos exteriores y se comunicará con nuestro software en el PC. Las ventajas de esta arquitectura son Icono alegre.png:

  • Icono ok.pngLa comunicación por puerto serie (RS-232) está estandarizada y hay un hardware que la realiza por nosotros. De manera que siempre funcionará independientemente del PC que utilicemos. Incluso se podrán sustituir el PC por otro microcontrolador, un teléfono móvil... las comunicaciones seguirán funcionando.
  • Icono ok.pngLos programas podrán ser multiplataforma
  • Icono ok.pngSi no disponemos de puerto serie podemos usar un conversor USB-serie o bien usar nuestro propio chip de conversión USB-serie
  • Icono ok.pngSólo son necesarios tres hilos para realizar la comunicación
  • Icono ok.pngEstos hilos pueden ser fácilmente sustituibles por canales inhalámbricos: modems radios, bluetooth, etc.
  • Icono ok.pngTodos los microcontroladores soportan la comunicación serie.
  • Icono ok.pngLos microcontroladores son muy baratos y muy fáciles de poner en marcha

¿Qué es el proyecto Stargate?

El conjunto de varias cosas:

  • Una arquitectura cliente/servidor para comunicar por el puerto serie el cliente (PC) con el stargate (firmware que corre en el microcontrolador)
  • Una serie de servicios definidos que ofrece el microcontrolador
  • El protocolo que implementa esos servicios
  • El firmware que se ejecuta en los microcontroladores (servidores)

¿Cómo empezar a usarlo?

Los pasos para comenzar a utilizar Stargate como plataforma de desarrollo son sencillos.

  • Disponer de un dispositivo controlado con un microcontrolador soportado.
  • Grabar en el PIC el PIC_Bootloader para poder comenzar a utilizarlo.
  • Mediante el uso de un cargador tal y como se describen en PIC_Bootloader cargar el servidor que más os interese.
  • Listo! Ya podeis empezar a enviar comandos a vuestros servidores favoritos a través de libStargate.

Servidores

Servidor Descripción
Echo Servidor de eco. Hace eco de todo lo recibido. Se usa para hacer pruebas
NULO Servidor Nulo. Sólo implementa los servicios básicos (PING e ID). Sirve de base para la implementación de otros más avanzados
GENERICO Servidor Genérico. Permite acceder a todos los recursos del microcontrolador por medio de los servios LOAD y STORE
SERVOS8 Servidor Servos8. Control de posición de 8 servos del tipo Futaba 3003 o compatibles
PICP Servidor PICP. Grabación de microcontroladores PIC

Acceso al repositorio

svn co http://svn.iearobotics.com/Stargate/

Noticias

  • 26/Jul/2007: Creado repositorio. Importado el servidor picp para la Skypic

Enlaces

Página oficial del proyecto stargate