Совместно с компанией SWD Software и Канадской фирмой QSS в рамках образовательной программы «QNX для вузов» на кафедре «Приборостроение» Ковровской государственной технологической академии им. В. А. Дегтярева выполняется задача управления учебным роботизированным комплексом (УРТК) в операционной системе реального времени QNX Neutrino 6.3.
Целью поставленной задачи является создание обучающего демонстрационно-практического комплекса RobotIics.
Интерфейс программы разработан в среде управления Widget-пакетами Photon Application Builder и предоставляет возможность управления тремя поступательными и двумя вращательными степенями свободы робота. Состояния концевых датчиков и импульсных датчиков движения отображаются в информационной части окна программы, при этом имеется возможность управление движением, как в ручном режиме, так и автоматическом (перемещение по поступательным осям на заданное расстояние).
s
В качестве платформы была выбрана ОСРВ QNX, как POSIX-совместимая и отказоустойчивая система. Можно выделить следующие ее преимущества: во-первых, это полная документированность – наличие подробной справочной системы и SDK, во вторых она обладает – «чистой» микроядерной архитектурой. Микроядро QNX имеет размер 8 Кбайт и отвечает только на базовые примитивы ОС (сигналы, таймеры, планирование), а все остальные компоненты системы (драйверы, пользовательские приложения) выполняются как отдельные процессы, каждый в своем адресном пространстве, и используют для общения друг с другом четко детерминированный механизм обмена сообщениями. В третьих имеет широкие возможности масштабирования – представляется возможным использовать одну и туже ОС во всей своей линейке продуктов. Кроме перечисленных качеств микроядро QNX обладает высокой степенью готовности и отказоустойчивости — любой компонент в случае отказа может быть перезапущен динамически, не нарушая работу микроядра и других компонентов. Следующей положительной чертой ядра QNX является поддержки различных мультипро-цессорных конфигураций. Предлагая поддержку мультипроцессорности QNX Neutrino предоставляет огромный выигрыш производительности для сетевых устройств, современных систем обработки изображений, многопоточных серверов и многих других приложений, требующих больших вычислительных мощностей. И наконец, микроядро QNX способствует богатейшему выбору целевых аппаратных платформ, таких, как ARM, MIPS, PowerPC, SH-4, XScale и x86.
Вопрос-ответ
Какова цель проекта RobotIics и на какой ОС он реализуется?
Цель проекта — создание обучающего демонстрационно-практического комплекса для робототехники, управляемого через операционную систему реального времени QNX Neutrino 6.3. Реализация выполняется совместно с SWD Software и QSS в рамках образовательной программы на кафедре «Приборостроение» Ковровской государственной технологической академии.
Какие технологии и интерфейсы используются для управления робототехническим комплексом?
Интерфейс программы разработан в среде Photon Application Builder с использованием Widget-пакетов. Система управляет тремя поступательными и двумя вращательными степенями свободы, отображает состояния концевых и импульсных датчиков движения и поддерживает как ручной, так и автоматический режимы движения (перемещение по осям на заданное расстояние).
Почему выбрана операционная система QNX Neutrino и какие её ключевые преимущества?
Выбор обоснован следующими преимуществами: полная документированность и наличие SDK; микроядерная архитектура, где ядро размером около 8 Кбайт остаётся минимальным, а все остальные компоненты работают как независимые процессы в отдельных адресных пространствах, общающиеся через детерминированное межпроцессное взаимодействие; масштабируемость и отказоустойчивость — компоненты можно перезапускать динамически без нарушения работы ядра; поддержка мультипроцессорности и широкая совместимость с аппаратными платформами (ARM, MIPS, PowerPC, SH-4, XScale, x86).
Какие преимущества предоставляет микроядерная архитектура QNX для учебно-демонстрационных комплексов?
Микроядро обеспечивает повышение надёжности и устойчивости системы: каждый компонент может быть перезапущен независимо, что минимизирует простой всего комплекса; изоляция процессов в собственных адресных пространствах снижает риск взаимного влияния сбоев; детерминированное межпроцессное взаимодействие обеспечивает стабильную работу в реальном времени и удобство разработки модульных учебных задач.
