Обмен данными с АЦП - Разработка программно-аппаратного комплекса для мониторинга рентгеновского симулятора SLS-9

Программа должна считывать данные, выработанные АЦП через определенные промежутки времени. Приемлемым способом обеспечения этого является опрос АЦП по таймеру. Взаимодействие с АЦП реализуется следующим образом. После приема программой сообщения от таймера, производится проверка готовности данных, получаемых от АЦП, путем проверки его сигнала "Готовность". Он поступает на пятый бит регистра состояния. Поэтому после считывания его значения происходит дальнейшая работа с АЦП лишь при равенстве этого бита единице. Необходимо отметить, что время преобразования АЦП намного меньше частоты его опроса, поэтому, при корректной работе АЦП, когда приходит сообщение от таймера, цикл преобразования АЦП должен быть закончен в любом случае. Поэтому, при обнаружении неготовности данных АЦП, выдается соответствующее диагностическое сообщение сигнализирующее о неисправности. При наличии готовности АЦП, программа производит считывание 8-ми старших разрядов кода из регистра данных и двух младших разрядов из регистра состояния параллельного порта.

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

Рассчитаем интервал опроса АЦП необходимый для обеспечения заданной точности. Так как гантри совершает полный оборот (360) градусов за 40 секунд, то время T необходимое для прохода 0,5 градуса вычисляется по формуле:

.

Из этого следует вывод о необходимости опроса АЦП через каждые 0,05с т. е. интервал таймера устанавливается равным 50 мс. Вообще, как было показано выше, выбранный 10-разрядный АЦП допускает точность до 0,35 градуса. Но, программно этой, и более высокой точности (при установленной скорости вращения гантрии) добиться не удастся, в связи с системным ограничением минимального интервала таймера, а также из-за задержек прибытия сообщений от таймера.

Похожие статьи




Обмен данными с АЦП - Разработка программно-аппаратного комплекса для мониторинга рентгеновского симулятора SLS-9

Предыдущая | Следующая