Меню
Разработки
Разработки  /  Прочее  /  Уроки  /  7 класс  /  Методическая разработка занятия по робототехнике «Микроконтроллеры»

Методическая разработка занятия по робототехнике «Микроконтроллеры»

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

Содержимое разработки



Инструкция дистанционного занятия в offline режиме

Образовательная программа «Инженерная мысль. Робототехника+», год обучения - 1


Тема занятия «Микроконтроллеры»


Добрый день! Сегодня мы продолжим ваше знакомство с видами микроконтроллеров ATmega.


В зависимости от того, какой микроконтроллер Ардуино вы приобрели, его характеристики будут различаться. Так, в Arduino micro pro чуть больше пинов и другой объём постоянной памяти, что позволяет подгрузить дополнительные библиотеки.


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


Достоинствами Ардуино являются:

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

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

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

  4. Низкий порог вхождения. Чтобы обучиться работе с Ардуино, вам потребуется парочка свободных вечеров. Даже если ранее вы не занимались радиотехникой и никогда не паяли, а программирование для вас остаётся необъяснимой магией. Дело в том, что большая часть общественных библиотек написана наподобие высокоуровневых языков программирования. Для управления системой достаточно знать английский на разговорном уровне и хоть примерно представлять, на что вообще способна Ардуино микро про.


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



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


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


Или же, чтобы огонёк на кнопке запуска горел красным, когда устройство включено. Всё это также контролируется и настраивается на программном уровне.


Конечно, если вы никогда раньше не имели опыта с программным кодом и не знаете базовых алгоритмов – лучше пользоваться заготовленными библиотеками. А вот для программистов-инженеров на Ардуино полностью развязаны руки, о чём мы поговорим чуть ниже. Но, для начала, давайте разберём аппаратную часть.

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

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


Именно на таком принципе построено программирование двоичным кодом. Но от такой системы мы уже давно ушли, и потому к устройству можно подключать трансформаторы переменного тока и дополнительные резисторы, ведь некоторым модулям требуется ток в 3.2-4.7 Вольт.



Соответственно, аппаратная часть Ардуино в стандартной комплектации представлена чипом с постоянной памятью, набором из резисторов и транзисторов, а также несколькими пинами. Такая простая конструкция позволяет пользователю самому навешивать «улучшения» по необходимости.

С «коробки» в микроконтроллер устанавливается стандартная прошивка, способная распознавать базовые АТ команды. Пользователь может переустановить её или перепрошить Ардуино по желанию, но стоит учитывать, что без должного опыта вы можете получить бесполезную и неработающую плату.


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


Язык программирования Arduino


Ардуино полностью построен на низкоуровневом языке С++. Перед тем, как разобрать его достоинства и недостатки, стоит понять, что любой мультипарадигмальный ЯП (язык программирования, способный решать различные задачи, используя базовые парадигмы) является лишь инструментом.



  1. Мультипарадигмальность языка. Вы можете применять как ООП, так и более сложные его вариации, и писать простейшие функции с переменными. На С++ построены все базовые алгоритмы сортировки и поиска, а соответственно, легкореализуемы.


  1. Большое количество информации. С++ применяется во всех сферах программирования, от создания игр и программ до написания базовых прошивок для процессоров и плат. Именно последние нам и нужны на Ардуино.




  1. Язык является крайне пластичным. В отличие от Java, поклонники которого часто критикуют отсутствие «подушек безопасности» этого ЯП, С++ даёт вам полную свободу, вплоть до контроля ресурсов, расходуемых на каждую операцию.


Главные недостатки:

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



  1. Нет нормального отображения ошибки. Даже в современных средах программирования на С++ поиск одной ошибки может занять у вас несколько часов, пока не выяснится, что по какой-то причине цикл с предусловием не захотел воспринимать «!=», как отрицание. Или вы случайно создали непрерывную рекурсию, забыв написать один «return». И когда объёмы кода увеличиваются, таких мелких ошибок накапливается масса, а вспомнить каждую функцию, написанную для библиотеки, и уж тем более найти, какая из них конфликтует с новой, не так и просто. Здесь не помогает ни хорошо организованный DOM, ни своевременные комментарии.




Что может микроконтроллер Arduino

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

Интересные проекты на базе МК Arduino

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


  1. Умный дом. Практически каждый элемент умного дома можно создать собственными руками. От автоматических штор и дверей до сигнализаций и регулируемого освещения.


  1. Кодовые замки. Проект простой, и подойдёт для новичков. Достаточно использовать любой датчик и сделать замки, реагирующие на определённый ритм постукиваний или же на приближение вашего смартфона.


  1. Автоматизированные теплицы.










-75%
Курсы повышения квалификации

Организация и сопровождение олимпиадной деятельности учащихся

Продолжительность 72 часа
Документ: Удостоверение о повышении квалификации
4000 руб.
1000 руб.
Подробнее
Скачать разработку
Сохранить у себя:
Методическая разработка занятия по робототехнике «Микроконтроллеры» (312.71 KB)

Комментарии 0

Чтобы добавить комментарий зарегистрируйтесь или на сайт