Программное обеспечение автоматизированных систем диагностики радиоаппаратуры

Анохина Ю.В., Даянов М.Х. ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ АВТОМАТИЗИРОВАННЫХ СИСТЕМ ДИАГНОСТИКИ РАДИОАППАРАТУРЫ

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

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

- через системную магистраль или шину ISA:

- через параллельный интерфейс Centronics;

- через последовательный интерфейс RS-232C;

- через порт USB.

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

- системная магистраль ISA - высокая скорость обмена информации, параллельный формат, 8-16 разрядов, возможность подключения нескольких устройств.

- параллельный интерфейс Centronics - средняя скорость обмена информации (до 100Кбайт/с), параллельный формат, 8-12 разрядов, возможность подключения одного устройства.

- последовательный интерфейс RS-232C - низкая скорость обмена информации, последовательный

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

- порт USB - высокая скорость обмена информации (до 480Мбит/с), последовательный формат, возможность подключения нескольких устройств.

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

Порт USB обладает наивысшей скоростью обмена информации (до 480Мбит/с), возможностью подключения нескольких устройств, но для него необходимы специальные микроконтроллеры, организующие обмен информацией.

Выбор интерфейса Centronics или RS-232C позволяет расположить устройства на большом расстоянии от компьютера. Но при этом достигается гораздо меньшая скорость обмена, а также требуется внешний корпус, дополнительный источник питания. Также через эти интерфейсы можно подключить только одно устройство.

Часто в разработках используется параллельный порт LPT.

Адаптер параллельного интерфейса представляет собой набор регистров, расположенных в пространстве ввода/вывода. Регистры порта адресуются относительно базового адреса порта, стандартными значениями которого являются 3BCh, 37 8h и 27 8h. Порт имеет внешнюю 8-битную шину данных, 5-битную шину сигналов состояния и 4-битную шину управляющих сигналов.

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

Основным элементом автоматизированной системы диагностики радиоаппаратуры является ПК. Достоинства ПК - малые габариты, масса, большая скорость обработки цифровых потоков, изменяемая программа, которая позволяет выполнять необходимые действия, большой объем памяти и возможность вывода информации на экран монитора. Специальная программа (для каждого типа радиоаппаратуры своя программа) позволяет производить ввод информации в ПК через LPT-порт, запись в память, обработку этой информации и вывод результата теста на экран монитора. При разработке внешнего устройства надо учитывать возможности ПК, его протоколы обмена, скоростные характеристики, особенности внешних интерфейсов компьютера. Эти параметры и особенности надо знать и максимально использовать.

Главной задачей автоматизированных систем является ввод полученной датчиками, АЦП информации в персональный компьютер. Прежде чем информацию ввести, сигналы необходимо привести к стандартному уровню по временным параметрам, уровню сигналов, разрядности.

Чтобы ввести и обработать информацию от внешних устройств, необходимо разработать специальное программное обеспечение. Программы разрабатываются на языке Turbo - Pascal, в интегрированной среде разработки Delphi 7.0.

Программы работают по определенному алгоритму:

- формирование импульса запуска диагностического блока. На контакте LPT-порта формируется «1», сохраняется несколько микросекунд, а затем формируется «0».

на языке Turbo - Pascal это выглядит примерно так:

for i:=1 to 50 do

begin

port[$37A]:=1; port[$37A]:=0; delay(5); port[$37A]:=1; port[$77A]:=32;

- ввод информации в компьютер. В LPT-порт можно вводить одновременно 1 байт - 8-разрядное число, 12-разрядное число с внешнего устройства. Фрагмент программы:

{включение режима чтения} port[$37A]:=33; delay(55); a:=port[$378]; b:=port[$37 9]; h:=a*0.04; j:=b/3200; c[i]:=(h+j)*0.768;

Можно использовать персональный компьютер как аналого-цифровой преобразователь,. При этом значительно упрощается внешняя электронная схема, куда входит только цифро-аналоговый преобразователь и компаратор. На выходе компьютера формируются коды, которые поступают на цифроаналоговый преобразователь и на выходе ЦАП формируется опорное напряжение, которое поступает на вход компаратора и сравнивается с входным напряжением. Компаратор определяет, какое напряжение больше и управляет алгоритмом работы компьютера. Программа устанавливает поразрядное уравновешивание, то есть на выходе цифро-аналогового преобразователя формируется напряжение Uqh/2, сравнивается компаратором с входным напряжением. Компьютер опрашивает компаратор и, если опорное напряжение меньше входного, то увеличивает код на «1» во втором разряде. Если опорное напряжение больше входного, то старший разряд устанавливается в «0», а второй разряд устанавливается «1». Таким образом устанавливаются восемь разрядов. Фрагмент программы: begin clrscr;

port[$378]:=255; port[$37A]:=128; b:=128;

port [$37 8]:=b;

a:=port[$37 9] and 64;

if a=0 then b:=b+64 else b:=b-64;

port [$37 8]:=b;

a:=port[$37 9] and 64;

if a=0 then b:=b+32 else b:=b-32;

port [$37 8]:=b;

a:=port[$37 9] and 64;

if a=0 then b:=b+16 else b:=b-16;

port [$37 8]:=b;

a:=port[$37 9] and 64;

if a=0 then b:=b+8 else b:=b-8;

port [$37 8]:=b;

a:=port[$37 9] and 64;

if a=0 then b:=b+4 else b:=b-4;

port [$37 8]:=b;

a:=port[$37 9] and 64;

if a=0 then b:=b+2 else b:=b-2;

port [$37 8]:=b;

a:=port[$37 9] and 64;

if a=0 then b:=b+1 else b:=b-1;

x:=b;

- Обработка информации. Фрагмент программы:

h:=a*0.04;

j:=b/3200;

c[i]:=(h+j)*0.768;

{ write(’ ’,c[i]:2:4);} end; d:=0;

for i:=1 to 50 do

begin

d:=d+c[i];

end;

x:=d/50;

{ writeln(,Uср=,,x:2:4);} l:=0;

for i:=1 to 50 do

begin

z:=c[i]-x;

if z>l then z:=l else end;

{writeln(’dU=’,z:2:6);}

s:=0;

q:=0;

for i:=1 to 50 do begin

k:=sqr(c[i]-x);

q:=(q+k)/50;

y:=sqrt(q);

{writeln(’b=’,y:2:4);}

end;

12-разрядное число водится в компьютер через два регистра, а затем с своими весовыми коэффициентами два числа складываются и восстанавливается первоначальное число. Компьютер производит пятьдесят запусков внешнего АЦП и вводит пятьдесят измерений. Затем вычисляется среднее значение измеренной величины, определяется максимальная ошибка, определяется среднеквадратичная погрешность.

ЛИТЕРАТУРА

1. Петрунин В.В. «Построение автоматизированных систем на основе персонального компьютера для тестирования, настройки, ремонта радиоэлектронной техники», Международный симпозиум «Надежность и качество» 2004 г.