Реферат на тему микроконтроллеры ардуино

Обновлено: 05.07.2024

Руководитель: Байда А.С

Студентка: Васильева Ю.В

Дата сдачи работы:

СОДЕРЖАНИЕ

1.1 Платформа Arduino. 4

1.2 В чем преимущество Arduino…………………………………………. 5

1.3 История создания Arduino……………………………………………. 6

2 ПРОВЕДЕНИЕ ИЗМЕРЕНИЙ НА ПЛАТФОРМЕ ARDUINO………………….9

2.1 Управление светодиодом……………………………………………. …. 9

2.2 Простое шифрование сигнала. Азбука Морзе………………………. 11

2.3 Управление яркостью светодиодов……………………………. …….19

2.4 Измерение освещенности с помощью фоторезистора…………. ….29

2.5 Пьезокерамический излучатель……………………………………..32

ИНФОРМАЦИОННЫЕ ИСТОЧНИКИ …………………………………………..41

ВВЕДЕНИЕ

С помощью Arduino можно реализовать практически любой замысел. Это может быть автоматическая система управления поливом, или веб-сервер, или даже автопилот для мультикоптера. Итак, Arduino — это платформа для разработки устройств на базе микроконтроллера, на простом и понятном языке программирования в интегрированной среде Arduino . Добавив датчики, приводы, динамики, добавочные модули и дополнительные микросхемы, мы сможем использовать Arduino в качестве "мозга" для любой системы управления. Трудно даже перечислить все, на что способна платформа Arduino, потому что возможности ограничены только нашим воображением. Эта курсовая работа послужит руководством, знакомящим нас с функциональностью Arduino путем выполнения большого количества лабораторных работ, которые дадут навыки.

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

Для достижения поставленной цели необходимо обеспечить реализацию следующих задач:

  • Приобретение навыков работы с платформой ARDUINO;
  • Изучение средств программирования платформы ARDUINO;
  • Написание программ для успешного программирования ARDUINO.

Теоретическую основу курсовой работы составила отечественная и иностранная литература, которая посвящена непосредственно ARDUINO. Авторами являются выдающиеся программисты Виктор Петина и Джереми Блум.

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

Arduino и его клоны представляют собой наборы, состоящие из готового электронного блока и программного обеспечения. Электронный блок здесь — это печатная плата с установленным микроконтроллером и минимумом элементов, необходимых для его работы. Фактически электронный блок Arduino является аналогом материнской платы современного компьютера. На нем имеются разъемы для подключения внешних устройств, а также разъем для связи с компьютером, по которому и осуществляется программирование микроконтроллера. Особенности используемых микроконтроллеров ATmega фирмы Atmel позволяют производить программирование без применения специальных программаторов. Все, что нужно для создания нового электронного устройства, — это плата Arduino, кабель связи и компьютер.

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

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

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

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

В 2002 году программист Массимо Банци (Massimo Banzi) был принят на работу в должности доцента в Институт проектирования взаимодействий города Ивреа (Interaction Design Institute Ivrea, IDII) для продвижения новых способов разработки интерактивных проектов. Однако крошечный бюджет и ограниченное время доступа к лабораторной базе сводили его усилия практически на нет. В проектах Банци использовал устройство BASIC Stamp, разработанное калифорнийской компанией Parallax. Stamp представлял собой небольшую печатную плату с размещенными на ней источником питания, микроконтроллером, памятью и портами ввода/вывода для соединения с различной аппаратурой. Программирование микроконтроллера осуществлялось на языке BASIC. BASIC Stamp имел две проблемы: недостаток вычислительной мощности и достаточно высокую цену — плата с основными компонентами стоила около 100 долларов. И команда Банци решила самостоятельно создать плату, которая удовлетворяла бы всем их потребностям. Банци и его сотрудники поставили себе целью создать устройство, представляющее собой простую, открытую и легкодоступную платформу для разработки, с ценой —не более 30 долларов — приемлемой для студенческого кармана. Хотели они и выделить чем-то свое устройство на фоне прочих. Поэтому в противовес другим производителям, экономящим на количестве выводов печатной платы, они решили добавить их как можно больше, а также сделали свою плату синей, в отличие от обычных зеленых плат.

Продукт, который создала команда, состоял из дешевых и доступных компонентов — например, базировался он на микроконтроллере ATmega328. Но главная задача состояла в том, чтобы гарантировать работу устройства по принципу plug-andplay,— чтобы пользователь, достав плату из коробки и подключив к компьютеру, мог немедленно приступить к работе. Первый прототип платы был сделан в 2005 году, она имела простейший дизайн и еще не называлась Arduino. Чуть позже Массимо Банци придумал назвать ее так — по имени принадлежащего ему бара, расположенного в городе Ивреа. Бренд "Arduino" без какой-либо рекламы и привлечения средств маркетинга быстро приобрел высокую популярность в Интернете. С начала распространения продано более 250 тыс. комплектов Arduino, и это не учитывая множества клонов. В мире насчитывается более двухсот дистрибьюторов продукции Arduino — от крупных фирм, таких как SparkFun Electronics, до мелких компаний, работающих на местный рынок. На сегодня платформа Arduino представлена не одной платой, а целым их семейством. В дополнение к оригинальному проекту, называемому Arduino Uno, новые модели, имеющие на плате более мощные средства, носят название Arduino Mega, компактные модели — Arduino Nano, платы в водонепроницаемом корпусе — LilyPad Arduino, а новая плата с 32-разрядным процессором Cortex-M3 ARM — Arduino Due.

Своим успехом проект Arduino обязан существовавшим до него языку Processing и платформе Wiring. От этих проектов Arduino унаследовал одну сильную черту —удобную для пользователя среду разработки. До появления Arduino программирование микроконтроллеров требовало сложного и рутинного предварительного обучения. А с Arduino даже те, кто не имеет опыта работы с электронными устройствами, теперь могут приобщиться к миру электроники. Начинающим уже не приходится тратить много времени на изучение сопутствующего материала — они могут

быстро разработать прототип, который будет полноценно рабочим.

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

2 ВЫПОЛНЕНИЕ ПРАКТИЧЕСКИХ РАБОТ

2.1 Управление светодиодом

Цель работы: написать программу для платформы Arduino, способную выполнять мигание встроенным светодиодом с различным интервалом времени.

Рисунок 1- Плата Arduino

Программирование платформы Arduino на мигание встроенным светодиодом

Творческий проект учащихся 8 класса Осипова Станислав и Горохова Ивана.

ВложениеРазмер
referat_arduino2.docx 219.5 КБ
prezentatsiya_8b_arduino.pptx 1.65 МБ

Предварительный просмотр:

Муниципальное общеобразовательное бюджетное учереждение

Реферат на тему:

Осипов Станислав и Горохов Иван

Проверил: Васильев П.В.

1.2. Виды и разновидность Ардуино……………………………..5 ыкырапраап

1.3. Характеристика платы МЕГА 2560…………………………7

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

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

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

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

Arduino применяется для создания электронных устройств с возможностью приема сигналов от различных цифровых и аналоговых датчиков, которые могут быть подключены к нему, и управления различными исполнительными устройствами. Проекты устройств, основанные на Arduino, могут работать самостоятельно или взаимодействовать с программным обеспечением на компьютере (напр.: Flash, Processing, MaxMSP). Платы могут быть собраны пользователем самостоятельно или куплены в сборе. Среда разработки программ с открытым исходным текстом доступна для бесплатного скачивания.

На UNO решили заменить хардварный преобразователя USB-UART, на микроконтроллер Atmega8U2 (в более поздних ревизиях 16U22)- в него залита специальная прошивка, делающая ровно то же что и FT232.
Что это дало?
Поднялась скорость прошивки — теперь вместо 10 секунд надо ждать 3 секунды.
А главное, в этот МК-конвертор можно залить свою прошивку, и превратить ардуино в мышку, клавиатуру или миди устройство… наверняка кому-то это очень надо
Только делается это как-то не очень по-ардуиновски, и примеров пока крайне мало.

Arduino MEGA xxx

Серия прокачанных плат (по размеру и характеристикам) представлена моделями (в хронологическом порядке): Mega, Mega2560 и Arduino ADK.

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

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

Неполный список периферии, которая может присутствовать в микроконтроллерах, включает в себя:

универсальные цифровые порты, которые можно настраивать как на ввод, так и на вывод;

различные интерфейсы ввода-вывода, такие как UART, I²C, SPI, CAN, USB, IEEE 1394, Ethernet;

аналого-цифровые и цифро-аналоговые преобразователи;

контроллеры бесколлекторных двигателей;

контроллеры дисплеев и клавиатур;

радиочастотные приемники и передатчики;

массивы встроенной флеш-памяти;

встроенный тактовый генератор и сторожевой таймер.

ARM (ARM Limited)

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

в вычислительной технике: материнские платы, контроллеры дисководов жестких и гибких дисков, CD и DVD;

электронике иразнообразных устройствах бытовой техники, в которой используется электронные системы управления — стиральных машинах, микроволновых печах, посудомоечных машинах, телефонах и современных приборах;

устройств промышленной автоматики — от программируемого реле и встраиваемых систем до ПЛК,

систем управления станками

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

Известные компиляторы Си для МК:

CodeVisionAVR (для AVR)

IAR (для любых МК)

ICC (для AVR, MSP430, ARM7, Motorola )

Keil (дляархитектуры 8051 и ARM)

HiTECH (для архитектуры 8051 и PIC от Microchip)

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

Вышебыла дана общая информация о микроконтроллерах, их программировании и семействах.

Сейчас следует перейти именно к теме работы – Arduino.

Ядро команды разработчиков Arduino составляют: Массимо Банци (Massimo Banzi), Девид Куартиллье (David Cuartielles), Том Иго (Tom Igoe), Джанлука Мартино (Gianluca Martino), Девид Меллис.

Что такое платформа Ардуино и для чего она нужна

Программируемый контроллер Ардуино

Ардуино представляет собой готовую аппаратно-программную платформу, главными компонентами которой являются небольшая плата-контроллер ввода/вывода и среда разработки на основе Processing/Wiring.

контроллер Ардуино

Цель Ардуино – создать доступную среду для разработчиков программного обеспечения, которая позволит им войти в мир программирования микроконтроллеров. Программирование контроллеров данный фирмы происходит в простой и интуитивно понятной среде программирования – Arduino IDE. Эта среда удобна как и для начинающих пользователей, так и для опытных. Используется язык программирования С++, который дополнен множеством библиотек, что упрощает работу с устройством.

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

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

Программирование Программируемый контроллера Ардуино

Микроконтроллеры платформы Ардуино

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

Программирование здесь осуществляется через специальную программную оболочку (IDE), которую можно бесплатно скачать на сайте Arduino. Написанная на Java, дружелюбная оболочка работает под Windows, Mac OS X, и Linux, она содержит текстовый редактор, менеджер проектов, препроцессорный компилятор, а также инструменты для загрузки программы непосредственно в микроконтроллер.

Используемые в Ардуино микроконтроллеры уже имеют прошитый загрузчик (bootloader), поэтому программатор не нужен, достаточно соединить плату с компьютером через USB или через переходник UART-USB, и загрузить программу.

Имеется на плате и возможность прошить загрузчик в микроконтроллер самостоятельно с помощью программатора, в Arduino IDE встроена поддержка наиболее популярных дешевых программаторов, есть штыревой разъем для внутрисхемного программирования (ICSP для AVR, JTAG для ARM).

В большинстве устройств Ардуино используются микроконтроллеры Atmel AVR ATmega328, ATmega168, ATmega2560, ATmega32U4, ATTiny85 с частотой тактирования 16 или 8 МГц. Есть также платы на процессоре ARM Cortex M.

Порты Ардуино

Плата Arduino UNO R3

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

Как следует из названия, на цифровых пинах у нас цифровой сигнал. Они могут выдавать только два значения: логический ноль (0, LOW) и логическую единицу (1, HIGH).

Аналоговые – похожи на цифровые, с той разницей, что их основная цель – подключение аналоговых датчиков.

Для того чтобы использовать (передавать сигнал) через эти порты, нам следует в своей программе инициализировать их, используя функцию pinMode ( , ), где номер пина – это номер разъема, указанный на плате Arduino. Режим INPUT требуется для чтения данных, OUTPUT – для передачи. В случае, когда мы используем такие пины без предварительного указания pinMode, полученные значения могут быть ошибочными.

Цифровые и аналоговые пины – порты коммутации (подключения). ШИМ – порты управления. При необходимости изменять параметры работы радиоэлемента, следует подключать его к ШИМ. Если достаточно просто включать/выключать элемент схемы – можно использовать любой порт Arduino.

Другим и последним важным критерием портов платы Arduino, является их физическая составляющая. Следует помнить, что каждый пин: имеет напряжение на выходе 5В. Может дать максимальное количество тока 0.02А

Это небольшие критерии, о которых важно помнить, чтобы сэкономить множество времени.

Программирование

Чтобы освоить базу программирования для Ардуино новичку, нужно всего несколько часов, ибо в сети уже есть огромное количество видео уроков, тематических публикаций, заметок и статей на тему разработки для Ардуино. Основа — C++, дополненный простыми функциями управления вводами/выводами платы, и более въедливые пользователи смогут работать хоть в Visual Studio, хоть в Eclipse, или даже через командную строку.

Робот

Внешние устройства и платы-расширения

Практически Ардуино предоставляет огромные возможности для создания любых устройств, можно подключать датчики, замки, моторы, дисплеи, роутеры, да хоть чайники. Можно расширять изделие дополнительными платами — шилдами, например для работы с GPS, для соединения по локальной сети или интернету, для bluetooth, Wi-Fi и т. д. Особенно популярна Ардуино в робототехнике.

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

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

Дрон на Программируемый контроллере Ардуино

Почему так популярно использование Ардуино

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

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

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

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

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

Огромное количество всевозможной периферии: кнопки, датчики, светодиоды, ЖК-индикаторы, и другие органы взаимодействия с окружающим миром, доступны для работы с Ардуино.

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

Читайте также: