Wi-fi робот з відеотрансляцій в реальному часі, виявленням перешкод

Цей робот здатний рухатися зі швидкістю 12 км / год на відстань до 200м від керуючого комп'ютера. Його акумуляторні батареї дають 1,5 години повноцінної роботи. Wi-Fi Link дозволяє використовувати точку доступу між роботом і комп'ютером, що дозволяє збільшити робочу дистанцію в кілька разів. Це може застосовуватися в тунелях, трубопроводах і на охоронюваних територіях, куди неможливо проникнути через великий ризик.

Wi-fi робот з відеотрансляцій в реальному часі, виявленням перешкод

Передбачувана конструкція і особливості

начерки проекту

Цей малюнок дає коротку відповідь на питання "Як це працює?" Керуючий комп'ютер і роутер (роутер WRT серії) встановлений на роботі пов'язані з TCP / IP. Маршрутизатор отримує і відправляє сигнали і спілкується з мікро контролером через послідовну зв'язок. Камера підключена до роутера і також встановлена ​​на роботі. В якості камери використовується IP-камера, яка повертається на 360 'за і проти годинникової стрілки.

Wi-fi робот з відеотрансляцій в реальному часі, виявленням перешкод

Цей проект був розроблений в кілька етапів:

Створення Wi-Fi мережі:
- Хак роутера (додавання послідовного порту).
- Оновлення прошивки.
- Тестування доданого послідовного порту.
- Розробка сервера машинки (написання і установка в роутер).
- Розробка графічного інтерфейсу користувача (GUI).

Виявлення перешкод:
- Ультразвуковий метод.
- ІК-метод.

Wi-Fi з'єднання

Для Wi-Fi мережі ми використовували Linksys WRT54GL v1.1. Цей роутер працює як сервер і взаємодіє з керуючим ноутбуком. Причиною використання даного роутера є те, що він дуже легкий для хака. Це роутер з відкритим кодом, що дозволяє працювати зі сторонніми виробниками і робити множинні хакі. Ми зробили на роутері послідовний порт, так що він може спілкуватися з мікро контролером, присутнім на машинці.

Wi-fi робот з відеотрансляцій в реальному часі, виявленням перешкод

Як додати послідовний порт до роутера

Нам необхідно додати послідовний порт, тому що роутер буде пов'язаний з мікро контролером і буде спілкуватися з ним по послідовної зв'язку через нього. Мікроконтролер отримує послідовний сигнал від роутера і управляє схемою машини.

Wi-fi робот з відеотрансляцій в реальному часі, виявленням перешкод

Так як пайка в цій модифікації не надто складна, вона підходить для початківців, які хочуть отримати певний досвід. Електронна частина не така й складна, але отриманий результат може бути дуже корисний для управління зовнішньої електронікою або в якості послідовної консолі. У цій модифікації змінюється корпус, що робить її трохи складніше, ніж просту пайку проекту.

Wi-fi робот з відеотрансляцій в реальному часі, виявленням перешкод

розбирання:
Видаліть гарантійну наклейку! Отвинтите дві Wi-Fi антени. Передня синя лицьова панель є окремою частиною корпусу і тримається на засувках. Для того, щоб відокремити її, необхідно докласти певних зусиль. Помістіть пальці на засувки синій панелі, і утримуючи чорний корпус, натисніть на панель, щоб розділити їх.
Після того, як корпус видалений, відкрутіть гвинти, що кріплять плату до пластикового дну, щоб звільнити її.

Пайкараз'ема JP2:
Знайдіть роз'єм JP2 на платі роутера. Його терморегулятори:

Зміни в схемотехніці:
У роутере використовуються 3.3В / GND як послідовних рівнів сигналу. Нам потрібно використовувати конвертер рівнів сигналу, який перетворює 3.3В / GND в +/- 12В, стандартне для послідовної зв'язку RS232 напруга. Технічно, в цьому проекті правильно використовувати мікросхему MAX3232, але я використав мікросхеми MAX232 і MAX233 і вони прекрасно працюють. Ви можете використовувати будь-яку з цих 3 мікросхем. MAX233 хороший тим, що не вимагає зовнішніх конденсаторів.

Wi-fi робот з відеотрансляцій в реальному часі, виявленням перешкод

Wi-fi робот з відеотрансляцій в реальному часі, виявленням перешкод

Wi-fi робот з відеотрансляцій в реальному часі, виявленням перешкод

Wi-fi робот з відеотрансляцій в реальному часі, виявленням перешкод

Прошивка для даного хака

В описаному тут процесі будуть перевірятися послідовні порти використовуючи X-WRT, дистрибутив Лінукс для WRT54GL, що має хороший веб-інтерфейс. Що б знати, як встановити прошивку на роутер дивіться розділ 'Оновлення прошивки' нижче. Ці порти повинні нормально працювати і на інших дистрибутивах.

ТестірованіеTTYS / 0 (Консольний порт / мама DB9):
1. Підключайте серійний кабель з роз'ємом "мама" DB9 до комп'ютера. Зазвичай такий кабель в магазинах називають крос-кабель.
2. Створіть зв'язок в HyperTerminal з використанням показаних параметрів (115200,8 N1)
3. Перезавантажте роутер.
4. Ви повинні побачити купу повідомлень ядра. Натисніть Enter на терміналі, і ви побачите екран, показаний нижче.

Wi-fi робот з відеотрансляцій в реальному часі, виявленням перешкод

ТестірованіеTTYS / 1 (Порт, який ми будемо використовувати / тато DB9):
1. Підключіть нуль-модемний кабель між TTS / 1 роз'єм DB9 і ПК.
2. Створіть зв'язок в HyperTerminal з використанням показаних параметрів (9600,8 N1).
3. Підключіться по SSH до роутера (ім'я користувача "root", пароль той, який ви поставили раніше.) PUTTY хороша програма для SSH підключення в Windows.
4. Введіть команду: echo "hello world"> / dev / tts / 1
5. Якщо ви бачите "hello world" в послідовної консолі HyperTerminal, це означає, що хак прекрасно працює. Подивіться на ці фотографії для допомоги.

Wi-fi робот з відеотрансляцій в реальному часі, виявленням перешкод

Схема з мікро контролером

У цьому проекті використовується мікроконтролер PIC16F628A. Це легкодоступний, простий у використанні і дешевий мікроконтролер. Мікроконтролер пов'язаний з роутером, і коли роутер отримує керуючий сигнал, він передає його на МК, який потім обробляє його. Мікроконтролер порівнює отримане значення з вже записаними в ньому значеннями і виконує відповідну дію. Наприклад, якщо він отримує значення 8, він дає '1' на контакт, який відповідає за рух робота вперед.

Wi-fi робот з відеотрансляцій в реальному часі, виявленням перешкод

Для тестування, 3.3В йдуть від роутера, були перетворені в 12В і тепер цей сигнал не можна безпосередньо подавати на мікроконтролер, необхідно перетворити його назад, для чого знову використовується max232 і роз'єм "тато" DB9, як показано на схемі вище.

Мікросхема приймача машинки

Комп'ютер підключається до роутера, роутер підключається до мікроконтролера, а мікроконтролер підключається до мікросхеми приймача машинки і дає на неї команди. Розберіть машинку і знайдіть мікросхему приймача. Зазвичай для цього використовується мікросхема Realtek. Знайдіть в інтернеті документацію на свою мікросхему і знайдіть на ній висновки ВПЕРЕД НАЗАД ВПРАВО вліво. Ось цоколевка мікросхеми з моєї машинки:

Wi-fi робот з відеотрансляцій в реальному часі, виявленням перешкод

Підключіть чотири контакту (вперед, назад, вправо, вліво) мікроконтролера до відповідних висновків цієї мікросхеми.

оновлення прошивки

Linksys дозволяє оновити прошивку і встановити неоригінальну прошивку, що дає нам додаткові можливості, але після установки неоригінальною прошивки втрачається гарантія. Ми використовували графічне розширення X-WRT для OPENWRT white Russian v0.9. Для установки цієї прошивки зайдіть на цю сторінку. Ви можете завантажити файл образу X-WRT звідси.

Чому використовується неоригінальна прошивка? Відповіддю на це питання є те, що тільки неоригінальна прошивка дозволяє встановити потрібний код в пам'ять роутера, і, таким чином зробити його придатним для наших цілей. По-друге, для використання послідовного порту було необхідно внести деякі зміни в завантажувальний файл, який використовується роутером, для чого був використаний openwrt-xwrt.

Створення сервера машинки

Для роботи машинки нам знадобиться наступне ПО: VB6 Клієнт WiFi робота (працює на Windows), сервер машинки, який працює на роутері під управлінням X-WRT і прошивка мікроконтролера.

Установка сервера машинки в роутер:
Для початку, роутер повинен бути підключений для виконання цієї операції, тому в першу чергу підключіться до інтернету.

Підключіться по SSH до роутера за допомогою PUTTY: (Не пишіть хеш #)
# Cd / tmp
# Wget www.jbprojects.net/projects/wifirobot/carserver_1_mipsel.ipk
# Ipkg install ./carserver_1_mipsel.ipk

Розробка інтерфейсу для ПК

Комп'ютерний інтерфейс виконаний в Visual Basic 6.0. Він використовує TCP / IP зв'язок для передачі керуючих сигналів роутера. Я використав не UDP, тому що в ньому немає контролю потоку даних, а також тому, що TCP є стандартним протоколом для Wi-Fi. Додані додаткові функції послідовної зв'язку для того, щоб контролювати рух камери.

Клієнт також надає опцію обертання камери, про що буде написано у відповідному розділі.

виявлення перешкод

Ми реалізували два різних методу, ультразвукової та інфрачервоний. Обидва методи мають свої плюси і мінуси.

Ультразвуковий метод виявлення перешкод:
Ультразвукові датчики працюють за принципом схожим на радар або сонар, який виявляє мету, інтерпретуючи відлуння від радіо або звукових хвиль. Ультразвукові датчики генерують високочастотні звукові хвилі і оцінюють відлуння, отримане завдяки датчикам. Датчики обчислюють інтервал часу між відправленням і отриманням відповіді для визначення відстані до об'єкта.

Wi-fi робот з відеотрансляцій в реальному часі, виявленням перешкод

Розроблений нами детектор перешкод працює на частоті 40кГц. Він використовує два спеціально виготовлених ультразвукових датчика: один датчик випромінює звук 40кГц, а інший приймає звук 40кГц і перетворює його в змінюється електричний струм з тією ж частотою.

Два tx rx ультразвукових динаміка схожих на ці з частотою 40кГц, доступні в магазині.

Wi-fi робот з відеотрансляцій в реальному часі, виявленням перешкод

Ось схема для об'єднання модуля виявлення перешкод з роботом. Ця схема перериває прямий сигнал, коли помічає перешкоду.

Wi-fi робот з відеотрансляцій в реальному часі, виявленням перешкод

Інфрачервоний метод виявлення перешкод:
Приймач складається з інтегрального таймера 555 працюючого в якості генератора з частотою близько 38 кГц (також працює на частоті від 36кГц до 40кГц), яка повинна бути відрегульована за допомогою змінного резистора 10кОм. Як приймач використовується ІК-модуль sharp. Коли ІК-промінь від передавача падає на ІЧ-модуль, на виході з'являється напруга, реле замикається, а коли промінь потрапляє на перешкоду, воно розмикається.

Контакти реле можуть бути використані для подачі микроконтроллеру переривання, включення освітлення і т.д. Змінний резистор 10кОм повинен підлаштовуватися, поки ІЧ-приймач не побачить ІК-промінь. Коли перед ними нічого немає, ІК-промінь не відбивається на ІЧ-модуль, і схема не спрацьовує. Однак коли робот наближається до об'єкту, промінь відбивається і потрапляє на ІЧ-модуль, і схема спрацьовує.

Світлодіоди слід направляти в тому ж напрямку, що і ІК-модуль і розміщувати на тому ж рівні.
Світлодіоди повинні бути належним чином покриті відображає матеріалом, таким як скло або алюмінієва фольга, щоб уникнути поширення ІК-променя і отримати чітко сфокусований пучок.

Wi-fi робот з відеотрансляцій в реальному часі, виявленням перешкод

обертання камери

Поворот камери - це теж функціональна можливість цього проекту, як і виявлення перешкод і реакція на світло. Ви можете просто купити рухливу IP-камеру, щоб мати таку можливість, але вони трохи дорожче, тому я придумав, як використовувати радіо передавач і приймач для передачі і прийому сигналів обертання і давати ці сигнали мотору, на якому закріплена камера.
Ось блок-схема, на якій показано, що необхідно робити для обертання камери:

Wi-fi робот з відеотрансляцій в реальному часі, виявленням перешкод

Передавач і приймач можна отримати з будь-якої маленької іграшкової машинки. Передавач від її пульта, а приймач і схему управління двигунами з самої машинки.

Вам знадобиться мікроконтролер, я використовував Atmel 89C51, з прошивкою. Підключіть мікроконтролер до COM порту комп'ютера, для чого знадобиться використовувати конвертер рівнів сигналу MAX232, як ми робили це раніше з PIC16F628A.
Клієнт машинки має всі елементи управління для послідовної зв'язку з мікро контролером. Тепер підключіть 2 виходи мікроконтролера до 2 контактам на платі з пульта від іграшкової машинки. Паяйте до тих контактам, які замикаються, коли ви натискаєте кнопки. Розкрутіть пульт, і ви зрозумієте, про що я говорю.

Передавальна частина готова, і ви можете послідовно посилати сигнали з COM-порту комп'ютера в мікроконтролер, який передає їх передавальної схемою, яка потім передає бездротовий сигнал.

Тепер приймач повинен бути розміщений на роботі, і коли він отримує сигнал, який необхідно подати двигуну, використовується Н-мостова схема, що дозволяє обертати двигун в обох напрямках, також мотор вимагає потужного харчування, а бруківка схема дозволяє використовувати великі батареї. Я рекомендую використовувати тут той-же акумулятор, що вже використовується для роутера.

Схема Н-моста

-ve і + ve контакти акумулятора 12В.
Два блоку - реле 6В.
Електропривод - Двигун постійного струму.
COM провід повинен бути підключений до GND схеми приймача і іграшкової машинки.
Приєднайте два дроти (які раніше приєднувалися до моторів машинки) від схеми до двох котушками.
Встановіть камеру на цей двигун. Варто відзначити, що шнур камери повинен бути досить довгим, так як вона повертається. Тепер ваш H-міст працює!

Wi-fi робот з відеотрансляцій в реальному часі, виявленням перешкод

Харчування є важливим моментом, так як роутер і камера споживають багато енергії, тому необхідно було зробити надійний і заряджається джерела живлення, так що робот може безпровідно управлятися протягом тривалого часу.
Нижче наведені джерела живлення, які використовуються в цьому проекті.

Можливі вдосконалення в майбутньому

Існують різні удосконалення, які можна додати в цей проект в майбутньому. Вони не тільки збільшують його функціонал, але і розширюють сферу його застосування.

металошукач:
Металошукач може бути доданий роботу, так як з ним робот більше підходить для військових цілей, забезпечення безпеки і розвідки.

Точка доступу:
З використанням точки доступу робоча відстань цього робота може бути збільшено до будь-якого бажаного, це буде дуже добре при використанні робота в дослідницьких цілях.

Автоматичне повернення:
Це ще одна можливість, яку можна додати до цього роботу, зробивши його роботу ще більш гнучкою і дозволяє знизити ризик втрати управління в складних місцях, і не доведеться в ручну повертати робота до себе, він зробить це автоматично по старому шляху.

Датчик температури:
Датчики температури також можуть бути додані для вимірювання температури в важкодоступних місцях. Це залежить від застосування робота.

Результати та висновки

WiFi мережу є найбільш оптимальним і гнучким варіантом для використання в якості каналу зв'язку управління роботом в порівнянні з радіозв'язком, так як при використанні WiFi можна збільшити робочу відстань робота за рахунок використання точки доступу і, по-друге, його можна інтегрувати і з інтернетом за допомогою веб-консолі.

Максимальна швидкість:
Ми провели тест швидкості між двома певними точками і засікли час, витрачений роботом, щоб покрити цю відстань було розраховано. Відстань була 5м метрів і роботу треба було 0.8с.
Швидкість = відстань / час
Швидкість = 3м / 0.9с = 3,3м / с або 12 км / год

Робоча відстань:
Ми протестували цього робота у відкритому полі для оцінки максимального робочого відстані. воно дорівнює

200м, після цього відстані зв'язок з роботом втрачається і команди не можна відправляти