Українська   English
ДонНТУ   Портал магистров

Реферат по теме магистерской работы

Содержание

Введение

В середине 20-го столетия технический прогресс совершил скачок в развитии компьютерных технологий. После этого компьютерные технологии начали развиваться по экспоненте. Наглядно данный факт описывает закон Мура [1]. К середине 20-го столетия в научной фантастике сформировалось большое количество произведений, описывающих уже не компьютеры, а робототехнику: формируется законы робототехники [2], предполагаемый внешний вид и возможности, превосходящие человеческие. На волне развития технического прогресса и компьютерных технологий зародилась робототехника. На данный момент мы можем наблюдать всё большее внедрение роботизированных устройств в окружающем нас мире, а в не далёком бедующем возможно мы увидим непосредственно роботов, живущих с нами бок о бок и помогающими нам улучшить нашу жизнь. Но для того, чтобы роботы вписались в нашу жизнь их необходимо оснастить системами ориентирования в пространстве.

1. Актуальность темы

При взаимодействии роботизированной техники с окружающими объектами возникает необходимость в системах ориентирования в пространстве. Эти системы необходимы также в тех случаях, когда оператор какой-либо движущейся машины или устройства не может достоверно оценивать перемещение управляемого объекта в пространстве и его взаимодействие с другими объектами. С развитием научно-технического прогресса данная проблема становится всё актуальнее. Системы ориентирования в пространстве всё больше проникают в нашу повседневную жизнь: от мобильных телефонов (датчики приближения, GPS, акселерометр и многое другое) до автомобилей (GPS, парктроник и т. д). Внедрение данных систем в аэрокосмическую отрасль является неотъемлемой частью прогресса в этой области. Следовательно, исследование и разработка систем ориентирования в пространстве является актуальной.

2. Цель и задачи исследования, планируемые результаты

Целью работы является исследование и разработка систем ориентирования робототехники в пространстве.

Необходимо разработать систему, обеспечивающую автономного робота необходимой информацией для его передвижения в пространстве. Данная система должна быть сконструирована с учётом следующих требований:

1) минимальная стоимость;

2) простая в сборке;

3) легко внедряемая в роботизированные устройства;

4) универсальная для разных типов роботов.

Ещё одной задачей является разработка системы, которая обеспечит оператору возможность управлять роботом в случае если возникла ситуация, когда робот не может справиться с поставленной задачей либо возникла аварийная ситуация.

3. Обзор исследований и разработок

В настоящее время существует множество исследований и разработок в области ориентирования робототехники в пространстве. Ежедневно разрабатываться принципиально новые системы или компонуются уже имеющиеся для получения лучшего результата. Большинство разработок делается в научных центрах и применяются они, в основном, в коммерческих структурах. Следовательно, не вся информация по новейшим разработкам находится в свободном доступе с полным описанием. Это усложняет поиск информации по изучаемой теме.

3.1 Обзор международных источников

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

Публикация Edward Red «Robotics Overview». Данная статья содержит большое количество информации как о самом роботостроении, так и о системах, при помощи которых роботы могут взаимодействовать с окружающими объектами [3].

Публикация Samuel Bouchard «7 Types of Industrial Robot Sensors». Данная статья содержит информацию о типах сенсоров для роботов, используемых на производстве [4].

3.2 Обзор национальных источников

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

Публикация Андрей Антонов «Описание движения мобильного робота». В данной статье рассмотрены модели описания движений роботов [5].

Публикация Олег Евсегнеев «Популярная робототехника/Сенсор». Статья описывает различные виды сенсоров/датчиков для взаимодействия робототехники с окружающим миром [6].

Публикация «Инфракрасный датчик расстояния» на сайте home.roboticlab. Статья описывает принцип работы инфракрасных датчиков и как применять эти датчики для измерения расстояния [7].

3.3 Обзор локальных источников

В рамках Донецкого национального технического университета (ДонНТУ) работ в области «Исследование и разработка систем ориентирования робототехники в пространстве» найдено не было, но есть статья, связанная с данной темой.

Публикация Диденко Г.С. «Роботизированная система с визуальным наблюдением». Материалы Международной научно-техническая конференции студентов, аспирантов и молодых ученых «Информационные управляющие системы и компьютерный мониторинг 2014» [8].

4. Разработка устройства

Разработку устройства можно разделить на две части: аппаратную и программную.

Аппаратная часть

Разработка системы ориентирования в пространстве выполнена на платформе ArduinoUno (рис.1). Arduino Uno контроллер построен на ATmega328 [9]. Платформа имеет 14 цифровых входов/выходов (шесть из которых могут использоваться как выходы ШИМ), шесть аналоговых входов, кварцевый генератор 16 МГц, разъем USB, силовой разъем, разъем ICSP и кнопку перезагрузки. Для работы необходимо подключить платформу к компьютеру посредством кабеля USB, либо подать питание при помощи адаптера AC/DC или батареи [10].

Платформа программируется посредством программного обеспечения Arduino. Язык программирования устройств Arduino основан на C/C++ [11].

Для программирования микроконтроллера используется среда разработки Arduino 1.0.5. Микроконтроллер ATmega328 поставляется с встроенным загрузчиком, облегчающим запись новых программ без использования внешних программаторов. Устройство работает автономно, т. е. без вмешательства операционной системы либо пользователя, питание устройства автономное от аккумулятора.

Внешний вид ArduinoUno

Рисунок 1 – Внешний вид ArduinoUno

Для измерения расстояния до объектов используется ультразвуковой датчик измерения расстояния HC-SR04 [12]. Сенсор дальномера работает по принципу сонара, а точнее – посылает ультразвуковой пучок и по задержке отражённого от объекта сигнала определяет расстояние до цели (рис.2). Поскольку в основе работы устройства используется ультразвук, сонар плохо подходит для определения расстояния до звукопоглощающих объектов. Поверхность объекта должна быть ровной и гладкой для идеального измерения расстояния.

Принцип работы ультразвукового дальномера HC-SR04

Рисунок 2 – Принцип работы ультразвукового дальномера HC-SR04
(анимация: 6 кадров, 6 циклов повторения, 140 килобайт)

Особенности ультразвукового дальномера HC-SR04:

1) простота в использовании и 4-х контактное подключение;

2) диапазон измерения: 2 до 400 см;

3) точность измерения: погрешность 1 см (при максимальной дальности погрешность 3 см);

4) угол измерения: 15 градусов (рис. 3.);

5) ультразвуковой диапазон работы на частоте 40 кГц;

6) рабочее напряжение 4,8 до 5,5 В (± 0.2 В макс.);

7) диапазон рабочих температур: 0 до 60 градусов по Цельсию (погрешность 10%).

Диаграмма зависимости угла измерения и достоверности полученных данных

Рисунок 3 – Диаграмма зависимости угла измерения и достоверности полученных данных

Для определения положения робота в пространстве используется модуль GY-531 [13]. Микросхема MPU6050 содержит акселерометр, гироскоп и температурный сенсор. MPU6050 является главным элементом модуля GY-531 (рис.4). Помимо этой микросхемы на плате модуля расположена необходимая обвязка MPU6050, в том числе подтягивающие резисторы интерфейса I2C, а также стабилизатор напряжения на 3,3 В с малым падением напряжения (при питании в 3,3 В на выходе стабилизатора будет 3 В) с фильтрующими конденсаторами. Также на плате имеется SMD светодиод с ограничивающим резистором, выполняющие функцию индикации питающего напряжения. Датчики гироскопа и акселерометра изготовлены как MEMS (микроэлектромеханическая система) - внешнее воздействие на датчик сначала изменяет состояние механической части, затем изменение состояния механической части приводит к изменению сигнала электрической части. Одним словом, в одном корпусе собрана не только электроника, но и механика. В микросхеме MPU6050 содержится сразу два MEMS датчика, производитель утверждает, что их взаимное воздействие друг на друга сведено к минимуму.

Внешний вид GY-531

Рисунок 4 – Внешний вид GY-531

Система, разработанная на базе модуля GY-531 должна определять угол подъёма или спуска движущегося объекта и в зависимости от этого генерировать управляющие сигналы для увеличения/уменьшения напряжения, подаваемого на двигатели. Если объект преодолевает подъём, система определяет угол подъёма и увеличивает напряжение, подаваемое на двигатели, чтобы не утратить скорость движения. Если объект преодолевает спуск, система определяет угол спуска и уменьшает напряжение на двигатели, чтобы предотвратить неконтролируемый разгон объекта.

Следует отметить, что в данном проекте использовался акселерометр и гироскоп одновременно, чтобы повысить точность полученных данных. Это обусловлено разной спецификой работы акселерометра и гироскопа, а также определяемых ими параметров.

Далее необходимо разработать систему для управления двигателем. В данной системе двигатель будет управлять платформой при помощи микросхемы драйвера двигателей L293D. Драйвер двигателя – это такое устройство, которое преобразовывает управляющие сигналы малой мощности в токи, достаточные для управления моторами. L293D содержит сразу два драйвера для управления электродвигателями небольшой мощности (четыре независимых канала, объединенных в две пары) и имеет две пары входов для управляющих сигналов и две пары выходов для подключения электромоторов. Кроме того, у L293D есть два входа для включения каждого из драйверов. Эти входы используются для управления скоростью вращения электромоторов с помощью ШИМ.

L293D обеспечивает разделение электропитания для микросхемы и для управляемых ею двигателей, что позволяет подключить электродвигатели с большим напряжением питания, чем у микросхемы. Разделение электропитания микросхем и электродвигателей может быть также необходимо для уменьшения помех, вызванных бросками напряжения, связанными с работой моторов. Система управления двигателем (рис.5).

Характеристики микросхемы L293D:

1) напряжение питания двигателей (Vs) – 4,5...36V;

2) напряжение питания микросхемы (Vss) – 5V;

3) допустимый ток нагрузки – 600mA (на каждый канал);

4) пиковый (максимальный) ток на выходе – 1,2A (на каждый канал);

5) логический «0» входного напряжения – до 1,5V;

6) логическая «1» входного напряжения – 2,3...7V;

7) скорость переключений до 5 kHz;

8) защита от перегрева.

Схема управления двигателями

Рисунок 5 – Схема управления двигателями

Программная часть

Программная часть будет реализована в коде для прошивки микроконтроллера (Arduino скетч). Данная программа должна определять расстояние до препятствий на пути и рассчитывать положение робота в пространстве для генерации управляющих сигналов, посредством которых будет производиться управление двигателями робота.

Следует отметить, что в данном проекте использовался акселерометр и гироскоп одновременно, чтобы повысить точность полученных данных. Это обусловлено разной спецификой работы акселерометра и гироскопа, а также определяемых ими параметров.

Гироскоп выдает значения мгновенной угловой скорости с разрешением, заданным в настройках. Если прошить микроконтроллер и смотреть на получаемые данные, то увидим только нули. Если начать крутить датчик, то получим мгновенные значения угловой скорости. Скорость мы получаем в градусах в секунду, а это значит, что линейные скорости не влияют на эти показания – показания будут изменяться только при повороте датчика в пространстве. Далее с помощью этих данных можно получить ориентацию объекта в пространстве. Для этого нужно получить мгновенное значение угловой скорости и умножить его на промежуток времени между опросами датчика гироскопа. Пример разрешение 2000 градусов в секунду, промежуток между опросами датчика 0,1 секунда, значение мгновенной скорости 300, значит 300*0,1=30 – за это время ось гироскопа была повернута на 30 градусов. Далее каждое полученное значение нужно сложить с предыдущим. Если ось двигалась в одном направлении - значение 30 градусов, если в другом, то -30, таким образом, при возвращении датчика в исходное положение всегда (в идеале) будет 0, при отклонении от исходного положения, при выполнении вышеописанных действий, получим угол отклонения. Обрабатывая углы трех осей гироскопа можно получить ориентацию объекта в пространстве.

Таким образом, при интегрировании состояния угла положения, также интегрируется и погрешность – при длительном использовании можно получить уже абсолютно неправильные значения. Поэтому часто гироскоп используют в паре с акселерометром, образуя в простом варианте альфа-бета фильтр или комплементарный фильтр.

Акселерометр определяет ускорения по трём осям. В результате можно получить данные, преобразуя их с помощью геометрии, по которым можно также получить ориентацию объекта в пространстве. Помимо этого, акселерометр измеряет линейные ускорения, то есть ориентация объекта может искажаться при движении датчика в линейных направлениях. Также с помощью акселерометра можно определять движение объекта или его столкновение. Например, детектировать падение объекта или толчок о преграду, чтобы обходить это.

Данные от акселерометра получаем всегда достаточно точные, то есть нуль всегда остается нулем ни при каких воздействиях (имеется ввиду не зависит ни от времени, ни от характера воздействия). Однако недостаток заключается в том, что данные идут с шумом в некотором диапазоне, то есть, до десятых долей градуса точно измерять угол не получится. Зато исходя из экспериментальных данных, точность до целых значений градуса держится вполне стабильно. Не забываем также про влияние линейных ускорений.

Выводы

Таким образом, в ходе разработки системы ориентирования в пространстве были определены достоинства и недостатки ультразвуковых датчиков. Разработана система определения расстояния до объекта и сконструирован робот, который находится в постоянном движении, изменяет направление движения при приближении к препятствию и подтверждает достоверность разработанной системы ориентирования.

Выполнена разработка и моделирование электронного прибора, определяющего положение объекта в пространстве при помощи акселерометра и гироскопа. Устройство определяет углы подъёма или спуска и генерирует сигналы управления для корректировки работы двигателей. Полученная система ориентирования в пространстве простая в применении и дешёвая при сборке. Меняя микросхемы драйвера двигателей возможно управление данной системой электродвигателями любой мощности.

Для программирования микроконтроллера используется язык С. Среда разработки транслирует программу на язык Assembler – понятный для микроконтроллера.

Список источников

  1. Википедия – свободная энциклопедия, статья «Закон Мура». [Электронный ресурс]. – Режим доступа: ru.wikipedia.org
  2. Википедия – свободная энциклопедия, статья «Три закона роботехники». [Электронный ресурс]. – Режим доступа: ru.wikipedia.org
  3. Edward Red. Robotics Overview. [Электронный ресурс]. – Режим доступа: eaal.groups.et.byu.net
  4. Samuel Bouchard. 7 Types of Industrial Robot Sensors. [Электронный ресурс]. – Режим доступа: blog.robotiq.com
  5. Андрей Антонов. Описание движения мобильного робота. [Электронный ресурс]. – Режим доступа: robotosha.ru
  6. Популярная робототехника – «Сенсор». [Электронный ресурс]. – Режим доступа: poprobot.ru
  7. Информационный сайт по разработке роботов Home roboticlab – «Инфракрасный датчик расстояния». [Электронный ресурс]. – Режим доступа: home.roboticlab.eu/ru
  8. Диденко Г.С. Роботизированная система с визуальным наблюдением/ Г.С. Диденко, В.А. Краснокутский// Материалы Международной научно-техническая конференции студентов, аспирантов и молодых ученых «Информационные управляющие системы и компьютерный мониторинг 2014», Донецк.
  9. Официальный сайт Ардуино в России. [Электронный ресурс]. – Режим доступа: arduino.ru
  10. Официальный сайт Ардуино. [Электронный ресурс]. – Режим доступа: arduino.cc
  11. Подбельский В. В. Программирование на языке Си: Учеб. пособие. – 2-е доп. изд./ В. В. Подбельский, С. С. Фомин. – М.: Финансы и статистика, 2004. – 600 с., ил.
  12. Горин Н.А. Разработка системы ориентирования в пространстве с использованием ультразвукового датчика/ Н.А. Горин, В.Н. Струнилин// Материалы Международной научно-техническая конференции студентов, аспирантов и молодых ученых «Информационные управляющие системы и компьютерный мониторинг 2015», Донецк.
  13. Горин Н.А. Разработка системы ориентирования в пространстве с использованием модуля GY-531/ Н.А. Горин, В.Н. Струнилин// Материалы Международной научно-техническая конференции студентов, аспирантов и молодых ученых «Информатика, управляющие системы, математическое и компьютерное моделирование 2016», Донецк.