Русский   English
ДонНТУ   Портал магістрів

Реферат по темі випускної роботи

Зміст

введення

За останніми даними, сьогодні в світі працюють 1,8 мільйонів самих різних роботів – промислових, домашніх, роботів–іграшок. При цьому найбільша кількість роботів використовується в Південній Кореї, друге місце зайняв Сінгапур, третє-Японія, далі США, Китай. А в Росії роботів всього близько 0,25% світового ринку, що вкрай мало[1].

Робототехніка – прикладна наука, що займається розробкою автоматизованих технічних систем.

Робототехніка спирається на такі дисципліни як Електроніка, Механіка, програмування. Виділяють будівельну, промислову, побутову, авіаційну, військову, космічну робототехніку. При створенні робототехніки потрібно керуватися правилами, дружнє ставлення до людини має бути головним у програмуванні роботів[2].

1. Актуальність теми

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

2. Мета і завдання дослідження

Метою роботи є побудова мобільного робота з диференціальним приводом. У роботі буде використаний Мікроконтролер Arduino UNO, а так само мікрокомп'ютер Raspberri Pi 3 B+.

 Мобільний робот з диференціальним приводом

Малюнок 2.1 & mdash; приклад робота з диференціальним приводом

3. Введення в ROS. Загальні відомості

ROS – це програмна платформа, призначення якої-написання програмного забезпечення робота. Основна мета ROS – створення і використання робототехнічного програмного забезпечення по всьому світу. ROS складається з набору інструментів, бібліотек і програмних пакетів, що спрощують завдання створення програмного забезпечення робота.

ROS – це метаопераційна система з відкритим вихідним кодом, розроблена для робота. Вона надає всі необхідні для даної операційної системи служби, включаючи апаратні засоби візуалізації, низькорівневе управління пристроєм, реалізацію функціональності для загального використання, передачу повідомлень між процесами і пакетами управління. Вона також надає інструменти та бібліотеки для отримання, побудови, написання та виконання коду на декількох комп'ютерах. Основні функції, які забезпечує ROS:

ROS – комбінація з потоку даних (передачі повідомлень), інструментів, можливостей і екосистеми[3]. У ROS вбудовані потужні інструменти для її налагодження та візуалізації. Робот, оснащений ROS, має такі можливості, як навігація, визначення місцезнаходження, складання карти, маніпуляції і т.д. вони допомагають створити потужні додатки для роботів. Наведене нижче зображення показує рівняння ROS:

рівняння ROS

Малюнок 3.1 — Рівняння ROS

4. Концепції ROS

ROS складається з трьох основних рівнів, таких як:

  1. файлова система ROS;
  2. обчислювальний граф ROS;
  3. спільнота ROS.

Основне завдання файлової системи ROS – організація файлів на диску. Основні терміни файлової системи ROS:

5. Обчислювальний граф ROS

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

Обчислювальний граф ROS, що відображає зв'язок елементів в мережі

Малюнок 5.1 — Обчислювальний граф ROS, що відображає зв'язок елементів у мережі

На наступному малюнку показано взаємодію між майстром, темами, службами і вузлами:

 Зв'язок між вузлами ROS і майстром ROS

Малюнок 5.2 — Зв'язок між вузлами ROS і майстром ROS

На наведеній вище схемі показано зв'язок, що здійснюється за допомогою майстра ROS (ROS Master) і двох вузлів ROS: вузла 1 (Node 1) і вузла 2 (Node 2). Перш ніж почати обмін даними між цими двома вузлами, необхідно запустити майстер ROS. Master ROS є посередником, що дозволяє встановити зв'язок і обмінюватися інформацією між вузлами. Наприклад, вузол 1 (Node 1) хоче опублікувати тему/xyz з типом повідомлення abc. Для цього він звертається до ROS Master і повідомляє, що збирається опублікувати тему / xyz з повідомленням виду abc і поділитися нею з іншими вузлами. А інший вузол, наприклад Вузол 2 (Node 2), бажає підписатися на цю тему/xyz з типом повідомлення abc. Майстер повідомляє вузлу 2, який вузол опублікував запитувану інформацію, і виділяє порт для зв'язку цих двох вузлів безпосередньо, минаючи майстер ROS. Таким чином, як уже згадувалося раніше, Master ROS являє собою DNS – сервер, що забезпечує пошук запитуваної вузлами інформації. Раніше вже згадувалося, що в ROS застосовується протокол зв'язку TCPROS[5], що використовує для зв'язку в основному сокети TCP/IP.

6. Основні поняття роботів з диференціальним приводом

Проектований робот буде оснащений двома провідними колесами, які ми встановимо на протилежних сторонах шасі. Управляти напрямком руху буде реалізовано за допомогою різниці швидкості обертання ведучих коліс. Наприклад, якщо швидкість обертання правого колеса буде менше, ніж швидкість обертання лівого, робот буде повертати вправо, і навпаки, якщо праве колесо буде обертатися швидше лівого, робот буде повертати вліво[6].

Найбільш важлива частина мобільного робота – це система управління. За допомогою неї робот орієнтується і переміщається в просторі. Однією з найпростіших і рентабельних систем управління є система диференціального приводу. Диференціальний привід складається з двох незалежних один від одного ведучих коліс, встановлених на загальній осі. Кожне провідне колесо приводиться в рух окремим двигуном. Диференціальний привід – це неголономна система, яка має обмеження в зміні положення робота. Прикладом неголономної системи є автомобіль, оскільки він не може змінити положення без зміни пози. Таким чином, маючи три ступені свободи (3d), автомобіль за допомогою газу, гальма і рульового управління може використовувати тільки два ступені свободи (2D).

Приклад робота з диференціальним приводом

Малюнок 6.1 — Приклад робота з диференціальним приводом

7. Програмування робототехніки з Arduino і ROS

Роботична операційна система ROS є досить потужною платформою для створення роботичних систем, яка включає все необхідне для розробки своїх проектів від найпростіших програмних компонентів, званих вузлами, і протоколу обміну даними до середовища симулювання реальної роботичної платформи Gazebo. В основному ROS використовується в зв'язці з такими мікроконтролерами, як Raspberry Pi і Blackbone, які володіють великими обчислювальними можливостями і власною операційною системою. Arduino є популярною платою для прототипування, що отримало широке поширення в зв'язку з виниклим не так давно поняттям Розумний будинок і яка явлется ідеальною стартовою точкою для новачків в області мікроелектроніки і робототехніки.

Зовнішній вигляд Arduino UNO

Малюнок 7.1 — Зовнішній вигляд Arduino UNO

В даний момент існує не так багато інформації про використання роботичної операційної системи ROS в зв'язці з мікроконтролером Arduino. В основному це зарубіжні інтернет ресурси і книги. Для використання ROS з платою Arduino існує офіційна бібліотека в ROS-rosserial_arduino. Ця бібліотека дозволяє публікувати повідомлення в Теми і підписуватися на повідомлення з конкретних тем. Також він дозволяє використовувати ros:: Time і TF і публікувати дані TF трансформації. Так як в даній роботі Arduino буде виконувати лише функцію управління двигунами, то слід слід розглянути мікрокомп'ютер Raspberry Pi, на якому буде встановлена ROS, і який буде виконувати всі інші завдання.

8. Raspberry Pi

Raspberry Pi – це маленький, розміром з кредитну карту, комп'ютер вартістю близько 25 доларів за базову модель і 35 – за більш просунуту. Raspberry Pi заснований на процесорі з архітектурою ARM11 і частотою в 700 МГц. В останніх версіях прошивки офіційно дозволили розганяти процесор до 1000 МГц, що забезпечує досягнення прийнятної продуктивності при низькому енергоспоживанні. Raspberry Pi по суті являє собою повноцінний системний блок, за допомогою якого можна навчати роботі з комп'ютером, відтворювати відео, програмувати, користуватися Інтернетом, слухати музику[7]. Одна з головних і привабливих особливостей Raspberry Pi – наявність на платі апаратних портів введення/виведення GPIO (General Purpose Input/Output, входи/виходи загального призначення), що відкриває перспективи використання його в робототехнічних проектах.

Терморегулятори роз'ємів GPIO, DSI, CSI, 3.5 аудіо/відео, I2S, тестових точок в RaspberryPi

Малюнок 7.2 — Терморегулятори роз'ємів GPIO, DSI, CSI, 3.5 аудіо / відео, I2S, тестових точок в RaspberryPi< / p>

Raspberry Pi працює в основному на операційних системах, заснованих на ядрі Linux. Це є перевагою, так як ROS розробляється якраз бля Linux–подібних систем.

Висновки

в ході виконання роботи була розроблена конструкція мобільного робота з диференціальним приводом.

в роботі була розглянута кінематика диференціального приводу з урахуванням рухомої платформи.

була зібрана механічна модель робота, для якої, на базі мікроконтролера Arduino UNO і мікрокомп'ютера Raspberry Pi 3b+ була розроблена система управління за допомогою операційної системи ROS. В результаті досліджень отримані практичні навички і знання в області розробки системи для спільного управління декількома приводами.

при написанні даного реферату магістерська робота ще не завершена. Остаточне завершення: Червень 2021 року. Повний текст роботи і матеріали по темі можуть бути отримані у автора або його керівника після зазначеної дати.

Список джерел

  1. Москвичев А. А., Кварталов А. Р., Устинов Б. В.Захватные устройства промышленных роботов и манипуляторов.-М.:Форум, Инфра-М, 2015. — 176 c.
  2. Sam Cubero Industrial Robotics. Theory, Modelling and Control / Pro Literatur Verlag, 2006. – 964 pp.
  3. Lorenzo Sciavicco, Bruno Siciliano Modelling and Control of Robot Manipulators / CreateSpace Independent Publishing Platform, 2001. — 371 pp.
  4. Matt Lombard Mastering SolidWorks / Sybex, 2018. — 1248 pp.
  5. David Planchard Official Certified SOLIDWORKS Professional (CSWP) Certification Guide / SDC Publicaations, 2017. — 192pp.
  6. MatLab. Руководство для начинающих. Основные матричные операции [Електронный ресурс]. — Режим доступу: https://rcs.chemometri...
  7. SimMechanics: Matlab как средство моделирования робототехнических систем [Електронный ресурс]. — Режим доступу: http://trudymai.ru...
  8. Фу К., Гонсалес Р., Ли К. Робототехника.-М.: Мир, 1989. — 624 с.
  9. Анучин А.С. Системы управления электроприводов: учебник для вузов. — М.: Издательский дом МЭИ, 2015. — 373 с.
  10. MBED OS. APIs [Електронный ресурс]. — Режим доступу: https://os.mbed...