ISO 13399 является международным стандартом цифрового представления данных о режущем инструменте. GTC (Generic Tool Catalogue) дополняет ISO 13399 и служит для иерархической организации режущего инструмента и файловых структур данных. Данные о режущем инструменте, оснастке и станках, поддерживающие эти стандарты, могут быть без усилий импортированы в любое инженерное программное обеспечение, также поддерживающее эти стандарты - CAD/CAM, симуляция, управление инструментом и т. д.
Поэтому все больше производителей инструментов начинают использовать этот стандарт для представления каталогов своей продукции. Одним из них является компания Sandvik Coromant - признанный мировой лидер в производстве и поставке высокопроизводительного металлорежущего инструмента. Компания поставляет широкий ассортимент инструмента для точения, фрезерования, сверления, обработки резьбы, а также современные системы модульной быстросменной оснастки. Каталоги инструментов Sandvik Coromant периодически обновляются и находятся в свободном доступе.
Целью магистерской диссертации на данном этапе - научиться работать с базами инструментов формата ISO 13399, чтобы в дальнейшем разработать интерфейсы для ввода данных о режущем инструменте непосредственно в программное обеспечение SprutCAM, а так же создание инструментальных сборок, что повысит производительность программирования ЧПУ. В соответствии с поставленной целью в работе предполагается решить следующие задачи:
- Изучение стандарта представления данных о режущем инструменте - ISO 13399;
- Изучение архитектуры предоставляемых каталогов инструментов;
- Разработка функциональной модели программы для работы с каталогом инструментов;
- Разработка алгоритмов;
- Реализация программы.
Результатом данной работы будет программный продукт, позволяющий:
- Загружать и читать базы режущего инструмента, для начала Sandvik Coromant;
- Производить быстрый поиск, фильтрацию инструментов по наименованию, по параметрам и так далее;
- Визуализировать параметры выбранного инструмента в удобочитаемом виде.
Итогом проделанной работы является программа, способная загружать базы инструментов стандарта ISO 13399. При запуске приложения подгружается файл словаря (по умолчанию он должен находиться в тоже директории, где и приложение, иначе появится окно, в котором нужно будет указать путь вручную). Затем можно загрузить либо файл инструмента, либо базу.
Я разделил процесс разработки на этапы, проходя которые я учитывал все функциональные и не функциональные требования:
1) Создана структура классов, на основе формата, для схем файлов словаря и инструмента, упрощен ввод новых объектов;
2) Реализован механизм извлечения данных из файлов и их
добавления, предусмотрена возможность исправления ошибок;
3) Реализован механизм кеширования базы инструмента, для
ускорения загрузки и работы, так же это позволяет загружать неограниченное количество файлов, входящих в каталог;
4) Создан пользовательский интерфейс для вывода данных, реализованы механизмы поиска и фильтрации по параметрам.
Время, затраченное на разработку - 6 месяцев. Первый прототип был получен примерно через 5 месяцев. Следующий месяц проводилось внутреннее тестирование, доработка и оптимизация. Производилось расширение функционала.
Размер проекта со всеми сопровождающими библиотеками - 10000 строк (классы, связанные с импортом геометрии не рассматриваются). Все из них написаны мною.
Теперь после окончания разработки программы, я приведу некоторые аргументы, почему необходимо было разрабатывать свой импортер базы, чем использовать уже готовый (Adveon - от создателей стандарта).
Первое и самое главное: необходимо было разобраться в стандарте (какие параметры инструмента могут храниться в базе, достаточно ли нам данных, чтобы построить свою структуру) и не зависеть от базы одного конкретного производителя. Adveon же - это «черный ящик». На счет визуализации - на данный момент такая задача не ставилась.
Второе: Adveon - это платная программа. Цена коммерческого использования заметно «кусается».
Мое же приложение лишено этих недостатков. Разрабатывая эту систему, я учитывал особенности разных версий баз, но и про поддержку старых версий не забывал.
1 Использование ISO 13399. URL: http://www.steptools.com/library/stepnc/2009 bath/Sandvik Cutting Tool Data via ISO13399.pdf (дата обращения 07.03.2016);
2 Стандарт ISO 10303 STEP «Стандарт обмена данными данной модели изделия»;
3 ISO/CD 10303-42 - представление и обмен данных о продукции;
4 ISO 13399-1 - Cutting tool data representation and exchange;
5 ISO/IS 13584-25 - Parts library;
6 STEP инструменты, Inc. URL: http://www.steptools.com/ (дата
обращения 25.04.2016);
7 Набор классов для ISO 10303. URL: http://cic.nist.gov/mbe/schemas/ap203e2/ (дата обращения 18.04.2016);
8 Набор классов для словаря ISO 13399. URL:
http: //doc.j sdai.net/j sdai doc/api ref/j sdai/SIso 13584 iec61360 dictionary schem a/package-summary.html (дата обращения 07.03.2016).