Алгоритм программы для размерного анализа технологических процессов
Применение систем автоматизации проектных работ (САПР). Считывание данных из полей. Размерный анализ техпроцесса. Применение объектно-ориентированного программирования. Создание САПР размерного анализа осевых размеров деталей типа "ступенчатый вал".
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 22.03.2018 |
Размер файла | 13,9 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Алгоритм программы для размерного анализа технологических процессов
Седов Александр Сергеевич,
магистрант машиностроительного факультета Волгоградского государственного технического университета.
Применение систем автоматизации проектных работ (САПР) значительно сокращает трудоемкость конструкторского и технологического проектирования, а также позволяет создавать базы данных готовых проектных решений для их последующей модификации и использования [1, с.125].
Была поставлена задача создания САПР размерного анализа осевых размеров деталей типа «ступенчатый вал». При этом ввод исходных данных и вывод расчетных должен выполняться в интерактивном режиме, что наиболее рационально осуществить с использованием встроенных программных средств операционной системы, оснащенной графическим интерфейсом пользователя (например, Windows XP).
Современные средства программирования позволяют создавать развитые САПР с высокой степенью интерактивности. Применение визуального и объектно-ориентированного программирования, являющихся стандартными для данных средств программирования, сокращают время на разработку проекта программы и способствуют упорядочиванию ее логико-иерархической структуры [2, с.12].
Представленная в данной статье программа «Размер32» создана в свободной среде программирования Lazarus (язык Object Pascal) - аналоге коммерчески распространяемой среды Delphi, и изначально откомпилирована для работы на архитектуре i386 под управлением 32-битных ОС Windows XP/Vista/7. Кроссплатформенный компилятор Free Pascal позволяет получить исполняемый код в том числе для свободных операционных систем на основе ядра Linux, что является немаловажным, если ставится задача сокращения затрат, связанных с внедрением САПР. Текст программы насчитывает 1542 строки, в откомпилированном под Win32 виде программа занимает 13 мегабайт.
Структура программы представляет собой набор из 3-х связанных линейно алгоритмических систем:
? система ввода исходных данных;
? система обработки данных;
? система вывода расчетной информации.
Входные данные включают в себя:
? геометрию заготовки (количество ступеней вала, их относительные диаметры);
? осевые размеры заготовки (отклонения);
? осевые размеры детали (номиналы с отклонениями);
? наименование операций;
? последовательность операционных размеров на каждой операции.
Основным структурным элементом области данных программы является запись типа TRazm.
TRazm = record
BS: byte; //от данной поверхности откладывается размер
FS: byte; //к этой поверхности
Nom: real; //номинал, мм
ei: real; //нижнее отклонение, мм
es: real; //верхнее отклонение, мм
end;
В программе предусмотрен массив Razm[j,i] из N_OP_MAX*N_RAZ_MAX записей типа TRazm (где N_OP_MAX -- максимальное кол-во операций (10), N_RAZ_MAX -- максимальное количество размеров в операции (5). На этапе ввода исходных данных происходит заполнение массива Razm[j,i], где j - номер операции, i - порядковый номер размера.
Фрагмент, описывающий считывание данных из полей:
//промежуточная запись с полей задания размера
Razm2.BS := StrToInt(Razm_Inp[I_BS].Caption);
Razm2.FS := StrToInt(Razm_Inp[I_FS].Caption);
Razm2.Nom := StrToFloat(Razm_Inp[I_NOM].Caption);
Razm2.ei := StrToFloat(Razm_Inp[I_EI].Caption);
Razm2.es := StrToFloat(Razm_Inp[I_ES].Caption);
index := GetRazmIndex(Razm2.BS, Razm2.FS);
Здесь данные считываются в промежуточную запись Razm2, которая затем копируется в элемент массива Razm[j,i]. Функция GetRazmIndex возвращает порядковый номер размера, если содержимое полей ввода указывает на существующий размер или 0, если размер не существует.
Следующий фрагмент показывает запись в Razm[j,i].
//заносим данные
with Razm[CurrentOp, index] do
begin
BS := Razm2.BS;
FS := Razm2.FS;
Nom := Razm2.Nom;
ei := Razm2.ei;
es := Razm2.es;
end;
(Здесь CurrentOp - номер рассматриваемой операции.)
Данные можно вводить вручную, создав новый технологический процесс, а также можно считать с диска. Собственное расширение файла программы - *.tpd.
Фрагмент алгоритма считывания данных из файла.
AssignFile(F, OpenDialog.FileName);//назначение имени файла
Reset(F); //открыть файл для чтения
Read(F, FB); //прочесть содержимое файла
CloseFile(F); //закрыть файл
N_St := FB.N_St; //количество ступеней
D_St := FB.D_St; //диаметры ступеней
CountOp := FB.CountOp; //количество операций
OpNames := FB.OpNames; //наименования операций
Razm := FB.Razm; //записи размеров
RazmOpCount := FB.RazmOpCount;//количество размеров в каждой операции
Здесь FB - промежуточная запись одного типа с F.
Запись на диск производится аналогичным способом, но вместо Reset(F) вызывается Rewrite(F).
Размерный анализ техпроцесса производится следующим образом.
1. Составляется список всех размеров от заготовки до готовой детали (с учётом поверхностей, возникающих в процессе обработки) (1).
2. Составляется список замыкающих размеров.
3. Выбирается первый замыкающий размер и для данного размера выполняется рекурсивный обход списка размеров (1) с подсчетом количества звеньев и их типом (увеличивающее, уменьшающее). Если обход заходит в «тупик», он начинается по новому пути. В итоге для данного замыкающего размера выбирается размерная цепь с минимальным количеством звеньев.
4. Переход к следующему замыкающему размеру и т.д.
5. Анализ размерных цепей по известным методикам.
Литература
система автоматический проектный работа
1. Корсаков, В. С. Автоматизация проектирования технологических процессов в машиностроении / В. С. Корсаков, Н. М. Капустин, К. -X. Темпельгоф, X, Лихтенберг; Под общ. ред. Н.М. Капустина. - М.: Машиностроение, 1985. - 304 с.
2. Климов, В. Е. Разработка САПР : В 10 кн. Кн. 7. Графические системы САПР: Практ. пособие / В. Е. Климов; Под ред. В. А. Петрова. - М.: Высш. шк., 1990. - 142 с. ISBN 5-06-000744-8.
Размещено на Allbest.ru
...Подобные документы
Понятие и функции систем автоматизированного проектирования (САПР), принципы их создания и классификация. Проектирующие и обслуживающие подсистемы САПР. Требования к компонентам программного обеспечения. Этапы автоматизации процессов на предприятии.
реферат [19,8 K], добавлен 09.09.2015Применение средств САПР для создания связи баз данных с чертежом. Создание связи между таблицами базы данных. Разработка команды САПР AutoСAD для гидромотора. Ввод промежуточных параметров. Определение полярных координат точек, секция отрисовки.
курсовая работа [1,8 M], добавлен 28.01.2016Применение объектно-ориентированного программирования для написания нескольких модулей программы. Вычисление алгебраического уравнения методом половинного деления. Применение метода Эйлера в теории численных методов общих дифференциальных уравнений.
курсовая работа [398,1 K], добавлен 26.02.2015Определение и характеристика цели автоматизации проектирования. Ознакомление с достоинствами процесса внутреннего шлифования. Исследование и анализ сущности САПР – системы, объединяющей технические средства, математическое и программное обеспечение.
курсовая работа [949,8 K], добавлен 02.06.2017Анализ объектно-ориентированного программирования, имитирующего способы выполнения предметов. Основные принципы объектно-ориентированного программирования: инкапсуляция, наследование, полиморфизм. Понятие классов, полей, методов, сообщений, событий.
контрольная работа [51,7 K], добавлен 22.01.2013Создание программы с использованием принципов объектно-ориентированного программирования на языке высокого уровня С# средствами Microsoft Visual Studio 2010. Построение алгоритма реализации. Определение математического аппарата, применение его в задаче.
курсовая работа [500,4 K], добавлен 13.01.2015САПР как организационно-техническая система, реализующая информационную технологию выполнения функций проектирования. Цель создания и назначение САПР, классификации программных приложений и средств автоматизации по отраслевому и целевому назначению.
презентация [124,1 K], добавлен 16.11.2014Структура и классификация систем автоматизированного проектирования. Виды обеспечения САПР. Описание систем тяжелого, среднего и легкого классов. Состав и функциональное назначение программного обеспечения, основные принципы его проектирования в САПР.
курсовая работа [37,7 K], добавлен 18.07.2012Использование объектно-ориентированного программирования - хорошее решение при разработке крупных программных проектов. Объект и класс как основа объектно-ориентированного языка. Понятие объектно-ориентированных языков. Языки и программное окружение.
контрольная работа [60,1 K], добавлен 17.01.2011Особенности реализации главных элементов разрабатываемой программы (цифровые элементы) с помощью объектно-ориентированного подхода. Применение принципа инкапсуляции для защиты данных. Конструирование классов, описание и тестирование программного продукта.
курсовая работа [2,3 M], добавлен 10.05.2015Разработка приложения "Калькулятор с переходом в строковый калькулятор" с применением объектно-ориентированного программирования. Концепция и понятия объектно-ориентированного программирования. Язык программирования Java. Листинг программы "Калькулятор".
курсовая работа [966,9 K], добавлен 11.02.2016Основные операции с АВЛ-деревьями, добавление и удаление элемента из сбалансированного дерева. Эффективность сортировки вставкой в АВЛ–дерево и итераторы. Алгоритм реализации АВЛ–деревьев через классы объектно–ориентированного программирования.
курсовая работа [281,1 K], добавлен 29.11.2010Понятие объектно-ориентированного программирования, характеристика используемых языков. Практическая разработка средств объектно-ориентированного программирования в задачах защиты информации: программная реализация на языке С++, а также Turbo Pascal.
курсовая работа [275,9 K], добавлен 22.12.2011История развития языков программирования; создание и распространение языка С++; новый подход к разработке объектно-ориентированного программного обеспечения. Применение моделирования предметных областей для структуризации их информационных отражений.
реферат [29,1 K], добавлен 06.12.2010Характеристика технологических процессов сбора, передачи, обработки и выдачи информации в отделах исследуемого предприятия. Основные понятия и особенности автоматизированного проектирования изделий корпусной мебели. Концепция построения САПР "Базис".
отчет по практике [461,0 K], добавлен 09.08.2015Исследование принципов объектно-ориентированного программирования на базе языка программирования С++. Разработка программного комплекса для ведения учёта памятников города. Описание процессов сортировки, поиска, формирования статистики по памятникам.
курсовая работа [782,4 K], добавлен 26.05.2014Общая характеристика объектно-ориентированного подхода в программировании, его основные свойства и принципы. Разработка программы для автоматизация деятельности кафе на основе объектно-ориентированного подхода, проектирования и реализации схемы данных.
курсовая работа [1,2 M], добавлен 22.01.2012Создание программы, реализующей игру "Линии". Среда разработки программы, описание ее общего вида. Основные алгоритмы программы. Реализация программы в среде разработки Microsoft Visual Studio 2008 на языке объектно-ориентированного программирования С++.
курсовая работа [639,0 K], добавлен 16.03.2012Разработка учебного транслятора на языке программирования C# в среде объектно-ориентированного программирования Visual Studio 2012. Выделение лексем и построение цепочки символов на этапе синтаксического анализа. Функциональное тестирование программы.
курсовая работа [406,8 K], добавлен 07.08.2013Основная цель технологии СОМ (объектная модель компонентов) - обеспечение возможности экспорта объектов. Объектно-ориентированное программирование и его место в программировании. Принципы и применение описаний информационных систем (UML и аналоги).
курсовая работа [698,3 K], добавлен 09.12.2013