Estructura de comunicaciones
Revisión de fecha 15:54 10 mar 2008; Ver revisión actual
← Revisión anterior | Revisión siguiente →
Comunicaciones externas
Aunque todavía está por definir, por el momento yo pienso en un transmisor y un receptor en comunicación constante, pero intercalada. Desde el robot se transmite un paquete de datos con información de estado de sensores y luego se pasa a espera de recepción. El otro lado (una PC de comando) recibe este paquete e inmediatamente transmite órdenes, si es necesario, o un OK, y pasa a su vez a espera. La situación se mantiene indefinidamente, y sólo se modifica cuando por un comando desde la computadora, o por una solicitud del programa del robot, se establece momentáneamente la transmisión de un bloque de datos más amplio, por ejemplo, una descarga de rutinas. O un informe más detallado de estado del robot (posiciones, temperaturas, registros de movimientos realizados, etc).
Este sistema lo implementé en un robot (uno de tres ruedas) que funciona en contacto con una PC u otra computadora. La RF está implementada con módulos TWS y TRS de Wenshing, aunque seguramente en el robot hay que buscar alternativas más profesionales. El diseño lleva un PIC16F628A en el lado de transmisión y uno igual en el lado de recepción. Esto porque había cosas que me resultaba difícil compartir, por lo cual me pareció que el costo de un PIC más no era importante ante la simplificación en el uso y en la programación (agregado el 10 de marzo por Edu).
--Edu 21:34 9 mar 2008 (ARST)
Se podría decir entonces, que el robot tendrá un módulo de comunicaciones gestionado por (al menos) un micro-----. Ese módulo será independiente del resto del sistema y lo contactará solo cuando sea necesario.
Así como este módulo, es posible que aparezcan otros más...
Siguiendo el lineamiento entonces puede pasar que tengan que coexistir muchos distintos módulos dedicados, cada uno, a tareas específicas, que tengan en común el mismo diseño electrónico (como para que ayude a que el costo de diseño sea más bajo).
Comunicación interna
Además es seguro que entre módulos sea necesaria alguna forma de comunicación interna que normalmente se resuelven por un bus y un protocolo.
El protocolo puede ser uno que dependa del tipo de micros utilizados o que sea uno completamente nuevo.
________ | | Al ext.|Mod. |.............<---- bus interno |Comunic.| . |________| . . ________ . | | . (¿?) |Mod. |............. |(---) | . |________| . . ________ . | | . (¿?) |Mod. |............. |(---) | . |________| ........al resto de los módulos
Figura 1.
Aún así, el método de interconectar todos los módulos a un mismo bus podría
resultar lento. Esto obligaría a disponer los módulos en una especie de
estructura de árbol. ( es fácil decirlo pero habría que demostrar que la
comunicación entre módulos dispuestos en una estructura de árbol puede llegar a ser, en determinadas circunstancias o siempre, mas eficiente que la comunicación entre módulos colgados a un mismo bus). Implica que todos los módulos preprocesen información de otros módulos que tienen por detrás.
Podría pasar que, (por dar un ejemplo), cada tobillo del robot necesite su
propio módulo. Lo mismo la cadera, y así varios otros puntos clave del robot. De ser así hay que prever el espacio y el lugar para colocar cada uno de esos módulos.
En este punto es posible que se haga necesario comenzar a pensar entonces en un algoritmo para las comunicaciones internas entre módulos.
Resumiendo lo anterior, los planteos serían:
- Varios módulos gestionados por un micro (uno por módulo).
- Un mismo diseño electrónico para cada módulo.
- Uno de esos módulos dedicado a las comunicaciones con el exterior (como el módulo superior de la fig.1.
- Algoritmo de comunicación con el exterior.
- Módulos dedicados a ..(por ejemplo, tobillo L, tobillo R, rodilla L, rodilla R, cadera, etc). (L=Left=izq.; R=Right).
- Método de interconexión entre módulos para lograr la comunicación interna (bus general o árbol o (¿?)).
- Algoritmo de comunicación interna.
- La ubicación, peso, consumo eléctrico y el espacio físico que ocuparán esos módulos dentro del robot.
--Adrian S.A. 11:35 10 mar 2008 (ARST)