СТА 2/2010
времени операции переносить в пре рывания. При использовании вытесня ющей многозадачности, как правило, повышаются накладные расходы на переключение задач ОС, а также зна чительно возрастает сложность прог раммирования системы: для обраще ния к любому глобальному объекту нужно использовать критическую сек цию или мьютекс [2]. Большинство ОС реального времени могут работать как в режиме вытесняющей многозадач ности, так и в режиме кооперативной многозадачности, и выбор режима ло жится на плечи проектировщика. К ОНКРЕТИЗАЦИЯ ЗАДАЧИ – ЧПУ Одной из востребованных задач в ми ре автоматизации в последние годы стала тема числового программного уп равления (ЧПУ). Действительно, рань ше при разработке ЧПУ приходилось постоянно следить за объёмом вычис лений. Контроллеры 80 90 х годов не могли похвастаться и десятой долей вы числительной мощности среднего со временного контроллера, а частота вы дачи управляющего сигнала определя лась заданной точностью обработки и инерционностью приводов подач. На пример, для известной ранее СЧПУ НЦ 31 эта частота составляла 100 Гц. По этой причине алгоритм работы СЧПУ требовалось жёстко оптимизировать, а набор сервисных функций ограничи вать. Применять ОС в таких системах было просто нецелесообразно. Возможности современных контрол леров таковы, что позволяют не только существенно расширить возможности СЧПУ, но и использовать ОС, что в значительной степени упрощает задачу проектирования. Большинство прог раммируемых логических контролле ров даже реализуют задачу управления электроприводом. На рынке также присутствуют решения СЧПУ, выпол ненные на базе обычного персонально го компьютера. Рассмотрим подробнее задачу проектирования системы ЧПУ на основе системы реального времени. С РАВНИТЕЛЬНЫЕ ХАРАКТЕРИСТИКИ ОС РЕАЛЬНОГО ВРЕМЕНИ (W INDOWS , QNX, O N T IME ), ВЫБОР СИСТЕМЫ Выберем одну из наиболее популяр ных ОС реального времени для решения нашей задачи (подробнее с информаци ей об этих ОС можно ознакомиться здесь: http://embedded.prosoft.ru/prod ucts/types/3995/). Начнём с Windows Embedded. Легко заметить преимущества этой ОС: напи сано огромное количество драйверов для самого разнообразного оборудова ния, и при желании подключить к на шей СЧПУ, скажем, принтер дополни тельной разработки не потребуется. Да же после выхода системы для поддерж ки нового оборудования нужно лишь будет скачать драйвер с сайта произво дителя. Другое несомненное преиму щество – развитая графическая под система и совместимость её с ОС для персональных компьютеров. Разраба тывать интерфейс с оператором можно в любой среде проектирования прог рамм на персональном компьютере. К недостаткам этой ОС можно отнести высокие требования к ресурсам. Рассмотрим QNX. Практически всё сказанное можно отнести и к этой ОС. Драйверов периферийного оборудова ния, конечно же, меньше, но все ос новные производители периферийно го оборудования не забывают и про эту систему. Среда проектирования прог рамм поставляется вместе с ОС. Разви тая графическая подсистема, широкий набор сервисных возможностей – всё это позволило QNX занять довольно широкую нишу на рынке операцион ных систем реального времени. По производительности эта ОС превосхо дит Windows Embedded, но цена весьма существенна на фоне RTOS 32 (On Time Informatik). RTOS 32 (On Time Informatik), или On Time RTOS 32, отличается низкими требованиями к ресурсам. Она пред ставляет собой набор библиотек и не является средой для выполнения прог рамм, как привычные современные ОС. Код компилируется в среде разра ботки программ на ПК, затем готовый двоичный файл записывается на плат форму. Такая реализация ОС объясняет её основные преимущества и недостат ки: с одной стороны, очень высокая производительность, заметно более низкая цена, низкие требования к про цессору (нужно только иметь BIOS), а с другой, меньший набор сервисных воз можностей. Кроме того, реализация драйверов всего периферийного обору дования, не поддержанного в ОС, ло жится на плечи разработчика. РАЗ РА БОТ КИ / МАШИНОС Т РОЕ НИЕ 65 СТА 2/2010 www.cta.ru Таблица 1 Сравнительная характеристика ОС реального времени КРИТЕРИИ СРАВНЕНИЯ WINDOWS EMBEDDED QNX ON TIME RTOS 32 Удобство написания драйверов Унифицированный интерфейс для драйвера – написание драйвера переходит на уровень реализации нескольких функций. Обмен между пользовательской задачей и драйвером при помощи механизма сообщений Единое адресное пространство и прямой доступ к портам позволяют разработать драйвер с любым интерфейсом Набор библиотек Большое количество поддерживаемых устройств, функции работы с базами данных, простой доступ к файловым ресурсам (доступ к файлу на удалённой машине отличается только указанием полного пути), есть системный журнал ошибок, возможно применение любых библиотек C/С++ Низкоуровневые драйверы, минимальная поддержка пользовательского интерфейса (окна, графика) Интерфейсы USB 2.0, IEEE 1394, 802.11x, IrDA, UPnP, RDP, Bluetooth, CAN, PROFIBUS и др. Хорошая поддержка стека протоколов TCP/IP USB, RS-232. Поддержка стека протоколов TCP/IP реализована в меньшем объёме по отношению к Windows Embedded и QNX. Остальные протоколы реализуются при помощи драйверов Файловые системы Практически все. Трудно найти устройство хранения данных, для которого нет драйвера под Windows Широкий спектр файловых систем, включая образную файловую систему, файловую систему в ОЗУ или на флэш- диске, файловые системы QNX, Linux, DOS, CD-ROM, DVD, NFS, CIFS, пакетную файловую систему и файловую систему со сжатием Модуль файлового ввода-вывода RTFiles 32 позволяет использовать стандартные функции работы с файловыми системами FAT 12, FAT 16 и FAT 32 и работать с любыми типами носителей (НГМД, НЖМД, флэш- диски, статическая память, USB-диски, CD ROM и DVD). Нестандартное оборудование может поддерживаться через драйвер с простым интерфейсом Лицензии Отчисления с каждой проданной копии с предварительным заказом Отчисления с каждой проданной копии с предварительным заказом (2–4 недели) Нет отчислений. Покупается набор разработки Стоимость набора разработчика Самая низкая из рассматриваемых систем Довольно высокая Комплектуется для конкретной задачи. Для проектирования СЧПУ вдвое ниже, чем у QNX Поддерживаемые платформы Только x86 (как в ПК) ARM, PowerPC, MIPS, x86, SH x86, любая платформа с BIOS © СТА-ПРЕСС
Made with FlippingBook
RkJQdWJsaXNoZXIy MTQ4NjUy