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

Реферат на тему дипломної роботи

Зміст

Введення

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

Для робототехнической системи однією з найважливіших задач, є ідентифікація ситуації (місця розташування) в поточний момент часу. Вирішення цього завдання реалізується розробкою певних алгоритмів управління. Управління обʼєктами здійснюється за допомогою методів штучного інтелекту, якi отримують інформацію із засобів компʼютерного зору [ 1 ].

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

В даній роботі був створений робот–маніпулятор на гусеничному ходу, який є прототипом механізму, призначеного для роботи в важкодоступних або небезпечних для людини місцях (наприклад, перевірка трубопроводів, тунелів, огляд простору під нерухомими транспортними засобами). Очима робота виступає веб–камера ПК, управління роботом відбувається по бездротовому зʼєднанню Bluetooth.

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

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

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

Система повинна виконувати ряд функцій і мати ряд особливостей, а саме:

  1. Система управління повинна бути повністю автоматичною;
  2. Звʼязок між роботом і ПК повинна встановлюватися автоматично, в разі невдачі, спроба зʼєднання повинна бути відновлена;
  3. Створення нового кадру, а також запуск алгоритму обробки кадру запускається тільки по сигналу з плати контролера;
  4. Система положення повинна мати задатчик положення, завдання повинно приходити в міліметрах.

3. Функціональна схема системи управління

Функціональна схема системи складається з веб–камери, яка передає зображення в середу python (ПК), ПК в свою чергу при виникненні помилок виводить інформацію в термінал, а також обмінюється даними з контролером по Bluetooth.

На малюнку 1 представлена функціональна схема системи.

<Функціональна схема системи>

Малюнок 1 – Функціональна схема системи

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

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

4. Аналіз складу устаткування

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

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

Металевий куточок 20х30мм

Малюнок 2 – Металевий куточок 20х30мм

Конструкція платформи являє собою два металевих куточка, скріплених між собою, до яких прикріплені системи шестерень і роликів.

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

Гусениця в зборі

Малюнок 3 – Гусениця в зборі

5. Вибір програмованого контролера

В якості контролера виступає отладочная плата STM32F407VET6, на базі якої побудована логіка робота.

Загальний вигляд отладочной плати

Малюнок 4 – Загальний вигляд отладочной плати

Основні характеристики вiдладочної плати:

Програмування отладочной плати здійснюється за допомогою програмного пакету MATLAB, бібліотеки Waijung, що значно спрощує завдання програмування і налагодження алгоритмів.

6. Опис двигунів

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

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

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

Двигун постійного струму JGY371

Малюнок 5 – Двигун постійного струму JGY371

Номінальна напруга 12В постійного струму, швидкість на вихідному валу становить 100 об/хв, номінальний крутний момент 1,5 кг.см, максимальний крутний момент 6,4 кг.см, передавальне число редуктора 40.

Дані про величину струму були отримані експериментально, струм холостого ходу з урахуванням гусениці на валу становить 150мА. Вага двигуна составляет 165 грам.

Призначення виводiв:

7. Опис драйвера

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

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

Технічні особливості:

Виводи: [ 6 ]:

  1. Vcc – живлення двигуна;
  2. GND – земля;
  3. OUT1, OUT2 – вихід першого каналу;
  4. OUT3, OUT4 – вихід другого каналу;
  5. ENA – включення першого канал;
  6. IN1, IN2 – напрямок першого каналу;
  7. ENB – включення другого каналу;
  8. IN3, IN4 – напрямок другого каналу.

Зовнішній вигляд драйвера L298N наведено на малюнку 6.

Драйвер L298N

Малюнок 6 – Драйвер L298N

8. Опис модуля Bluetooth

Звʼязок Bluetooth бул обран у звʼязку з простотою реалізації, вiн забезпечує стійкість до перешкод (широкосмуговим), а це в свою чергу дозволяє безлічі пристроїв, які взаємодіють один з одним спілкуватися між собою і не впливати на роботу інших. Для управління роботом необовʼязково наявність прямої видимості, що є істотним плюсом, так як очами робота є web–камера.

Технічні характеристики:

Підключення

Зовнішній вигляд модуля зображений на малюнку 7.

Зовнішній вигляд модуля HC–05

Малюнок 7 – Зовнішній вигляд модуля HC–05

9. Принцип роботи

Алгоритм роботи системи ділитися на дві частини. Кожна частина – це індивідуальна система. Кожна з них має обчислювальний ядро і Bluetooth модуль.

Алгоритм роботи системи

Малюнок 8 – Алгоритм роботи системи

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

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

Computer vision

Малюнок 9 – Робота алгоритму виявлення обʼєктів
(анімація: 6 кадрів, 7 циклів повторення, 106 кілобайт)

Висновок

Істотним недоліком цієї системи є те, що для функціонування цієї системи необхідно два обчислювальних ядра, а саме: контролер і ПК.

Якість виявлення системи і точність визначення відстані між обʼєктами безпосередньо залежить від кількості фотографій обʼєктів в процесі навчання нейромережі і від кількості епох навчання. Також на точність роботи системи впливає характеристики веб–камери.

Proekt robot

Малюнок 10 – Робот на стадії проектування

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

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

Real robot

Малюнок 11 – Робот на стадії реалізації

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

  1. Simulink. [Електронний ресурс]. – Режим доступу: https://matlab.ru/products/Simulink
  2. WaijungBlockset. [Електронний ресурс]. – Режим доступу: http://waijung.aimagin.com/
  3. Reflective Optical Sensor with Transistor Output, DataSheet № TCRT5000
  4. DUAL FULL–BRIDGE DRIVER, Electronics Description, DataSheet № L298N
  5. Eclipse (середовище розробки). [Електронний ресурс]. – Режим доступу: https://www.eclipse.org/
  6. Интерфейсная шина IIC (I2C). [Електронний ресурс]. – Режим доступу: http: //easyelectronics.ru / ...
  7. Управління мобільними роботами [Електронний ресурс]. – Режим доступу: https: //moluch.ru / ...
  8. STM32F407VE [Електронний ресурс]. – Режим доступу: https: //www.st.com / ...
  9. CMOS Rail–to–Rail General–Purpose Amplifiers, DataSheet № AD8541_8542_8544
  10. Датчик лінії HC–05 цифровий. [Електронний ресурс]. – Режим доступу: https://3d–diy.ru/wiki/arduino–moduli /