Модуль відеокамери Arduino
Зміст
Загальні відомості
Модуль відеокамери призначений для роботи в складі електронного фотоапарата, приладів відеотрансляції та відеозапису. Інформація на виході модуля представляється в цифровому вигляді. VGA-модуль OV7670 300KP сумісний з різними мікроконтроллерами. Висока чутливість дозволяє працювати в умовах низької освітленості. По шині управління можна налаштувати якість зображення, формат даних і режим передачі. Особливості модуля дозволяють автоматично підтримувати високу якість зображення шляхом зменшення або усунення зашумленості, вирівнювання балансу кольору, підвищення чіткості зображення, установки оптимальної насиченості, контрастності, гами і відтінку зображення. Ці особливості приладу OV7670 300KP дозволяють його застосовувати в системах відеоспостереження, вони входять до комплексів "розумний будинок",а також охоронних системи Мала вага пристрою дозволяє встановлювати його на автоматичні аеросистеми і різні рухливі платформи.
Рис.1 Загальний вигляд
Технічні характеристики модуля камери
- Розмір модуля: 32 м x 32 мм
- Фотоматриця: CMOS 1/4 дюйма
- Кількість пікселів: 0.3 M
- Розмір пікселя: 5.6 мкм * 5.6 мкм
- Формат на виході: Стандартний JPEG / M-JPEG
- Баланс білого: автоматичний
- Експозиція: автоматична
- Коефіцієнт передачі: автоматичний
- Динамічний діапазон: 60 Дб
- Максимальне аналогове посилення: 16 Дб
- Швидкість кадрів: 640 * 480 30 кадрів в секунду
- Режим сканування: у прогресивній розгортці
- Кут огляду: 60 градусів
- Відстань спостереження: 10 метрів, максимум 15 метрів (настроюється)
- Розмір зображення: VGA (640 * 480), QVGA (320 * 240), QQVGA (160 * 120)
- Швидкість передачі даних: за замовчуванням 38400
- Струм: 75 мА
- Робоча напруга: постійний струм +5
- Зв'язок: 3.3В TTL (три провідника TX, RX, GND)
Підключення до Arduino
Пристрої, які потрібні для підключення:
- відеокамера
- Arduino Uno (Mega, Leonardo, Nano, тощо)
- з'єднувальні дроти (4 штучки)
Рис.2 Підключення модуля відеокамери до Arduino
Перевірка працездатності відеокамери
Один з найшвидших методів перевірки працездатності камери - використання NTSC відео виходу для підключення. В цьому випадку при налаштуванні параметрів зображення і фокусування Ви моментально побачите результат. У комплексі з програмою CommTool - це ідеальний метод для ознайомлення основною роботою з модулем камери і Arduino.
Для підключення до більшості телевізорів і моніторів потрібен RCA джек. Чорний провідник підключений до Землі, а зелений - до сигналу. Підключіть кабель NTSC до монітора і підключіть червоний і чорний кабелі до джерела живлення +5 В. На моніторі тут же з'явиться чорно-біле зображення.
Схема і компоненти
Зображення об'єктів, що знаходяться перед об'єктивом камери для Arduino, фокусується на поверхні мікросхеми OV7670, розташованої на платі під об'єктивом. Мікросхема U1 перетворює фотоінформацію в цифровий вигляд і забезпечує передачу даних по інтерфейсу. Для живлення мікросхеми на платі змонтовані два інтегральних стабілізатора напруг 2,8 і 1,8 вольт. У схему пристрою входить кілька пасивних компонентів, що забезпечують роботу стабілізаторів і світлочутливої мікросхеми. Найкраще підключення приладу - безпосередня установка вилки з'єднувача в розетку основного модуля приладу відеоспостереження. Частоти сигналів можуть доходити до 24 МГц. У зв'язку з цим лінії підключення модуля відеокамери виконуються відповідно до вимог високочастотного з'єднання. Серед них головна вимога виконувати з'єднання якомога коротшими провідниками. Напруга живлення мікроконтролерів вище граничної напруги сигналів модуля. Для входу SIO_C необхідно зробити резисторний дільник напруги для виконання вимоги по максимальному рівню вхідного сигналу модуля відеокамери. Обмін даними з камерою по шині I2C можливий, якщо подана тактова частота на вхід XCLK. Рекомендована частота цього сигналу 24 МГц. Використовуючи в якості джерела сигналу 8 МГц, мікроконтролер і встановивши в МС OV7670 множення частоти на 3, отримаємо необхідні 24 МГц. При напрузі живлення генератора 5 В тактовий сигнал XCLK подається через узгоджувальний резисторний дільник напруги з однакових резисторів 4,7 кОм. Відеоінтерфейс модуля OV7670 300KP використовує синхроімпульси по кадрам VSYNC, по рядках HREF і по пікселям PCLK. Дані пікселя, що представляють собою закодовану інформацію про його кольорі, передаються по паралельному інтерфейсу D7-D0 по тактам PCLK. Для передачі даних про колір використовуються 2 байта, що відправляються по черзі.
Рис.3 Схема і компоненти
Приклад (під)програми
//Leo_passthru
//Обеспечивает передачу данных по серийному протоколу при
//использовании плат Arduino Leonardo в Windows.
// Красный подключен к +5 В
// Черный - к земле
// Зеленый - к цифровому пину 0
// Белый - к цифровому пину 1
void setup() {
Serial1.begin(57600);
Serial.begin(57600);
}
void loop()
{
while (Serial.available())
Serial1.write(Serial.read());
while (Serial1.available())
Serial.write(Serial1.read());
}
Список використаної літератруи
Ковбасюк Роман