<Назад

Далее

4. АЛГОРИТМИЗАЦИЯ ПОСТРОЕНИЯ ИЗОБРАЖЕНИЙ ТИПОВЫХ ДЕТАЛЕЙ МАШИН И ПРИБОРОВ 


План.

  • 1.Общие положения алгоритмизации ……………………………………
  • 2.Составление алгоритма построения изображений………………
  • 3.Разработка алгоритма построения изображения типовой детали

4.1. Общие положения алгоритмизации

Автоматизированное проектирование семейства типовых деталей включает следующие этапы [6]:

разработка параметризированного чертежа детали - представителя семейства деталей;

выделение зависимых и независимых параметров;

установление соответствия между размерами и параметрами;

разработка алгоритма и написание текста программы.

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

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

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

Свободные размеры – это конструктивные размеры, которые могут быть следующих видов:

размеры, не меняющие своего значения для различных вариантов детали;

вспомогательные размеры, необходимые для нанесения параметров на чертеже типовой детали;

размеры, значения которых назначаются конструктивно.

4.2. Составление алгоритма построения изображений

Процесс разработки программного продукта можно разбить на следующие этапы:

постановка задачи;

разработка алгоритма;

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

отладка программы;

разработка сопровождающей методической документации по использованию программного продукта.

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

Написание программы - это перевод алгоритма на язык программирования. Ввод программы в ЭВМ осуществляется, как правило, с клавиатуры при использовании программы - редактора текста. В результате создается файл на магнитном диске. Автокад имеет в своем составе встроенный редактор MS-DOS.

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

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

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

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

Для записи алгоритмов естественный язык, как правило, оказывается неудобным, поэтому используются специальные средства. Наиболее распространенными являются блок-схемы, HIPO-диаграммы, псевдокод [5, 6, 11, 12].

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

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

Таким образом, по способу управления порядком выполнения процедур различают линейные, разветвляющиеся и циклические конструкции алгоритмов. Псевдокод позволяет реализовать все виды алгоритмов. Основные правила псевдокода сводятся к следующему.

Правило 1. Описание действий на псевдокоде разделяется на программные модули или сегменты. Каждый модуль содержит описание законченной функции. Размер модуля должен быть небольшим и чтобы для его понимания не требовалось привлекать другие сегменты. Структура модуля имеет вид:

НАЧАЛО

Наименование функции

Описание функции

КОНЕЦ

Слова НАЧАЛО , КОНЕЦ являются служебными или словами-ограничителями, в псевдокоде выделяются заглавными буквами. Наименование функции является заголовком модуля. Желательно, чтобы наименование начиналось с глагола в повелительном наклонении и указывало, что требуется сделать в данном модуле. Наименование функции может быть использовано в другом модуле для ссылки на него.

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

Правило 2. Для записи принятия решений и циклов предусмотрено пять управляющих структур.

Структура ЕСЛИ-ТО-ИНАЧЕ используется, если нужно описать условие и выбор одного из двух действий. Структура оформляется следующим образом:

ЕСЛИ Обозначение условия

ТО

Обозначение действий А

ИНАЧЕ

Обозначение действий В

ВСЕ ЕСЛИ

Структура ЕСЛИ-ТО-ИНАЧЕ подразумевает, следующее. Проводится проверка обозначенного условия. Если оно истинно, то выполняются "Действия А", если условие ложно, то выполняются "Действия В".

Структура ЕСЛИ-ТО используется, если нужно описать условие и выбор действия. Структура оформляется следующим образом:

ЕСЛИ Обозначение условия

ТО

Обозначение действий А

ВСЕ ЕСЛИ

Структура ЕСЛИ-ТО подразумевает следующее. Проводится проверка обозначенного условия. Если оно истинно, то выполняются "Действия А". В случае, если условие ложно, то никакие действия не выполняются, а управление передается последующим функциям.

Например:

ЕСЛИ габаритный размер детали L >100

TO

Выбрать масштаб 1:10

ИНАЧЕ

Выбрать масштаб 1:5

ВСЕ ЕСЛИ

Структура ВЫБОР используется, если существует несколько вариантов действий, причем выбор варианта зависит от значения некоторой переменной. Таким образом, в отличие от предыдущих структур ветвления алгоритма структура ВЫБОР реализует многопозиционное переключение. Структура оформляется следующим образом:

ВЫБОР Обозначение переменной

ИЗ

СЛУЧАЙ 1 (Значение переменной 1)

Обозначение действий А

СЛУЧАЙ 2 (Значение переменной 2)

Обозначение действий В

СЛУЧАЙ N (Значение переменной N)

Обозначение действий Z

ВСЕ ВЫБОР

Структура ВЫБОР подразумевает следующее. Имеется переменная, которая может принимать несколько значений, и для каждого значения имеется свой вариант действий. Проводится проверка значения переменной, далее ищется вариант действий, соответствующий значению переменной, и этот вариант выполняется, а другие действия структуры ВЫБОР не выполняются.

Пример:

ВЫБОР по типу детали

ИЗ

СЛУЧАЙ 1 (тип детали = вал)

Сформировать чертеж вала

СЛУЧАЙ 2 (тип детали = фланец)

Сформировать чертеж фланца

СЛУЧАЙ 3 (тип детали = колесо)

Сформировать чертеж колеса

ВСЕ ВЫБОР

Структура ПОКА-ЦИКЛ используется, если последовательность действий требуется повторять многократно, т.е. в цикле. Действия в цикле повторяются до тех пор, пока выполняется некоторое условие. Причем цикл начинается с проверки условия, и если оно перед началом цикла не выполняется, то действия в цикле не выполняются ни разу. Структура оформляется следующим образом:

ПОКА Обозначение условия

ЦИКЛ

Обозначение действий

ВСЕ ЦИКЛ ПОКА

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

Структура оформляется следующим образом :

ЦИКЛ ДО Обозначение условия

Обозначение действий

ВСЕ ЦИКЛ ДО

Любая из этих двух структур является достаточной для описания любого цикла. Однако в одних случаях удобнее оказывается ПОКА-ЦИКЛ, в других - ЦИКЛ ДО.

Пример построения цикла:

Ввести количество ступеней вала N

I=1

ЦИКЛ ДО обработки последней ступени (I=N)

Ввести параметры очередной i -й ступени

Сформировать изображение i-й ступени

Увеличить I на единицу

ВСЕ ЦИКЛ ДО

В перечисленных структурах "Обозначение действий" следует понимать как последовательность, содержащую простые действия, функции, модули и (или) управляющие структуры псевдокода. Таким образом, структурные единицы алгоритма могут быть вложены одна в другую. Это позволяет описать любую логику действий с помощью указанных пяти структур.

Правило 3. В псевдокоде для наглядности алгоритма используется ступенчатая запись алгоритма. Правила ступенчатой записи состоят в следующем:

каждое обозначение действия в последовательности должно начинаться с новой строки;

каждое последующее обозначение действия должно начинаться с той же позиции, что и предыдущее обозначение;

в модуле описание функции должно смещаться не менее чем на три позиции вправо относительно наименования функции и слова КОНЕЦ;

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

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

Правило 4. В псевдокоде допускается запись любых пояснений, справочных данных в форме комментариев. Правила записи комментариев не оговариваются, однако предлагается выделять комментарии так, чтобы они не были восприняты как описания функций, например, заключать их в фигурные скобки {}.

4.3. Разработка алгоритма построения

изображения типовой детали

Рассмотрим пример разработки алгоритма построения чертежа типовой детали “втулка” (рис. 10).

Рис. 10. Чертеж – прототип втулки

Постановка задачи . Разработать программу для автоматического построения чертежа типовых деталей вида, показанного на рис.10. В результате выполнения программы должен быть получен чертеж детали формата А4 с простановкой числовых значений размеров вместо буквенных обозначений. Значения размеров, обозначенных на рис.10, и местоположение общего вида вводится в диалоговом режиме. Размерные тексты выполняются шрифтом № 5. Текст технических требований является постоянным, место их расположения фиксировано. Основная надпись чертежа (угловой штамп) имеет как переменную часть (масштаб, обозначение материала, фамилии исполнителей), так и постоянную часть.

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

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

{Построить чертеж втулки}

НАЧАЛО

Ввод исходных данных

ЕСЛИ ввод правильный

ТО

Рассчитать координаты точек построения изображения

Выполнить графические построения

Сформировать технические требования

Заполнить основную надпись чертежа

ИНАЧЕ

Повторить ввод данных

ВСЕ ЕСЛИ

КОНЕЦ

Разработаем модули следующего уровня.

Модуль ввода исходных данных . При вводе исходных данных надо обеспечить диалоговый режим, наглядность ввода данных и их проверку.

Различаются следующие основные формы диалога: сообщения на естественном языке; команды; меню; стандартные формы; ответы на вопросы.

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

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

С учетом указанных рекомендаций модуль “Ввод исходных данных” запишем так:

{Модуль ввода исходных данных}

Ввести исходные данные

{Данные вводятся в последовательности: P0, D1, D2, D3, L1, L2}

НАЧАЛО

Вывести на экран шаблон ввода данных

ПОКА не введены все данные ЦИКЛ

Выделить запрошенный размер

Запросить на ввод очередного размера

Ввести значение размера

Вывести на экран введенный размер

Отменить выделение размера

ВСЕ цикл ПОКА

ЕСЛИ D3 > D2 И D2 > D1 И L1 > L2

ТО

Сформировать сигнал “Ввод правильный “

ИНАЧЕ

Сформировать сигнал “Ввод неправильный”

ВСЕ ЕСЛИ

Удалить изображение шаблона ввода данных

КОНЕЦ

Алгоритм расчета характерных точек зависит от последовательности графического построения чертежа детали. Ввиду того, что изображение главного вида является симметричным относительно горизонтальной оси, целесообразно вначале построить верхнюю часть детали по точкам P1-P6, а затем вычертить нижнюю часть. Координаты точек можно определить функцией POLAR относительно базовой точки PC.

Вертикальные линии между верхней и нижней частью детали выполняются отдельными отрезками, поэтому необходимо определить координаты нижних точек P11, P16 симметричные точкам P1, P6

Для указания зеркально отображаемой части и штрихуемых контуров необходимо определить координаты точек для процедуры выбора объектов в командах MIROR (зеркало) и HATCH (штриховка).

Ниже приведен алгоритм расчета координат необходимых точек для построения изображения. Точки определяются в соответствии с функцией POLAR: <координаты точки>:=<координаты точки отсчета> <направление> <вектор>. Например, (X Y) P1 =(X Y) PC , ?/2, D1/2; означает, что координаты точки P1 определяются относительно координат точки PC в направлении ?/2 (90 0 ) и на расстоянии равном D1/2

{Модуль расчета координат параметрических точек}

Рассчитать координаты точек построения изображения

НАЧАЛО

Выдать запрос на ввод базовой точки PC

Ввести координаты C , U базовой точки

Определить координаты точек верхней части детали (точки P1-P6):

(X Y) P1 =(X Y) PC , ?/2, D 1/2;

(X Y) P2 =(X Y) PC , ?/2, D2/2;

(X Y) P3 =(X Y) P2 , 0.0, L1-L2;

(X Y) P4 =(X Y) P3 , ? /2, (D3-D2)/2;

(X Y) P5 =(X Y) P4 , 0.0, L2;

(X Y) P6 =(X Y) P1 , 0.0, L1;

Определить координаты точек для построения вертикальных отрезков (точки P11, P16).

(X Y) P11 =(X Y) 1 , (- ? /2), D1;

(X Y) P16 =(X Y) P6 , (- ? /2), D2.

Определить координаты точек для зеркального отображения верхней части детали (точки PC, PM)

(X Y) PM =(X Y) PC , 0.0, L1;

КОНЕЦ

Алгоритм графического построения изображения предусматривает следующие процедуры: изображение верхнего замкнутого контура (точки P1-P6) командой PLINE; зеркальное его отражение командой MIRROR; проведение вертикальных линий командой PLINE (точки P1, P11; P6, P16); штрихование замкнутых контуров командой HATCH; проставление размеров командой DIM; проведение осевой линии командами LINETYPE и LINE (точки PC, PM).

{Модуль графических построений изображения втулки}

Выполнить графические построения

НАЧАЛО

Построить замкнутый контур по точкам P1 – P6

Выполнить зеркальное отражение верхней части

Провести вертикальную линию по точкам P1, P11

Провести вертикальную линию по точкам P6, P16

Заштриховать верхний и нижний контуры

Проставить размеры диаметров (D1, D2, D3)

Проставить размеры длин (L1, L2)

Установить тип линии “осевая”

Провести осевую линию

Установить тип линии “сплошная”

КОНЕЦ

Модуль “Сформировать технические требования” составляется исходя из того, что технические требования (ТТ) располагаются в соответствии с требованием стандарта в определенном месте чертежа.

{Модуль формирования технических требований }

Сформировать технические требования

НАЧАЛО

Выдать запрос на ввод первой строки текста ТТ

Ввести строки текста

ПОКА строка не пустая ЦИКЛ

Изобразить строку текста

Выдать запрос на ввод строки текста ТТ

ВСЕ ЦИКЛ ПОКА

КОНЕЦ

Модуль “Заполнить основную надпись чертежа” составляется с учетом того, что основная надпись чертежа состоит из постоянной и переменной частей. В ГОСТ 2.104 –68 описано назначение всех граф основной надписи, их обозначение и порядок заполнения (рис. 11).

7 8

Рис. 11. Основная надпись чертежа по ГОСТ 2.104-68

Назначение граф основной надписи следующие:

графа 1- наименование детали или сборочной единицы;

графа 2 – обозначение документа;

графа 3 – обозначение материала детали;

графа 4 – литера документа;

графа 5 – масса изделия;

графа 6 – масштаб;

графа 7 – порядковый номер листа;

графа 8 – общее количество листов документа;

графа 9 – наименование предприятия;

графа 10 – характер выполненной работы;

графа 11 – фамилии лиц, подписавших документ;

графа 12 – подписи;

графа 13 – дата подписания.

{Модуль формирования основной надписи чертежа}

Заполнить основную надпись

НАЧАЛО

I=1

ЦИКЛ ДО обработки последней графы (I=13)

Выдать запрос на ввод текста i – й графы

Ввести содержание текста i – й графы

Увеличить I на единицу

ВСЕ ЦИКЛ ДО

КОНЕЦ

Контрольные вопросы и задачи

  • 1. Приведите основные этапы подготовки автоматизированного выпуска чертежей типовых деталей.
  • 2. Какие средства используются для записи алгоритмов программ?
  • 3. Дайте определение алгоритма.
  • 4. Приведите основные правила записи алгоритмов на псевдокоде.
  • 5. В чем заключается различие структуры ПОКА-ЦИКЛ от структуры ЦИКЛ-ДО?
  • 6. В каких случаях применяется структура ЕСЛИ-ТО-ИНАЧЕ?
  • 7. Какая основная задача решается при разработке алгоритма построения изображения?
  • 8. Составьте алгоритм программы построения изображения семейства треугольников (см. подраздел 5.2.2 ).
  • 9. Составьте алгоритм построения изображения правильного треугольника с вписанной в него окружностью.

 



Назад Далее