Продолжаем рассмотрение возможностей скриптового языка urbiScript от компании , предназначенного для управления роботами.
Последовательное программирование не удобно при работе с высоко-интерактивными агентами (роботами). Для этого требуется реагировать на внешние случайные события, а не линейно выполнять заданный код.
полностью отвечает этому требованию, т.к. поддерживает программирование на основе событий (event-based programming).
Продолжаем рассмотрение возможностей скриптового языка от компании Gostai, предназначенного для управления роботами.
Напомню, что urbiScript выполняется на , который запускается либо на роботе, либо на компьютере и к которому можно подключиться через сеть обычным telnet-ом.
Продолжим рассмотрение возможностей скриптового языка urbiScript от компании Gostai, предназначенного для управления роботами.
Напомню, что urbiScript выполняется на , который запускается либо на роботе, либо на компьютере и к которому можно подключиться через сеть простым telnet-ом.
Взаимодействие с аппаратной частью робота осуществляется через объекты , которые выполняют роль драйверов (прослойка между Urbi и аппаратной частью робота).
Данные драйвера реализуются в виде библиотек (.dll), подключаются к серверу Urbi и далее могут прозрачным образом использоваться в urbiScript (вызывать функции, изменять переменные).
Кратко рассмотрим что из себя представляет urbiScript.
Как — urbiScript — это скриптовый язык, используемый для написания программ (скриптов) для управления роботами.
Важными чертами urbiScript являются:
* параллельность
* программирования на основе событий
* прототипное программирование (объекты могут изменяться «на лету»)
* синтаксис в стиле С++
urbiScript выполняется на Urbi-сервере, который запускается либо на роботе, либо на компьютере и к которому можно подключиться простым telnet-ом.
Для программирования модулей под Urbi потребуется компилятор:
Microsoft Visual Studio C++ 2008(2005)
Я мучился с попытками компиляции объектов из Visual Studio C++ 6.0, но безрезультатно.
В коде Urbi используются макросы с переменным числом аргументов и ещё разные нюансы, которые, похоже, реализованы только в более современных компиляторах .
Так что придётся остановиться на
Microsoft Visual Studio Express Edition
По (которая является переводом статьи из википедии) всё же остаётся не совсем понятно — что же такое URBI и с чем его едят.
Однако, девиз компании Gostai — «Робототехника для всех» («Robotics for everyone») — не может не обнадёживать :)
Давайте разберёмся, что же именно из себя представляет URBI.
Недавно здесь была новость об . Так почему бы не познакомиться с этим продуктом поближе?
Вообще, уже давно пора как следует изучить, рынок существующих ;)
Итак, URBI… URBI — Universal Real-time Behavior Interface (Универсальный Интерфейс Поведения Реального времени)
хотя где-то натолкнулся на версию про Universal Robotic Body Interface (Универсальный Интерфейс Робототехнического Тела)
Urbi — кросс-платформенная открытая программная платформа на C++, используемая для разработки приложений для робототехники и сложных систем.
Urbi основывается на распределенной компонентной архитектуре UObject.
Она также включает urbiscript — параллельный и событийный скриптовый язык.