Главная              Рефераты - Производство

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

Дипломная работа

Подсистема учета готовой продукции цеха металлизации ОЭМК

АННОТАЦИЯ

Пояснительная записка к дипломному проекту по теме «Подсистема учета готовой продукции цеха металлизации ОЭМК» содержит 135 страниц текста, 8 таблиц, 41 рисунок и приложение.

Автоматизация; Конвейерные весы; Юстирование; Тарирование; Калибровка скорости; Расходный счетчик.

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

В специальной части дипломного проекта была разработана структура подсистемы, разработано математическое и алгоритмическое обеспечение. Для реализации разработанной структуры выбран контроллер фирмы ЭМИКОН и панели оператора фирмы EXOR ELECTRONIC. С помощью интегрированной среды CONT-designer написана прикладная программа подсистемы для контроллера ЭК-2000, разработаны экраны визуализации для панели оператора UniOP в интегрированной среде UniOP-designer, экраны визуализации оператору-технологу в пакете комплексной автоматизации TRACE MODE.

В разделе «Охрана труда» проведен анализ условий труда и сформулированы требования по безопасному выполнению работ, сделан расчет освещенности помещения.

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


Содержание

ВВЕДЕНИЕ

1. РАСЧЕТНО-ТЕХНИЧЕСКАЯ ЧАСТЬ

1.1 Система транспорта и склады

1.1.1 Транспортировка, хранение и грохочение окисленных окатышей

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

1.1.1.2 Резервный склад

1.1.1.3 Аварийный склад

1.1.1.4 Подача окисленного окатыша к отгрузочным бункерам

1.1.1.5 Дозирование, грохочение и транспортировка между расходным складом и промежуточными бункерами

1.1.2 Транспортировка, грохочение и хранение металлизованного продукта

1.1.2.1 Подача металлизованного продукта к станции грохочения

1.1.2.2 Отвод реметов и подача их на склад реметов

1.1.2.3 Станция грохочения металлизованного продукта

1.1.2.4 Подача к бункерам металлизованного продукта

1.1.2.5 Подача металлизованной мелочи на установку брикетирования

1.1.2.6 Подача брикетов

1.1.2.7 Загрузка бункеров металлизованного продукта перед электросталеплавильным цехом

1.1.2.8 Подача металлизованных окатышей на установку отгрузки

1.1.3 Установка отгрузки

1.2 Ленточные весы

1.3 Описание системы визуализации технологического процесса

1.3.1 Назначение и состав программно-аппаратных средств

1.3.2 Технические характеристики контроллера ЭК-2000

1.3.3 Технические характеристики операторской станции

1.3.4 Общие сведения о работе системы

1.3.5 Экранные формы отображения

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

1.5 Структура подсистемы

1.6 Алгоритмическое и математическое обеспечение

1.7 Выбор технических средств

1.7.1 Выбор контроллера

1.7.2 Выбор панели оператора

1.7.3 Требования к инженерной станции

1.8 Состав системных программных средств

1.9 Прикладное программное обеспечение

1.9.1 Инструментальный программный комплекс TRACE MODE

1.9.2 Интегрированная система UniOP-Designer

1.9.3 Интегрированная система CONT-Designer

1.9.4 Прикладная программа подсистемы учета готовой продукции

1.9.4.1 Инициализация

1.9.4.2 Ядро программы

1.9.4.3 Подпрограммы обработки прерываний

1.9.4.4 Процедуры

1.10 Визуализация подсистемы

1.10.1 Визуализации на среднем уровене

1.10.1.1 Панель UniOP «сервер»

1.10.1.2 ................................................................... Панели UniOP «клиенты»

1.10.2 Визуализации на верхнем уровен

1.11 Настройка весов

1.12 Дальнейшее развитие подсистемы

2. ОХРАНА ТРУДА

2.1 Основные понятия и термины

2.2 Общие положения

2.3 Характеристика степени совершенствования технологического процесса

2.4 Характеристика выбросов цеха металлизации

2.5 Анализ потенциально опасных и вредных производственных факторов

2.5.1 Загазованность

2.5.2 Запыленность

2.5.3 Движущиеся и вращающиеся части механизмов оборудования

2.6 Общие требования безопасности к ленточным конвейерам

2.7 Требования к персоналу по обслуживанию подсистемы учета

2.7.1 Общие требования безопасности

2.7.2 Требования безопасности при проведении работ

2.7.3 Требования безопасности в аварийных ситуациях

2.8 Расчет искусственного освещения

2.9 Вывод

3. ОРГАНИЗАЦИОННО – ЭКОНОМИЧЕСКАЯ ЧАСТЬ

3.1 Организационная структура участка технологической автоматизации цеха металлизации

3.2 Оценка экономической эффективности

3.3 Вывод

ЗАКЛЮЧЕНИЕ

Список используемой литературы

Приложение


ВВЕДЕНИЕ

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

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

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

Высокое качество металлизованных окатышей и проката позволили ОЭМК успешно конкурировать с другими металлургическими предприятиями на внутреннем и мировом рынках сбыта металлургической продукции. Такие высокие показатели качества при получении окатышей достигаются при работе на «свежем» концентрате, а также благодаря способу прямого восстановления фирмы МИДРЕКС.

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

Верхний уровень управления комбинатом поддерживается информационной системой класса ERP на базе R/3 SAP, которая совместно с локальными - цеховыми - системами обеспечивает выполнение основных бизнес процессов. Цеховые системы автоматизации, в свою очередь, имеют три уровня:

• на уровне цеховых АСУ решаются задачи сменно-суточного планирования выплавки стали и производства проката, слежения за металлом на всех переделах производства, формирования базы данных по технологическим маршрутам обработки металла, анализа данных, выдачи отчетных документов;

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

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

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


1. РАСЧЕТНО-ТЕХНИЧЕСКАЯ ЧАСТЬ

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

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

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

1.1. Система транспорта и склады

1.1.1. Транспортировка, хранение и грохочение окисленных окатышей

1.1.1.1. Подача окисленных окатышей из цеха окомкования на расходный склад

Подвод окисленных окатышей из цеха окомкования к цеху металлизации осуществляется по ленточным конвейерам 12.12/1 11 T 31.01 или .02, которые транспортируют окатыши на расходный склад. Для этой цели поворотные течки с тремя желобами 12.12/1 11 T 56.01 или 0.3 и переключающее устройство в раздваивающихся точках должны быть налажены в соответствии с прямым путем транспортировки.

1.1.1.2 Резервный склад

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

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

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

Обычно окисленные окатыши подводятся к раздваивающимся течкам 12.12/1 T 56.07, 08, 12 и 13. Оттуда можно направлять их на резервный склад по ленточному конвейеру 12.12/11 T 31.10.

Стекер-реклаймер 12.12/1 11 T 46.01 непрерывно загружается материалом от ленточного конвейера 12.12/1 11 T 31.10 через присоединенную к нему тележку с петлевым устройством. Он укладывает окатыши по выбору по левой или правой стороне вдоль пути перемещения.

Емкость резервного склада по окисленным окатышам составляет 2х80000 т. Во время укладки невозможен забор окатышей.

Если окисленные окатыши, находящиеся на резервном складе, нужны на установке прямого восстановления или установке отгрузки, то стрела стекера-реклаймера, оснащенная роторным колесом, забирает окисленные окатыши с одного из двух штабелей и транспортирует их по ленточному конвейеру 12.12/1 11 T 31.10. По ленточным конвейерам 12.12/1 11 T31.11 и .12 окисленные окатыши транспортируются к поворотной течке 12.12/1 11 T 56.05, которая направляет их по выбору на ленточные конвейеры к расходному складу или к установке отгрузки.

1.1.1.3 Аварийный склад

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

Для этой цели необходимо пустить в действие ленточный конвейер 12.12/1 11 T 31.09 и переключить переключающее устройство в раздваивающихся точках 12.12/ 11 T 56.07 или .08, .12 или .13 так, чтобы они направляли поток материала на этот конвейер.

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

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

1.1.1.4 Подача окисленного окатыша к отгрузочным бункерам

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

При включении данного ленточного конвейера с поста управления системами транспорта одновременно пускаются в действие и ленточные конвейеры 12.39 11 T 31.01 и .02, 12.12/1 11 T 31.13 и .14, а также 12.12 11 Т 31.01 или .12, сблокированные в одну группу механизмов.

Путем перемещения течек с тремя желобами 12.12/1 11 T 56. 01 или .03 можно направить поток материала по выбору на один или оба из ленточных конвейеров 12.12/1 11 T 31.01 или .02, и таким образом транспортировать окисленные окатыши из цеха окомкования к установке отгрузки. Имеется возможность транспортировки окисленных окатышей с резервного склада к установке отгрузки. Для этой цели течка с тремя желобами 12.12/1 11 T 56.05 должна быть переключена так, чтобы она направляла поток материала с ленточного конвейера 12.12/1 11 T 31.12 к ленточному конвейеру 12.12/1 11 T 31.13.

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

С помощью установленных на ленточном конвейере 12.12/1 11 T 31.14 ленточных весов 12.12/1 11 N 57.03 определяется количество окатышей, транспортирующихся к отгрузочным бункерам.

1.1.1.5 Дозирование, грохочение и транспортировка между расходным складом и промежуточными бункерами

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

При включении обоих ленточных конвейеров 12.13/1 11 T 31.11 и .12 также пускаются в действие расположенные за ними и сблокированные с ними машины данной группы.

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

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

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

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

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

Каждый из расположенных параллельно ленточных конвейеров 12.12/1 11 T 31.07 и .08 транспортируют окисленные окатыши на один грохот станции грохочения. На каждом из этих ленточных конвейеров установлены ленточные весы и металлоискатель.

Данные ленточные весы 12.12/1 11 N 57.01 и .02 определяют количество окисленных окатышей, разгруженных с помощью вибропитателей.

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

Станция грохочения окисленных окатышей выполнена с двумя грохотами. Оба вибрационных грохота 12.12/1 11 T 41.01 и .02 имеют два сита каждый с разными размерами ячеек. Сначала отделяется фракция 0-5 мм, т.е. возврат, и затем отделяется годная для производства фракция 5-50 мм.

Спеченные куски из цеха окомкования и куски с резервного склада, образовавшиеся в результате замерзания окатышей, крупностью более 50 мм с вибрационных грохотов подаются в щековые дробилки 12.12/1 11 I 76.01 и .02, соответственно. В щековых дробилках куски дробятся до крупности частиц менее 50 мм.

Отделенная на каждом вибрационном грохоте мелочь по раздваивающимся течкам 12.12/1 18 T 56.01 и .02, как правило, подается на ленточный конвейер 12.12/1 18 T 31.02, который транспортирует ее к цеху окомкования.

Если транспортировка по этому пути невозможна, то мелочь подается на ленточный конвейер 12.12/1 18 T 31.01 и транспортируется к аварийному бункеру возврата. Емкость данного бункера 200 м. куб. обеспечивает хранение получаемой мелочи окисленных окатышей не менее чем в течение 35 часов.

Дозировочные ленточные весы 12.12/1 18 N 57.01, распложенные под аварийным бункером возврата дополнительно к мелочи, получаемой от станции грохочения, на ленточный конвейер 12.12/1 18 T 31.02 загружают регулируемое количество мелочи из бункера.

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

Под вибрационными грохотами и щековыми дробилками потоки фракции 5-50 мм объединяются и по раздваивающемся течкам 12.12/1 11 T 56.09 и .10 подаются на ленточные конвейеры 12.13/1 11 T 31.01 и .02. При этом каждый из грохотов подает материал на один из этих двух конвейеров. На один из этих ленточных конвейеров также загружаются поступающие со склада реметов реметы.

По ленточным конвейерам 12.13/1 11 T 31.05 - .12, а также по раздваивающимся течкам 12.13/1 11 T 56.01 - .08 материал поступает в промежуточные бункера шахтных печей.

Ленточные весы 12.13/1 11 N 57.01-.08, установленные на этих ленточных конвейерах, определяют количество окатышей, загружаемое в соответствующий промежуточный бункер.

1.1.2 Транспортировка, грохочение и хранение металлизованного продукта

1.1.2.1 Подача металлизованного продукта к станции грохочения

С помощью маятникового разгрузочного устройства металлизованный продукт выгружается из шахтной печи. Путем движения туда и обратно перемещающегося коромысла металлизованный продукт выгружается на разгрузочные ленточные конвейеры шахтных печей 12.35/1 32 T 31.01-.04. На каждом из этих ленточных конвейеров установлены ленточные весы 12.35/1 32 N 57.01-.04, каждые из которых определяют производительность одной установки металлизации.

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

Ленточные конвейеры 12.35/1 32 T 31.01 и .02 по течкам с тремя желобами 12.35/1 32 T 56.01 и .03, соответственно, подают материал на ленточный конвейер 12.35/1 32 T 31.07, а ленточные конвейеры 12.35/1 21 T 31.03 и .04 по течкам с тремя желобами 12.35/1 32 T 56.05 и .07 на ленточный конвейер12.35/1 32 T 31.08. Ленточные конвейеры 12.35/1 32 T 31.07 и .08 транспортируют металлизованный продукт к станции грохочения.

В аварийном режиме работы все четыре разгрузочных ленточных конвейера по выбору могут также подавать материал на один из ленточных конвейеров 12.35/1 32 T 31.07 и .08, снабженных устройством аварийного сброса.

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

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

1.1.2.2 Отвод реметов и подача их на склад реметов

В случае обнаружения при анализе материала, выгруженного из одной из шахтных печей, степени металлизации менее 90 %, этот частично восстановленный материал « реметы » надо не подводить к потоку металлизованного продукта, а отправить на отдельный склад. Для этой цели необходимо переместить поворотную течку в точке с тремя желобами, относящейся к разгрузочному конвейеру шахтной печи, так, чтобы она подавала материал на ленточный конвейер 12.35/1 36 T 31.02 и .03 реметы подаются на склад реметов, где они с помощью каскада падения 12.35/1 36 T 54.01 укладываются в штабель.

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

1.1.2.3 Станция грохочения металлизованного продукта

Станция грохочения металлизованного продукта выполнена с двумя грохотами. Вибрационные грохота 12.35/1 31 U 11.01 и .02 имеют два сита с разными размерами ячеек, каждый. Сначала отделяется мелочь с крупностью частиц 0-3 мм, за тем фракция 3-50 мм.

Спеченные куски из шахтных печей с крупностью частиц более 50 мм на участке разгрузки вибрационных грохотов подаются на одну из щековых дробилок 12.35/1 34 U 15.01 и .02. В щековых дробилках куски дробятся до крупности частиц менее 50 мм.

1.1.2.4 Подача к бункерам металлизованного продукта

Под вибрационными грохотами и щековыми дробилками потоки фракции 3-50 мм объединяются и по раздваивающимся течкам 12.35/1 32 T 56.13 и .14 подаются на ленточные конвейеры 12.35/1 32 T 31.09 и .10.

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

На каждом из этих ленточных конвейеров установлены ленточные весы 12.35/1 32 N 57.07 и .08. Данные ленточные весы определяют производительность ленточного конвейера. Вес регистрируется отдельно по каждому из описанных ниже конвейерных трактов.

Ленточные конвейеры 12.35/1 32 T 31.09 и .10 оснащены передвижной разгрузочной частью. С помощью этих передвижных разгрузочных частей металлизованный продукт может по выбору быть транспортирован по конвейерному тракту к бункерам металлизованного продукта перед электросталеплавильным цехом или по конвейерному тракту к бункерам металлизованного продукта перед установкой отгрузки. Выбор конвейерного тракта осуществляется с поста управления системами транспорта.

1.1.2.5 Подача металлизованной мелочи на установку брикетирования

Отделяемая на вибрационных грохотах металлизованная мелочь «крупностью 0-3 мм» по раздваивающимся течкам 12.35/1 32 T 56.15 и .16 подается на ленточные конвейеры 12.35/1 35 T 31.01 и .02.

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

На каждом из этих ленточных конвейеров установлены ленточные весы 12.35/1 35 N 57.01 и .02, соответственно, с помощью которых определяется производительность ленточных конвейеров, транспортирующих металлизованную мелочь в направлении установки брикетирования.

Ленточные конвейеры 13.35/1 35 T 31.01 и .02 загружают металлизованную мелочь на ленточные конвейеры 12.35/1 35 T 31.03 и .04, подводящие металлизованную мелочь к установке брикетирования. Эти конвейера снабжены приемной воронкой на конце.

1.1.2.6 Подача брикетов

Брикеты из металлизованной мелочи, получаемой на установке брикетирования, подаются на ленточный конвейер 12.35/1 32 T 31.05, с которого они по раздваивающейся течке по выбору поступают на ленточный конвейер 12.35/1 35 T 31.11 или .12. Брикеты транспортируются только к бункерам металлизованного продукта перед электросталеплавильным цехом.

1.1.2.7 Загрузка бункеров металлизованного продукта перед электросталеплавильным цехом

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

1.1.2.8 Подача металлизованных окатышей на установку отгрузки

Разгрузка промежуточных бункеров происходит при помощи вибропитателей. Ленточные весы 12.39/32 N 57.05, установленные на ленточном конвейере 12.39/32 T 31.01, определяют производительность по разгрузке. Заполнение отгрузочных бункеров установки отгрузки осуществляется транспортированием металлизованного окатыша по реверсивному ленточному конвейеру 12.39/32 T 31.02 в соответствующий бункер.

1.1.3 Установка отгрузки

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

Каждый запасной бункер емкостью 1740 м3 оснащен двумя бункерными весами емкостью 16 м3 каждый и опускаемым колпаком для укрытия вагона.

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

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

1.2 Ленточные весы

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


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

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

Динамометрический датчик состоит из 4 тензометрических резисторов включенных в мост Уитстона. В ненагруженном состоянии величина всех сопротивлений одинаково, Ua равняется нулю. При нагрузке сопротивление заштрихованных тензорезисторов повышается, а сопротивление других уменьшается (Рис. 2).



Динамометрический датчик нагружается механической конструкцией взвешивающего моста. Данное влияние тары компенсируется дополнительным током I (Рис. 3). В принципе два тарировочных сопротивлений Rт «постоянная составляющая» и rт «переменная составляющая» рассогласуют мостовую ветвь датчика, сопротивление которого повышается за счет тары. С помощью потенциометра выходное напряжение датчика точно устанавливается в ноль.

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


После одного оборота ленты счетчик количества должен устанавливаться на первоначальное значение, то есть в пределах положительной плоскости отсчитывается 4, 5, 6, 7, а в пределах отрицательной плоскости – 7, 6, 5, 4 (Рис. 4c). Это осуществляется дифференциальным счетчиком (Рис. 5), вход которого подключен к постоянной частоте fR . На входное напряжение преобразователя U-R, пропорциональное фактической частоте fX , теперь накладывается такое постоянное напряжение, что после одного оборота ленты счетчик находится в первоначальном положении.

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


(1)

где: P – производительность в т/ч;

g – нагрузка на ленте в кг;

v – скорость в м/сек;

3,6 – коэффициент сек ® час и кг ® т.

Усиленный выходной сигнал g*v непосредственно показывается вольтметром или амперметром. Шкала откалибрована на кг/ч или %. Показание количества транспортируемого материала производится следующим образом. Преобразователь напряжения в частоту U-F выдает импульсы частотой, пропорциональной производительности, которые суммируются “интегрируются” с помощью счетчика. Каждый импульс соответствует определенному количеству материала, например 10 кг.

Для умножения не требуется специальный прибор. Оно производится автоматически с помощью динамометрического датчика. Входным напряжением Ue является входное напряжение от датчика числа оборотов, пропорциональное скорости. Таким образом, Ua пропорционально и скорости и прилагаемой силе, то есть пропорционально произведению g*v.

Юстировка производится двумя путями:

a) Юстировка с контрольным грузом. Контрольный груз устанавливается на весовой стол, имитируя определенную производительность. Таким образом, удается установить точность настройки электронной схемы в пределах 1-2 %.

b) Юстировка с материалом. Повышение точности обеспечивается путем контроля весов с материалом и последующей дополнительной юстировкой.

1.3 Описание системы визуализации технологического процесса

1.3.1 Назначение и состав программно-аппаратных средств

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

В состав аппаратных средств входят:

- 8 микропроцессорных контроллеров ЭК-2000;

- 2 информационные панели для слесаря КИП и А типа UniOP;

- 3 цветных операторских станции на базе IBM PC.

Состав системных программных средств:

- операционная система ЭК-ОС для ЭК-2000;

- операционная система WINDOWS-NT 4.0.

Состав прикладного программного обеспечения:

- система комплексной автоматизации TRACE MODE 4.20;

- технологический язык программирования Turbo-CONT;

- система программирования пульта оператора UniOP – Designer;

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

1.3.2 Технические характеристики контроллера ЭК-2000

- тип процессора N80C188EB16

- тактовая частота, Мгц 8

- объем памяти программ, Кб 64

- объем памяти данных, Кб 64

- количество уровней прерываний 14

- количество каналов последовательного интерфейса 2

- количество адресуемых модулей 10

Питание осуществляется переменным током 220В 50 Гц +- 1 Гц .

Устойчивость к климатическим воздействиям по ГОСТ 15150-69:

- исполнение УХЛ, кат. 4.2

- диапазон температур, гр.С -10...+70

- относительная влажность воздуха при 30 гр.С, % 95

- степень защиты IP54

Габаритные размеры:

- ширина, мм 540

- глубина, мм 165

- высота, мм 450

Параметры надежности:

- средняя наработка на ошибку, ч., не менее 50 000

- среднее время восстановления, ч., не более 0,5

- срок службы, лет, не менее 10

1.3.3 Технические характеристики операторской станции

- процессор Intel Pentium

- тактовая частота, Мгц 266

- оперативная память, Мб 32

- флоппи-диск, дюйм 3,5

- жесткий диск, Гб 2,6

- видео карта, Мб 2

1.3.4 Общие сведения о работе системы

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

ЭК-2000 состоит из каркасной корзины, установленной в корпусе шкафа "Simatic". В корпусе каркасной корзины установлены модули центрального процессора и модули связи с объектом. Все модули выполнены на печатных платах размером 200х110 мм с двумя разъемами. Один разъем связан с магистральной шиной контроллера, другой обеспечивает ввод сигналов с датчиков.

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

Каждое экранное отображение содержит:

- позицию контролируемого параметра;

- вид контролируемого параметра (температура, расход и т.д.);

- диапазон шалы;

- градуировку температурных параметров;

- текущее значение параметра.

С контроллера значения контролируемых параметров передаются на операторские станции технолога по последовательному интерфейсу RS-485 с использованием сетевых модулей С-02А контроллера и С-05А компьютера операторской станции со скоростью 2,5 Мбит/с.

На операторских станциях представлена вся информация о текущих значениях контролируемых параметров в цифровом и графическом виде. Просмотр всей информации на видеомониторе производится постранично путем "перелистывания" экранных страниц. Количество экранных страниц может достигать 1000. Кроме текущих значений параметров на экране операторской станции отражается достижение предельных и аварийных значений. С интервалом 5 сек. необходимая для анализа и отчетности информация о контролируемых параметрах архивируется. Время хранения информации 10 суток.

1.3.5 Экранные формы отображения

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

- номер экрана;

- название экрана, узла или агрегата;

- строку подсказки;

- кнопку выхода в главное меню.

Назначение элементов экрана указано на рисунках.

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

Экран главного меню (Рис 7.) включает в себя непосредственно таблицу с пунктами меню, строку подсказки и кнопку возврата на предыдущий экран. Исключением является пункты «Мнемосхемы» и «Таблицы и гистограммы», содержащие вложенные меню.

Через главное меню осуществляется переход по всем экранам системы:

- экран графиков процесса рис. 8;

- одного из экранов мнемосхем рис. 9;

- экран аварийных сообщений рис. 10;

- экран просмотра уровневого архива в табличной форме рис. 11.


Элементы панели приборов


Элементы главного меню


Экран графиков


Мнемосхема печи металлизации


Экран аварийных сообщений


Экран просмотра уровневого архива


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

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

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

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

Нижний уровень включает в себя:

- тензометрические датчики;

- тахогенераторы;

- преобразователи сигналов;

- устройства связи с объектом.

Средний уровень включает в себя:

- элементы подсистемы производящие расчеты:

- скорости движения ленты конвейера;

- массы находящегося на весовом столе конвейера;

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

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

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

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

- калибровки скорости;

- тарирования;

- юстирования.

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

- средства отображения измеряемых и вычисляемых параметров;

Верхний уровень включает в себя:

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

- визуализацию параметров настоек весов в цифровом виде;

- архивирование выше перечисленных параметров;

- формирование и печать отчетов;

Технические характеристики подсистемы должны удовлетворять следующим требованиям:

· протокол связи с верхним уровнем MODBUS

· тип интерфейса с верхним уровнем RS 485

· время цикла считывания и обработки входных сигналов не более 1 сек

· погрешность измерения:

скорости движения ленты не более 0,1 %

массы окатыша на весовом столе 0,1 %

производительности конвейера 0,5 %

количества отгруженных окатышей 1 %

· наработок на отказ 50000 час

· время восстановления 0,5 час

1.5 Структура подсистемы

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

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

- Тахогенератором необходимым для измерения скорости движения ленты конвейера.

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

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

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

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

- Устройствами связи с объектом входящих в комплект микропроцессорного контроллера необходимые для получения данных от датчиков и выдачи сигналов в АСУ «ЭНЕРГО», АСУ «ЭСПЦ 2», сигнализации на пульт управления.

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

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

1.6 Алгоритмическое и математическое обеспечение

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


Расчет веса на ленте осуществляется исходя из принципа действия весового стола ленточного конвейера (Рис. 12).

Взвешивающий мост ограничен опорными роликами 1 и 2, воспринимающими часть нагрузки. Действительное распределение нагрузки показано на рисунке 12 в виде трапеции. На средние ролики действует только часть силы. Для расчетов принято использовать понятие “эффективная длинна моста”. В данном случае она рассчитывается по формуле 2 и является индивидуальной характеристикой весов.

(2)

где: l- эффективная длинна моста ,м;

a, b, c- расстояние между роликами ,м.

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

Для проверки правильности сборки взвешивающего механизма и работоспособности весов разработаны функции статического тарирования и юстирования. При остановленном конвейере взвешивается пустая лента и запоминается как значение тары Gt в кодах АЦП. Затем взвешивается лента с юстировочным грузом близким по весу к номинальной нагрузке и запоминается как значение брутто Gb в кодах АЦП. Чистый вес на ленте определяется разностью между брутто и тарой, а затем запоминается как значение юстировочного веса Gv в кодах АЦП. После выполнения этих функций можно проверить линейность весов во всем диапазоне взвешивания, а также отсутствие затираний весовой платформы. Текущий вес на весовом столе рассчитывается по формуле 3.

(3)

где: Q- масса на весовом столе, кг;

Gb - текущее значение веса брутто, код АЦП;

Gt - вес тары полученный в процессе тарирования, код АЦП;

Gv - юстировочный вес полученный в процессе юстирования, код АЦП;

Qv - масса юстировочного груза, кг.

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

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

1) Обнуляет значения динамической тары и количества измерений веса.

2) Организует циклическое накопление 100 значений веса брутто с интервалом времени равным одной сотой времени полного оборота ленты конвейера.

3) Рассчитывает среднее значение динамической тары Gtd .

Упрощенная схема алгоритма приведена на рисунке 13.

Функция динамического юстирования предназначена для настройки конвейерных весов под необходимый диапазон измерения. Перед вызовом функции на весовую платформу должен быть установлен юстировочный груз близкий по массе к номинальной нагрузке на ленту. Его значение вводится в параметр Qv с точностью до сотых долей килограмма. Функция использует также значение динамической тары Qtd рассчитанной в процессе динамического тарирования и время полного оборота ленты T. Функция выполняет следующие действия:

1) Обнуляет значения динамического юстировочного веса и количества измерений веса.

2) Организует циклическое накопление 100 значений веса брутто с интервалом времени равным одной сотой времени полного оборота ленты конвейера.


3) Рассчитывает среднее значение динамического юстировочного веса Gvd .

Упрощенная схема алгоритма приведена на рисунке 14.

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

1) Обнуляет счетчик количества импульсов за один оборот ленты.

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

Упрощенная схема алгоритма приведена на рисунке 15.

Измеренные (Qv , l, L, T) и полученные в результате выполнения описанных выше функций (Gtd , Gvd , I) параметры позволяют произвести все необходимые расчеты.

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

(4)


где: V- скорость ленты, м/с;

L- общая длинна конвейерной ленты, м;

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

i - количество импульсов пришедших с тахогенератора за 1 секунду,1/с.

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

(5)

где: Q - масса материала на весовом столе, кг;

Gb - текущее значение веса брутто, код АЦП;

Gtd - динамическая тара, код АЦП;

Gvd - юстировочный вес, код АЦП;

Qv - масса юстировочного груза, кг.

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

(6)

где: F- производительность, т/ч;

V- скорость ленты, м/с;

Q- масса на весовом столе, кг;

l - эффективная длинна моста, м;

3,6 - коэффициент пересчета, кг/c в т/ч.

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

(7)

где: Qh - количество материала отгруженного за час, кг

Vj - средняя скорость ленты, м/с;

Qj - среднее значение масса на весовом столе, кг;

l- эффективная длинна моста, м.

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

(8)

где: Qs - количество материала прошедшего по конвейеру за смену, т;

Qd - количество материала прошедшего по конвейеру за сутки, т;

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

m - количество дней в месяце

В связи с тем, что граница интервалов смен соответствует 800 и 2000 часам, суток - 2000 часам, месяца – 2000 часам последних суток, запоминание и обнуление счетчиков происходит именно в это время. Упрощенная схема алгоритма функционирования учетных счетчиков приведена на рисунке 16.

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

Упрощенная схема алгоритма функционирования счетчиков приведена на рисунке 17.



Для вывода информации о количестве отгруженного материала в АСУ «ЭНЕРГО» и АСУ «ЭСПЦ» на период пока система визуализации печи металлизации не подключена в глобальную сеть комбината, разработан алгоритм импульсного вывода. В алгоритме организован счетчик, значение которого увеличивается каждую секунду на величину, равную количеству отгруженного материала за этот промежуток времени. В интервале времени между этими увеличениями происходит циклическое уменьшение содержимого счетчика на 10 килограмм сопровождаемое выдачей импульса на дискретном выходе до тех пор, пока значение счетчика не станет меньше 10 килограмм. Упрощенная схема алгоритма приведена на рисунке 18.


1.7 Выбор технических средств

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


Таблица 1

Нагрузочная способность датчиков

Тип

Максимальная нагрузка

Предел перегрузки

Предел разрушения

RT 0,47

0,47 т

4 т

8 т

RT 0,68

0,68 т

5 т

8 т

Таблица 2

Технические характеристики тензометрических датчиков

Параметр

Значение

Коэффициент передачи

2,85 мВ/В

Допуск калибровки коэффициента передачи

± 0,1 %

Температурная погрешность коэффициента передачи 10°C в диапазоне от -10°C до 60°C

± 0,05 %

Нелинейность, включая гистерезис и воспроизводи-мость

± 0,03 %

Диапазон рабочих температур

-30...+80 °C

Входное сопротивление

4260 ± 15 Ом

Выходное сопротивление

4000 ± 5 Ом

Максимально допустимое напряжение питания

100 В

Сопротивление изоляции

> 100000 МОм

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

Таблица 3

Технические характеристики GFT 51

Параметры

Значения

Питание

Напряжение

24 В

Ток

75 мА

Выходное

Напряжение

0/+14 В

Ток

Max. 200 мА

Передаточная частота

Max. 8 Кгц

Коэффициент передачи

1270 имп/об

Род защиты

IP 54

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

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

- 8 сигналов аналогового ввода;

- 4 сигнала аналогового вывода;

- 12 сигналов дискретного ввода;

- 16 сигналов дискретного вывода;

- 8 сигналов импульсного ввода;

- 2 канала сетевого обмена.

1.7.1 Выбор контроллера

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

В качестве микропроцессорного контроллера подсистемы выберем контроллер ЭК-2000 фирмы “ЭМИКОН”. Этот выбор обоснован рядом причин:

1) Облегчение эксплуатации однотипностью оборудования. В существующей системе уже эксплуатируется 8 контроллеров этой фирмы.

2) Экономическая целесообразность. Приведенные в таблицах 4-6 данные наглядно показывают преимущества контроллеров ЭМИКОН: при аналогичных технических параметрах они в 2 раза дешевле. Цены на контролеры приведены в долларах США (без учета НДС). Цены на контроллеры фирм OMRON (Япония) и SIEMENS (Германия) включают в себя упаковку, транспортные расходы, таможенные пошлины, услуги по таможенной очистке (т.е. цены со склада в Москве).

3) Возможность органично встроить подсистему в уже существующею систему визуализации и управления.

4) Возможность дальнейшего наращивания и развития подсистемы.

5) Возможность получения оперативной помощи. Присутствие дилера в Старом Осколе в лице фирмы АВЕРС.

Таблица 4

Стоимость контроллера фирмы SIEMENS

Название устройства и программных средств

Тип устройства и программных средств

Кол-во

Цена USD

Стоимость USD

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

VR1

ER2

PS405

PS407

CPU414-1

FM460-1

IM461-1

Terminator for IM461-1

BACK-VP Battery

1

1

1

1

1

1

1

1

2

697

290

552

523

2294

337

337

55

9

697

290

552

523

2294

337

337

55

18

Модуль ввода аналоговых сигналов

SM431

1

523

523

Модуль ввода дискретных сигналов

SM421

1

250

250

Модуль вывода дискретных сигналов

SM422

1

366

366

Сетевой модуль

CP443-5

1

1155

1155

Графическая панель оператора

OP-25

1

1684

1684

ИТОГО стоимость контроллера:

9081

Средство программирования панели оператора

6AV9620-1AA07-1ABO

1

958

958

Средство программирования контроллера

6ES7800-OAC00-7BAO

6ES7798-OACO1-OXAO

1

1

105

70

105

70

ИТОГО стоимость программно-технического комплекса:

10214

Упаковка, транспортировка, таможенные операции (18%):

1839

ИТОГО стоимость контроллера со склада в Москве (USD):

12053


Таблица 5

Стоимость контроллера фирмы ЭМИКОН

Название устройства и программных средств

Тип устройства и программных средств

Кол-во

Цена USD

Стоимость USD

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

CPU-03A

CIM-485I

CIM-232NI

OS-188

PU-01A

SU-06

CC-14-01

1

1

1

1

1

1

1

394

73

23

50

286

268

195

394

73

23

50

286

268

195

Модуль быстрых счетчиков

QC-01A

2

295

590

Блок сопряжения с тензометрическими датчиками

СТF-03

4

250

1000

Модуль аналогового вывода

AO-01B

1

449

449

Модуль ввода/вывода дискретных сигналов

DIO-03A

1

240

240

Сетевой модуль

C-02A

1

480

480

Графическая панель оператора

CP10G-04-0045

MD03R-02-0045

1

2

641

457

641

914

ИТОГО стоимость контроллера:

5603

Средство программирования панели оператора

UniWIN

1

300

300

Средство программирования контроллера

CONT-Designer

1

300

300

ИТОГО стоимость контроллера со склада в Москве (USD):

6203

Таблица 6

Стоимость контроллера фирмы OMRON

Название устройства и программных средств

Тип устройства и программных средств

Кол-во

Цена USD

Стоимость USD

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

CVM1-CPU11-EV2

CVM1-BC-103

CVM1-PA208

CVM1-BI064

CV500-CN312

1

1

2

1

1

1349

358

315

249

249

1349

358

630

249

249

Название устройства и программных средств

Тип устройства и программных средств

Кол-во

Цена USD

Стоимость USD

Модуль ввода аналоговых сигналов

C500-AD501

1

1421

1421

Модуль ввода дискретных сигналов

3G2A5-ID218

1

232

232

Модуль вывода дискретных сигналов

3G2A5-OC224

1

429

429

Сетевой модуль

CV500-SLR21

1

1969

1969

Графическая панель оператора

NT600S-ST121-EV3

1

1554

1554

ИТОГО стоимость контроллера:

8440

Средство программирования панели оператора

NT-ZJ3AT1-EV1

1

387

387

Средство программирования контроллера

S4SWIN-V3.1

1

373

373

ИТОГО стоимость программно-технического комплекса:

9200

Упаковка, транспортировка, таможенные операции (18%):

1656

ИТОГО стоимость контроллера со склада в Москве (USD):

10856

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

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

Состав контроллера:

Блок системный

Каркас компоновочный СС-08-01

Модуль центрального процессорного устройства CPU-03A

Модуль питания PU-01A

Модули связи с объектом до 8 модулей

Панель кроссовая до 600 клемм

Панель оператора UniOP

Технические характеристики CPU-03A:

Тип процессораN80C188EB20

- Тактовая частота процессора, МГц20

- объем памяти программ операционной системы, Кбайт32

- объем памяти программ пользователя, Кбайт128

- Объем энергонезависимой памяти данных, Кбайт128

- Количество уровней прерываний11

- Количество энергонезависимых таймеров/календарей1

- Количество последовательных каналов2

- Тип интерфейсаRS-232C, RS-485

- Количество адресуемых модулей связи с объектом12

- Количество семисегментных знакосинтезирующих индикаторов отображения1

- Ток потребления от системного источника питания, мА, не более200

Технические характеристики PU-01A:

- Входное напряжение, В+19...+35 В

- Максимальный входной ток1,8 А

- Выходные вторичные напряжения:

системное питание цифровых цепей+5 В ±5 %, 3 А

питание аналоговых цепей модулей±15 В ±5 % , 0,3 A

- Напряжение электрической изоляции500 В

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

Для считывания сигналов с тахогенераторов необходимо 8 входов счетчиков, а для считывания сигналов состояния конвейеров 8 дискретных входов. Это все имеется в модуле быстрых счетчиков QC-01A.

Технические характеристики модуля QC-01A:

- Количество входных каналов измерения частоты8

- Количество каналов ввода дискретных сигналов8

- Максимальная частота входного сигнала, кГц500

- Минимальная длительность входного импульса, мкс1

- Длительность интервала измерения (задается программно), сек0,1/1

- Номинальное напряжение входного импульсного сигнала, В24

- Номинальное напряжение входного дискретного сигнала, В24

- Задержка входного дискретного сигнала, мс20

- Номинальный входной ток, мА10

- Напряжение электрической изоляции входных и системных цепей, В3000

- Ток потребления от системного источника питания, мА, не более100

Для измерения сигнала с весовых датчиков используем тензометрический преобразователь СТF-03, служащий для питания и преобразования сигналов тензометрических датчиков мостового типа в частоту. Датчики подключаются к блоку по стандартной шести проводной схеме. Выходные частотные сигналы преобразователя подаются на счетные входы модуля QC-01.

Технические характеристики преобразователя СТF-03:

- Номинальное напряжение питания блока, В24

- Защита от подачи напряжения питания обратной полярностиимеется

- Число каналов преобразования2

- Номинальное напряжение питания датчиков, В10

- Рабочий диапазон измеряемого напряжения, мВ0...30

- Рабочий диапазон выходной частоты, Гц16400...64800

- Погрешность преобразования, %, не более0,1

- Номинальная амплитуда выходных пара фазных импульсов, В12

- Скважность импульсов выходной частоты2

Для определения направления движения материалов в сторону ЭСПЦ или отгрузки необходимо 4 дискретных входа, через которые будет получаться информация о положении течек. Также необходимо 12 дискретных выходов для передачи информации в АСУ “ЭНЕРГО” и АСУ “ЭСПЦ 2” на период пока система визуализации не будет подключена к глобальной сети ОЭМК, и 4 дискретных выхода на предупредительную сигнализацию об отсутствии материала на ленте конвейера. Вышеперечисленные сигналы могут быть обработаны модулем DIO-01A.

Технические характеристики модуля DIO-03A:

- Количество входов16

- Количество групп входов2

- Напряжение внешнего источника питания постоянного тока, Uвн, В24 ± 20 %

- Минимальное напряжение на входе, соответствующее состоянию "выключено", В0,8 Uвн

- Максимальное напряжение на входе, соответствующее состоянию "включено", В0,2 Uвн

- Номинальный входной ток, мА5

- Максимальный входной ток, мА20

- Задержка входного сигнала, мс15 ... 20

- Напряжение опто-электрической изоляции, В1500

- Количество выходов16

- Количество групп выходов2

- Напряжение внешнего источника питания постоянного тока, В24 ± 20 %

- Максимальный ток нагрузки одного выхода, А2

- Максимальный выходной ток на одну группу, А5

- Максимальный выходной ток по всем каналам, А10

- Ток срабатывания за щиты по группе, А6

- Время срабатывания защиты, мкС10

- Сопротивление открытого ключа, Ом, не более0,25

- Ток утечки выхода в состоянии "выключено", мА, не более1

- Напряжение опто-электрической изоляции, В1500

- Ток потребления от системного источника питания, мА, не более100

Для сетевого обмена подсистемы с системой визуализации используем модуль C-02A.

Технические характеристики модуля C-02A:

- Протоколы обмена (канальный уровень) MODBUS , SDLC

- Протоколы 1-го уровня (физические)RS-485 , RS-232

- Количество каналов RS-4852

- Скорость обмена по каналам RS-485, Мбоддо 2

- Количество каналов RS-2322

- Скорость обмена по каналам RS-232 , бод9600

- Напряжение гальванической изоляции для каналов RS-485 , В1500

Для регистрации производительности конвейерных весов самопишущими приборами на печах металлизации, где не существует система визуализации необходимо 4 аналоговых выхода, реализованных в модуле AO-01B.

Технические характеристики модуля AO-01B:

- Количество изолированных от системного питания каналов вывода 4

- Диапазоны выходных сигналов, мA

Однополярных0...+5

0...+10

0...+20

+1...+5

+4...+20

Двуполярных-5...+5

-10...+10

-20...+20

- Время преобразования, мкс, не более30

- Разрядность цифро-аналогового преобразования, бит12

- Суммарная погрешность преобразования %, не более0,15

- Гальваническая развязка между системной и пользовательской частью модуля, В, не менее500

1.7.2 Выбор панели оператора

Панели оператора серии UniOP фирмы “EXOR ELECTRONIC R&D” широко используются в качестве устройств отображения в микропроцессорных системах на базе контроллеров фирмы “ЭМИКОН”, а также контроллеров ведущих мировых фирм: Allen-Bradley, ABB, AEG Modicon, GE Fanuc, Hitachi, Matsuhita/Aromat, Mitsubishi, Omron, SAIA, Siemens Simatic и другие. Они позволяют осуществить эффективную систему сопряжения с оператором в условиях, когда к средству отображения предъявляются требования малой стоимости и габаритов, но в тоже время должны обеспечиваться простота и надежность эксплуатации в промышленных условиях, и наиболее полное представление информации.

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

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

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

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

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

Благодаря 1024-уровневой системе прерываний всегда отображаются самые важные сообщения. Чтобы не потерять информацию о самых важных сообщениях, может быть задан режим обязательного подтверждения оператором. Последние 100 аварийных ситуаций, переданных контроллером, сохраняются во внутреннем списке аварийных ситуаций. Этот список можно просмотреть на экране или распечатать на принтере.

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

Возможно сетевое подключение панелей UniOP (сети UniNet, PROFIBUS, MODBUS DeviceNet, CANopen, K-M Suconet K).

Основные характеристики панелей UniOP:

· пылебрызгозащищенное исполнение (IP-65);

· клавиатура с тактильными мембранными клавишами;

· светодиодные индикаторы состояния;

· сменные надписи на клавишах;

· один канал RS-232 (19200 бит/с) для подключения к компьютеру;

· один канал RS-232/RS-485/”токовая петля 20 мА” для подключения к контроллеру;

· часы и календарь реального времени, поддерживаемые резервным питанием;

· пользовательское ОЗУ, поддерживаемое резервным питанием (32 Кб для панелей типа CP, 96 Кб для панелей типа МКD);

· дополнительная память (до 128 Кб для панелей типа MKD);

· 256 уровней приоритета аварийных сообщений;

· запоминание списка аварийных сообщений;

· защита на основе 8-уровнего пароля;

· печать сообщений, списка аварийных сообщений, списка аварийных ситуаций на принтере;

· отображение стандартного набора символов ASCII;

· рабочие условия эксплуатации:

температура окружающего воздуха от 0 до +50 °С

(от –30 до +50 °С в специальном исполнении);

относительная влажность воздуха 95 %;

питание от внешнего источника +24 В (0,5 А).

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

В качестве панели «сервера» выберем панель UniOP типа CP10G-04-0045 с техническими характеристиками:

- Графический жидкокристаллический дисплей

- 120х32точек

- 4 линии по 20 символов

- Пленочная клавиатура

- 12 функциональных клавиш

- цифровые клавиши

- клавиши управления курсором

- Порты

- PLC

- PC/Printer

- Сетевой порт

В качестве панели «клиент» выберем панель UniOP типа MD03R-02-0045 с техническими характеристиками:

- Жидкокристаллический дисплей

- 2 линии по 20 символов

- Пленочная клавиатура

- 9 функциональных клавиш

- клавиши управления курсором

- Порты

- PLC/PC

- Сетевой порт

1.7.3 Требования к инженерной станции

Для программирования контроллера ЭК-2000 и панели оператора UniOP необходима инженерная станция, удовлетворяющая следующим требованиям: IBM PC AT 386 или выше, размер ОЗУ - 4 Мбайт или более (размер свободной XMS-памяти - не менее 3 Мбайт), MS-DOS версии 5.00 или выше, WINDOWS 3.11 или выше.

1.8 Состав системных программных средств

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

- операционная система WINDOWS-NT 4.0;

- операционная система MS-DOS 6.22;

- операционная система WINDOWS 3.11;

- операционная система реального времени ЭК-ОС.

Операционные системы WINDOWS-NT 4.0, MS-DOS 6.22, WINDOWS 3.11 являются программными продуктами фирмы Microsoft. WINDOWS-NT 4.0 установлена на станциях оператора – технолога и необходима для нормального функционирования SCADA–системы TRACE MODE. MS-DOS 6.22 и WINDOWS 3.11 устанавливаются на инженерной станции и предназначены для нормального функционирования средств программирования контроллера ЭК-2000 и панелей оператора UniOP.

Операционная система реального времени ЭК-ОС является программным продуктом фирмы ЭМИКОН и предназначена для нормального функционирования прикладных программ написанных на языке CONT в контроллерах ЭК-2000.

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

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

- инициализация регистров процессора;

- инициализация устройства выбора кристалла;

- инициализация устройства портов ввода/вывода;

- инициализация устройства последовательного интерфейса;

- инициализация устройства таймеров/счетчиков;

- инициализация контроллера индикации-клавиатуры;

- инициализация устройства управления прерываниями;

- инициализация переменных.

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

Возникновение прерывания (аппаратного или программного) приводит к передаче управления на новый адрес. Таблица на 256 входов, содержащая адресные указатели на обработчики прерываний, находится в памяти. Каждый вход в этой таблице содержит 32-битовый адрес обработчика прерывания.

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

1.9 Прикладное программное обеспечение

В состав прикладного программного обеспечения входят:

- инструментальный программный комплекс TRACE MODE;

- интегрированная система UniOP-Designer;

- интегрированная система CONT-Designer;

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

1.9.1 Инструментальный программный комплекс TRACE MODE

TRACE MODE является программным продуктом фирмы ADASRTA и предназначен для разработки, настройки и запуска в реальном времени автоматизированных систем управления технологическими процессами. Все программы, входящие в TRACE MODE, делятся на три группы:

• инструментальная система разработки АСУ;

• система реального времени (runtime);

• вспомогательные программы.

Инструментальная система разработки АСУ включает в себя четыре редактора. В этих редакторах осуществляется разработка математической основы АСУ и графических экранных фрагментов для представления данных о состоянии автоматизируемого технологического процесса и управления им. Система разработки TRACE MODE включает в себя следующие редакторы:

• редактор базы каналов;

• редактор графических примитивов;

• редактор рисунка;

• редактор представления данных.

Кроме того, в систему разработки также входит Редактор установки МРВ. В этой программе система настраивается для запуска в реальном времени.

1.9.2 Интегрированная система UniOP-Designer

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

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

1.9.3 Интегрированная система CONT- Designer

Интегрированная система CONT-Designer разработана и реализована фирмой ЭМИКОН и предназначена для разработки прикладного программного обеспечения контроллеров серии ЭК-2000. Она включает в себя пользовательский язык программирования Turbo-CONT, библиотеку прикладных функций, набор сервисных программ, а также интегрированную среду, содержащую текстовый редактор, транслятор языка программирования и систему отладки.

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

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

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

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

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

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


1.9.4 Прикладная программа подсистемы учета готовой продукции

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

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

1) Инициализация.

2) Ядро программы.

3) Подпрограммы обработки прерываний.

4) Процедуры, вызываемые ядром программы.

Структура программы представлена на рисунке 19.

1.9.4.1 Инициализация

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


- Инициализация сетевого модуля драйвером D3C02 и разрешение прерывания от этого модуля для организации сетевого обмена.

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

- Инициализация часов драйвером D3RTC для реализации часов с реальным масштабом времени.

- Инициализация фильтров функцией INI_FTR для фильтрации значений веса.

- Инициализация буферов необходимых для выполнения процедур тарирования и юстирования.

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

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

1.9.4.2 Ядро программы

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

- Деблокирует дискретные выходы и сбрасывает флаги защиты, сигнализирующие о наличии короткого замыкания на выходе, если таковое имеются.

- Если взведен флаг установки часов, производит установку текущих даты и времени.

- Пересылает значение веса в кодах АЦП в параметр веса.

- Если флаг фильтрации взведен, пересылает фильтрованное значение веса в параметр брутто. Иначе пересылает в него параметр веса.

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

- Рассчитывает статический и динамический вес нетто в кодах АЦП и масштабирует их в реальные единицы веса.

- Проверяет наличие массы на весовом столе и выдает дискетный сигнал «конвейер пустой» при ее отсутствии.

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

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

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

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

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

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

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

- Если таймер импульса больше 0,1 секунды, включается дискретный выход импульсов. Иначе дискретный выход выключается.

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

- Иначе сбрасывается флаг часа.

- Если часы встроенных часов равны 8 и если флаг смены 1 равен нолю, значение счетчика материала за смену пересылается в регистр количества материала за предыдущую смену, обнуляется счетчик материала за смену, взводится флаг смены 1.

- Иначе сбрасывается флаг смены 1.

- Если часы встроенных часов равны 20 и если флаг смены 2 равен нолю, значение счетчика материала за смену пересылается в регистр количества материала за предыдущую смену, значение счетчика материала за сутки пересылается в регистр количества материала за предыдущие сутки, обнуляется счетчик материала за смену, обнуляется счетчик материала за сутки, взводится флаг смены 2.

- Иначе сбрасывается флаг смены 2.

- Вызов процедуры обработки счетчика за месяц если:

- месяц равен 1, а число 31

- месяц равен 2, а число 29 в високосный год или 28 в остальные

- месяц равен 3, а число 31

- месяц равен 4, а число 30

- месяц равен 5, а число 31

- месяц равен 6, а число 30

- месяц равен 7, а число 31

- месяц равен 8, а число 31

- месяц равен 9, а число 30

- месяц равен 10, а число 31

- месяц равен 11, а число 30

- месяц равен 12, а число 31

- Переход на начало выполнения ядра программы.

1.9.4.3 Подпрограммы обработки прерываний

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

1) Подпрограмма фильтрации сигналов поступающих с тензометрических датчиков. Она вызывается через интервалы времени равные 0,1 секунде. Эта подпрограмма выполняет следующие действия:

- Если параметр время фильтра больше или равен заданному, то вызывается функция фильтрации реализованная на принципе скользящего среднего. Она рассчитывает среднее значение параметра по 100 последним его значениям. Затем в параметр фильтра записывает 1.

- Иначе параметр времени фильтра увеличивает на 1.

- Перезапускается таймер фильтрации.

- Выходит из подпрограммы.

2) Подпрограмма чтения значений тахогенераторов. Она вызывается через каждую секунду и выполняет следующие действия:

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

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

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

- Выходит из подпрограммы.

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

- Помещает очередное значение тару в буфер тарирования и рассчитывает среднее значение содержимого буфера.

- Увеличивает параметр числа измерений на 1.

- Перезапускает таймер тарирования.

- Выходит из подпрограммы.

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

- Помещает очередное значение веса брутто в буфер юстирования и рассчитывает среднее значение содержимого буфера.

- Увеличивает параметр числа измерений на 1.

- Перезапускает таймер юстирования.

- Выходит из подпрограммы.

1.9.4.4 Процедуры

Ядро программы может при необходимости вызывать процедуры. Этих процедур три:

1) Процедура тарирования выполняет следующие действия:

- Если флаг статического тарирования равен 1- пересылает значение брутто в параметр тара статическая; сбрасывает флаг статического тарирования.

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

- Иначе – при числе измерений веса равном 100 запоминает значение динамической тары, запрещает прерывание по таймеру тарирования, взводит флаг конца тарирования; пока число измерений импульсов тахогенератора меньше времени оборота увеличивает параметр калибровки на число импульсов пришедших с тахогенератора, увеличивает число измерений на 1.

- Выход из процедуры.

2) Процедура юстирования выполняет следующие действия:

- Если флаг статического юстирования равен 1- вычисляет значение динамической юстировки как разность между параметром брутто и тарой статической; сбрасывает флаг статического юстирования.

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

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

- Выход из процедуры.

3) Процедура счета материала за месяц выполняет следующие действия:

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

- Иначе сбрасывается флаг месяц.

- Выход из процедуры.

1.10 Визуализация подсистемы

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

1.10.1 Визуализации на среднем уровене

Панели UniOP объединены между собой в сеть UniNET. Одна из них является «сервером» и непосредственно подключена к контроллеру. Две других панели являются «клиентами» и обмениваются данными с контроллером через панель «сервер». Внешний вид панелей приведен на рисунке 20.

1.10.1.1 Панель UniOP «сервер»

Панель UniOP «сервер» предназначена для контроля работы и настройки весов. Она оснащена светодиодным индикатором в левом верхнем углу отображающим состояние линии связи панели оператора с контроллером. Дисплей имеет 4 знакосинтезирующих строки по 20 символов в каждой. Поле клавиатуры состоит из цифровых и функциональных клавиш.

Информация о состоянии весов представлена пятнадцатью дисплейными страницами. На странице 1 отображается текущая дата и время, Рис. 21. На ее можно вернутся из любой страницы нажатием клавиши

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


F1 переход на страницу настройки весов выгрузки окатышей из печи 1, поз. 12090.1;

F2 переход на страницу настройки весов выгрузки окатышей из печи 2, поз. 12090.2;

F3 переход на страницу настройки весов выгрузки окатышей из печи 3, поз. 12090.3;

F4 переход на страницу настройки весов выгрузки окатышей из печи 4, поз. 12090.4;

F5 переход на страницу настройки весов отгрузки окатышей в ЭСПЦ, поз. 12543;

F6 переход на страницу настройки весов отгрузки окатышей в ЭСПЦ, поз. 12544;

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

F8 переход на страницу настройки весов отгрузки брикетов в ЭСПЦ, поз. 12546.

Активизация функциональных клавиш происходит после ввода пароля. Для ввода пароля необходимо нажать на цифровой клавиатуре клавишу с цифрой 6. На дисплее высветится строка запроса пароля. Пароль вводится с цифровой клавиатуры и подтверждается нажатием клавиши Enter.

Страницы 4-8 идентичны и отображают текущею информацию о работе конвейерных весов, значении счетчиков. Их внешний вид представлен страницей 4 на рисунке 23.


Страницы 10-17 также идентичны и являются настроечными страницами. Они содержат полную информацию о настройке конвейерных весов и их функционировании. Внешний вид страниц представлен на рисунке 24 страницей 10.

Значения функциональных клавиш для страниц 10…17:

F1 запуск процедуры статического тарирования;

F2 запуск процедуры динамического тарирования;

F3 запуск процедуры статического юстирования;

F4 запуск процедуры динамического юстирования;

тригерная кнопка включения выключения фильтра.

Порядок ввода значений.

1. Нажать кнопку. Появится пульсирующее поле ввода.

2 Стрелками клавиатуры выбрать нужное поле.

3 Подтвердить выбор поля нажатием клавиши Enter. Появится в поле пульсирующий курсор.

4 Ввести значение с цифровой клавиатуры и подтвердить ввод нажатием клавиши Enter.

1.10.1.2. Панели UniOP «клиенты»

Панели UniOP «клиенты» предназначены для визуализации технологического процесса взвешивания и учета.

Панель UniOP-клиент1 отображает данные по 3 и 4 печам металлизации. Данные представлены 5-ю дисплейными страницами. После включения панели в работу на дисплейный экран выводится страница 1 внешний вид которой представлен на рисунке 25.

При нажатии клавиши F1 на дисплее появляется страница 2 с изображением часовых счетчиков. При отпускании клавиши F1 возвращается изображение страницы 1. Страница 2 изображена на Рис. 26.

Аналогично клавишами F2 и F4 вызываются страницы:

3 с данными за смену;

4 с данными за сутки;

5 с данными за месяц.

Внешний вид изображения идентичен странице 2. При отпускании этих клавиши возвращается изображение страницы 1.

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

При нажатии клавиши Þ на дисплее отображается страница 7 с изображением значения технологического счетчика печи 3. Внешний вид странице 7 изображен на рисунке 27.

Назначение клавиш при работе со страницей 7:

HELP осуществляет сброс значения технологического счетчика в 0;

Ý и ß возвращают изображение первой страницы.

При нажатии клавиши Ü на дисплее отображается страница 8 с изображением значения технологического счетчика печи 4. Внешний вид изображения и назначение функциональных клавиш аналогичны странице 7.

Панель UniOP-клиент2 отображает данные по транспортировке металлизованных окатышей и брикетов в ЭСПЦ, мелочи в цех брикетирования, металлизованных окатышей на отгрузку. Данные представлены 5-ю дисплейными страницами. После включения системы в работу на дисплейный экран выводится страница 1 с производительностью конвейеров (позиции 12543 и 12544 рис.28).

Функциональные клавиши панели:

ß прокрутка строк вверх,

Ý прокрутка строк вниз,

Þ и Ü возвращают изображение первой страницы.

F1 вызывает изображение страницы 2, позиция весов 12543;

F2 вызывает изображение страницы 3 позиция весов 12544;

F3 вызывает изображение страницы 4 позиция весов 12545;

F4 вызывает изображение страницы 5 позиция весов 12546.

Внешний вид страниц 2 и 3 изображен на рисунке 29, а 4 и 5 на рисунке 30.

1.10.2. Визуализации на верхнем уровен

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

Экраны визуализации и управления имеют ряд идентичных полей и кнопок управления. В верхней части экрана находится 22 динамических поля сигнализации отображающих состояние основных агрегатов установки металлизации. Эти поля необходимы для оперативного отображения аварийных ситуаций на агрегатах установки металлизации в тот момент, когда оператор наблюдает за работой конвейерных весов. В нормальном состоянии агрегата поля окрашены в четный цвет и никак не выделяются. При возникновении предаварийной ситуации поле соответствующего агрегата окрашивается в желтый цвет, а аварийной в красный. Нажатие левой клавиши мыши в момент нахождения ее курсора в этом поле приводит к выводу всплывающего окна со списком позиций всех измеряемых параметров агрегата. Аварийные и предаварийные параметры в этом списке будут окрашены в соответствующий цвет. В случае ложного срабатывания или ликвидации аварийной ситуации сигнализация может быть квитирована нажатием кнопок «А» для аварийной и «W» предупредительной сигнализации. Кнопки квитирования находятся в левом нижнем углу экрана. Здесь же находятся кнопки перехода на 4 основных экрана, экранам архивов и трендов системы визуализации, а также значение текущей даты и времени. В левом верхнем углу экрана находятся кнопки перехода другие экраны конвейерных весов. В верхней половине экрана находится поле с графиком производительности конвейера. График отображает 5 часов работы конвейера, но на экране видны только 2 часа. Остальное изображение графика можно просмотреть с помощью полосы прокрутки находящейся под графиком. Там же находится поле с датой, временем и значением производительности, на которые указывает визир графика.

Остальная часть экрана отличается в зависимости от экрана конвейерных весов. Конвейерные весы по выгрузке металлизованного окатыша из печи (поз. 12090.1-12090.4) отображаются четырьмя экранами, внешний вид которых представлен на рисунке 31. В нижней половине экрана отображается несколько групп параметров:

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

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

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

- текущая производительность конвейера;

- период и частота качания элементов разгрузочного устройства производящего выгрузку окатыша из печи и укладку его на ленту.

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

Конвейерные весы по транспортировке металлизованного окатыша на ЭСПЦ и Отгрузку (поз. 12543, 12544) отображаются 2 экранами, внешний вид которых приведен на рисунке 33. В нижней половине экрана отображается:

- текущие значения счетчиков массы отгруженного окатыша на ЭСПЦ и Отгрузку за час, смену, сутки, месяц;

- предыдущие их значения;

- текущая производительность конвейера;

Конвейерные весы по транспортировке металлизованного окатыша в цех брикетирования и брикетов в ЭСПЦ (поз. 12545, 12546) отображаются 2 экранами, внешний вид которых приведен на рисунке 34. В нижней половине экрана отображается:

- текущие значения счетчиков массы отгруженного окатыша в цех брикетирования и брикетов в ЭСПЦ за час, смену, сутки, месяц;

- предыдущие их значения;

- текущая производительность конвейера;


Экран визуализации весов Поз. 12090.1


Всплывающее окно часовых значений


Экран визуализации весов Поз. 12543


Экран визуализации весов Поз. 12545

Рис.34



Экран архивных графиков аналогичен экранам трендов реального времени. Исключением являются: кнопка перехода на экран «Тревоги» и форма архивного тренда (Рис. 35).

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

Чтобы переключить шкалу тренда, нужно в режиме реального времени нажать ЛК на кнопке «Подробно», затем в открывшемся окне выделить кривую. Шкала этой кривой будет установлена для тренда. Вид этого окна показан на рисунке 36.


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

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

Чтобы закрыть это окно, достаточно отжать кнопку «Подробно» или нажать на кнопку закрытия окна.

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



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

Для более точной установки визира можно изменить масштаб тренда. Изменение масштаба тренда реализуется по одновременному нажатию клавиш «Ctrl» и одной из стрелок (← и → для горизонтальной, ↑ и ↓ для вертикальной оси соответственно). Клавиши ← и ↑ увеличивают масштаб, а → и ↓ – уменьшают. Значение, на которое указывает визир, отображается в поле под кнопкой «Подробно».

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

Кроме того, в этом списке содержатся команды «Переход на время» и «Свойства». Команда Свойства выводит на экран диалог настройки тренда. Вторая команда позволяет перейти к области графика, в котором находятся значения в заданный период времени. При ее выполнении появляется окно выбора, приведенное на рисунке 38.

Чтобы добавить новую кривую, следует нажать кнопку «Добавить». Последующие нажатия на эту кнопку будут выводить в список кривые с теми же самыми атрибутами. Для редактирования атрибутов любой кривой ее нужно сначала выделить в списке.

Для редактирования атрибутов сразу нескольких кривых следует нажать ЛК на кнопке «Групповое редактирование». Далее, удерживая нажатой клавишу Shift, надо выделить требуемые кривые и сделать необходимые настройки.

Для каждой кривой с помощью полей «Min» и «Max» можно задать диапазон вывода ее значений. Этот диапазон можно также привязать к шкале канала, с которым связана данная кривая. Для этого надо установить флаг «Использовать шкалу». В последнем случае при работе в реальном времени диапазон вывода значений для этой кривой будет автоматически модифицироваться при изменении границ шкалы канала.


Выбор даты производится из меню, которое раскрывается при нажатии на стрелку рядом с левым окном. Чтобы установить время, нужно последовательно выделить каждое поле времени в правом окне и ввести требуемое значение с помощью клавиатуры или стрелок (Рис. 39).

1.11. Настройка весов

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

- Биение роликов не должно превышать 0,2 мм.

- Рекомендуется поднять роликоопоры и ролики весового стола на 5 – 10 мм по отношению к остальным роликам конвейера.

- Разброс по высоте установки роликоопор не должен превышать 0,3 мм.

- Роликоопоры должны быть соосны.

Каждые полгода требуется тщательно проверять ленточный конвейер и весы. Перед настройкой весов требуется выполнить следующие работы:

- Очистка весового моста и роликоопор, входящих в зону влияния.

- Проверка плавности хода и очистка роликов.

- Проверка соосности.

- Проверка устройства натяжения ленты.

Порядок настройки весов:

1) Проверить подготовку весов к настройке.

2) Произвести измерение длины ленты с точностью до сантиметра и длины моста с точностью до сантиметра.

3) Запустить конвейер

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

5) Ввести пароль доступа к страницам настройки в панели UniOP.

6) Перейти с помощью клавиш F1…F8 к странице настройки соответствующих весов.

7) Ввести измеренные значения.

8) Нажать клавишу F2 – динамическое тарирование.

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

9) Установить контрольные грузы для юстировки на весовой стол.

10) Ввести значение веса контрольного груза.

11) Нажать клавишу F4 для запуска режима динамического юстирования.

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

12) Нажать клавишу для выхода из страницы настройки.

13) Ввести пароль запрета доступа к страницам настройки.

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

1.12. Дальнейшее развитие подсистемы

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


2. ОХРАНА ТРУДА

2.1. Основные понятия и термины

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

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

Производственная опасность – это возможность воздействия на работающих опасных и вредных факторов.

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

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

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

2.2 Общие положения

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

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

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

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

Внеплановый инструктаж рабочих должен проводиться в случаях:

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

- нарушения рабочими инструкций по безопасности труда;

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

- перерыва в работе более 30 календарных дней.

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

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

Правила безопасности работы в цехе:

- соблюдать инструкции по безопасности труда;

- проходить по цеху только по установленным проходам и пешеходным дорожкам;

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

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

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

- в цехах, на участках, рабочих местах находиться в защитной каске;

- работать исправным инструментом, использовать его по своему назначению;

- работать на исправном оборудовании, не допускать к работе на механизмах посторонних лиц;

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

2.3 Характеристика степени совершенствования технологического процесса

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

2.4 Характеристика выбросов цеха металлизации

После ввода в действие цеха металлизации его установки газоочистки работают удовлетворительно. Пыль в атмосферу попадает с дымовыми газами и с аспирационным газом от скруббера с радиальной подачей воды, очищающего газы из разгрузочного устройства шахтной печи. Благодаря хорошей работе скруббера колошникового газа запыленность последнего снижается с 1,7 г/м3 до 4 мг/м3 и выбросы пыли в атмосферу из дымовой трубы составляют ~10 кг/сут.

В скруббере с радиальной подачей воды аспирационный газ очищается от 12 ¸ 13 г/м3 до 70 ¸ 80 мг/м3 и выбросы пыли в атмосферу составляют ~120 кг/сут. Всю уловленную пыль (~25 т/сут) подают в сгуститель отделения окомкования и используют для производства окисленных окатышей. Кроме пыли, в отделении металлизации выбрасывается в атмосферу в сутки до 600 кг оксида углерода и 350 кг оксидов азота. Анализ дымовых газов показал очень малое содержание в них сернистых соединений.

2.5 Анализ потенциально опасных и вредных производственных факторов

Опасные и вредные производственные факторы – это факторы, воздействие которых на работающих в условиях производства приводит к травме или заболеванию.

К опасным и вредным факторам в местах где установлены конвейерные весы в соответствии с ГОСТ 12.0.003 – 74 относятся:

- загазованность;

- запыленность;

- движущиеся и вращающиеся части механизмов оборудования;

2.5.1 Загазованность

В реформере из смеси технологического и природного газов производится конвертированный газ, который используется в шахтной печи для восстановления оксидов железа. Во всех вышеперечисленных газах присутствуют такие компоненты: метан (СН4 ), диоксид углерода (СО2 ), водород (Н2 ), оксид углерода (СО), азот (N2 ), вода (Н2 О) и кислород (О2 ). Также в дымовых газах присутствуют окислы азота (NО2 ) и незначительное содержание сернистых соединений (SО2 и SО3 ).

Наибольшую опасность представляют такие газообразные компоненты как: метан, водород, оксид азота и оксид углерода.

Метан (~94 %) содержится в природном газе, который применяется как для производства восстановительного газа, так и для отопления реформера.

Природный газ не имеет запаха, цвета, вкуса, легче воздуха в 1,72 раза. При взаимодействии с кислородом образует взрывоопасные смеси. На человека действует удушающе. Содержание природного газа свыше 10 % в замкнутом пространстве может привести к смерти от недостатка воздуха. Для придания запаха в природный газ добавляют этилмеркаптан 16 г на 1000 м3 .

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

Диоксид азота при обычной температуре и большой концентрации – это пары красно-бурого цвета, которые образуются при окислении NО. NО2 хорошо растворяется в воде с образованием азотной кислоты (НNО3 ), которая обладает резким удушливым запахом. ПДК разовая и среднесуточная равна 0,085 мг/м3 .

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

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

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

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

2.5.2 Запыленность

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

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

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

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


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

Для очистки аспирационного воздуха от пыли используются мокрые пылеотделители – центробежные скрубберы. Степень очистки воздуха достигается очень высокая: от 87,5 до 97,38 %.

2.5.3 Движущиеся и вращающиеся части механизмов оборудования

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

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

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

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

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

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

2.6 Общие требования безопасности к ленточным конвейерам

Конструкция и размещение конвейерного тракта должны соответствовать требованиям ГОСТ 12.2.022-80.

Конвейер, транспортирующий пылевидные, пыле-, паро-, и газо-выделяющие материалы должны быть оборудованы системами пылеподавления в местах выделения пыли, вытяжной вентиляцией или аспирацией в зависимости от вида выделяющихся веществ. Рабочая ветвь конвейера, расположенного в наклонной галерее, при угле наклона 6° и более должна быть ограждена со стороны прохода. По ширине прохода вдоль трассы конвейеров при угле наклона 6 -12° должны быть устроены настилы с поперечинами, а при наклоне более 12° - лестничные марши. При расположении нерабочей ветви конвейера на высоте 0,7 м и более от уровня пола вдоль нижней ветви конвейера в местах, где не предусмотрены проходы, должно устанавливаться ограждение с обеих сторон конвейера, исключающее возможность похода под ним. Через конвейеры длинной более 20,0 м в необходимых местах должны быть устроены переходные мостики или проходы под ними.

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

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

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

Ленточные конвейеры должны быть оборудованы:

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

- устройствами, отключающими привод конвейера при обрыве ленты или при ее пробуксовке;

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

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

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

2.7 Требования к персоналу по обслуживанию подсистемы учета

2.7.1 Общие требования безопасности

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

Слесарь КИП и А обязан соблюдать:

- Правила внутреннего распорядка установленного на комбинате

- Требования по выполнению режима труда установленного графиками рабочего времени

- Требования по обеспечению пожаро- и взрывобезопасности.

- Правила об оказании первой (доврачебной) помощи.

- Правила личной гигиены при выполнении работы.

Слесарь КИП и А должен знать:

- Правила эксплуатации электроустановок потребителей (ПЭЭП), правила техники безопасности при эксплуатации электроустановок потребителей (ПТБ).

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

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

- Правила ТБ для работающих на ОЭМК согласно "Общей инструкции для рабочих и служащих".

- Свои обязанности регламентированные положением о системе управления охраной труда на ОЭМК.

- Правила пожарной безопасности и соблюдать их.

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

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

- Маршруты пешеходного движения по цеху и объектам участка.

- Инструкции по эксплуатации оборудования.

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

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

2.7.2 Требования безопасности при проведении работ

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

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

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

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

Замену СИ и СА расположенных в труднодоступных местах, в местах с повышенной температурой, в газоопасных местах производить не менее, чем двумя слесарями КИП и А или под надзором дежурного газовщика. При замерзании импульсных линий запорной арматуры отогревать их разрешается только паром или горячей водой. Применение для отогрева костров, факелов, паяльных ламп и других источников открытого огня запрещается.

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

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

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

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

2.7.3 Требования безопасности в аварийных ситуациях

При возникновении аварийной ситуации на оборудовании цеха или в электроустановке слесарь КИП и А должен сообщить начальнику смены или оператору; при пожаре - в пожарную часть и приступить к ликвидации аварийной ситуации или тушению пожара.

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

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

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

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

2.8 Расчет искусственного освещения

Для обеспечения освещенности помещения автоматики, где установлен контроллер с панелью оператора, согласно существующим нормам произведем расчет равномерного искусственного освещения для помещения размером 30 15 5 м, в котором наименьшая освещенность должна быть равной 200 лк (см. ГОСТ 12.1.046 - 85).

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

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

(9)

где: А - освещаемая площадь, м2 ;

z - коэффициент минимальной освещенности (при освещении линиями люминесцентных светильников z=1,1);

η- коэффициент использования светильников, определяемый по индексу помещения I и коэффициентам отражения потолка ρп , стен ρс , пола ρр ;

N - количество светильников.

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

(10)

где: а и b - длина и ширина помещения, м;

H - высота помещения, м;

hс - высота от светильника до потолка, м;

hг - высота до освещаемой горизонтальной поверхности от пола, м.

Так как будут применяться лампы ЛЛ, то для них k = 1,5, z = 1,1. Ориентировочно можно принять ρп = 30%; ρс = 10%; ρр = 10%. hc = 2,0 м; hг = 1,2м.

Индекс помещения по формуле (10) равен

Тогда по таблице значений коэффициента использования светильников = 32 %. Необходимый источник света найдем по формуле (9)

Люминесцентная лампа ЛБ34 имеет световой поток 5400 лм и мощность 80Вт. Следовательно, для обеспечения требуемой освещенности требуется иметь в помещении 86 ламп этого типа.

2.9 Вывод

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

Произведенный расчет освещенности помещения показывает, что для освещения этого помещения требуется 86 ламп типа ЛБ34 с мощностью 80 Вт.


3. ОРГАНИЗАЦИОННО – ЭКОНОМИЧЕСКАЯ ЧАСТЬ

3.1Организационная структура участка технологической автоматизации цеха металлизации

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


Начальником участка осуществляется:

- руководство всеми видами деятельности участка;

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

- обеспечение выполнения участком установленных количественных и качественных показателей.

Старшим мастером и инженером электроникам осуществляется:

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

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

- участие в расследовании причин аварий оборудования;

- обеспечение выполнения требований и правил эксплуатации электроустановок.

Складом осуществляется:

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

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

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

Оперативным и оперативно-ремонтным персоналом осуществляется:

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

- сохранность и аккуратное ведение оперативно-технической документации;

- обслуживание и ремонт оборудования

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

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

Таблица 7

Расчет фонда оплаты труда

Должность

Разряд

Тариф

(руб/ч)

Среднемесячный фонд времени

Премия

(%)

Оплата (руб)

за месяц

за год

Слесарь КИП и А

6

8,47

166,25

110

2957,08

35484,96

Слесарь КИП и А

5

7,29

166,25

110

2545,12

30541,44

Фонд оплаты труда: 66026,4

3.2 Оценка экономической эффективности

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

Продолжительность настройки весов составляет в среднем t=2,7 часа. С учетом капитального и планово-предупредительных ремонтов вынужденные простои составляют:

Tп = t • n = 2,7 • (52 - 11 - 4) = 96,2 часов в год. (11)

По показателям работы цеха металлизации за 1999 год средняя производительность печей составила Qс =228,6 т/ч и было произведено Vc =1787000 тон металлизованного окатыша. Следовательно, потери на вынужденных простоях по весам составляют около

Vп = 96,2 • 228,6 = 21991,32 тон за год. (12)

Внедрение подсистемы позволило бы произвести около

Vн = Vс + Vп = 1787000 + 21991,32 = 1808991,32 тон (13)

металлизованных окатышей.

Калькуляция себестоимости 1 т металлизованных окатышей до и после внедрения приведена в таблице 8.

Таблица 8

Калькуляция себестоимости 1 т металлизованных окатышей

Статьи затрат

до внедрения

после внедрения

Цена руб.

Кол-во, т

Сумма

руб.

кол-во,

т

сумма

руб.

1. Сырье и основные материалы:

- окисленные окатыши

200,04

1,382

276,46

1,382

276,46

- металлосодержащие отходы

67,0

0,012

0,8

0,012

0,8

- подготовка отходов

6,71

-

-

-

-

ИТОГО

-

1,394

277,26

1,394

277,26

2. Отходы (минус)

-

0,394

-1,84

0,394

-1,84

3. Вспомогательные материалы

-

-

2,41

-

2,39

4. Топливо технологическое:

- газ природный 1000 куб. м

-

-

71,9

-

71,9

5. Расходы по переделу:

-

-

87,84

-

87,2

Цеховая себестоимость

-

-

437,6

-

436,91

Общезаводские расходы

-

-

18,45

-

18,23

Производственная себестоимость

-

-

456,02

-

455,14

Стоимость выбранного в разделе (1.7.1.) оборудования равна 6203 $, что при текущем курсе рубля составляет:

К = 6203 • 28,34 = 175793,02 рубя. (14)

Производственные затраты:

Пз н +Е •К / Vн =455,14 +0,15 •175793,02 /1808991,32 =455,15 руб/т(15)

где: Сн – производственная себестоимость.

Эффективность внедрения:

Э = Сс – Пз = 456,02 - 455,15 = 0,87 руб/т (16)

где: Сс – производственная себестоимость до внедрения.

Годовой экономический эффект:

Эг = Э • Vн = 0,87 • 1808991,32 = 1573822,45 руб (17)

3.3 Вывод

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

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


ЗАКЛЮЧЕНИЕ

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

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

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

Произведен выбор комплекса технических средств подсистемы, в который вошли контроллер ЭК-2000 фирмы ЭМИКОН, панели оператора UniOP фирмы EXOR ELECTRONIC.

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

Написана программа учета готовой продукции на языке Turbo-CONT для контроллера ЭК-2000.

Разработаны и сконфигурированы программы визуализации и управления для панелей оператора UniOP.

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

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

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

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

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


Список используемой литературы

1. Еременко Ю.И. “Методические указания по дипломному проектированию для студентов дневной и вечерней форм обучения специальности «Автоматизация технологических процессов и производств»” Ст. Оскол МИСиС 1999г.

2. Тиц Ю.В. Лившиц В.И. Плахтин В.Д. “Конвейерный транспорт металлургических заводов” МОСКВА «Металлургия» 1975г.

3. Зенков Р.Л. Ивашков И.И. Колобов Л.Н “Машины непрерывного транспорта” МОСКВА «Машиностроение» 1987г.

4. “Техническая документация на конвейерные весы 4-НММ-20951” фирмы CARL SCHENCK AG

5. “Техническая документация на конвейерные весы 0-НММ-16106” фирмы CARL SCHENCK AG

6. “Техническая документация на конвейерные весы 1-НММ-12013” фирмы CARL SCHENCK AG

7. Коновалов Л.И. Петелин Д.П. “Элементы и системы автоматики” МОСКВА «Высшая школа» 1985г.

8. Мясников В.А. Вальков В.М. Омельченко И.С. “Автоматизированные и автоматические системы управления технологическими процессами” МОСКВА «Машиностроение» 1978г.

9. Клюев А.С. Глазов Б.В. Дубровский А.Х. “Проектирование систем автоматизации технологических процессов” Справочное пособие МОСКВА «Энергия» 1980г.

10. ГОСТ 29329-92 “Весы для статического взвешивания. Общие технические требования” Госстандарт РОССИЯ 1992г.

11. ГОСТ 8.005-82 “Весы непрерывного действия. Методы и средства поверки” Гос. Ком. СССР по стандартам МОСКВА 1982г.

12. ГОСТ 15077-78 “Датчики силоизмерительные тензорезисторные. Общие технические условия” Гос. Ком. СССР по стандартам МОСКВА 1978г.

13. ГОСТ 16217-83 “Датчики силы тензорезисторные. Термины и определения” Гос. Ком. СССР по стандартам МОСКВА 1983г.

14. “Правила технической эксплуатации ленточных конвейеров на предприятиях черной металлургии” МОСКВА «Металлургия» 1987г.

15. “Должностная инструкция для слесаря КИП и А участка ТА цеха металлизации” УАМ ОЭМК 1999г.

16. Иванов И.М. Бельгольский Б.П. Соломахин И.С. “Технико-экономические расчеты по организации, планированию и управлению металлургическими предприятиями” МОСКВА «Металлургия» 1993г.

17. ГОСТ 7.32-91 “Отчет о научно-исследовательской работе. Общие требования и правила оформления” Госстандарт РОССИЯ 1991г.


Приложение

“”””””””””””” ПРОГРАММА ПОДСИСТЕМЫ УЧЕТА ГОТОВОЙ ПРОДУКЦИ ”””””””””””””

БИБЛИОТЕКА (LIB\VES.LIB);

БИБЛИОТЕКА (LIB\VESMATH.LIB);

"Инициализация"

ВЫЧИСЛИТЬ (CR) (+) (1) (CR);

"""""""""""""""""""""""ИНИЦИАЛИЗАЦИЯ СЕТEВОГО МОДУЛЯ""""""""""""""""""""""""

ДРАЙВЕР (D3C02);

РАЗРЕШИТЬ (0);

""""""""""""""""ИНИЦИАЛИЗАЦИЯ МОДУЛЯ СЧЕТЧИКОВ ТАХОГЕНЕРАТОРОВ""""""""""""""

ФУНКЦИЯ (FINIQC01), входные параметры (2);

""""""""""""""""""""ИНИЦИАЛИЗАЦИЯ МОДУЛЯ СЧЕТЧИКОВ ВЕСА"""""""""""""""""""""

ДРАЙВЕР (DQC01_A) (3,0,30);

РАЗРЕШИТЬ (3);

""""""""""""""""""""""""""""""ИНИЦИАЛИЗАЦИЯ ЧАСОВ"""""""""""""""""""""""""""

ДРАЙВЕР (D3RTC), (220);

ФУНКЦИЯ (FINTRTC), входные параметры (1);

"""""""""""""""""""""ИНИЦИАЛИЗАЦИЯ ВРЕМЕНИ ФИЛЬТРОВ"""""""""""""""""""""""""

ПЕРЕСЛАТЬ значение (10) в (ВРЕМ_ФИЛ);

ПЕРЕСЛАТЬ значение (10) в (ВРЕМ_12090_1);

ПЕРЕСЛАТЬ значение (10) в (ВРЕМ_12090_2);

ПЕРЕСЛАТЬ значение (10) в (ВРЕМ_12090_3);

ПЕРЕСЛАТЬ значение (10) в (ВРЕМ_12090_4);

ПЕРЕСЛАТЬ значение (10) в (ВРЕМ_12543);

ПЕРЕСЛАТЬ значение (10) в (ВРЕМ_12544);

ПЕРЕСЛАТЬ значение (10) в (ВРЕМ_12_1);

ПЕРЕСЛАТЬ значение (10) в (ВРЕМ_12_2);

ПЕРЕСЛАТЬ значение (10) в (ФЛ_СЧ_ЧТ);

ПЕРЕСЛАТЬ значение (1) в (Q);

СБРОСИТЬ флаг (ДИН_ТАР);

СБРОСИТЬ флаг (ДИН_ЮСТ);

ПЕРЕСЛАТЬ значение (0) в (ФЛАГИ_ТАР);

ПЕРЕСЛАТЬ значение (0) в (ФЛАГИ_ЮСТ);

ПЕРЕСЛАТЬ значение (255) в (КОНЕЦ_ТАР);

"""""""""""""""""""""""""ИНИЦИАЛИЗАЦИЯ ФИЛЬТРА""""""""""""""""""""""""""""""

ФУНКЦИЯ (INIT_FTR),

входные параметры (100),

выходные параметры ( НАЧ_БУФ_12090_1, СОСТ_12090_1 );

ФУНКЦИЯ (INIT_FTR),

входные параметры (100),

выходные параметры ( НАЧ_БУФ_12090_2, СОСТ_12090_2 );

ФУНКЦИЯ (INIT_FTR),

входные параметры (100),

выходные параметры ( НАЧ_БУФ_12090_3, СОСТ_12090_3 );

ФУНКЦИЯ (INIT_FTR),

входные параметры (100),

выходные параметры ( НАЧ_БУФ_12090_4, СОСТ_12090_4 );

ФУНКЦИЯ (INIT_FTR),

входные параметры (100),

выходные параметры ( НАЧ_БУФ_12543, СОСТ_12543 );

ФУНКЦИЯ (INIT_FTR),

входные параметры (100),

выходные параметры ( НАЧ_БУФ_12544, СОСТ_12544 );

ФУНКЦИЯ (INIT_FTR),

входные параметры (100),

выходные параметры ( НАЧ_БУФ_12_1, СОСТ_12_1 );

ФУНКЦИЯ (INIT_FTR),

входные параметры (100),

выходные параметры ( НАЧ_БУФ_12_2, СОСТ_12_2 );

"""""""""""""""ИНИЦИАЛИЗАЦИЯ БУФЕРА ДИНАМИЧЕСКОГО ТАРИРОВАНИЯ""""""""""""""""

ФУНКЦИЯ (INIT_FTR),

входные параметры (100),

выходные параметры ( НАЧ_БУФ_ТАР, СОСТ_ТАР );

"""""""""""""""ИНИЦИАЛИЗАЦИЯ БУФЕРА ДИНАМИЧЕСКОЙ ЮСТИРОВКИ"""""""""""""""""""

ФУНКЦИЯ (INIT_FTR),

входные параметры (100),

выходные параметры ( НАЧ_БУФ_ЮСТ, СОСТ_ЮСТ );

"""""""""""""ИНИЦИАЛИЗАЦИЯ ПРЕРЫВАНИЯ ПО ТАЙМЕРУ ФИЛЬТРА МЕСДОЗ""""""""""""""

ЗАГРУЗИТЬ таймер (ТАЙМ_ФИЛ) уставкой (ВРЕМ_ФИЛ), режим (0);

СТАРТ таймер (ТАЙМ_ФИЛ);

ПРЕРЫВАНИЕ с номером (23) подпрограммой (ФИЛ_МЕСДОЗ),

если (ТАЙМ_ФИЛ@) (=) (0);

РАЗРЕШИТЬ (23);

"""""""ИНИЦИАЛИЗАЦИЯ ПРЕРЫВАНИЯ ПО ТАЙМЕРУ ДИНАМИЧЕСКОГО ТАРИРОВАНИЯ""""""""

ПРЕРЫВАНИЕ с номером (22) подпрограммой (ДИНАМ_ТАР),

если (@ТАЙМ_ТАР@) (=) (1);

"""""""ИНИЦИАЛИЗАЦИЯ ПРЕРЫВАНИЯ ПО ТАЙМЕРУ ДИНАМИЧЕСКОЙ ЮСТИРОВКИ"""""""""""

ПРЕРЫВАНИЕ с номером (21) подпрограммой (ДИНАМ_ЮСТ),

если (@ТАЙМ_ЮСТ@) (=) (1);

"""""""ИНИЦИАЛИЗАЦИЯ ПРЕРЫВАНИЯ ПО ТАЙМЕРУ ЧТЕНИЯ ТАХОГЕНИРАТОРОВ"""""""""""

ЗАГРУЗИТЬ таймер (ТАЙМ_ТАХ) уставкой (100), режим (0);

СТАРТ таймер (ТАЙМ_ТАХ);

ПРЕРЫВАНИЕ с номером (16) подпрограммой (ЧТ_ТАХ),

если (@ТАЙМ_ТАХ@) (=) (1);

РАЗРЕШИТЬ (16);

"""""""ИНИЦИАЛИЗАЦИЯ ТАЙМЕРОВ ДИСКРЕТНЫХ ВЫХОДОВ""""""""""""""""""""""""""""

ЗАГРУЗИТЬ таймер (ТАЙМ_ИМП_12090_1) уставкой (20), режим (0);

ЗАГРУЗИТЬ таймер (ТАЙМ_ИМП_12090_2) уставкой (20), режим (0);

ЗАГРУЗИТЬ таймер (ТАЙМ_ИМП_12090_3) уставкой (20), режим (0);

ЗАГРУЗИТЬ таймер (ТАЙМ_ИМП_12090_4) уставкой (20), режим (0);

ЗАГРУЗИТЬ таймер (ТАЙМ_ИМП_12543) уставкой (40), режим (0);

ЗАГРУЗИТЬ таймер (ТАЙМ_ИМП_12543_1) уставкой (20), режим (0);

ЗАГРУЗИТЬ таймер (ТАЙМ_ИМП_12543_2) уставкой (20), режим (0);

ЗАГРУЗИТЬ таймер (ТАЙМ_ИМП_12544) уставкой (40), режим (0);

ЗАГРУЗИТЬ таймер (ТАЙМ_ИМП_12544_1) уставкой (20), режим (0);

ЗАГРУЗИТЬ таймер (ТАЙМ_ИМП_12544_2) уставкой (20), режим (0);

ЗАГРУЗИТЬ таймер (ТАЙМ_ИМП_12_1) уставкой (20), режим (0);

ЗАГРУЗИТЬ таймер (ТАЙМ_ИМП_12_2) уставкой (20), режим (0);

СТАРТ таймер (ТАЙМ_ИМП_12090_1);

СТАРТ таймер (ТАЙМ_ИМП_12090_2);

СТАРТ таймер (ТАЙМ_ИМП_12090_3);

СТАРТ таймер (ТАЙМ_ИМП_12090_4);

СТАРТ таймер (ТАЙМ_ИМП_12543);

СТАРТ таймер (ТАЙМ_ИМП_12543_1);

СТАРТ таймер (ТАЙМ_ИМП_12543_2);

СТАРТ таймер (ТАЙМ_ИМП_12544);

СТАРТ таймер (ТАЙМ_ИМП_12544_1);

СТАРТ таймер (ТАЙМ_ИМП_12544_2);

СТАРТ таймер (ТАЙМ_ИМП_12_1);

СТАРТ таймер (ТАЙМ_ИМП_12_2);

ОЖИДАТЬ (300) интервалов;

"""""""""""""""""""""""""""""""НАЧАЛО ПРОГРАММЫ"""""""""""""""""""""""""""""

[НАЧАЛО]

ДЕБЛОКИРОВАТЬ;

ПЕРЕСЛАТЬ (0) в (ЗАЩИТА);

ЗАГРУЗИТЬ таймер (ТАЙМЕР) уставкой (100), режим (0);

СТАРТ таймер (ТАЙМЕР);

"""""""""""""""""""""""""""""""" УСТАНОВКА ЧАСОВ """"""""""""""""""""""""""""

ЕСЛИ (Q) (=) (1), то {

ЕСЛИ (F1) (=) (1), то {

СБРОСИТЬ флаг (F2);

ИДТИ на метку (A1);

} ИНАЧЕ {ВЗВЕСТИ флаг (F1);

СБРОСИТЬ флаг (F2);

ФУНКЦИЯ (FSETRTC), входные параметры (СЕК,МИН,ЧАС,

ЧИСЛ,МЕС,ГОД);

ФУНКЦИЯ (FINTRTC), входные параметры (Q);}}

ИНАЧЕ { ЕСЛИ (F2) (=) (1), то {

СБРОСИТЬ флаг (F1);

ИДТИ на метку (A1);

} ИНАЧЕ {ВЗВЕСТИ флаг (F2);

СБРОСИТЬ флаг (F1);

ФУНКЦИЯ (FINTRTC), входные параметры (Q);}}

[A1]

""""""""""""""""""""""" ЧТЕНИЕ ЗНАЧЕНИЙ МЕСДОЗ """""""""""""""""""""""""""""

ПЕРЕСЛАТЬ значение (ДАТЧИК_12090_1) в (МЕСДОЗА_12090_1);

ПЕРЕСЛАТЬ значение (ДАТЧИК_12090_2) в (МЕСДОЗА_12090_2);

ПЕРЕСЛАТЬ значение (ДАТЧИК_12090_3) в (МЕСДОЗА_12090_3);

ПЕРЕСЛАТЬ значение (ДАТЧИК_12090_4) в (МЕСДОЗА_12090_4);

ПЕРЕСЛАТЬ значение (ДАТЧИК_12543) в (МЕСДОЗА_12543);

ПЕРЕСЛАТЬ значение (ДАТЧИК_12544) в (МЕСДОЗА_12544);

ПЕРЕСЛАТЬ значение (ДАТЧИК_12_1) в (МЕСДОЗА_12_1);

ПЕРЕСЛАТЬ значение (ДАТЧИК_12_2) в (МЕСДОЗА_12_2);

""""""""""""""""""""""""""""""УПРАВЛЕНИЕ ФИЛЬТРАМИ""""""""""""""""""""""""""

ЕСЛИ (ВКЛ_ФИЛ_12090_1) (=) (1), то {

ПЕРЕСЛАТЬ значение (ФИЛ_12090_1) в (БРУТТО_12090_1);

}

ИНАЧЕ {

ПЕРЕСЛАТЬ значение (МЕСДОЗА_12090_1) в (БРУТТО_12090_1);

}

ЕСЛИ (ВКЛ_ФИЛ_12090_2) (=) (1), то {

ПЕРЕСЛАТЬ значение (ФИЛ_12090_2) в (БРУТТО_12090_2);

}

ИНАЧЕ {

ПЕРЕСЛАТЬ значение (МЕСДОЗА_12090_2) в (БРУТТО_12090_2);

}

ЕСЛИ (ВКЛ_ФИЛ_12090_3) (=) (1), то {

ПЕРЕСЛАТЬ значение (ФИЛ_12090_3) в (БРУТТО_12090_3);

}

ИНАЧЕ {

ПЕРЕСЛАТЬ значение (МЕСДОЗА_12090_3) в (БРУТТО_12090_3);

}

ЕСЛИ (ВКЛ_ФИЛ_12090_4) (=) (1), то {

ПЕРЕСЛАТЬ значение (ФИЛ_12090_4) в (БРУТТО_12090_4);

}

ИНАЧЕ {

ПЕРЕСЛАТЬ значение (МЕСДОЗА_12090_4) в (БРУТТО_12090_4);

}

ЕСЛИ (ВКЛ_ФИЛ_12543) (=) (1), то {

ПЕРЕСЛАТЬ значение (ФИЛ_12543) в (БРУТТО_12543);

}

ИНАЧЕ {

ПЕРЕСЛАТЬ значение (МЕСДОЗА_12543) в (БРУТТО_12543);

}

ЕСЛИ (ВКЛ_ФИЛ_12544) (=) (1), то {

ПЕРЕСЛАТЬ значение (ФИЛ_12544) в (БРУТТО_12544);

}

ИНАЧЕ {

ПЕРЕСЛАТЬ значение (МЕСДОЗА_12544) в (БРУТТО_12544);

}

ЕСЛИ (ВКЛ_ФИЛ_12_1) (=) (1), то {

ПЕРЕСЛАТЬ значение (ФИЛ_12_1) в (БРУТТО_12_1);

}

ИНАЧЕ {

ПЕРЕСЛАТЬ значение (МЕСДОЗА_12_1) в (БРУТТО_12_1);

}

ЕСЛИ (ВКЛ_ФИЛ_12_2) (=) (1), то {

ПЕРЕСЛАТЬ значение (ФИЛ_12_2) в (БРУТТО_12_2);

}

ИНАЧЕ {

ПЕРЕСЛАТЬ значение (МЕСДОЗА_12_2) в (БРУТТО_12_2);

}

"""""""""""""""""""""""""ТАРИРОВАНИЕ"""""""""""""""""""""""""""

ЕСЛИ (ФЛАГИ_ТАР) (#) (0), то {

ВЫЗВАТЬ процедуру (ТАРИРОВАНИЕ);

}

"""""""""""""""""""""""""ЮСТИРОВАНИЕ"""""""""""""""""""""""""""

ЕСЛИ (ФЛАГИ_ЮСТ) (#) (0), то {

ВЫЗВАТЬ процедуру (ЮСТИРОВКА);

}

"""""""""""""""""""""""""""""""""РАСЧЕТ ВЕСА """"""""""""""""""""""""""""""

"""""""""""""""""""""""""""""""""РАСЧЕТ ВЕСА 12090_1"""""""""""""""""""""""

ВЫЧИСЛИТЬ (БРУТТО_12090_1) (-) (ТАРА_СТАТ_12090_1) (НЕТТО_СТАТ_12090_1);

ФУНКЦИЯ (FZOOM), вх (НЕТТО_СТАТ_12090_1,ЮСТ_ВЕС_12090_1,ЮСТ_СТАТ_12090_1),

вых (ВЕС_СТАТ_12090_1);

ВЫЧИСЛИТЬ (БРУТТО_12090_1) (-) (ТАРА_ДИН_12090_1) (НЕТТО_ДИН_12090_1);

ЕСЛИ (НЕТТО_ДИН_12090_1) (<) (0), то {

ВЫЧИСЛИТЬ (0) (-) (НЕТТО_ДИН_12090_1) (НЕТТО_ДИН_12090_1);

ВЗВЕСТИ флаг (ФЛ_МИН_12090_1);

}ИНАЧЕ {

СБРОСИТЬ флаг (ФЛ_МИН_12090_1);

}

ФУНКЦИЯ (FZOOM), вх (НЕТТО_ДИН_12090_1,ЮСТ_ВЕС_12090_1,ЮСТ_ДИН_12090_1),

вых (ВЕС_ДИН_12090_1);

"""""""""""""""""""""""""""""""""РАСЧЕТ ВЕСА 12090_2""""""""""""""""""""""""""""""""""""""""""""""""""""""""РАСЧЕТ ВЕСА 12090_3"""""""""""""""""""""""

"""""""""""""""""""""""""""""""""РАСЧЕТ ВЕСА 12090_4"""""""""""""""""""""""

"""""""""""""""""""""""""""""""""РАСЧЕТ ВЕСА 12543"""""""""""""""""""""""

"""""""""""""""""""""""""""""""""РАСЧЕТ ВЕСА 12544"""""""""""""""""""""""

"""""""""""""""""""""""""""""""""РАСЧЕТ ВЕСА 12_1""""""""""""""""""""""""""""""""""""""""""""""""""""""""РАСЧЕТ ВЕСА 12_2""""""""""""""""""""""""""""""""""""""""""""""""""КОНЕЦ РАСЧЕТА ВЕСА""""""""""""""""""""""""""""""""""""""""""""ПРОВЕРКА НАЛИЧИЯ МАТЕРИАЛА НА ЛЕНТЕ""""""""""""""""""""""""""

ЕСЛИ (ВЕС_ДИН_12090_1) (<) (МИН_ВЕС_12090_1), то {

ВКЛЮЧИТЬ дискретный выход (ПРЗ_МИН_12090_1);

} ИНАЧЕ {

ВЫКЛЮЧИТЬ дискретный выход (ПРЗ_МИН_12090_1);

}

ЕСЛИ (ВЕС_ДИН_12090_2) (<) (МИН_ВЕС_12090_2), то {

ВКЛЮЧИТЬ дискретный выход (ПРЗ_МИН_12090_2);

} ИНАЧЕ {

ВЫКЛЮЧИТЬ дискретный выход (ПРЗ_МИН_12090_2);

}

ЕСЛИ (ВЕС_ДИН_12090_3) (<) (МИН_ВЕС_12090_3), то {

ВКЛЮЧИТЬ дискретный выход (ПРЗ_МИН_12090_3);

} ИНАЧЕ {

ВЫКЛЮЧИТЬ дискретный выход (ПРЗ_МИН_12090_3);

}

ЕСЛИ (ВЕС_ДИН_12090_4) (<) (МИН_ВЕС_12090_4), то {

ВКЛЮЧИТЬ дискретный выход (ПРЗ_МИН_12090_4);

} ИНАЧЕ {

ВЫКЛЮЧИТЬ дискретный выход (ПРЗ_МИН_12090_4);

}

""""РАСЧЕТ СКОРОСТИ, ПРОИЗВОДИТЕЛЬНОСТИ, КОЛИЧЕСТВА МАТЕРИАЛА 12090_1""""""

""""""""""""""""""""РАСЧЕТ СКОРОСТИ 12090_1""""""""""""""""""""""""""""""""

ФУНКЦИЯ (MULU), вх (ДЛИН_12090_1,ДЛ_ТАХ_12090_1), вых (Х_С,Х_М);

ФУНКЦИЯ (DIVU), вх (КАЛ_С_12090_1,КАЛ_М_12090_1,10),

вых (Y_С,Y_М,ОСТ); "импульсов за 1/10 оборота

ЕСЛИ (Y_С) (=) (0), то {

ЕСЛИ (ОСТ) (>) (4), то {

ВЫЧИСЛИТЬ (Y_М) (+) (1) (Y_М);

}

ФУНКЦИЯ (DIVU), вх (Х_С,Х_М,Y_М),

вых (СКОР_С_12090_1,СКОР_М_12090_1,ОСТ); " в мм/сек

ВЫЧИСЛИТЬ (Y_М) (/) (2) (Y_М);

ЕСЛИ (ОСТ) (>=) (Y_М), то {

ВЫЧИСЛИТЬ (СКОР_М_12090_1) (+) (1) (СКОР_М_12090_1);

}

}

""""""""""""""РАСЧЕТ ПРОИЗВОДИТЕЛЬНОСТИ 12090_1"""""""""""""""""""""""""""

ФУНКЦИЯ (MULU), вх (ДЛИН_12090_1,ВЕС_ДИН_12090_1), вых (Х_С,Х_М);

ФУНКЦИЯ (DIVU), вх (КАЛ_С_12090_1,КАЛ_М_12090_1,10),

вых (Y_С,Y_М,ОСТ); "импульсов за 1/10 оборота

ЕСЛИ (Y_С) (=) (0), то {

ЕСЛИ (ОСТ) (>) (4), то {

ВЫЧИСЛИТЬ (Y_М) (+) (1) (Y_М);

}

ФУНКЦИЯ (DIVU), вх (Х_С,Х_М,Y_М), вых (Z_С,Z_М,ОСТ);

ВЫЧИСЛИТЬ (Y_М) (/) (2) (Y_М);

ЕСЛИ (ОСТ) (>=) (Y_М), то {

ВЫЧИСЛИТЬ (Z_М) (+) (1) (Z_М);

}

}

ФУНКЦИЯ (MULU), вх (ДЛ_ТАХ_12090_1,3600), вых (Х_С,Х_М);

ФУНКЦИЯ (DIVU), вх (Х_С,Х_М,МОСТ_12090_1), вых (Х_С,Х_М,ОСТ);

ВЫЧИСЛИТЬ (МОСТ_12090_1) (/) (2) (Y_М);

ЕСЛИ (ОСТ) (>=) (Y_М), то {

ВЫЧИСЛИТЬ (Х_М) (+) (1) (Х_М);

}

ФУНКЦИЯ (MULU), вх (Z_М,Х_М),

вых (ПРОИЗВ_С_12090_1,ПРОИЗВ_М_12090_1); " г. в час"

ФУНКЦИЯ (CMP32), вх (ПРОИЗВ_С_12090_1,ПРОИЗВ_М_12090_1, 22,0),

вых (ERR);

ЕСЛИ (ERR) (=) (-1), то {

ПЕРЕСЛАТЬ значение (0) в (ПРОИЗВ_С_12090_1);

ПЕРЕСЛАТЬ значение (0) в (ПРОИЗВ_М_12090_1);

}

ФУНКЦИЯ (DIVU), вх (ПРОИЗВ_С_12090_1,ПРОИЗВ_М_12090_1,10000),

вых (Х_С,Х_М,ОСТ);

ФУНКЦИЯ (FZOOM), вх (Х_М,3276,10000), вых (ПРЗ_12090_1);

ВЫЧИСЛИТЬ (ПРЗ_12090_1) (+) (819) (ПРЗ_12090_1);

ФУНКЦИЯ (FAO01), вх (0,1,ПРЗ_12090_1), вых (ERR);

ЕСЛИ (КОНВ_12090_1) (=) (1), то {

""""""""ИНИЦИАЛИЗАЦИЯ РУЧНОГО СЧЕТЧИКА КОЛИЧЕСТВА МАТЕРИАЛА 12090_1"""""""""

ЕСЛИ (ФЛ_СЧЕТ_12090_1) (=) (0), то {

ЕСЛИ (ВР_СЧ_12090_1) (>) (0), то {

ВЗВЕСТИ флаг (ФЛ_СЧЕТ_12090_1);

СБРОСИТЬ флаг (ФЛ_ЧТ_12090_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_КОЛ_С_12090_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_КОЛ_М_12090_1);

ВЫЧИСЛИТЬ (ВР_СЧ_12090_1) (*) (1) (КОЛ_ИЗМ_12090_1);

}

}

""""""""""""""РАСЧЕТ КОЛИЧЕСТВА МАТЕРИАЛА 12090_1"""""""""""""""""""""""""""

ЕСЛИ (ФЛ_ЧТ_12090_1) (=) (1), то {

ФУНКЦИЯ (MULU), вх (ДЛ_ТАХ_12090_1,5000), вых (Х_С,Х_М);

ФУНКЦИЯ (DIVU), вх (Х_С,Х_М,МОСТ_12090_1),

вых (Х_С,Х_М,ОСТ);

ВЫЧИСЛИТЬ (МОСТ_12090_1) (/) (2) (Y_М);

ЕСЛИ (ОСТ) (>=) (Y_М), то {

ВЫЧИСЛИТЬ (Х_М) (+) (1) (Х_М);

}

ФУНКЦИЯ (MULU), вх (Z_М,Х_М), вых (Х_С,Х_М);

ФУНКЦИЯ (DIVU), вх (Х_С,Х_М,5000),

вых (Х_С,Х_М,ОСТ); "г. в сек"

"""""""""""""""""РУЧНОЙ СЧЕТЧИК 12090_1"""""""""""""""""""""""""""""""""""""

ЕСЛИ (ФЛ_СЧЕТ_12090_1) (=) (1), то {

ЕСЛИ (ФЛ_МИН_12090_1) (=) (0), то {

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_КОЛ_С_12090_1,

СЧЕТ_КОЛ_М_12090_1,

Х_С,Х_М),

вых (СЧЕТ_КОЛ_С_12090_1,

СЧЕТ_КОЛ_М_12090_1,ERR);

}ИНАЧЕ{

ФУНКЦИЯ (SUBU32), вх (СЧЕТ_КОЛ_С_12090_1,

СЧЕТ_КОЛ_М_12090_1,

Х_С,Х_М),

вых (СЧЕТ_КОЛ_С_12090_1,

СЧЕТ_КОЛ_М_12090_1,ERR);

}

ВЫЧИСЛИТЬ (КОЛ_ИЗМ_12090_1) (-) (1) (КОЛ_ИЗМ_12090_1);

ЕСЛИ (КОЛ_ИЗМ_12090_1) (=) (0), то {

СБРОСИТЬ флаг (ФЛ_СЧЕТ_12090_1);

ПЕРЕСЛАТЬ (0) в (ВР_СЧ_12090_1);

}

}

""""""""""""""""""""""""""СЧЕТЧИК МАТЕРИАЛА 12090_1"""""""""""""""""""""""""

ЕСЛИ (RDA9) (#) (10), то {

ЕСЛИ (ФЛ_СБР_12090_1) (=) (1), то {

ПЕРЕСЛАТЬ (0) в (ТЕХ_СЧ_М_12090_1);

ПЕРЕСЛАТЬ (0) в (ТЕХ_СЧ_С_12090_1);

СБРОСИТЬ флаг (ФЛ_СБР_12090_1);

}ИНАЧЕ{

ЕСЛИ (ФЛ_МИН_12090_1) (=) (0), то {

ФУНКЦИЯ (ADDU32), вх (ТЕХ_СЧ_С_12090_1, ТЕХ_СЧ_М_12090_1, Х_С,Х_М),

вых (ТЕХ_СЧ_С_12090_1, ТЕХ_СЧ_М_12090_1,ERR);

}ИНАЧЕ{

ФУНКЦИЯ (SUBU32), вх (ТЕХ_СЧ_С_12090_1, ТЕХ_СЧ_М_12090_1, Х_С,Х_М),

вых (ТЕХ_СЧ_С_12090_1, ТЕХ_СЧ_М_12090_1,ERR);

}

}

ЕСЛИ (ФЛ_МИН_12090_1) (=) (0), то {

ФУНКЦИЯ (ADDU32), вх (КОЛ_С_12090_1, КОЛ_М_12090_1, Х_С,Х_М),

вых (КОЛ_С_12090_1, КОЛ_М_12090_1,ERR);

ФУНКЦИЯ (ADDU32), вх (ИМП_С_12090_1, ИМП_М_12090_1, Х_С,Х_М),

вых (ИМП_С_12090_1, ИМП_М_12090_1,ERR);

}ИНАЧЕ{

ФУНКЦИЯ (SUBU32), вх (КОЛ_С_12090_1, КОЛ_М_12090_1, Х_С,Х_М),

вых (КОЛ_С_12090_1, КОЛ_М_12090_1,ERR);

ФУНКЦИЯ (SUBU32), вх (ИМП_С_12090_1, ИМП_М_12090_1, Х_С,Х_М),

вых (ИМП_С_12090_1, ИМП_М_12090_1,ERR);

}

}

СБРОСИТЬ флаг (ФЛ_ЧТ_12090_1);

}

ЕСЛИ (ТАЙМ_ИМП_12090_1@) (=) (0), то {

ФУНКЦИЯ (CMP32), вх (ИМП_С_12090_1, ИМП_М_12090_1, 0,10000),

вых (ERR);

ЕСЛИ (ERR) (#) (-1), то {

ФУНКЦИЯ (SUBU32), вх (ИМП_С_12090_1, ИМП_М_12090_1, 0,10000),

вых (ИМП_С_12090_1, ИМП_М_12090_1,ERR);

СТАРТ таймер (ТАЙМ_ИМП_12090_1);

}

}

}

""""РАСЧЕТ СКОРОСТИ, ПРОИЗВОДИТЕЛЬНОСТИ, КОЛИЧЕСТВА МАТЕРИАЛА 12090_2""""""

""""РАСЧЕТ СКОРОСТИ, ПРОИЗВОДИТЕЛЬНОСТИ, КОЛИЧЕСТВА МАТЕРИАЛА 12090_3""""""

""""РАСЧЕТ СКОРОСТИ, ПРОИЗВОДИТЕЛЬНОСТИ, КОЛИЧЕСТВА МАТЕРИАЛА 12090_4""""""

""""РАСЧЕТ СКОРОСТИ, ПРОИЗВОДИТЕЛЬНОСТИ, КОЛИЧЕСТВА МАТЕРИАЛА 12543""""""

""""РАСЧЕТ СКОРОСТИ, ПРОИЗВОДИТЕЛЬНОСТИ, КОЛИЧЕСТВА МАТЕРИАЛА 12544""""""

""""РАСЧЕТ СКОРОСТИ, ПРОИЗВОДИТЕЛЬНОСТИ, КОЛИЧЕСТВА МАТЕРИАЛА 12_1""""""

""""РАСЧЕТ СКОРОСТИ, ПРОИЗВОДИТЕЛЬНОСТИ, КОЛИЧЕСТВА МАТЕРИАЛА 12_2""""""

"""""""""""""""""""""""ИМПУЛЬСНЫЕ СЧЕТЧИКИ""""""""""""""""""""""""""""""""

ЕСЛИ (ТАЙМ_ИМП_12090_1) (>) (10), то {

ВКЛЮЧИТЬ выход (ИМП_12090_1);

} ИНАЧЕ {

ВЫКЛЮЧИТЬ дискретный выход (ИМП_12090_1);

}

ЕСЛИ (ТАЙМ_ИМП_12090_2) (>) (10), то {

ВКЛЮЧИТЬ выход (ИМП_12090_2);

} ИНАЧЕ {

ВЫКЛЮЧИТЬ дискретный выход (ИМП_12090_2);

}

ЕСЛИ (ТАЙМ_ИМП_12090_3) (>) (10), то {

ВКЛЮЧИТЬ выход (ИМП_12090_3);

} ИНАЧЕ {

ВЫКЛЮЧИТЬ дискретный выход (ИМП_12090_3);

}

ЕСЛИ (ТАЙМ_ИМП_12090_4) (>) (10), то {

ВКЛЮЧИТЬ выход (ИМП_12090_4);

} ИНАЧЕ {

ВЫКЛЮЧИТЬ дискретный выход (ИМП_12090_4);

}

ЕСЛИ (ТАЙМ_ИМП_12543) (>) (20), то {

ВКЛЮЧИТЬ выход (ИМП_12543);

} ИНАЧЕ {

ВЫКЛЮЧИТЬ дискретный выход (ИМП_12543);

}

ЕСЛИ (ТАЙМ_ИМП_12543_1) (>) (10), то {

ВКЛЮЧИТЬ выход (ИМП_12543_1);

} ИНАЧЕ {

ВЫКЛЮЧИТЬ дискретный выход (ИМП_12543_1);

}

ЕСЛИ (ТАЙМ_ИМП_12543_2) (>) (10), то {

ВКЛЮЧИТЬ выход (ИМП_12543_2);

} ИНАЧЕ {

ВЫКЛЮЧИТЬ дискретный выход (ИМП_12543_2);

}

ЕСЛИ (ТАЙМ_ИМП_12544) (>) (20), то {

ВКЛЮЧИТЬ выход (ИМП_12544);

} ИНАЧЕ {

ВЫКЛЮЧИТЬ дискретный выход (ИМП_12544);

}

ЕСЛИ (ТАЙМ_ИМП_12544_1) (>) (10), то {

ВКЛЮЧИТЬ выход (ИМП_12544_1);

} ИНАЧЕ {

ВЫКЛЮЧИТЬ дискретный выход (ИМП_12544_1);

}

ЕСЛИ (ТАЙМ_ИМП_12544_2) (>) (10), то {

ВКЛЮЧИТЬ выход (ИМП_12544_2);

} ИНАЧЕ {

ВЫКЛЮЧИТЬ дискретный выход (ИМП_12544_2);

}

ЕСЛИ (ТАЙМ_ИМП_12_1) (>) (10), то {

ВКЛЮЧИТЬ выход (ИМП_12_1);

} ИНАЧЕ {

ВЫКЛЮЧИТЬ дискретный выход (ИМП_12_1);

}

ЕСЛИ (ТАЙМ_ИМП_12_2) (>) (10), то {

ВКЛЮЧИТЬ выход (ИМП_12_2);

} ИНАЧЕ {

ВЫКЛЮЧИТЬ дискретный выход (ИМП_12_2);

}

""""""""""""""""""""""МАТЕРИАЛ ЗА ПРЕДЫДУЩИЙ ЧАС""""""""""""""""""""""""""

ЕСЛИ (МИН) (=) (0), то {

ЕСЛИ (ФЛ_ЧАС) (=) (0), то {

ПЕРЕСЛАТЬ значение (КОЛ_С_12090_1) в (ЧАС_С_12090_1);

ПЕРЕСЛАТЬ значение (КОЛ_М_12090_1) в (ЧАС_М_12090_1);

ФУНКЦИЯ (DIVU), вх (КОЛ_С_12090_1,КОЛ_М_12090_1,1000),

вых (Х_С,Х_М,ОСТ); "кг."

ЕСЛИ (ОСТ) (>) (499), то {

ФУНКЦИЯ (ADDU32), вх (Х_С,Х_М,0,1), вых (Х_С,Х_М,ERR);

}

ЕСЛИ (МИН_12090_1) (=) (0), то {

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_СМ_С_12090_1, СЧЕТ_СМ_М_12090_1, Х_С,Х_М),

вых (СЧЕТ_СМ_С_12090_1, СЧЕТ_СМ_М_12090_1,ERR);

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_СУТ_С_12090_1, СЧЕТ_СУТ_М_12090_1, Х_С,Х_М),

вых (СЧЕТ_СУТ_С_12090_1, СЧЕТ_СУТ_М_12090_1,ERR);

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_МЕС_С_12090_1, СЧЕТ_МЕС_М_12090_1, Х_С,Х_М),

вых (СЧЕТ_МЕС_С_12090_1, СЧЕТ_МЕС_М_12090_1,ERR);

}

ПЕРЕСЛАТЬ значение (0) в (КОЛ_С_12090_1);

ПЕРЕСЛАТЬ значение (0) в (КОЛ_М_12090_1);

ПЕРЕСЛАТЬ значение (КОЛ_С_12090_2) в (ЧАС_С_12090_2);

ПЕРЕСЛАТЬ значение (КОЛ_М_12090_2) в (ЧАС_М_12090_2);

ФУНКЦИЯ (DIVU), вх (КОЛ_С_12090_2,КОЛ_М_12090_2,1000),

вых (Х_С,Х_М,ОСТ); "кг."

ЕСЛИ (ОСТ) (>) (499), то {

ФУНКЦИЯ (ADDU32), вх (Х_С,Х_М,0,1), вых (Х_С,Х_М,ERR);

}

ЕСЛИ (МИН_12090_2) (=) (0), то {

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_СМ_С_12090_2, СЧЕТ_СМ_М_12090_2, Х_С,Х_М),

вых (СЧЕТ_СМ_С_12090_2, СЧЕТ_СМ_М_12090_2,ERR);

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_СУТ_С_12090_2, СЧЕТ_СУТ_М_12090_2, Х_С,Х_М),

вых (СЧЕТ_СУТ_С_12090_2, СЧЕТ_СУТ_М_12090_2,ERR);

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_МЕС_С_12090_2, СЧЕТ_МЕС_М_12090_2, Х_С,Х_М),

вых (СЧЕТ_МЕС_С_12090_2, СЧЕТ_МЕС_М_12090_2,ERR);

}

ПЕРЕСЛАТЬ значение (0) в (КОЛ_С_12090_2);

ПЕРЕСЛАТЬ значение (0) в (КОЛ_М_12090_2);

ПЕРЕСЛАТЬ значение (КОЛ_С_12090_3) в (ЧАС_С_12090_3);

ПЕРЕСЛАТЬ значение (КОЛ_М_12090_3) в (ЧАС_М_12090_3);

ФУНКЦИЯ (DIVU), вх (КОЛ_С_12090_3,КОЛ_М_12090_3,1000),

вых (Х_С,Х_М,ОСТ); "кг."

ЕСЛИ (ОСТ) (>) (499), то {

ФУНКЦИЯ (ADDU32), вх (Х_С,Х_М,0,1), вых (Х_С,Х_М,ERR);

}

ЕСЛИ (МИН_12090_3) (=) (0), то {

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_СМ_С_12090_3, СЧЕТ_СМ_М_12090_3, Х_С,Х_М),

вых (СЧЕТ_СМ_С_12090_3, СЧЕТ_СМ_М_12090_3,ERR);

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_СУТ_С_12090_3, СЧЕТ_СУТ_М_12090_3, Х_С,Х_М),

вых (СЧЕТ_СУТ_С_12090_3, СЧЕТ_СУТ_М_12090_3,ERR);

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_МЕС_С_12090_3, СЧЕТ_МЕС_М_12090_3, Х_С,Х_М),

вых (СЧЕТ_МЕС_С_12090_3, СЧЕТ_МЕС_М_12090_3,ERR);

}

ПЕРЕСЛАТЬ значение (0) в (КОЛ_С_12090_3);

ПЕРЕСЛАТЬ значение (0) в (КОЛ_М_12090_3);

ПЕРЕСЛАТЬ значение (КОЛ_С_12090_4) в (ЧАС_С_12090_4);

ПЕРЕСЛАТЬ значение (КОЛ_М_12090_4) в (ЧАС_М_12090_4);

ФУНКЦИЯ (DIVU), вх (КОЛ_С_12090_4,КОЛ_М_12090_4,1000),

вых (Х_С,Х_М,ОСТ); "кг."

ЕСЛИ (ОСТ) (>) (499), то {

ФУНКЦИЯ (ADDU32), вх (Х_С,Х_М,0,1), вых (Х_С,Х_М,ERR);

}

ЕСЛИ (МИН_12090_4) (=) (0), то {

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_СМ_С_12090_4, СЧЕТ_СМ_М_12090_4, Х_С,Х_М),

вых (СЧЕТ_СМ_С_12090_4, СЧЕТ_СМ_М_12090_4,ERR);

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_СУТ_С_12090_4, СЧЕТ_СУТ_М_12090_4, Х_С,Х_М),

вых (СЧЕТ_СУТ_С_12090_4, СЧЕТ_СУТ_М_12090_4,ERR);

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_МЕС_С_12090_4, СЧЕТ_МЕС_М_12090_4, Х_С,Х_М),

вых (СЧЕТ_МЕС_С_12090_4, СЧЕТ_МЕС_М_12090_4,ERR);

}

ПЕРЕСЛАТЬ значение (0) в (КОЛ_С_12090_4);

ПЕРЕСЛАТЬ значение (0) в (КОЛ_М_12090_4);

ПЕРЕСЛАТЬ значение (0) в (КОЛ_С_12543);

ПЕРЕСЛАТЬ значение (0) в (КОЛ_М_12543);

ПЕРЕСЛАТЬ значение (КОЛ_С_12543_1) в (ЧАС_С_12543_1);

ПЕРЕСЛАТЬ значение (КОЛ_М_12543_1) в (ЧАС_М_12543_1);

ФУНКЦИЯ (DIVU), вх (КОЛ_С_12543_1,КОЛ_М_12543_1,1000),

вых (Х_С,Х_М,ОСТ); "кг."

ЕСЛИ (ОСТ) (>) (499), то {

ФУНКЦИЯ (ADDU32), вх (Х_С,Х_М,0,1), вых (Х_С,Х_М,ERR);

}

ЕСЛИ (МИН_12543_1) (=) (0), то {

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_СМ_С_12543_1, СЧЕТ_СМ_М_12543_1, Х_С,Х_М),

вых (СЧЕТ_СМ_С_12543_1, СЧЕТ_СМ_М_12543_1,ERR);

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_СУТ_С_12543_1, СЧЕТ_СУТ_М_12543_1, Х_С,Х_М),

вых (СЧЕТ_СУТ_С_12543_1, СЧЕТ_СУТ_М_12543_1,ERR);

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_МЕС_С_12543_1, СЧЕТ_МЕС_М_12543_1, Х_С,Х_М),

вых (СЧЕТ_МЕС_С_12543_1, СЧЕТ_МЕС_М_12543_1,ERR);

}

ПЕРЕСЛАТЬ значение (0) в (КОЛ_С_12543_1);

ПЕРЕСЛАТЬ значение (0) в (КОЛ_М_12543_1);

ПЕРЕСЛАТЬ значение (КОЛ_С_12543_2) в (ЧАС_С_12543_2);

ПЕРЕСЛАТЬ значение (КОЛ_М_12543_2) в (ЧАС_М_12543_2);

ФУНКЦИЯ (DIVU), вх (КОЛ_С_12543_2,КОЛ_М_12543_2,1000),

вых (Х_С,Х_М,ОСТ); "кг."

ЕСЛИ (ОСТ) (>) (499), то {

ФУНКЦИЯ (ADDU32), вх (Х_С,Х_М,0,1), вых (Х_С,Х_М,ERR);

}

ЕСЛИ (МИН_12543_2) (=) (0), то {

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_СМ_С_12543_2, СЧЕТ_СМ_М_12543_2, Х_С,Х_М),

вых (СЧЕТ_СМ_С_12543_2, СЧЕТ_СМ_М_12543_2,ERR);

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_СУТ_С_12543_2, СЧЕТ_СУТ_М_12543_2, Х_С,Х_М),

вых (СЧЕТ_СУТ_С_12543_2, СЧЕТ_СУТ_М_12543_2,ERR);

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_МЕС_С_12543_2, СЧЕТ_МЕС_М_12543_2, Х_С,Х_М),

вых (СЧЕТ_МЕС_С_12543_2, СЧЕТ_МЕС_М_12543_2,ERR);

}

ПЕРЕСЛАТЬ значение (0) в (КОЛ_С_12543_2);

ПЕРЕСЛАТЬ значение (0) в (КОЛ_М_12543_2);

ПЕРЕСЛАТЬ значение (0) в (КОЛ_С_12544);

ПЕРЕСЛАТЬ значение (0) в (КОЛ_М_12544);

ПЕРЕСЛАТЬ значение (КОЛ_С_12544_1) в (ЧАС_С_12544_1);

ПЕРЕСЛАТЬ значение (КОЛ_М_12544_1) в (ЧАС_М_12544_1);

ФУНКЦИЯ (DIVU), вх (КОЛ_С_12544_1,КОЛ_М_12544_1,1000),

вых (Х_С,Х_М,ОСТ); "кг."

ЕСЛИ (ОСТ) (>) (499), то {

ФУНКЦИЯ (ADDU32), вх (Х_С,Х_М,0,1), вых (Х_С,Х_М,ERR);

}

ЕСЛИ (МИН_12544_1) (=) (0), то {

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_СМ_С_12544_1, СЧЕТ_СМ_М_12544_1, Х_С,Х_М),

вых (СЧЕТ_СМ_С_12544_1, СЧЕТ_СМ_М_12544_1,ERR);

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_СУТ_С_12544_1, СЧЕТ_СУТ_М_12544_1, Х_С,Х_М),

вых (СЧЕТ_СУТ_С_12544_1, СЧЕТ_СУТ_М_12544_1,ERR);

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_МЕС_С_12544_1, СЧЕТ_МЕС_М_12544_1, Х_С,Х_М),

вых (СЧЕТ_МЕС_С_12544_1, СЧЕТ_МЕС_М_12544_1,ERR);

}

ПЕРЕСЛАТЬ значение (0) в (КОЛ_С_12544_1);

ПЕРЕСЛАТЬ значение (0) в (КОЛ_М_12544_1);

ПЕРЕСЛАТЬ значение (КОЛ_С_12544_2) в (ЧАС_С_12544_2);

ПЕРЕСЛАТЬ значение (КОЛ_М_12544_2) в (ЧАС_М_12544_2);

ФУНКЦИЯ (DIVU), вх (КОЛ_С_12544_2,КОЛ_М_12544_2,1000),

вых (Х_С,Х_М,ОСТ); "кг."

ЕСЛИ (ОСТ) (>) (499), то {

ФУНКЦИЯ (ADDU32), вх (Х_С,Х_М,0,1), вых (Х_С,Х_М,ERR);

}

ЕСЛИ (МИН_12544_2) (=) (0), то {

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_СМ_С_12544_2, СЧЕТ_СМ_М_12544_2, Х_С,Х_М),

вых (СЧЕТ_СМ_С_12544_2, СЧЕТ_СМ_М_12544_2,ERR);

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_СУТ_С_12544_2, СЧЕТ_СУТ_М_12544_2, Х_С,Х_М),

вых (СЧЕТ_СУТ_С_12544_2, СЧЕТ_СУТ_М_12544_2,ERR);

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_МЕС_С_12544_2, СЧЕТ_МЕС_М_12544_2, Х_С,Х_М),

вых (СЧЕТ_МЕС_С_12544_2, СЧЕТ_МЕС_М_12544_2,ERR);

}

ПЕРЕСЛАТЬ значение (0) в (КОЛ_С_12544_2);

ПЕРЕСЛАТЬ значение (0) в (КОЛ_М_12544_2);

ПЕРЕСЛАТЬ значение (КОЛ_С_12_1) в (ЧАС_С_12_1);

ПЕРЕСЛАТЬ значение (КОЛ_М_12_1) в (ЧАС_М_12_1);

ФУНКЦИЯ (DIVU), вх (КОЛ_С_12_1,КОЛ_М_12_1,1000),

вых (Х_С,Х_М,ОСТ); "кг."

ЕСЛИ (ОСТ) (>) (499), то {

ФУНКЦИЯ (ADDU32), вх (Х_С,Х_М,0,1), вых (Х_С,Х_М,ERR);

}

ЕСЛИ (МИН_12_1) (=) (0), то {

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_СМ_С_12_1, СЧЕТ_СМ_М_12_1, Х_С,Х_М),

вых (СЧЕТ_СМ_С_12_1, СЧЕТ_СМ_М_12_1,ERR);

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_СУТ_С_12_1, СЧЕТ_СУТ_М_12_1, Х_С,Х_М),

вых (СЧЕТ_СУТ_С_12_1, СЧЕТ_СУТ_М_12_1,ERR);

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_МЕС_С_12_1, СЧЕТ_МЕС_М_12_1, Х_С,Х_М),

вых (СЧЕТ_МЕС_С_12_1, СЧЕТ_МЕС_М_12_1,ERR);

}

ПЕРЕСЛАТЬ значение (0) в (КОЛ_С_12_1);

ПЕРЕСЛАТЬ значение (0) в (КОЛ_М_12_1);

ПЕРЕСЛАТЬ значение (КОЛ_С_12_2) в (ЧАС_С_12_2);

ПЕРЕСЛАТЬ значение (КОЛ_М_12_2) в (ЧАС_М_12_2);

ФУНКЦИЯ (DIVU), вх (КОЛ_С_12_2,КОЛ_М_12_2,1000),

вых (Х_С,Х_М,ОСТ); "кг."

ЕСЛИ (ОСТ) (>) (499), то {

ФУНКЦИЯ (ADDU32), вх (Х_С,Х_М,0,1), вых (Х_С,Х_М,ERR);

}

ЕСЛИ (МИН_12_2) (=) (0), то {

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_СМ_С_12_2, СЧЕТ_СМ_М_12_2, Х_С,Х_М),

вых (СЧЕТ_СМ_С_12_2, СЧЕТ_СМ_М_12_2,ERR);

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_СУТ_С_12_2, СЧЕТ_СУТ_М_12_2, Х_С,Х_М),

вых (СЧЕТ_СУТ_С_12_2, СЧЕТ_СУТ_М_12_2,ERR);

ФУНКЦИЯ (ADDU32), вх (СЧЕТ_МЕС_С_12_2, СЧЕТ_МЕС_М_12_2, Х_С,Х_М),

вых (СЧЕТ_МЕС_С_12_2, СЧЕТ_МЕС_М_12_2,ERR);

}

ПЕРЕСЛАТЬ значение (0) в (КОЛ_С_12_2);

ПЕРЕСЛАТЬ значение (0) в (КОЛ_М_12_2);

ВЗВЕСТИ флаг (ФЛ_ЧАС);

}

}ИНАЧЕ{

СБРОСИТЬ флаг (ФЛ_ЧАС);

}

""""""""""""""""""""""МАТЕРИАЛ ЗА СМЕНУ И СУТКИ"""""""""""""""""""""""""

ЕСЛИ (ЧАС) (=) (8), то {

ЕСЛИ (ФЛ_СМ1) (=) (0), то {

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_С_12090_1) в (СМ_С_12090_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_М_12090_1) в (СМ_М_12090_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_С_12090_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_М_12090_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_С_12090_2) в (СМ_С_12090_2);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_М_12090_2) в (СМ_М_12090_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_С_12090_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_М_12090_2);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_С_12090_3) в (СМ_С_12090_3);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_М_12090_3) в (СМ_М_12090_3);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_С_12090_3);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_М_12090_3);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_С_12090_4) в (СМ_С_12090_4);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_М_12090_4) в (СМ_М_12090_4);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_С_12090_4);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_М_12090_4);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_С_12543_1) в (СМ_С_12543_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_М_12543_1) в (СМ_М_12543_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_С_12543_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_М_12543_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_С_12543_2) в (СМ_С_12543_2);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_М_12543_2) в (СМ_М_12543_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_С_12543_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_М_12543_2);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_С_12544_1) в (СМ_С_12544_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_М_12544_1) в (СМ_М_12544_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_С_12544_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_М_12544_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_С_12544_2) в (СМ_С_12544_2);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_М_12544_2) в (СМ_М_12544_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_С_12544_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_М_12544_2);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_С_12_1) в (СМ_С_12_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_М_12_1) в (СМ_М_12_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_С_12_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_М_12_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_С_12_2) в (СМ_С_12_2);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_М_12_2) в (СМ_М_12_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_С_12_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_М_12_2);

ВЗВЕСТИ флаг (ФЛ_СМ1);

}

}ИНАЧЕ{

СБРОСИТЬ флаг (ФЛ_СМ1);

}

ЕСЛИ (ЧАС) (=) (20), то {

ЕСЛИ (ФЛ_СМ2) (=) (0), то {

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_С_12090_1) в (СМ_С_12090_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_М_12090_1) в (СМ_М_12090_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_С_12090_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_М_12090_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_С_12090_2) в (СМ_С_12090_2);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_М_12090_2) в (СМ_М_12090_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_С_12090_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_М_12090_2);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_С_12090_3) в (СМ_С_12090_3);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_М_12090_3) в (СМ_М_12090_3);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_С_12090_3);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_М_12090_3);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_С_12090_4) в (СМ_С_12090_4);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_М_12090_4) в (СМ_М_12090_4);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_С_12090_4);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_М_12090_4);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_С_12543_1) в (СМ_С_12543_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_М_12543_1) в (СМ_М_12543_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_С_12543_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_М_12543_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_С_12543_2) в (СМ_С_12543_2);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_М_12543_2) в (СМ_М_12543_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_С_12543_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_М_12543_2);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_С_12544_1) в (СМ_С_12544_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_М_12544_1) в (СМ_М_12544_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_С_12544_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_М_12544_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_С_12544_2) в (СМ_С_12544_2);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_М_12544_2) в (СМ_М_12544_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_С_12544_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_М_12544_2);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_С_12_1) в (СМ_С_12_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_М_12_1) в (СМ_М_12_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_С_12_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_М_12_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_С_12_2) в (СМ_С_12_2);

ПЕРЕСЛАТЬ значение (СЧЕТ_СМ_М_12_2) в (СМ_М_12_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_С_12_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СМ_М_12_2);

ПЕРЕСЛАТЬ значение (СЧЕТ_СУТ_С_12090_1) в (СУТ_С_12090_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_СУТ_М_12090_1) в (СУТ_М_12090_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СУТ_С_12090_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СУТ_М_12090_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_СУТ_С_12090_2) в (СУТ_С_12090_2);

ПЕРЕСЛАТЬ значение (СЧЕТ_СУТ_М_12090_2) в (СУТ_М_12090_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СУТ_С_12090_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СУТ_М_12090_2);

ПЕРЕСЛАТЬ значение (СЧЕТ_СУТ_С_12090_3) в (СУТ_С_12090_3);

ПЕРЕСЛАТЬ значение (СЧЕТ_СУТ_М_12090_3) в (СУТ_М_12090_3);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СУТ_С_12090_3);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СУТ_М_12090_3);

ПЕРЕСЛАТЬ значение (СЧЕТ_СУТ_С_12090_4) в (СУТ_С_12090_4);

ПЕРЕСЛАТЬ значение (СЧЕТ_СУТ_М_12090_4) в (СУТ_М_12090_4);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СУТ_С_12090_4);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СУТ_М_12090_4);

ПЕРЕСЛАТЬ значение (СЧЕТ_СУТ_С_12543_1) в (СУТ_С_12543_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_СУТ_М_12543_1) в (СУТ_М_12543_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СУТ_С_12543_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СУТ_М_12543_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_СУТ_С_12543_2) в (СУТ_С_12543_2);

ПЕРЕСЛАТЬ значение (СЧЕТ_СУТ_М_12543_2) в (СУТ_М_12543_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СУТ_С_12543_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СУТ_М_12543_2);

ПЕРЕСЛАТЬ значение (СЧЕТ_СУТ_С_12544_1) в (СУТ_С_12544_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_СУТ_М_12544_1) в (СУТ_М_12544_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СУТ_С_12544_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СУТ_М_12544_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_СУТ_С_12544_2) в (СУТ_С_12544_2);

ПЕРЕСЛАТЬ значение (СЧЕТ_СУТ_М_12544_2) в (СУТ_М_12544_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СУТ_С_12544_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СУТ_М_12544_2);

ПЕРЕСЛАТЬ значение (СЧЕТ_СУТ_С_12_1) в (СУТ_С_12_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_СУТ_М_12_1) в (СУТ_М_12_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СУТ_С_12_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СУТ_М_12_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_СУТ_С_12_2) в (СУТ_С_12_2);

ПЕРЕСЛАТЬ значение (СЧЕТ_СУТ_М_12_2) в (СУТ_М_12_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СУТ_С_12_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_СУТ_М_12_2);

ВЗВЕСТИ флаг (ФЛ_СМ2);

}

}ИНАЧЕ{

СБРОСИТЬ флаг (ФЛ_СМ2);

}

""""""""""""""""""""""МАТЕРИАЛ ЗА МЕСЯЦ"""""""""""""""""""""""""

ПЕРЕЙТИ, если переменной (МЕС) соответствует {

ЗНАЧЕНИЕ (1):

ЕСЛИ (ЧИСЛ) (=) (31), то {

ВЫЗВАТЬ процедуру (СЧЕТМЕС);

}

ВЫХОД;

ЗНАЧЕНИЕ (2):

ФУНКЦИЯ (DIVU), вх (0,ГОД,4), вых (Х_С,Х_М,ОСТ);

ЕСЛИ (ОСТ) (#) (0), то {

ЕСЛИ (ЧИСЛ) (=) (28), то {

ВЫЗВАТЬ процедуру (СЧЕТМЕС);

}

}ИНАЧЕ {

ЕСЛИ (ЧИСЛ) (=) (29), то {

ВЫЗВАТЬ процедуру (СЧЕТМЕС);

}

}

ВЫХОД;

ЗНАЧЕНИЕ (3):

ЕСЛИ (ЧИСЛ) (=) (31), то {

ВЫЗВАТЬ процедуру (СЧЕТМЕС);

}

ВЫХОД;

ЗНАЧЕНИЕ (4):

ЕСЛИ (ЧИСЛ) (=) (30), то {

ВЫЗВАТЬ процедуру (СЧЕТМЕС);

}

ВЫХОД;

ЗНАЧЕНИЕ (5):

ЕСЛИ (ЧИСЛ) (=) (31), то {

ВЫЗВАТЬ процедуру (СЧЕТМЕС);

}

ВЫХОД;

ЗНАЧЕНИЕ (6):

ЕСЛИ (ЧИСЛ) (=) (30), то {

ВЫЗВАТЬ процедуру (СЧЕТМЕС);

}

ВЫХОД;

ЗНАЧЕНИЕ (7):

ЕСЛИ (ЧИСЛ) (=) (31), то {

ВЫЗВАТЬ процедуру (СЧЕТМЕС);

}

ВЫХОД;

ЗНАЧЕНИЕ (8):

ЕСЛИ (ЧИСЛ) (=) (31), то {

ВЫЗВАТЬ процедуру (СЧЕТМЕС);

}

ВЫХОД;

ЗНАЧЕНИЕ (9):

ЕСЛИ (ЧИСЛ) (=) (30), то {

ВЫЗВАТЬ процедуру (СЧЕТМЕС);

}

ВЫХОД;

ЗНАЧЕНИЕ (10):

ЕСЛИ (ЧИСЛ) (=) (31), то {

ВЫЗВАТЬ процедуру (СЧЕТМЕС);

}

ВЫХОД;

ЗНАЧЕНИЕ (11):

ЕСЛИ (ЧИСЛ) (=) (30), то {

ВЫЗВАТЬ процедуру (СЧЕТМЕС);

}

ВЫХОД;

ЗНАЧЕНИЕ (12):

ЕСЛИ (ЧИСЛ) (=) (31), то {

ВЫЗВАТЬ процедуру (СЧЕТМЕС);

}

}

СТОП таймер (ТАЙМЕР);

ВЫЧИСЛИТЬ (100) (-) (ТАЙМЕР) (ТИК);

ИДТИ на метку (НАЧАЛО); "КОНЕЦ ПРОГРАММЫ

""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

""""""""""""""""Подпрограмма фильтрации сигнала с месдоз"""""""""""""""""""

""""""""""""""""""""""""""""""""ФИЛ_МЕСДОЗ"""""""""""""""""""""""""""""""""

ПОДПРОГРАММА (ФИЛ_МЕСДОЗ) {

""""""""""""""""""""ФИЛЬТРАЦИЯ СИГНАЛА МЕСДОЗЫ 12090_1""""""""""""""""""""

ЕСЛИ (ВРЕМ_12090_1) (>=) (ВРЕМ_ФИЛ_12090_1), то {

ЕСЛИ (СОСТ_12090_1) (=) (0), то { " Успешное выделение буфера

ЕСЛИ (ОШИБКА_12090_1) (=) (0), то { " Успешное снятие измерения

ФУНКЦИЯ (RUN_FTR),

входные параметры (НАЧ_БУФ_12090_1, МЕСДОЗА_12090_1),

выходные параметры (ФИЛ_12090_1, БУФ_ПОЛН_12090_1);

}

}

ПЕРЕСЛАТЬ значение (1) в (ВРЕМ_12090_1);

} ИНАЧЕ {

ВЫЧИСЛИТЬ (ВРЕМ_12090_1) (+) (1) (ВРЕМ_12090_1);

}

""""""""""""""""""""ФИЛЬТРАЦИЯ СИГНАЛ МЕСДОЗЫ 12090_2"""""""""""""""""""""

""""""""""""""""""""ФИЛЬТРАЦИЯ СИГНАЛА МЕСДОЗЫ 12090_3"""""""""""""""""""""

""""""""""""""""""""ФИЛЬТРАЦИЯ СИГНАЛА МЕСДОЗЫ 12090_4"""""""""""""""""""""

""""""""""""""""""""ФИЛЬТРАЦИЯ СИГНАЛА МЕСДОЗЫ 12543""""""""""""""""""""

""""""""""""""""""""ФИЛЬТРАЦИЯ СИГНАЛА МЕСДОЗЫ 12544""""""""""""""""""""

""""""""""""""""""""ФИЛЬТРАЦИЯ СИГНАЛА МЕСДОЗЫ 12_1""""""""""""""""""""

""""""""""""""""""""ФИЛЬТРАЦИЯ СИГНАЛА МЕСДОЗЫ 12_2""""""""""""""""""""

ЗАГРУЗИТЬ таймер (ТАЙМ_ФИЛ) уставкой (ВРЕМ_ФИЛ), режим (0);

СТАРТ таймер (ТАЙМ_ФИЛ); "РЕИНИЦИАЛИЗАЦИЯ ТАЙМЕРА

} "КОНЕЦ ПОДПРОГРАММЫ

""""""""""""""""Подпрограмма динамического тарирования"""""""""""""""""""""

""""""""""""""""""""""""""""""""ДИНАМ_ТАР""""""""""""""""""""""""""""""""""

ПОДПРОГРАММА (ДИНАМ_ТАР) {

ЕСЛИ (СОСТ_ТАР) (=) (0), то { " Успешное выделение буфера

ФУНКЦИЯ (RUN_FTR),

входные параметры (НАЧ_БУФ_ТАР, БРУТТО_ДИН),

выходные параметры (ТАРА_ДИН, БУФ_ПОЛН_ТАР);

ВЫЧИСЛИТЬ (ЧИСЛО_ИЗМ) (+) (1) (ЧИСЛО_ИЗМ);

}

СТАРТ таймер (ТАЙМ_ТАР);

} "КОНЕЦ ПОДПРОГРАММЫ

""""""""""""""""Подпрограмма динамического юстирования"""""""""""""""""""""

""""""""""""""""""""""""""""""""ДИНАМ_ЮСТ""""""""""""""""""""""""""""""""""

ПОДПРОГРАММА (ДИНАМ_ЮСТ) {

ЕСЛИ (СОСТ_ЮСТ) (=) (0), то { " Успешное выделение буфера

ФУНКЦИЯ (RUN_FTR),

входные параметры (НАЧ_БУФ_ЮСТ, БРУТТО_ДИНАМ),

выходные параметры (ЮСТ_ДИН, БУФ_ПОЛН_ЮСТ);

ВЫЧИСЛИТЬ (ЧИСЛО_ИЗМЕР) (+) (1) (ЧИСЛО_ИЗМЕР);

}

СТАРТ таймер (ТАЙМ_ЮСТ);

} "КОНЕЦ ПОДПРОГРАММЫ

""""""""""""""""Подпрограмма чтения тахогенераторов"""""""""""""""""""""

""""""""""""""""""""""""""""""""ЧТ_ТАХ""""""""""""""""""""""""""""""""""

ПОДПРОГРАММА (ЧТ_ТАХ) {

ФУНКЦИЯ (FRDQC01), входные параметры (2,8),

выходные параметры (РАБ_КОНВ);

""""""""""""""""чтение тахогенератора 12090_1

ФУНКЦИЯ (FRDQC01), входные параметры (2,0),

выходные параметры (ТАХ_12090_1);

ЕСЛИ (КОНВ_12090_1) (=) (1), то {

ВЫЧИСЛИТЬ (ПРЕД_ТАХ_12090_1) (-) (ТАХ_12090_1) (ДЛ_ТАХ_12090_1);

ЕСЛИ (ДЛ_ТАХ_12090_1) (<) (0), то {

ВЫЧИСЛИТЬ (ДЛ_ТАХ_12090_1) (+) (10000) (ДЛ_ТАХ_12090_1);

}

}ИНАЧЕ {

ПЕРЕСЛАТЬ значение (0) в (ДЛ_ТАХ_12090_1);

}

ПЕРЕСЛАТЬ значение (ТАХ_12090_1) в (ПРЕД_ТАХ_12090_1);

ВЗВЕСТИ флаг (ФЛ_ЧТ_12090_1);

""""""""""""""""чтение тахогенератора 12090_2

""""""""""""""""чтение тахогенератора 12090_3

""""""""""""""""чтение тахогенератора 12090_4

""""""""""""""""чтение тахогенератора 12543

""""""""""""""""чтение тахогенератора 12544

""""""""""""""""чтение тахогенератора 12_1

""""""""""""""""чтение тахогенератора 12_2

СТАРТ таймер (ТАЙМ_ТАХ);

} "КОНЕЦ ПОДПРОГРАММЫ

""""""""""""""""""""""""""""ПРОЦЕДУРА ТАРИРОВАНИЕ""""""""""""""""""""""""""

ПРОЦЕДУРА (ТАРИРОВАНИЕ) {

ЕСЛИ (СТАТ_ТАР_12090_1) (=) (1), то {

ПЕРЕСЛАТЬ значение (БРУТТО_12090_1) в (ТАРА_СТАТ_12090_1);

СБРОСИТЬ флаг (СТАТ_ТАР_12090_1);

}

ЕСЛИ (СТАТ_ТАР_12090_2) (=) (1), то {

ПЕРЕСЛАТЬ значение (БРУТТО_12090_2) в (ТАРА_СТАТ_12090_2);

СБРОСИТЬ флаг (СТАТ_ТАР_12090_2);

}

ЕСЛИ (СТАТ_ТАР_12090_3) (=) (1), то {

ПЕРЕСЛАТЬ значение (БРУТТО_12090_3) в (ТАРА_СТАТ_12090_3);

СБРОСИТЬ флаг (СТАТ_ТАР_12090_3);

}

ЕСЛИ (СТАТ_ТАР_12090_4) (=) (1), то {

ПЕРЕСЛАТЬ значение (БРУТТО_12090_4) в (ТАРА_СТАТ_12090_4);

СБРОСИТЬ флаг (СТАТ_ТАР_12090_4);

}

ЕСЛИ (СТАТ_ТАР_12543) (=) (1), то {

ПЕРЕСЛАТЬ значение (БРУТТО_12543) в (ТАРА_СТАТ_12543);

СБРОСИТЬ флаг (СТАТ_ТАР_12543);

}

ЕСЛИ (СТАТ_ТАР_12544) (=) (1), то {

ПЕРЕСЛАТЬ значение (БРУТТО_12544) в (ТАРА_СТАТ_12544);

СБРОСИТЬ флаг (СТАТ_ТАР_12544);

}

ЕСЛИ (СТАТ_ТАР_12_1) (=) (1), то {

ПЕРЕСЛАТЬ значение (БРУТТО_12_1) в (ТАРА_СТАТ_12_1);

СБРОСИТЬ флаг (СТАТ_ТАР_12_1);

}

ЕСЛИ (СТАТ_ТАР_12_2) (=) (1), то {

ПЕРЕСЛАТЬ значение (БРУТТО_12_2) в (ТАРА_СТАТ_12_2);

СБРОСИТЬ флаг (СТАТ_ТАР_12_2);

}

"""""""""""""ДИНАМИЧЕСКОЕ ТАРИРОВАНИЕ ПОЗ. 12090_1"""""""""""""""""""""""

ЕСЛИ (ДИН_ТАР_12090_1) (=) (1), то {

ЕСЛИ (ДИН_ТАР) (=) (0), то {

ВЗВЕСТИ флаг (ДИН_ТАР);

СБРОСИТЬ флаг (КОНЕЦ_ТАР_12090_1);

ПЕРЕСЛАТЬ значение (0) в (ЧИСЛО_ИЗМ);

ПЕРЕСЛАТЬ значение (БРУТТО_12090_1) в (БРУТТО_ДИН);

ВЫЧИСЛИТЬ (ВРЕМЯ_ОБ_12090_1) (/) (100) (ВРЕМЯ_ОБ);

ЗАГРУЗИТЬ таймер (ТАЙМ_ТАР) уставкой (ВРЕМЯ_ОБ), режим (0);

РАЗРЕШИТЬ прерывание с номером (22);

СТАРТ таймер (ТАЙМ_ТАР);

ЕСЛИ (КОНВ_12090_1) (=) (1), то {

ПЕРЕСЛАТЬ значение (0) в (КАЛ_М_12090_1);

ПЕРЕСЛАТЬ значение (0) в (КАЛ_С_12090_1);

ПЕРЕСЛАТЬ значение (0) в (ЧИСЛО_ИЗМЕР);

}

}ИНАЧЕ {

ЕСЛИ (КОНЕЦ_ТАР_12090_1) (=) (0), то {

ЕСЛИ (ЧИСЛО_ИЗМ) (<) (100), то {

ПЕРЕСЛАТЬ значение (БРУТТО_12090_1) в (БРУТТО_ДИН);

}ИНАЧЕ {

ПЕРЕСЛАТЬ значение (ТАРА_ДИН) в (ТАРА_ДИН_12090_1);

ЗАПРЕТИТЬ прерывание с номером (22);

ВЗВЕСТИ флаг (КОНЕЦ_ТАР_12090_1);

}

}

ЕСЛИ (ЧИСЛО_ИЗМЕР) (<) (ВРЕМЯ_ОБ), то {

ЕСЛИ (ДЛ_ТАХ_12090_1) (>) (0), то {

ФУНКЦИЯ (ADDU32), вх (КАЛ_С_12090_1,КАЛ_М_12090_1,

0,ДЛ_ТАХ_12090_1),

вых (КАЛ_С_12090_1,КАЛ_М_12090_1,ERR);

ПЕРЕСЛАТЬ значение (0) в (ДЛ_ТАХ_12090_1);

ВЫЧИСЛИТЬ (ЧИСЛО_ИЗМЕР) (+) (1) (ЧИСЛО_ИЗМЕР);

}

}ИНАЧЕ {

ЕСЛИ (ЧИСЛО_ИЗМ) (=) (100), то {

СБРОСИТЬ флаг (ДИН_ТАР);

СБРОСИТЬ флаг (ДИН_ТАР_12090_1);

ФУНКЦИЯ (DIVU), вх (КАЛ_С_12090_1,КАЛ_М_12090_1,ВРЕМЯ_ОБ),

вых (Х_С,Х_М,ОСТ);

ФУНКЦИЯ (DIVU), вх (Х_С,Х_М,100),

вых (Х_С,Х_М,ОСТ);

ФУНКЦИЯ (DIVU), вх (0,ВРЕМЯ_ОБ_12090_1,100),

вых (Y_С,Y_М,ОСТ);

ФУНКЦИЯ (MULU), вх (Х_М,ОСТ),

вых (Х_С,Х_М);

ФУНКЦИЯ (ADDU32), вх (КАЛ_С_12090_1,КАЛ_М_12090_1,Х_С,Х_М),

вых (КАЛ_С_12090_1,КАЛ_М_12090_1,ERR);

}

}

}

}

"""""""""""""ДИНАМИЧЕСКОЕ ТАРИРОВАНИЕ ПОЗ. 12090_2"""""""""""""""""""""""

"""""""""""""ДИНАМИЧЕСКОЕ ТАРИРОВАНИЕ ПОЗ. 12090_3"""""""""""""""""""""""

"""""""""""""ДИНАМИЧЕСКОЕ ТАРИРОВАНИЕ ПОЗ. 12090_4"""""""""""""""""""""""

"""""""""""""ДИНАМИЧЕСКОЕ ТАРИРОВАНИЕ ПОЗ. 12543"""""""""""""""""""""""

"""""""""""""ДИНАМИЧЕСКОЕ ТАРИРОВАНИЕ ПОЗ. 12544"""""""""""""""""""""""

"""""""""""""ДИНАМИЧЕСКОЕ ТАРИРОВАНИЕ ПОЗ. 12_1"""""""""""""""""""""""

"""""""""""""ДИНАМИЧЕСКОЕ ТАРИРОВАНИЕ ПОЗ. 12_2"""""""""""""""""""""""

} """""""""""""""""""""""КОНЕЦ ПРОЦЕДУРЫ ТАРИРОВАНИЯ""""""""""""""""""

""""""""""""""""""""""""""""ПРОЦЕДУРА ЮСТИРОВКИ""""""""""""""""""""""""""

ПРОЦЕДУРА (ЮСТИРОВКА) {

ЕСЛИ (СТАТ_ЮСТ_12090_1) (=) (1), то {

ВЫЧИСЛИТЬ (БРУТТО_12090_1) (-) (ТАРА_СТАТ_12090_1) (ЮСТ_СТАТ_12090_1);

СБРОСИТЬ флаг (СТАТ_ЮСТ_12090_1);

}

ЕСЛИ (СТАТ_ЮСТ_12090_2) (=) (1), то {

ВЫЧИСЛИТЬ (БРУТТО_12090_2) (-) (ТАРА_СТАТ_12090_2) (ЮСТ_СТАТ_12090_2);

СБРОСИТЬ флаг (СТАТ_ЮСТ_12090_2);

}

ЕСЛИ (СТАТ_ЮСТ_12090_3) (=) (1), то {

ВЫЧИСЛИТЬ (БРУТТО_12090_3) (-) (ТАРА_СТАТ_12090_3) (ЮСТ_СТАТ_12090_3);

СБРОСИТЬ флаг (СТАТ_ЮСТ_12090_3);

}

ЕСЛИ (СТАТ_ЮСТ_12090_4) (=) (1), то {

ВЫЧИСЛИТЬ (БРУТТО_12090_4) (-) (ТАРА_СТАТ_12090_4) (ЮСТ_СТАТ_12090_4);

СБРОСИТЬ флаг (СТАТ_ЮСТ_12090_4);

}

ЕСЛИ (СТАТ_ЮСТ_12543) (=) (1), то {

ВЫЧИСЛИТЬ (БРУТТО_12543) (-) (ТАРА_СТАТ_12543) (ЮСТ_СТАТ_12543);

СБРОСИТЬ флаг (СТАТ_ЮСТ_12543);

}

ЕСЛИ (СТАТ_ЮСТ_12544) (=) (1), то {

ВЫЧИСЛИТЬ (БРУТТО_12544) (-) (ТАРА_СТАТ_12544) (ЮСТ_СТАТ_12544);

СБРОСИТЬ флаг (СТАТ_ЮСТ_12544);

}

ЕСЛИ (СТАТ_ЮСТ_12_1) (=) (1), то {

ВЫЧИСЛИТЬ (БРУТТО_12_1) (-) (ТАРА_СТАТ_12_1) (ЮСТ_СТАТ_12_1);

СБРОСИТЬ флаг (СТАТ_ЮСТ_12_1);

}

ЕСЛИ (СТАТ_ЮСТ_12_2) (=) (1), то {

ВЫЧИСЛИТЬ (БРУТТО_12_2) (-) (ТАРА_СТАТ_12_2) (ЮСТ_СТАТ_12_2);

СБРОСИТЬ флаг (СТАТ_ЮСТ_12_2);

}

"""""""""""""ДИНАМИЧЕСКАЯ ЮСТИРОВКА ПОЗ. 12090_1"""""""""""""""""""""""

ЕСЛИ (ДИН_ЮСТ_12090_1) (=) (1), то {

ЕСЛИ (ДИН_ЮСТ) (=) (0), то {

ВЗВЕСТИ флаг (ДИН_ЮСТ);

СБРОСИТЬ флаг (КОНЕЦ_ЮСТ_12090_1);

ПЕРЕСЛАТЬ значение (0) в (ЧИСЛО_ИЗМЕР);

ПЕРЕСЛАТЬ значение (БРУТТО_12090_1) в (ЮСТ_ДИН);

ВЫЧИСЛИТЬ (ВРЕМЯ_ОБ_12090_1) (/) (100) (ВРЕМЯ_ОБОР);

ЗАГРУЗИТЬ таймер (ТАЙМ_ЮСТ) уставкой (ВРЕМЯ_ОБОР), режим (0);

РАЗРЕШИТЬ прерывание с номером (21);

СТАРТ таймер (ТАЙМ_ЮСТ);

}ИНАЧЕ {

ЕСЛИ (КОНЕЦ_ЮСТ_12090_1) (=) (0), то {

ЕСЛИ (ЧИСЛО_ИЗМЕР) (<) (100), то {

ПЕРЕСЛАТЬ значение (БРУТТО_12090_1) в (БРУТТО_ДИНАМ);

}ИНАЧЕ {

ВЫЧИСЛИТЬ (ЮСТ_ДИН) (-) (ТАРА_ДИН_12090_1)

(ЮСТ_ДИН_12090_1);

ЗАПРЕТИТЬ прерывание с номером (21);

СБРОСИТЬ флаг (ДИН_ЮСТ);

ВЗВЕСТИ флаг (КОНЕЦ_ЮСТ_12090_1);

СБРОСИТЬ флаг (ДИН_ЮСТ_12090_1);

}

}

}

}

"""""""""""""ДИНАМИЧЕСКАЯ ЮСТИРОВКА ПОЗ. 12090_2"""""""""""""""""""""""

"""""""""""""ДИНАМИЧЕСКАЯ ЮСТИРОВКА ПОЗ. 12090_3"""""""""""""""""""""""

"""""""""""""ДИНАМИЧЕСКАЯ ЮСТИРОВКА ПОЗ. 12090_4"""""""""""""""""""""""

"""""""""""""ДИНАМИЧЕСКАЯ ЮСТИРОВКА ПОЗ. 12543"""""""""""""""""""""""

"""""""""""""ДИНАМИЧЕСКАЯ ЮСТИРОВКА ПОЗ. 12544"""""""""""""""""""""""

"""""""""""""ДИНАМИЧЕСКАЯ ЮСТИРОВКА ПОЗ. 12_1"""""""""""""""""""""""

"""""""""""""ДИНАМИЧЕСКАЯ ЮСТИРОВКА ПОЗ. 12_2"""""""""""""""""""""""

}

""""""""""""""""""""""""""""КОНЕЦ ПРОЦЕДУРЫ ЮСТИРОВКИ""""""""""""""""""""""

"""""""""""""""""""""""ПРОЦЕДУРЫ СЧЕТА МАТЕРИАЛА ЗА МЕСЯЦ""""""""""""""""""

ПРОЦЕДУРА (СЧЕТМЕС) {

ЕСЛИ (ЧАС) (=) (20), то {

ЕСЛИ (ФЛ_МЕС) (=) (0), то {

ПЕРЕСЛАТЬ значение (СЧЕТ_МЕС_С_12090_1) в (МЕС_С_12090_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_МЕС_М_12090_1) в (МЕС_М_12090_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_МЕС_С_12090_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_МЕС_М_12090_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_МЕС_С_12090_2) в (МЕС_С_12090_2);

ПЕРЕСЛАТЬ значение (СЧЕТ_МЕС_М_12090_2) в (МЕС_М_12090_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_МЕС_С_12090_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_МЕС_М_12090_2);

ПЕРЕСЛАТЬ значение (СЧЕТ_МЕС_С_12090_3) в (МЕС_С_12090_3);

ПЕРЕСЛАТЬ значение (СЧЕТ_МЕС_М_12090_3) в (МЕС_М_12090_3);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_МЕС_С_12090_3);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_МЕС_М_12090_3);

ПЕРЕСЛАТЬ значение (СЧЕТ_МЕС_С_12090_4) в (МЕС_С_12090_4);

ПЕРЕСЛАТЬ значение (СЧЕТ_МЕС_М_12090_4) в (МЕС_М_12090_4);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_МЕС_С_12090_4);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_МЕС_М_12090_4);

ПЕРЕСЛАТЬ значение (СЧЕТ_МЕС_С_12543_1) в (МЕС_С_12543_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_МЕС_М_12543_1) в (МЕС_М_12543_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_МЕС_С_12543_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_МЕС_М_12543_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_МЕС_С_12543_2) в (МЕС_С_12543_2);

ПЕРЕСЛАТЬ значение (СЧЕТ_МЕС_М_12543_2) в (МЕС_М_12543_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_МЕС_С_12543_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_МЕС_М_12543_2);

ПЕРЕСЛАТЬ значение (СЧЕТ_МЕС_С_12544_1) в (МЕС_С_12544_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_МЕС_М_12544_1) в (МЕС_М_12544_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_МЕС_С_12544_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_МЕС_М_12544_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_МЕС_С_12544_2) в (МЕС_С_12544_2);

ПЕРЕСЛАТЬ значение (СЧЕТ_МЕС_М_12544_2) в (МЕС_М_12544_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_МЕС_С_12544_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_МЕС_М_12544_2);

ПЕРЕСЛАТЬ значение (СЧЕТ_МЕС_С_12_1) в (МЕС_С_12_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_МЕС_М_12_1) в (МЕС_М_12_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_МЕС_С_12_1);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_МЕС_М_12_1);

ПЕРЕСЛАТЬ значение (СЧЕТ_МЕС_С_12_2) в (МЕС_С_12_2);

ПЕРЕСЛАТЬ значение (СЧЕТ_МЕС_М_12_2) в (МЕС_М_12_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_МЕС_С_12_2);

ПЕРЕСЛАТЬ значение (0) в (СЧЕТ_МЕС_М_12_2);

ВЗВЕСТИ флаг (ФЛ_МЕС);

}

}ИНАЧЕ{

СБРОСИТЬ флаг (ФЛ_МЕС);

}

}

""""""""""""""""КОНЕЦ ПРОЦЕДУРЫ СЧЕТА МАТЕРИАЛА ЗА МЕСЯЦ"""""""""""""""""""