183465 (Имитационная модель автоматизированного участка обработки деталей), страница 6

2016-07-30СтудИзба

Описание файла

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

Онлайн просмотр документа "183465"

Текст 6 страницы из документа "183465"

End Function

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

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

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

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

Как правило, программа на языке VBA состоит из нескольких процедур и функций. Описание этих программных единиц хранится в модулях. Модули, в свою очередь, как составные части входят в проекты. Проекты сохраняются в файлах рабочих книг Excel 2003, но работать с ними можно лишь при наличии отдельного приложения — редактора Visual Basic. Если нужно вызвать процедуру или функцию, описание которой находится в другом модуле, ее имя при вызове указывается следующим образом: имя_модуля.имя_процедуры. Но если описание процедуры или функции содержится в другом проекте, при ее вызове следует использовать иной синтаксис: имя_проекта. имя_модуля. имя_процедуры.

Переменные в VBA

Описанные в процедурах VBA действия выполняются над переменными или объектами. Переменная — это поименованная область памяти, которая используется для хранения данных в течение работы процедуры. Переменные VBA аналогичны переменным других языков программирования. Использованию переменной обычно предшествует ее объявление посредством оператора D1 т, в котором указываются имя переменной и тип данных, для хранения значений которого она предназначена. Хотя такой оператор не является обязательным (VBA способен определять тип данных переменной по последнему символу ее имени: !, #, $, %, &, @), тем не менее, хороший стиль программирования требует предварительного описания всех используемых переменных. Имена переменных могут иметь длину до 255 символов (используются и символы кириллицы) и не должны содержать пробелов, знаков препинания и перечисленных выше специальных символов (за исключением символа @). Они не могут совпадать с ключевыми словами VBA и именами стандартных объектов.

Управляющие конструкции VBA

Управляющие конструкции языка программирования — это инструкции и группы инструкций, применение которых позволяет изменять по мере необходимости последовательность выполнения других инструкций программы. В современных языках программирования управляющие конструкции подразделяются на ветвления и циклы. Ветвлением называется управляющая конструкция, позволяющая пропускать при выполнении те или иные группы инструкций в зависимости от значения условия (If...Else, If...Then...Else, If...Then...ElseIf...Else и Select Case).

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

Конструкция If...Then

Конструкция If...Then дает VBA указание принять простейшее из решений: если условие If истинно, нужно выполнить следующий за ним оператор (или операторы); если же условие ложно, нужно прейти к строке, расположенной непосредственно за условной конструкцией. Данная конструкция может располагаться как в одной, так и в нескольких строках. Однострочная конструкция If...Then выглядит так:

If условие Then оператор[ы]

Если условие выполняется, VBA обрабатывает оператор или операторы, которые следуют за условием; в противном случае эти операторы пропускаются. Конструкция If...Then, занимающая несколько строк (известна также как блок If), выглядит следующим образом:

If условие Then

оператор

[операторы]

End If

Если условие истинно, VBA, опять-таки, выполняет оператор или операторы, а в противном случае передает управление строке, расположенной под строкой End If.

Конструкция If...Then...Else

Конструкция If ...Then — прекрасный инструмент для выполнения одного действия, зависящего от условия. Но если приходится выбирать одно из двух возможных направлений, в которых будут производиться действия, следует воспользоваться конструкцией If...Then...Else. С помощью этой конструкции выбирается одно направление деятельности, если условие истинно, и другое, если оно ложно.

Например, конструкция If...Then...Else является очень удобным инструментом для работы с окнами сообщений, содержащими по две кнопки.

Синтаксис рассматриваемой конструкции таков:

If условие Then

операторы_1.

Else

операторы_2

End If

Если условие истинно, VBA выполняет первую группу операторов — onepaторы_1,но если условие ложно, осуществляется переход к строке Else, а затем выполняется вторая группа операторов — операторы_2 [12].

Конструкция Select Case

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

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

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

Select Case проверяемое_выражение

Case выражение_1

операторы_1

[Case выражение_2

операторы_2]

[Case Else

операторы]

End Select

На первый взгляд данный синтаксис может показаться сложным, но это не так. Оператор Select Case начинает конструкцию, а оператор End Select завершает ее. Проверяемое выражение определяет, какой из операторов Case будет выполнен, а выражение_1, выражение_2 и т. д. - это те выражения, с которыми VBA сравнивает проверяемое. Предположим, необходимо проверить, кнопку с каким номером выбрал пользователь в диалоговом окне или в форме. Значит, проверяемое выражение будет связано с событием выбора кнопки. Если это первая кнопка, значение проверяемого выражения совпадет с выражением_1. В таком случае будут выполнены операторы, находящиеся в строках, следующих за оператором Case выражение_1. Если это вторая кнопка, то значение проверяемого выражения совпадет с выражением_2, а следовательно, будут выполнены операторы, расположенные в строках, следующих за оператором Case выражение_2. То же можно сказать и об остальных операторах Case. Оператор Case Else подобен ключевому слову Else в операторе If. Он представляет собой необязательный оператор, который, будучи указанным, выполняется в тех случаях, когда ни одно из предложенных выражений не подходит.

3 РАЗРАБОТКА ИМИТАЦИОННОЙ МОДЕЛИ автоматизированного участка обработки деталей

3.1 Концептуальная модель

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

Рисунок 2.1 – Структурная схема объекта моделирования

Цель моделирования:

Изучение влияния интенсивности поступления деталей на загрузку транспортного робота и станков обработки.

  1. Декомпозиция сложной системы.

  1. Декомпозиция системы осуществляется просто: отдельными элементами модели будут очереди, транспортный робот, станки (в дальнейшем этапы обработки).

  1. Выбор параметров и переменных.

  1. В качестве параметров системы будет интенсивность поступления деталей на транспортировку и обработку на станках ( ) ( ).

  2. Переменными модели системы являются функция распределения длительности перевозки или обработки детали на i-том этапе .

  3. В качестве статистик моделирования будут выступать:

  • - коэффициенты загрузки этапов обработки ( );

  • - количество обработанных деталей на автоматизированном участке ( ) и на i-м этапе обработки ( );

  • - размер очереди к каждому этапу обработки ( );

  • - общее время обработки деталей на i-ом участке обработки ( ).

  1. Уточнение критериев эффективности.

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

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

  1. Аппроксимация реальных процессов математическими величинами.

  1. При задании функций распределения длительность обработки детали на i-ом этапе обработки достаточна аппроксимация ступенчатыми функциями.

  1. Выдвижение гипотез и предположений.

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

  1. Установление основной структуры моделирования.

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


3.2 Формальное описание модели


Алгоритм активностей

Активность поступления деталей

  1. Поиск места для детали:

'Ищется место для детали. Либо новая строка, либо на место ушедшей.

i = 2

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5209
Авторов
на СтудИзбе
430
Средний доход
с одного платного файла
Обучение Подробнее