Главная arrow книги arrow Копия Глава 25. Робототехника arrow Архитектуры робототехнического программного обеспечения
Архитектуры робототехнического программного обеспечения

Архитектурой программного обеспечения называется применяемая методология структуризации алгоритмов. В понятие архитектуры обычно включают языки и инструментальные средства для написания программ, а также общий подход к тому, как должно быть организовано взаимодействие программ.

Предложения по созданию современных архитектур программного обеспечения для робототехники должны отвечать на вопрос о том, как сочетаются реактивные средства управления и основанные на модели алгоритмические средства управления. Преимущества и недостатки реактивных и алгоритмических средств управления таковы, что эти средства во многом дополняют друг друга. Реактивные средства управления действуют на основании сигналов, полученных от датчиков, и хорошо подходят для принятия решений низкого уровня в реальном времени. Однако реактивные средства управления лишь в редких случаях позволяют вырабатывать приемлемые решения на глобальном уровне, поскольку глобальные управляющие решения зависят от информации, которая не может быть воспринята с помощью датчиков во время принятия решения. Для таких задач в большей степени подходят алгоритмические средства управления.

В связи с этим в большинстве вариантов робототехнических архитектур реактивные методы используются на низких уровнях управления, а алгоритмические методы — на более высоких уровнях. Такая комбинация средств управления уже встречалась в данной главе в описании PD-контроллеров, где было показано, как сочетается (реактивный) PD-контроллер с (алгоритмическим) планировщиком пути. Архитектуры, в которых сочетаются реактивные и алгоритмические методы, обычно называют гибридными архитектурами.