УСО для ввода данных с преобразованием из дискретной формы в дискретную
УСО для ввода данных с преобразованием из дискретной формы в дискретную могут использоваться для ввода данных с импульсных датчиков скорости и положения. Они осуществляют преобразование данных из одной дискретной формы (последовательность импульсов) в другую дискретную форму (стандартное двоичное представление).
Ввод данных с импульсного датчика положения
Рассмотрим случай импульсного датчика положения. В качестве выходного сигнала с такого датчика поступает последовательность импульсов, поступление каждого импульса соответствует изменению измеряемого положения на один отсчет. Для определения направления перемещения используется схема формирования импульсов (СФИ), которая имеет два выхода: с одного поступают импульсы при изменении положения в положительном направлении, с другого — в отрицательном.
Таким образом, для получения истинного значения положения необходимо вести подсчет поступающих с датчика импульсов с соответствующим знаком. Для этого используется реверсивный счетчик, на выходе которого мы всегда имеем текущее значение измеряемой величины. А для ввода данных со счетчика в МПС можно использовать параллельный программируемый интерфейс (рис. 1).
Рис. 1.
На данном рисунке приведена схема, обеспечивающая синхронный обмен между УСО и ведущим устройством (так как счетчик всегда содержит текущее значение измеряемой величины, проверка готовности УСО не производится).
Если значение, измеряемое таким датчиком, изменяется нечасто, более приемлемым вариантом является обмен по прерываниям, так как при его использовании обращение к УСО осуществляется только при условии изменения значения в счетчике, что позволяет более эффективно использовать процессорное время.
Схема УСО, работающего с использованием обмена по прерываниям, требует использования контроллера прерываний. Пример такой схемы приведен на рис. 2.
Рис. 2.
В качестве сигнала запроса на прерывание используется собственно импульс, приходящий с импульсного датчика. Так как изменение значения счетчика происходит при приходе и "положительного" и "отрицательного" импульса, на вход IRQ контроллера подаются сигналы с обеих линий, объединенные по логике "ИЛИ".
Если измеряемое значение изменяется часто (счетные импульсы поступают с большой частотой), использование обмена по прерываниям приведет к чрезмерной загрузке процессора. В этом случае более эффективным представляется использование обмена по методу прямого доступа в память. Сигнал, использованный в схеме рис. 2. в качестве запроса на прерывание, может быть использован как запрос на обмен по методу ПДП.
Ввод данных с импульсного датчика скорости
В качестве выходных данных с импульсного датчика скорости поступает последовательность импульсов. Количество импульсов в единицу времени пропорционально измеряемой скорости. Таким образом, задача УСО заключается в подсчете импульсов, поступающих с датчика в течение заданного интервала времени.
Задача собственно подсчета может быть решена при помощи счетчика (нереверсивного).
Задача "отмеривания" интервала времени — с помощью программируемого таймера (ПТ).
ПТ должен работать в режиме формирования одиночных импульсов с заданным интервалом. Интервал определяется частотой тактовых импульсов, поступающих на вход CLK счетного канала ПТ и начальным значением счетчика, загружаемым в ПТ на этапе программирования (рис. 3)
Рис. 3.
По окончании заданного интервала времени в счетчике будет находиться число, пропорциональное измеряемой скорости. Оно должно быть введено в МП, например, с использованием обмена по прерываниям. Однако за время, необходимое для выполнения цикла обмена, с датчика могут поступить следующие импульсы. Значение в счетчике увеличится, и не будет соответствовать количеству импульсов, подсчитанному в течение интервала времени, отмеренного таймером. Отсюда следует, что по окончании интервала подсчета значение, имеющееся в счетчике, должно быть зафиксировано в буферном регистре для последующей передачи его в МП.
Предварительный вид УСО, построенного в соответствии с этими принципами, представлен на рис. 4.
Дата добавления: 2019-02-08; просмотров: 639;