Система с использованием сенсора оттенка цвета

Измерение и определение количества цвета с помощью электронной схемы. Анализ принципа действия генераторных и параметрических датчиков цвета. Разработка программы для управления системой определения цвета. Описания модуля датчика распознавания цвета.

Рубрика Программирование, компьютеры и кибернетика
Вид контрольная работа
Язык русский
Дата добавления 21.04.2015
Размер файла 489,4 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

ФЕДЕРАЛЬНОЕ Государственное БЮДЖЕТНОЕ образовательное учреждение высшего профессионального образования

«ПОВОЛЖСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНОЛОГИЧСЕКИЙ УНИВЕРСИТЕТ» (ФГБОУ ВПО «ПГТУ»)

ВЫСШИЙ КОЛЛЕДЖ ПГТУ «ПОЛИТЕХНИК»

Контрольная работа

По дисциплине «Микропроцессорные системы»

На тему: «Система с использованием сенсора оттенка цвета»

Студента Кузнецова Артема Викторовича

Преподаватель Морохин Д.В.

2015

Введение

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

Белый свет состоит из всех цветов радуги. Когда свет падает на поверхность, некоторые цвета поглощаются, а некоторые отражаются. Отраженные цвета - это цвета воспринимаемого нами объекта.

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

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

Аналитическая часть

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

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

Используемые датчики весьма разнообразны и могут быть классифицированы по различным признакам:

В зависимости от вида входной (измеряемой) величины различают: датчики механических перемещений (линейных и угловых), пневматические, электрические, расходомеры, датчики скорости, ускорения, усилия, температуры, давления и др.

В настоящее время существует приблизительно следующее распределение доли измерений различных физических величин в промышленности: температура - 50%, расход (массовый и объемный) - 15%, давление - 10%, уровень - 5%, количество (масса, объем) - 5%, время - 4%, электрические и магнитные величины - менее 4%.

По виду выходной величины, в которую преобразуется входная величина, различают неэлектрические и электрические: датчики постоянного тока (ЭДС или напряжения), датчики амплитуды переменного тока (ЭДС или напряжения), датчики частоты переменного тока (ЭДС или напряжения), датчики сопротивления (активного, индуктивного или емкостного) и др.

Большинство датчиков являются электрическими. Это обусловлено следующими достоинствами электрических измерений:

- электрические величины удобно передавать на расстояние, причем передача осуществляется с высокой скоростью;

- электрические величины универсальны в том смысле, что любые другие величины могут быть преобразованы в электрические и наоборот;

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

По принципу действия датчики можно разделить на два класса:

· генераторные

· параметрические (датчики-модуляторы).

Генераторные датчики осуществляют непосредственное преобразование входной величины в электрический сигнал.

Параметрические датчики входную величину преобразуют в изменение какого-либо электрического параметра (R, L или C) датчика.

По принципу действия датчики также можно разделить на омические, реостатные, фотоэлектрические (оптико-электронные), индуктивные, емкостные и д.р.

Различают три класса датчиков:

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

- цифровые датчики, генерирующие последовательность импульсов или двоич­ное слово;

- бинарные (двоичные) датчики, которые вырабатывают сигнал только двух уровней: "включено/выключено" (иначе говоря, 0 или 1); получили широкое распространение благодаря своей простоте.

Требования, предъявляемые к датчикам:

- однозначная зависимость выходной величины от входной;

- стабильность характеристик во времени;

- высокая чувствительность;

- малые размеры и масса;

- отсутствие обратного воздействия на контролируемый процесс и на контролируемый параметр; - работа при различных условиях эксплуатации;

- различные варианты монтажа.

Сенсоры различаются по способу физического подключения. Большое количество Arduino-совместимых сенсоров легко подключаются по трём проводам. Другие сенсоры имеют контакты, подходящие для подключения через breadboard.

Arduino - аппаратная вычислительная платформа, состоящая из двух основных компонентов: плата ввода-вывода и среда разработки на языке Processing/Wiring. Arduino удобна для разработки электронных устройств как для новичков, так и для профессионалов. Эта платформа пользуется огромной популярностью во всем мире из-за простого языка программирования, открытой архитектуры и программного кода. Особенность данной платформы является то, что она программируется без использования программаторов через USB. С помощью Arduino компьютер может выйти за рамки виртуального мира в физический, благодаря множеству датчиков, которые можно подключить к плате. Датчики могут получать информацию об окружающей среде, а также управлять различными исполнительными устройствами.

Разработка схемы устройства

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

В данном проекте будет собрана система определения цвета предметов.

Основные цели работы:

• Разработка системы управления

• Выбор технических средств для создания системы

• Запуск системы определения цвета

• Разработка программы для управления системы определения цвета.

Для этого понадобятся следующие детали:

1. Датчик распознавания цвета "TCS230 TCS3200 Color Recognition Sensor Detector"

2. Макетная плата

3. Провода типа «папа-папа»

4. Arduino Uno

5. Трехцветный диод

Описание и характеристики модуля датчика распознавания цвета TCS3200

Датчик цвета TCS3200 можно использовать для распознавания цветов окружающих предметов в роботизированных системах. Датчик состоит из четырех светочувствительных сенсоров с оптическими фильтрами - красным, зеленым, голубым и бесцветным. Это позволяет выделить из света, отражающегося от исследуемого материала, четыре цветовых компонента.

Также на датчике располагаются четыре белых светоизлучающих диода, которые нужны для подсветки исследуемой поверхности.

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

Характеристики

• Питание: 2.7- 5.5 В,

• Цифровой интерфейс TTL

• Преобразование уровня освещенности в частоту с высоким разрешением

• Изменяемый рабочий диапазон генератора частоты

• Функция «Power Down»

Описание и характеристики Arduino Uno

параметрический датчик цвет электронный

Arduino Uno контроллер построен на ATmega328. Платформа имеет 14 цифровых вход/выходов (6 из которых могут использоваться как выходы ШИМ), 6 аналоговых входов, кварцевый генератор 16 МГц, разъем USB, силовой разъем, разъем ICSP и кнопку перезагрузки. Для работы необходимо подключить платформу к компьютеру посредством кабеля USB, либо подать питание при помощи адаптера AC/DC или батареи.

В отличие от всех предыдущих плат, использовавших FTDI USB микроконтроллер для связи по USB, новый Ардуино Uno использует микроконтроллер ATmega8U2

Микроконтроллер

ATmega328

Рабочее напряжение

5 В

Входное напряжение(рекомендуемое)

7-12 В

Входное напряжение(предельное)

6-20 В

Цифровые входы и выходы

14(6 могут использоваться как выходы ШИМ)

Аналоговые входы

6

Постоянный ток через вход/выход

40 мА

Постоянный ток для вывода 3.3 В

50 мА

Флеш-память

32 Кб из которых 0,5 Кб для загрузчика

ОЗУ

2 Кб

EEPROM

1 Кб

Тактовая частота

16 МГц

Принципиальная схема системы:

Блок-схема программы:

Разработка программы

#include <TimerOne.h>

// GND & LED - GND , OE - GND, VCC - VCC, S0 - D6, S1 - D5, S2 - D4, S3 - D3, OUT - D2

#define S0 6

#define S1 5

#define S2 4

#define S3 3

#define OUT 2

int g_count = 0; // count the frequecy

int g_array[3]; // store the RGB value

int g_flag = 0; // filter of RGB queue

float g_SF[3]; // save the RGB Scale factor

int Red;

int Green;

int Blue;

const int BlueLedPin = 8;

const int GreenLedPin = 9;

const int RedLedPin = 10;

// Init TSC230 and setting Frequency.

void TSC_Init()

{

pinMode(S0, OUTPUT);

pinMode(S1, OUTPUT);

pinMode(S2, OUTPUT);

pinMode(S3, OUTPUT);

pinMode(OUT, INPUT);

digitalWrite(S0, LOW); // OUTPUT FREQUENCY SCALING 2%

digitalWrite(S1, HIGH);

}

// Select the filter color

void TSC_FilterColor(int Level01, int Level02)

{

if(Level01 != 0)

Level01 = HIGH;

if(Level02 != 0)

Level02 = HIGH;

digitalWrite(S2, Level01);

digitalWrite(S3, Level02);

}

void TSC_Count()

{

g_count ++ ;

}

void TSC_Callback()

{

switch(g_flag)

{

case 0:

// Serial.println("->WB Start");

TSC_WB(LOW, LOW); //Filter without Red

break;

case 1:

// Serial.print("->Frequency R=");

//Serial.println(g_count);

g_array[0] = g_count;

TSC_WB(HIGH, HIGH); //Filter without Green

break;

case 2:

// Serial.print("->Frequency G=");

//Serial.println(g_count);

g_array[1] = g_count;

TSC_WB(LOW, HIGH); //Filter without Blue

break;

case 3:

// Serial.print("->Frequency B=");

//Serial.println(g_count);

// Serial.println("->WB End");

g_array[2] = g_count;

TSC_WB(HIGH, LOW); //Clear(no filter)

break;

default:

g_count = 0;

break;

}

}

void TSC_WB(int Level0, int Level1) //White Balance

{

g_count = 0;

g_flag ++;

TSC_FilterColor(Level0, Level1);

Timer1.setPeriod(1000000); // set 1s period

}

void setup()

{

TSC_Init();

Serial.begin(38400);

Timer1.initialize(); // defaulte is 1s

Timer1.attachInterrupt(TSC_Callback);

attachInterrupt(0, TSC_Count, RISING);

delay(4000);

// for(int i=0; i<3; i++)

// Serial.println(g_array[i]);

g_SF[0] = 255.0/ g_array[0]; //R Scale factor

g_SF[1] = 255.0/ g_array[1] ; //G Scale factor

g_SF[2] = 255.0/ g_array[2] ; //B Scale factor

pinMode(BlueLedPin, OUTPUT);

pinMode(GreenLedPin, OUTPUT);

pinMode(RedLedPin, OUTPUT);

// Serial.println(g_SF[0]);

// Serial.println(g_SF[1]);

// Serial.println(g_SF[2]);

}

void loop()

{

g_flag = 0;

// for(int i=0; i<3; i++)

// Serial.println(int(g_array[i] * g_SF[i]));

Red = g_array[0] * g_SF[0];

Green = g_array[1] * g_SF[1];

Blue = g_array[2] * g_SF[2];

/*

Serial.print("Red ");

Serial.println(Red);

Serial.print("Green ");

Serial.println(Green);

Serial.print("Blue ");

Serial.println(Blue);

*/

if (Red > (Green *=1.3) && Red > (Blue *=1.3))

{

Serial.println(1);

digitalWrite(RedLedPin, HIGH);

}

else if (Green > (Red *=1.3) && Green > (Blue *=1.3))

{

Serial.println(2);

digitalWrite(GreenLedPin, HIGH);

}

else if (Blue > (Red *=1.3) && Blue > (Green *=1.3))

{

Serial.println(3);

digitalWrite(BlueLedPin, HIGH);

}

delay(4000);

digitalWrite(RedLedPin, LOW);

digitalWrite(GreenLedPin, LOW);

digitalWrite(BlueLedPin, LOW);

}

Вывод

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

Литература

1. Arduino [электронный ресурс]: arduino.cc , режим доступа-свободный.

2. Сенсор оттенка цвета [электронный ресурс]: http://amperka.ru/product/color-sensor-tcs3200 , режим доступа-свободный.

3. Како Н., Яманэ Я., Датчики и микро-ЭВМ - Пер. с япон.-Л.: Энергоатомиздат, Ленингр. отд-ние 1986.

4. Schmidt M. Arduino,- England, 2014.

Размещено на Allbest.ru


Подобные документы

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

    контрольная работа [4,5 M], добавлен 03.06.2013

  • Исследование и анализ общих понятий цвета, а также принципы представления, хранения, ввода, вывода и обработки графической информации. Особенности создания материала для календаря, его перевод в цифровой вид и обработка при взаимодействии с типографией.

    курсовая работа [319,7 K], добавлен 30.05.2015

  • Структура графической системы. Монитор: общее понятие, разрешающая способность дисплея. Главная функция видеоадаптера. Особенности формирования цвета видеопиксела. Система кодирования цвета при помощи трех составляющих. Сущность понятия "палитра".

    презентация [57,9 K], добавлен 06.01.2014

  • Язык разметки гипертекста HTML, основы работы с Delphi. Разработка формата файла базы данных цвета. Методика подбора цвета для WEB-страниц. Изучение и систематизация информации о правилах создания эргономичных интерфейсов (в том числе WEB-интерфейсов).

    курсовая работа [475,8 K], добавлен 17.07.2009

  • История создания логотипов. Их функции, виды и формы. Формирование требований к ним. Психология восприятия цвета, его символизм. Описание графической программы для дизайнеров "Corel Draw". Особенности создания цветового образа в проектировании логотипа.

    курсовая работа [5,5 M], добавлен 12.04.2014

  • Практическое применение индексированного цвета для разработки Web-графики. Установка параметров преобразования в индексированные цвета. Вычисление цветов для создания палитры на основе цветов, имеющихся в изображении. Прозрачные области на изображении.

    контрольная работа [544,0 K], добавлен 21.03.2012

  • Исследование природы цвета как качественной субъективной характеристики излучения оптического диапазона. Световое и зрительное восприятие цвета человеком. Назначение, описание моделей и структура цветовых профилей и пространств в компьютерной графике.

    курсовая работа [1,1 M], добавлен 03.10.2011

  • Применение методов искусственного интеллекта при определении цвета глаз будущего ребенка. Сущность нейросетевых технологий, обучение нейросимуляторов. Зависимость погрешности обучения от погрешности обобщения. Оценка значимости входных параметров.

    презентация [287,2 K], добавлен 14.08.2013

  • Процесс работы сканирующего устройства. Схема устройства сканера. Контактные оптические сенсоры. Достоинства CIS-моделей. Преимущества и недостатки барабанных сканеров. Глубина цвета. Оптическая плотность. Аппаратный интерфейс. Программы распознавания.

    презентация [486,2 K], добавлен 10.08.2013

  • Исследование теоретических аспектов разработки программы посредством использования Visual Basic. Анализ достоинств и недостатков данного языка программирования. Изучение особенностей создания интерфейса приложения. Основные этапы реализации программы.

    практическая работа [460,6 K], добавлен 22.01.2013

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.