Ремонт, сервис, услуги » Информация » Книга «Изучаем Arduino. 65 проектов своими руками. 2-е издание»




Книга «Изучаем Arduino. 65 проектов своими руками. 2-е издание»

Автор: addministr от 11-05-2022, 13:00

Категория: Информация



Книга «Изучаем Arduino. 65 проектов своими руками. 2-е издание»

Привет, Хаброжители! Что такое Arduino? За этим словом прячется легкое и простое устройство, которое способно превратить кучу проводов и плат в робота, управлять умным домом и многое другое. Разнообразие устройств ввода/вывода — датчиков, индикаторов, дисплеев и электромоторов — позволяет создавать самые невероятные проекты. Второе издание этой книги было полностью переработано, ведь технологии не стоят на месте. Познакомившись с основами Arduino, вы сможете экспериментировать с сенсорными экранами и жидкокристаллическими дисплеями, займетесь робототехникой, освоите работу с датчиками и беспроводной передачей данных и научитесь дистанционно управлять устройствами с помощью телефона. В мире продано уже более 35000 экземпляров этой книги.

www.airspayce.com/mikem/arduino/VirtualWire, как описывалось в главе 7. Вместе с библиотекой в архиве с примерами для этой книги есть и скетч. Архив доступен по адресу nostarch.com/arduino-workshop-2nd-edition. После установки можно переходить к следующему разделу.



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


Проект 46: пульт дистанционного управления



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



Оборудование для передатчика



Для сборки передатчика нужно следующее оборудование:

-плата Arduino и кабель USB;

-контейнер для батарей AA и кабель с разъемом (использовались в главе 14);

-один модуль передатчика, работающий в радиодиапазоне 433 МГц;

-два резистора номиналом 10 кОм (R1 и R2);

-два конденсатора емкостью 100 нФ (C1 и C2);

-две кнопки без фиксации;

-одна макетная плата.



Схема передатчика



На схеме передатчика есть две кнопки без фиксации с фильтром против дребезга контактов, подключенные к цифровым контактам 2 и 3, и модуль передатчика, подключенный, как описывалось выше (рис. 16.4).





Оборудование для приемника



Для сборки приемника нужно следующее оборудование:

-плата Arduino и кабель USB;

-контейнер для батарей AA и кабель с разъемом (использовались в главе 14);

-один модуль приемника, работающий в радиодиапазоне 433 МГц;

-одна макетная плата;

-два светодиода по вашему выбору;

-два резистора номиналом 560 Ом (R1 и R2).



Схема приемника



Схема приемника содержит два светодиода, подключенных к цифровым контактам 6 и 7. Контакт DATA модуля приемника подключен к цифровому контакту 8, как на рис. 16.5.





Вы можете заменить макетную плату, светодиоды, резисторы и модуль приемника экраном приемника Freetronics 433 МГц от компании Freetronics (рис. 16.6).





Скетч передатчика

Теперь рассмотрим скетч передатчика. Введите и загрузите следующий скетч в плату Arduino с подключенным модулем передатчика:






Работа с модулями радиосвязи в скетчах осуществляется функциями 3 из библио-

теки VirtualWire 1. В 4 выбирается цифровой вывод 8, который будет использоваться для обмена данными между Arduino и модулем передатчика, и устанавливается скорость передачи (вы можете использовать любой другой цифровой вывод, кроме 0 и 1, которые соединены с последовательным портом).



Скетч передатчика читает состояния двух кнопок, подключенных к цифровым контактам 2 и 3, и посылает в модуль радиосвязи один текстовый символ, соответствующий этим состояниям. Например, когда нажимается кнопка, подключенная к цифровому контакту 2, на нем устанавливается уровень HIGH и Arduino посылает символ a, а когда кнопка отпускается — b. Когда нажимается кнопка, подключенная к цифровому контакту 3, на нем устанавливается уровень HIGH и Arduino посылает символ c, а когда кнопка отпускается — d. Все четыре возможных состояния определяются начиная со строки 2.



Передача символа выполняется в одной из четырех инструкций if, начиная с 5. К примеру, в инструкции if-then 6. Переменная для передачи используется дважды — например, on2, как показано ниже:





vw_send((uint8_t *)on2, strlen(on2));



Функция vw_send посылает содержимое переменной on2, но ей нужно знать размер этого содержимого в символах. Он определяется вызовом функции strlen().



Скетч приемника



Теперь добавим скетч приемника. Введите и загрузите следующий скетч в Arduino с подключенным модулем приемника:





Как и в скетче передатчика, здесь используются функции из библиотеки VirtualWire для настройки модуля приемника 1 и установки скорости приема данных. В 2 настраивается цифровой вывод на плате Arduino, через который будут приниматься входящие данные (контакт 8).



Во время работы скетча модуль приемника принимает символы от передатчика и посылает в Arduino. Вызовом функции vw_get_message() 3 скетч извлекает символы, полученные платой, и интерпретирует их с помощью инструкции switch-case 4. Например, нажатие кнопки S1 на передатчике вызовет отправку символа a. После получения символа приемник установит уровень HIGH на цифровом выходе 6 и включит светодиод.



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



Более подробно с книгой можно ознакомиться на сайте издательства

» Оглавление

» Отрывок



По факту оплаты бумажной версии книги на e-mail высылается электронная книга.



Для Хаброжителей скидка 30% по купону — Arduino

 

Источник: https://habr.com/ru/company/piter/blog/664416/





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

Архив | Связь с админом | Конфиденциальность

RSS канал новостей     Яндекс.Метрика