Устройство для отображения графической информации на экране телевизионного индикатора
Иллюстрации
Показать всеРеферат
Изобретение относится к вычислительной технике, а именно к устройствам отображения графической информации, и может быть использовано в системах отображения информации тренажеров для обучения управлению подвижными объектами, в игровых автоматах, системах автоматизированного контроля или управления, а также у устройствах, в которых необходим синтез изображений проекций трехмерных объектов на плоскость, динамика которых заключается в неограниченном перемещении и повороте изображения в реальном времени на любой угол вокруг любых из трех осей трехмерной системы координат и изменении масштаба при перемещении объекта вдоль оси времени. Цель изобретения - повышение точности устройства, которая достигается введением функционального преобразователя 9 и соответствующих функциональных связей, а также выполнением блоков 6,7 и 8 вычисления координат, что позволяет изменить порядок формирования проекции трехмерного объекта, путем преобразования координат большего количества точек поверхности этого объекта, который представляется с большей степенью детальности, что повышает точность его отображения, 1 з.п. ф.3 ил.
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИК (g1)g G 09 G 1/16
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
Н А ВТОРСНОМ,Ф СВИДЕТЕЛЬСТВУ !
ГОСУДАРСТВЕННЫЙ НОМИТЕТ
ПО ИЗОБРЕТЕНИЯМ И ОТНРЫТИЯМ
ПРИ ГКНТ СССР
1 (21) 4635838/24-24 (22) 10.01.89 (46) 23.12.90. Бкл. У 47 (71) Пензенский политехнический институт (72) Ю.Н.Косников и А.П.Ремонтов (53) 681.327.11 (088.8) (56) Патент США Р 4156237, кл . G 06 К 15/20, опублик. 1979.
Авторское свидетельство СССР
В 963079i кл. G 09 G 1/16, 1981. (54) УСТРОЙСТВО ДЛЯ ОТОБРАЖЕНИЯ ГРАФИЧЕСКОЙ ИНФОРМАЦИИ НА ЭКРАНЕ ТЕЛЕВИЗИОННОГО HHgHKATOPA (57) Изобретение относится к вычислительной технике, а именно к устройствам отображения графической информации, и может быть использовано в системах отобра;кения информации тренажеров для обучения управлению подвижными объектами, в игровых автоматах, системах автоматизированного контроля или управления а также
ÄÄSUÄÄ 1615783 А 1 в устройствах, в которых необходим синтез изображений проекций трехмерных объектов на плоскость, динамика которых заключается в неограниченном перемещении и повороте изображения в реальном времени на любой угол вокруг любых из трех осей трехмерной системы координат и изменении масштаба при перемещении объекта вдоль оси времени. Цель изобретения — повышение точности устройства, которая достигается введением функционального преобразователя 9 и соответствующих функциональных связей, а также выполнением блоков 6, 7 и 8 вычисления координат, что позволяет изменить порядок формирования проекции трехмерного объекта путем преобразования коорди-нат большего количества точек поВерх-. ности этого объекта, который представляется с большей степенью детальности, что повышает точность evo отображения. 1 s.í. ф-лы, 3 ил.
1615783
Изобретение относится к вычисли-тельной технике, а именно к устройствам отображения графической информа ции, и может быть использовано в сис5 темах отображения информации тренаже-. .ров для обучения управлению подвижны ми объектами, в игровых автоматах, системах автоматизированного контроля и управления, а также в устройст-.:,10 ах, в которых необходим синтез изобажений проекций трехмерных объектов на плоскость, динамика которых заклюается в неограниченном перемещении повороте изображения в реальном времени на любой угол вокруг любых з трех осей трехмерной системы координат и изменении масштаба при перемещении объекта. вдоль оси зрения .
Цель изобретения - повышение точности устройства. !
На фиг.1 представлена структурная хема предложенного устройства; на
H1 .2 — схема блока вычисления коор- 2$ инат; на фиг.3 — схема функциональого преобразователя, Устройство содержит блок 1 синхронизации, цифроаналоговый преобразователь 2, блок 3 буферной памяти, блок 4 памяти, блок 5 сравнения, блоки 6-8 вычисления координат, функциональный преобразователь 9, инфор мационный вход-выход 10 устройства.
Блок 6 (7.,8) вычисления координат ,содержит коммутаторы 11-13, узлы 14,16 памяти и сумматор 17.
Позицией 18 обозначен выход блока, а позициями 19 и 20-- управляющий ,и информационный входы блока соответ-. ственно, Функциональный преобразователь 9 содержит коммутатор 21, память 22, двоичный умножитель 23, счетчик 24,, дешифратор 25, счетчик 26, мультиплексор 27, триггер 28, элементы И
29 и 30, счетчик 31, управляющий вход 32, информационный вход 33, второй выход 34, первый выход 35 блока.
Блок 4 памяти представляет собой запоминающее устройство, организован50 ное по типу ID (одноадресная система), в котором находится информация о поверхности отображаемого объекта, т.е. в каждом слове блока памяти записаны координаты отдельных точек поверхности объекта в пространстве и их код яркости, Поэтому объем блока
4 памяти зависит от размеров отображаемого объекта и его сложности,. Блок памяти может быть организован из оперативных, постоянных и репрограммируемых запоминающих устройств, что определяется особенностями создания информационного обеспечения устройства отображения. Если отображаемый объект известен заранее проектировщику устройства и не изменяется в процессе ceo эксплуатации, то рекомендуется использование постоянной памяти. Если изображение меняется часто или неизвестно заранее перед эксплуатацией системы, то координаты точек можно рассчитать по уравнениям, описывающим объект, занести их во внешнюю память управляющей машины, а затем перед сменой изображений переписать в блок памяти.
В устройстве формирование проекции трехмерного объекта на плоскость производится проецированием всех точек поверхности объекта на плоскость телевизионного растра, для чего координаты этих точек преобразуются в координаты телевизионного растра согласно следукицей системе уравнений:
1 l f
Х=Х cosg,+Y совМ +Е совб(-Х совО(,—
-7 сов О(2-Ео со в з+Хо, 7=Х. cosP +Y cosP2+2 сов в- (1)
Хосовр, -Уосов щ-Е соз s+Yо э
Е=Х сов1,+Y cosj<+Z ñosj -Х соз.1
-У сов 1 <-Е cos j +Z где вычисленные координаты Х и Y on ределяют положение точки поверхности объекта на плоскости телевизионного растра, а координата Z — порядок ее видимости по отношению к оператору, Решение задачи преобразования координат "в лоб" с применением универсальных средств вычислительной техники при условии отображения сложных динамических изображений в реальном времени приводит либо к использованию неприемлемо большого объема этих средств, либо к использованию вычислителей с колосальным быстродействием (порядка 100 млн,оп/c). В связи с этим в устройстве принят следующий порядок преобразования координат точек поверхности объекта и получения его проекции на плоскость телевиэионно1о растра.
В течение каждого цикла смены фаз движения ЭВМ производит частичное,, решение системы уравнений (1), кото roe заключается в вычислении членов, 5
16157 не изменяющихся в процессе формирования проекции объекта. По вырабатывае- мому триггером 28 сигналу ЭВМ выдает результаты этих вычислений на инфор5 мационный вход-выход 10 устройства.
В: функциональном преобразователе 9 эти данные через коммутатор 21 заносятся в память 22. Эти данные являются начальными условиями, необходимыми для преобразования координат точек поверхности объекта, Начальные условия хранятся в памяти 22 до следующего цикла смены фаз движения и состоят иэ девяти пар слов (сояК,, -Х сояф, ( о
cosy(Y cos 5 сояМg,-Z,сояф Х соя3,-7 cos32r cos3 Z cosj 3tzo) . о
За основу функциойального преобра- 20 зователя 9 взят цифровой интегратор, который предназначен для последовательного вычисления функций
X cos5 -Хосоя, Y cosa -Y соя
? о
Е соя((3 Ео соя +Х о 25
Х соsP,-Х, соя,; Y cos -Y, cosPz, Z cosP>-Z co sf>+Y
Х соя1 -Х„соя1 Y соя1 -У соя1
Z cosj ь-Zqcosj +Zд, где Х, Y, Z принимают значения от 0 30 до max причем величина последнего определяется размерами пространства, в котором записан объект отображения.
С началом каждого цикла смены фаз движения блок 1 синхронизации вырабатывает сигнал, который поступает с
ceo третьего выхода на управляющий вход функционального преобразователя
9, т.е. на входы счетчиков 26 и 31 и триггера 28. Этот сигнал переводит 40 в состояние логическогО нуля все выходы указанных счетчиков и в состояние логической единицы триггер 28, который сигналом, поступающим с его второго инверсного выхода на второй 45 вход элемента И 30, запрещает прохождение сигнала тактовой частоты Р,. на вход счетчика. 3 1. Сигнал с первого выхода триггера 28 поступает через вход-выход 10 устройства в ЭВМ и зап- 50 рещает ввод начальных условий. Этот же сигнал поступает на третий вход коммутатора 21 и второй вход элемента И 29, в результате чего коммутатор подключает ко входу памяти 22 55 второй выход счетчика 26, а элемент
И 29 пропускает сигнал Г на вход умножителя 23 и второй вход счетчика
26, все выходы которого в этот момент времени продолжают находиться в состоянии логического нуля ° Так как дешифратор 25 гостроен на выделении состояния логического нуля, то на его выходе сформируется сигнал, который, поступая на входы двоичного умножителя 23 и счетчика 24, установит эти элементы в соответствие с начальными условиями, поступающими на их входы с выхода памяти 22. Конкретно в этот момент времени на входах умножителя 23 и счетчика 24 находятся
i значения сае ф, и -Хансов р(, соответственно (начальные условия для вычисления первой функции). С приходом первого тактового импульса первый выход счетчика 26 выходит из состояния логического нуля и дешифратор 25 снимает сигнал установки начальных условий, разрешая работу умножителя
23, который управляет скоростью ин-. тегрирования пропорционально тригонометрическим функциям (в конкретный момент времени сояф,), а счетчики накапливают результат интегрирования, причем направление счета определяет знак тригонометрической функции, а начальной точкой отсчета являются начальные условия, занесенные в счетчик с выхода памяти 22 (в конкретный момент времени -X cosy ), Таким обра0 зом, синхронно с сигналом тактовой частоты на выходе счетчика 24 после-: довательно формируются значения для целых значений переменных Х, Ъ или Z, которые в это время формируются на первом выходе счетчика 26, Изменение переменных производится линейно ат 0 до и-ro значения, последнее выбирается исходя из максимальных размеров отображаемого объекта и кратно степени 2. Вычисленные значения девяти функций буферизируются в девяти узлах оперативной памяти, расположенных в блоках 6-8 вычисления координат, которые заполняются последовательно, На втором выходе. счетчика 26 формируется номер вычисляемой функции,.который является адресом начальных условий этой функции в памяти 22 и одновременно адресом одного из девяти узлов памяти, в который производится буферизация в данный момент времени. Выбор соответствующего узла оперативной памяти и запись в него вычисленных значений функций по адресам, соответствующим значениям переменных этих функций, 1615783 производится сигналом записи, который коммутируется посредством мультиплексора 27 на входе записи соответствующего узла, По окончании вычисления требуемого количества значений одной, Функции на втором выходе счетчика
, 26 формируется номер следующей, пос, редством которого в памяти 22 выбираются другие начальные условия, а 1О мультиплексор 27 выбирает следующий узел . В этот момент времени дешифратор 25 отмечает нулевое состояние первого выхода счетчика 26 сигналом, который, поступая в умножитель 23 и счетчик 24, заносит новые: начальные условия из памяти 22, и процесс вычисления и записи повторяется, После вычисления и записи последней девятой функции на втором выходе счет- 2g чика 26 возникает десятый адрес, который, поступая на первый вход мультиплексора 27, коммутирует сигнал записи на его десятый выход, с кото-! рого он поступает на второй вход l5 триггера 28, переводя последний в, состояние логического нуля . Сигнал логического нуля с прямого первого выхода триггера 28 поступает íà вход элемента И 29 (где запрещает прохождение сигнала Р на входы счетчика
26 и умножителя 23, тем самым останавливая их работу), на вход коммутатора 21 (где переключает его на прием начальных условий для Формирования следующей фазы движения иэображения объекта),и в ЭВИ (сообщая таким образом о готовности устройства к приему начальных условий). Сигнал логической единицы с второго инверсного выхода триггера 28 поступает со второго выхода функционального преобразователя 9 на управляющие входы коммутаторов 11-13 блоков 6-8-, переводя их в режим приема координат поверхности объекта отображения, пос.тупающих из блока 4 памяти, Этот сигнал поступает и на второй вход элемента И 30, который разрешает прохождение сигнала Р,„ на вход счетчика 31, 50
Адресные сигналы, формируемые на выходах счетчика 31, поступают с первого выхода функционального преобра. зователя 9 на вход блока 4 памяти, в котором находится информация о поверхности объекта отображения. С этот. го момента, устройство переходит из Режима предварительньж вычислений ,Функций в режим Формирования проекции
1 отображаемого объекта. Итак, с ° первого выхода функционального преобразователя 9 на вход блока 4 памяти начали поступать адресные сигналы, которые представляют собой пилообразный код, жискретно изменяемый во времени синхронно с сигналом тактовой частоты Г, Под действием адресных сигна-. лов за время формирования фазы движения проекции отображаемого объекта содержимое блока 4 памяти должно прочитаться полностью. По каждому адресу в блоке 4 памяти находится информация об одной точке поверхности отображаемого объекта, а именно. код цвета и яркости этой точки и коды ее ко-. ординат Х, 7 и Z в трехмерной системе координат этого объекта. Код цвета и яркости точки ;:: оверхности объекта поступает на адресный вход блока 3 буферной памяти, а коды координат на информационные входы 20 блоков б-8, где происходит их преобразование в координаты телевизионного растра. Рассмотрим на примере формирования проекции одной точки поверхности объекта отображения взаимодействие блоков устройства. ъ
Допустим, что на вход блока 4 памяти, поступает адрес i точки поверх- . ности объекта. В блок 3 поступают коды цвета и яркости этой точки: Р;С; В и 9, . Одновременно в каждый из блоков
6-8 поступают коды координат той же точки X Y Z;, которые поступают на
l адресные входы первого, второго и третьего узлов памяти, соответственно., t
По значению координат Х У,. и Z в
1 t соответствующих узлах выбираются значения функций, вычисленных на предварительном этапе функционального преобразователя 9, и складываются между собой в сумматоре 17. Так в блоке б из первого узла извлекается значение
Функции Х соз4,-Х созИ,; нз второго значение Функции Y .cosa4-УосоаФау из третьего — значение функции Е созФ 1
-Е созф +Х . Значения этих функций суммируются в сумматоре-:17 и на выходе блока б формируется значение координаты Х в системе координат телевизионного растра. Другими словами, блок 6 вычисляет выражение
I с ю
Х; =Х cosy(+Y cosgg+Z cosa >-Х. созф, - 7cosg -Е совф +Х которое является первым в системе, из трех уравнений (1). Аналогичным
16157 образом в блоках 7 и 8 вычисляются выр аж ения
7 ",Х cosP<+Y cos(+Е соя Л -Х созыв
7 соя/3 -Е
Z" =Х. cosg +Y< созе +Z созе -Х созе ,1; 1 2 1 o 2
-Е соя.1 ЕО-, которые являются вторым и третьим в системе уравнений (1) соответственно. Вычисленные координаты Х, и 1п
7 с выходов соответственно блоков
6 и 7 поступают на адресные входы блока 3, а координата Е, с выхода блока 8 — на информациойный вход блока 3 и на вход блока 5 сравнения, далее по поступившим координатам Х „. и Y," — на адресные входы блока 3 происходит чтение ячейки памяти этого блока, а именно значения координаты Е, -h, записаннбй ранее, Если значение Е,, преобразованной точки поверхности объекта меньше Е., > (ранее записанной по этому же адресу), то .это означает, что последняя находится дальше от наблюдателя по линии взора и тогда блок 5 сравнения выдает сигнал в блок t синхронизации на выработку сигнала записи кода цветаяркости и значения координаты Z,,в блок 3 и происходит запись. Если зна- 3п чение Е; преобразованной точки поверхности объекта больше Z; „, то это означает, что последняя находится ближе к наблюдателю, и блок 5.сравнения не выдает сигнал в блок 1 синхронизации для выработки сигнала записи.
Блок 5 выдает сигнал на запись в том случае, когда с выхода блока 3 поступает значение Z, @ равное нулю так как это означает, что ранее в ячейку с таким образом с начала формирования текущей фазы движения объекта ни одна из точек его поверхности не была записана. В таком порядке происходит запись и остальных точек поверхности объекта, причем запись производится в одну часть блока 3, другая же часть считывается в эта время развертывающими функциями, синхронными с разверткой телевизионного растра, форми- M руемыми блоком 1 синхронизации. В момент завершения считывайия информации .из одной части и завершения записи точек поверхности объекта в другую часть блока 3, его части меняются функциями, и процесс возобновляется.
При считывании фазы движения отобра жаемого объекта с выхода блока 3 на " один вхо4 цифроаналогового - преобра-83- 10 зователя 2 поступают коды цвета и яркости этого объекта, а на другой вход поступает смесь синхроимпульсов, в результате чего на выходе цифроаналогового преобразователя 2, а следовательно, и выходе устройства формируется полный телевизионный сигнал иэображения проекции динамического объекта, который можно подключить к любому цветному телевизионному индикатору для его отображения, Таким образом, на экране цветного телевизионного индикатора формируется изображение проекции трехмерного объекта на плоскость телевизионного растра. Воспроизводятся только видимые со стороны плоскости телевизионного растра части изображения поверхности объекта. При повороте системы координат объекта относительно системы координат растра происходит соответствующее изменение внешнего вида этой проекции, аналогично вращению самого объекта или его натурной модели перед объективом телекамеры. При- чем, в устройстве обеспечивается значительное увеличение точности отображения изображений проекций трехмерного объекта на плоскость в реальном времени, так как точность зависит непосредственно от количества точек, которыми описывается поверхность отображаемого объекта, то для оценки точности отображения достаточно определить общее количество точек поверхно,сти объекта, которое можно отобразить . в реальном времени посредством известного и предлагаемого устройств. Выберем в качестве примера объекта отображения сферу, а конкретно — земную поверхность . Сфера имеет минимальную поверхность при максимальном объеме ее внутреннего пространства1 поэтому в известном устройстве при сканировании трехмерного пространства (в котором записана эта сфера) коли-;. чество сканируемьж "лишних точек" (не несущих информацию о поверхности объекта) минимально.
Для того, чтобы определить размеры объекта отображения и количество точек его поверхности, необходимо определить дикамические параметры устройства, т.е. Т вЂ” цикл смены фаз движения изображения t — цикл формирования проекции отдельной точки трехмерного простракства, 161 >783
При Т,„ 6 10 с и t =1,15 10 с общее количество преобразованных точек равно
1Ч, =5,1 10 а количество точек, из которых состоит поверхность объекта, равно
И„-410, линейный размер объекта (диаметр сферы) равен 10
D 2R = 114 точек.
Параметры сферы, изображение проекции которой сформирует устройство при таком же цикле смены фаз движения, следующие: время затраченное на предва- 15 рительные вычисления, определяем по выражению
tp = 9 и t 0,5.10 с, где 9 — количество вычисляемых функций; n=t024 — максимальное значение переменной, с, =5 10 с - время вычисления значения функций для одной переменной, тогда время формирования проекции объекта
Т =ТЦ-t „г =59,5 10 з с.
Цикл формирования проекции отдельной точки трехмерного пространства
t g складывается из времени чтения координат из блока ч памяти ч „, времени чтения значений функций из узлов 30 памяти в блоках 6-8 t времени сложения результатов в сумматорах 17 времени чтения содержимого блока
3 t, времени сравнения в блоке 5 сравнения t и времени записи в блок ,3 эп °
595 10 с ф
- --.— — — -29 75 10
У S
2 10 с
Тц
ОБ tg отсюда легко найти его линейный размер (диаметр сферы) 50
No@ 29 75 10
О =,„= — <-— --- -— ---== 308
9 что составит 3/5 всего экрана.
При том же цикле смены фаз движе ния возможно сформировать изображение проекции ббъекта поверхность котороФ го состоит из 4 10 точек, при его линейных размерах в 114 точек, что
Учитывая современную элементную
; базу, эти параметры будут следующими:
Тчтп =Тцт о -1ч в =Т „=З 10 с;
Т =7 -10 с; t<=2 ° 10 с, а,=10 с.
Тогда общее количество точек поверхности объекта, которое может спроецировать устройство в реальном времени, равно 45 составит 1/5 всего экрана при тои же дискретизации телевизионного растра
512х512 точек. Если сравнивать точность отображения объекта по общему количеству точек, описывающих его поверхность, то точность отображения предлагаемого устройства в 7,4 раза выше известного, причем оба устройства имеют приблизительно одинаковые аппаратурные затраты.
Фар мула изобретения
1, Устройство для отображения графической информации на экране телевизионного индикатора, содержащее блок синхронизации, первый выход которого соединен с синхровходом блока буферной памяти, выход которого соединен с информационным входом цифроаналогового преобразователя, синхровход которого соединен с вторым выходом блока синхронизации, а выход является выходом устройства для подключения к телевизионному индикатору, блок сравнения, выход которого подключен к входу блока синхронизации, блок па- мяти и блоки вычисления координат, первый выход блока памяти соединен с управляющим входом блока буферной памяти, о т л и ч а ю щ е е с я тем, что, с целью повышения точности устройства, оно содержит функциональный преобразователь, информационный вход которого является информационным входом-выходом устройства, первый выход соединен с адресным входом блока памяти, а второй выход — с управляющими входами блоков вычисления координат, информационные входы которых подключены к выходу блока памяти, выходы первого и второго блоков вычисления координат подключены к первому и второму адресным входам блока буферной памяти, информационный вход которого подключен к выходу третьего блока вычисления координат, соединенному с первым входом блока сравнения, второй вход которого соединен с вторым выходом блока буферной памяти, третий выход блока синхронизации соединен с управляющим входом функционального преобразователя.
2. Устройство по п.1, о т л и— ч а ю щ е е с я тем, что блок вычисления координат содержит три коммутатора, первые входы которых являются управляющим входом блока, а вторые
13 б Ф
Augd 3>
Составитель И.Загинайко
Редактор С.Патрушева Техред Л.Сердюкова Корректор М.Ыароши
Заказ 3991 Тирах 388 Подписное
ВНИИПИ Государственного комитета по изобретениям и открытиям при ГКНТ СССР
113035, Москва, Ж-35, Раушская наб., д. 4/5
Производственно-издательский комбинат ™Патент", г.укгород, ул. Гагарина, 101
1615783
14 входы — информационным входом блокй выходы которых подключены к входам выходы коммутаторов соединены с вхо- сумматора, выход которого является дами соответствующих узлов памяти, выходом блока.