ГОДИШНИК НА ТЕХНИЧЕСКИ УНИВЕРСИТЕТ – ВАРНА, 2007 г.
СИСТЕМА ЗА МИКРОКОНТРОЛЕРНО УПРАВЛЕНИЕ НА ЛИНЕЕН ОПТИЧЕН СЕНЗОР TSL1406R
Алтан Добруджалъ*
*Технически Университет – Варна, Варна, 9010, ул. “Студентска” №1
E-mail: altandobrucali@gmail.com
Резюме: Оптичните сензори се използват широко в системи за машинно зрение, при определяне на позиция, присъствие и други видове визуално разпознаване. Разработването на компактни устройства стана възможно с излизането на пазара на линейни оптични матрици с висока разделителна способност и малки размери. Малките габарити и удобството при работа ги правят предпочитан вариант при подбор на компонентите на оптични системи за разпознаване OCR.
Ключови думи: лазер, микроконтролерно управление, оптичен сензор
Въведение
Развитието на оптичните сензори доведе до появата на линейни оптични матрици с висока разделителна способност и относително малки размери. Сред многото приложения на подобни устройства е прилагането им в системи за машинно зрение. Задачата, разглеждана в настоящия доклад е модернизиране на съществуващи пишещи прибори чрез замяна на писеца със светлинен поток, а хартиения носител с линеен оптичен сензор. Предимствата на този подход са очевидни - отпада нуждата от регулярно снабдяване на отчитащия прибор с консумативи (мастило и хартия). Отчетената информация се съхранява в цифров вид, позволяващ по-нататъчна визуализация, обработка и при необходимост - печат. За решаване на задачата е разработено устройство, използващо линеен оптичен сензор TSL1406R, управляван от програмируем микроконтролер от фамилията PIC18Fxxx. Устройството отчита позицията на светлинна точка и предава показанието на персонален компютър. Връзката с компютъра позволява избор на режим на работа, съхраняване и визуализация на получените данни.
Описание на линейна сензорна матрица TSL1406R
Сензорът TSL1406R се състои от две линейно разположени секции с отделни аналогови изходи, като всяка секция се състои от 384 пиксела. Секциите могат да се свържат последователно (Фиг. 1а) или паралелно (Фиг. 1б). При последователно свързване, TSL1406R работи като 768-пикселова линейна матрица с един аналогов изход.
Устройството дава възможност да се използва функцията DATA-HOLD на всяка секция, така че да осигури едновременно прекратяване на интегрирането за всеки един пиксел.
Размерността на всеки един пиксел е 63.5μm х 55.5μm. Разстоянието между центровете на два съседни пиксела е 63.5μm, а разстоянието между два съседни пиксела е 8μm.
Сензорът се захранва с постоянно напрежение - 5V.
TSL1406R може да се използва в устройства за маркиране и четене на кодове, отделяне на ръбове, позициониране, оптично дешифриране и др.
а) б)
Фиг. 1.
Принципът на действие на линейния оптичен сензор е следния: Количеството светлина падаща върху всеки пиксел генерира фототок, който след това се интегрира, както е показано на функционалната схема на TSL1406R на фиг. 2.
През времето на интегриране кондензаторът на съответния пиксел се свързва към изхода на интегратора през аналогов ключ. Количеството натрупана в този кондензатор енергия е пропорционално на интензивността на светлинния поток върху съответния пиксел и времето за интегриране.
На фиг. 3. са показани времедиаграмите на работа при последователно свързване на двете секции на оптичния сензор. Изходът и нулирането на интегратора се управляват от 384 битов преместващ регистър. Извеждането на данните се стартира след подаването на разрешаващ импулс на извод SI1. При всеки тактов импулс той се измества с един разред надясно и изхода АО придобива значението на заряда на кондензатора на текущия разрешен пиксел.
Фиг. 2.
При нарастващ фронт на 384-тия тактов импулс, импулсът подаден на SI1 излиза на извод SO1 и се подава на SI2, с което разрешава работата на втората секция на сензора.
Фиг. 3.
МИКРОКОНТРОЛЕРНО УПРАВЛЕНИЕ НА TSL1406R
За управление на оптичния сензор се използва микроконтролер от фамилията PIC18Fxxx, който служи и за връзка с персонален компютър. Компютърът дава възможност на оператора да избира режим на работа на системата и да прочита текущото състояние на всички пиксели от матрицата.
Блоковата схема на системата е показана на фиг. 4.
Фиг. 4.
Системата работи в два режима: „настройка” и „сканиране”.
В режим на „настройка” към сензора се подава светлинен лъч от лазерен източник. Микроконтролерът генерира импулсната поредица, необходима за работата на TSL1406R и с помощта на вградения в него аналого-цифров преобразувател измерва и запаметява осветеността на всеки пиксел от матрицата. Подаването на поредния тактов импулс се извършва след приключване на аналого-цифровото преобразуване, което е причина скороста на работа в на оптичния сензор в този режим да е знечително по-ниска от пределните 8MHz, посочени в документацията на производителя му. На фиг. 5. е показано разпределението на светлинната енергия върху осветените от лъча пиксели.
Фиг. 5.
Микроконтролерът определя напрежението на сработване на компаратора като -3dB под максималното отчетено и го задава на генератора на опорно напрежение (ГОН). В качеството на ГОН може да се използва и цифров потениометър, свързан подходящо в схемата на компаратора. Наред с праговото напрежение се определя и широчината на зоната на осветяване (брой пиксели с осветеност до -3dB от максималната). Този параметър е необходим за корекция на показанието при попадане на светлинния лъч в краищата на сензора. Алгоритъмът на работа в режим на настройка е показан на фиг. 6.
Фиг. 6.
Режим „сканиране” е режимът на нормална работа на системата. По време на сканирането микроконтролерът отново управлява оптичния сензор според показаните на фиг. 3. времедиаграми, но подава тактовата поредица с честота 8MHz и не измерва аналоговата стойност за всеки пиксел. Вместо това отчита състоянието на аналоговия компаратор. Ако пикселът е осветен, изходът на компаратора е в състояние логическа „единица”. Обратно, ако пикселът е неосветен (напрежението на аналоговия изход на оптичния сензор е под зададения праг), компараторът извежда логическа „нула”.
Микроконтролерът запомня първата и последната позиции, при които е отчетена логическа „единица” на цифровия му вход. След това изчислява средно аритметично от началната и крайна позиции и получава позицията на центъра на светлинния лъч. Така изчислената позиция се изпраща към персоналния компютър, където се нанася на графика.
Комуникацията с персоналния компютър се извършва посредством стандартен сериен протокол за комуникация RS232. От страна на компютъра се използва COM, а от страна на микроконтролера - вграден интерфейс за асинхронна серийна комуникация USART. Нивата се преобразуват от интерфейсна схема MAX232.
Заключение
Разработената система позволява модернизиране на съществуващи пишещи прибори чрез замяна на писеца и хартията с лазерен сноп светлина и линеен оптичен сензор. На тази база могат да бъдат разработени и други оптични устройства, в това число компактни бар-код четци, системи за машинно зрение и други.
литература
[1] Кенаров Н., „Pic Микроконтролери” [2] http://www.microchip.com
[3] http://www.taosinc.com
Сподели с приятели: |