logo logo
Home arrow Robotics Studio... arrow Documentación en Español (Spanish Documentation) arrow Introducción a VPL
Friday, 12 March 2010
 
 
English
Main Menu
Home
Conscious Machines...
AI Techniques...
Neuroscience...
Researchers...
Publications...
Reviews...
MC Bibliography
Robotics Studio...
Forums...
Blog...
Frontpage
Upcoming Events
13.Mar. 2010

Máquinas y Robots del Futuro
Madrid
29.Mar. 2010

AISB 2010
Leicester, UK
12.Apr. 2010

Toward a Science of Consciousness 2010
Tucson, Arizona
22.Apr. 2010

Retecog Workshop
Madrid, Spain
24.Jun. 2010

ASSC 14
Toronto. Canada
14.Jul. 2010

BICS 2010: Brain-Inspired Cognitive Systems
Madrid, Spain
Tag Cloud
Associations Books Conferences Conscious Consciousness Developer Documentación Documentation Español Howto Machine Machine Consciousness Machines Neuroscience Projects Publications Research Researchers Reviews Robotics Robots Spanish Studio VPL
Spotlight
More
Reader's Preferred
MCexperts List
FAQs
Glossary
Site Map
Introducción a VPL Print E-mail
Written by Javier Escobar   
Monday, 24 November 2008

VPL El Lenguaje VPL (Visual Programming Language)

Microsoft Visual Programming Language (VPL) es un entorno de desarrollo de aplicaciones diseñado sobre un modelo gráfico de programación basado en flujo de datos, es más que un simple control de flujo de los que suelen encontrarse en la programación convencional.

Un programa de flujo de datos es más que una serie de comandos imperativos y secuencialmente ejecutados, es como una serie de trabajadores en una línea de ensamblado de una fábrica, que realizan sus tareas asignadas tan pronto les llega el material a su puesto. Como resultado, VPL se adapta
perfectamente a una gran variedad de la programación concurrente o de escenarios de procesamiento distribuido. VPL es un lenguaje orientado a los programadores principiantes con un entendimiento básico de conceptos como variables y lógica de control. Sin embargo, VPL no sólo se limita a los principiantes. La naturaleza composicional del lenguaje de programación puede servir también a los programadores más avanzados para un rápido desarrollo de prototipos o código. Además, mientras que su caja de herramientas se ajusta al desarrollo de las aplicaciones de robots, la arquitectura no sólo se limita a la programación de robots y podría aplicarse también a otras aplicaciones. De esta forma, VPL podría ser válido para una extensa audiencia de usuarios que podrían incluir estudiantes, entusiastas de algún hobby, así como desarrolladores de aplicaciones web o programadores profesionales.

Ejemplo de un diagrama de ejemplo con VPL (bump-turn-go).
Ejemplo de un diagrama de ejemplo con VPL (bump-turn-go).

Un flujo de datos de Microsoft Visual Programming Language está formado por una secuencia de actividades representadas como bloques con entradas y salidas que pueden ser conectadas a otros bloques de actividades.

Los enlaces entre los bloques representan mensajes que envían datos de
Los enlaces entre los bloques representan mensajes que envían datos de

Las actividades pueden representar servicios pre-construidos, controles de flujos de datos, funciones o otros módulos de código. Por tanto, a menudo nos referimos a la aplicación resultante como una orquestación, es decir, una composición de procesos separados.


Las actividades pueden incluir también composiciones de otras actividades. Esto hace posible la composición de actividades y reutilización de esas composiciones como si se tratase de un bloque de construcción. En este sentido, una aplicación construida en VPL es en sí misma una activad.


Los bloques de actividades suelen incluir el nombre de la actividad y las fronteras que representen sus puntos de conexión. Un bloque de actividad podría incluir también gráficos para ilustrar el propósito u objetivo de la actividad, así como los elementos de interfaz de usuario que pueden permitir que el usuario introduzca valores, tareas o transformaciones de los datos utilizados en dicha actividad.

Ejemplo de dos bloques unidos por un enlace.
Ejemplo de dos bloques unidos por un enlace.

Las actividades están conectadas a través de sus pines de conexión. Una conexión de pin en la parte izquierda de una actividad que representa el punto de conexión para el/los mensajes de entrada y uno o varios pines a la derecha que representa su punto de conexión para la salida o entrega de los mensajes Una actividad recibe mensajes que contengan datos a través de su pin de conexión de entrada. Un pin de entrada de una actividad son puntos de conexión a sus funciones internas predefinidas conocidas como acciones o manejadores (que pueden ser tanto funciones proporcionadas por un servicio o anidamientos de flujos de datos).

Un bloque de actividad activa y procesa el mensaje de datos de entrada tan pronto como recibe un mensaje entrante válido. Todos los datos enviados a la actividad son consumidos por la actividad. Para los datos que son enviados directamente a la salida de la actividad, esta actividad receptora tiene que replicar los datos y colocarlos en su conexión de salida. Una actividad puede tener múltiples pines de conexiones de entrada y cada uno de ellos con su propio conjunto pines de conexiones de salida. Los pines de conexiones salientes pueden ser de uno de los dos siguientes tipos:

- Result connection output pin (pin de salida de resultados): Los resultados salientes son mostrados como un pin de conexión rectangular.

- Notification Output pin (pin de salida de notificaciones): Algunas veces referido como un evento o publicación saliente. Estos eventos son mostrados como un pin de conexión redondo.

Ejemplo de los pines de entrada y salida de una actividad.
Ejemplo de los pines de entrada y salida de una actividad.

El pin de salida de resultados se usa en situaciones donde un mensaje saliente (datos) es enviado como resultado de un mensaje entrante de acción específica. El pin de salida de notificaciones puede enviar información resultante de un mensaje entrante, pero es más usual utilizarlo para lanzar una notificación como puede ser el cambio de su propio estado interno. Estos últimos pueden también generar mensajes múltiples veces, mientras que un pin de salida de resultados sólo envía un mensaje como resultado de un mensaje entrante en la actividad. Por tanto, los pines de salida de notificaciones se usan para enviar mensajes de datos sin tener que preguntar o extraer, por ejemplo, el estado interno de una actividad de forma repetida.

 


Add as favourites (69) | Quote this article on your site | Views: 1523 | E-mail

  Be first to comment this article
RSS comments

Only registered users can write comments.
Please login or register.


Related Items:

  1. Jobs: Two Chair positions for new Centre for Computational Neuroscience and Co
  2. Finding papers about consciousness and robotics
  3. International Journal of Social Robotics
  4. Cognitive Robotics and Machine Consciousness
  5. Cognitive Robotics
  6. Polymorphic Robotics
  7. Microsoft Robotics Studio October 2006 CTP
  8. Microsoft Robotics Studio November 2006 CTP
  9. Robotics Studio 1.0 Released
  10. RoboCup Simulator for Robotics Studio
Last Updated ( Tuesday, 25 November 2008 )
 





Lost Password?
No account yet? Register
 Conscious Robots RSS FeedConscious Robots RSS Feed

Find us on Facebook

Follow us on TwitterFollow us on twitter
Spotlight

Machine Consciousness Bibliography Database

 

ConsScale
The Cognitive Machine Consciousness Scale

 
Categories
Last Posts in Forum
 
CR
miel continental