Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Система сборки и тестирования электронных узлов

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

Рис. 1. Система сборки и тестирования электронных узлов

Первый блок, обозначенный как "деталь А", изготавливается в соседнем отделе, не рассматриваемом в рамках данной модели. Интервалы между поступлениями деталей для данной модели подчиняются экспоненциальному распределению и в среднем составляют 5 минут. Блоки, по мере поступления, попадают на участок подготовки детали А. На этом участке стыкующиеся поверхности корпусов обрабатываются для обеспечения хорошей герметизации, после чего выполняется снятие заусенцев и очистка. Время обработки для составных операций на участке подготовки детали А соответствует треугольному распределению TRIA(1, 4, 8). Затем деталь помещается в установку для герметизации.

Элементы второго блока, обозначенного как "деталь Б", изготавливаются в другом здании (также не рассматриваемом в рамках данной модели), откуда они партиями по четыре штуки поступают на моделируемый участок заключительной сборки. Интервалы времени между поступлениями двух последовательных партий детали Б для рассматриваемой модели распределяются экспоненциально и в среднем равны 30 минутам. После поступления такой партии на участок подготовки детали Б, она разделяется на четыре отдельных элемента, каждый из которых с этого момента обрабатывается индивидуально. Обработка на участке подготовки детали Б включает те же три этапа, что и на участке подготовки детали А, за исключением того, что время обработки для составных операций подчиняется треугольному распределению TRIA (3; 5; 10). Затем деталь помещается в устройство герметизации.

При выполнении герметизации электронные компоненты вставляются в корпус, он собирается и герметизируется, а затем этот блок тестируется. Совокупное время выполнения этих операций зависит от типа детали: TRIA (1, 3, 4) для детали А и Вейбулла WEIB (2.5, 5.3) для детали Б (где 2.5 - коэффициент масштаба; 5.3 -коэффициент, учитывающий форму). Девяносто один процент деталей проходит проверку и передается непосредственно в отдел отгрузки продукции; каждая деталь проходит проверку независимо от остальных. Оставшиеся детали передаются на участок переработки брака, где они разбираются, ремонтируются, очищаются, собираются и повторно тестируются. Восемьдесят процентов деталей, прошедших такую переработку, признаются восстановленными и передаются в отдел отгрузки продукции, как пригодные к использованию, остальные детали утилизируются. Периоды времени, затрачиваемые на переработку брака, подчиняются экспоненциальному распределению и в среднем составляют 45 минут, независимо от типа детали и результатов переработки (восстановление или утилизация).

Необходимо собирать статистические данные по каждой области использования ресурсов, количеству элементов в очереди, времени ожидания и времени цикла обработки (или совокупному времени в системе) для отгруженных, восстановленных и отбракованных деталей. Вначале выполнение имитации будет выполняться для четырех 8-часовых смен или 1920 минут.

 

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

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

Кроме того, время обработки различных типов деталей при герметизации не одинаково, поэтому необходимо использовать два модуля Assign для определения атрибута Sealer Time (Время герметизации), которому будет присваиваться соответствующее значение времени герметизации после создания входных данных для деталей модулями Create. Значение атрибута Sealer Time (Время герметизации) будет использоваться для определения продолжительности герметизации при ее выполнении для деталей.

Оба участка подготовки и герметизация будут смоделированы собственными модулями Process. После завершения герметизации должна быть выполнена проверка, в результате которой детали передаются в различные отделы, распределяясь по принципу "подброшенной монеты" (с небольшой асимметрией монеты вправо). Будет использоваться модуль решения Decide, случайным образом возвращающий результат "проверка пройдена" или "ошибка". Участок переработки брака будет смоделирован с помощью модулей Process и Decide, поскольку для него также возможны варианты "проверка пройдена" или "ошибка". Отгрузка деталей должна быть смоделирована тремя независимыми модулями Record и Dispose (для отгруженных, восстановленных и отбракованных деталей). Поэтому существует возможность сохранить соответствующие статистики для цикла обработки, отсортированные по отгруженным, восстановленным и отбракованным деталям. Все эти модули находятся на панели Basic Process (Основная обработка).

Создание модели

Для создания модели необходимо открыть окно новой модели и поместить в него все требуемые модули: два модуля Create, два модуля Assign, четыре модуля Process, два модуля Decide, три модуля Record и три модуля Dispose. Для это необходимо выбрать в левом части вкладку и перетащить мышкой нужные элементы на основное поле.

Теперь окно модели должно выглядеть примерно так, как показано на рисунке 2, если предположить, что при размещении модулей в соответствующей последовательности были созданы связи или использована функция автоматического создания связей Auto-Connect, вызываемая из меню Object. При активной функции автоматического создания связей Auto-Connect вновь создаваемый объект соединяется с ранее выбранным. Для ручного соединения объектов можно воспользоваться функцией Connect с панели управления или из меню Object. На этом этапе можно сохранить созданную модель под любым именем, воспользовавшись функцией Save (Сохранить) в меню File (Файл).

Рис. 2. Окно модели с размещенными модулями

Теперь предстоит открыть каждый модуль и ввести необходимую для функционирования модели информацию. Начнем с модуля Create 1, в котором будут создаваться объекты для поступающей детали А. Для этого необходимо выбрать объект в основном поле, в нижней части экрана появится список всех объектов данного типа и информацией об их свойствах. Клик правой кнопки мыши по объекту в списке или на основном поле открывает контекстное меню. Для редактирования свойств нужно выбрать «Edit via Dialog…». На рис.3 представлена информация, необходимая для заполнения данного модуля. Модулю присваивается другое имя (Name) и в поле Entity Type (Тип объекта) указывается "деталь А". Интервал времени между поступлением деталей устанавливается произвольным (т.е. экспоненциальное распределение), в поле Value (Значение) задается 5, а в качестве единиц измерения выбираются минуты. Для остальных параметров сохраняются значения по умолчанию. Теперь можно подтвердить изменения в модуле, нажав ОК.

Рис. 3. Заполненное диалоговое окно модуля Create для детали А

Модуль Create для поступающей детали Б аналогичен модулю для детали А, за исключением одного дополнительно заполненного поля (Entities per Arrival (Количество одновременно поступающих объектов)), отражающего размер поступающей партии - четыре детали. Напомним, что объекты "деталь Б" поступают партиями по четыре штуки. Таким образом, эта запись указывает на то, что одновременно поступает четыре отдельных объекта, а не один.

Рис. 4. Заполненное диалоговое окно модуля Create для детали B

Создав модули для поступающих деталей, необходимо определить параметр Sealer Time (Продолжительность герметизации) и задать время выполнения герметизации, разное для каждого типа деталей. Эти значения будут присвоены в ранее добавленных модулях Assign 1 и Assign 2. Назначение параметров для детали А показано на рис.5. Был определен новый атрибут, которому присвоено значение из распределения TRIA (1, 3, 4). Также определен параметр Arrive Time (Время поступления), который используется для записи времени поступления объекта. Используемая в Arena переменная TNOW сохраняет текущее время моделирования, которое в данном случае является временем поступления или создания объекта.

Рис. 5. Назначение атрибутов продолжительности герметизации и времени поступления для детали А

Назначение атрибутов продолжительности герметизации и времени поступления для детали Б показано рис.6.

Рис. 6. Назначение атрибутов продолжительности герметизации и времени поступления для детали Б

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

Для модуля Process предусмотрено четыре возможных действия: задержка (Delay), задержка с захватом (Seize Delay), захватить, задержать и освободить (Seize Delay Release) и задержать и освободить (Delay Release). Действие "Задержка" вызывает указанную временную задержку для объекта. Это действие не требует какого-либо ресурса. Подразумевается, что будет выполняться ожидание, и что этой задержке одновременно может быть подвергнуто несколько объектов. Так как на участке подготовки требуется использование какого-либо механизма или ресурса, необходимо действие, обеспечивающее ожидание, формирование очереди в период недоступности ресурса подготовки, и задерживающее время обработки. Действие "Задержка с захватом" обеспечивает ожидание и задержку, но при этом ресурс не освобождается для обработки следующего объекта. При использовании этого действия предполагается, что ресурс будет освобожден позже другим модулем. Вариант "Захватить, задержать и освободить" обеспечивает набор действий, необходимый для точного моделирования участка подготовки. Последнее действие, "Задержать и освободить", предполагает, что объект, ранее захватил ресурс и вызовет задержку с последующим освобождением ресурса.

Можно заметить, что если выбирается один из трех последних вариантов, на свободном месте под окном выбора действия появляется окно списка ресурсов. Необходимо нажать кнопку Add (Добавить), чтобы ввести информацию о ресурсе.

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

Также следует отметить, что при добавлении в модель какого-либо модуля Arena автоматически устанавливает для него стандартные имена и значения. Такие имена по умолчанию являются названиями объекта (модуля, ресурса и т.д.) с прикрепленным к нему порядковым номером. Если требуется обеспечить уникальность имен, прикрепленный номер возрастает для каждого добавляемого имени, например: Process 1, Process 2 и так далее. Для этого есть две причины. Во-первых, это удобно: можно принять заданное по умолчанию имя ресурса или изменить его. Во-вторых, все имена для всех объектов в Arena должны быть уникальны, даже если это объекты различных типов. В противном случае в Arena не было бы возможности установить, какой объект связан с многократно использовавшимся именем.

В помощь пользователю в Arena множество имен присваиваются автоматически и на большинство из них можно не обращать внимания. Например, если вызвать модуль очереди данных Queue, можно увидеть, что Arena также назначила имя "Prep A Process.Queue" очереди для этого участка. В большинстве случаев вместо предлагаемых по умолчанию имен можно присвоить модулям собственные имена.

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

Рис. 7. Диалоговое окно процесса подготовки детали А

Второй модуль Process заполняется практически идентично, за исключением названия (Prep В process (Процесс подготовки детали Б)), названия ресурса (Prep В (Подготовка детали Б)) и параметров продолжительности обработки (3, 5, 10).

Следующим шагом необходимо задать параметры для герметизации, которой соответствует третий модуль Process, добавленный к модели. Вводимые в диалоговом окне данные показаны на рис.8. Обратите внимание, что в расположенных перед этим модулях Assign атрибут Sealer Time (Продолжительность герметизации) определялся после создания объектов для поступивших деталей. Когда объект получает возможность управления или захвата ресурса, этот ресурс будет подвергаться задержкам при обработке, равным по продолжительности значению атрибута Sealer Time (Продолжительность герметизации).

Рис. 8. Диалоговое окно модуля Process для герметизации

Проверка, следующая за операцией герметизации, моделируется при помощи первого модуля Decide. Поскольку возможно только два результата проверки: "проверка пройдена" (pass) или ошибка (fail), то принимается предлагаемый по умолчанию тип -случайный выбор из двух вариантов (2 -way by Chance). В этом диалоговом окне необходимо указать значение в поле Percent True (Процент выпадения результата "истина"), по которому определяется два результата на выходе модуля: "истина" или "ложь". В данном случае в поле Percent True вводится значение 9 процентов. В результате 9 процентов объектов (которые будут обрабатываться как бракованные детали) направляются по ветви "истина", а 91 процент (прошедшие контроль детали) направляются по ветви "ложь"1. Прошедшие контроль детали отправляются в отдел отгрузки, а бракованные детали - на повторную обработку. Данные для этого модуля Decide показаны на рис.9.

Рис. 9.Диалоговое окно модуля проверки герметизации

Остающийся незадействованным модуль Process будет использован для моделирования операции переработки брака. Данные для этого модуля Process показаны на рис.10.

Рис. 10. Диалоговое окно модуля Process операции переработки брака

Последний модуль Decide используется для разделения деталей, прошедших операцию переработки брака, на восстановленные и подлежащие утилизации. Данные для этого модуля Decide показаны на рис.11. Ветвь "истина" была выбрана для деталей, подлежащих утилизации (20 процентов), а ветвь "ложь" - для восстановленных деталей.

Рис. 11. Диалоговое окно модуля контроля восстановления брака

Определив все операции, необходимо задать параметры модулей Record и Dispose. Помните, что одной из целей создания данной модели, является сбор статистических данных по использованию ресурсов, количеству объектов в очереди и времени ожидания в очереди для каждой операции. Все эти статистические данные собираются автоматически, если в используемом модуле Process выбран режим действия, затрагивающий ресурсы. Также необходимо собирать статистику по продолжительности цикла для отгруженных, восстановленных и бракованных деталей. Модуль записи Record предоставляет возможности сбора такой статистики в виде итоговых списков (Tallies). Заполненное диалоговое окно для итоговых списков по отбракованным деталям показано на рис.12. Из раскрывающегося списка был выбран тип Time Interval (Временной интервал). Имя итогового списка по умолчанию определяется именем модуля. С учетом этого Arena будет записывать в качестве статистических данных для итоговых списков сведения о времени, прошедшем между поступлением детали в систему (Arrive Time) и ее попаданием в данный модуль Record.

Рис. 12. Диалоговое окно модуля итогового списка по бракованным деталям

Оставшиеся два модуля Record аналогичны рассмотренному и называются Record Salvaged Parts (Регистрация восстановленных деталей) и Record Shipped Parts (Регистрация отгруженных деталей).

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

Данные модуля Dispose для отбракованных деталей показаны на рис.13. По умолчанию установлен флажок Record Entity Statistics (Регистрация статистик по объектам). Однако если необходимо собирать статистические данные о потоках объектов только для отгруженных деталей, включая восстановленные, можно снять этот флажок в данном модуле (сохранив его в двух других модулях Dispose). Это позволяет включать в автоматически собираемые статистические данные о потоках объектов только выбранные детали.

Два оставшихся модуля Dispose для отгруженных(Shipped) и восстановленных (Salvaged) деталей настраиваются аналогично.

 

Рис. 13. Диалоговое окно модуля Dispose для отбракованных деталей

Теперь модель почти готова к выполнению имитации. Уже сейчас модель могла бы быть запущена, но при этом ее не удалось бы остановить, поскольку для Arena не определено, когда следует остановить имитацию. Чтобы задать параметры модели для выполнения имитации, необходимо выбрать в меню Run (Выполнение) пункт Setup (Настройка). Диалоговое окно Run Setup (Настройка выполнения) состоит из вкладок, которые позволяют контролировать выполнение имитации. Необходимо указать продолжительность выполнения, что можно сделать на вкладке Replication Parameters (Параметры повторений). В поле Replication Length (Продолжительность повторений) было задано 32 часа (четыре 8-часовых смены), а в поле Base Time Units (Базовые единицы времени) установлено минуты.

Рис. 14. Окончательный вид модели

Прежде чем начинать выполнение имитации вновь созданной модели, выполните следующую заключительную операцию наладки. Поскольку имеется два типа деталей, было бы неплохо как-либо различать их при анимации модели. Выберите модуль данных Entity (Объект) на панели Basic Process и обратите внимание, что исходным изображением для обеих деталей является Picture.Report. При выполнении имитации для отображения анимированных объектов все детали будут использовать этот значок.

Теперь выберите ячейку Initial Picture (Исходное изображение) для детали А и, используя раскрывающийся список, выберите другое изображение. Например, для детали А - изображение синего шара, а для детали Б - красного. Это позволит нам легко различать два этих типа деталей при анимации.

Существует несколько способов выполнения имитации. Первый способ - это запуск имитации с анимацией. Нажмите кнопку запуска Go (►) на инструментальной панели Run, выберите команду Go (Запуск) в меню Run или нажмите клавишу F5. Если модель еще не была проверена или в нее были внесены какие-либо изменения со времени последней проверки, Arena запустит проверку модели, затем выполнит ее инициализацию с имеющимися данными и, наконец, поиграет ее. Проверить модель на наличие ошибок без запуска имитации можно выбрав команду Check Model (Проверить модель) в меню Run (Выполнение), или, нажав клавишу F4 на клавиатуре. В ходе выполнения можно заметить, что Arena скрывает некоторые графические объекты, сосредотачивая внимание смотрящего на анимации. Не следует беспокоится об этом. Эти объекты появятся вновь после завершения выполнения (или можно выбрать режим Layers (Уровни) в меню View (Вид), чтобы они вообще не исчезали с экрана).

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

После того, как имитация начинает выполняться, анимацию можно ускорить или замедлить. Это можно сделать непосредственно во время выполнения имитационной модели, нажав клавиши "<" или ">", чтобы, соответственно, замедлить или ускорить анимацию. Если нажать одну из этих клавиш, в левой части строки состояния отобразится текущий показатель скорости анимации. Увеличить или уменьшить показатель скорости анимации можно также на вкладке Speed (Скорость) в диалоговом окне настройки выполнения имитации (команда Setup (Настройка) в меню Run (Выполнение)). Эту возможность также можно использовать, чтобы задать точное значение показателя скорости.

Во время выполнения имитации можно также прервать ее с помощью кнопки паузы Pause (II) на инструментальной панели Run (Выполнение), выбрав команду Pause (Пауза) в меню Run или нажав клавишу Esc. При этом имитация временно приостанавливается и в строке состояния появляется сообщение "User interrupted (Прервано пользователем)".

Находясь в режиме паузы, можно дважды щелкнуть один из объектов, показываемых в анимации. В диалоговом окне Entity Summary (Обзор объектов) выводится список значений атрибутов для каждого из объектов. Это возможность может быть очень полезна при отладке модели. Также можно использовать кнопку Step (► I) (Шаг (► I)) на панели инструментов для пошагового перемещения объектов в системе. Продолжить выполнение имитации можно в любой момент времени нажатием кнопки Go (Запуск).

Этот способ имитации обеспечивает огромное количество информации, но на его выполнение может потребоваться очень много времени. В этом случае время, необходимое для завершения выполнения, зависит от показателя скорости. Можно пропускать промежутки времени, нажимая паузу, а затем, используя кнопку ускоренного выполнения Fast-Forward (►►) на инструментальной панели Run (Выполнение) или команду Fast-Forward (Ускоренное выполнение) в меню Run (Выполнение). Это приведет к тому, что имитация начнет выполняться с гораздо большей скоростью, но при этом не будут обновляться анимированные изображения. В любой момент во время выполнения имитации можно нажать паузу и вернуться обратно в режим анимации, а также увеличить (+) или уменьшить (-) масштаб изображения или переместиться в окне моделирования (с помощью клавиш со стрелками или полосок прокрутки).

Применение быстрой перемотки вперед позволит выполнить имитацию значительно быстрее, но если необходимы только численные ее результаты, возможно, следует полностью отключить анимацию (расчет и обновление графических представлений). Чтобы сделать это, выберите в меню Run/Run Control/Batch Run (Выполнение/Управление выполнением/Серийное выполнение).

Также команда Run Control (Управление выполнением) в меню Run (Выполнение) позволяет настроить множество других параметров выполнения имитации. Теперь выберите команду Batch Run (Серийное выполнение) (Без анимации). Обратите внимание, что при повторном вызове этой команды появится флажок слева. Подтвердите выбор и щелкните кнопку Run (Выполнение). Обратите внимание, насколько быстрее выполняется имитация. Единственным недостатком этого способа является необходимость прервать выполнение и сбросить параметры настройки анимации для того, чтобы вернуться назад в режим анимации. Если имитация осуществляется для больших моделей и время выполнения велико, а в итоге требуется получить только численные результаты, этот режим - лучший выбор, поскольку он быстрее режима ускоренной перемотки.

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

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...