Создание кроссплатформенной
файловой системы хранения управляющих программ для системы ЧПУ
И.А. Дубровин,
инж. 1 кат., асп., iadubrovin@mail.ru,
А. И. Обухов,
н.с., асп., obukhov@ncsystems.ru,
ГОУ ВПО МГТУ «Станкин», г.
Москва
Статья
посвящена проблемам разработки одного из модулей современной системы ЧПУ –
файловой системе. В статье рассматриваются требования предъявляемые к файловой
системе промышленного назначения и преимущества использования отдельного модуля
администрирования файлов. Также в статье описаны подходы для создания основных функциональных возможностей
модуля и решения для повышения эргономики работы оператора и безопасности.
Статья написана на основе материала по системе ЧПУ АксиОМА Ctrl.
Article deals with problems of
development of one of the modules of the system of
modern CNC - the file system. This article considers the
requirements imposed on file system for industrial use and
benefits of using a separate administration files
module . The article also describes the approaches for
creating the basic features of the
module and solutions to improve
the ergonomics and safety. This article was
written based on material by CNC АxiОМА
Ctrl.
Организация программного
обеспечения по распределенному принципу позволяет повысить масштабируемость,
надежность и гибкость системы ЧПУ [1]. Для распределенного приложения
реализация внутренней файловой системы имеет несколько явных преимуществ по
сравнению с прямым использованием дискового пространства средствами
операционной системы. Во-первых, использование внутренней файловой системы
позволяет организовать кроссплатформенную работу с данными, благодаря
предусмотренным в ядре открытым функциям и интерфейсам взаимодействия с
внешними приложениями. Во-вторых, внутренняя файловая система организует доступ
к данным с помощью специализированной реализации функций обработки файлов,
ориентированной на структуру данных системы ЧПУ. При этом исключаются внешние
вмешательства операционной системы в работу, что позволяет постоянно
поддерживать высокую производительность и надежность доступа к информации.
В-третьих, обеспечиваются надежные механизмы блокировки, что существенно
снижает риск потери данных при совместной работе с файловой системой. В
обособленном модуле файловой системы значительно повышен уровень контроля над
данными, исключающий такие ситуации, как переполнение доступной памяти.
На рис. 1 показана
древовидная структура внутренней файловой системы. Её корнем является узел “NC”.
Внутренне элементы файловой системы являются структурами, имеющими ссылку на
своего родителя и потомков. По этим признакам элемент – папка отличается от
элемента – файл возможностью наличия
множества потомков.
рис. 1 Древовидная структура
файловой системы
Папки не содержат в себе
данных и имеют нулевой размер (в байтах). Отсутствие объема памяти для папки
достигается благодаря хранению её атрибутов в зарезервированном фрагменте
файловой системы, что позволяет ускорить
обработку.
На рис. 2 проиллюстрирован
графический интерфейс пользователя оператора системы ЧПУ при работе с
внутренней файловой системой. Для построения структуры в графическом виде
проекция файловой системы запрашивается
из ядра СЧПУ. В составе поставляемой ядром проекции содержится информация об
активной управляющей программе, блокировках, времени изменения, размерах файлов
и папок. Графический движок (прикладная часть) модуля терминальной части
позволяет работать с файловой системой, как и в среде ОС Windows,
за исключением операций перетаскивания (drag'n'drop).
рис. 2 Графический интерфейс пользователя
при работе с файловой системой
В среде терминальной части
системы ЧПУ оператору доступны распространенные операции работы с файловой
системой:
·
копирование файлов или папок из внутренней файловой системы сервера
реального времени на дисковое
пространство операционной системы, в которой работает терминал;
·
копирование файлов или папок с диска операционной системы во внутреннюю
файловую систему сервера СЧПУ;
·
внутри файловой системы
пользователь может создавать файлы и папки;
·
изменение или написание нового кода с помощью встроенного редактора
управляющих программ;
·
удаление файлов или папок;
·
предоставление выбранного оператором файла с управляющей программой на
обработку станком.
На рис. 3 представлена
диаграмма прецедентов функциональных
возможностей оператора, работающего с внутренней файловой системой.
рис. 3 Функции работы оператора с
файловой системой
На диаграмме
последовательности (рис. 4) показана процедура обработки запроса пользователя
на примере копирования папки в систему ЧПУ. После нажатия пользователем на
кнопку “Копировать на диск” появляется диалоговое окно обзора файлов на дисках
операционной системы для выбора копируемой папки или файла. После подтверждения
операции графический модуль передает основную информацию (имена и пути) в
клиентский модуль терминальной части СЧПУ. Перед началом копирования модуль
терминальной части посылает запрос о состоянии файловой системы в ядро СЧПУ для
актуализации. По результатам состояния системы ЧПУ проводится проверка на
соответствие запрашиваемой транзакции пользователя, текущим возможностям
сервера реального времени. В случае провала проверки, графический модуль
прекращает запрос оператора и выводит соответствующее уведомление об ошибке.
Если проверка не выявляет ошибок, программный клиент модуля терминальной части
пересылает структуру папок и вложенных файлов на сервер реального времени
системы ЧПУ. По результатам копирования, на экран оператора выводится текущее
состояния (графическая проекция) файловой системы.
рис. 4 Диаграмма
последовательности копирования папки управляющих программ в систему ЧПУ
Для исключения потери
информации, перед транзакциями передачи данных от терминала к ядру системы ЧПУ
проводится несколько основных проверок. Например, проверка доступности
свободного дискового пространства сервера системы ЧПУ. В случае успеха данные
файловой системы на сервере будут заблокированы для проведения
копирования. В случае несоответствия
требованиям, оператор получит уведомление с причиной отказа от транзакции (рис.
5).
рис. 5 Обработка ошибок при
работе с файловой системой
Разработанный модуль файловой системы имеет преимущества
кроссплатформенностью, т.е. обеспечивает доступ к данным на нескольких
операционных системах. Модуль поддерживает совместную работу операторов на
территориально распределенных терминалах, имеет возможности настройки под
различные конфигурации. Внутренняя файловая система имеет повышенную надежность
за счет использования механизмов проверки данных, а так же применения
резервного копирования. В настоящее время модуль успешно применяется на
различных конфигурациях системы ЧПУ АксиОМА Ctrl и имеет развитый графический интерфейс.
1.
Сосонкин В.Л., Мартинов Г.М.. Системы числового программного
управления. - М.: Издательство ООО
"ИКД Логос", 2005. – 296 с.
2.
Сосонкин В.Л., Мартинов Г.М. Программирование систем числового
программного управления. - М.: Издательство ООО "ИКД Логос", Москва 2008. – 332 с.
3.
Григорьев С.Н. Принципы создания многофункциональной системы числового
программного управления технологическим оборудованием на базе общего ядра с
открытой модульной архитектурой // Приборы и системы. Управление, контроль,
диагностика.2011. №05. С. 1-11.
4.
Григорьев С.Н., Андреев А.Г., Мартинов Г.М. Перспективы развития
кроссплатформенных компьютерных систем числового программного управления
высокотехнологичного оборудования // Автоматизация в промышленности, 2011. №5,
с. 3-8.
5.
Мартинова Л.И., Мартинов Г.М. Практические аспекты реализации модулей
открытой системы ЧПУ // Автотракторное электрооборудование, 2002. №3. C. 31-37.