У цій статті розповідається про те, як встановити веб камеру на сервопривід, встановлений в каркас з конструктора і керувати нею за допомогою Arduino.
Нещодавно я перейнявся питанням, як ще можна застосувати Arduino крім миготіння світлодіодів.
Ця ідея прийшла до мене під час ранкової бесіди з колегами по Skype, і я вирішив зробити так, щоб вони за допомогою веб камери могли дивитися, що відбувається в нашому офісі. В один дощовий недільний день я схилив до цього свого приятеля, і ми побудували Arducam.
Перед створенням цього проекту я прочитав кілька подібних статей, в деяких з яких використовувався джойстик. Маючи джойстик від старого пульта до PS3, я також вирішив використовувати його.
Каркас з конструктора
Ми використовували старий конструктор, який я купив в комісійному магазині для побудови каркасу. Ми побудували каркас і закріпили його на основі.
З'єднання з валом сервоприводу
Для з'єднання вала сервоприводу з шестернею ми використовували холодну зварювання. Я вибрав хрестоподібну передачу на вал, тому що вона мені практично не знадобитися для майбутніх проектів, на відміну від інших деталей отриманих разом з сервоприводом.
Необхідно встановить її точно прямо. Я зробив це за допомогою рівня. Нам пощастило, що відстань між сторонами каркаса було майже такої ж ширини, як наш сервопривід. Ви можете прикріпити сервопривід до основи за допомогою двостороннього скотча.
Монтаж веб-камери
Веб камера
Я використовував веб-камеру фірми Logitech.
Ймовірно, корисно буде видалити з неї противагу, щоб зробити її легше, але це не моя веб камера, а з офісу, тому я не став цього робити.
розподіл ваги
Я додав 2 товстих прокладки, щоб уникнути тиску вала на камеру. Вони зміщують вага камери на весь каркас з вала сервоприводу.
Монтаж веб-камери
Кріпильний елемент веб-камери складається з кола з отвором, що збігається з валом по центру. Це дозволяє забезпечити тягу між валом і кругом.
Деякий простір створюється за рахунок прокладки, яка запобігає натискання на вал.
проблеми:
- Камера не закріплена в каркасі, і вона буде падати, якщо її максимально нахилити.
- Отвори в конструкторі над сервоприводом великі, і дозволяють сервоприводу робити значні горизонтальні рухи через навантаження.
- Момент, що обертає камери викликає надмірне обертання, що в свою чергу, деформує сервопривід. Я хочу спробувати виправити це шляхом обертання камери на 1 градус назад після періоду безперервного руху, але я віддаю перевагу механічні рішення. Можливо це можна виправити шляхом додавання передачі і установки веб камери на окремий вал з ремінним приводом?
-. Або використовувати більш потужний сервопривід.
електроніка
Підключення сервоприводів і світлодіодів
Сервопривод має 3 дроти:
- GND
- +5V
- сигнал
Я використовував 9 контакт для управління сервоприводом.
Світлодіод підключений до +5 В і GND з резистором на лінії + 5В і буде світитися при подачі живлення.
підключення джойстика
У мене був старий зламаний моїм сином джойстик від PS3.
Мені допомогли статті від Finnio і jhoffnun. щоб зрозуміти як працює джойстик і його електроніка.
Arduino
Програму для Arduino як і всі файли проекту можна завантажити нижче або взяти на github.
Програма дозволяє керувати веб камерою за допомогою USB і джойстика.
Можна використовувати модем-контроль / емулятор терміналу додатків, таких як Minicom або Putty для зв'язку з USB-порт.
Установка по центру:
- Програма буде встановлювати сервопривід на 90 градусів при запуску.
- І при натисканні "m"
Поворот вліво і право
- Коли джойстик переміщується в горизонтальній площині.
- Вліво при натисканні 'F'
- Вправо при натисканні "J"
Node.js
Крім того, ми реалізували веб-сервер в node.js щоб полегшити контроль над arducam.
Інструкцію можна знайти на сайті gihub проекту.
Можливі поліпшення:
- Забезпечити поворот камери кнопками зі стрілками.
- Зробити поворот на 1 градус назад для полегшення навантаження на сервопривід, що виникає при обертального моменту у важких веб камер.