Збираємо wi-fi робота

Збираємо wi-fi робота

Давно мріяв зробити Wi-Fi робота, яким можна було б керувати віддалено. І ось нарешті настав той день коли я зміг управляти роботом через інтернет, бачити і чути все що відбувається навколо нього.
Зацікавлених запрошую під кат

Для створення робота використовувалися наступні комплектуючі:

Набір для зборки платформи робота
Материнська плата робоконтроллера
Arduino Nano v.7
драйвер двигунів
Маршрутизатор TP-Link TL-WR703N
Мініатюрний USB 2.0 Hub
Купував комплектуючі тут.

Ось так виглядає зібраний мною робот, без верхньої кришки.

Збираємо wi-fi робота

Тепер все по порядку:

Збірка платформи робота

Збираємо wi-fi робота

Розташування компонентів на материнській платі
Я встановив тільки Arduino Nano, драйвер двигунів і звуковий випромінювач HC.

Збираємо wi-fi робота

Роутер wr703N прикріпив до нижньої частини платформи робота на двосторонній скотч

Збираємо wi-fi робота

Веб камера прикріплена на меблевий куточок, до штанів отворів платформи, передбачених для сервомоторів.

Збираємо wi-fi робота

Прошив роутер прошивкою CyberWrt.
СyberWrt - це прошивка зібрана на базі OpenWrt і призначена в першу чергу для роботів, розумного будинку і інших пристроїв побудованих на базі популярних моделей роутерів Tp-Link mr3020 b Wr703N. У СyberWrt максимально можливий обсяг вільного місця для інсталяції пакетів - 1.25Мб. За замовчуванням встановлено веб сервер і всі операції можна проводити через вбудований веб інтерфейс. Відразу після перепрошивки, роутер доступний в мережі по кабелю і по WiFi, як точка доступу. Через веб-інтерфейс можна працювати в режимі «командного рядка» - через веб термінал і в файловому менеджері, в якому можна редагувати, завантажувати, видаляти, створювати, копіювати файли і багато іншого.

Після прошивки роутера, він доступний як WiFi точка доступу з ім'ям «CyberBot», підключаємося до нього заходимо на головну сторінку роутера
Ось так виглядає веб інтерфейс відразу після прошивки
Встановлюємо модулі Драйвер FTDI, Драйвер video і CyberBot-2

Прошиваємо контролер Ардуіно.
Код програми робота вийшов досить простим, але його досить для того що б віддалено управляти роботом через локальну мережу або інтернет
Код адаптований під контролери Arduino з ATmega168 / 328 на борту і використовує бібліотеку CyberLib
Ця бібліотека допомагає з контролера вичавити максимум його можливостей і зменшити обсяг кінцевого коду
У коді використовується WDT, для того що б робот не зміг зависнути.
Так само код підтримує управління камерою по осях X і Y, але у мене не було вільних сервомоторів і я не зміг скористатися цією функцією

Код для Arduino

Все зібрано і прошито, тепер включаємо робота і управляємо їм віддалено.
На PC крім клавіш на екрані можна керувати ще з клавіатури, клавішами W, A, D, S, X

Надалі планую навчити робота орієнтуватися в просторі і малювати карту приміщення.

Схожі статті