Имитационное моделирование и производственные процессы

 

Календарный план работы над дипломной работой


ЭтапДатаСодержание работРезультаты работ125.10.2010 - 08.11.2010Анализ предметной областиОписание предметной области209.11.2010 - 23.11.2010Разработка ТЗТехническое задание (ТЗ) на создание автоматизированной системы в соответствии с требованиями ГОСТ 34.602323.11.2010 - 09.01.2011Объектно-ориентированный анализ предметной областиUML-диаграммы410.01.2011 - 09.04.2011Создание ПО имитационного моделирования производственных процессовПО имитационного моделирования производственных процессов510.04.2011 - 20.05.2011Подготовка рабочей документации к ПОРабочая документация к ПО имитационного моделирования производственных процессов

Реферат


Электронный носитель титульный лист «Shotinyv/Title.doc», текст дипломной работы «Shotinyv/Text.do», исходные коды в папке«Shotinyv/Source», запускаемый файл «Shotinyv/Programm/VisualEditor.exe», графическая часть «Shotinyv/Screenshot.jpg».

Пояснительная записка 76 страниц, 3 части, 23 иллюстрации, 6 приложений, 3 таблицы, 18 источников.

ПРОИЗВОДСТВЕННЫЙ ПРОЦЕСС, ТЕХНОЛОГИЧЕСКАЯ ЛИНИЯ, ЗАГРУЗКА ОБОРУДОВАНИЯ, ГЕНЕРАТОР СЛУЧАЙНЫХ ЧИСЕЛ, ИМИТАЦИОННОЕ МОДЕЛИРОВАНИЕ, XML, С#.Net.

Объект исследования - производственные предприятия с дискретным типом производства.

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

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

На языке C# разработано программное обеспечение для имитационного моделирования производственных процессов. С помощью технологии WinForms реализован интерфейс. Сохранение данных с помощью технологии XML. Пояснительная записка оформлена в текстовом редакторе MS Word 2007.

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


Аннотация


Объект исследования - производственные предприятия с дискретным типом производства.

Цель работы - разработка программного обеспечения имитационного моделирования производственных процессов предприятия.

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

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

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

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

Введение


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

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

Выбор оборудования для производства, а также определение последовательности использования единиц оборудования осуществляются в ходе планирования. Так выбор последовательности использования единиц оборудования (когда для каждого из заказов будет изготовлена единица комплекта) может оказать существенное влияние на конечный результат. Например, можно взять любую деталь и точить ее на станке несколько часов, а тем временем, в ожидании завершения операции, будет простаивать остальное оборудование. А можем изменить последовательность выполнения заказа и полностью или частично исключить простой станочного парка. Поэтому план пытаются составить таким образом, чтобы увеличить выпуск продукции в единицу времени, а также повысить значение коэффициента использования оборудования. В настоящее время на многих машиностроительных предприятиях коэффициент загрузки оборудования составляет порядка 0,45. Иначе говоря, более половины рабочего времени современное дорогостоящее оборудование стоит на производственных площадях без дела, не приносит прибыли и морально устаревает.

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

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

Имитационное моделирование включает следующие основные этапы:

-построение имитационной модели производственной системы с использованием соответствующих инструментальных средств;

-организация имитационных экспериментов с моделью при различных значениях управляемых параметров;

-анализ полученных показателей эффективности системы;

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

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

Для достижения поставленной цели решаются следующие задачи:

-имитационное моделирование производственных процессов, существующих на предприятии,

-обнаружение «узких мест» производства,

-выбор конфигурации технологической

-линии, наиболее рационально использующей производственное оборудование для планирующихся производственных процессов.


1. Описание предметной области


1.1 Производственные процессы


Объектом исследования данной дипломной работы являются производство и производственные процессы.

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

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


1.1.1 Понятие о производственном процессе

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Вспомогательные операции способствуют выполнению основных операций (транспортировка, контроль, сортировка продукции и т. д.).

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

Межоперационное пролеживание - перерывы, предусмотренные технологическим процессом.


1.1.2 Научные принципы организации процессов производства

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

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

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

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

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

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

Существуют следующие принципы организации производственного процесса:

дифференциация - разделение производственного процесса на отдельные части (процессы, операции, стадии) и их закрепление за соответствующими подразделениями предприятия;

комбинирование - объединение всех или части разнохарактерных процессов по изготовлению определенных видов продукции в пределах одного участка, цеха или производства;

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

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

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

пропорциональность - сочетание отдельных элементов производственного процесса, которое выражается в их определенном количественном отношении друг с другом;

параллельность - одновременная обработка разных деталей одной партии по данной операции на нескольких рабочих местах и т. д.;

прямоточность - осуществление всех стадий и операций производственного процесса в условиях кратчайшего пути прохождения предмета труда от начала до конца;

ритмичность - повторение через установленные периоды времени всех отдельных производственных процессов и единого процесса производства определенного вида продукции.

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

Методы, применяемые для составления производственного расписания, зависят от типа производства, а также характеристик спроса и параметров заказов.

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


1.1.3 Организация производственных процессов во времени

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

Расчет длительности цикла сложного процесса

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


Тц.п = Тц.д + Тц.б


где Тц.д - длительность производственного цикла изготовления ведущей детали, календ. дн.; Тц.б - длительность производственного цикла сборочных и испытательных работ, календ. дн.


Рисунок 1.1. Цикл сложного процесса


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

Пути и значение обеспечения непрерывности производственного процесса и сокращения длительности цикла

Высокая степень непрерывности процессов производства и сокращение длительности производственного цикла имеет большое экономическое значение: снижаются размеры незавершенного производства и ускоряется оборачиваемость оборотных средств, улучшается использование оборудования и производственных площадей, снижается себестоимость продукции. Исследования, выполненные на ряде предприятий г. Харькова, показали, что там, где средняя длительность производственного цикла не превышает 18 дней, каждый затрачиваемый рубль обеспечивает получение продукции на 12% больше, чем на заводах, где длительность цикла равна 19-36 дням, и на 61% больше, чем на заводе, где продукция имеет цикл выше 36 дней.

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

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

Организационные мероприятия должны предусматривать:

сведение до минимума перерывов, вызванных межоперационным пролеживанием, и перерывов партионности за счет применения параллельного и параллельно-последовательного методов движения предметов труда и улучшения системы планирования;

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

сокращение перерывов ожидания на основе построения оптимизированных планов-графиков изготовления продукции и рационального запуска деталей в производство;

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


1.2 Имитационное моделирование и производственные процессы


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

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

Цель моделирования производственных процессов, как правило, состоит в получении устойчивой схемы, поскольку последовательность выпускаемой продукции повторяется [3]. Важной процедурной концепцией анализа эффективности является определение периода неустойчивой работы и устранение искажения, вносимого статистическими данными, собранными за такой период.

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

К имитационному моделированию прибегают, когда:

-дорого или невозможно экспериментировать на реальном объекте;

-невозможно построить аналитическую модель: в системе есть время, причинные связи, последствия, нелинейности, стохастические (случайные) переменные;

-необходимо сымитировать поведение системы во времени.

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

Цель имитационного моделирования состоит в воспроизведении поведения исследуемой системы на основе результатов анализа наиболее существенных взаимосвязей между ее элементами или другими словами - разработке симулятора (английский термин - simulation modeling) исследуемой предметной области для проведения различных экспериментов.

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

Проведение имитационного эксперимента позволяет:

)Сделать выводы о поведении системы и ее особенностях:

-без ее построения, если это проектируемая система;

-без вмешательства в ее функционирование, если это действующая система, проведение экспериментов над которой или слишком дорого, или небезопасно;

-без ее разрушения, если цель эксперимента состоит в определении пределов воздействия на систему.

)Синтезировать и исследовать стратегии управления.

)Прогнозировать и планировать функционирование системы в будущем.

)Обучать и тренировать управленческий персонал и т.д.

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

Процесс создания имитационной модели можно разделить на следующие этапы [4]:

)составление содержательного описания,

)построение концептуальной модели,

)формализация объекта моделирования,

)программирование и отладка модели,

)испытание имитационной модели,

)анализ свойств имитационной модели,

)эксплуатация имитационной модели,

)анализ результатов моделирования.

. Составление содержательного описания объекта моделирования

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

. Построение концептуальной модели

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

. Формализация объекта моделирования

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

. Программирование и отладка модели

Требование быстрого и правильного составления модели обусловливает необходимость:

замены программирования конструированием из готовых элементов;

разработки проблемно-ориентированных библиотек элементов;

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

автономной отладки элементов;

автоматической компоновки элементов в моделирующий алгоритм.

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

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

. Испытание имитационной модели

Включает два аспекта:

  1. необходимо убедиться в правильности динамики развития алгоритма моделирования компонентов ИМ (верификация);
  2. определить совпадение с заданной точностью векторов характеристик поведения объекта моделирования и ИМ (адекватность).

6. Исследование свойств имитационной модели

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

. Эксплуатация имитационной модели

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

. Анализ результатов моделирования

Результатом этапа интерпретации данных ИЭ являются рекомендации по проектированию или модификации СС. На их основе исследователи приступают к принятию решений. На интерпретацию результатов ИЭ оказывают существенное влияние изобразительные возможности средств моделирования на ЭВМ.

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

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

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

Имитационное моделирование включает следующие основные этапы:

-построение имитационной модели производственной системы с использованием соответствующих инструментальных средств;

-организация имитационных экспериментов с моделью при различных значениях управляемых параметров;

-анализ полученных показателей эффективности системы;

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

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

Рисунок 1.2 Этапы имитационного моделирования


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


.1 Виды инструментария для имитационного моделирования


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

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

Инструментарий имитационного моделирования, основанного на потоковых диаграммах. Подобный - самый простой - инструментарий построения потоковых диаграмм помогает описывать выполняемые функции и определять их последовательность. Модели, основанные на потоковых диаграммах, не зависят от методологии и наиболее просты в изучении. К сожалению, следствием легкости использования является ограниченность возможностей моделирования и анализа. Примерами инструментария имитационного моделирования подобного рода служат Process Charter и Optima.

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

Инструментарий дискретно-событийного имитационного моделирования. Наиболее развитым и мощным инструментарием имитационного моделирования бизнес-процессов являются программные продукты дискретно-событийного моделирования. Эти инструменты поддерживают моделирование потока объектов (продуктов) и предоставляют возможности анимации, что позволяет пользователю производить наблюдение за движением в системе потоковых объектов. Некоторые из подобных технологий обеспечивают даже возможности объектно-ориентированного моделирования, упрощающего разработку больших моделей бизнес-процессов. Примеры: ServiceModel и SIMPROCESS.

Дискретно-событийное моделирование <#"justify">1)объектно-ориентированный интерфейс пользователя, включающий объекты "Модель", "Процесс моделирования", "Отчет" и "Текст";

)транслятор моделей;

)программные эксперименты с автоматическим анализом данных;

)Многозадачность;

)сохранение и продолжение выполнения запущенных процессов моделирования;

)ввод/вывод во время выполнения процесса моделирования;

)встроенные вероятностные распределения;

)интегрированный язык программирования PLUSTM.

)библиотека PLUS-процедур;

)графические окна для наблюдения за выполняющимся процессом моделирования;

)автоматическое интегрирование обыкновенных дифференциальных уравнений любого порядка;

)поддержка "горячих" клавиш;

)отладка с использованием графического интерфейса;

)Автоматические генераторы отсеивающих и оптимизирующих экспериментов.

)Диалоговые окна ввода блоков.


2.4 Программа RAO-studio


Разработанная в МГТУ им. Н.Э. Баумана система интеллектуального имитационного моделирования RAO-studio используется для подготовки, отладки и проведения экспериментов с имитационными моделями сложных дискретных систем. Основу системы составляет язык РДО, который позволяет описать процессы, протекающие в дискретных системах, и правила функционирования систем управления этими процессами. Т.е. он сочетает в себе как черты систем имитационного моделирования, так и черты систем принятия решений, основанных на продукционных правилах. При этом, у разработчика подобных смешанных имитационных моделей, есть в распоряжении единый язык описания, как динамической составляющей процессов, так и законов управления [7].

Инструментальное средство RAO-studio состоит из нескольких взаимосвязанных моделей (см. рисунок 2. ). Дадим им краткую характеристику.Simulator - этот модуль осуществляет непосредственное моделирование имитационной модели и логический вывод на правилах продукции.Model - модуль, отвечающий за создание, открытие и запись модели. Так же этот модуль запускает модель на исполнение, позволяет менять режим прогона и скорость моделирования.Tracer - отвечает за обработку информации о трассируемых показателях имитационной модели и построение графиков на её основе.Frame - модуль, отвечающий за отрисовку кадров анимации и перемещение между ними.Editor - этот модуль отвечает за редактирование текста модели.Kernel - отвечает за передачу информации между модулями и предлагает набор спецификаций для описания и реализации межмодульного взаимодействия.Repository - модуль, обеспечивающий хранение и предоставление доступа к исходным файлам модели.


Рисунок 2.1 Состав системы


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

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

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


2.5 Недостатки существующих систем


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

)Моделирование на них требует высокой квалификации (Arena, GPSS, RAO-Studio)

)Отсутствие поддержки русского языка (GPSS, Arena)

)Отсутствие визуального представления схемы технологической линии (GPSS World)

Сравнительный анализ функций программным продуктов приведен в таблице 2.1.


Таблица 2.1. Сравнение функций аналогичных программ

Функции программыArenaGPSS WorldRAO-StudioВизуальный редактордададаРусский языкданетдаНе требует высокой квалификациинетнетнет

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


При разработке программного обеспечения был проведен объектно ориентированный анализ предметной области в соответствии с принципами Г. Буч в предлагает для отображения результатов вышеуказанного анализа использовать диаграммы UML.


3.1 Функциональность программного обеспечения. Диаграмма вариантов использования


Диаграмма вариантов использования системы представлена на рис. 3.1.


Рисунок 3.1. Диаграмма вариантов использования


Для работы с системой предусмотрен один вид пользователей - специалист по моделированию. Пользователь «Специалист по моделированию» может:

-создавать новые технологические линии;

-моделировать их работу;

-сохранять структуру технологических линий и результаты моделирования;

-загружать ранее сохраненные технологические линии.


3.2 Описание принципа алгоритма


Модель состоит из множества объектов (процессов). Каждый объект моделирует какую-нибудь функцию или элемент декомпозиции моделируемой системы. Каждый объект имеет набор атрибутов и методов. Отличие ИМ от объектно-ориентированного программирования заключается в том, что объект может не только выполнить некоторое событие в момент своей активности, но и запланировать выполнение своего события или события другого объекта в будущем, т. е. на момент модельного времени, больший или равный текущему значению модельного времени [10].

Для реализации выполнения будущих событий требуется дополнительная программа, которая выполняет функцию планировщика для организации выполнения событий различных объектов в хронологическом порядке. Такая управляющая программа является необходимой частью системы исполнения (run time system) любой системы моделирования. Типовая структура управляющей программы и взаимосвязь управляющей программы с объектами представлены на рис. 3.2.

Управляющая программа взаимодействует с объектами в соответствии с клиент-серверным подходом. Алгоритм работы управляющей программы состоит из следующих действий:

) активизация объектов для выполнения событий, запланированных на текущее значение часов модельного времени. Удаление выполненных событий из списка;

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

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


Рисунок 3.2 Схема выполнения последовательной модели


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

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

При выполнении модели модельное время изменяется скачкообразно. На оси модельного времени моменты исполнения событий составляют дискретное множество. Поэтому такое моделирование называется дискретным ИМ или ИМ с дискретными событиями.

Имеется несколько алгоритмов продвижения модельного времени в дискретном ИМ.

Эти алгоритмы в разного рода модификациях и сочетаниях реализованы в системах дискретного ИМ. Каждый алгоритм наиболее эффективен для определенного класса приложений. Основными алгоритмами управления временем являются:

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

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

. Моделирование, управляемое часами реального времени (Wallclock time driven). При таком моделировании значение часов модельного времени определяется некоторой неубывающей функцией от значений аппаратно или программно реализованных часов реального времени. Такие имитационные модели обычно связаны либо с аппаратурой, либо с людьми.

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

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


.3 Представление динамики модели при имитационном моделировании


Будем характеризовать каждый компонент Ki сложной системы множеством состояний zi (переменных, содержащих информацию, необходимую для прогноза будущей динамики элемента). В каждом элементе Ki в результате выполнения функциональных действий происходят события eij. Время наступления события tij и его содержание полностью определяется состоянием zi элемента Ki. Для каждого Ki введем понятие локального времени ti. В сложной системе все ti изменяются одновременно, однако характер этих изменений различен и определяется последовательностью временных интервалов tij. При построении имитационной модели сложной системы функциональные действия аппроксимируются некоторыми алгоритмами aij при неизменном значении ti, а затем уже отображается изменение ti на величину tij, инициируя таким образом появление события eij. Пару (aij, tij) назовем активностью и обозначим aij [11].

Если сложная система состоит из одного элемента K1, то динамика ее ИМ представляла бы собой последовательную смену событий e1j на временной оси t1 посредством реализации активностей a1j (рис.3.3).


Рисунок 3.3 Динамика поведения элемента сложной системы


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

Пусть в начальный момент времени t0 = 0 определены состав элементов и структура системы S0 . Для каждого элемента Ki известны состояния zi и времена ti0 наступления событий ei0.

Введем переменные и положим ti = tim с таким номером m, что выполняется условие ti,m-1?t0<tim. Найдем величину T0=min{ti}, равную времени до наступления самого раннего события и пусть i0=argT0 (возможной неоднозначностью номера i0 пренебрежем). В момент времени T0 в элементе происходит событие , содержание которого задается состоянием .В этот момент осуществляется взаимодействие элементов модели, в результате чего формируется новый состав элементов и структура системы S1. Реакцией наступления события является корректировка модельного времени (t0=T0) и реализация активности , т.е. выполнение алгоритма и модификация локальной временной координаты (ti0=ti0+?i00). Далее вновь определяется время T1 наступления самого раннего события в компоненте , корректируется модельное время (t0=T1) и реализуется активность и т.д. (см. рис.)

Моменты T0, T1, T2, ... смены состава элементов и/или их состояний будем называть особыми. Переходы, происходящие в эти моменты, полностью определяют динамику модели. Поэтому при машинной имитации достаточно воспроизводить лишь эти изменения (в общем случае случайные).

Различают два типа ИМ, связанных со способом формализации реальных процессов функционирования СС. В моделях одного типа события eij отражают фактические события, происходящие в системе. В этом случае динамика ИМ по существу повторяет динамику сложной системы, т.е. переход от одного события к другому. Говорят, что такая имитационная модель носит событийный (дискретный) характер.

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

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


Рисунок 3.4. Динамика взаимодействия элементов сложной системы.


.4 Выбор программного обеспечения


Для реализации проекта выбраны платформа Microsoft .Net, язык C# и средство разработки визуальных приложений Microsoft Visual Studio System 2009;


3.4.1 Используемая платформа

Microsoft .Net - это подход к проектированию и реализации программного обеспечения от Microsoft. Он имеет следующие технологические преимущества:

.Платформа .Net позволяет реализовать проверку типовой безопасности и проверку надежности, что обеспечивает более устойчивое функционирование приложений.

.Платформа целиком, как и некоторые ее части, может быть реализована на различных типах компьютеров (аналогично Java-машине).

.Имеется общеязыковая среда выполнения платформы .Net - CLR (Common Language Runtime), которая поддерживает такие языки программирования, как C#, VB.Net, JScript .Net, C++.

.Имеется базовая библиотека классов - BCL (Base Class Library), содержащая классы и методы, которыми могут пользоваться все программы, написанные на языках, поддерживающих платформу .Net.

.Приложения, написанные на различных языках программирования, поддерживаемых платформой .Net, могут быть легко интегрированы друг с другом. Таким образом, программист, пишущий на любом из .Net-языков, может использовать любой участок программного кода, написанного другим программистом на другом .Net-языке [12].


3.4.2 Используемое программное обеспечение

При проектировании диаграмм IDEF0, IDEF3 и DFD, а также модели предметной области использовалось программное средство Microsoft Office Visio 2007. Данный пакет содержит набор элементов для создания диаграмм IDEF0 и DFD. Элементы диаграмм IDEF3 могут быть созданы пользователем самостоятельно. Microsoft Office Visio содержит также библиотеки элементов для построения диаграмм классов, последовательностей, состояний и вариантов использования.

Для написания ПО «Producing Process Imitation Modeling» выбрана среда разработки Microsoft Visual Studio Team System 2008. Microsoft Visual Studio 2008 удачно подходит для решения задач оптимизации в проекте и для проектирования интерфейса создаваемого программного продукта.


3.4.3 Используемые языки

При построении модели разрабатываемой системы использовались средства языка моделирования UML (Unified Modeling Language), так как:

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

.UML позволяет описать систему практически со всех возможных точек зрения (с точки зрения структуры, взаимодействия элементов системы и т.д.), разные аспекты поведения системы, а также последовательность действий.

.Диаграммы UML сравнительно просты для чтения после достаточно быстрого ознакомления с его синтаксисом.

.UML получил широкое распространение и динамично развивается [13].

В качестве основного языка разработки выбран C#. C# ориентирован на платформу Microsoft .Net, которая обладает большой функциональностью и предоставляет разработчику огромные возможности для создания программного обеспечения [14].# создан на базе опыта разработки других языков программирования и имеет следующие достоинства, заимствованные из различных языков программирования:

)высокая производительность (от C);

)объектно-ориентированная структура (от С++);

)сбор мусора, высокая безопасность (от Java);

)быстрая разработка (от Visual Basic).

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


3.5 Структура ПО


Приложение «Producing Process Imitation Modeling» состоит из следующих модулей:

)модуль моделирования производственных процессов;

)генератор случайных чисел;

)модуль визуального редактирования технологических линий


Рис. Структурная схема ПО «Producing process imitation modeling»


3.5.1 Генератор случайных чисел

Модуль генератора случайных чисел.

Основываясь на материалах книги [15] и ГОСТ [16] было решено для генерации случайных чисел руководствоваться следующими приципами:

-не использовать генератор принципиально основанный на линейно-конгруэнтном или мультилинейном конгруэнтном методе;

-использовать генератор с периодом меньше чем 264 ? 2х1019;

-не использовать генератор, который не использует для генерации младшие биты;

-не использовать генераторы, встроенные в языки C и C++, особенно rand и srand, так как они не имеют стандартной реализации и часто плохо задаются.

Основная характеристика генератора псевдослучайных чисел (ГПСЧ) - длина периода, то есть максимальная длина уникальной последовательности чисел.

В состав стандартной библиотеки языка C# входит класс Random, реализующий ГПСЧ, при этом используется метод вычитания, предложенный Д.Э. Кнутом [17]. Этот алгоритм не отличается большой длиной периода. Поэтому для генерации интервалов времени используется комбинированный алгоритм, сочетающий:

-генератор «Xorshift»;

-линейный конгруэнтный генератор;

-метод умножения с переносом (Multiply with carry, MWC).

В линейном конгруэнтном методе каждое последующее случайное число рассчитывается на основе предыдущего случайного числа по следующей формуле:



где m - модуль (); a - множитель (); c - приращение (); - начальное значение ().

При использовании генератора «Xorshift» рассматривается некоторая начальная последовательность, к которой применяются операции «Xorshift»:



где ^ - исключающее «или»; << и >> - поразрядный сдвиг влево и вправо соответственно; a1, a2, a3 - целые положительные числа.

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

Метод умножения с переносом определяется формулой:



где & - побитовое «и».

Используемый в классе «Generator» комбинированный генератор можно условно описать следующей формулой [18]



где Al и Ar- генераторы «Xorshift» с параметрами a1 = 21, a2 = 35, a3 = 4 и a1 = 17, a2 = 31, a3 = 8 (индексы l и r означают сдвиг влево и вправо соответственно);- линейный конгруэнтный генератор с параметрами a = 2862933555777941757, c = 7046029254386353087, m = 264.- метод умножения с переносом с параметром a = 4294957665.

Блок схема алгоритма представлена на рис. 3.6.


3.5.2 Диаграмма классов

Модуль моделирования содержит определения основных классов системы моделирования и методы реализации самого моделирования. Ниже приведено их краткое описание (рис. 3.7).


Рисунок 3.7 Диаграмма классов проекта

class Detail

Класс, представляющий обрабатываемое изделие. Содержит в себе номер изделия от начала моделирования.abstract class AbstractEquipment

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

Содержит в себе описание всех параметров оборудования: наименование, стоимость, производительность, энергопотребление, занятость оборудования входящие и исходящие связи.class Equipment : AbstractEquipment

Класс-наследник класса AbstractEquipment. Реализует свойства и методы, объявленные в классе-родителе.class Machine, Conveyor, Loader, Robot : Equipment.

Данные классы характеризуют конкретные типы обородувания.class EquipmentCell : Equipment

Данный класс описывает технологическую ячейку. Содержит в себе список оборудования относящегося к данной ячейке.class TechnoLine : AbstractEquipment

Класс-наследник класса AbstractEquipment. Представляет собой технологическую линию. Хранит в себе список ячеек и объект генератора обрабатываемых изделий.class Relation

Базовый класс связи между оборудованием. Хранит в себе информацию об оборудовании-источнике и оборудовании приемнике.class LinkRelation : Relation

Класс-наследник класса Relation. Представляет тип связи оборудования один к одному. Переопределяет метод передачи детали.class EndRelation : Relation

Класс-наследник класса Relation. Данный тип связи предназначен для завершения технологической линии и вывода обработанных изделий из системы моделирования.class DetailGenerator : AbstractEquipment

Класс-наследник класса AbstractEquipment. Содержит в себе объект генератора случайных чисел. Задача данного класса генерировать детали согласно заданному закону распределения.


3.5.3 Диаграмма состояний

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

Изначально технологическая линия находится в состоянии Stopped. При возникновении события запуска моделирования технологическая линия переходит в состояние Started. При возникновении события приостановки процесса моделирования технологическая линия переходит в состояние Paused. При достижении конечного времени моделирования или при возникновении события остановки моделирования технологическая линия переходит в состояние Stopped.


Рисунок 3.8. Схема состояний технологической линии


3.5.4 Диаграмма последовательности

Опишем последовательность выполнения процесса моделирования (рис 3.9). При запуске процесса моделирования глобально время моделирования устанавливается в ноль, объект класса TechnoLine, выступающий в роли управляющей программы, моделируемой технологической линии вызывает метод NextDetail(currentTime) объекта класса DetailGenerator генератора изделий для генерации следующего изделия и предает ему текущее время. Генератор изделий, в свою очередь, в соответствии с заданным законом распределения проверяет, является ли текущее значение времени временем генерации следующего изделия. Затем он вызывает у объекта OutRelation исходящей из него связи метод передачи изделия на следующее оборудование.


Рисунок 3.9 Диаграмма последовательности моделирования


В данном методе передача изделия оборудованию-приемнику. Если оборудование-приемник свободно, оно принимает переданное изделие и становится занятым, время освобождения оборудования устанавливается как сумма текущего времени и времени на обработку изделия. Если устройство приемник занято, то проверяется, является ли текущее значение времени временем освобождения оборудования, в случае выполнения данного условия вызывается метод передачи изделия PassDetail() на следующее устройство у исходящей связи OutRelation, текущее оборудование становится свободным и в случае, если было передано следующее изделие на обработку, тут же становится занятым. Процесс передачи изделия на следующее оборудование прекращается когда последнее в технологической линии оборудование вызывает метод PassDetail() у исходящей связи являющейся объектом класса EndRelation. Затем глобальное время моделирования увеличивается на фиксированную величину и вся последовательность вызовов повторяется заново, начиная с метода NextDetail(currentTime) объекта класса DetailGenerator. Моделирование работы технологической линии продолжается до тех пор, пока модель не переходит в состояние Paused или в состояние Stopped.


3.6 Описание интерфейса


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

Сохраняется технологическая линия в виде файла XML.

Интерфейс программного обеспечения «Producing Process Imitation Modeling» состоит из главной формы, на которой расположено основное меню (рис 3.10).


Рисунок 3.10 Создание новой линии


Новая технологическая линия создается путем выбора пункта меню Файл>Новая линия. В этом случае создается новое окно создания и редактирования технологической линии.

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


Рисунок 3.11 Окно новой модели технологической линии


При выборе одной из созданных ячеек слева появляется панель добавления оборудования в ячейку. Чтобы добавить необходимое оборудование в ячейку, нужно нажать на соответствующую кнопку, тогда в выбранной ячейке появляется строчка с названием добавленного оборудования, а на панели свойств отображаются свойства добавленного оборудования. Добавляемое в ячейку оборудование связывается между собой последовательно (рис. 3.12).


Рисунок 3.12 Добавление ячейки оборудования в модель


Для связывания ячеек нужно нажать кнопку «Связь». В этом случае слева отображается панель связи ячеек между собой. Далее необходимо выбрать из имеющихся в технологической линии ячеек ячейку-источник в нижней части ячейку-приемник и нажать кнопку «Создать». Связывание ячеек происходит через связывание последнего оборудования ячейки-источника и первого оборудования в ячейке-приемнике. Новая связь тут же отобразится в виде стрелочки, идущей от ячейки-источника к ячейке-приемнику (рис. 3.13).


Рисунок 3.13 Создание связей между ячейками оборудования


Для каждого отдельного оборудования в ячейке можно изменять различные параметры, такие как: название, стоимость, энергозатраты, производительность. Производительность можно задать как виде постоянной величины, так и в виде случайной с заданным типом распределения, для назначения случайных параметров нужно перейти на вкладку «ГПСЧ» на панели свойст.

Можно удалить ячейку, связь или оборудование, нажав на кнопку «Удалить». Например можно удалить ячейку «Ячейка1». Связи между ячейками при этом также удалятся (рис. 3.14). Вместо удаленной ячейки и связей можно создать новую связь (рис 3.15).


Рисунок 3.14 Удаление ячейки оборудования


Рисунок 3.15 Создание новой связи между ячейками


После того как заданы нужные параметры и созданы связи можно переходить к моделированию. Перед началом моделирования необходимо задать конечное время моделирования. Для этого на панели Конечное время нужно выбрать минимальную единицу измерения и ввести желаемое время в размерности трех единиц. После этого можно запустить имитацию нажав кнопку «Старт». Во время имитации можно нажать кнопку «Пауза» для приостановки процесса. По достижении конечного времени или при нажатии на кнопку «Стоп» появится окно с отчетом о результатах моделирования в виде таблицы (рис. 3.16).


Рисунок 3.16 Вывод отчета о результатах моделирования


Отчет о результатах моделирования можно распечатать, выбрав пункт основного меню «Файл > Печать», при активном окне с отчетом о моделировании. После чего появится окно предварительного просмотра печатаемого отчета (рис. 3.17).


Рисунок 3.17 Печать отчета о моделировании


Также можно распечатать и саму схему технологической линии. Выбрав пункт основного меню «Файл > Печать», при активном окне со схемой технологической линии. После чего появится окно с предварительным просмотром печатаемой схемы (рис. 3.18).


Рисунок 3.18 Печать схемы модели


Созданную модель технологической линии можно сохранить с помощью кнопки основного меню «Файл > Сохранить». После чего схема будет сохранена в формате XML вместе с данными о результатах моделирования. Структура документа приведена в приложении (рис 3.19).


Рисунок 3.19 Сохранение модели


Загрузить ранее сохраненную модель можно с помощью пункта основного меню «Файл > Открыть». Затем нужно выбрать необходимый файл с расширением «*.ppm». После чего откроется окно редактирования технологической линии с отображением загруженной модели. Загрузится как основная информация о параметрах модели, так и информация о результатах последней имитации (рис 3.20).


Рисунок 3.20 Загрузка ранее сохраненной модели


3.7 Контрольный пример работы программы


Приведем пример моделирования технологической линии по изготовлению зеркал.

Рассмотрим основные этапы технологической цепочки обработки стекла, представим в виде таблицы 3.1.


Таблица 3.1. Технологическая линия создания зеркал

Описание операцииОборудованиеВремя1. Раскрой стекла.Автоматический криволинейный раскрой. Для изготовления деталей применяются автоматические столы с ЧПУ и функцией криволинейного раскроя.Стол для раскроя <#"justify">Вид готовой модели представлен на рис. 3.21.


Рисунок 3.21 Схема имитационной модели контрольного примера

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


Для внедрения ПО «Producing Process Imitation Modeling» необходимо следующее аппаратное обеспечение:

ПК пользователей;

ПК администраторов.

Требования к техническим характеристикам ПК пользователей и ПК администраторов:

процессор - не ниже P3 800 МГц;

объем оперативной памяти - не менее 128 Мб;

не менее 6 Мб свободного дискового пространства;

устройство чтения компакт-дисков (DVD-ROM);

сетевой адаптер - FastEtherNet 100;

видеосистема - разрешающая способность не ниже 1024x768 точек;

координатно-указательное устройство - манипулятор типа «мышь»;

клавиатура - не менее 104 клавиш (русифицированная);

монитор - диагональ не менее 15.

Для внедрения ПО «Producing Process Imitation Modeling» необходимо следующее программное обеспечение сервера БД:

операционная система - Microsoft Windows 2000 Server SP4 или Microsoft Windows 2003 Server SP2;

СУБД - Microsoft SQL 2008.

Программное обеспечение клиентских ПК:

операционная система - Microsoft Windows 2000 Professional или Microsoft Windows XP Professional;

.Net Framework 3.0;

Crystal Reports for .Net Visual Studio 2008.


Заключение


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

В процессе выполнения задачи по созданию ПО пройдены все этапы проектирования от изучения и описания предметной области до эксплуатации системы. Реализованная система отвечает всем предъявленным требованиям по функциональности, надежности и безопасности.

Для создания ПО «Producing Process Imitation Modeling» использованы средство разработки Microsoft Visual Studio Team System 2008 и язык программирования .Net C#. В ходе выполнения работы применены знания по исследованию предметной области, функциональному моделированию, объектно-ориентированному проектированию, разработке и тестированию программного обеспечения.

ПО «Producing Process Imitation Modeling» прошло тестирование, справка приведена в приложении 6.


Литература


1.Н. Акимов: Политэкономия современного способа производства. Книга 5. [Текст] / Полиеткова Е.В. Экономика, 2008.

2.В. Быков <#"justify">Приложение 1


Руководство пользователя


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

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

Уровень подготовки персонала может быть любой, от пользователя ПК до администратора.

Перечень эксплуатационных документов, с которым необходимо ознакомиться:

«Описание программного обеспечения»;

«Руководство пользователя»;

«Руководство администратора»;

«Руководство программиста».


НАЗНАЧЕНИЕ И УСЛОВИЯ ПРИМЕНЕНИЯ


Цели создания ПО:

повышение коэффициента использования оборудования до 0,75;

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

уменьшение времени создания плана до 2 минут.

Перечень автоматизированных функций:

ведение технологических процессов изделий;

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

ведение реестров оборудования;

ведение реестров операций;

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

Системное и базовое программное обеспечение:

в качестве операционной системы клиентский ПК используется: Windows XP/Vista/Seven.

Прикладное программное обеспечение состоит из клиентских приложений и приложений формирования отчетов и печати.


ПОДГОТОВКА К РАБОТЕ


В состав дистрибутива ПО планирования производственного процесса входит клиентская часть «Producing Process Imitation Modeling».

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

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


ОПИСАНИЕ ОПЕРАЦИЙ


Создание новой технологической линии.

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

Открыть пункт меню "Файл", нажать на кнопку "Новая линия". Появится окно, содержащее имеющиеся заказы. Выбрать необходимые заказы и нажать кнопку «Готово».

После создания плана закрыть всплывающее сообщение с текстом «План успешно создан!».

Просмотр созданных планов.

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

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

После просмотра плана закрыть окно с планом.

Удаление ячеек и оборудования.

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

Выбрать с помощью мыши ячейку или оборудование для удаления и нажать кнопку «Удалить».


АВАРИЙНЫЕ СИТУАЦИИ


При сбое в работе аппаратуры восстановление нормальной работы системы должно производиться после:

-перезагрузки операционной системы;

-запуска исполняемого файла системы.

При ошибках в работе аппаратных средств (кроме носителей данных и программ) восстановление функции системы возлагается на ОС.

При ошибках, связанных с программным обеспечением (ОС и драйверы устройств), восстановление работоспособности возлагается на ОС.

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


КОНТРОЛЬНЫЙ ПРИМЕР РАБОТЫ С ПРОГРАММНЫМ ОБЕСПЕЧЕНИЕМ


Ниже рассмотрен пример работы с системой, начиная с ее запуска и заканчивая оформлением документов:

-запустите программное обеспечение;

-выберите меню «Файл»;

-выберите пункт «Открыть»;

-выберите файл «Зеркало.ppm»;

-нажмите на кнопку «Старт»;

-выберите окно с отчетом;

-нажмите на кнопку «Печать».


Приложение 2


РУКОВОДСТВО АДМИНИСТРАТОРА


. НАЗНАЧЕНИЕ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ


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

Цели создания системы:

повышение коэффициента использования оборудования до 0,75;

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

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

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

повышение коэффициента использования оборудования;

уменьшение длительности простоев;

хранение технологических процессов изделий.


. ПРИНЦИПЫ ФУНКЦИОНИРОВАНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ


Программное обеспечение планирования производственного процесса разработано с помощью Microsoft Visual Studia 2008. База данных - с помощью Microsoft SQL Server 2008 Express Edition. Отчеты разработаны с помощью Microsoft Visual Studia 2008 и генерируются с помощью MS SQL Server Reporting Services.

Рассмотрим порядок взаимодействия в программном обеспечении.

. Приложение работает с данными, хранящимися в базе данных.

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

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


. ОБЯЗАННОСТИ И ЗАДАЧИ АДМИНИСТРАТОРА


Основные обязанности системного администратора:

-установка, настройка и мониторинг работоспособности системы;

-обслуживание базы данных;

-распределение прав пользователей на сервере отчетов;

-ведение учетных записей пользователей системы.


. ОБСЛУЖИВАНИЕ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ


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

В системе присутствуют следующие роли пользователей: специалист по моделированию.

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


. ПРОБЛЕМЫ В РАБОТЕ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ И СПОСОБЫ ИХ РЕШЕНИЯ


При сбое в работе аппаратуры восстановление нормальной работы программного обеспечения должно производиться после:

-перезагрузки операционной системы;

-запуска программного обеспечения.

При ошибках в работе аппаратных средств (кроме носителей данных и программ) восстановление функции системы возлагается на ОС.

При ошибках, связанных с программным обеспечением (ОС и драйверы устройств), восстановление работоспособности возлагается на ОС.

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


Приложение 3


РУКОВОДСТВО ПРОГРАММИСТА


. НАЗНАЧЕНИЕ И УСЛОВИЯ ПРИМЕНЕНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ПЛАНИРОВАНИЯ ПРОИЗВОДСТВА


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

Основными функциями системы являются:

-учет имеющегося оборудования на предприятии;

-возможность изменять технологические линии;

-создание и оптимизация технологической линии;

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

-генерация отчетности о загруженности оборудования.

Программное обеспечение клиентских компьютеров:

-Операционная система - MS Windows NT/XP/Wista/Seven;

-.Net Framework 3.0.

Минимальные требования к аппаратным средствам клиента:

-процессор: Pentium 3 800 МГц;

-оперативная память: 256 Мбайт;

-дисковая подсистема: 40 Гб;

-сетевой адаптер: FastEthernet 100 Мбит.

-видеосистема: разрешающая способность 1024x768 точек;

-координатно-указательное устройство: манипулятор типа «мышь»;

-клавиатура: 104 клавиш (русифицированная);

-монитор: диагональ 15.

. ХАРАКТЕРИСТИКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ


Программное обеспечение планирования производственного процесса разработано с помощью Microsoft Visual Studia 2008. База данных - с помощью Microsoft SQL Server 2008 Express Edition. Отчеты разработаны с помощью Microsoft Visual Studia 2008 и генерируются с помощью MS SQL Server Reporting Services.

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

при ошибках в работе аппаратных средств (кроме носителей данных и программ) восстановление функции системы возлагается на ОС;

при ошибках, связанных с программным обеспечением (ОС и драйверы устройств), восстановление работоспособности возлагается на ОС.

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

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

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


. ОБРАЩЕНИЕ К ПРОГРАММЕ


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

. Пользователь пытается войти в программу, указывая при этом логин и пароль.

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

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


. ВХОДНЫЕ И ВЫХОДНЫЕ ДАННЫЕ


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

-технологический процесс изделий;

-характеристика генератора;

-характеристика оборудования.

Документы, генерируемые разрабатываемым программным обеспечением (выходные документы):

-отчет по загруженности оборудования (Приложение 2);

-схема технологичекой линии (Приложение 3).


. СООБЩЕНИЯ


Программное обеспечение выдает сообщения пользователю в следующих случаях:

-произошла ошибка загрузки данных;

-произошла ошибка сохранения, изменения, удаления данных;

-данные успешно сохранены, изменены, удалены;

-подтверждение удаления данных.

Приложение 4


<!ELEMENT MODEL (TIMEUNIT, ENDTIME, TECHNOLINE)>

<!ELEMENT TIMEUNIT (#PCDATA)>

<!ELEMENT ENDTIME (#PCDATA)>

<!ELEMENT TECHNOLINE (TLNAME, EQUIPMENTCELLLIST, RELATIONLIST)>

<!ELEMENT TLNAME (#PCDATA)>

<!ELEMENT GENERATOR (GENERATORX, GENERATORY, DISTRIBUTION,MEAN?,LAMBDA?)>

<!ELEMENT GENERATORX (#PCDATA)>

<!ELEMENT GENERATORY (#PCDATA)>

<!ELEMENT DISTRIBUTION (#PCDATA)>

<!ELEMENT MEAN (#PCDATA)>

<!ELEMENT LAMBDA (#PCDATA)>

<!ELEMENT EQUIPMENTCELLLIST (GENERATOR,EQUIPMENTCELL*)>

<!ELEMENT EQUIPMENTCELL (CELLINDEX, CELLNAME, ECDESCRIPTION, CELLX, CELLY, EQUIPMENTLIST)>

<!ELEMENT CELLINDEX (#PCDATA)>

<!ELEMENT CELLNAME (#PCDATA)>

<!ELEMENT ECDESCRIPTION (#PCDATA)>

<!ELEMENT CELLX (#PCDATA)>

<!ELEMENT CELLY (#PCDATA)>

<!ELEMENT EQUIPMENTLIST (EQUIPMENT*)>

<!ELEMENT EQUIPMENT (INDEX, EQTYPE, NAME, DESCRIPTION, COST, ENERGYCONSUMPTION, PRODUCTIVITY, TIMEALL, TIMEPROCEEDED, DETAILPROCEEDED)>

<!ELEMENT INDEX (#PCDATA)>

<!ELEMENT EQTYPE (#PCDATA)>

<!ELEMENT NAME (#PCDATA)>

<!ELEMENT DESCRIPTION (#PCDATA)>

<!ELEMENT COST (#PCDATA)>

<!ELEMENT ENERGYCONSUMPTION (#PCDATA)>

<!ELEMENT PRODUCTIVITY (#PCDATA)>

<!ELEMENT TIMEALL (#PCDATA)>

<!ELEMENT TIMEPROCEEDED (#PCDATA)>

<!ELEMENT DETAILPROCEEDED (#PCDATA)>

<!ELEMENT RELATIONLIST (RELATION*)>

<!ELEMENT RELATION (RELTYPE, EQUIPMENTCELLFROM, EQUIPMENTFROM, EQUIPMENTCELLTO, EQUIPMENTTO)>

<!ELEMENT RELTYPE (#PCDATA)>

<!ELEMENT EQUIPMENTCELLFROM (#PCDATA)>

<!ELEMENT EQUIPMENTFROM (#PCDATA)>

<!ELEMENT EQUIPMENTCELLTO (#PCDATA)>

<!ELEMENT EQUIPMENTTO (#PCDATA)>


Приложение 5


Листинг класса Generator

class Generator

{u, v, w;

//если в конструкторе параметр не задан, то

//для генерации начального значения используются системные часыGenerator() : this((ulong)(System.DateTime.Now.Hour * System.DateTime.Now.Second))

{

}

Generator(ulong RandSeed)

{= 4101842887655102017;= 1;= RandSeed ^ v;();= u;();= v;();

}

ulong NextInt64()

{x = 0;= u * 2862933555777941757 + 7046029254386353087;^= v >> 17;^= v << 31;^= v >> 8;= 4294957665 * (w & 0xffffffffffffffff) + (w >> 32);= u ^ (u << 21);^= x >> 35;^= x << 4;(x + v) ^ w;

}

uint NextInt32()

{(uint)NextInt64();

}

double NextDouble()

{5.42101086242752217E-20 * NextInt64();

}

}


Календарный план работы над дипломной работой ЭтапДатаСодержание работРезультаты работ125.10.2010 - 08.11.2010Анализ предметной областиОписание предметно

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ