Первые шаги в робототехнике через освоение принципов робототехники на программной оболочке и контроллера Arduino
Оценка 4.9

Первые шаги в робототехнике через освоение принципов робототехники на программной оболочке и контроллера Arduino

Оценка 4.9
Научно-исследовательская работа
pdf
информатика +1
20.12.2019
Первые шаги в  робототехнике через освоение принципов робототехники на программной оболочке и контроллера Arduino
Arduio project.pdf

 

Первые шаги в робототехнике  через освоение принципов робототехники на программной оболочке и контроллере Arduino

 

Актуальность развития и изучения этой темы заключается в том, что в настоящий момент в России развиваются нанотехнологии, электроника, механика и программирование. Т.е. созревает благодатная почва для развития компьютерных технологий и робототехники. Успехи страны в XXI веке будут определять не природные ресурсы, а уровень интеллектуального потенциала, который определяется уровнем самых передовых на сегодняшний день технологий.

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

Но чем шире размах – тем больше требуется ресурсов. Со временем человечество стало поручать рутинную и тяжелую работу компьютерным алгоритмам.

Уже в 1808 году французский ткач Жозеф Мари Жаккар изобрел ткацкий станок, программируемый с помощью перфокарт. Пока это был еще не робот – скорее, аналог современных автоматизированных линий. И, забегая вперёд, именно в нем впервые в промышленности был реализован принцип программирования, на котором держится современная робототехника

Термин «робот», как известно, славянского происхождения. Его ввел известный писатель К. Чапек в 1920 г. в своей фантастической пьесе «R.U.R.» («Россумовские универсальные роботы»), где так названы механические рабочие, предназначенные для замены людей на тяжелых физических работах.  

Робот (чеш. robot, от robota — «подневольный труд») —  автоматическое устройство, созданное по принципам распознавания, удержания и перемещения объектов во вредной, опасной или других средах, предназначенное для осуществления различного вида операций для производства, которое действует по заранее заложенной программе и получает информацию о положении и состоянии окружающего пространства посредством датчиков (технических аналогов органов чувств живых организмов), робот самостоятельно осуществляет производственные и иные вспомогательные операции, удовлетворяющие производственные потребности частично или полностью заменяющие труд человека. При этом робот может как иметь связь с оператором получать от него команды (ручное управление), так и действовать автономно, в соответствии с заложенной программой (автоматическое управление).

Робототе́хника  — прикладная наука, занимающаяся разработкой автоматизированных технических систем и являющаяся важнейшей технической основой интенсификации производства.

Функциональная направленность роботов настолько велика, что при создании каждого нового возникает необходимость формулировки принципов его создания в данном конкретном случае. Но всё же среди них можно выделить основополагающие принципы построения, которые были сформулированы ЗАО «РБОТ» при создании первого серийно выпускаемого российского робота, обеспечивающего удаленное присутствие (телеприсутствие) через интернет R.BOT 100 (13):

§   максимальное использование серийно выпускаемых средств;

§   использование стандартных средств программирования;

§   создание универсальной платформы;  §     защищенность персональных данных;  §        не сложнее, чем компьютер или смартфон.  

Сегодня применение роботов в современном мире уже никого не удивляет, область их применения широка и не перестаёт расти.

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

       космическое и самолетостроение;

       точное приборостроение;

       медицина;

       индустрия развлечений; 

       банковское обслуживание;

       обеспечение систем безопасности;

       военно-промышленный комплекс;

       автомобильная промышленность;

       другие сферы промышленного производства.

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

Суть любого робота – это аппаратные средства с процессорной базой и программа (или набор программ). Поэтому программирование неотъемлемый принцип процесса создания даже самого простого робота.  

Научившись программировать модуль Arduino, а программа приходит с огромным набором примеров, касающихся всех областей применения модуля, уже можно создавать интересные и полезные электронные устройства, к которым относятся и роботы. Начинать необходимо с простых проектов, а остальное, как говориться «в ваших руках».

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

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

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

Есть такой открытый проект, который называется Arduino.

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

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

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

Модуль легко соединяется с разными исполняющими устройствами, позволяя создавать и роботов, и устройства автоматики, и приборы.

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

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

Микроконтроллер — это микросхема, включающая в себя несколько устройств:

                    процессор выполняет все логические и арифметические операции и управляет выполнением программы робота;

                    постоянная память (постоянное запоминающее устройство) выполняет роль «жесткого диска» робота, хранит программы и данные, не стирается при выключении питания;

                    оперативная память (оперативное запоминающее устройство) является памятью с быстрым доступом, используется контроллером при работе для хранения программ и данных;

                    аналого-цифровые преобразователи преобразуют уровни напряжения в числовую форму;

                    широтно-импульсные генераторы предназначены для генерации электрических импульсов с определенной частотой и шириной и служат для управления внешними устройствами - например, скоростью вращения двигателя постоянного тока.

 

Рис. 1. Структура микроконтроллера

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

Электронный блок — это печатная плата с установленным микроконтроллером. Фактически электронный блок Arduino является аналогом материнской платы компьютера. На нем имеются разъемы для подключения внешних устройств, а также разъем для связи с компьютером, по которому осуществляется программирование. Самой популярной и наиболее универсальной платформой семейства является плата Arduino Uno (рисунок 2). 

 

Рисунок 2 Плата ArduinoUno Параметры контроллера Arduino Uno.

Микроконтроллер

ATmega328

Питание

От USB компьютера (+5 В, USB Plug) или внешнего источника (+7…12 В, External Power Supply)

Digital I/O Pins

Цифровые входы/выходы

14 штук – D0…D13, каждый из которых может выдавать уровень напряжения 0 В или 5 В или считывать их 6 из них (D3, D5, D6, D9, D10, и D11, обычно помечены на плате) могут использоваться как выходы регулируемого уровня напряжения в диапазоне 0…5 В

Analog In Аналоговые входы

6 штук – A0…A5. Измеряют значения напряжения на соответствующем пине Arduino в диапазоне 0…5 В. Могут использоваться как цифровые входы/выходы (D14…D18)

Максимальный

40 мА (достаточно, чтобы питать светодиод, но недоста-

ток через вход/выход

точно, чтобы питать электромотор). При превышении тока контроллер может выйти из строя

Флеш-память

32 Кб, при этом 2 Кб используются для загрузчика, а 30 – для хранения написанной программы для контроллера

ОЗУ

2 Кб

Индикаторы на плате

Светодиод ON, загорающийся при подключении контроллера к питанию

Светодиоды RX, TX, мигающие в процессе прошивки контроллера, а также при передаче/приеме информации с компьютера

Светодиод L, соединенный с цифровым контактом D13

 

Отличительной особенностью Arduino является наличие плат расширения, так называемых, «шилдов». Это дополнительные платы, которые ставятся подобно «слоям бутерброда» поверх Arduino, чтобы дать ему новые возможности. Именно такой подход, отвечает модульному принципу робототехники. Shield подключаются к Arduino с помощью имеющихся на них штыревых разъемов.  

Рассмотрим подробнее Shield, которая использовалась при сборке. Motor Shield L298P – это плата драйвера двигателей постоянного тока, использующая микросхему мощного драйвера электродвигателей L298P, которая может непосредственно управлять двумя двигателями постоянного тока; ток через нагрузки – до 2 ампер. Выходные интерфейсы управления двигателями используют 8 высокоскоростных диодов Шоттки в качестве защиты. Данная плата может быть установлена непосредственно на плату Arduino (рисунок 3). 

 

Рисунок 3.  Плата Motor Shield L298P

 

Особенности платы Motor Shield L298P:

1.                 На плате используется микросхема драйвера двигателей L298P, поэтому возможно использовать цифровой интерфейс ввода/вывода (D10, D11, D12, D13) без дополнительных сложных схем подключения.

2.                 На плате установлен зуммер (D4), можно использовать его для формирования аварийных сигналов.

3.                 Удобный интерфейс подключения двигателей.

4.                 Двунаправленный интерфейс Bluetooth не требует никаких проводов, возможно установить модуль непосредственно на плату.

5.                 На плате выведен интерфейс шести цифровых портов, которые не задействованы (D2, D3, D5, D6, D7, D9).

6.                 На плате выведен интерфейс шести аналоговых портов (A0, A1, A2, A3, A4, A5).

7.                 На плате установлен индикатор для отображения направления вращения (прямое или обратное) (рисунок 4).

Рисунок 4. Плата Motor Shield L298P с выводами и портами

 

Разработка приложений на базе плат Arduino осуществляется в специальной среде программирования Arduino IDE. Среда предназначена для написания и загрузки собственных программ в память микроконтроллера (8).  Эта составляющая Arduino, соответствует ещё одному принципу построения роботов – принцип программирования. Следует обратить внимание, что программирование, на сегодняшний момент, так же является модульным. Т.е. при написании программы, используются не отдельные команды и слова, а готовые модули, отвечающие за ту или иную «работу» робота, своего рода пазлы из которых, необходимо правильно прописать всю программу. Именно такой подход к программированию отвечает ещё одному принципу построения робота: простота исполнения.  

Базовая структура программы для Arduino состоит из двух обязательных частей: функций setup() и loop(). Перед функцией setup() идет объявление переменных, подключение вспомогательных библиотек. Функция setup() запускается один раз после каждого включения питания или сброса платы. Она используется для инициализации переменных, установки режима работы портов и т. д. Функция loop() в бесконечном цикле последовательно исполняет описанные команды. Для взаимодействия с различными устройствами, для обеспечения ввода и вывода используются специализированные процедуры и функции (8).

Платформа Arduino UNO R3 помогла мне освоить основные принципы робототехники: принцип модульности, принцип программирования, принцип универсальности платформы и принцип «не сложнее, чем компьютер».

 На Arduino очень легко делать разные машинки с дистанционным управлением, простыми сенсорами и логикой. Поэтому линейка эта невероятно популярна. Продается множество совместимых с ней сенсоров и плат расширения. 

Arduino позволила широкому кругу любителей освоить цифровую электронику и собирать устройства на базе микроконтроллеров без головной боли, связанной с программаторами, прошивкой, правильным выставлением «фьюзов» и риском сжечь чип.

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

Плюсы и минусы контроллера

 

Плюсы контроллера Ардуино:

Небольшие размеры платы;

Гибкость программирования;

Скорость опроса;

Гигантское кол-во различных датчиков и модулей расширения;

Дешевизна платы, стоимость контроллера варьируется в пределах 1000 р.

Минусы контроллера Ардуино:

Средняя надёжность (для промышленных объектов применять не вари-

ант);

Слабые разъёмы;

А чтобы добавили вы по поводу достоинств и недостатков? Если сравнивать с другими программируемыми собратьями , то Ардуино прост в программировании. Применить плату в своих проектах сможет и подросток, главное было бы желание. 

 

Практическое применение контроллеров Arduino UNO R3

Приборы Arduino — это потрясающая возможность для создания полезных в быту устройств и для упрощения жизни людей. Ниже я перечислю несколько проектов, реализованных на Arduino.

Устройство для автоматического полива с применением датчика влажности почвы, плата управляет водяной помпой.

 

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

 

 

Применяя Ардуино, можно сделать красивый  “умный” светильник. Называют его LED-кубом. Смотрится эффектно и красиво.

 

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

 

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

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

 

Источники информации

      arduino.cc

      amperka.ru

      alexgyver.ru/arduino_lessons

      robocraft.ru/blog/arduino

      mypractic.ru/uroki-programmirovaniya-arduino-navigaciya-po-urokam xakep.ru/2014/10/30/robots-arduino

      github.com/poconoco/sleipnir. 

      arduinomaster.ru/uroki-arduino/robot-mashinka-avtomobil-arduino cxem.net/arduino/arduino.php

Первые шаги в робототехнике через освоение принципов робототехники на программной оболочке и контроллера Arduino

Первые шаги в  робототехнике через освоение принципов робототехники на программной оболочке и контроллера Arduino

Первые шаги в робототехнике через освоение принципов робототехники на программной оболочке и контроллера Arduino

Первые шаги в  робототехнике через освоение принципов робототехники на программной оболочке и контроллера Arduino

Первые шаги в робототехнике через освоение принципов робототехники на программной оболочке и контроллера Arduino

Первые шаги в  робототехнике через освоение принципов робототехники на программной оболочке и контроллера Arduino

Первые шаги в робототехнике через освоение принципов робототехники на программной оболочке и контроллера Arduino

Первые шаги в  робототехнике через освоение принципов робототехники на программной оболочке и контроллера Arduino

Первые шаги в робототехнике через освоение принципов робототехники на программной оболочке и контроллера Arduino

Первые шаги в  робототехнике через освоение принципов робототехники на программной оболочке и контроллера Arduino

Первые шаги в робототехнике через освоение принципов робототехники на программной оболочке и контроллера Arduino

Первые шаги в  робототехнике через освоение принципов робототехники на программной оболочке и контроллера Arduino

Первые шаги в робототехнике через освоение принципов робототехники на программной оболочке и контроллера Arduino

Первые шаги в  робототехнике через освоение принципов робототехники на программной оболочке и контроллера Arduino

Первые шаги в робототехнике через освоение принципов робототехники на программной оболочке и контроллера Arduino

Первые шаги в  робототехнике через освоение принципов робототехники на программной оболочке и контроллера Arduino

Первые шаги в робототехнике через освоение принципов робототехники на программной оболочке и контроллера Arduino

Первые шаги в  робототехнике через освоение принципов робототехники на программной оболочке и контроллера Arduino

Первые шаги в робототехнике через освоение принципов робототехники на программной оболочке и контроллера Arduino

Первые шаги в  робототехнике через освоение принципов робототехники на программной оболочке и контроллера Arduino

Первые шаги в робототехнике через освоение принципов робототехники на программной оболочке и контроллера Arduino

Первые шаги в  робототехнике через освоение принципов робототехники на программной оболочке и контроллера Arduino

Первые шаги в робототехнике через освоение принципов робототехники на программной оболочке и контроллера Arduino

Первые шаги в  робототехнике через освоение принципов робототехники на программной оболочке и контроллера Arduino
Материалы на данной страницы взяты из открытых истончиков либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.
20.12.2019