Анатомия интерактивного устройства 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Анатомия интерактивного устройства



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

Сенсоры и актюаторы

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

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

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

Мигание светодиодом

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

Ваша плата Arduino уже имеет установленный светодиод. Он обозначен "L". Вы также можете добавить свой собственный светодиод - подключите его как показано на рис. 4-2.

"К" обозначает катод (отрицательный вывод), или более короткий вывод; "А" обозначает анод (положительный вывод), более длинный вывод.

После того, как светоидод подключён, вам надо сказать плате Arduino что делать. Это делается кодом - списком команд, которые мы даём микроконтроллеру чтобы он делал то что мы хотим.

Рис. 4.2 Подключение светодиода к Arduino

 

 

Откройте папку, в которую вы поместили IDE Arduino на своём компьютере. Дважды щёлкните на значке Arduino для запуска, выберите "File" > "New". У вас запросят имя папки со скетчами: это место, где будет храниться скетч Arduino. Введите имя Blinking_LED и нажмите "ОК". Затем введите следующий текст (пример 1-4) в редакторе скетчей (в главном окне IDE Arduino). Вы также можете загрузить его со страницы www.makezine.com/ getstartedarduino. Он должен выглядеть как на рис. 4-3.

 

Пример 4-1. Мигающий светодиод

#define LED 13 // LED connected to

// digital pin 13

 

void setup()

{

pinMode(LED, OUTPUT); // sets the digital

 

// pin as output

}

 

void loop()

{

digitalWrite(LED, HIGH); // turns the LED on

delay(1000); // waits for a second

 

digitalWrite(LED, LOW); // turns the LED off

delay(1000); // waits for a second

}

 

Рис. 4-3. Среда разработки Arduino со скетчем

Теперь, когда ваш код находится в IDE, вам надо проверить его. Нажмите кнопку "Verify" (рис. 4-3 показывает где она находится); если всё верно, вы увидите внизу окна сообщение "Done compiling". Это сообщение говорит о том, что IDE Arduino оттранслировала ваш скетч в выполняемую программу, которая может быть запущена на плате, почти как.exe-файлы в Windows или файлы.app на Mac.

Теперь вы можете выгрузить скетч на плату: нажмите кнопку "Upload to I/O Board" (см. рис. 4-3). Произойдт перезапуск платы, который заставляет плату остановить выполнение кода и слушать инструкции по порту USB. IDE Arduino отправляет текущий скетч на плату, которая сохраняет его в своей памяти и в конце концов выполняет его.

Вы увидите несколько сообщений в чёрной области внизу экрана IDE, и прямо над этой областью вы увидите сообщение "Done uploading". Это означает, что процесс выгрузки успешно завершён. На плате установлено два светодиода, обозначенные " RX" и "TX"; они мигают всякий раз при отправке или получении байта платой. Во время выгрузки они мерцают.

Если вы не видите что светодиоды мерцают, или получаете сообщение об ошибке вместо "Done uploading", значит существует проблема связи между вашим компьютером и Arduino. Удостоверьтесь что выбран верный COM-порт в меню "Tools" > "Serial Port" (см. главу 3). Также проверьте пункт меню "Tools" > "Board" - в нём должна быть выбрана верная модель Arduino.

Если вы всё ещё испытываете проблемы, см. главу 7.

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

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

Далее я покажу вам, как понять скетч. Во-первых, Arduino выполняет код сверху вниз, так что первая строка сверху будет прочтена первой; затем движется вниз. Аналогия - ползунок текущей позиции в программе-видеоплейере (QuickTime Player или Windows Media Player), он движется слева направо, показывая ваше положение в фильме.

Передайте мне пармезан

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

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

Void setup()

Эта строка даёт имя блоку кода. Если вы пишете иструкцию плате для подачи пармезана, вам стоит написать

Void passTheParmesan()

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

passTheParmesan() в любом месте кода, Arduino выполнит эти инструкции и продолжит работу с того места, где прервалась.

Arduino не остановить

Arduino ожидает наличия двух функций - одна называется setup(), а вторая - loop().

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



Поделиться:


Последнее изменение этой страницы: 2016-06-29; просмотров: 207; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.145.173.112 (0.01 с.)