Роботи, контролирани от Интернет. Роботът може да се управлява по различни начини. Процес на изграждане на робот

Управлението на робот е предизвикателна задача. Дефиницията, която избрахме, изисква устройството да е наясно със своята среда. След това вземете решение и предприемете подходящи действия. Роботите могат да бъдат автономни или полуавтономни.

  1. Автономен робот работи по зададен алгоритъм въз основа на данни, получени от сензори.
  2. Полуавтономен робот има задачи, които се контролират от човек. И освен това има други задачи, които изпълнява сам...

Полуавтономни роботи

Добър пример за полуавтономен робот е сложен подводен робот. Човекът контролира основните движения на робота. И по това време вграденият процесор измерва и реагира на подводните течения. Това ви позволява да поддържате робота в същата позиция, без да се отклонява. Камера на борда на робота изпраща видеото обратно на човека. Освен това вградените сензори могат да следят температурата на водата, налягането и др.

Ако роботът загуби контакт с повърхността, тогава автономната програма се включва и издига подводния робот на повърхността. За да можете да управлявате вашия робот, ще трябва да определите нивото му на автономност. Може би искате роботът да се управлява по кабел, да е безжичен или напълно автономен.

Управление на кабели

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

В тази ситуация двигателите и захранването могат да бъдат свързани директно към превключвателя. Следователно въртенето му напред/назад може да се контролира. Използва се често в превозни средства.

Те нямат интелект и се считат за „машини с дистанционно управление“, а не за „роботи“.


  • Основните предимства на тази връзка са, че роботът не е ограничен от времето на работа. Тъй като може да бъде свързан директно към мрежата. Няма нужда да се притеснявате за загуба на сигнал. Роботът, като правило, има минимум електроника и не е много сложен. Самият робот може да бъде лек или да има допълнителен полезен товар. Роботът може да бъде физически изваден с връзка, прикрепена към кабела, ако нещо се обърка. Това важи особено за подводните роботи.
  • Основните недостатъци са, че кабелът може да се оплете, да се закачи за нещо или да се счупи. Разстоянието, на което роботът може да бъде изпратен, е ограничено от дължината на въжето. Плъзгането на дълга връзка добавя триене и може да забави или дори да спре движението на робота.

Управление на робота чрез кабел и вграден микроконтролер

Следващата стъпка е да инсталирате микроконтролера на робота, но продължете да използвате кабела. Свързването на микроконтролера към един от I/O портовете на вашия компютър (като USB порт) ви позволява да контролирате действията си. Управлението се извършва с помощта на клавиатура, джойстик или др периферно устройство. Добавянето на микроконтролер към проект може също да изисква от вас да програмирате робота с входни сигнали.


  • Основните предимства са същите като при директното управление с кабел. По-сложно поведение на робота и реакции към отделни бутони или команди могат да бъдат програмирани. Има голям избор от контролери за управление (мишка, клавиатура, джойстик и др.). Добавеният микроконтролер има вградени алгоритми. Това означава, че може да взаимодейства със сензори и да взема определени решения самостоятелно.
  • Недостатъците включват по-висока цена поради наличието на допълнителна електроника. Останалите недостатъци са същите като при директното управление на робота по кабел.

Ethernet управление

използвани конектор Ethernet RJ45. За управление е необходима Ethernet връзка. Роботът е физически свързан към рутера. Поради това може да се контролира чрез интернет. Също така е възможно (макар и не много практично) за мобилни роботи.

Настройването на робот, който може да комуникира през интернет, може да бъде доста трудно. На първо място, за предпочитане е WiFi (безжичен интернет). Кабелна и безжична комбинация също е опция, когато има трансивър (предава и приема). Трансивърът е физически свързан към интернет и след това данните, получени през интернет, се предават безжичноробот.


  • Предимството е, че роботът може да се управлява през интернет от всяка точка на света. Роботът няма ограничение във времето, тъй като може да използва захранване през Ethernet. PoE. Това е технология, която позволява на дистанционно устройство да предава електрическа енергия заедно с данни чрез стандарт усукана двойкаНа Ethernet мрежи. Използването на интернет протокол (IP) може да опрости и подобри комуникационната схема. Предимствата са същите като при директното кабелно компютърно управление.
  • Недостатъкът е по-сложното програмиране и същите недостатъци като при кабелното управление.

IR дистанционно управление

Инфрачервените предаватели и приемници премахват кабела, свързващ робота с оператора. Това обикновено се използва от начинаещи. Инфрачервеният контрол изисква "линия на видимост", за да функционира. Приемникът трябва да може да "види" предавателя по всяко време, за да получи данни.

Инфрачервени дистанционни дистанционно(като универсални дистанционнидистанционно управление, за телевизори) се използват за изпращане на команди към инфрачервен приемник, свързан към микроконтролера. След това интерпретира тези сигнали и контролира действията на робота.


  • Предимството е ниската цена. За управление на робота могат да се използват прости дистанционни управления на телевизора.
  • Недостатъците са, че изисква пряка видимост за управление.

радио управление

Радиочестотното управление изисква предавател и приемник с малки микроконтролери за изпращане, получаване и интерпретиране на радиочестотни (RF) данни. Кутията на приемника съдържа печатна електронна платка(печатна платка), която съдържа приемника и малък контролер на серво мотор. Радио комуникацията изисква предавател, съгласуван/сдвоен с приемника. Възможно е да се използва трансивър, който може да изпраща и получава данни между две физически различни комуникационни системни среди.

Радио управлението не изисква пряка видимост и може да се извършва на големи разстояния. Стандартните RF устройства могат да предават данни между устройства на разстояния до няколко километра. Докато по-професионалните RF устройства могат да осигурят управление на робота на почти всяко разстояние.


Много дизайнери на роботи предпочитат да създават полуавтономни радиоуправляеми роботи. Това позволява на робота да бъде възможно най-автономен и да предоставя обратна връзка на потребителя. И може да даде на потребителя известен контрол върху някои от неговите функции, ако е необходимо.

  • Предимствата са възможността за управление на робота на значителни разстояния, той може лесно да се конфигурира. Комуникацията е всепосочна, но може да не премине напълно блокирана от стени или препятствия.
  • Недостатъците са много ниска скоростпрехвърляне на данни (само прости команди). Освен това трябва да обърнете внимание на честотите.

Bluetooth управление

Bluetooth е радиосигнал (RF) и се предава по определени протоколи за изпращане и получаване на данни. Нормалният обхват на Bluetooth често е ограничен до около 10 м. Въпреки че има предимството да позволява на потребителите да контролират своя робот чрез устройства с Bluetooth. Това са предимно мобилни телефони, PDA устройства и лаптопи (въпреки че може да е необходимо персонализирано програмиране за създаване на интерфейса). Точно като радиоуправление, Bluetooth предлага двупосочна комуникация.


  • Предимства: Управлява се от всяко устройство с Bluetooth. Но като правило е необходимо допълнително програмиране. Това са смартфони, лаптопи и др. По-високите скорости на данни могат да бъдат многопосочни. Поради това не е необходима пряка видимост и сигналът може малко да преминава през стени.
  • недостатъци. Трябва да се работи по двойки. Разстоянието обикновено е около 10 м (без препятствия).

WiFi контрол

WiFi контролът често е допълнителна екстра за роботите. Възможност за управление на робот безжична мрежапрез Интернет представя някои значителни предимства (и някои недостатъци) пред безжичното управление. За да настроите Wi-Fi управление на робота, имате нужда от безжичен рутер, свързан с интернет, и WiFi устройство на самия робот. За робота можете да използвате устройство, което поддържа TCP / IP протокола.


  • Предимството е възможността за управление на робота от всяка точка на света. За да направите това, той трябва да е в обхвата на безжичния рутер. Възможен висока скоростпредаване на данни.
  • Недостатъците са, че е необходимо програмиране. Максималното разстояние обикновено се определя от избора на безжичен рутер.

Контрол на мобилен телефон

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


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

Следващата стъпка е да използвате напълно микроконтролера във вашия робот. И на първо място, програмиране на неговия алгоритъм за въвеждане на данни от неговите сензори. Автономният контрол може да се упражнява в различни форми:

  1. да бъдат предварително програмирани без обратна връзка от околната среда
  2. с ограничена обратна връзка от сензори
  3. със сложна сензорна обратна връзка

Истинското автономно управление включва много сензори и алгоритми. Те позволяват на робота самостоятелно да определи най-доброто действие във всяка дадена ситуация. Повечето комплексни методиКонтролите, които в момента се прилагат на автономните роботи, са визуални и слухови команди. За визуален контрол роботът гледа към човек или обект, за да получи неговите команди.


Контролирането на робот да завие наляво чрез разчитане на сочеща наляво стрелка от лист хартия е много по-трудно, отколкото може да си представите. Сервизна команда като "завий наляво" също изисква доста програмиране. Програмирането на много сложни команди като „Донеси ми чехлите“ вече не е фантазия. Въпреки че изисква много високо ниво на програмиране и много време.

  • Предимствата са „истинска" роботика. Задачите могат да бъдат толкова прости, колкото мигане на светлина въз основа на показания от един сензор до приземяване на космически кораб на далечна планета.
  • Недостатъците зависят само от програмиста. Ако роботът прави нещо, което не искате да прави, тогава имате само една възможност. Това е, за да проверите кода си, да го промените и да качите промените в робота.

Практическа част

Целта на нашия проект е да създадем автономна платформа, способна да взема решения въз основа на външни сигналиот сензори. Ще използваме микроконтролер Lego EV3. Това ни позволява да го направим като напълно автономна платформа. Толкова полуавтономен, управляван чрез Bluetooth или чрез инфрачервено дистанционно управление.


Програмируема тухла LEGO EV3

Подобен материал:

  • План: 1-Какво е Интернет (концепция) 2-Методи за свързване към Интернет, 81.69kb.
  • Измама чрез "Интернет", 11.94kb.
  • Структура и основни принципи на Интернет, 187.31kb.
  • Предпроектно проучване, 609.73kb.
  • Използване на грид технологии, 81.79kb.
  • Глобална информационна мрежа Интернет, 928.45kb.
  • Основен план Брой часове по план, общо В т.ч., 45.76kb.
  • "sbis++ Електронно отчитане" в електронен вид през Интернет, 80.99kb.
  • , 243.98kb.
  • Интернет мрежа. www услуга, 240.73kb.
СИМУЛАЦИЯ И ДИСТАНЦИОННО УПРАВЛЕНИЕ НА РОБОТИ

ЧРЕЗ ИНТЕРНЕТ

ст.н.с I.R. Белоусов

1/2 година, 2-5 курсови и специализанти

Изучаване на съвременни методи за моделиране и управление на роботи. Разглеждат се алгоритми за взаимодействие на роботи със сложни динамични обекти с помощта на визуална система в управляващия контур. Изучават се методи за дистанционно управление на роботи през интернет. Представена е архитектурата на разпределени системи за управление, разгледани са методи за пренос на информация, графично моделиране, дистанционно програмиране на роботи, използващи отворени технологии Java и Java3D.

Въведение.

Постановка на задачите, разглеждани в курса. Демонстрация на експериментални резултати.

Управление на роботи в задачи за взаимодействие с движещи се обекти.

1. Поставяне на цели. Примери.

Преглед на задачите и методите за взаимодействие между роботи и движещи се обекти. Използване на визуална система и модели на динамиката на обекта. Изложение на проблема за улавяне на прът на бифилярно окачване от робот. Постановка на проблема за взаимодействието на робота със сферични махала.

2. Използване на системи за зрение.

Алгоритми за обработка на видео. Определяне на позициите на пръта и махалата с помощта на кинематичната прогноза. Обработка на резултатите от измерванията.

3. Математическо моделиране и експериментално разработване на алгоритми.

Уравнения на вибрациите на прът върху бифилярно окачване. Алгоритми за улавяне на прът от роботизиран манипулатор. Уравнения на трептенията на сферично махало. Алгоритми за взаимодействие на робота с махала. Архитектура на експерименталния стенд. Обсъждане на резултатите от експериментите.

Дистанционно управление на роботи през интернет.

4. Преглед на съществуващите системи.

Интернет системи за управление на мобилни и манипулационни роботи. Недостатъци на съществуващите системи, проблеми на управлението през Интернет, подходи за решаване.

5. Архитектура на разпределени системи за управление на роботи.

Хардуер и организация на програматасървърни и клиентски части на разпределена система за управление на роботи. Организация на обмена на данни.

6. Дистанционно програмиране през интернет.

Езици за програмиране на роботи. Среда за дистанционно програмиране на роботи през Интернет.

7. Управление на реални системи.

Експерименти за управление на манипулативни и мобилни роботи през Интернет. Използване на среда за управление на виртуален робот. Обсъждане на резултатите от експериментите. Насоки за по-нататъшни изследвания.

Графично моделиране на роботи.

8. Въведение в компютърната графика.

Координатни системи, тримерни трансформации. Най-простите алгоритми.

9. Моделиране на геометрични обекти в Java3D.

Въведение в Java3D. Характеристики на графичното програмиране в Java3D. Основни понятия. Визуализация на най-простите геометрични обекти в Java3D. Осветление, текстури, управление на обекти, динамична реконфигурация на сцена.

10. Описание на кинематиката на роботите.

Методи за описание на кинематиката на манипулаторите. Преки и обратни задачи на кинематиката. Метод за последователно формиране на координатни системи. Примери.

11. Графично моделиране на роботи и работно пространство.

Комбинация от обекти. Геометрични трансформации. Визуализация на роботи, сложни геометрични и движещи се обекти.

1

Пожидаев И.В.

Възможността за управление на мобилен робот чрез радиоканал значително ще разшири обхвата на неговото приложение. За да се реши този проблем, на мобилен робот беше инсталиран преносим компютър и към него беше свързан мобилен телефон с GPRS модем. Достъпът до интернет се осъществява чрез GPRS модем. Чрез интернет, с помощта на друг компютър, се осъществяваше управление и наблюдение на системите на робота. Възможно е да се управляват двигателите на робота, да се получава информация от сензори, а също така да се получава информация от видеокамера в посоката на движение на мобилния робот "Ирис-1". По този начин беше възможно да се постигне дистанционно управление на мобилен робот през интернет, използвайки радиоканала на мобилен телефон с GPRS модем в него. И като следствие от това разстоянието, на което можете да управлявате мобилен робот, значително се увеличи. Освен това обхватът на приложение на робота се разшири по отношение на труднодостъпни места на сушата.

Мобилните роботи се използват широко в различни индустрии и домакинства. Те са незаменими: при отстраняване на аварии в атомни електроцентрали, при търсене и откриване на взривни вещества, при диагностика на неизправности в комуникациите и тяхното отстраняване. Широкото използване на мобилни роботи се наблюдава при изследване на морското дъно на големи дълбочини. В авиацията безпилотните роботи се използват за извършване на разузнавателна дейност и унищожаване на противника. Мобилните роботи се използват в процеса на изследване на други планети в Слънчевата система. Напоследък роботиката в областта на мобилните роботи се развива с бързи темпове. Пазарът на продажби на мобилни роботи беше 655 милиона долара през 2000 г. и ще достигне 17 милиарда долара през 2005 г.

Възникна проблем, свързан с по-динамичното използване на мобилен робот за проверка на комуникации и подземни обекти, както изкуствени, така и естествени. Това се дължи на факта, че роботът се управлява чрез кабел, свързан с дистанционното управление, което ограничава движението му.

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

За да се реши този проблем, на мобилен робот беше инсталиран преносим компютър и към него беше свързан мобилен телефон с GPRS модем. Достъпът до интернет се осъществява чрез GPRS модем. Чрез интернет, с помощта на друг компютър, се осъществяваше управление и наблюдение на системите на робота.

AT този експериментИзползвани са два вида телефонни апарати с различни интерфейси. Тези телефони се различават един от друг по това, че едно устройство е свързано към компютъра чрез кабел, опънат от USB порти компютър към порт за мобилен телефон, вижте блок-схема #1. И друг вид мобилен телефон се превключва чрез кабел от com порта преносим компютъркъм мобилен телефон, вижте блок-схема #2.

Роботът "Ирис-1", свързан към компютър, се управляваше чрез софтуер за работа Microsoft система Windows. Самият робот беше свързан към компютъра чрез платките в компютъра и кабела от тях. AT операционна системаинсталиран на компютъра включва стандартен компонент - Internet Explorer, интернет навигатор. Интернет навигаторите се предлагат от различни производители. Има два комплекта софтуер на два компютъра. Един за робот, свързан към компютър, състоящ се от: Microsoft Windows NT 4.0 и софтуер за "Iris-1" като основен компонент "LABVIEW 6.0" за управление на робота. Втори компютър с различен набор от софтуер има достъп до глобалното компютърна мрежаИнтернет чрез стандартен компонент на Microsoft Windows - Internet Explorer, но ние използвахме Netscape Navigator, както и компютър, към който е свързан робот, който се управлява дистанционно, виж блок-схема № 3.

Компютър, който е свързан към интернет, има софтуерза превключване на телефон с компютър и софтуер за GPRS модем за специфичен моделмобилен телефон. Мобилните телефони работят в честотен диапазон от 900 MHz до 1800 MHz. Не всички модели мобилни телефони имат GPRS функция.

Телефоните с GPRS класове 8 и 10 се различават по броя на каналите за предаване и получаване на данни. За клас GPRS 8 - три канала за приемане по 14.4 Kbps всеки и два за предаване. За телефон с GPRS тип 10 имаме 4 канала за приемане и два за предаване. Моделите телефони също имат характеристики тип A и B, тоест поддържат GPRS модем и разговор или само GPRS модем.

По време на експеримента беше установено стабилно управление на отдалечения робот през мобилен телефон, с изключение на случаите на екраниране на радиосигнала (нестабилно приемане между базата и мобилния телефон или липсата му - пълно екраниране) от мобилния телефон или нарушения в самата кабелна интернет мрежа.

При използване на радиоканал от мобилен телефон беше запазена възможността за дистанционно управление на всички системи на роботизирания комплекс Iris-1, както и контрол върху тяхната работа. Получаваме видео изображения в посока на робота в черно и бяло. Двигателите на робота могат да работят редуващо се, което при наличието на гъсеници ще му позволи да се върти в едната или другата посока. Ако двигателите работят едновременно с една и съща скорост на въртене, съвпадащи по посока, тогава роботът се движи право напред или в обратна посока. Имаше информация за наличието на препятствие в посоката на робота (напред) с помощта на ултразвуков сензор. Ултразвуковият сензор се състои от две части: приемник, който изпраща сигнал пред робота към възможно препятствие и предавател, който приема отразения сигнал от възможен обект пред робота. Наличието на обект пред робота беше визуално наблюдавано на графиката от оператор на много километри от RTC "Iris-1". По същия начин картината на наличието на препятствие над робота се виждаше с помощта на микровълнов сензор. Параметрите от фотоимпулсни сензори, предавани по интернет чрез радиоканал от мобилен телефон, направиха възможно изграждането на параметричен триизмерен модел в движение със закъснение във времето с помощта на пакета T-FLEX CAD 3D версия 6.0 и по-нова.

Блокова схема № 1, връзка на мобилен телефон през USB порта на компютъра.

Блокова схема № 2, връзка с мобилен телефон през com порт на PC.

Блок-схема № 3, управление на мобилен робот "Ирис - 1".

Списъкът с компоненти за управление на мобилния робот "Iris-1" на голямо разстояние.

  1. Компютър с мобилен телефон, свързан към него чрез com или usb порт.
  2. Радио канал с GPRS модем в устройството
  3. Базова станция за ретранслатор на клетъчна компания
  4. Представител на глобални компютърни мрежови (Интернет) услуги - доставчик.
  5. Друг компютър, свързан с него чрез платка в него и кабел от него към мобилен робот.
  6. Наличие на достъп до глобалната компютърна мрежа от компютър с робот през радиоканала на мобилен телефон.
  7. Наличието на стабилна връзка на кабелните и радиоканалите на компютърната мрежа (интернет).

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

По този начин беше възможно да се постигне дистанционно управление на мобилен робот през интернет, използвайки радиоканала на мобилен телефон с GPRS модем в него. И като следствие от това разстоянието, на което можете да управлявате мобилен робот, значително се увеличи. Освен това обхватът на приложение на робота се разшири по отношение на труднодостъпни места на сушата.

БИБЛИОГРАФИЯ

  1. Nof. Ш. Наръчник по индустриална роботика. - 1989. - Т.1. - М.: Машиностроене. - 480 c.
  2. Nof. Ш. Наръчник по индустриална роботика. - 1990. - Т.2. - М.: Машиностроене. 480 c.
  3. уф К. Гонзалес, Р. Лий К. Роботика. - 1989. - М.: Мир. - 624s.
  4. Кулешов В. С. Лакота Н. А. Адрюнин В. В. Дистанционно управлявани роботи и манипулатори. - 1986. - М.: Машиностроене. - 328c.
  5. Жарков Ф. П. Каратаев В. В. Никифоров В. Ф. Панов В. Ц. Използване на виртуални инструменти LabVIEW. - 1999. - М.: Солон-Р. - 268c.
  6. Подураев Ю. В. Основи на мехатрониката. - 2000. - М.: MSTU "STANKIN". - 80c.
  7. Максимов Н. В. Партика Т. Л. Попов И. И. Компютърна архитектура и изчислителни системи. - 2005. - М.: Форум-Инфра-М. - 512s.

Библиографска връзка

Пожидаев И.В. УПРАВЛЕНИЕ НА МОБИЛНИЯ РОБОТ "ИРИС-1" ЧРЕЗ РАДИОКАНАЛ С ИЗПОЛЗВАНЕ НА МОБИЛЕН ТЕЛЕФОН // Фундаментални изследвания. - 2005. - № 7. - С. 14-16;
URL: http://fundamental-research.ru/ru/article/view?id=6320 (Достъп на 25.08.2019 г.). Предлагаме на Вашето внимание списанията, издавани от издателство "Естествонаучна академия"

Мрежата има огромен брой инструкции за сглобяване на различни модели роботи. Нека се опитаме да изградим наш собствен модел домашен wifiробот, използващ информация от форума Cyber-place, детайли частично от онлайн магазина. Изгодно е да поръчате много резервни части директно от Китай (Ebay, Aliexpress). Това значително ще намали бюджета.
Очертано е неговото виждане за теорията и дизайна на съвременните роботи.

Функционален изглед на робота

  1. Придвижване по повърхността според командите на оператора,
  2. Излъчване на видео с широк зрителен ъгъл.

Контролен блок

Универсален контролер Carduino Nano V7

Микроконтролер: ATmega328
Входно напрежение: 5V до 30V
Тактова честота: 16 MHz
Флаш памет: 32 KB
RAM (SRAM): 2 KB

Дънна платка на робот CyberBot

Платката е предназначена за свързване към нея различни Arduino устройстваили аналогови устройства чрез стандартни интерфейси.

Модул за управление на двигателя - моторен щит

Може да свързва и управлява два двигателя постоянен токили 4 стъпкови двигателя. Съдържа HG7881 двуканален драйвер за мотор.
Мощност: 2.5V до 12V
Консумация на ток на канал:: до 800 mA

мотор-редуктори

Мотор редуктор с предавателно отношение 1:48
Диапазон на напрежение от 3V до 6V.
Скорост на въртене на колелото 48 м/мин.
Ток на празен ход (6v): 120mA
Ниво на шум:<65dB

Комуникационен модул

Безжичен WiFi рутер TP-Link 3020MR

Този модел е идеален за инсталиране на фърмуер на трети страни. За управление на нашия робот е избран. Фърмуерът е базиран на OpenWRT фърмуер версия r37816.
Рутерът се управлява от всеки уеб браузър чрез уеб интерфейса. Управление чрез telnet, SSH също е налично. Функционалността се разширява чрез инсталиране на добавки от каталога. Свободна памет за приложения 1.2Mb.

Уеб камера Logitech E3500

Камера с възможност за корекция на изображението.

USB хъб

Блок за свързване на USB устройства едно към друго: arduino, рутер, уеб камера.

Помощни елементи

Платформа

колела

Оборудван с гумени гуми и вал за опционален оптичен енкодерен диск, идеален за преместване на платформата по повърхността.

отделение за батерии

Необходими за поставяне на батерии. За нашата версия на робота са достатъчни 4 батерии с размер АА.

Крепежни елементи, проводници

Помощни инструменти за свързване на отделни елементи.

Процес на изграждане на робот

Подготовка на CyberBot Robot Boardе най-трудно за начинаещи, т.к. включва използването на поялник. Необходимо е запояване:

  1. Блокиращи кондензатори от 0,1 микрофарада и повече
  2. Електролитен кондензатор от 100 микрофарада x 16v и повече
  3. Резистор 150 ома

Резисторите трябва да бъдат инсталирани на базата на един електролит и блокиращ кондензатор за всеки инсталиран модул. В резултат на това трябва да получим следното:

Конекторите ще ви позволят да допълвате микросхемата с допълнителни сензори и да ни спасите от постоянно запояване на части.

Свързваме модула за управление на двигателя - Motor Shield към платката на контролера. Завийте отделението за батерии. За да монтирате двигателите към платформата, ще ви трябват болтове M3x30. Сложихме колела на двигателите.
Прикрепяме останалото към втората част на платформата: уеб камера, рутер, USB хъб. Затягаме проводниците със скоби и внимателно ги полагаме, така че да не пречат на други елементи.

Софтуер

Фърмуер на рутер TP-Link 3020MR

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

При използване на дъската Ардуино Нано CH340G под Windows система, изисква се инсталиране на драйвер CH341SER
Платката трябва да бъде дефинирана в системата като USB2.0 Serial.

Преди да качите скицата, проверете я за грешки. В менюто "СКИЦА"избирам „ПРОВЕРКА/КОМПИЛИРАНЕ“.
Ако има грешки по време на проверката, компилаторът ще посочи ред с неправилен код. Ако не се открият грешки, тогава в менюто "СКИЦА"избирам "ЗАРЕДИ".

Скица за Arduino Nano и Arduino UNO

Скицата изисква библиотеката CyberLib

#включи #define motors_init(D4_Out; D5_Out; D6_Out; D7_Out;) uint8_t inByte; uint8_tspeed=255; void setup() ( motors_init; D11_Out; D11_Low; randomSeed(A6_Read); for(uint8_t i=0; i<12; i++) beep(70, random(100, 2000)); робота UART_Init(57600); wdt_enable (WDTO_500MS); } void loop() { if (UART_ReadByte(inByte)) { switch (inByte) { case "x": robot_stop(); break; case "W": robot_go(); break; case "D": robot_rotation_left(); break; case "A": robot_rotation_right(); break; case "S": robot_back(); break; } if(inByte>47 && inByte<58) speed=(inByte-47)*25+5; } wdt_reset(); } void robot_go() { D4_Low; analogWrite(5, speed); analogWrite(6, speed); D7_Low; } void robot_back() { D4_High; analogWrite(5, 255-speed); analogWrite(6, 255-speed); D7_High; } void robot_stop() { D4_Low; analogWrite(5, 0); analogWrite(6, 0); D7_Low; } void robot_rotation_left() { D4_Low; analogWrite(5, speed); analogWrite(6, 255-speed); D7_High; } void robot_rotation_right() { D4_High; analogWrite(5, 255-speed); analogWrite(6, speed); D7_Low; }

Скица за Arduino Mega

#включи #define motors_init (D4_Out; D5_Out; D6_Out; D7_Out;) #define robot_go (D4_Low; D5_High; D6_High; D7_Low;) #define robot_back (D4_High; D5_Low; D6_Low; D7_High;) #define robot_stop (D4_Low; D_5_Low; D76_Low; D ;) #define robot_rotation_left (D4_Low; D5_High; D6_Low; D7_High;) #define robot_rotation_right (D4_High; D5_Low; D6_High; D7_Low;) uint8_t inByte; void setup() ( motors_init; D11_Out; D11_Low; randomSeed(analogRead(6)); Serial.begin(57600); wdt_enable(WDTO_500MS); ) void loop() ( if (Serial.available()) ( inByte = Serial. read(); switch (inByte) ( case "x": robot_stop; break; case "W": robot_go; break; case "D": robot_rotation_left; break; case "A": robot_rotation_right; break; case "S": robot_back; прекъсване; ) ) wdt_reset(); )
Изходният код е взет от cyber-place.ru

Обслужване

Терминална програма

Модул за работа с конзолата от уеб браузър.

Списък с често използвани команди в CyberWrt

uname-a- версия на ядрото на Linux;
котка /proc/cpuinfo- информация за хардуера
котка /proc/meminfo- разширена информация за заетата RAM памет
безплатно-м— Информация за използваната и свободната RAM памет
ls /dev- показване на всички устройства в системата
документ за самоличност— обобщена информация за текущия потребител (вход, UID, GID);
пс- всички заредени процеси;
дата- изглед на дата/час
dmesg- изтегляне на лог файл
lsmod- Списък на модулите, заредени в ядрото
netstat -rn- таблица за маршрутизиране
netstat -an | grep СЛУШАЙТЕ- списък на всички отворени портове
netstat-tup- Активни интернет връзки

fdisk -lИнформация за всички свързани дискове;
blkid- UUID информация за всички налични дискове в системата;
монтиране /dev/sda1 /mnt- Монтира дяла /dev/sda1 към точката на монтиране /mnt;
монтиране— пълна информация за монтираните устройства;
umount /mnt- Демонтирайте дяла от точката на монтиране /mnt;

ясно- Изчистване на прозореца на терминала; — край на сесията;
passwd— промяна на паролата на текущия потребител;

opkg актуализация- актуализиране на списъка с пакети
opkg надграждане– обновяване на всички инсталирани пакети;
opkg списък-инсталиран- Показва списък с инсталирани пакети.

Проверка на изправността на двигателите в средата за разработка

В менюто "ИНСТРУМЕНТИ"избирам "МОНИТОР ЗА СЕРИЕН ПОРТ". В крайния ред въведете командата за движение:

ехо x > /dev/ttyUSB0

Ако всичко е свързано и конфигурирано правилно, след натискане на бутона "ИЗПРАТИ"двигателите трябва да започнат да се въртят.

Можете да спрете движението с команда:

Ехо W > /dev/ttyUSB0

проблеми

Несъвместимост на микроконтролера Arduino Nano V3 CH340 с рутера TP-LINK TL-MR3020

Решения, намерени във форума:

  • Свързване на резистор 100 ома на щифт RSTи на +5V
  • Намаляване на скоростта на връзката до 9600
  • Премахване на кондензатор или изрязване на писта на Arduino
  • Свързване на микроконтролера към рутера чрез UART интерфейс

Както показа практиката, нито един от горните методи не помогна. Едва след смяната на микроконтролера с Carduino Nano V7 роботът започна да работи през рутера.

Отдавна мечтая да направя Wi-Fi робот, който може да се управлява дистанционно. И най-накрая дойде денят, в който успях да контролирам робота чрез интернет, да виждам и чувам всичко, което се случва около него.
Каня интересуващите се под кат

За създаването на робота са използвани следните компоненти:

Ето как изглежда роботът, който сглобих, без горния капак.

Сега всичко е наред:

Сглобяване на платформата на робота:

Местоположение на компонентите на дънна платка. Инсталирах само Arduino Nano, двигателен драйвер и HC звуков излъчвател:

Рутерът wr703N беше прикрепен към дъното на платформата на робота с двустранна лента:

Уеб камерата се закрепва към мебелния ъгъл, към правилните отвори на платформата, предвидени за сервомотори:

CyberWrt е фърмуер, изграден на базата на OpenWrt и предназначен предимно за роботи, интелигентни домове и други устройства, изградени на базата на популярни модели Tp-Link рутери mr3020 b Wr703n. CyberWrt има максималния възможен обем свободно пространствоза инсталиране на пакети - 1.25Mb. По подразбиране е инсталиран уеб сървър и всички операции могат да се извършват през вградения уеб интерфейс. Веднага след флашването, рутерът е достъпен в мрежата чрез кабел и WiFi като точка за достъп. Чрез уеб интерфейса можете да работите в „ командна линия» - през уеб терминала и в файлов мениджър, където можете да редактирате, качвате, изтривате, създавате, копирате файлове и др.

След флашване на рутера, той е достъпен като WiFi точка за достъп с името "CyberBot", свързваме се с него, отиваме на начална страницарутер. Ето как изглежда уеб интерфейсът веднага след фърмуера.

Инсталирайте модулите FTDI драйвер, видео драйвер и CyberBot-2.

Мигане на контролера Arduino.

Програмният код на робота се оказа доста прост, но е достатъчен за дистанционно управление на робота локална мрежаили интернет.
Кодът е адаптиран за контролери Arduino с ATmega168/328 на борда и използва библиотеката CyberLib.
Тази библиотека помага да се извлече максимума от контролера и да се намали количеството на крайния код.
Кодът използва WDT, за да предотврати замръзване на робота.
Кодът поддържа и управление на камерата по осите X и Y, но нямах свободни серво и не можах да използвам тази функция:

Код за Arduino

#включи #включи Серво myservo1; Серво myservo2; дълъг предишен милис; http://cyber-place.ru/attachment.php?attachmentid=600&d=1389429469 uint8_t LedStep = 0; // Брояч int i; булев светлинен_стат; uint8_t inByte; uint8_tspeed=255; // максимална скорост#define init (D4_Out; D5_Out; D6_Out; D7_Out; D8_Out; D11_Out; D12_Out;) void setup() ( myservo1.attach(9); // Прикачване на серво към порт myservo2.attach(10); // Прикачване на серво към порт init; // Инициализация на портове D11_Low; // Високоговорител ИЗКЛЮЧЕН randomSeed(A6_Read); // Получаване на произволна стойност horn(); // звуково известяване за готовност на робота UART_Init(57600);// Инициализация на порта за комуникация с рутер wdt_enable (WDTO_500MS); ) void loop() ( unsigned long currentMillis = millis(); if (LedStep == 0 && currentMillis - previousMillis > 500)( // 0,5 секунди забавяне. previousMillis = currentMillis; LedStep = 1; ) if (LedStep == 1 && currentMillis - previousMillis > 500)( // Забавяне 0,5 сек. previousMillis = currentMillis; LedStep = 2; ) if (LedStep == 2 && currentMillis - previousMillis > 500)( // Забавяне 0,5 сек. LedStep = 0; ) if (UART_ReadByte(inByte)) //Ако дойде нещо ( switch (inByte) // Вижте каква команда дойде ( case "x": // Os настройка на робота robot_stop(); прекъсване; case "W": // Придвижване напред robot_go(); прекъсване; case "D": // Завъртане наляво robot_rotation_left(); прекъсване; case "A": // Завъртане надясно robot_rotation_right(); прекъсване; case "S": // Преместване назад robot_back(); прекъсване; case "U": // Камерата се издига myservo1.write(i -= 20); прекъсване; case "J": // Камерата се изключва myservo1.write(i += 20); прекъсване; case "H": // Камерата се завърта надясно myservo2.write(i += 20); прекъсване; case "K": // Камерата се върти наляво myservo2.write(i -= 20); прекъсване; случай "B": // Blaster D12_High; прекъсване; case "C": // Klaxon horn(); прекъсване; case "V": // Включване/изключване на светлините if(light_stat) ( D8_Low; light_stat=false; ) else ( D8_High; light_stat=true; ) break; ) if(inByte>47 && inByte<58) speed=(inByte-47)*25+5; //принимаем команду и преобразуем в скорость } wdt_reset(); } void horn() { for(uint8_t i=0; i<12; i++) beep(70, random(100, 2000)); //звуковое оповещение } void robot_go() { D4_Low; analogWrite(5, speed); analogWrite(6, speed); D7_Low; } void robot_back() { D4_High; analogWrite(5, 255-speed); analogWrite(6, 255-speed); D7_High; } void robot_stop() { D4_Low; analogWrite(5, 0); analogWrite(6, 0); D7_Low; } void robot_rotation_left() { D4_Low; analogWrite(5, speed); analogWrite(6, 255-speed); D7_High; } void robot_rotation_right() { D4_High; analogWrite(5, 255-speed); analogWrite(6, speed); D7_Low; }

Всичко е сглобено и зашито, сега включваме робота и го управляваме дистанционно.
На компютър, в допълнение към бутоните на екрана, можете да управлявате и от клавиатурата, бутоните W, A, D, S, X

Публикуване на видео:

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