Публикация материалов

Темы исследований

Это интересно!

Наш баннер

Мы будем благодарны, если Вы установите наш баннер!
Баннер нашего сайта
Код баннера:
<a href="http://obuchonok.ru/" target="_blank"> <img src="http://obuchonok.ru/banners/banob2.gif" width="88" height="31" alt="Обучонок. Обучающие программы и исследовательские работы учащихся"></a>
Все баннеры...

1.2. Типы аппаратных вычислительных платформ

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


Рассмотрим самые популярные из них: Arduino — торговая марка аппаратно-программных средств для построения простых систем автоматики и робототехники, ориентированная на непрофессиональных пользователей.

Платформа Arduino для "умного дома"

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

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

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

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

С 2008 года в компании-разработчике начался раскол, выразившийся в существовании двух независимых ветвей развития и продаж под одной торговой маркой: одна на сайте arduino.cc, другая на arduino.org.

Докризисные изделия на обоих сайтах продаются под одинаковыми названиями. Набор новых изделий на сайтах различается.

Также существует две ветви Arduino IDE, поддерживающие разный набор плат и библиотек. Одинаковые названия и пересекающиеся номера версий IDE вносят путаницу. Тем не менее, говоря об Ардуино, обычно подразумевают первоначальную ветвь проекта на сайте arduino.cc.

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


Язык программирования Arduino является стандартным C++ (используется компилятор AVR-GCC) с некоторыми особенностями, облегчающими новичкам написание первой работающей программы.

  • Программы, написанные программистом Arduino называются наброски (или иногда скетчи — варваризм от англ. sketch) и сохраняются в файлах с расширением ino. Эти файлы перед компиляцией обрабатываются препроцессором Ардуино. Также существует возможность создавать и подключать к проекту стандартные файлы C++.
  • Обязательную в C++ функцию main() препроцессор Arduino создает сам, вставляя туда необходимые «черновые» действия.
  • Программист должен написать две обязательные для Arduino функции setup() и loop(). Первая вызывается однократно при старте, вторая выполняется в бесконечном цикле.
  • В текст своей программы (скетча) программист не обязан вставлять заголовочные файлы используемых стандартных библиотек. Эти заголовочные файлы добавит препроцессор Arduino в соответствии с конфигурацией проекта. Однако пользовательские библиотеки нужно указывать.
  • Менеджер проекта Arduino IDE имеет нестандартный механизм добавления библиотек. Библиотеки в виде исходных текстов на стандартном C++ добавляются в специальную папку в рабочем каталоге IDE. При этом название библиотеки добавляется в список библиотек в меню IDE. Программист отмечает нужные библиотеки и они вносятся в список компиляции.
  • Arduino IDE не предлагает никаких настроек компилятора и минимизирует другие настройки, что упрощает начало работы для новичков и уменьшает риск возникновения проблем.
  • Простейшая Arduino-программа состоит из двух функций:
    - setup(): функция вызывается однократно при старте микроконтроллера;
    - loop(): функция вызывается после setup () в бесконечном цикле все время работы микроконтроллера;

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

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

Самыми популярными в линейке Arduino являются следующие платы (внешний вид данных плат можно увидеть в Приложении 1).

Рис. 1. Arduino PRO MINI

Плата Arduino PRO MINI

Рис. 2. Arduino UNO

Плата Arduino UNO

Рис. 3. Arduino MEGA

Плата Arduino MEGA

Таблица 1. Сравнение характеристик плат Arduino

Модель Arduino pro mini Arduino UNO Arduino MEGA
Размер l, b мм 18×33 69×53 101,6 × 53
Микроконтроллер ATmega168 ATmega328 ATmega1280
Рабочее напряжение 5 В
Входное напряжение 5-12 В 7-12В 7-12B
Цифровые
Входы/Выходы
14 14 54
Аналоговые входы 6 6 16
Постоянный ток
через вход/выход
40 мА 40 мА 40 мА
Флеш-память 16 Кб 32 Кб 128 Кб
ОЗУ 1 Кб 2 Кб 8 Кб
EEPROM 512 байт 1 Кб 4 Кб
Тактовая частота 16 МГц 16 МГц 16 МГц



Таблица 2. Сравнение цены платформ Arduino

Arduino PRO MINI Arduino UNO Arduino MEGA
Официальная плата 1390 руб [2] 2990 руб 3990 руб
Xduino аналоги 590 руб 990 руб 1530 руб
Аналоги китайского
производства
80 руб 180 руб 400 руб


[2] Все цены указаны с учетом курса доллара 59,76 руб. и округлены в большую сторону.

Перейти к разделу: 1.3. Модули

Объявления

Партнеры и статистика