Разработка элементов систем автоматизированного проектирования деталей машин

Применение средств САПР для создания связи баз данных с чертежом. Разработка пользовательской команды САПР AutoСAD. Определение конструкторско-технологических, программных параметров, полярных координат точек. Создание пользовательского меню AutoСAD.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 09.04.2012
Размер файла 1,0 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Содержание

Задание

Введение

1. Применение средств САПР для создания связи баз данных с чертежом

1.1 Создание баз данных

1.2 Создание связи между таблицами базы данных

1.3 Подготовка чертежа к связи с базами данных

1.4 Создание связи между базами данных и чертежом

2. Разработка пользовательской команды САПР AutoСAD

2.1 Разработка команды САПР AutoСAD для гидромотора

2.1.1 Определение конструкторско-технологических параметров

2.1.2 Определение программных параметров

2.1.3 Определение полярных координат точек

2.1.4 Секция отрисовки

2.1.5 Разработка программы

2.1.6 Описание работа программы

2.2 Разработка команды САПР AutoСAD для бака

2.3 Разработка команды САПР AutoСAD для делителя потока

2.4 Разработка команды САПР AutoСAD для дросселя

2.5 Разработка команды САПР AutoСAD для фильтра

2.6 Разработка команды САПР AutoСAD для гидроцилиндра

2.7 Разработка команды САПР AutoСAD для напорного гидроклапана

2.8 Разработка команды САПР AutoСAD для гидронасоса

2.9 Разработка команды САПР AutoСAD для гидрораспределителя

2.10 Разработка команды САПР AutoСAD для обратного клапана

2.11 Разработка команды САПР AutoСAD для обратного манометра

2.12 Разработка команды САПР AutoСAD для маслоохладителя

2.13 Разработка команды САПР AutoСAD для насоса

2.14 Разработка команды САПР AutoСAD для вентиля

3. Создание пользовательского меню AutoСAD

3.1 Сохранение блоков и слайдов

3.3 Подготовка файлов меню AutoCAD

3.3 Создание пользовательского меню AutoСAD

Заключение

Литература

Введение

В период научно-технической революции наука сделалась непосредственной производительной силой. Поэтому в программах развития предусматриваются меры по ускорению научно-технического прогресса, быстрейшему внедрению достижений науки в производство.

При разработке сложных машин и других механических объектов фактор времени имеет первостепенное значение. ЭВМ, выполняющие миллионы вычислительных операций в секунду, способные хранить и перерабатывать огромные массивы информации, позволяют повысить темпы и качество проектирования машин.

К числу новых возможностей, обеспечиваемых ЭВМ, можно отнести:

1) возможность оптимизации;

2) автоматизация проектирования;

3) возможность получить решение с любой потребной точностью, используя новые численные методы расчёта, например метод конечных элементов;

4) возможность проводить расчёты в условиях весьма ограниченного времени счёта, например при коррекции параметров полёта самолёта и космических аппаратов.

Оптимизация - это поиск, нахождение и реализация наиболее целесообразных решений. Благодаря высокому быстродействию ЭВМ и большой ёмкости памяти число критериев, по которым проводится оптимизация, резко возросло.

Автоматизированное проектирование - это проектирование с помощью ЭВМ, включающее поиск на ЭВМ оптимальных решений с выдачей результатов в графическом виде на дисплее или на бумаге (с помощью графопостроителя). Оно ведётся в диалоговом режиме «человек-ЭВМ» и предусматривает широкое применение математических моделей.

Актуальность автоматизации проектирования следует из того, что, начиная с начала ХХ века производительность механической обстановки в среднем повысилась более чем в 10 раз, а производительность конструкторских работ, исключая размножение чертежей, всего на 20%.

Другой причиной необходимости автоматизации проектирование явилось несоответствие между устаревшей технологией проектирования и всё возрастающей сложностью проектируемых изделий, которая более чем удваивается в течение десятилетия.

САПР создаются в проектных, конструкторских, технологических организациях в целях:

- повышения качества и технико-экономического уровня проектируемой и выпускаемой продукции

- повышения эффективности и надежности объектов проектирования, уменьшения затрат на их создание и эксплуатацию

- сокращения сроков, уменьшения трудоемкости проектирования и повышения качества проектной документации.

Достижение целей создания САПР обеспечивается путем:

- комплексной автоматизации проектных работ в проектной организации с необходимой перестройкой ее структуры и кадрового состава

- повышения качества управления проектированием

- замены натурных испытаний и макетирования математическим моделированием.

С развитием САПР существенно улучшается качество проектов, проектировщик получает возможность использовать эффективные математические модели, методы моделирования и оптимизации на всех основных стадиях проектирования.

1. Применение средств САПР для создания связи баз данных с чертежом

1.1 Создание баз данных

Для создания баз данных воспользуемся программой Microsoft Acces. Создаем новую базу данных, а в ней таблицы, которые впоследствии будут связываться с чертежом.

Используя меню Создание - Конструктор таблиц создадим таблицы:

1) Балансовая стоимость с тремя полями: код оборудования, балансовая стоимость, дата стоимости. Ключевым делаем поле код оборудования.

Рисунок 1 - Конструктор таблицы балансовая стоимость

2) Испытания с тремя полями: код оборудования, испытания, дата испытания. Ключевым делаем поле код оборудования.

Рисунок 2 - Конструктор таблицы испытания

3) Марки оборудования с восемью полями: код оборудования, марка оборудования, условное обозначение, производитель, реквизиты производителя, контактное лицо, электронные реквизиты код ответственного.

Рисунок 3 - Конструктор таблицы марки оборудования

4) Оборудование с пятнадцатью полями: код оборудования, наименование оборудования, инвентарный номер, серийный номер, условное обозначение, год выпуска, год ввода в эксплуатацию, месяц ввода в эксплуатацию, срок службы, гарантийный срок, наработка на отказ, масса, габаритные размеры, технические характеристики, код ответственного. Ключевым делаем поле код ответственного.

Рисунок 4 - Конструктор таблицы оборудование

5) Ответственные с пятью полями: код ответственного, ФИО ответственного, должность, адрес, контактный телефон. Ключевым делаем поле код ответственного.

Рисунок 4 - Конструктор таблицы ответственные

6) Подразделения с четырьмя полями: код подразделения, наименование подразделения, юридический адрес, код ответственного. Ключевым задаем поле код подразделения.

Рисунок 4 - Конструктор таблицы подразделения

7) Ремонт с тремя полями: код оборудования, ремонт, дата ремонта. Ключевым задаем поле код оборудования.

Рисунок 5 - Конструктор таблицы ремонт

Заполняем полученные таблицы данными соответствующими чертежу: гидросхеме экскаватора ЭО-4121.

1.2 Создание связи между таблицами базы данных

Для создания связи между таблицами базы данных воспользуемся меню Работа с базами данных - Схема данных. Добавляем все таблицы из появившегося окна добавления таблиц.

Рисунок 6 - Окно добавления таблиц

Добавив все таблицы начинаем их связывать, перетаскивая ключевое поле на не ключевое. В появившемся окне изменения связей ставим флажки на Обеспечение целостности данных и Каскадное обновление связанных полей.

Рисунок 6 - Окно изменения связей

После создания связей, в таблицах отображаются значки, после нажатия на которые отображается таблица, связанная с данной.

Рисунок 7 - Отображение связей между таблицами

1.3 Подготовка чертежа к связи с базами данных

Чтобы связать чертеж с базами данных сначала преобразуем элементы гидросхемы в блоки. Для этого воспользуемся кнопкой «Создать блок» панели рисования. В появившемся окне описания блока указываем имя блока, объекты блока и базовую точку.

Рисунок 8 - Окно описания блока

Преобразовываем так все элементы гидросхемы, после чего связываем их с базами данных.

1.4 Создание связи между базами данных и чертежом

Для создания связи между гидросхемой и базами данных вызовем Диспетчер подключения к БД. Для этого пишем в командном меню команду «dbconnect», после чего появляется диспетчер.

Рисунок 9 - Диспетчер подключения к БД

В диспетчере вызываем настройки источника данных. В появившемся окне настройки источника данных указываем имя источника данных. Далее в окне свойств связи с данными выбираем параметры подключения: во вкладке «Поставщик данных» выбираем «Microsoft Jet 4.0 OLE DB Provider», во вкладке «Подключение» указываем путь к базе данных и проверяем подключение, во вкладке «Дополнительно» в правах доступа указываем опцию «ReadWrite».

После настройки открываем в диспетчере таблицу, которую будем связывать с чертежом. В появившемся окне просмотра данных используя кнопку «Связь!» создаем связь между полями таблицы с блоками чертежа.

Рисунок 9 - Окно просмотра данных

После создания связей можно просмотреть связи с помощью кнопок «Автопросмотр связанных объектов в чертеже» и «Автопросмотр связанных записей в окне просмотра данных».

2. Разработка пользовательской команды САПР AutoСAD

2.1 Разработка команды САПР AutoСAD для гидромотора

2.1.1 Определение конструкторско-технологических параметров

p1, р2 - первая и вторая соответственно точки, вводимые пользователем;

2.1.2 Определение программных параметров

Программными параметрами являются все точки, определяемые пользователем в последовательности в зависимости от положения. Этими точками являются точки р1 - р10.

Рисунок 10 - Гидромотор

2.1.3 Ввод промежуточных параметров

а - угол между точками p1 и p2;

r - расстояние между точками p1 и p2.

2.1.3 Определение полярных координат точек

- определение угла наклона оси гидромотора а;

- определение координаты точки p3. От точки р1 отложить угол a и расстояние r*0.8;

- определение координаты точки p4. От точки р3 отложить угол a-pi и расстояние r*0.3;

- определение координаты точки p5. От точки р3 отложить угол a-pi/2 и расстояние r*0.3;

- определение координаты точки p6. От точки р3 отложить угол a+pi/2 и расстояние r*0.3;

- определение координаты точки p7. От точки р1 отложить угол a-pi и расстояние r*0.8;

- определение координаты точки p8. От точки р7 отложить угол a и расстояние r*0.3;

- определение координаты точки p9. От точки р7 отложить угол a-pi/2 и расстояние r*0.3;

- определение координаты точки p10. От точки р7 отложить угол a+pi/2 и расстояние r*0.3.

2.1.4 Секция отрисовки

Соединяем найденные точки в нужном порядке:

- соединяем точки p1 и p2 линией радиуса r;

- соединяем точки p4, p6, p5 линией черного цвета;

- соединяем точки p8, p9, p10 линией черного цвета;

- заштриховываем треугольник, ограниченный точками p4, p6, p5 штриховкой ANSI31 с углом наклона 0° и шагом 0.01;

- заштриховываем треугольник, ограниченный точками p8, p9, p10 штриховкой ANGLE с углом наклона 0° и шагом 0.01;

2.1.5 Разработка программы

(defun c:motor()

; секция ввода данных

(setq p1 (getpoint "\nВведите центр окружности:"))

(setq p2 (getpoint p1 "\nВведите край окружности:"))

; секция промежуточных вычислений

(setq r (distance p1 p2))

(setq a (angle p1 p2))

; секция определения точки отрисовки

(setq p3 (polar p1 a (* r 0.8)))

(setq p4 (polar p3 (- a (/ pi 1)) (* r 0.3)))

(setq p5 (polar p3 (- a (/ pi 2)) (* r 0.3)))

(setq p6 (polar p3 (+ a (/ pi 2)) (* r 0.3)))

(setq p7 (polar p1 (- a (/ pi 1)) (* r 0.8)))

(setq p8 (polar p7 a (* r 0.3)))

(setq p9 (polar p7 (- a (/ pi 2)) (* r 0.3)))

(setq p10 (polar p7 (+ a (/ pi 2)) (* r 0.3)))

; секция отрисовки

(command "_circle" p1 r "")

(command "_line" p4 p6 p5 p4 "")

(command "_line" p9 p10 p8 p9 "")

(command "_hatch" "ANSI31" 0.01 0 p4 p6 p5 p4 "")

(command "_hatch" "ANGLE" 0.01 0 p9 p10 p8 p9 "")

2.1.6 Описание работа программы

Разработанную программу сохраняем в файл с расширением .lsp. Загружаем AutoCAD и выбираем меню Tools-AutoLisp-Load…, находим свой файл и загружаем его(motor.lsp successfully loaded). В командной строке вводим имя программы (Command: motor), затем указываем точки (Введите центр окружности: p1, Введите край окружности: p2), от которых отсчитываются все остальные точки.

После ввода данных AutoCAD автоматически определяет координаты остальных точек из «секции определения точки отрисовки». Затем, с помощью «секции отрисовки», по координатам точек AutoCAD соединяет необходимые точки детали в той последовательности, которая задана программой.

2.2 Разработка команды САПР AutoСAD для бака

Рисунок 11 - Гидробак

Текст программы:

(defun c:bak()

; секция ввода данных

(setq p1 (getpoint "\nВведите левый край бака:"))

(setq l (getdist p1 "\nВведите ширину бака:"))

; секция промежуточных вычислений

(setq h (/ l 10))

; секция определения точки отрисовки

(setq p3 (polar p1 (- (/ pi 2)) h))

(setq p4 (polar p3 0 l))

(setq p2 (polar p4 (+ (/ pi 2)) h))

; секция отрисовки

(command "_line" p1 p3 p4 p2 "")

2.3 Разработка команды САПР AutoСAD для делителя потока

Рисунок 12 - Делитель потока

Текст программы:

(defun c:dp()

; секция ввода данных

(setq p1 (getpoint "\nВведите первый край делителя потока:"))

(setq p2 (getpoint p1 "\nВведите второй край делителя потока:"))

(setq h (getdist p1 "\nВведите высоту делителя потока:"))

; секция промежуточных вычислений

(setq b (distance p1 p2))

(setq a (angle p1 p2))

; секция определения точки отрисовки

(setq p3 (polar p1 (- a (/ pi 2)) (/ h 1)))

(setq p4 (polar p3 a b))

(setq p5 (polar p1 a (/ b 2)))

(setq p6 (polar p5 (- a (/ pi 2)) (/ h 4)))

(setq p7 (polar p6 (- a pi) (/ b 4)))

(setq p8 (polar p6 a (/ b 4)))

(setq p9 (polar p7 (- a (/ pi 2)) (* 3 (/ h 4))))

(setq p10 (polar p8 (- a (/ pi 2)) (* 3 (/ h 4))))

(setq l (distance p7 p9))

(setq p11 (polar p7 (- a (/ pi 2)) (/ l 2)))

(setq p12 (polar p8 (- a (/ pi 2)) (/ l 2)))

(setq p13 (polar p11 (+ a (/ pi 2)) (/ l 5)))

(setq p14 (polar p12 (+ a (/ pi 2)) (/ l 5)))

(setq p15 (polar p11 (- a (/ pi 2)) (/ l 5)))

(setq p16 (polar p12 (- a (/ pi 2)) (/ l 5)))

(setq p17 (polar p13 (- a pi) (/ l 8)))

(setq p18 (polar p13 a (/ l 8)))

(setq p19 (polar p15 (- a pi) (/ l 8)))

(setq p20 (polar p15 a (/ l 8)))

(setq p21 (polar p11 (- a pi) (/ l 14)))

(setq p22 (polar p11 a (/ l 14)))

(setq p23 (polar p14 (- a pi) (/ l 8)))

(setq p24 (polar p14 a (/ l 8)))

(setq p25 (polar p16 (- a pi) (/ l 8)))

(setq p26 (polar p16 a (/ l 8)))

(setq p27 (polar p12 (- a pi) (/ l 14)))

(setq p28 (polar p12 a (/ l 14)))

(setq p29 (polar p9 (+ a (/ pi 2)) (/ l 5)))

(setq p30 (polar p29 (+ a pi) (/ l 8)))

(setq p31 (polar p29 a (/ l 8)))

(setq p32 (polar p10 (+ a (/ pi 2)) (/ l 5)))

(setq p33 (polar p32 (+ a pi) (/ l 8)))

(setq p34 (polar p32 a (/ l 8)))

; секция отрисовки

(command "_line" p1 p2 p4 p3 p1 "")

(command "_line" p5 p6 "")

(command "_line" p7 p8 "")

(command "_line" p7 p9 "")

(command "_line" p8 p10 "")

(command "_arc" p17 p21 p19 "")

(command "_arc" p18 p22 p20 "")

(command "_arc" p23 p27 p25 "")

(command "_arc" p24 p28 p26 "")

(command "_line" p9 p30 p31 p9 "")

(command "_line" p10 p33 p34 p10 "")

(command "_hatch" "ANSI31" "0.01" "0" "" "" p9 p30 p31 p9 "" "")

(command "_hatch" "ANSI31" "0.01" "0" "" "" p10 p33 p34 p10 "" "")

2.4 Разработка команды САПР AutoСAD для дросселя

Рисунок 13 - Дроссель

Текст программы:

(defun c:dros()

; секция ввода данных

(setq p1 (getpoint "\nВведите левый край дросселя:"))

(setq p2 (getpoint p1 "\nВведите правый край дросселя:"))

(setq h (getdist p1 "\nВведите высоту дросселя:"))

; секция промежуточных вычислений

(setq l (distance p1 p2))

(setq a (angle p1 p2))

; секция определения точки отрисовки

(setq p3 (polar p1 (+ a (/ pi 2)) (/ h 1)))

(setq p5 (polar p2 (+ a (/ pi 2)) (/ h 1)))

(setq p6 (polar p1 (- a (/ pi 2)) (/ h 1)))

(setq p8 (polar p2 (- a (/ pi 2)) (/ h 1)))

(setq p9 (polar p1 a (/ l 2)))

(setq p4 (polar p9 (+ a (/ pi 2)) (/ h 8)))

(setq p7 (polar p9 (- a (/ pi 2)) (/ h 8)))

; секция отрисовки

(command "_arc" p3 p4 p5 "")

(command "_arc" p6 p7 p8 "")

2.5 Разработка команды САПР AutoСAD для фильтра

Рисунок 14 - Фильтр

Текст программы:

(defun c:filtr()

; секция ввода данных

(setq p1 (getpoint "\nВведите центр фильтра:"))

(setq p2 (getpoint p1 "\nВведите край фильтра:"))

; секция промежуточных вычислений

(setq l (distance p1 p2))

(setq a (angle p1 p2))

; секция определения точки отрисовки

(setq p2 (polar p1 a l))

(setq p3 (polar p1 (+ a (/ pi 2)) l))

(setq p4 (polar p1 (+ a (/ pi 1)) l))

(setq p5 (polar p1 (- a (/ pi 2)) l))

; секция отрисовки

(command "_pline" p2 p3 p4 p5 p2 "")

(command "_color" 10)

(command "_line" p2 p4 "")

(command "_color" "bylayer")

2.6 Разработка команды САПР AutoСAD для гидроцилиндра

Рисунок 15 - Гидроцилиндр

Текст программы:

(defun c:cilindr()

; секция ввода данных

(setq p1 (getpoint "\nВведите первый край гидроцилиндра:"))

(setq p2 (getpoint p1 "\nВведите второй край гидроцилиндра:"))

(setq h (getdist p1 "\nВведите высоту гидроцилиндра:"))

; секция промежуточных вычислений

(setq b (distance p1 p2))

(setq a (angle p1 p2))

; секция определения точки отрисовки

(setq p3 (polar p1 (- a (/ pi 2)) (/ h 1)))

(setq p4 (polar p3 a b))

(setq p5 (polar p3 (+ a (/ pi 2)) (/ h 5)))

(setq p6 (polar p5 a b))

(setq p7 (polar p5 (+ a (/ pi 2)) (/ h 10)))

(setq p8 (polar p7 a b))

(setq p9 (polar p1 a (/ b 3)))

(setq p10 (polar p2 (+ a (/ pi 1)) (/ b 3)))

(setq p11 (polar p7 a (/ b 3)))

(setq p12 (polar p8 (+ a (/ pi 1)) (/ b 3)))

(setq p13 (polar p9 (+ a (/ pi 2)) (/ h 3)))

(setq p14 (polar p10 (+ a (/ pi 2)) (/ h 3)))

; секция отрисовки

(command "_line" p1 p3 p4 p2 "")

(command "_line" p5 p6 "")

(command "_line" p7 p8 "")

(command "_line" p1 p9 "")

(command "_line" p2 p10 "")

(command "_line" p13 p11 "")

(command "_line" p14 p12 "")

2.7 Разработка команды САПР AutoСAD для напорного гидроклапана

Рисунок 16 - Гидроцилиндр

Текст программы:

(defun c:gn()

; секция ввода данных

(setq p1 (getpoint "\nВведите первый край гидроклапана:"))

(setq p2 (getpoint p1 "\nВведите второй край гидроклапана:"))

; секция промежуточных вычислений

(setq l (distance p1 p2))

(setq a (angle p1 p2))

; секция определения точек отрисовки

(setq p3 (polar p1 (- a (/ pi 2)) (/ l 1)))

(setq p4 (polar p3 a l))

(setq p5 (polar p1 (- a (/ pi 2)) (/ l 2)))

(setq p6 (polar p3 (- a (/ pi 1)) (/ l 2)))

(setq p7 (polar p6 (- a (/ pi 2)) (/ l 2)))

(setq p8 (polar p3 a (/ l 2)))

(setq p9 (polar p8 (- a (/ pi 2)) (/ l 2)))

(setq p10 (polar p5 (- a (/ pi 2)) (/ l 4)))

(setq p11 (polar p10 a l))

(setq p12 (polar p11 (- a (/ pi 1)) (/ l 3)))

(setq p13 (polar p12 (+ a (/ pi 2)) (/ l 10)))

(setq p14 (polar p12 (- a (/ pi 2)) (/ l 10)))

(setq p15 (polar p2 (- a (/ pi 1)) (/ l 3)))

(setq p16 (polar p1 a (/ l 3)))

(setq p17 (polar p16 (+ a (/ pi 2)) (/ l 10)))

(setq p18 (polar p15 (+ a (/ pi 2)) (/ l 5)))

(setq p19 (polar p17 (+ a (/ pi 2)) (/ l 5)))

(setq p20 (polar p18 (+ a (/ pi 2)) (/ l 5)))

; секция отрисовки

(command "_line" p1 p3 p4 p2 p1 "")

(command "_color" 10)

(command "_line" p5 p6 p7 p9 p8 "")

(command "_color" "bylayer")

(command "_line" p10 p11 "")

(command "_line" p11 p13 p14 p11 "")

(command "_hatch" "ANGLE" "0.01" "0" "" "" p11 p13 p14 p11 p13 "" "")

(command "_line" p15 p17 p18 p19 p20 "")

2.8 Разработка команды САПР AutoСAD для гидронасоса

Рисунок 17 - Гидронасос

Текст программы:

(defun c:gnasos()

; секция ввода данных

(setq p1 (getpoint "\nВведите первый край гидроцилиндра:"))

(setq p2 (getpoint p1 "\nВведите второй край гидроцилиндра:"))

(setq h (getdist p1 "\nВведите высоту гидроцилиндра:"))

; секция промежуточных вычислений

(setq b (distance p1 p2))

(setq a (angle p1 p2))

; секция определения точки отрисовки

(setq p3 (polar p1 (- a (/ pi 2)) (/ h 1)))

(setq p4 (polar p3 a b))

(setq p5 (polar p3 (+ a (/ pi 2)) (/ h 3)))

(setq p6 (polar p5 a b))

(setq p7 (polar p5 (+ a (/ pi 2)) (/ h 10)))

(setq p8 (polar p7 a b))

(setq p9 (polar p1 a (/ b 3)))

(setq p10 (polar p2 (+ a (/ pi 1)) (/ b 3)))

(setq p11 (polar p7 a (/ b 3)))

(setq p12 (polar p8 (+ a (/ pi 1)) (/ b 3)))

(setq p13 (polar p9 (+ a (/ pi 2)) (/ h 2)))

(setq p14 (polar p10 (+ a (/ pi 2)) (/ h 2)))

(setq p15 (polar p9 (+ a (/ pi 2)) (/ h 5)))

(setq p16 (polar p10 (+ a (/ pi 2)) (/ h 5)))

(setq l (distance p5 p3))

(setq p17 (polar p5 (- a (/ pi 2)) (/ l 3)))

(setq p18 (polar p6 (- a (/ pi 2)) (/ l 2)))

(setq p19 (polar p3 (+ a (/ pi 2)) (/ l 3)))

; секция отрисовки

(command "_line" p1 p3 p4 p2 "")

(command "_line" p5 p6 "")

(command "_line" p7 p8 "")

(command "_line" p1 p9 "")

(command "_line" p2 p10 "")

(command "_line" p11 p13 p14 p12 "")

(command "_line" p15 p16 "")

(command "_line" p6 p17 p18 p19 p4 "")

2.9 Разработка команды САПР AutoСAD для гидрораспределителя

Рисунок 18 - Гидрораспределитель

Текст программы:

(defun c:gr()

; секция ввода данных

(setq p1 (getpoint "\nВведите первый край гидрораспределителя:"))

(setq p2 (getpoint p1 "\nВведите второй край гидрораспределителя:"))

(setq h (getdist p1 "\nВведите высоту гидрораспределителя:"))

; секция промежуточных вычислений

(setq b (distance p1 p2))

(setq a (angle p1 p2))

; секция определения точки отрисовки

(setq p3 (polar p1 (- a (/ pi 2)) (/ h 1)))

(setq p4 (polar p3 a b))

(setq p5 (polar p1 (- a (/ pi 2)) (/ h 2)))

(setq p6 (polar p2 (- a (/ pi 2)) (/ h 2)))

(setq p7 (polar p5 (- a (/ pi 2)) (/ h 12)))

(setq p8 (polar p6 (- a (/ pi 2)) (/ h 12)))

(setq p9 (polar p1 (- a (/ pi 2)) (/ h 4)))

(setq p10 (polar p2 (- a (/ pi 2)) (/ h 4)))

(setq p11 (polar p7 (- a (/ pi 2)) (/ h 12)))

(setq p12 (polar p8 (- a (/ pi 2)) (/ h 12)))

(setq p13 (polar p11 (+ a (/ pi 7)) (/ b 10)))

(setq p14 (polar p11 (- a (/ pi 7)) (/ b 10)))

(setq c (distance p11 p3))

(setq p15 (polar p11 (- a (/ pi 2)) (/ c 2)))

(setq p16 (polar p15 (- a (/ pi 2)) (/ c 4)))

(setq p17 (polar p15 a (/ c 4)))

(setq p18 (polar p16 a (/ c 4)))

(setq p19 (polar p17 (+ a (/ pi 2)) (/ c 10)))

(setq p20 (polar p17 (- a (/ pi 2)) (/ c 10)))

(setq p21 (polar p18 (+ a (/ pi 2)) (/ c 10)))

(setq p22 (polar p18 (- a (/ pi 2)) (/ c 10)))

(setq p23 (polar p16 a b))

(setq p24 (polar p23 (- a pi) (/ c 4)))

(setq p25 (polar p24 (+ a (/ pi 2)) (/ c 10)))

(setq p26 (polar p24 (- a (/ pi 2)) (/ c 10)))

(setq p27 (polar p14 (- a (/ pi 2)) (/ c 20)))

(setq p28 (polar p25 (+ a (/ pi 2)) (/ c 15)))

(setq t (angle p28 p27))

(setq p29 (polar p28 (- t (/ pi 6)) (/ b 10)))

(setq p30 (polar p28 (+ t (/ pi 6)) (/ b 10)))

(setq d (distance p1 p9))

(setq p31 (polar p1 (- a (/ pi 2)) (/ d 4)))

(setq p32 (polar p9 (+ a (/ pi 2)) (/ d 4)))

(setq p33 (polar p31 a (/ d 4)))

(setq p34 (polar p32 a (/ d 4)))

(setq p35 (polar p33 (+ a (/ pi 2)) (/ d 10)))

(setq p36 (polar p33 (- a (/ pi 2)) (/ d 10)))

(setq p37 (polar p34 (+ a (/ pi 2)) (/ d 10)))

(setq p38 (polar p34 (- a (/ pi 2)) (/ d 10)))

(setq p39 (polar p1 (- a (/ pi 2)) (/ d 2)))

(setq p40 (polar p2 (- a (/ pi 2)) (/ d 2)))

(setq p41 (polar p39 (+ a (/ pi 7)) (/ b 10)))

(setq p42 (polar p39 (- a (/ pi 7)) (/ b 10)))

(setq p43 (polar p41 a (/ b 10)))

(setq p44 (polar p2 (- a pi) (/ b 10)))

(setq p45 (polar p44 (- a (/ pi 2)) (/ b 10)))

(setq f (angle p45 p43))

(setq p46 (polar p45 (- f (/ pi 6)) (/ b 10)))

(setq p47 (polar p45 (+ f (/ pi 6)) (/ b 10)))

(setq p48 (polar p32 a b))

(setq p49 (polar p48 (- a pi) (/ d 4)))

(setq p50 (polar p49 (+ a (/ pi 2)) (/ d 10)))

(setq p51 (polar p49 (- a (/ pi 2)) (/ d 10)))

(setq p52 (polar p3 a (/ b 10)))

(setq p53 (polar p3 (- a (/ pi 2)) (/ h 3)))

(setq p54 (polar p53 a (/ b 10)))

(setq p55 (polar p4 (- a (/ pi 2)) (/ h 3)))

(setq p57 (polar p55 (- a pi) (/ b 8)))

(setq p58 (polar p57 (- a pi) (/ b 8)))

; секция отрисовки

(command "_line" p1 p3 p4 p2 p1 "")

(command "_line" p5 p6 "")

(command "_line" p7 p8 "")

(command "_line" p9 p10 "")

(command "_line" p11 p12 "")

(command "_line" p13 p11 p14 "")

(command "_line" p15 p17 "")

(command "_line" p16 p18 "")

(command "_line" p19 p20 "")

(command "_line" p21 p22 "")

(command "_line" p23 p24 "")

(command "_line" p25 p26 "")

(command "_line" p27 p28 "")

(command "_line" p29 p28 p30 "")

(command "_line" p31 p33 "")

(command "_line" p32 p34 "")

(command "_line" p35 p36 "")

(command "_line" p37 p38 "")

(command "_line" p39 p40 "")

(command "_line" p41 p39 p42 "")

(command "_line" p43 p45 "")

(command "_line" p47 p45 p46 "")

(command "_line" p50 p51 "")

(command "_line" p48 p49 "")

(command "_line" p3 p53 p54 p52 "")

(command "_line" p54 p58 "")

(command "_circle" p57 p55 "")

2.10 Разработка команды САПР AutoСAD для обратного клапана

Рисунок 19 - Клапан обратный

Текст программы:

(defun c:ko()

; секция ввода данных

(setq p1 (getpoint "\nВведите центр:"))

(setq p2 (getpoint p1 "\nВведите край окружности:"))

; секция промежуточных вычислений

(setq r (distance p1 p2))

(setq a (angle p1 p2))

; секция определения точки отрисовки

(setq p3 (polar p1 a (+ r (/ r 2))))

(setq p4 (polar p1 (+ a (/ pi 2)) (+ r (/ r 2))))

(setq p5 (polar p1 (- a (/ pi 2)) (+ r (/ r 2))))

; секция отрисовки

(command "_circle" p1 p2 "")

(command "_line" p3 p4 "")

(command "_line" p3 p5 "")

2.11 Разработка команды САПР AutoСAD для обратного манометра

Рисунок 20 - Манометр

Текст программы:

(defun c:mn()

; секция ввода данных

(setq p1 (getpoint "\nВведите центр окружности:"))

(setq r (getdist p1 "\nВведите радиус окружности:"))

; секция промежуточных вычислений

; секция определения точки отрисовки

(setq p2 (polar p1 (/ pi 2) (/ r 2)))

(setq p3 (polar p2 (/ pi 1) (/ r 2)))

(setq p4 (polar p1 (* 3 (/ pi 2)) (/ r 2)))

(setq p5 (polar p4 0 (/ r 2)))

(setq l (distance p3 p5))

(setq a (angle p3 p5))

(setq p6 (polar p3 a (/ l 4)))

(setq p7 (polar p6 (+ a (/ pi 2)) (/ l 10)))

(setq p8 (polar p6 (- a (/ pi 2)) (/ l 10)))

; секция отрисовки

(command "_circle" p1 r "")

(command "_line" p3 p5 "")

(command "_line" p8 p3 p7 p8 "")

(command "_hatch" "ANSI31" "0.01" "0" "" "" p8 p3 p7 p8 "" "")

2.12 Разработка команды САПР AutoСAD для маслоохладителя

Рисунок 21 - Маслоохладитель

Текст программы:

(defun c:mo()

; секция ввода данных

(setq p1 (getpoint "\nВведите центр маслоохладителя:"))

(setq p2 (getpoint p1 "\nВведите край маслоохладителя:"))

; секция промежуточных вычислений

(setq l (distance p1 p2))

(setq a (angle p1 p2))

; секция определения точки отрисовки

(setq p2 (polar p1 a l))

(setq p3 (polar p1 (+ a (/ pi 2)) l))

(setq p4 (polar p1 (+ a (/ pi 1)) l))

(setq p5 (polar p1 (- a (/ pi 2)) l))

(setq p6 (polar p2 (- a pi) (/ l 3)))

(setq p7 (polar p6 (+ a (/ pi 2)) (/ l 6)))

(setq p8 (polar p6 (- a (/ pi 2)) (/ l 6)))

(setq p9 (polar p4 a (/ l 3)))

(setq p10 (polar p9 (+ a (/ pi 2)) (/ l 6)))

(setq p11 (polar p9 (- a (/ pi 2)) (/ l 6)))

; секция отрисовки

(command "_pline" p2 p3 p4 p5 p2 "")

(command "_line" p2 p4 "")

(command "_line" p2 p7 p8 p2 "")

(command "_line" p4 p11 p10 p4 "")

(command "_hatch" "ANSI31" "0.01" "0" "" "" p2 p7 p8 p2 "" "")

(command "_hatch" "ANSI31" "0.01" "0" "" "" p4 p11 p10 p4 "" "")

2.13 Разработка команды САПР AutoСAD для насоса

Рисунок 22 - Насос

Текст программы:

(defun c:nasos()

; секция ввода данных

(setq p1 (getpoint "\nВведите центр окружности:"))

(setq r (getdist p1 "\nВведите радиус окружности:"))

; секция промежуточных вычислений

; секция определения точки отрисовки

(setq p2 (polar p1 (/ pi 2) r))

(setq p3 (polar p2 (* 3 (/ pi 2)) (/ r 2)))

(setq p4 (polar p3 0 (/ r 4)))

(setq p5 (polar p3 pi (/ r 4)))

(setq p6 (polar p1 (* 5 (/ pi 4)) (* r 1.5)))

(setq p7 (polar p1 (/ pi 4) (* r 1.5)))

(setq l (distance p6 p7))

(setq a (angle p7 p6))

(setq p8 (polar p7 a (/ l 8)))

(setq p9 (polar p8 (+ a (/ pi 2)) (/ l 20)))

(setq p10 (polar p8 (- a (/ pi 2)) (/ l 20)))

; секция отрисовки

(command "_circle" p1 r "")

(command "_line" p2 p5 p4 p2 "")

(command "_hatch" "ANSI31" "0.01" "0" "" "" p2 p5 p4 p2 "" "")

(command "_line" p6 p7 "")

(command "_line" p7 p9 "")

(command "_line" p7 p10 "")

2.14 Разработка команды САПР AutoСAD для вентиля

Рисунок 23 - Вентиль

Текст программы:

(defun c:vent()

; секция ввода данных

(setq p1 (getpoint "\nВведите центр 1:"))

(setq p2 (getpoint p1 "\nВведите центр 2:"))

(setq h (getdist p1 "\nВведите ширину вентиля:"))

; секция промежуточных вычислений

(setq a (angle p1 p2))

; секция определения точки отрисовки

(setq p3 (polar p1 (+ a (/ pi 2)) (/ h 2)))

(setq p4 (polar p1 (- a (/ pi 2)) (/ h 2)))

(setq p6 (polar p2 (+ a (/ pi 2)) (/ h 2)))

(setq p5 (polar p2 (- a (/ pi 2)) (/ h 2)))

; секция отрисовки

(command "_pline" p4 p3 p5 p6 p4 "")

3. Создание пользовательского меню AutoСAD

пользовательский меню программный база

3.1 Сохранение блоков и слайдов

Для создания пользовательского меню сначала сохраним отдельно все элементы гидросхемы, которые ранее были сделаны блоками. Для этого вызываем окно записи блока на диск командой «пблок» в командной строке. В появившемся окне записи блока на диск указываем путь к папке сохранения блока, единицей измерения задаем миллиметры, источником данных указываем блок и выбираем блок который будем сохранять. Аналогично сохраняем остальные блоки.

Рисунок 24 - Окно записи блока на диск

После сохранения блоков поочередно открываем их и пересохраняем в формате .sld с такими же именами через команду «Сохранить как…» из меню «Файл».

3.2 Подготовка файлов меню AutoCAD

Файлами необходимыми для создания нашего меню являются файлы гидросхема.mnr, гидросхема.mns, гидросхема.mnu. Открываем файл гидросхема.mns и изменяем его, указывая название меню, название команды, также указываем названия блоков.

Содержание файла гидросхема.mns:

//

//

//

***MENUGROUP=Гидросхема

***POP1

[Гидросхема]

[--]

ID_Thermal_symbols [Гидросхема]$I=Гидросхема.Thermal_symbols $I=Гидросхема.*

***TOOLBARS

***IMAGE

**THERMAL_SYMBOLS

[Грабок]

[бак]^C^C_-insert бак;\ ;

[вентиль]^C^C_-insert вентиль;\ ;

[гидроклапан_напорный]^C^C_-insert гидроклапан_напорный;\ ;

[гидромотор]^C^C_-insert гидромотор;\ ;

[гидронасос]^C^C_-insert гидронасос;\ ;

[гидрораспределитель]^C^C_-insert гидрораспределитель;\ ;

[гидроцилиндр]^C^C_-insert гидроцилиндр;\ ;

[делитель_потока]^C^C_-insert делитель_потока;\ ;

[фильтр]^C^C_-insert фильтр;\ ;

[дроссель]^C^C_-insert дроссель;\ ;

[манометр]^C^C_-insert манометр;\ ;

[маслоохладитель]^C^C_-insert маслоохладитель;\ ;

[насос]^C^C_-insert насос;\ ;

[обратный_клапан]^C^C_-insert обратный_клапан;\ ;

//

//

//

Текст файла гидросхема.mnu получаем копированием текста из файла гидросхема.mns заключенного между наклонными чертами.

Содержание файла гидросхема.mnu:

***MENUGROUP=Гидросхема

***POP1

[Гидросхема]

[--]

ID_Thermal_symbols [Гидросхема]$I=Гидросхема.Thermal_symbols $I=Гидросхема.*

***TOOLBARS

***IMAGE

**THERMAL_SYMBOLS

[Грабок]

[бак]^C^C_-insert бак;\ ;

[вентиль]^C^C_-insert вентиль;\ ;

[гидроклапан_напорный]^C^C_-insert гидроклапан_напорный;\ ;

[гидромотор]^C^C_-insert гидромотор;\ ;

[гидронасос]^C^C_-insert гидронасос;\ ;

[гидрораспределитель]^C^C_-insert гидрораспределитель;\ ;

[гидроцилиндр]^C^C_-insert гидроцилиндр;\ ;

[делитель_потока]^C^C_-insert делитель_потока;\ ;

[фильтр]^C^C_-insert фильтр;\ ;

[дроссель]^C^C_-insert дроссель;\ ;

[манометр]^C^C_-insert манометр;\ ;

[маслоохладитель]^C^C_-insert маслоохладитель;\ ;

[насос]^C^C_-insert насос;\ ;

[обратный_клапан]^C^C_-insert обратный_клапан;\ ;

3.3 Создание пользовательского меню AutoСAD

Начинаем создавать меню. Сначала воспользуемся командой «Настройка…» из меню «Сервис». В появившемся окне настройки выбираем вкладку «Файлы». В окне вкладки выбираем «Путь доступа к вспомогательным файлам» и нажимая кнопку «Добавить», а затем «Обзор» указываем путь к папке с сохраненными блоками, слайдами и файлами меню. Применяем изменения и закрываем окно.

Рисунок 25 - Окно настройки

Далее запускаем меню Сервис-Адаптация-Интерфейс и в появившемся окне настройки интерфейса пользователя выбираем вкладку «Перевести». В появившемся окне вкладки нажимаем кнопку Открытие файла настройки из правого окна Адаптации файл в НПИ. В окне открытия открываем папку с блоками, указываем тип файлов как «Файлы меню» и открываем файл гидросхема.mns.

В правом окне «Адаптация в гидросхема.cui» открываем «Меню», а также «Меню расположения изображений мозайкой» из меню «Предыдущая версия». Аналогичные действия производим и с правым окном Адаптации в Основной файл НПИ. После этого перетягиваем пользовательские меню в соответствующие им вкладки и применяем произведенные действия, после чего закрываем окно Настройки интерфейса пользователя.

После произведенных действий появляется пользовательское меню с названием указанным в файлах меню.

Рисунок 26 - Окно настройки интерфейса пользователя

Рисунок 27 - Пользовательское меню

Заключение

В курсовой работе нами была освоена разработка элементов систем автоматизированного проектирования деталей машин. На первый взгляд - это громоздкая работа, но разработанная программа позволяет в кратчайший срок выдать новый вид детали путем изменения одного из параметров. Это позволяет значительно сэкономить время.

Системы автоматизированного проектирования имеют большие перспективы. Первоочередными задачами развития систем автоматизированного проектирования являются следующие: разработка математического обеспечения для новых диапазонов задач функционально-логического и топографического проектирования; освоения новых средств технического обеспечения, продолжаемых научно-техническим прогрессом в области вычислительной техники.

Решение этих задач потребует сосредоточения усилий специалистов по системам автоматизированного проектирования на направлениях:

- создание синтеза структур объектов на базе развития искусственного интеллекта и последующей интеграции средств синтеза и анализа в единые проектирующие;

- существенного повышение эффективности моделирования и анализа, т.к. только в этих условиях возможна автоматизация проектирования сложных объектов с миллионом компонентов и более; с этой целью перспективно развитие алгоритма параллельных вычислений, многоуровневого подхода к моделированию;

- разработки специализированных вычислительных устройств для аппаратной реализации наиболее трудоёмких проектных процедур.

Литература

1. Ташбаев В.А., Системы автоматизации проектных работ при создании путевых и дорожно-строительных машин: Учебно-методическое пособие - Гомель: БелГУТ, 2009.

2. Масловская Е.М., Ташбаев В.А., Котлобай А.А., Котлобай А.Я., Компьютерное и программное обеспечение инженерных расчетов: Учебно-методическое пособие - Гомель: БелГУТ, 2010.

Размещено на Allbest.ru


Подобные документы

  • Применение средств САПР для создания связи баз данных с чертежом. Создание связи между таблицами базы данных. Разработка команды САПР AutoСAD для гидромотора. Ввод промежуточных параметров. Определение полярных координат точек, секция отрисовки.

    курсовая работа [1,8 M], добавлен 28.01.2016

  • Понятие и функции систем автоматизированного проектирования (САПР), принципы их создания и классификация. Проектирующие и обслуживающие подсистемы САПР. Требования к компонентам программного обеспечения. Этапы автоматизации процессов на предприятии.

    реферат [19,8 K], добавлен 09.09.2015

  • Структура и классификация систем автоматизированного проектирования. Виды обеспечения САПР. Описание систем тяжелого, среднего и легкого классов. Состав и функциональное назначение программного обеспечения, основные принципы его проектирования в САПР.

    курсовая работа [37,7 K], добавлен 18.07.2012

  • САПР как организационно-техническая система, реализующая информационную технологию выполнения функций проектирования. Цель создания и назначение САПР, классификации программных приложений и средств автоматизации по отраслевому и целевому назначению.

    презентация [124,1 K], добавлен 16.11.2014

  • Эволюция систем автоматизированного проектирования от простых средств двухмерного рисования и разработки чертежей до программных продуктов, включающих поддержку цикла разработки и производства изделия. Требования к пользовательскому интерфейсу САПР.

    курсовая работа [274,5 K], добавлен 19.12.2014

  • Анализ существующих систем автоматизированного проектирования. Преимущества и недостатки универсальных сборочных приспособлений, их конструирование и сборка, современное информационное обеспечение. Создание базы данных для САПР сборочных приспособлений.

    дипломная работа [403,9 K], добавлен 26.03.2012

  • Определение и характеристика цели автоматизации проектирования. Ознакомление с достоинствами процесса внутреннего шлифования. Исследование и анализ сущности САПР – системы, объединяющей технические средства, математическое и программное обеспечение.

    курсовая работа [949,8 K], добавлен 02.06.2017

  • Требования, предъявляемые к техническому обеспечению систем автоматизированного проектирования. Вычислительные сети; эталонная модель взаимосвязи открытых систем. Сетевое оборудование рабочих мест в САПР. Методы доступа в локальных вычислительных сетях.

    презентация [1,1 M], добавлен 26.12.2013

  • Принципы разработки в системе программного обеспечения САПР. Выбор среды для формирования моделей и функций. Процесс создания моделей деталей. Разработка API-приложения для среды разработки. Тестирование разработанного функционала портала-хранилища.

    курсовая работа [704,0 K], добавлен 18.01.2017

  • Наименование, применения, цель создания информационно-справочной подсистем САПР. Классификация интегральных микросхем. Диодно-транзисторная и транзисторно-транзисторная логика. Определение и классификация базы дынных. Компилятор Visual C++, версия 6.

    дипломная работа [275,5 K], добавлен 06.06.2010

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.