Введение
деталь машина чертеж данные
В период научно-технической революции наука сделалась непосредственной производительной силой. Поэтому в программах развития предусматриваются меры по ускорению научно-технического прогресса, быстрейшему внедрению достижений науки в производство.
При разработке сложных машин и других механических объектов фактор времени имеет первостепенное значение. ЭВМ, выполняющие миллионы вычислительных операций в секунду, способные хранить и перерабатывать огромные массивы информации, позволяют повысить темпы и качество проектирования машин.
К числу новых возможностей, обеспечиваемых ЭВМ, можно отнести:
) возможность оптимизации;
) автоматизация проектирования;
) возможность получить решение с любой потребной точностью, используя новые численные методы расчёта, например метод конечных элементов;
) возможность проводить расчёты в условиях весьма ограниченного времени счёта, например при коррекции параметров полёта самолёта и космических аппаратов.
Оптимизация - это поиск, нахождение и реализация наиболее целесообразных решений. Благодаря высокому быстродействию ЭВМ и большой ёмкости памяти число критериев, по которым проводится оптимизация, резко возросло.
Автоматизированное проектирование - это проектирование с помощью ЭВМ, включающее поиск на ЭВМ оптимальных решений с выдачей результатов в графическом виде на дисплее или на бумаге (с помощью графопостроителя). Оно ведётся в диалоговом режиме «человек-ЭВМ» и предусматривает широкое применение математических моделей.
Актуальность автоматизации проектирования следует из того, что, начиная с начала ХХ века производительность механической обстановки в среднем повысилась более чем в 10 раз, а производительность конструкторских работ, исключая размножение чертежей, всего на 20%.
Другой причиной необходимости автоматизации проектирование явилось несоответствие между устаревшей технологией проектирования и всё возрастающей сложностью проектируемых изделий, которая более чем удваивается в течение десятилетия.
САПР создаются в проектных, конструкторских, технологических организациях в целях:
повышения качества и технико-экономического уровня проектируемой и выпускаемой продукции
повышения эффективности и надежности объектов проектирования, уменьшения затрат на их создание и эксплуатацию
сокращения сроков, уменьшения трудоемкости проектирования и повышения качества проектной документации.
Достижение целей создания САПР обеспечивается путем:
комплексной автоматизации проектных работ в проектной организации с необходимой перестройкой ее структуры и кадрового состава
повышения качества управления проектированием
замены натурных испытаний и макетирования математическим моделированием.
С развитием САПР существенно улучшается качество
проектов, проектировщик получает возможность использовать эффективные математические
модели, методы моделирования и оптимизации на всех основных стадиях
проектирования.
. Применение средств САПР для создания связи баз
данных с чертежом
.1 Создание баз данных
Для создания баз данных воспользуемся программой MicrosoftAcces. Создаем новую базу данных, а в ней таблицы, которые впоследствии будут связываться с чертежом.
Используя меню Создание - Конструктор таблиц создадим таблицы:
Балансовая стоимость с тремя полями: код
оборудования, балансовая стоимость, дата стоимости. Ключевым делаем поле код
оборудования.
Рисунок 1 - Конструктор таблицы балансовая
стоимость
Испытания с тремя полями: код оборудования,
испытания, дата испытания.Ключевым делаем поле код оборудования.
Рисунок 2 - Конструктор таблицы испытания
Марки оборудования с восемью полями:
кодоборудования, марка оборудования, условное обозначение, производитель,
реквизиты производителя, контактное лицо, электронные реквизиты код ответственного.
Рисунок 3 - Конструктор таблицы марки
оборудования
Оборудование с пятнадцатью полями: код
оборудования, наименование оборудования, инвентарный номер, серийный номер,
условное обозначение, год выпуска, год ввода в эксплуатацию, месяц ввода в
эксплуатацию, срок службы, гарантийный срок, наработка на отказ, масса,
габаритные размеры, технические характеристики, код ответственного. Ключевым
делаем поле код ответственного.
Рисунок 4 - Конструктор таблицы оборудование
Ответственные с пятью полями: код
ответственного, ФИО ответственного, должность, адрес, контактный телефон.
Ключевым делаем поле код ответственного.
Рисунок 4 - Конструктор таблицы ответственные
Подразделения с четырьмя полями: код
подразделения, наименование подразделения, юридический адрес, код
ответственного. Ключевым задаем поле код подразделения.
Рисунок 4 - Конструктор таблицы подразделения
Ремонт с тремя полями: код оборудования, ремонт,
дата ремонта. Ключевым задаем поле код оборудования.
Рисунок 5 - Конструктор таблицы ремонт
Заполняем полученные таблицы данными
соответствующими чертежу: гидросхеме экскаватора ЭО-4121.
.2 Создание связи между таблицами базы данных
Для создания связи между таблицами базы данных
воспользуемся меню Работа с базами данных - Схема данных. Добавляем все таблицы
из появившегося окна добавления таблиц.
Рисунок 6 - Окно добавления таблиц
Добавив все таблицы начинаем их связывать, перетаскивая ключевое поле на не ключевое. В появившемся окне изменения связей ставим флажки на Обеспечение целостности данных и Каскадное обновление связанных полей.
Рисунок 6 - Окно изменения связей
После создания связей, в таблицах отображаются
значки, после нажатия на которые отображается таблица, связанная с данной.
Рисунок 7 - Отображение связей между таблицами
.3 Подготовка чертежа к связи с базами данных
Чтобы связать чертеж с базами данных сначала преобразуем элементы гидросхемы в блоки.Для этого воспользуемся кнопкой «Создать блок» панели рисования. В появившемся окне описания блока указываем имя блока, объекты блока и базовую точку.
Рисунок 8 - Окно описания блока
Преобразовываем так все элементы гидросхемы,
после чего связываем их с базами данных.
.4 Создание связи между базами данных и чертежом
Для создания связи между гидросхемой и базами
данных вызовем Диспетчер подключения к БД. Для этого пишем в командном меню
команду «dbconnect», после чего появляется диспетчер.
Рисунок 9 - Диспетчер подключения к БД
В диспетчере вызываем настройки источника данных. В появившемся окне настройки источника данных указываем имя источника данных. Далее в окне свойств связи с данными выбираем параметры подключения: во вкладке «Поставщик данных» выбираем «MicrosoftJet 4.0 OLEDBProvider», во вкладке «Подключение» указываем путь к базе данных и проверяем подключение, во вкладке «Дополнительно» в правах доступа указываем опцию «ReadWrite».
После настройки открываем в диспетчере таблицу,
которую будем связывать с чертежом. В появившемся окне просмотра данных
используя кнопку «Связь!» создаем связь между полями таблицы с блоками чертежа.
Рисунок 9 - Окно просмотра данных
После создания связей можно просмотреть связи с
помощью кнопок «Автопросмотр связанных объектов в чертеже» и «Автопросмотр
связанных записей в окне просмотра данных».
. Разработка пользовательской команды САПР
AutoСAD
.1 Разработка команды САПР AutoСAD для
гидромотора
.1.1 Определение конструкторско-технологических
параметров, р2 - первая и вторая соответственно точки, вводимые пользователем;
.1.2 Определение программных параметров
Программными параметрами являются все точки,
определяемые пользователем в последовательности в зависимости от положения.
Этими точками являются точки р1 - р10.
Рисунок 10 - Гидромотор
.1.3 Ввод промежуточных параметров
а - угол между точками p1 иp2;- расстояние между
точками p1 иp2.
.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.
.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;
.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 "")
)
.1.6 Описание работа программы
Разработанную программу сохраняем в файл с
расширением .lsp. Загружаем AutoCAD и выбираем меню Tools-AutoLisp-Load…,
находим свой файл и загружаем его(motor.lspsuccessfullyloaded). В командной
строке вводим имя программы (Command: motor), затем указываем точки (Введите
центр окружности:p1,Введите край окружности: p2), от которыхотсчитываются все
остальные точки. После ввода данных AutoCAD автоматически определяет координаты
остальных точек из «секции определения точки отрисовки». Затем, с помощью
«секции отрисовки», по координатам точек AutoCADсоединяет необходимые точки
детали в той последовательности, которая задана программой.
.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:klino()
; секция ввода данных
(setq p1 (getpoint "\nВведите 1 точку:"))
(setq p2 (getpoint p1 "\nВведите 2 точку:"))
; секция промежуточных вычислений
(setq b (distance p1 p2))
(setq a (angle p1 p2))
; секция определения точки отрисовки
(setq p3 (polar p1 (+ a (/ pi 2 )) (/ b 5.7)))
(setq p4 (polar p3 (- a pi) (/ b 8.5)))
(setq p5 (polar p4 (+ a (/ pi 2 )) (/ b 5.7)))
(setq p6 (polar p4 (- a (/ pi 2 )) (/ b 5.7)))
(setq p7 (polar p4 (- a pi) (/ b 5.7)))
(setq p8 (polar p3 (+ a (/ pi 2 )) (/ b 5.7)))
(setq p9 (polar p8 a (/ b 3.4)))
(setq p10 (polar p9 (+ a (/ pi 2 )) (/ b 34)))
(setq p11 (polar p9 (- a (/ pi 2 )) (/ b 34)))
(setq p56 (polar p2 (+ a (/ pi 2 )) (/ b 5.7)))
(setq p57 (polar p56 a (/ b 8.5)))
(setq p58 (polar p57 (+ a (/ pi 2 )) (/ b 5.7)))
(setq p59 (polar p57 (- a (/ pi 2 )) (/ b 5.7)))
(setq p60 (polar p57 a (/ b 5.7)))
(setq p61 (polar p56 (+ a (/ pi 2 )) (/ b 5.7)))
(setq p62 (polar p61 (- a pi) (/ b 3.4)))
(setq p63 (polar p62 (+ a (/ pi 2 )) (/ b 34)))
(setq p64 (polar p62 (- a (/ pi 2 )) (/ b 34)))
(setq p12 (polar p9 a (/ b 17)))
(setq p22 (polar p9 a (/ b 34)))
(setq p21 (polar p12 a (/ b 34)))
(setq p23 (polar p12 (+ a (/ pi 2 )) (/ b 34)))
(setq p20 (polar p12 (- a (/ pi 2 )) (/ b 34)))
(setq p70 (polar p12 a (/ b 17)))
(setq p19 (polar p70 (+ a (/ pi 2 )) (/ b 17)))
(setq p18 (polar p70 (- a (/ pi 2 )) (/ b 17)))
(setq p17 (polar p18 (- a pi) (/ b 2.8)))
(setq p16 (polar p17 (- a (/ pi 2 )) (/ b 5.7)))
(setq p14 (polar p16 a (/ b 8.5)))
(setq p15 (polar p14 (+ a (/ pi 2 )) (/ b 17)))
(setq p13 (polar p14 (- a (/ pi 2 )) (/ b 17)))
(setq p66 (polar p62 (- a pi) (/ b 17)))
(setq p65 (polar p62 (- a pi) (/ b 34)))
(setq p68 (polar p66 (- a pi) (/ b 34)))
(setq p69 (polar p66 (+ a (/ pi 2 )) (/ b 34)))
(setq p67 (polar p66 (- a (/ pi 2 )) (/ b 34)))
(setq p71 (polar p66 (- a pi) (/ b 17)))
(setq p55 (polar p71 (+ a (/ pi 2 )) (/ b 17)))
(setq p54 (polar p71 (- a (/ pi 2 )) (/ b 17)))
(setq p53 (polar p54 a (/ b 2.8)))
(setq p52 (polar p53 (- a (/ pi 2 )) (/ b 5.7)))
(setq p48 (polar p52 (- a pi) (/ b 17)))
(setq p49 (polar p48 (+ a (/ pi 2 )) (/ b 17)))
(setq p50 (polar p48 (- a (/ pi 2 )) (/ b 17)))
(setq p72 (polar p48 (- a pi) (/ b 17)))
(setq p47 (polar p72 (+ a (/ pi 2 )) (/ b 34)))
(setq p45 (polar p72 (- a (/ pi 2 )) (/ b 34)))
(setq p44 (polar p45 (- a pi) (/ b 17)))
(setq p46 (polar p47 (- a pi) (/ b 17)))
(setq p51 (polar p46 (- a (/ pi 2 )) (/ b 34)))
(setq p41 (polar p51 (- a pi) (/ b 34)))
(setq p42 (polar p41 (- a (/ pi 2 )) (/ b 17)))
(setq p43 (polar p41 (+ a (/ pi 2 )) (/ b 17)))
(setq p73 (polar p41 (- a pi) (/ b 34)))
(setq p38 (polar p73 (+ a (/ pi 2 )) (/ b 34)))
(setq p40 (polar p73 (- a (/ pi 2 )) (/ b 34)))
(setq p39 (polar p40 (- a pi) (/ b 17)))
(setq p37 (polar p38 (- a pi) (/ b 17)))
(setq p36 (polar p37 (- a (/ pi 2 )) (/ b 34)))
(setq p33 (polar p36 (- a pi) (/ b 17)))
(setq p35 (polar p33 (- a (/ pi 2 )) (/ b 17)))
(setq p34 (polar p33 (+ a (/ pi 2 )) (/ b 17)))
(setq p28 (polar p33 (- a pi) (/ b 10)))
(setq p32 (polar p28 ( - a (/ pi 4 )) (/ b 18)))
(setq p31 (polar p28 ( + a (/ pi 4 )) (/ b 18)))
(setq p30 (polar p28 ( - a (/ pi 1.333 )) (/ b 18)))
(setq p29 (polar p28 ( + a (/ pi 1.333 )) (/ b 18)))
(setq p24 (polar p28 (+ a (/ pi 2 )) (/ b 2)))
(setq p25 (polar p28 (- a pi) (/ b 8.5)))
(setq p26 (polar p25 (- a (/ pi 2 )) (/ b 17)))
(setq p27 (polar p25 (+ a (/ pi 2 )) (/ b 17)))
; секцияотрисовки
(command "_line" p62 p61 p2 p1 p8 p9 "")
(command "_line" p3 p4 "")
(command "_arc" p5 p7 p6 "")
(command "_line" p10 p11 "")
(command "_line" p5 p6 "")
(command "_line" p56 p57 "")
(command "_arc" p58 p60 p59 "")
(command "_line" p58 p59 "")
(command "_line" p63 p64 "")
(command "_line" p19 p18 p17 p16 p14 "")
(command "_line" p13 p15 "")
(command "_arc" p23 p22 p20 "")
(command "_arc" p23 p21 p20 "")
(command "_line" p55 p54 p53 p52 p72 p47 p46 p51 p73 p38 p37 p36 p25 "")
(command "_line" p34 p35 "")
(command "_arc" p69 p68 p67 "")
(command "_line" p36 p39 p40 p73 "")
(command "_line" p43 p42 "")
(command "_line" p51 p44 p45 p72"")
(command "_arc" p67 p65 p69 "")
(command "_line" p50 p49 "")
(command "_line" p26 p27 "")