Программное обеспечение для автоматической коррекции шага спиральной нарезки металлопленочных резисторов

Содержание


Введение

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

Данная АСУТП обеспечивает подгонку резисторов с разбросом сопротивления заготовок ±60%, что позволяет исключить из технологического процесса операцию раскалибровки партии резистивных заготовок на группы.

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


1 Постановка задачи

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

  • Отбраковка резисторов, с номинальным сопротивлением, выходящим за заданные пределы
  • Контроль качества резисторов и отключение установки при повторяющемся браке
  • Формирование приращения управляющего напряжения, в зависимости от среднего значения отклонения от уровня OL.

2 Математическая модель системы расчёта шага.

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

Сопротивление резистора при подгонке спиральной формы нарезки может быть найдено из соотношения:

R`* (t2+2*Д 2)

R= _________________ (2.1)

t * (t-a)

где:

R - сопротивление резистора после подгонки, Ом;

R` - сопротивление заготовки, Ом;

T - шаг спирали, мм;

Д - диаметр резистора, мм;

- ширина изолирующей канавки, мм.

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

Формулу (2.1) можно представить в следующем виде:

R (t2+2*Д 2)

К= __ = ________________ (2.2)

R` t * (t-a)

где:

К - коэффициент подгонки.

Формулы (2.1) и (2.2) непосредственно в системе расчета шага использовать затруднительно, поэтому реально в системе расчета шага установки подгонки используется не зависимость t=f(К), а зависимость Uупр=f(Uпз),

где:

Uупр - напряжение, управляющее электроприводом перемещения оптической системы вдоль вращающегося с постоянной скоростью цилиндрического металлопленочного резистора, В;

Uпз - напряжение предварительного замера, В.

Пропорциональное величине К напряжение Uпз с делителя (рис 2.1.), сформированного заготовкой резистора, находящейся в цангах позиции замера и нарезки (ПЗН) и эталонным сопротивлением Rэ магазина сопротивления (МС), используется для расчета шага спиральной изолирующей канавки.

Эталонное сопротивление магазина сопротивлений выбирается из соотношения:

Rэ = n*R ( 2.4),

где:

n - коэффициент пропорциональности.

Uпз - определяется из соотношения:

Uпuт пз * R`

Uпз = _________________ (2.5)

Rэ + R`

где:

Uпuт пз - напряжение питания позиция замера, В:

Подставив в это уравнение выражение (3.4) получим:

Uпuт пз *R` Uпuт пз *R` Uпuт пз

Uпз = ________________ = ________________ = ___________ (2.6)

n*R + R` R`*(n*К+1) n*К+1

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

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

V= * Д1 * V (2.7),

где:

Д1 - диаметр ролика, мм;

- частота вращения ролика, об/с.

Vдв1

V = _____________ (2.8),

Кред * 60

где:

Vдв1 - частота вращения ДВ1, об/мин;

Кред - коэффициент редукции редуктора.

Uупр

Vдв1 = _________ (2.9),

Ктг

где:

Ктг - коэффициент передачи тахогенератора (ТГ), расположенного в контуре управления скоростью вращения ДВ1, В/об/ мин.

С учетом выражения (3.7), (3.8), (3.9)

* Д1* Uупр

V= _____________________ (2.10)

Ктг * Кред * 60

откуда:

Ктг * V * Кред * 60

Uупр = ________________________ (2.11)

* Д1

t=Тоб * V (2.12)

где:

Тоб - время, необходимое для нарезки одного витка при подгонке, С.

Так как скорость вращения цанг постоянная, то:

60

Тоб = ______ (2.13)

Vдв2

где:

Vдв2 - частота вращения двигателя цанг ДВ2, об/мин.

После использования выражений (2.11) и (2.13) выражение (2.12) принимает вид:

Uупр * * Д1

t = _______________________ (2.14)

Vдв2 * Ктг * Кред

Решив уравнение (2.2), (2.6) и (2.14) относительно Uупр, с дополнительными обозначениями:

1 = Vдв2 * Ктг * Кред

2 = Uпит пз - Uпз* (1+n)

3 = Uпит пз - Uпз.

Окончательно уравнение принимает вид :

1* (а*3+(32*а2 + 4*2*Д2*n*2*Uпз))

Uупр = _______________________________________________________ (2.15)

2**Д1*2

Параметры и коэффициенты, входящие в выражение (2.15) имеют следующие величины:

Д=1,6мм;

Д1=22мм;

а=0,1мм;

n=0,001;

Ктг=0,004 В/об/мин

Кред=100;

Uпз=3,374,89В

Uпит пз=5В;

Uдв2=1500 об/мин;

Рис. 2.1 «Блок схема АСУТП лазерной подгонки в номинальное значение цилиндрических металлических резисторов»

3. Описание функционирования АСУТП подгонки в номинал цилиндрических металлоплёночных резисторов.

Резистор с виброзагрузчика поступает в накопитель. Электромагнит цанг (ЭМЦ) разводит цанги, в которые электромагнит загрузки (ЭМЗ) из накопителя загружает резистор, после чего коммутатор (К) подключает резистор, находящийся в цангах, к Rэ магазина сопротивления, образуя делитель, с выхода которого аналоговое значение Uпз поступает на вход аналого-цифрового преобразователя (АЦП). С выхода АЦП цифровой двоичный код поступает в ЭВМ.

После получения цифрового кода Uпз с АЦП по алгоритму, обеспечивающему минимальное время поиска, ЭВМ производит поиск равного ему значения в массиве Uпз и выделяет из массива Uупр соответствующий код управляющего напряжения. Выбранный цифровой код преобразуется в преобразователе код-напряжение (ЦАП) и в виде аналогового напряжения воздействует на первый вход регулятора (РЕГ), на второй вход которого поступает напряжение с выхода тахогенератора, находящегося на одной оси с двигателем ДВ1, образуя, таким образом, замкнутый контур автоматического регулирования. Напряжение с выхода тахогенератора соответствует реальной скорости вращения двигателя привода перемещения оптической системы. На регуляторе производится сравнение двух напряжений и, в случае их рассогласования, регулятор выдает управляющий сигнал на двигатель ДВ1, регулируя его скорость вращения в соответствии с управляющим напряжением с ЦАП. ДВ1 через редуктор и ЭММ с приводным роликом обеспечивает движение ОС с постоянной скоростью, соответствующей Uупр, при этом производится подгонка резистора лазерным лучом с постоянным шагом. Во время подгонки резистор в цангах коммутатором подключен к блоку контроля сопротивления резистора, таким образом, что после достижения требуемого значения сопротивления КСР отключает ОКГ и процесс подгонки прекращается. Далее цикл повторяется для следующего резистора.

К погрешности расчета шага, а, следовательно, к отклонению длинны нарезанной части резистора от оптимальной приводят следующие причины:

-влияние помех при замере исходного сопротивления заготовки;

-непостоянство величины контактного сопротивления;

-неравномерность резистивного слоя;

-изменение во времени мощности лазера;

-погрешность системы расчета шага;

При проведении предварительного замера сопротивления резистивной заготовки с целью расчета шага, на постоянную составляющую Uпз воздействует переменная составляющая, которая является помехой от сетевого напряжения 220 В, 50 Гц, так как ее период составляет 0.02 сек. Методом борьбы с синусоидальной помехой от питающей сети является многократное считывание в течение времени, равного одному периоду напряжения питающей сети (0.02 сек), с последующим усреднением полученных значений Uпз.

Процесс коррекции шага спиральной канавки заключается в том, что устанавливается заданная оптимальная длина нарезанной части резистора, вычисляется величина усредненного по выборке отклонения длины нарезанной части от оптимальной и формируется приращение к Uупр с целью усреднения отклонения нарезанной части от оптимальной. Рис.4.1 раскрывает принцип формирования приращения к Uупр для трех резисторов при автоматической коррекции шага. Для этой цели используется датчик автоматической коррекции шага (АК), тридцати процентной конечной зоны резистора, оптимальной длины нарезки (OL), конца резистора (KR).

Рис 3.1. «Принцип формирования приращения Uупр»

Если сигнал КСР сгенерировал раньше датчика OL (моменты времени Т2,Т4), то в счетчик 1, расположенный в ЭВМ, заносятся импульсы заданной частоты, а прекращение записи осуществляется при срабатывании датчика OL в момент времени Т5. Если сигнал КСР не сработал при достижении нарезки оптимальной длинны, то по сигналу OL начинается счет импульсов в счетчике 2, а прекращение счета осуществляется по сигналу КСР или КR.

Содержимое счетчика 1 и счетчика 2 идентифицирует величину недореза и величину нареза соответственно относительно сигнала OL. В качестве счетчика 1 и счетчика 2 используется таймер ЭВМ.

Реально анализируется длина нарезки в выборке из восьми резисторов и формируется величина коррекции в цифровом коде (U).

j 8-j

U= Ui - Uк

i=1 к=1

где

j

Ui - суммарный недорез для j резисторов из восьми ;

i=1

8-j

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

к=1

C учетом анализа нарезанной части резисторов предыдущих выборок из восьми резисторов управляющее напряжение электроприводом ОС i-го резистора x-ой выборки при автоматической коррекции определяется выражением:

х-1

Uупрк=Uупр + Uz

z=1

где:

х-1

Uz - суммарное приращение коррекции в цифровом виде предыдущих

z=1 выборок от начала работы установки.

В процессе подгонки производится отбраковка резисторов. Если сигнал с КСР о достижении заданного сопротивления поступил раньше (t2 на рис.3.1.), чем сигнал с датчика 30%-ой зоны недореза (t3; t7 на рис. 3.1), то ЭВМ вырабатывает сигнал "недорез", который индицируется на экране, к счетчику брака добавляется единица и активизируется ЭМБ, отправляя резистор в емкость брака.

Если сигнал КСР поступил в 30% зоне недореза, то вырабатывается сигнал "норма", который индицируется на экране и к счетчику годных (СГ) добавляется единица.

Если заданное сопротивление не достигнуто по всей длине резистора, то при срабатывании датчика КR выдается сигнал "перерез", который индицируется на экране, добавляется единица в счетчик брака (СБ) и активизируется электромагнит брака (ЭМБ), отправляя резистор в емкость брака. После этого производится загрузка следующего резистора для подгонки в заданный номинал.

4. Разработка алгоритмов.

Рис 4.1 «Упрощённая блок-схема основного алгоритма программы»

5. Описание программного обеспечения.

LaserControl.exe – программа для операционных систем семейства Windows. Основная задача – демонстрация работы модуля автоматической коррекции шага спиральной нарезки металлоплёночных резисторов.

Её основные функции сводятся к следующим:

  • Внесение случайной погрешности (по равномерному закону распределения) в номинальное значение резисторов, поступающих на вход. Это необходимо для имитации одного из условий работы установки. Она должна обрабатывать заготовки с разбросом номинальных значений в пределах ±60% от базового.
  • Контроль текущего сопротивления и длины нарезанной части заготовки в процессе обработки.
  • Генерация сигнала достижения заданного сопротивления, с внесением погрешности, которую заранее определяет пользователь.
  • Обработка результатов, накопленных системой и вычисление значения Uупр, необходимого для приближения точки конца нарезки к середине 30%-й зоны.
  • Демонстрация процесса в таком виде и с такой скоростью, которые позволяют пользователю наблюдать за процессом нарезки каждой заготовки.

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

  • Возможность контролировать значения погрешностей, крайние значения счетчиков удачного и неудачного завершения процесса, размер выборки, после которой осуществляется расчёт Uупр.
  • Возможность менять скорость визуализации процесса
  • Ведение отчета о работе над каждой заготовкой, который может использоваться как .log файл для анализа причин неуспешного завершения программы.

5.1 Изменения внесённые в базовый алгоритм.

При анализе работы установки был выявлен один недостаток, который решено было устранить в реализуемой системе.

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

Второй случай (когда заданое сопротивление достигнуто раньше середины 30%-й зоны) и является недостатком. Мы занимаем установку и продолжаем движение оптической системы уже после того как полезная работа завершилась (нарезка заканчивается при поступлении сигнала KCP). Было решено использовать другой метод для вычисления значания перереза.

Положение середины 30%-й зоны (точка в которой срабатывает OL) нам известно – это 85% от длины резистора. Положение точки в которой закончилась нарезка мы можем найти, так как нам известны все необходимые для этого величины: время после начала нарезки и скорость оптической системы.

Таким образом, было решено отказаться от использования одного из таймеров и расчитывать значение перереза, основываясь на расстоянии, а не на времени.

5.2 Общее описание алгоритма работы программы.

5.2.1 Входные данные.

Входными данными для программы являются:

  1. Колличество заготовок, которые нужно обработать
  2. Среднее сопротивление заготовок в партии
  3. Сопротивление, которое должны иметь заготовки после обработки
  4. Погрешность при генерировании сигнала KCP
  5. Значение счётчика ошибок, при котором работа завершается (аварийный выход из программы)
  6. Значение счётчика удачных операций подряд, после которого счётчик ошибок может быть уменьшен на единицу.
  7. Величина выборки (колличество обработанных деталей, после которого производится расчет Uупр)
  8. Длина резистора
  9. Коэффициент скорости визуализации

Переменные, отвечающие за хранение данных, описаных в п. 4-9 имеют значения по умолчанию и являются опционными. Преременные с 1 по 3 обязательно должны быть известны перед началом работы программы.

5.2.2 Общее описание алгоритма.

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

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

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

  1. Если нарезка закончилась в 30%-й зоне резистора, то это считается успешним завершением операции и счётчик «успехов» инкрементируется. Затем проверяется, не достиг ли этот счётчик порогового значения, после которого мы можем уменьшить счётчик ошибок на 1. Если это так, то мы уменьшаем счетчик ошибок на 1, обнуляем счётчик «успехов» и начинаем операцию «пересчет перереза». В противном случае мы переходим к операции «пересчет перереза» сразу.
  2. В случае, когда нарезка заканчивается вне 30%-й зоны или резистор закончился, а сопротивление не достигнуто, это считается неуспешным завершением операции, счётчик «успехов» обнуляется, а счётчик ошибок инкрементируется, после чего проверяется не достиг ли счётчик ошибок крайнего значения. Если это так, то вызывается процедура аварийного выхода из программы. В противном случае переходим к операции «пересчёт перереза».

Операция «пересчёт перереза» добавляет к суммарному перерезу на предыдущих операциях значение текущего.

После этого проверяется не закончилась ли очередная выборка. Если это так, то проводится операция усреднения перереза и вычисляется его среднее значение на данной выборке (в процентах). Затем, в зависимости от значения перереза, выбирается значение Uупр, которое будет добавляться к Uупр на протяжении следующей выборки. После чего инкрементируется счётчик и посылается сигнал на запрос новой заготовки.

Если после операции «пересчёт перерреза» выяснилось, что очередная выборка не закончилась, то мы сразу увеличиваем счётчик и запрашиваем новую заготовку.

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

5.3 Описание пользовательского интерфейса.

5.3.1 Описание главной формы

После запуска файла LaserControl.exe на экране появится форма, изображенная на Рис.5.1. На этой форме находятся три текстовых поля, в которые пользователь вводит данные, необходимые для начала работы программы. Работа не начнется до тех пор, пока во все поля не будут введены корректные данные, проверку реализует процедура CheckInput (описание процедуры в «Приложение 1»).

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

В поля «Исходное сопротивление» и «Сопротивление на выходе» вводятся значения соответствующих сопротивлений в оммах. Ограничений на введенные значения для этих полей не установлено. Однако, в случае, если коэффициент K=Rвых/Rвх выходит за пределы 30<K<1000 (условие, при котором работает установка), заготовка обрабатываться не будет, в результат операции запишется «Rejected», счетчик увеличен не будет, так как заготовка не может достигнуть требуемого сопротивления. Счётчик ошибок так же сохранит своё значение, ведь процесс нарезки не начинался.

Рис.5.1 «Главная форма перед началом работы»

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

Ползунок находится непосредственно над элементом, изображающим резистор. Сигнал о достижении заданного сопротивления будет вырабатываться в точке, над которой находится ползунок, с определённой погрешностью, которую так же вносим мы. По умолчанию, значение этой погрешности равно ±6% от длины заготовки резистора.

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

Для того, чтобы подключить модуль коррекции необходимо установить флажок, иначе погрешности устраняться не будут и при достижении счетчиком ошибок предельного значения, работа программы завершится неудачей (Рис 5.2). (Естественно, ошибки будут возникать только если изначально мы задали погрешность, выходящую за пределы 30%-й зоны заготовки).

Рис. 5.2 «Аварийное завершение при отключенном модуле коррекции»

Рис. 5.3 «Работающий модуль коррекции ошибок»

Рассмотрим подробнее главную форму модуля коррекции ошибок в работе (Рис. 5.3).

  1. Текстовое поле, в которое записываются самые необходимые итоговые значения, необходимые для дальнейшего анализа.
    • Num – номер заготовки в партии. Этот номер может быть одним и тем же для нескольких заготовок в случае, если первые из них были отклонены со статусом «Rejected» (для таких заготовок коэффициент K лежит вне интервала 30<K<1000).
    • Nominal – исходное сопротивление текущей заготовки. Оно лежит в диапазоне ±60% от значения поля «исходное сопротивление». В данном случае при исходном сопротивлении 10 Ом, сопротивление каждой отдельно взятой заготовки может принимать значение от 4 Ом до 16 Ом. Единственным расхождением с реальными условиями является то, что на практике наблюдается разброс сопротивлений с Гауссовым распределением, в программе же реализовано равномерное распределение. Это связано с особенностями генерации случайных чисел в языке VisualBasic. Значения, которые находятся в поле “Nominal” подтверждают все вышеупомянутые утверждения.
    • Pererez – в этом поле содержатся значения перереза, выраженные в процентах от длины резистора. Если значение в этом поле имеет положительное значение, значит заданное сопротивление было достигнуто после отметки OL (произошел перерез), если значение в поле «Pererez» со знаком минус, значит заданное сопротивление было достигнуто раньше отметки OL (произошел недорез). Теоретически значение перереза после первой отработки модуля коррекции должно лежать в пределех ±6% (что соответствует значению случайно вносимой погрешности).
    • Factor – отображает значение коэффициента K для данной заготовки.
    • Result – поле, в которое записывается результат текущей операции. Может принимать одно из трех значений («Successful», «Failed», «Rejected»). Поле «Result» принимает значение «Successful», в случае, когда нарезка закончилась в 30%-й зоне резистора, если нарезка закончилась раньше 30%-й зоны или требуемое сопротивление так и не было достигнуто даже после того как резистор закончился, значение поля устанавливается в «Failed». Значение «Rejected» поле получает в случае, если коэффициент K лежит вне пределов 30<K<1000. Это определяется еще до начала операции нарезки.
  2. Надпись, которая отображает прогресс нашего процесса, показывая какой по счету резистор обрабатывается в данные момент. После завершения операции в поле «Num» элемента 1 запишется значение, совпадающее со значением первого числа этой надписи.
  3. Надпись, отображающая сопротивление текущей заготовки и коэффициент нарезки.
  4. Динамическое изображение, моделирующее обрабатываемый резистор. На нём отмечены положение начала 30%-й зоны (черная черта) уровня OL (зелёная черта). Белый прямоугольник, меняющий свою длину с течением времени, отображает движение лазера в процессе нарезки. При достижении 30%-й зоны его цвет меняется на зелёный (Рис. 5.4), что сигнализирует о входе в оптимальную область.

Рис. 5.4 «Лазер дошёл до 30%-зоны»

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

5.3.2 Описание формы настройки погрешностей.

Чтобы открыть окно, которое позволяет настраивать доступные значения погрешностей (Рис 5.6) необходимо выбрать пункт «Погрешности» в выпадающем меню «Настройка» (Рис. 5.5).

Рис. 5.5 «Вызов окна настройки погрешностей»

На экране появится окно, изображенное на Рис. 5.6. С помощью этого окна мы можем регулировать значения четырёх величин.

  1. Количество ошибок, после которого работа прекращается – значение, которое определяет максимально допустимое число ошибок в процессе обработки, при превышении которого считается, что установка неисправна и продолжать работу нельзя.
  2. Количество успешных операций, после которого счётчик ошибок уменьшается на 1 – если значение счетчика ошибок не уменьшать в процессе работы установки, то вполне вероятно, что при достаточно большом количестве заготовок в партии, он превысит крайнее значение и произойдет аварийное завершение работы программы. Для обоснованного уменьшения счётчика ошибок используется счётчик «успехов». Принцип его работы таков: считается количество успешных операций подряд и если за n операций не произошло ни одной ошибки, то мы можем уменьшить счётчик ошибок на единицу, однако счётчик «успехов» при этом следует обнулить.
  3. Разброс значений погрешностей(%) – когда пользователь устанавливает среднее значение погрешности с помощью ползунка на главной форме, мы добавляем к этой (базовой) погрешности ещё и дополнительную погрешность, значение которой случайным образом генерируется для каждой новой итерации, в результате для каждой заготовки подбирается своё, уникальное значение погрешности, что максимально приближает условия к реальности и усложняет работу модуля коррекции.
  4. Количество итераций, после которого выполняется операция усреднения – величина выборки. Если установить величину выборки слишком большой, то есть риск того, что модуль коррекции не успеет начать свою работу, так как программа завершится аварийно из-за превышения счётчиком ошибок предельного значения. Если же установить величину выборки слишком маленькой, то есть риск выполнять усреднение, основываясь на случайных данных (попалась пара резисторов с неравномерным напылением).

Рис. 5.6 «Окно настройки погрешностей»

5.3.3 Описание формы настройки визуализации.

Выбрав пункт меню «Настройка -> Визуализация», мы увидим окно, изображенное на Рис. 5.6. На нём мы видим ползунок, с помощью которого мы можем регулировать скорость моделирования процесса и текстовое поле, в котором отображается значение, установленное с помощью этого ползунка.

Регулирование скорости визуализации позволяет концентрировать внимание на проверке различных характеристик системы – если скорость мала, мы можем следить за генерированием сигналов о достижении заданного сопротивления (на сколько они случайны и как точно они попадают в заданные пределы). На большой скорости мы можем наблюдать за работой модуля коррекции и за изменениями, которые он вносит в работу установки.

Рис. 5.6 «Окно настройки визуализации»

6 Требования к системе.

6.1 Требования к надежности.

Программный комплекс «LaserControl» должен стабильно работать при исполнении возложенных на него функций.

6.2 Условия эксплуатации

Температура окружающего воздуха: 25±10 °С. Относительная влажность окружающего воздуха при температуре +35 °С и более низких температурах без конденсации влаги: не более 80%. Атмосферное давление: от 84,0 до 106,7 кПа (от 630 до 800 мм рт.ст.).

Старт

Успешное завершение

Аварийный выход

GoodCounter = 0

GoodCounter>9

ErrCounter++

Запрос следующей заготовки

Увеличить счётчик

Пересчитать Uупр

Обнулить перерез

Усреднить перерез

Выборка из 8 прошла

Пересчитать перерез

ErrCounter- -

GoodCounter = 0

GoodCounter>16

GoodCounter++

Успех

Нарезка

Кол-во не заготовок достигнуто

Установить Uупр

Установить Uупр

Принятие нового резистора

ППЗУ

БП2

АК

ПУ

ОС

ОКГ

КСР

ЭМЗ

ТГ

БП1

ЭММ

СГ

СБ

ЭМЦ

ЭМБ

АЦП

ЭВМ

MC

ПС

30% OL KR

К

ДВ2

ПЗН R’

ДВ1

РЕГ

ЦАП

Программное обеспечение для автоматической коррекции шага спиральной нарезки металлопленочных резисторов