sonyps4.ru

Программирование микроконтроллерных плат arduino freeduino улли соммер.

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

Рассмотрено программирования микро-контроллерных плат Arduino/Freduino Описана структура и функционирование микроконтроллеров, среда программирования Arduino, необходимые инструменты и комплектующие для проведения экспериментов. Подробно рассмотрены основы программирования плат Arduino, структура программы, команды, операторы и функции, аналоговый и цифровой ввод/вывод данных.

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

Предисловие
Введение
Глава 1. Общие сведения о микроконтроллерах
Глава 2. Программирование микроконтроллеров
Глава 3. Краткий обзор семейства микроконтроллеров Arduino
Глава 4. Платы расширения Arduino
Глава 5. Комплектующие изделия
Глава 6. Электронные компоненты и их свойства
Глава 7. Предварительная подготовка
Глава 8. Среда разработки Arduino
Глава 9. Основы программирования Arduino
Глава 10. Дальнейшие эксперименты с Arduino
Глава 11. Шина 1 2 С
Глава 12. Arduino и температурный датчик LM75 с 1 2 С-шиной
Глава 13. Расширитель порта 1 2 С с PCF8574
Глава 14. Ультразвуковой датчик для определения дальности
Глава 15. Сопряжение платы Arduino с GPS
Глава 16. Сервопривод с платой Servo для Arduino
Глава 17. Жидкокристаллические дисплеи
ПРИЛОЖЕНИЯ

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

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

Содержание книги "Занимательная электроника"

Часть 1 . Основы основ

Глава 1. Чем отличается ток от напряжения?
Глава 2. Джентльменский набор
Глава 3. Хороший паяльник - половина успеха
Глава 4. Тригонометрическая электроника

Глава 5. Электроника без полупроводников
Глава 6. Изобретение, которое потрясло мир
Глава 7. Ошеломляющее разнообразие электронного мира

Часть 2. Аналоговые схемы

Глава 8. Звуковой усилитель без микросхем
Глава 9. Правильное питание - залог здоровья
Глава 10. Тяжеловесы
Глава 11. Слайсы, которые стали чипами
Глава 12. Самые универсальные
Глава 13. Как измерить температуру?

Часть 3. Цифровой век

Глава 14. На пороге цифрового века
Глава 15. Математическая электроника, или игра в квадратики
Глава 16. Устройства на логических схемах
Глава 17. Откуда берутся цифры

Часть 4. Микроконтроллеры

Глава 18. Начала микроэлектроники
Глава 19. Персональный компьютер вместо паяльника
Глава 20. Изобретаем велосипед
Глава 21. Основы arduino
Глава 22. Метеостанция на arduino

Приложения

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

Тщательно разобраны проекты с использованием контроллеров семейства Arduino. Это проекты и области робототехники, создания погодных метеостанций, "умного дома", вендинга, телевидения, Интернета, беспроводной связи (bluetooth, радиоуправление).

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

Во втором издании добавлены проекты голосового управления с помощью Arduino, работа с адресуемыми RGB-лентами, управление iRoboi Create на Arduino. Рассмотрены проекты с использованием платы Arduino Leonardo. Приведены пошаговые уроки для начинающих разработчиков.

ЧАСТЬ 1. ARDUINO - ОБЩИЙ ОБЗОР

Глава 1. Введение в Arduino
Глава 2. Обзор контроллеров семейства Arduino
Глава 3. Платы расширения Arduino

ЧАСТЬ 2. СРЕДА РАЗРАБОТКИ И ЯЗЫК ПРОГРАММИРОВАНИЯ КОНТРОЛЛЕРОВ ARDUINO

Глава 4. Среда программировании Arduino IDE
Глава 5. Программирование в Arduino

ЧАСТЬ 3. ПРАКТИЧЕСКОЕ ПРИМЕНЕНИЕ ARDUINO

Глава 6. Arduino и набор функций Serial
Глава 7. Arduino и знакосинтезирующие жидкокристаллические индикаторы
Глава 8. Библиотека EEPROM
Глава 9. Использование Arduino Leonardo в качестве USB-устройства
Глава 10. Arduino и 1-Wire
Глава 11. Arduino и цифровой датчик температуры DS18B20
Глава 12. Arduino идатчики температуры ивлажности DНТ
Глава 13.Сетевой обмен с помощью Arduino
Глава 14. Arduino и карта памяти SD
Глани 15. Arduino н светодиодные матрицы
Глава 16. Arduino и управляемые светодиодные ленты RGB
Глава 17. Работа Arduino с вендииговыми аппаратами
Глава 18. Arduino и радиочастотная идентификация (RFID)
Глава 19. Arduino и датчики расстояния
Глава 20. Arduino и передача данных в инфракрасном диапазоне
Глава 21. Создаем робота
Глава 22. Arduino и шаговые двигатели
Глава 23. Arduino и сервоприводы
Глава 24. Arduino н Bluetooth
Глава 25. TV-выход на Arduino
Глава 26. Arduino н радиоуправление
Глава 27. Arduino и беспроводной радномодуль NRF24L01
Глава 28. Работа Arduino с USB-устройствамн
Глани 29. Arduino и ROS
Глава 30. Голосовое управление

ПРИЛОЖЕНИЯ

Приложение 1. Список использованных источников
Приложение 2. Начальная школа
Приложение 3. Описание электронного архива

4. Делаем сенсоры. Проекты сенсорных устройств на базе Arduino и Raspberry Pi

В этой потрясающей книге более 440 страниц на которых вы найдете самые интересные и прикладные знания для проектирования "Умного дома" на Ардуино (Arduino).

Введение
Глава 1. Знакомство с Raspberry Pi
Глава 2. Знакомство с Arduino
Глава 3. Расстояние
Глава 4. Дым и rаз
Глава 5. Прикосновение
Глава 6. Движение
Глава 7. Свет
Глава 8. Ускорение
Глава 9. Идентификация
Глава 1О. Электричество и магнетизм
Глава 11. Звук
Глава 12. Поrода и климат
Приложение А. Краткий справочник по командам Linux в Raspberry Pi
Предметный указатеnь

The Arduino platform has become a de facto standard when talking about microcontrollers. With a wide range of different board models, it can cover a wide spectrum of projects, and its ease of use has made it the preferred platform for those starting out in the microcontroller world. If you are a hobbyist wanting to develop projects based on Arduino as its main microcontroller platform or an engineer interested in knowing what the Arduino platform offers, then this book is ideal for you.

If you have little or no previous experience in these kinds of tools, this book will help you get a complete view of the platform and the wide peripherals it has to offer by following a carefully designed set of project examples that cover the most important platform features.

Whether you have never written a line of code or you already know how to program in C, you will learn how to work with Arduino from the point of view of both hardware and software thanks to the easily understandable code that accompanies every project that has been developed exclusively with that premise in mind.

This will be easy for those who don"t have previous experience in programming. This book was written with the aim to present the Arduino platform to all those wanting to work with Arduino but without any great knowledge of the microcontrollers scene.

It will gradually develop a wide set of projects that have been designed to cover the most important aspects of the Arduino platform, from the use of digital and analog inputs and outputs to harnessing the power of interrupts.

Table of Contents

Preface
Chapter 1: Meeting the Arduino Family
Chapter 2: The Arduino Development Environment
Chapter 3: Interacting with the Environment the Digital Way
Chapter 4: Controlling Outputs Softly with Analog Outputs
Chapter 5: Sensing the Real World through Digital Inputs
Chapter 6: Analog Inputs to Feel Between All and Nothing
Chapter 7: Managing the Time Domain
Chapter 8: Communicating with Others
Chapter 9: Dealing with Interrupts
Chapter 10: Arduino in a Real Case – Greenhouse Control
Index


Во втором издании рассмотрена русскоязычная версия Arduino IDE, добавлена информация об особенностях использования кириллических символов, а...

Читать полностью

Рассмотрено программирование микроконтроллерных плат Arduino/Genuino/Free­duino. Описана структура и функционирование микроконтроллеров, среда программирования Arduino, необходимые инструменты и комплектующие для проведения экспериментов. Подробно рассмотрены основы программирования плат Arduino: структура программы, команды, операторы и функции, аналоговый и цифровой ввод/вывод данных. Изложение материала сопровождается более 80 примерами по разработке различных устройств: реле температуры, школьных часов, цифрового вольтметра, сигнализации с датчиком перемещения, выключателя уличного освещения и др. Для каждого проекта приведен перечень необходимых компонентов, монтажная схема и листинги программ. На сайте издательства находятся исходные коды примеров из книги, технические описания, справочные данные, среда разработки, утилиты и драйверы.
Во втором издании рассмотрена русскоязычная версия Arduino IDE, добавлена информация об особенностях использования кириллических символов, а также исправлены опечатки в программном коде.
В книге рассмотрены:
- Общие сведения о микроконтроллерах
- Программирование микроконтроллера на платах Arduino/Genuino/Freeduino/
- Разработка и тестирование собственных приложений
- Более 80 практических проектов: настройка и применение микросхемы-адаптера FT232RL, задержка включения и выключения, реле температуры, измеритель емкости, школьные часы, 6-канальный цифровой вольтметр, управление вентилятором, обмен данными между компьютером и платой Arduino, сенсорный датчик, запись данных с помощью программы построения графиков Stamp PLOT, цифровой осциллограф с памятью, сигнализация с датчиком перемещения, выключатель уличного освещения, свет свечи, музыкальный проигрыватель, графопостроитель, последовательный ввод/вывод данных, эксперименты с ЖК-дисплеями и многое другое.



Рассмотрено программирования микроконтроллерных плат Arduino/Freduino. Описана структура и функционирование микроконтроллеров, среда программирования Arduino, необходимые инструменты и комплектующие для проведения экспериментов. Подробно рассмотрены основы программирования плат Arduino: структура программы, команды, операторы и функции, аналоговый и цифровой ввод/вывод данных. Изложение материала сопровождается более 80 примерами по разработке различных устройств: реле температуры, школьных часов, цифрового вольтметра, сигнализации с датчиком перемещения, выключателя уличного освещения и др. Для каждого проекта приведен перечень необходимых компонентов, монтажная схема и листинги программ.
На FTP-сервере издательства выложены исходные коды примеров из книги, технические описания, справочные данные, среда разработки, утилиты и драйверы.

Платы Arduino с возможностями USB-хоста

Некоторые платы Arduino обладают возможностями USB-хоста, что позволяет подсоединить к ним традиционные USB-устройства (клавиатуры, мыши, телефоны на базе Android). Естественно, для поддержки этих устройств потребуются дополнительные драйверы. Например, нельзя просто так соединить веб-камеру с Arduino Due и сразу же ожидать получения фотографий. Arduino Due поддерживает класс USB Host, что позволяет подключить к USB-порту клавиатуру или мышь. Arduino Mega ADK поддерживает протокол Android Open Accessory Protocol (AOA), что упрощает обмен данными между Arduino и устройством на базе Android. Прежде всего, это нужно для управления вводом-выводом Arduino из приложения, работающего на устройствах на базе Android.

Опрос Arduino с компьютера

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

В отличие от некоторых других терминальных программ, монитор последовательного порта Arduino IDE при нажатии клавиши или кнопки Отправить посылает всю командную строку. Другие последовательные терминалы, например Putty, посылают символы сразу после их ввода.

Чтение информации из компьютера или другого последовательного устройства

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

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

Плата Arduino в качестве транслятора данных

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

Создаем компьютерное приложение

В конце концов, вам надоест “общение” с платой Arduino через монитор последовательного порта Arduino IDE. Гораздо удобнее работать с приложением, написанным на каком-либо языке программирования, имеющем библиотеки для обмена по последовательному порту. Вы можете использовать ваш любимый язык программирования для написания программы, которая посылает последовательные команды к плате Arduino и получает данные, передаваемые от Arduino к компьютеру.

В этой книге выбран язык программирования Processing, потому что он очень похож на язык Arduino, с которым вы уже знакомы. На самом деле, язык программирования Arduino основан на Processing! Другие популярные языки программирования, для которых существуют обширные библиотеки для работы с последовательным портом, - Python, РНР, Visual Basic, С и т. п. Сначала выясним, как читать передаваемые последовательные данные в Processing, а затем узнаем, как с его помощью создать простой графический интерфейс пользователя (GUI) для отправки команд на плату Arduino.

Интерфейс Processing

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

На днях я стал обладателем недавно вышедшей на русском языке книги «Программирование микроконтроллерных плат Arduino/Freeduino». Как один из первых покупателей спешу поведать сообществу, что я в ней увидел.

Выходные данные

Оригинальное название: Arduino: Mikrocontroller-Programmiering mit Arduino/Freeduino, 978-3-6456-5064-9, 2010 г.
Автор: Улли Соммер
Переводчик: Виктор Букирев
Издательство: БХВ-Петербург
ISBN 978-5-9775-0727-1; 2012 г. (?!)

Первая половина книги посвящена основам работы с Arduino. Отдельно я остановлюсь на следующих главах:
Глава 3. Дается обзор семейства Arduino. Увы он уже устарел года на два. Приведенные в книге Duemilanove и Mega уже не выпускаются. Новый Uno же не упоминается, т.к. на момент написания книги он еще не вышел.
Глава 4. Популярные платы расширения. Описывается 6 плат, к сожалению, очень кратко и скучно. Тем более, что интересных плат гораздо больше. Далее в скетчах эти платы все равно не используются.
Глава 6. Электронные компоненты и их свойства. Очень поверхностно и кратко. Изучить для чего нужен тот или иной элемент по этой главе нельзя.
Глава 9. Основы программирования. Тут объяснения достаточно толковые и подробные. Хотя, конечно, описываются не все возможности языка, для начинающих будет в самый раз.

Вторая половина книги содержит готовые примеры работы. В отдельные главы выделена работа с I 2 C, GPS, сервоприводами и ЖКИ.
Не ведитесь на надпись на обложке «Более 80 практических проектов». В книге их штук 30. Число 80, наверное, означает количество листингов.
Большинство примеров я бы назвал достаточно скучными, слишком простыми и оторванными от жизни. Например, «10.12 Часы реального времени» на самом деле просто используют внутренний таймер Arduino. А «Автомат уличного освещения» в зависимости от освещенности зажигает или гасит светодиод на pin 13. Что этим можно осветить я не знаю:) Сопряжение с компьютером тоже описано очень слабо.
Более или менее нормально расписана работа с ЖКИ. А вот в сектче с GPS даже не объясняется, что эта программа делает.

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

Трудности перевода

Большим недостатком книги (для меня) является то, что не были переведены надписи с немецкого на скриншотах и некоторых схемах. В коде переведены только немногочисленные комментарии, а все переменные и выводимые сообщения остались на языке оригинала.
Я не вижу в этом ничего страшного, когда книга является переводом с английского, который все программисты знают. Но названия переменных на немецком переваривать весьма трудно, когда по-немецки знаешь только «хенде хох» и «их либе компьютершпилен унд програмирен»:)
Зачем издательство вообще взяло именно немецкую книгу, когда уже выпущено несколько на английском?

Выводы

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

СПб.: БХВ-Петербург, 2012. — 256 с. — (Электроника). — ISBN978-5-9775-0727-1.Рассмотрено программирования микроконтроллерных плат Arduino/Freduino. Описана структура и функционирование микроконтроллеров, среда программирования Arduino, необходимые инструменты и комплектующие для проведения экспериментов. Подробно рассмотрены основы программирования плат Arduino: структура программы, команды, операторы и функции, аналоговый и цифровой ввод/вывод данных. Изложение материала сопровождается более 80 примерами по разработке различных устройств: реле температуры, школьных часов, цифрового вольтметра, сигнализации с датчиком перемещения, выключателя уличного освещения и др. Для каждого проекта приведен перечень необходимых компонентов, монтажная схема и листинги программ.
На FTP-сервере (в книге есть линк) издательства выложены исходные коды примеров из книги, технические описания, справочные данные, среда разработки, утилиты и драйверы.Arduino — это простая для освоения платформа с открытым кодом на основе встроенного микроконтроллера и среды разработки с программным интерфейсом API для микроконтроллеров. Для взаимодействия между человеком и микроконтроллером могут присоединяться различные аналоговые и цифровые датчики, которые регистрируют состояние окружающей среды и передают данные в микроконтроллер. Микроконтроллер обрабатывает входящие данные, а программа выдает новые данные в виде аналоговых или цифровых значений. В результате открываются широкие горизонты для творчества.
В распоряжении разработчика предоставлены готовые программы и библиотеки функций среды программирования Arduino. Комбинируя аппаратные и программные средства, вы сможете с помощью этой книги связать наш реальный мир с миром микроконтроллера, который состоит из битов и байтов.Общие сведения о микроконтроллерах
Структура и принцип работы контроллера
Внешние устройства
Сравнение технологий RISC и CISCПрограммирование микроконтроллеров
Что такое программа?
Программирование на СКраткий обзор семейства микроконтроллеров Arduino
Плата Arduino Mega
Плата Arduino Duemilanove
Плата Arduino Mini
Плата Arduino Nano
Плата Arduino Pro Mini
Плата Arduino Pro
Плата LilyPad
USB-адаптерПлаты расширения Arduino
Плата расширения Arduino ProtoShield
Плата расширения Ardumoto
Плата расширения TellyMate
Плата расширения ArduPilot
Модули XBeeZNet
Плата расширения EthernetКомплектующие изделия
Список основных комплектующих
Список деталей для дополнительных экспериментов
Экспериментальная плата Freeduino
Экспериментальная плата микроконтроллера Freeduino
Электропитание
Кнопка Reset
ISP-подключение
Замечания по технике безопасностиЭлектронные компоненты и их свойства
Светодиоды
Резисторы
Конденсаторы
Транзисторы
Диод
Акустический пьезопреобразователь ("пищалка")
Монтажный провод
Кнопка
Потенциометр
Фоторезистор
Монтажная панель с контактными гнездамиПредварительная подготовка
Установка драйвера
Вспомогательная программа MProg для FT232RL
Программирование микросхемы FT232R с помощью MProg
Установка программного обеспечения ArduinoСреда разработки Arduino
Установки в Arduino-IDE
Наша первая программа "ES_Blinkt"
Что мы сделали?Основы программирования Arduino
Биты и байты
Базовая структура программы
Структура программы Arduino
Первая программа с Arduino
Команды Arduino и их применение
Некоторые специальные функцииДальнейшие эксперименты с Arduino
Регулятор уровня яркости светодиода с транзистором
Плавное мигание
Подавление дребезга контактов кнопок
Задержка включения
Задержка выключения
Светодиоды и Arduino
Подключение больших нагрузок
ЦАП на основе ШИМ-порта
С музыкой все веселей
Романтичный свет свечи с помощью микроконтроллера
Контроль персонала на проходной
Часы реального времени
Программа школьных часов
Управление вентилятором
Автомат уличного освещения
Сигнализация
Кодовый замок
Измеритель емкости с автоматическим выбором диапазона
Профессиональное считывание сопротивления потенциометра
Сенсорный датчик
Конечный автомат
6-канальный вольтметр на основе Arduino
Программирование самописца напряжения
Осциллограф с памятью на основе Arduino
Программа StampPlot — бесплатный профессиональный регистратор данных
Управление через VB.NET
Реле температурыШина I2С
Передача бита
Состояние "СТАРТ"
Состояние "СТОП"
Передача байта
Подтверждение
Адресация
7-битовая адресация
Arduino и температурный датчик LM75 с I2С-шиной
Расширитель порта I2С с PCF8574Ультразвуковой датчик для определения дальности
Ультразвуковой датчик SRF02
Считывание данныхСопряжение платы Arduino с GPS
Сколько требуется спутников?
Как подключить GPS к Arduino?
GPS-протоколСервопривод с платой Servo для Arduino
Как функционирует сервопривод?
Подключение привода к ArduinoЖидкокристаллические дисплеи
Поляризация дисплеев
Статическое управление и мультиплексный режим
Угол обзора
Отражающие, пропускающие и полупрозрачные ЖКИ
Установка контрастности дисплея
Набор отображаемых символов
Расположение выводов распространенных ЖКИ
Управление дисплеем от микроконтроллера
Инициализация дисплеев
Подключение дисплея к Arduino
Первый эксперимент с ЖКИ
Как же все работает?Приложения
Соответствие выводов Arduino и ATmega
Escape-последовательности
Таблица ASCII
Перечень фирм-поставщиков компонентов
Описание компакт-диска
Предметный указатель



Загрузка...