МИКРОЭЛЕКТРОМЕХАНИЧЕСКИЕ СИСТЕМЫ
УДК 621.3.085.42
А.А. Ожиганов1, П.А. Прибыткин2
КОДОВЫЕ ШКАЛЫ НА ОСНОВЕ КОМПОЗИЦИИ НЕЛИНЕЙНЫХ РЕКУРРЕНТНЫХ ПОСЛЕДОВАТЕЛЬНОСТЕЙ
Санкт-Петербургский государственный университет информационных технологий,
1
механики и оптики , Открытое акционерное общество «Авангард» (Санкт-Петербург)2
Предложены кодовые шкалы для фотоэлектрических цифровых преобразователей угла, строящиеся на основе нелинейных рекуррентных последовательностей. Сформулирован принцип композиции рекурсивных кодовых шкал. Приведён пример построения кодовой шкалы.
Ключевые слова: кодовая шкала, считывающие элементы, цифровой преобразователь угла, преобразователь угол-код, рекурсивная кодовая шкала, рекуррентная последовательность, псевдослучайная последовательность.
Введение
Фотоэлектрические цифровые преобразователи угла абсолютного типа основаны на методе считывания с пространственным кодированием [1]. ФЦПУ содержат кодовый (модулирующий) диск и систему считывания, состоящую из излучающей (передающей) и приёмной частей. Излучающая система содержит источник излучения, а приёмная — индексную диафрагму и приёмники излучения. Кодовый диск и диафрагма представляют собой диски из оптически прозрачного материала, расположенные соосно и параллельно, на обращенных друг к другу поверхностях, на которых методом фотолитографии нанесены маски с соответствующим рисунком. Код сформирован в виде системы прозрачных и непрозрачных участков на кодовом диске. Рис. 1 иллюстрирует один из вариантов построения оптической системы преобразователей. Источник излучения освещает одну сторону кодового диска. Приёмники подсвечиваются через узкие щели в неподвижной диафрагме. При вращении кодового диска меняется площадь перекрытия прозрачных участков дорожки диска и окна диафрагмы, т.е. модулируется величина светового потока от излучателей к фотоприёмникам.
Основными требованиями к цифровым преобразователям угла (ЦПУ) в общем и к ФЦПУ в частности являются точность преобразования, быстродействие, надёжность, стойкость к внешним воздействующим факторам и др. Достаточно хорошо изучены основные методы получения высокой точности и разрешающей способности, если нет ограничений в габаритах преобразователей. Но в ряде применений ЦПУ актуальна задача увеличения точности и разрешающей способности при одновременном уменьшении габаритов [2].
Достижение этих технических требований во многом зависит от применяемой в ФЦПУ кодовой шкалы (КШ), которая определяет число кодовых дорожек (КД), а также число и размещение считывающих элементов (СЭ). Среди разных типов построения кодовых шкал для ФЦПУ [1] наибольшее распространение получили КШ, выполненные в обыкновенном двоичном коде - регулярные КШ, в циклическом коде - в коде Грея и в специальном
© Ожиганов А.А., Прибыткин П.А., 2010.
коде. Наиболее перспективными являются кодовые шкалы с применением теории рекуррентных последовательностей - рекурсивные кодовые шкалы (РКШ) [3], позволяющие строить однодорожечные ФЦПУ [4], двухдорожечные нереверсивные ФЦПУ с двумя СЭ и реверсивные ФЦПУ с подготовительными квантами [5], встречающиеся в литературе как «квазиабсолютные», а также КШ с возможностью формирования корректирующих кодов [6].
Сигналы с фотоприёмников Рис. 1. Функциональная схема оптической части ФЦПУ
До настоящего времени рассматривалось построение ФЦПУ на основе РКШ с одной или двумя дорожками. С практической точки зрения применение РКШ для построения высокоразрядных малогабаритных ФЦПУ связано с рядом ограничений конструктивного и особенно технологического характера, накладываемых минимальным размером градации кодовой шкалы, чувствительностью и размерами СЭ.
Различают КШ на основе линейных рекуррентных последовательностей (РП) и КШ на основе нелинейных РП в зависимости от свойства линейности или нелинейности (по отношению к оператору суммирования по модулю 2) рекуррентного соотношения, используемого для построения РП. Особенностью КШ на основе линейных РП является то, что они имеют информационную ёмкость 2п — 1, п = 1,2,3,... значений кода - несовместимую со многими техническими системами, в которые встраивается ЦПУ. К недостаткам КШ на основе нелинейных РП относится единственность размещения СЭ вдоль шкалы — с шагом в один квант. При конечных размерах СЭ (фотоприёмников в ФЦПУ) этот недостаток существенно ограничивает разрядность КШ.
В связи с этим, актуальной задачей является разработка кодовых шкал с учётом обозначенных ограничений, которые позволят создавать высокоразрядные малогабаритные ЦПУ. Такие кодовые шкалы в сравнении с классическими КШ должны иметь высокую информационную ёмкость при малом числе кодовых дорожек.
Далее условимся понимать под подвижным растром кодовый диск, а под неподвижным — диафрагму, являющиеся конструктивными элементами ФЦПУ; под кодовой шкалой будем понимать совокупность кодовых дорожек (КД) подвижного растра, под считывающим элементом — прозрачную щель или группу щелей неподвижного растра и фотоприёмник, под градацией — элементарный участок кодовой шкалы (дорожки), содержащий признаки одного символа двоичного кода из {0,1}.
Теория построения кодовых шкал на основе рекуррентных последовательностей
Известны сдвигающие регистры, или регистры сдвига с обратной связью, - электронные переключательные схемы специального вида, перерабатывающие информацию, заданную в форме соответствующим образом представленных элементов поля Галуа ОЕ (2) [7]. В общем виде п -позиционный регистр сдвига состоит из п последовательно соединённых триггерных ячеек. В результате действия к + 1 тактовых импульсов, где к — целое неотрицательное число, состояние каждой ячейки (ак, г,..., ак+п_ ^ е{0,1} сдвигается в соседнюю ячейку. При введении обратной связи
Д*0, Х1,.-. , Хп-1) = С0Х0 + СЛ + .■■ + Сп-1Хп-П С е ОЕ(2) (1)
сдвигающий регистр оказывается в режиме непрерывной смены состояний.
С помощью булевой функции обратной связи (1) можно определить п -е состояние регистра (после п тактов работы): ая = I(а,а>.••>а„-1)•
Таким образом, символы двоичной последовательности на выходе регистра сдвига удовлетворяют рекуррентному соотношению [3]
ап+ у = кп—1 ап-1+у + кп—2ап-2+у + . + к1ау+1 + ау , (2)
где к е ОЕ(2), у = 0,1,.
Для работы регистра необходимо задать начальное состояние триггерных ячеек (а, а,. • •, ап_!), причем нулевая комбинация является запрещённой, так как порождает последовательность с одними нулями.
Функцию обратной связи (1) можно представить также в форме полинома порядка п с коэффициентами из поля Галуа ОЕ(2) , называемого характеристическим полиномом,
к( х) = кпхп + К_гхп—1 + . + Кх + К, (3)
где к0 = кп =1, К е ОЕ(2).
Любая однородная рекуррентная последовательность с линейной функцией вида (1) может иметь максимальный период 2п — 1, т. е. 2п возможных состояний регистра за исключением нулевой комбинации. Такую последовательность называют псевдослучайной последовательностью максимальной длины над полем ОЕ (2) (ПСПМД), или М -последовательностью. Для её построения необходимо и достаточно, чтобы характеристический полином являлся примитивным полиномом [7] над полем ОЕ(2), а начальное состояние — отличным от нулевого. Кодовые шкалы на основе ПСПМД имеют информационную ёмкость 2п — 1 и носят название псевдослучайные кодовые шкалы (ПСКШ).
М -последовательности относятся к классу циклических кодов и могут задаваться с помощью порождающего полинома [7]
8 ( х) =
х2"—1 +1
к( х)
где к( х) — характеристический полином, задаваемый (3).
Для каждой ПСПМД длиной М = 2п — 1 существует ровно 2п — 1 различных циклических сдвигов, которые могут быть получены путём умножения порождающего полинома 8(х) на х1, где I = 0,1,.,М — 1. Порядок размещения на ПСКШ п считывающих элементов определяется путём циклических сдвигов, т. е. СЭ с номером т (т = 1,2,.,п) ставится в
соответствие /т циклический сдвиг х/т^(х) М -последовательности. Тогда полином, определяющий порядок размещения на шкале п СЭ, имеет вид [3]
г(х) = х'1 + х 2 +... + хп, 4 е 0,1,.., М — 1. (4)
Между тем, псевдослучайные последовательности с нулевой комбинацией получаются с помощью регистра сдвига с нелинейной функцией обратной связи, т. е. в регистре, где символы последовательности нелинейным образом зависят от предыдущих символов:
/ (х0, Х1,- • •, Хп—1) = С0Х0 + СЛ + • • • + Сп—1Хп—1 + Х1Х2 "•Хп—\, (5)
где Х является дополнением х ; с е ОЕ(2).
Такие последовательности имеют период 2п и являются частным случаем последовательностей де Брейна.
Символы последовательности удовлетворяют рекуррентному соотношению
Ь = к Ъ ^ + к 9Ъ ^ .+...+кЪ + Ъ + Ъ ^ Ъ • А,, (6)
п+] п—1 п—1+ ] п—2 п—2+ ] ч у+1 ] п—1+ ] п—2+ ] ? ^ '
где ] = 0,1,„.
Начальные символы последовательности ЪЪ •••Ъп_1 выбираются произвольно. Рекуррентное соотношение (6) отличается от соотношения для линейных псевдослучайных последовательностей (2) только наличием последнего слагаемого — произведения значений п — 1 символов.
Кодовые шкалы на основе нелинейных рекуррентных последовательностей имеют разрешающую способность 2п и носят название нелинейные кодовые шкалы (НКШ). Для их построения характеристический полином вида (3) так же, как и в случае ПСКШ, должен являться примитивным над полем ОЕ (2).
Размещение СЭ на НКШ, в отличие от ПСКШ, в силу нелинейных свойств применяемых последовательностей может происходить только единственным образом: с шагом, равным одному кванту, т. е. в соответствии с полиномом размещения
г(х) = 1 + х + х2 + •.. + хп—1'. (7)
Единственность такого размещения отражает существенный недостаток НКШ, ограничивающий их применение для построения малогабаритных высокоразрядных преобразователей.
Композиция кодовых шкал на основе рекуррентных последовательностей
Преобразователи считывания представляют собой систему из I параллельно работающих N -разрядных преобразователей угла. Такой подход позволяет комбинировать кодовые дорожки, основанные на разных базовых методах пространственного кодирования, на каждой из которых происходит преобразование перемещения в соответствующую группу разрядов выходного кода [2].
Пусть ФЦПУ имеет р кодовых дорожек в порядке от старшей, с которой считывается старший по весу разряд, до младшей, с которой считывается младший по весу разряд. Период функции преобразования каждой кодовой дорожки - , где I = 1, р . В случае кругового ФЦПУ с диапазоном изменения угла от 0 до 360° для первой кодовой дорожки ^ = 360°, а
для каждой последующей =— ^, где N - число уровней квантования I -й кодовой
^1
дорожки.
Информационная ёмкость преобразователя N пропорциональна числу уровней кван-
р
тования каждой дорожки: N = П N . Период функции преобразования каждой дорожки:
1=1
^=360°/ПN .
/ 1=1
Пусть старшая КД строится в соответствии с символами рекуррентной последова-
тельности (линейной или нелинейной) длиной Д . Пусть следующая кодовая дорожка также строится в соответствии с символами линейной или нелинейной РП длиной Д, причём в угловом секторе, соответствующем одному символу последовательности старшей КД, укладывается один период последовательности младшей дорожки, т. е. последовательность длиной Д на младшей дорожке имеет Д периодов: = ^ /Ы1 = 360°/Д . Такое построение аналогично структуре регулярных двоичных КШ, в которых одному символу из {0,1} старшей дорожки соответствует последовательность 01 младшей дорожки.
К достоинствам такой кодовой шкалы, представляющей собой композицию РКШ и регулярных КШ, в которой одному символу старшей КД ставится в соответствие один период РП на следующей КД, относится возможность рационального размещения СЭ с возможностью существенного уменьшения числа КД по сравнению с классическими КШ.
Пример построения кодовой шкалы на основе композиции нелинейных рекуррентных последовательностей
Рассмотрим принцип построения кодовой шкалы на основе композиции нелинейных рекуррентных последовательностей на примере пятиразрядной КШ, содержащей двух- и трёхразрядную НКШ.
Возьмём нелинейную РП длиной Д = 22 (пх = 2), для построения которой будем использовать примитивный полином к(х) = х2 + х +1, начальные значения Ъ{рх зададим как 00. Рекуррентное соотношение последовательности согласно (6) примет вид
Ъ2+у = Ъу + Ъ1+у + Ъ+у .
Сгенерированную таким образом последовательность 0011 используем для построения кодовой дорожки ФЦПУ. При размещении двух считывающих элементов вдоль этой дорожки получим 22 = 4 значения кода. Эту двухразрядную дорожку возьмём в качестве старшей дорожки Т ФЦПУ, тогда период второй дорожки будет = 360°/4 = 90°. Это же значение является дискретностью преобразования (квантом) первой дорожки.
Следующую дорожку Т2 большего диаметра выполним в соответствии с символами последовательности длиной Д = 23 (п2 =3), полученными с помощью рекуррентного соотношения
Ъ3+у = Ъу + Ъ1+у + КА+у .
Для его построения используется примитивный полином к(х) = х3 + х +1. При начальных значениях ЪЪЪ = 000 последовательность будет иметь вид 00010111.
Дорожка Т2 будет содержать 4 периода последовательности:
00010111000101110001011100010111. При рассматриваемом подходе каждый период последовательности будет заполнять дугу окружности диаметра второй дорожки с центральным углом ¥2, соответствующим одному
символу старшей дорожки Т. Тогда шаг размещения СЭ вдоль второй дорожки, благодаря тому, что она содержит четыре периода последовательности, составит «360°/4 + 360°/32, ае {0,1, ...,22 —1} . Коэффициент а выбирается при проектировании ФЦПУ из конструктивных соображений и позволяет наиболее рационально и технологично осуществить компоновку СЭ вдоль кодовой шкалы преобразователя.
Линейная развёртка рассматриваемой в примере КШ приведена на рис. 2. ФЦПУ с такой кодовой шкалой, состоящей из двух дорожек, обладает разрешающей способностью 25,
т.е. имеет 32 значения кода угла. На рис. 3 показана круговая КШ с одним из вариантов размещения считывающих элементов.
СЭ 1.1 СЭ 1.2
□1
Рис. 2. Линейная развёртка пятиразрядной кодовой шкалы
СЭ 2.2
Рис. 3. Круговая пятиразрядная кодовая шкала
В табл. 1 приведены двоичные значения кодов, снимаемые считывающими элементами с дорожек Т и Т2, в положениях кодовой шкалы р и соответствующие этим значениям десятичные эквиваленты р'.
Таблица 1
Последовательность кодовых комбинаций пятиразрядной кодовой шкалы
Р 21 Т 1 2 р' Р 11 Т 1 2 р' Р Т, Т 1 2 р' Р Т: Т Т 2 р'
0 00 000 0 8 01 000 8 16 11 000 24 24 10 000 16
1 00 001 1 9 01 001 9 17 11 001 25 25 10 001 17
2 00 010 2 10 01 010 10 18 11 010 26 26 10 010 18
3 00 101 5 11 01 101 13 19 11 101 29 27 10 101 21
4 00 011 3 12 01 011 11 20 11 011 27 28 10 011 19
5 00 111 7 13 01 111 15 21 11 111 31 29 10 111 23
6 00 110 6 14 01 110 14 22 11 110 30 30 10 110 22
7 00 100 4 15 01 100 12 23 11 100 28 31 10 100 20
Выводы
Предложенный в данной работе принцип построения кодовых шкал позволяет строить на своей основе высокоразрядные цифровые преобразователи угла в уменьшенных габаритах с учётом технологических и конструктивных ограничений, таких как минимальная ширина градации и шаг размещения считывающих элементов. Кодовые шкалы, основанные на композиции рекурсивных кодовых шкал, широко используются в ОАО «Авангард» для создания фотоэлектрических преобразователей угла. Такие КШ позволили создать 18- и 20-разрядные ФЦПУ повышенной надёжности и стойкости к внешним воздействующим факторам с диаметрами всего 80 мм и 120 мм соответственно.
Библиографический список
1. Домрачеев, В.Г. Цифровые преобразователи угла: принципы построения, теория точности, методы контроля / В. Г. Домрачев, Б. С. Мейко. - М.: Энергоатомиздат, 1984. - 328 с.
2. Асиновский, Э. Н. Высокоточные преобразователи угловых перемещений / Э. Н. Асиновский [и др.]; под ред. А. А. Ахметжанова. - М.: Энергоатомиздат, 1986. - 128 с.
3. Азов, А. К.Рекурсивные кодовые шкалы / А. К.Азов, А. А. Ожиганов, М. В. Тарасюк // Информационные технологии.1998. № 6. С. 39-43.
4. Ожиганов, А. А. Кодовые шкалы на основе нелинейных последовательностей для преобразователей угловых перемещений / А. А. Ожиганов, П. А. Прибыткин // Научно-технический вестник. СПбГУ. ИТМО. 2010. Вып. 4. С. 81-84.
5. Ожиганов, А. А. Использование нелинейных последовательностей при построении двухдо-рожечных кодовых шкал для преобразователей угловых перемещений / А. А. Ожиганов, П. А. Прибыткин // Изв. вузов. Приборостроение. 2010. Т. 53. № 7. С. 39-44.
6. Ожиганов, А. А. Анализ возможностей применения корректирующих кодов в рекурсивных кодовых шкалах / А. А. Ожиганов, П. А. Прибыткин // Сб. научных трудов аспирантов, соискателей и студентов магистерской подготовки ОАО "Авангард". 2010. Вып. 2. С. 70-77.
7. Лидл, Р. Конечные поля. В 2-х т.: пер. с англ. / Р. Лидл, Г. Нидеррайтер. - М.: Мир, 1988. Т. 2. - 822 с.
Дата поступления в редакцию 15.10.2010
A.A. Ozhiganov, P.A. Pribytkin
CODE SCALES BASED ON THE COMPOSITION OF NON-LINEAR RECURRENT SEQUENCES
A type of code scales for absolute-type optical encoders based on the composition of non-linear recurrent sequences is suggested. A principle of composition of recursive code scales is defined. An example of constructing code scale is given.
Key words: rotary encoder, shaft encoder, code scale, recursive code scale, reading elements, pseudo-random sequence, recurrence sequence, de Brujin cycle, nonlinear sequence.