Научная статья на тему 'Модуль обработки информации с навигационной системы и лазерного дальномера'

Модуль обработки информации с навигационной системы и лазерного дальномера Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
229
78
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МОДУЛЬ ОБРАБОТКИ / ВИДЕОКОНТРОЛЛЕР / НАВИГАЦИОННАЯ СИСТЕМА / ЛАЗЕРНЫЙ ДАЛЬНОМЕР / ВИДЕОПАМЯТЬ / XILINX / MICROBLAZE / PROCESSING MODULE / VIDEO CONTROLLER / NAVIGATION SYSTEM / LASER RANGEFINDER / VIDEO MEMORY

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Литвак Э. С., Попов А. Ю., Левкович А. Д.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Литвак Э. С., Попов А. Ю., Левкович А. Д.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

The article is devoted to the structure and operation of the specialized printed circuit board designed to receive and process data. The system on a chip that implements various algorithms for calculating geographical coordinates of the remote object is described. The architecture for rendering graphical information in VGA format is described in details.

Текст научной работы на тему «Модуль обработки информации с навигационной системы и лазерного дальномера»

Дф^ст

МОДУЛЬ ОБРАБОТКИ ИНФОРМАЦИИ С НАВИГАЦИОННОЙ СИСТЕМЫ И ЛАЗЕРНОГО ДАЛЬНОМЕРА

Э.С. ЛИТВАК, инженер ОАО «НПО Геофизика-НВ»,

А.Ю. ПОПОВ, доц. МГТУ им. Баумана, вед. спец. ОАО «НПО Геофизика-НВ», канд. техн. наук, А.Д. ЛЕВКОВИЧ, вед. спец. ОАО «НПО Геофизика-НВ»

Модуль обработки информации с навигационной системы и лазерного дальномера позволяет вычислять географические координаты удаленного объекта и входит в состав оптико-электронного устройства для наблюдения и регистрации изображения удаленного объекта (ОЭУН). Алгоритм работы модуля реализуется на основе микропроцессорной системы на базе программируемой логической интегральной схемы (ПЛИС). Модуль осуществляет сбор, обработку, хранение и выдачу информации о положении прибора и наблюдаемого объекта, и обладает малыми габаритами.

Место модуля обработки информации показано на структурной схеме прибора, которая представлена на рис. 1.

eleonorochka.s@gmail.com

Отличительной особенностью прибора является фиксация данных (координат объекта и наблюдателя) с последующим проецированием их изображения, сформированного на экране микродисплея, на изображение объекта наблюдения [1].

Нажатие кнопки спуска на ОЭУН инициирует фиксацию информации, отображенной на экране микродисплея, на некоторый интервал времени, превышающий время экспозиции фотоаппарата. За этот промежуток на фотоаппарат посылается сигнал активизации затвора, раскрытие которого приводит к проецированию на фоточувствительную матрицу изображений объекта и географических координат и другой служебной информации с экрана микродисплея.

Рис. 1. Структурная схема ОЭУН с фотоаппаратом

ЛЕСНОЙ ВЕСТНИК 6/2012

145

фйстД

Рис. 2. Структурная схема ядра

В состав модуля обработки (МО) входит ПЛИС фирмы Xilinx XС3S500E (эквивалентная логическая емкость - 10К, объем блочной памяти - 360К), флэш-память XCF04S объемом 4 Мбит, 2 трансивера фирмы Maxim MAX3232, кварцевый генератор фирмы Epson на 50 МГц. Программирование платы осуществляется через интерфейс JTAG

[3].

Реализация проекта на ПЛИС дает возможности гибкого изменения архитектуры системы, выделения ресурсов тем или иным модулям.

В задачи МО входят:

- прием и обработка данных от навигационной системы, лазерного дальномера;

- формирование видеосигнала в формате VGA, выдающего символьную информацию о положении объекта наблюдения, дату и время наблюдения, а также координаты наблюдателя на экране микродисплея;

- прием сигнала запроса на выполнение момента съемки от фотоаппарата;

- фиксация выходного изображения и отправка сигнала активизации затвора фотоаппарата.

Проект был выполнен в САПР Xilinx ISE, Xilinx EDK(SDK) v. 10.1 на языках VHDL, Verilog, C.

Структурная схема ядра представлена на рис. 2.

Ядро системы включает набор связанных IP-модулей: микропроцессор MicroBlaze, блочная память BRAM, контроллер блочной памяти ПЛИС, видеоконтроллер, контроллеры шин передачи данных (PLB, LMB, FSL), интерфейсы передачи данных (UART), тактовый генератор, пользовательский таймер сигналов FSL_TIMER, модуль отладки и системного сброса.

Компонент MicroBlaze представляет собой встроенное ядро на базе soft-процессора MicroBlaze®, сконфигурированное в Xilinx EDK/SDK [4].

Контроллеры UART принимают пакеты данных от навигационной системы и лазерного дальномера.

Синхронизация МО и микродисплея осуществляется компонентом Synchro, отвечающим за развертку видеосигнала. Счетчики intVcnt и intHcnt пробегают соответственно значения от 0 до (521-1) и от 0 до (800-1) с частотой 25 МГц. Компонент Synchro формирует сигналы вертикальной и горизонтальной развертки Hsync и Vsync в соответствии с требованиями стандарта VGA.

Для вывода графической информации разработан видеоконтроллер. Размеры знакоместа приняты 8x16 px. При этом на экране можно разместить 480/16=30 строк по 640/8=80 символов в каждой. Организованы две области оперативной памяти - одна для хранения сим-

146

ЛЕСНОЙ ВЕСТНИК 6/2012

ДфЭст

0 0 0 1 0 0 0 0

0 0 1 1 1 0 0 0

0 1 1 0 1 1 0 0

0 1 1 0 1 1 0 0

0 1 1 0 1 1 0 0

0 1 1 0 1 1 0 0

1 1 0 0 0 1 1 0

1 1 1 1 1 1 1 0

1 1 1 1 1 1 1 0

1 1 0 0 0 1 1 0

1 1 0 0 0 1 1 0

1 1 0 0 0 1 1 0

1 1 0 0 0 1 1 0

1 1 0 0 0 1 1 0

1 1 0 0 0 1 1 0

0 0 0 0 0 0 0 0

RAM0 - 32'h0666666EE6CCCC

a) RAM1 - 32'h0CCCCCCFF0366631

о

c

3=

о

"О.

го

с

о

>

с

intHcnt(9 downto 3)

±Н

б)

intHcnt

intHcnt(2 downto 0)

A

-intVcnt(3 downto 0)

intVcnt

Рис. 3. а) Кодирование символа; б) Адресация символа «А»

волов алфавита (Component Char_Gen_RAM), а другая - видеопамять - для хранения текущего состояния экрана, т.е. выводимых данных (Component Video_RAM).

Для первой области в HDL-библиотеке было выбрано 2 блока памяти RAMB16_S4 (обозначены RAM0 и RAM1) - синхронная RAM с 12-битной шиной адреса и 4-битной шиной данных. Первые 8 бит адреса определяют код символа (возможно до 256 различных знаков), а остальные 4 - номер строки в развертке символа. Любой знак (рис. 3 а) кодируется в памяти двумя последовательностями шестнадцатеричных чисел. Область видеопамяти использует 2 блока памяти RAMB16_S4_S4 - синхронная двухпортовая RAM с 12-битной шиной адреса и 4-битными шинами данных. Один порт предназначен для записи символов из рабочей программы в память, а второй - для чтения символов из памяти и вывода на дисплей. Адресация матрицы пикселов 640*480 требует 10 бит по горизонтали и 9 бит по вертикали. С учетом размеров символа (8*16) для адресации символа достаточно 7 и 5 (в сумме

12) старших битов (рис. 3б).

Таким образом, по адресу intHcnt(9 downto 3)&intVcnt(8 downto 4) достаточно хранить 8-битный код символа.

Опрос навигационной системы и лазерного дальномера производится циклически

по сигналу от таймера FSL_TIMER. После обработки пришедших данных программа переходит в состояние ожидания нового пакета.

На рис. 4. приведена фотография модуля обработки (сторона А), а на рис. 5 - фотография модуля обработки (сторона Б).

МО реализует, помимо управляющей функции в приборе, два основных алгоритма вычисления координат объекта наблюдения - по однократному и многократным (от трех и более) сигналам съема.

В первом случае координаты объекта вычисляются по полученным от прибора координатам наблюдателя (широта, долгота, высота), дальности до объекта и углу курса (угол между направлением на северный полюс и направлением на объект) [1].

Во втором случае наблюдатель движется (к примеру на вертолете) вокруг объекта и осуществляет съемку с нескольких позиций. Вычисление положения объекта по данным с нескольких точек уточняет его координаты. Метод вычисления координат по нескольким точкам основывается на построении окружностей для каждого измерения - проекций на плоскость OXY, центром которых является наблюдатель, а радиусом - проекция дальности до объекта [2].

Рассмотренный в статье модуль обработки информации позволяет решать задачу

ЛЕСНОИ ВЕСТНИК 6/2012

147

фЬстД

Рис. 4. Фотография модуля обработки (сторона А). Тип платы - МИН: 1 - ПЛИС Xilinx XC3S500E; 2 - разъемы подключения дальномера, навигационной системы, управления затвором фотоаппарата; 3 - разъем питания; 4 - органы управления ОЭУН; 5 - разъем программирования ПЛИС JTAG; 6 - разъем подключения микродисплея VGA

Рис. 5. Фотография модуля обработки (сторона Б)

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

Сложные математические вычисления, типы данных, многочисленные переменные формата с плавающей запятой стали причиной значительного повышения размеров про-

граммы, что привело к предельному использованию ресурсов ПЛИС Xilinx XC3S500E. Следующая версия модуля обработки будет учитывать такие объемы вычислений.

Работа проводилась при финансовой поддержке Министерства образования и науки Российской Федерации в рамках государственного контракта от 13 сентября 2011 г. № 16.523.12.3006.

148

ЛЕСНОЙ ВЕСТНИК 6/2012

i Надоели баннеры? Вы всегда можете отключить рекламу.