Каким образом программа попадает в контроллер

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

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

RS 232(используется для «заливки» ПО)

Использование интерфейса RS 485требует наличия аппаратного пре-образователя протоколов, преобразующего электрические уровни сигналов ин-терфейса RS 232 в 2-х проводной (Data+ и Data-) дифференциальный интерфейс RS 485

TCP-IP требует наличия в составе контроллера и ПК, специализир. сетевых карт

ПРИ ЛЮБОМ способе связи, после обеспе-чения физического соединения, требуется установить (выбрать и настроить) логи-ческий протокол обмена.Практическая реализация протоколов может иметь как аппаратную, так и программную составляющие.

На логическом уровне обмен данными между Windows-приложением и контроллером одного «по-средника»(СЕРВЕР). Он функцию двунаправленного преобразо-вания формата данных, поступающих в составе пакета протокола в формат переменной, с которой работает конкретное Win-приложение . В настоящее время на практике наиболее часто используется четыре основных стандартизованных вида технологий обмена данными .

Разработка программ управления для контроллеров MCX (часть 1)

1) ActiveX компоненты . осуществляется двумя основными путями:

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

Б) специальных ActiveX Con-trol компонентов, DLL библиотек (для Win-приложений)

2) Технология DDE — технол. обмена данными между двумя Win-приложениями. В составе всех современных SCADA систем уже есть встроенные модули, формирующие получаемые от контроллеров переменные в «формате DDE». Эти модули часто называют DDE серверами и фактически они обеспечивают обмен данными между SCADA системой и разрабатываемым приложением. основные особенности DDE технологии: обмен осуществляется приемом/передачей трех строковых переменных: Service (имя приложения передатчика), Topic (имя файла хранятooщего передаваемые данные), Item (имя передаваемой переменной). для каждого приложения, поддерживающего эту технологию, предусмотрены заранее известные, зарезервированные и индивидуальные на-звания этих строк.

3) Технология OPC является первой серьезной попыткой стандартизации процессов обмена данными между ЛЮБЫМ УСТРОЙСТВОМ и ЛЮБЫМ Win-ПРИЛОЖЕНИЕМ ПРИ НЕОГРАНИЧЕННОМ ЧИСЛЕ И ТЕХ И ДРУГИХ. ОРС сервер контроллера– это драйвер, обеспечивающий стандартизованный двухсторонний обмен данными между контроллером и Win-приложением ПК в формате ОРС для конкретного транспортного протокола.Преимущества ОРС технологии: независимость ПО приложений-клиентов от контроллеров, отсутствие необходимости модификации ПО при замене контроллеров.

Синтезировать схему одноразрядного полного арифметического сумматора в базисе «И-ИЛИ-НЕ»

Программирование ПЛК. 8. Подключение контроллера и первая программа.

Операция сложения двух одноразрядных чисел x1 и x2 и формирование результата суммы широко применяется в вычислительной технике, поскольку все остальные арифметические операции (умножение, деление, вычитание) можно выразить через операцию сложения чисел, представленных некоторыми специальными кодами. Исключение составляет случай сложения двух единиц, когда происходит переполнение, и для индикации этого приходится вводить новую переменную Р – сигнал переноса в старший разряд. В десятичной системе счисления аналогичная ситуация возникает когда складывают, например, 1+9=10, в данном случае разрядности единиц уже не хватает, и на единицу увеличивается разряд десятков. Отсюда следует , что при суммировании двух одноразрядных чисел, результат может быть числом двухразрядным, причем младший разряд определяется выражением , а старший равен Р. Ниже будет показано, что суммирование двух много разрядных чисел сводится к поразрядному суммированию, начиная с младшего разряда, с учетом переноса из предыдущего разряда.

Таким образом, одноразрядный полный сумматор, обеспечивает сложение трех двоичных цифр – слагаемых и сигнала переноса (из предыдущего младшего (i- 1) разряда). А на выходе формируется сумма этих трех цифр и сигнал переноса в старший (i +1) разряд.

Билет 37

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

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

Его емкость определяетсявыражением С=εr ε0Q/δ,где δ — расстояние между электродами; Q—ихплощадь;ε0 — электри­ческая постоянная; εr — относительная проницаемость диэлектрика. Изменение любого из этих параметров изменяет емкость конденса­тора. У преобразователя с прямоугольными электродами (рис1.а) Q=bх и имеетсянекоторый диапазон перемещения пластин х, в кото­ром емкость линейно зависит от х (рис.1,б).Линейная зависимость искажается вследствие краевого эффекта. В области линейной зави­симости чувствительность такого преобразователя S = dC/dx = εr ε0b/δ постоянна и увеличивается с уменьшением расстояния между электро­дами δ.

Если изменяется расстояние δ между электродами, функция преобразования С = f(δ) представляет собой гиперболическую функцию. Чувствительность преобразователя S = dC/dδ = εr ε0 Q /δ 2 сильнее, чем в предыдущем случае, зависит от расстояния между пла­стинами δ.

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

Емкость такого преобразователя определяется как емкость двух параллельно включенных конденсато­ров. Один нз нихCε образован частью электродов и диэлектрической пластиной,другой С0 — оставшейся частью электродов с межэлектрод­ным пространством,не заполненным пластинкой.

Читайте также:
Java программа не устанавливает на компьютер

Если пластинка с относительной диэлектрической проницаемостью εr имеет толщину δ, равную расстоянию между электродами, то функция преобразования преобразователя описывается выражением C=Cε+C0=ε0[Q+Qε(ε-1)]/δ где Q – площадь электродов; Qε — часть площади диэлектрической пластины, находящаяся между электродами. Емкостные преобразователи имеют ряд специфических достоинств и недостатков, определяющих область их применения.

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

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

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

Дата добавления: 2018-04-15 ; просмотров: 297 ; Мы поможем в написании вашей работы!

Источник: studopedia.net

Связь через контроллер

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

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

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

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

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

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

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

Строение шины

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

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

Читайте также:
ГТА Сан андреас программы машины

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

Таким образом, когда центральный процессор посылает сообщение шине о том, что нужно сохранить цепочку битов по адресу, приписанному к контроллеру, ее и получает контроллер, а не оперативная память. Точно также, если центральный процессор пытается прочитать данные из такого адреса, указанного в команде загрузки, то он получит последовательность битов из контроллера, а не из памяти. Такая система связи называется вводом-выводом, отображенным на память (memory-mapped I/O), потому что устройства ввода-вывода компьютера представляются как различные ячейки памяти (рис. 2.11).

Поскольку контроллер подключен к шине компьютера, он может сам связываться с оперативной памятью в течение тех наносекунд, когда центральный процессор не использует шину. Этот доступ контроллера к оперативной памяти называется DMA (direct memory access — прямой доступ к памяти) и является очень важным для работы компьютера.

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

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

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

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

Источник: studopedia.ru

Как работает ПЛК – программируемый логический контроллер

kak-rabotaet-plc

Что такое ПЛК я уже писал. Теперь хочу немного поговорить, как же он работает и что заставляет его работать.

Как уже говорилось, ПЛК – программируемый логический контроллер. Он входит составной частью в АСУ ТП. Его можно представить, как своеобразный небольшой компьютер, только устроенный достаточно компактно и со своими особенностями.

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

Датчики могут быть совершенно различными:

— аналоговыми — напряженческими (например, 0 — 10В), токовыми(например, 4-20мА), термометрами сопротивления различной градуировки, термопарами и т.п.;

Приёмники не отстают по разнообразию от датчиков. Это:

— исполнительные механизмы дискретные (т.е. управляемые дискретными сигналами);

— исполнительные механизмы аналоговые(т.е. управляемые аналоговыми сигналами);

— световые и звуковые табло сигнализации;

Т.е. смысл работы ПЛК заключается в том, что бы:

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

А потом повторить все сначала :).

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

  1. Устройство – «все-в-одном». Т.е. в одной «коробке» находится как процессор с памятью – «сердце» ПЛК, так и входы/выходы.
  2. Распределенное устройство. Т.е. процессорный модуль со своей обвязкой – это отдельный блок, а к нему уже по шине либо через интерфейсные связи подключаются модули ввода/вывода.

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

Второй вариант используется гораздо шире, потому что производства с полнофункциональным АСУ ТП требуют и соответствующего количества обрабатываемых сигналов. И, в случае немалого производства, гораздо удобнее разнести контроллерные модули ввода/вывода территориально и объединить их в сеть, подчиненную контроллеру. Так называемую полевую сеть или fieldbus по-английски.

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

Fieldbus – это общее название полевой сети (или шины), коих существует достаточно много. В стандарте IEC61158 (МЭК61158) их определено целых 8 (восемь) штук. А до принятия этого стандарта каждый производитель ПЛК считал своим долгом придумать свою полевую сеть.

Но речь не о сетях, а о работе контроллера.

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

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

Если это дискретный сигнал, то он принимает значения логических «0» или «1».

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

Например, у контроллеров OMRON, для униполярного сигнала максимальное число, характеризующее максимальное значение измеренной величины на входе равно 4000. У контроллеров Siemens — 27643. И т.п.

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

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

Но как обрабатываются аналоговые сигналы, я расскажу в другой статье.

Итак, контроллер получил кучу нужных сигналов. Как это все использовать? Вернее, чем это обработать?

Конечно же, каким либо языком программирования.

Существует стандарт на набор языков программирования для промышленных контроллеров IEC61131-3. В нем их 5 (пять). Но некоторые производители добавляют свои. Или уменьшают, по сравнению со стандартом их количество. Но принципы и подходы в этих языках сохраняются.

Языки в стандарте следующие:

IL – язык инструкций (instruction list);

LD – язык релейной логики (ladder diagram);

ST – «паскале»-подобный язык (structured text);

FB – язык функциональных блоков (function blok);

SFC – язык последовательных переходов (sequential function chart).

Подробнее я расскажу о языках в другой статье.

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

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

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

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

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

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

Комментируйте, подписывайтесь на наши новости, делитесь с друзьями в соцсетях!

Источник: asutpby.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru