Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лабораторная работа №2

.doc
Скачиваний:
49
Добавлен:
02.05.2014
Размер:
32.77 Кб
Скачать

ЛАБОРАТОРНАЯ РАБОТА №2

НАПИСАНИЕ И ОТЛАДКА УПРАВЛЯЮЩИХ ПРОГРАММ

С ИСПОЛЬЗОВАНИЕМ ПСЕВДОКОДОВ

1.ЦЕЛЬ РАБОТЫ: Дальнейшее углубление знаний микропроцессора Intel 8088. Изучить назначение и взаимодействие регистров, ячеек памяти, а также псевдокодов. Научиться разрабатывать и отлаживать простейшие управляющие программы с использованием псевдокодов. Для этого разрабатывается и реализуется управляющая программа линейной интерполяции для станка с ЧПУ.

2.ТЕОРЕТИЧЕСКАЯ ЧАСТЬ. АЛГОРИТМ ИНТЕРПОЛЯЦИИ.

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

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

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

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

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

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

Существует множество методов интерполяции. Далее рассмотрим интерполяцию, использующую метод оценочной функции.

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

Алгоритм линейной и круговой интерполяции изучается в других дисциплинах или объясняется преподавателем. В математической форме алгоритм линейной интерполяции имеет вид:

Если F>=0 то F:=F-yk; xi:=xi+1;

Если F<0 то F:=F+xk: yi:=yi+1;

Для построения прямой линии циклически реализовать указанные формулы. При соблюдении условия xi=xk прервать цикл.

Координаты начальной точки рекомендуются Xi=0; Yi=0.

Координаты конечной точки - Xk=100; Yk=100 дискрет.

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

  • Одна станочная дискрета может соответствовать одному пикселю на экране, если преподавателем не задано другое соотношение.

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

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

-a 100

1800: 0100 mov ah, 0

1800: 0102 mov a1, 10

1800: 0104 int 10

1800: 0106 mov ax, 100

1800: 0109 mov bx, 100

1800: 010С mov cx, 0

1800: 010F mov dx, 0

1800: 0112 mov si, 120

1800: 0115 cmp si, 0

1800: 0118 jge 122

1800: 011A add si,ax

1800: 011C inc dx

1800: 011D call 12D

1800: 0120 jmp 128

1800: 0122 sub si,ax

1800: 0124 inc cx

1800: 0125 call 12d

1800: 0128 cmp cx, ax

1800: 012A jnz 115

1800: 012C ret

1800: 012D push ax

1800: 012C push bx

1800: 012F mov bx, 0

1800: 0132 mov ah, 0c

1800: 0134 mov a1, 0a

1800: 0136 int 10h

1800: 0138 pop ax

1800: 0139 pop bx

1800: 013A ret

-n c:\ass2.com

-r bx

bx 0000

: 0

-r cx

cx 0000

: 3d

-w 100

4. Вывод.

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