В системе связи ЭВМ с объектом управления можно выделить два основных потока информации: поток измерительной информации, поступающей в ЭВМ от датчиков физических параметров, которые характеризуют состояние объекта управления, и поток управляющей (командной) информации, передаваемой из ЭВМ на входы исполнительных устройств объекта управления.
Согласно этому систему связи с объектом управления можно представить состоящей из двух основных частей:
1) для приема аналоговой и цифровой измерительной информации, поступающей в ЭВМ от датчиков физических параметров, характеризующих состояние объекта управления.
2) для формирования и передачи управляющих (командных) воздействий в виде цифровых, двухпозиционных или аналоговых сигналов на входы исполнительных устройств объекта управления, а также на устройства контроля, регистрации и отображения информации (табло, пульты, экраны дисплеев и др.) для представления информации обслуживающему персоналу.
Устройства ввода информации в ЭВМ служат для ввода в память ЭВМ данных и программ, а также для корректировки при необходимости ранее введенных данных и программ. По принципу работы устройства ввода делят на две группы: устройства ручного ввода и устройства автоматического ввода.
Однофазный АВР. Автоматический ввод резерва для однофазной цепи, принцип работы.
Устройства ручного ввода имеют клавиатуру, с помощью которой осуществляется ввод информации непосредственно в память ЭВМ. К устройствам ручного ввода относятся пульты управления, различные специальные пульты ручного ввода, телетайпы, электрифицированные пишущие машинки, дисплеи и другие устройства алфавитно-цифровой печати, снабженные специальной клавиатурой.
Устройства автоматического ввода информации в ЭВМ включают в себя устройства ввода информации с промежуточных носителей (магнитных лент и др.), устройства непосредственного ввода (читающие автоматы, речевой ввод и др.).
Для того чтобы осуществить автоматический ввод информации с промежуточных носителей, необходимо предварительно перенести на них эту информацию с первичных документов или из ЭВМ.
Автоматические устройства для непосредственного ввода информации в ЭВМ путем считывания ее с печатного текста, графиков или бланков – сканеры, плоттеры, позволяют исключить ручную переработку данных, требующую больших затрат труда и сопровождающуюся часто ошибками.
Устройства вывода информации из ЭВМ обеспечивают вывод информации из памяти ЭВМ в форме, пригодной для дальнейшего использования. Они могут быть условно разделены на следующие группы:
1) устройства вывода информации на разного рода индикаторы, табло, экраны дисплеев и т. п. для визуального считывания;
2) устройства, документально фиксирующие выдаваемую из ЭВМ информацию в виде текста, графиков и изображений – принтеры (матричные, струйные, лазерные);
3) устройства вывода информации на промежуточный носитель;
4) устройства вывода информации во внешнюю среду (цифро-аналоговые преобразователи, устройства выдачи данных на линии связи и др.).
Устройство автоматического ввода паролей в компьютер| Пелектроника 2.0
16. Основные принципы тестирования программ
Тестирование является одним из этапов жизненного цикла ПП (программный продукт), направленным на повышение качественных характеристик. При создании типичного ПП около 40% общего времени и более 49% общей стоимости расходуется на проверку (тестирование) разрабатываемой программы.
Программы как объекты тестирования имеют ряд особенностей, которые отличают процесс их тестирования от общепринятого, применяемого при разработке аппаратуры и других технических изделий. Особенностями тестирования ПП являются:
— отсутствие эталона (программы), которому должна соответствовать тестируемая программа;
— высокая сложность программ и принципиальная невозможность исчерпывающего тестирования;
— практическая невозможность создания единой методики тестирования (формализации процесса тестирования) в силу большого разнообразия ПП по их сложности, функциональному назначению, области использования и т.д.
Применительно к ПП тестирование – это процесс многократного выполнения программы с целью обнаружения ошибок. Программа тестируется для того, чтобы повысить уровень ее надежности, т.е. выявить максимальное число ошибок. Цель тестирования – выявление как можно большего числа ошибок. Из правильного определения тестирования вытекает ряд принципов, которые интуитивно ясны, но именно поэтому на них не обращают внимания.
Принцип 1. Процесс тестирования более эффективен, если проводится не автором программы. Тестовый прогон, в результате которого не выявлено ошибок считается неудачным (неэффективным).
Принцип 2. Описание предполагаемых значений результатов тестовых прогонов должно быть необходимой частью тестового набора данных. Сложность его заключается в том, что при тестировании программы (модуля) необходимо для каждого входного набора данных рассчитать вручную ожидаемый результат или найти допустимый интервал изменения выходных данных.
Принцип 3. Необходимо досконально изучать результаты каждого теста. Значительная часть всех обнаруженных в конечном итоге ошибок могла быть выявлена в результате самых первых тестовых прогонов, но они были пропущены вследствие недостаточно тщательного анализа первых тестовых прогонов.
Принцип 4. Тесты для неправильных и непредусмотренных входных данных должны разрабатываться также тщательно, как для правильных, предусмотренных.
Принцип 5. Необходимо проверять не только, делает ли программа то, для чего она предназначена, но и не делает ли она то, что не должна делать. Необходимо любую программу проверить на нежелательные побочные эффекты. Например, если программа обработки и печати какой-нибудь ведомости дублирует первую или последнюю строку, то она содержит ошибку.
Принцип 6. Вероятность наличия необнаруженных ошибок в части программы пропорциональна числу ошибок, уже обнаруженных в этой части. Из этого принципа можно сделать вывод: если в какой-нибудь части программы обнаружено больше ошибок, чем в других, то ее необходимо тестировать более тщательно.
Источник: studopedia.info
Большая Энциклопедия Нефти и Газа
Устройство ввода программы выполняется в зависимости от применяемого в системе программоносителя. Наиболее часто в качестве программоносителей используются пластмассовая лента с магнитным покрытием, перфолента и перфокарты. [2]
Устройство ввода программ ( УВП) Е443 предназначено для записи в оперативную память АКК переменной части программы, заданной потребителем. [3]
Устройства ввода программы включают в себя носители программы и считывающие устройства. [5]
Устройство ввода программ обеспечивает ввод в запоминающее устройство машины программных и числовых данных при остановленной машине или во время ее работы. Вначале данные наносятся на перфоленту перфоратором типа ПЛ 80 / 8, а затем считываются трансмиттером. [6]
Конструкция устройств ввода программы также разнообразна по сложности — от линейки в системах управления упорами до сложных вводных устройств в системах управления перфолентами и магнитными лентами. [7]
Такая головка используется в устройстве ввода программы . Головка ( рис. 3) состоит из питающей 3 и приемной 2 плат, в которых в соответствии с полным кадром перфоленты расположены питающие сопла и приемные каналы. Платы установлены на определенном расстоянии друг от друга. В зазоре между питающей и приемной платами находится перфолента. [8]
Информация с перфоленты подается в устройство ввода программы , откуда с помощью дешифраторов часть информации направляется в устройство управления командами по адресам: s — задание частоты вращения шпинделя, Т — выбор номера инструмента, М — выполнение вспомогательных функций станка. Оставшаяся информация направляется в интерполятор, преобразуется в унитарный код, распределяется в виде импульсов по координатам X, Y, Z и поступает в блок связи с приводами и далее в приводы подач. Контроль за их перемещением осуществляют датчики обратной связи. [10]
На рис. Х-17 представлена классификация устройств ввода программ в станки. [11]
Значения абсолютных координат точки позиционирования из устройства УВП ввода программы поступают в регистры Рх и Ру, и затем в сумматор С. Здесь они алгебраически суммируются с величинами, задаваемыми переключателями смещения Смх и Сми. Во время работы эти суммы сравниваются в том же блоке С с показателями измерительных преобразователей Дх и Ду и разница используется для получения координат точек, в которых подаются команды на изменение скорости перемещения и на останов. [13]
Распределительный вал VIII автомата служит в качестве устройства ввода программы , а программоносителем являются кулачки, расположенные на этом валу. За один оборот распределительного вала на автомате полностью обрабатывается одна деталь. [14]
Источник: www.ngpedia.ru
6.3. Устройства ввода-вывода
Устройства (модули) ввода-вывода являются интерфейсом между процессором ПЛК и реальным миром. В идеальном случае было бы желательно иметь в процессоре значения измеренных сигналов в любой момент времени. Однако поскольку количество каналов ввода-вывода в некоторых системах может достигать тысяч, а измерительные каналы всегда имеют ограниченную пропускную способность, измеренные значения поступают в процессор в дискретные моменты времени.
Существует несколько уровней и способов опроса множества каналов ввода. Современный модуль ввода имеет свой собственный микроконтроллер, который выполняет циклический опрос всех своих каналов и помещает полученные данные в буфер. Если по алгоритму работы системы автоматизации используются только несколько каналов модуля, то неиспользуемые каналы можно замаскировать (исключить их из процедуры опроса), если это требуется для увеличения быстродействия системы. При поступлении в модуль команды считывания значений со входов собранные данные передаются из буфера модуля в ПЛК, где помещаются в буфер OPC сервера или в определенную область ОЗУ.
Опрос модулей может выполняться циклически с одинаковой частотой для всех модулей, или с разной частотой. Второй вариант позволяет уменьшить загруженность шины, по которой выполняется обмен данными между модулями ввода и процессорным модулем.
Циклический опрос всех модулей с заранее заданной частотой сильно загружает шину, по которой модули ввода связываются с процессором. Это особенно очевидно, если процессор сканирует входы для обнаружения сигнала от аварийного датчика, который может сработать один раз в 10 лет, или если вводятся данные от датчика температуры в условиях, когда температура постоянна. В подобных случаях более эффективны многомастерные шины (например, CAN или Profibus), которые позволяют использовать режим подписки, при котором процессор модуля ввода, в котором произошло изменение состояния входа, является инициатором обмена данными.
Наибольшее распространение в промышленной автоматизации нашли одномастерные шины и циклический опрос (поллинг — от «polling») модулей ввода в силу своей простоты и сравнительно низкой стоимости.
Модули ввода и вывода в промышленной автоматизации имеют гальваническую изоляцию между входными (выходными) зажимами и шиной контроллера. Напряжение изоляции составляет от 2500 В (реже от 500 В) до 4000 В.
Иногда требуется выполнить одновременный опрос входов всех модулей ввода или вывести данные одновременно в каналы всех модулей вывода. Для решения этой проблемы используют широковещательные команды, которые воспринимаются всеми модулями одновременно и они выполняют ввод или вывод данных в свои буферные регистры в одно и то же время. После этого обычным циклическим опросом данные по очереди вводятся в процессорный модуль.
Модули ввода соединяются с процессором последовательной или параллельной шиной. В магистрально-модульных системах используются параллельные шины ISA, PCI, Compact PCI, PCI Express, PC/104, SpeedBus, VME и др., в модульных ПЛК — частнофирменные (нестандартные) последовательные и параллельные шины. В контроллерах с распределенными (удаленными) модулями ввода-вывода наиболее распространены последовательные шины на основе интерфейсов RS-485 и CAN.
Преимуществом параллельной шины является высокая пропускная способность, позволяющая выполнять сканирование модулей ввода с высокой частотой и использовать модули аналогового ввода с тактовой частотой АЦП до 100 кГц. Однако небольшая длина параллельной шины, ограниченная рассинхронизацией отдельных бит в передаваемом слове, не позволяет подключить к одному контроллеру более 32 модулей. Контроллеры с последовательной шиной имеют противоположные свойства. Кроме того, они позволяют организовать распределенные системы сбора данных и управления, преимущества которых обсуждались в разделе «Архитектура автоматизированной системы».
Большинство параллельных и последовательных шин контроллеров являются одномастерными, поскольку многомастерные шины существенно сложнее и дороже.
Обмен данными с модулем выполняется по адресу, который обычно записывается в ПЗУ модуля. Иногда адресом является номер слота, в который вставляется модуль или положение микропереключателя.
Цепи входов и выходов модулей ввода должны иметь гальваническую изоляцию, назначение которой подробно описано в разделе «Защита от помех». Гальваническая изоляция может быть поканальная, когда каждый канал изолирован от остальных, или групповая. Обычно используется групповая изоляция. В удаленных модулях распределенных ПЛК может быть использована индивидуальная гальваническая изоляция интерфейса RS-485 каждого модуля или групповая изоляция интерфейсов нескольких модулей с помощью одного модуля развязывающего повторителя интерфейсов. Для передачи напряжения питания в изолированную часть модуля используются DC-DC преобразователи, построенные с применением развязывающих миниатюрных трансформаторов.
Современные модули ввода-вывода могут выполнять кроме функций ввода некоторую обработку вводимой информации и дополнительные функции: компенсацию температуры холодного спая термопар, линеаризацию нелинейных датчиков, диагностику обрыва датчика, автоматическую калибровку, ПИД-регулирование, управление движением. Перенос части функций контроллера в модули ввода-вывода является современной тенденцией, направленной на увеличение степени распараллеливания задач управления, обеспечение независимости локальных модулей (которые по своим функциям приближаются к ПЛК) и уменьшение потока информации между параллельно работающими процессорами в модулях ввода-вывода. По такому принципу построены, в частности, модули RealLab! фирмы Reallab!.
6.3.1. Ввод аналоговых сигналов
Разнообразие физических явлений порождает разнообразие датчиков, для каждого из которых существует соответствующее устройство ввода. Для унификации (сокращения числа типов) модулей ввода используют устройства нормирования сигналов, которые преобразуют измеряемую физическую величину в стандартный электрический сигнал, соответствующий ГОСТ 26.011-80 и ГОСТ Р 51841-2001. Фактически в промышленной автоматизации используются следующие стандартные диапазоны аналоговых сигналов: 0. 10 В, 0. ±10 В, 1. 5 В и 4. 20 мА, 0. 20 мА. ГОСТ Р 51841-2001 не рекомендует применять диапазон 0. 20 мА в новых разработках [ГОСТ]. Входное сопротивление потенциальных входов должно быть не менее 10 кОм для диапазона 0. 10 В и 0. ±10 В, не менее 5 кОм для диапазона 1. 5 В и не более 300 Ом для диапазона 4. 20 мА.
Применение стандарта позволяет изготовить всего один тип универсального устройства ввода со стандартными диапазонами для всех типов датчиков со стандартными выходными сигналами. Однако для таких датчиков, как термопары [ГОСТ], термопреобразователи сопротивления [ГОСТ], [ГОСТ 20420-75, ГОСТ 21616-91] в силу их широкой распространенности нормирующие преобразователи встраивают в сами модули ввода. Поэтому кроме универсальных модулей ввода получили распространение специализированные модули ввода сигналов термопар, термопреобразователей сопротивления и тензорезисторов.
Структура модулей ввода
Рассмотрим типовую структуру модулей ввода аналоговых сигналов на примере серии RealLab! фирмы RealLab! [Денисенко]. На рис. 6.4 приведена структура модуля NL-4RTD серии (RealLab!), однако она является типовой и на ее примере можно рассмотреть базовые принципы построения современных модулей ввода аналоговых сигналов.
Основной частью модуля ввода является аналого-цифровой преобразователь (АЦП). Обычно используют один АЦП для ввода нескольких (обычно 8 или 16) аналоговых сигналов. Для подключения источников сигнала к АЦП используется аналоговый коммутатор на МОП-транзисторах. Ввод нескольких сигналов выполняется последовательно во времени. В случаях, когда необходим одновременный ввод, используют модули, в которых каждый канал имеет свой АЦП.
В модулях ввода обычно используют дифференциальные входы, которые позволяют выполнить более помехозащищенный канал передачи аналогового сигнала по сравнению с одиночными (не дифференциальными) входами. Некоторые модули (например, NL-8AI ) позволяют программно задавать конфигурацию входов: дифференциальные или одиночные.
Входные цепи устройств ввода принято защищать от статического электричества, от повышенного напряжения, от изменения полярности. Для защиты используют специальные микросхемы защиты, в которых активным элементом является МОП-транзисторный ключ. При повышении напряжения выше допустимого ключ запирается, предохраняя чувствительные входы от повышенного напряжения. Измерительные цепи строят таким образом, чтобы сопротивление открытого МОП ключа не вносило погрешность в результат измерения. Для этого ключ используют либо для передачи потенциала, когда ток, протекающий через открытый ключ, пренебрежимо мал, либо для передачи тока, когда информация переносится в форме тока и поэтому падение напряжения на ключе не вносит погрешность в передаваемый сигнал.
Рис. 6.4. Структура модуля NL-4RTD для ввода сигналов термопреобразователей сопротивления
Модули ввода могут иметь программно переключаемые диапазоны входных сигналов. Например, модуль NL-8TI фирмы RealLab! имеет входные диапазоны ±15 мВ, ±50 мВ, ±100 мВ, ±500 мВ, ±1 В, ±2,5 В, ±20 мА. Диапазоны измерений обычно задаются для всех входов одинаковыми. Модули NL серии RealLab! позволяют для каждого входа задавать свой диапазон измерений.
Современная элементная база позволяет строить недорогие модули аналогового ввода с погрешностью измерений ±0,05%, что еще 10 лет назад можно было реализовать только в стационарных и дорогих вольтметрах.
Для коммутации входных ключей модуля используется программа, исполняемая микроконтроллером. Эта процедура достаточно проста и для ее выполнения можно использовать микроконтроллер, входящий в состав некоторых АЦП (именно такой АЦП использован на рис. 6.4). Это позволяет уменьшить количество каналов гальванической развязки между аналоговыми входами и портом RS-485.
Микропроцессор типового модуля ввода выполняет следующие функции:
- реализует протокол обмена с ПЛК;
- исполняет команды, посылаемые ПЛК в модуль;
- реализует выполнение функций автоматической калибровки, диагностики обрыва или к. з. в цепи датчика;
- преобразует форматы вводимых данных (инженерный формат — в единицах измеряемой величины, шестнадцатеричный формат, проценты от диапазона измерений);
- устанавливает скорость обмена с ПЛК (для ПЛК с распределенными модулями ввода-вывода);
- выполняет цифровую фильтрацию входного сигнала (в модулях RealLab! эта операция выполняется контроллером, встроенным в АЦП).
В постоянной памяти ЭППЗУ модуля хранятся калибровочные коэффициенты, адрес модуля, программа, таблицы линеаризации нелинейных характеристик термопар и термопреобразователей сопротивления. Сторожевой таймер выполняет перезагрузку (сброс) микроконтроллера в случае его зависания.
В модуле ввода на рис. 6.4 имеются каналы вывода дискретных сигналов. Это позволяет реализовать на одном модуле ПИД-регулятор с широтно-импульсным (ШИМ) управлением исполнительным устройством.
Питание внутренних узлов модуля выполняется от внутреннего стабилизатора напряжения, который позволяет подавать внешнее напряжение питания в широком диапазоне, обычно от 10 до 30 В. Большой диапазон напряжений питания очень полезен в распределенных системах, когда модули ввода могут находиться на значительном расстоянии друг от друга и поэтому падение напряжения на сопротивлении проводов питания достигает 10. 20 В.
Цепи питания модулей защищаются от неправильной полярности напряжения питания и от превышения напряжения питания над допустимым значением. Защита выполняется диодами, стабилитронами, позисторами и плавкими предохранителями.
Для интерфейса RS-485 используется защита от статического электричества, от электромагнитных импульсов, от короткого замыкания и перегрева выходного каскада. Дополнительно в модулях RealLab! сделана защита на позисторах и стабилитронах от повышенного напряжения в линиях связи.
Команды управления модулем
Для чтения данных со входов модуля, изменения входного диапазона, частоты обмена и выполнения других функций процессор ПЛК посылает в модули команды. Команды могут иметь текстовый формат (так сделано в протоколе DCON и Modbus ASCII) или шестнадцатеричный (как, например, в протоколе Modbus RTU).
Приведем пример нескольких команд в текстовом формате.
Команда чтения данных из модуля аналогового ввода имеет вид текстовой строки
#AA[CHK](cr), где AA — адрес (от 00 до FF). Например, если модуль имеет адрес 04, то команда будет иметь вид #04. Ответ на эту команду последует в виде восьми числе, соответствующих сигналам на восьми входах модуля ввода, например >+1.2345+0.3456+0.0001+2.5000+1.2345+0.3456+0.0001+2.5000, где «>» — символ начала ответа.
Для чтения данных из канала с номером N можно использовать команду #AAN, например, #042, ответ на которую может быть получен в виде одного значения напряжения на входе модуля >+1.2345.
Для выполнения автокалибровки подается команда $AA0, где AA — адрес модуля.
Полный список команд для модулей RealLab! (их около 50 для каждого модуля) можно найти в документации на сайте Reallab!.
Источник: www.reallab.ru