Часть3 (1028412), страница 14
Текст из файла (страница 14)
Подключенный к нимсимметричной витой парой внешний контакт может вызывать в цепи ток при своем замыкании и вызывать открытие выходного транзистора оптопары. Таким образом и осуществляется контроль датчиков типа «сухой контакт» по двухпроводной линии.Перевод перемычки в состояние 4 обеспечивает уже подачу напряжения между выводами платы +Di0 и –Vin. Если группу «сухих» контактов объединить на объекте вместеи эту общую точку подвести одним проводом к –Vin, вторые концы контролируемых контактов подключать к индивидуальным входам +DiХ, получим однопроводную схему контроля.
Экономия на проводах и монтаже, но меньшая помехозащищенность.Рябов Владимир Тимофеевич. Кафедра «Электронные технологии в машиностроении»МГТУ им. Н. Э. Баумана, V_Ryabov@mail.ru40Ко входам +Vin и –Vin может быть подключен внешний источник питания «сухих»контактов. При этом встроенный источник отключается.Дальнейшую обработку входных сигналов ведет схема, формируемая программируемой логической матрицей FPGA. Вы можете самостоятельно разобраться в вопросахпрограммирования FPGA и запрограммировать себе нечто экзотическое, но проще использовать стандартные прошивки, предоставляемые фирмой на плате при поставке D00,D01 и D02. Они наверняка Вас устроят: D00 - формирователь прерываний по событиям, назначаемым по четырем группам по восемь входов с программируемым антидребезгом по этим группам и 32х канальный измеритель частоты по любому из входов; D01 - 32-х канальный измеритель частоты с программируемой частотой заполнения и периодом измерения по любому из входов; D02 - формирователь прерываний, управляемый индивидуально по каждомувходу по событиям, назначаемым по четырем группам по восемь входов с программируемым атидребезгом по этим группам,Схемы D00, D01 и D02, формируемые этой матрицей обеспечивают интерфейс сшиной ISA.
При этом может быть использовано три вида ресурсов, предоставляемых программисту шиной:1) адресное пространство памяти ввода-вывода I/O;2) автовекторные прерывания (IRQ3…7);3) прямой доступ в память DMA (DRQ1/DACK1).В стандартном для клона РС, десятиразрядном пространстве ввода-вывода, для адресации ресурсов платы используются 4 младших бита, позволяющие определять 16 байтовых регистров. Шесть старших битов определяются базовым адресом платы, определяемым перемычками на ней.
Важно задать их так, чтобы не было конфликтов с другимиресурсами, определенными в пространстве ввода-вывода.Рассмотрим прошивку D02, удобную для технологического оборудования. Схемапозволяет проводить дискретный контроль с индивидуально устанавливаемой по каждомувходу аппаратной или программной инициализацией контроля по событиям, назначаемымпо четырем группам по восемь входов в каждой и программируемым антидребезгом поэтим четырем группам. Довольно запутанное назначение платы. Попробуем разобратьсяпоточнее, и, прежде всего, рассмотрим явление дребезга+Vin+Vinконтактов и методы борьбы с ним.При переключении механического контакта из-заего упругих свойств возможно несколько замыканий иДК2ДК1S Qразмыканий, пока колебания не затухнут. Из-за этогоRвместо одного срабатывания быстродействующая электронная система зафиксирует несколько.
Каретка ходита)б)между двумя упорами, Вы своими глазами видите, чтоt др.она прошла туда сюда дважды, а электронный счетчик,Uподключенныйк конечным выключателям, насчиталДК1двенадцать ходов…, или восемь. Непорядок, дребезгконтактов конечных выключателей нужно подавить,ДК2чтобы не было ложных срабатываний счетчика.На рис. 6.37 показана такая ситуация. Сигналt а/др.ДК1, непосредственно снимаемый с нормально разомкДК3нутого контакта выключателя (рис. 6.37, а), в течениеt, мксвремени затухания колебаний контакта при переключев)нии, может несколько раз изменится.
На рисунке: tдр. –Рис. 6.37. Дребезг контактов ивремя дребезга контактов.его подавление.Самый надежный, но требующий заметных аппаратных затрат, способ - использование RS-триггера и пеРябов Владимир Тимофеевич. Кафедра «Электронные технологии в машиностроении»МГТУ им. Н. Э. Баумана, V_Ryabov@mail.ru41реключателя с нормально замкнутым и нормально разомкнутым контактами (рис.
6.37, б).Сигнал ДК2 с такой схемы однозначно реагирует на событие без всякого запаздывания.Но, если триггер разместить на плате УСО, придется тянуть уже две пары проводов и задействовать уже четыре входа платы. Размещать RS-триггер вблизи конечного выключателя неудобно, нужна какая-то плата и цепь питания.Сейчас самый распространенный способ подавления дребезга контактов - программный. Именно так делают и в клавиатуре персонального компьютера. Обнаружив изменение состояния контакта, через время, называемое задержкой на антидребезг, большеевремени переходного процесса контактирования, еще раз контролируют линию. Изменение состояния регистрируется в этот момент, если оно действительно произошло (графикДК3 на рис. 6.37).
Такой способ борьбы с дребезгом контактов сопряжен с задержкой регистрации события по изменению их состояния на время антидребезга.Функциональная схема прошивки D02 приведена на рис. 6.38.BF1BA+1, b=10INrg1Группа0..7DBG0EVrg1Группа0..7EV0Группа0..7Группа8..15DBG1Группа8..15EV1Группа8..15BA+6CDBG 24..3116..23 8..150..77 6 5 4 3 2 1 0CEV 24..3116..23 8..150..77 6 5 4 3 2 1 0УПРАВЛЯЮЩИЕРЕГИСТРЫBA+3, b=00ОТ БЛОКА "Opt"BA+7УПРАВЛЯЮЩИЕ РЕГИСТРЫРегистр банков BNKMasc1And 0Адрес D7 D6 D5 D4 D3 D2 D1 D0BA+0 -- -- -- -- -- -- b1 b0Группа0..7Коды антидребезга по каналамBA+0 BA+5BNKBA+1, b=01BF2Группа16..23BA+3, b=01INrg2DBG2Группа16..23And 1Группа8..15NIRQBA+13"D"BA+14CPBA+15BA+3, b=10EVrg2EV2Группа16..23BA+9КОНТРОЛЛЕР ШИНЫ ISAОТ БЛОКА "Opt"BA+1, b=00Время антидребезга3 мкс14 мс100 мс200 мсКоды событий по каналамРегистр Код0CEV12АдресBA+63Событиенетфронт сигналаспад сигналафронт или спадРегистр выбора номера NIRQ (3..7)Masc2And 2Регистр Код0CDBG12АдресBA+53Адрес D7 D6 D5 D4 D3 D2 D1 D0BA+13 -- -- -- -- -- b2 b1 b0Группа16..23Регистры идентификаторы "D" и CPГруппа24..31DBG3Группа24..31EV3Группа24..31And 3Группа24..31BA5BA0Адрес D7 D6 D5 D4 D3 D2 D1 D0BA+14 Код ASCII символа "D"BA+15 Номер прошивки FPGAРис.
6.38Матрица непосредственно с шины ISA воспринимает четыре младших адреса,шесть старших задаются перемычками ВА0…ВА5, определяющими базовый адрес платыВА. Таким образом, плата занимает зону в 16 адресов, перемещаемую перемычками позоне в 1024 адреса. Важно расположить ее так, чтобы она не перекрыла уже занятые адреса. На плате сформирован ряд управляющих и контролируемых регистров, позволяющихпроизводить дискретный контроль с аппаратной и программной инициализацией.Регистр банков BNK расширяет адресное пространство внутри платы. Ряд регистров, имеющих с точки зрения шины одинаковый адрес, на плате будут выбираться по разному, если установлено различное содержимое регистра банков BNK.
В этом регистрезначимыми являются два младших бита, в которые можно записать 0, 1 или 2 (00, 01, 10).По адресам ВА+1 и ВА+3 при нулевом банке (в регистре BNK записан нуль) наплате доступны для чтения два 16-и разрядных буфера BF1 и BF2, биты которых соединены с 32-мя входами платы через оптронную развязку, как показано на рис. 6.36. Логически входные сигналы разделены на четыре группы по восемь сигналов в каждой. Нулевойканал соединен с нулевым битом BF1, пятнадцатый – с пятнадцатым битом. Шестнадцатый канал соединен с нулевым битом BF2, 31-ый – с пятнадцатым.Читая содержимое этих буферов, мы фиксируем состояние линий дискретного контроля, т.е.
проводим дискретный контроль с программной инициализацией. Чтобы выдеРябов Владимир Тимофеевич. Кафедра «Электронные технологии в машиностроении»МГТУ им. Н. Э. Баумана, V_Ryabov@mail.ru42лить конкретную линию, нужно выбрать соответствующий буфер и использовать приеммаскирования, как мы это делали для контроллера ОРИОН.К выходам буферов присоединены четыре блока подавления дребезга контактовDBG0…DBG3. Каждый блок обрабатывает восемь сигналов и имеет собственную настройкуот управляющего регистра CDBG, имеющего адрес ВА+5 при любом значении банка. Восемь бит этого 8-и битного регистра разделены на четыре группы по два бита (рис.
6.38).Каждая группа битов определяет время задержки на антидребезг. Нулевой и первый бит задают код времени задержки для DBG0, второй и третий – для DBG1 и т.д. Соотношение между кодом и временем задержки на антидребезг приведено в таблице на рис.
6.38.С блоков антидребезга сигналы поступают на входные регистры INrg1 и INrg2,имеющие те же адреса, что и соответствующие буферы, но обращение к ним, а не к буферам, произойдет, если в регистр BNK записана единица, а не ноль. Входные регистры доступны для чтения и, читая их содержимое, можно узнать состояние линии дискретногоконтроля с задержкой на время антидребезга а группе, определяемого кодом соответствующего блока DBG.Выходы INrg1 и INrg2 по группам соединены с блоками регистрации событий EV.Всего таких блока четыре, каждый из них имеет индивидуальную настройку и, параллельно обрабатывая восемь сигналов, фиксирует моменты наступления событий трех видов: появился фронт сигнала, или сигнал перешел из нуля в единицу; появился спад сигнала, или сигнал перешел из единицы в нуль; появился фронт или спад сигнала, или сигнал логически изменился.Настройка фильтра событий EV проводится от управляющего регистра кода выделяемых событий СEV с адресом В+6 при любом значении банка регистров.