Универсальный внешний накопитель для всех iOS-устройств, совместим с PC/Mac, Android
Header Banner
8 800 100 5771 | +7 495 540 4266
c 9:00 до 24:00 пн-пт | c 10:00 до 18:00 сб
0 Comments

Содержание

Уроки Arduino. О платформе | AlexGyver Technologies

О платформе


Что же такое Arduino? Формально это – торговая марка, под которой выпускаются официальные платы и софт. Название Ардуино идёт от одноименного названия рюмочной в Италии, где создатели платформы любили пропустить по рюмочке. Предлагаемая Arduino платформа включает в себя железо (сами платы) и софт (среда разработки).

Семейство Ардуино – несколько моделей так называемых отладочных плат. Отладочная плата представляет собой как ни странно печатную плату, в сердце которой стоит микроконтроллер – та самая штука, которую мы будем программировать. Микроконтроллер это микросхема, содержащая в себе микропроцессор, интерфейсы ввода-вывода, память (оперативную и постоянную), таймеры и другие штуки. Да, микропроцессор – это другое, микропроцессор по сути может только выполнять вычисления (как процессор в компьютере), а микроконтроллер – это практически полноценный компьютер, размещенный в одном кристалле микросхемы. В большинстве плат Arduino используются микроконтроллеры серии ATmega от производителя AVR.

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

Железо


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

Arduino “на минималках”: кварц, конденсаторы и прочее

Давайте так: что нужно сделать для того, чтобы собрать устройство на микроконтроллере? Нужно подключить к выходам микроконтроллера необходимые устройства (далее – “железо”), загрузить на микроконтроллер прошивку, которая будет управлять этим железом, и обеспечить всё это дело стабильным питанием. Цель разработчиков ардуино была совместить вышеуказанное с простотой и удобством работы и модульностью, тем самым превратив разработку электронных устройств в мощный универсальный конструктор. Эта цель была достигнута так: на плате, вместе с микроконтроллером, разместили “программатор” для загрузки прошивки, usb порт и стабилизатор питания, позволяющий питать плату от широкого диапазона постоянных напряжений: 5-19 вольт. Микроконтроллеру нужно 5 вольт, что стабилизатор ему и обеспечивает.

Загрузка прошивки


USBasp – ISP программатор для AVR (в том числе Arduino)

Что касается так называемого программатора: изначально способом загрузки прошивки в микроконтроллер является загрузка посредством ISP (in-system programming) программатора, который загружает прошивку напрямую в память микроконтроллера. Это способ хорош и надёжен, но он дороже и не такой универсальный как тот, который используется в Ардуино. Работает это так: вместо ISP программатора на плате стоит USB-TTL преобразователь, который позволяет Ардуино (на её стороне TTL – транзистор-транзистор логика) буквально общаться с компьютером (на его стороне – USB) и обмениваться данными. Но просто общаясь с компьютером загрузить прошивку не получится, поэтому в памяти микроконтроллера “живёт” загрузчик (он же bootloader), который умеет ловить данные, идущие с компьютера и загружать их во Flash память микроконтроллера. При каждом запуске микроконтроллера загрузчик ждёт команду от компьютера, мол желает ли тот загрузить новую прошивку. Если никто ему не отвечает какое-то время, он запускает уже имеющуюся в памяти МК прошивку. Отсюда вытекает несколько минусов:

  • Загрузчик сидит во Flash памяти и занимает место (около 6%, что довольно-таки много)
  • При подаче питания на МК прошивка стартует не сразу, каждый раз загрузчик ждёт команду от компьютера в течение какого-то времени (пару секунд), прежде чем передать управление имеющейся в памяти программе.

Оба этих минуса решаются частично или полностью:

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

Возвращаясь к USB-TTL преобразователю: почему именно такой способ загрузки прошивки выбрали разработчики Arduino? Да всё очень просто: микросхема USB-TTL преобразователя стоит дешевле микросхем, могущих в ISP (роль оных обычно выполняют микроконтроллеры), что прилично удешевляет платформу. Но самое главное – использование USB-TTL преобразователя добавляет нам возможность общаться с платой при помощи компьютера (смартфона, планшета) без использования дополнительного железа, т.е. мы можем как управлять какими-то устройствами (если это заложено в коде прошивки), так и получать от Ардуино данные, например показания с датчиков. Но самое-самое главное – это позволяет отлаживать код, вручную, но все таки отлаживать.

Софт


Что касается программной части, предоставленной Arduino, то это Arduino IDE (Integrated Development Environment – интегрированная среда разработки), включающая в себя редактор кода, компилятор и всё остальное необходимое для загрузки прошивки в плату. Подробнее о ней поговорим в отдельном уроке.

Модели Ардуино


Платы Arduino

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

Arduino – зарегистрированная торговая марка, и свою плату вам придется назвать как-то по-другому, отсюда и появились всякие Искры, Бузины и прочие так называемые Arduino совместимые платы.
Разновидностей плат очень много, но используют они одни и те же модели микроконтроллеров. От модели микроконтроллера зависит объем памяти и количество ног, ну и есть некоторые специальные фишки. На большинстве моделей Arduino стоят 8-битные МК от AVR с кварцевым генератором на 16 МГц (либо ниже), то есть по производительности платы на ATmega не отличаются, отличаются только объемом памяти, количеством ног и интерфейсов/таймеров. Модели Ардуино с МК от производителя ARM, например Arduino DUE, в разы мощнее своих собратьев за счёт 32-битного процессора, но это совсем другая история.

Параметр ATtiny85 ATmega328 ATmega32u4 ATmega2560
Кол-во ног 8 32 44 100
Из них доступны 5 23 24 86
Flash память 8 Kb 32 Kb 32 Kb 256 Kb
EEPROM память 512 bytes 1 Kb 1 Kb 4 Kb
SRAM память 512 bytes 2 Kb 2.5 kB 8 Kb
Каналов АЦП 3 (4 с rst) 6 (8 в SMD корпусе) 12 16
Каналов PWM 3 6 7 15
Таймеры 2х 8bit 2х 8bit 2х 8bit 2х 8bit
    1х 16bit 2х 16bit 4х 16bit
Serial интерфейс Нет х1 х1 х4
I2C интерфейс Нет Да Да Да
Прерывания 1 (6 PCINT) 2 (23 PCINT) 5 (44 PCINT) 8 (32 PCINT)
Платы на его основе Digispark, LilyTiny Uno, Nano, Pro Mini, Lilypad, Strong Leonardo, Micro, Pro Micro, BS Micro Mega, Mega Pro

Таким образом вы должны сразу понять, что, например, Ардуино Уно=Нано=Про Мини=Лилипад по своим возможностям и взаимозаменяемости. Или Леонардо=Про Микро. Ссылки на недорогие китайские Ардуины вы можете найти у меня на сайте. Точно там же вы найдёте ссылки на кучу датчиков, модулей и другого железа, которое можно подключить к Arduino. О возможностях ардуино по работе с другими железками поговорим в одном из следующих уроках.

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


Код. Ничего лишнего

Ардуино программируется на языке программирования C (C++) с соответствующим ему синтаксисом. Встроенный сборщик, препроцессор и компилятор (avr-gcc или Win-AVR) прощают большое количество ошибок и делает многое за пользователя автоматически, мы даже об этом не знаем и не задумываемся. Куча базовых функций для управления выводами микроконтроллера, математика и некоторые другие функции/макросы взяты из открытого фреймворка для работы с микроконтроллерами под названием Wiring. Именно из него примерно на 80% состоит базовый набор инструментов (функций) Ардуино. В связи с этим сами разработчики Ардуино называют язык “упрощённым c++”, и даже дали ему отдельное название – Arduino Wiring.

Если вы научитесь свободно прогать на ардуино, и вдруг перейдете к разработке программ на том же C++ в более взрослых средах разработки, вы будете неприятно удивлены тем количеством дополнительного кода, который придется писать руками. И наоборот, если умеющий в плюсы (си-плюс-плюсы) человек посмотрит на типичный ардуино-код, он скажет “да как это вообще работает то?”. Действительно, как это работает? При компиляции кода создаётся отдельный файл, в котором содержится ваш код, дополненный необходимыми настройками и с некоторыми подключенными библиотеками. Во взрослом мире без ардуино-плюшек, если вы, например, хотите использовать вывод в порт, используете в коде работу со строками и математические операции – вам нужно вручную подключать соответствующие модули. Среда Arduino делает это автоматически, мы даже об этом не знаем. Также компиляция кода проходит в несколько этапов, что позволяет например использовать функцию до её объявления. Но об этом поговорим позже.

Сейчас вернёмся к такому понятию, как библиотека. Жизнь рядового ардуинщика неразрывно связана с библиотеками, потому что огромное комьюнити за годы своего существования сделало огромное количество этих самых библиотек на все случаи жизни и для всех продающихся датчиков и модулей. Библиотека это набор файлов, в которых содержится дополнительный код, которым мы можем пользоваться просто ознакомившись с документацией или посмотрев примеры. Такой подход называется “черным ящиком”, мы можем даже не догадываться, какой ужас и кошмар (в плане сложности кода) содержится в библиотеке, но с лёгкостью пользоваться возможностями, который этот код даёт. Купили модуль – нашли библиотеку – открыли пример – всё, результат достигнут…

Холивар


Личинка программиста

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

В среде Ардуино работа с микроконтроллером упрощена настолько, что ардуинщику вообще ничего не нужно знать о его архитектуре и о том, как он вообще программируется и настраивается. Все сделано в виде готовых и понятных функций. Это всё конечно хорошо, но скрытый за ширмой дружелюбного “Ардуино Вайринга” код прошивки ужасает: за безобидными на первый взгляд функциями кроются полотна кода, который что-то проверят, перепроверяет, перенастраивает уже настроенное и делает многие другие на первый взгляд ненужные вещи. Зачем это? Упростить начинающему программисту работу, простить все его ошибки и заставить его код просто работать. Стандартные функции очень медленные и не раскрывают всех возможностей микроконтроллера, вы даже не представляете, сколько всего там можно настроить и покрутить.

Второй повод для ненависти, это качество кода. Из-за простых, но понятных стандартных примеров аудитория ардуинщиков выросла очень быстро и буквально завалила интернет своими проектами, завлекая тем самым в это хобби других новичков. 99% учебных примеров, примеров работы с библиотеками и модулями написаны простенько и ужасно не оптимально: int переменные для всего подряд, вездесущий delay, блокирующие циклы и прочее, помимо уже описанных ардуино-функций. Люди берут эти примеры как основу основ и так сами и продолжают дальше писать. Но эти люди стоят на пороге очень большой двери под названием робототехника. Перешагнув через этот порог, отбросив все кривые примеры и научившись грамотно выстраивать структуру кода, они попадают в мир безграничных возможностей для творчества и исследования, мир бесконечно интересных и разнообразных проектов на Arduino.

 

Видео версия


Важные страницы


Уроки Ардуино. Начало работы | AlexGyver Technologies

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

Для работы с Ардуино нам понадобится компьютер (смартфон), юсб data-кабель и некоторый софт.

Компьютер с OS Windows версии 7 и выше. На ХР и ниже новые версии Arduino IDE либо не работают, либо сыпят ошибками. MacOS и Linux-подобные оси тоже подходят, так как среда разработки Arduino IDE – кроссплатформенная. Также программировать ардуино можно с планшета или даже смартфона под управлением Андроид при помощи официального приложения, соответственно смартфон/планшет должен иметь поддержку OTG (подключение и работа с внешними устройствами через usb порт). Но сразу скажу – это большое извращение =)

USB кабель должен быть именно data-кабелем, по такому кабелю передаются данные (например каким подключается к компьютеру смартфон/фотоаппарат/плеер). Есть три типа USB штекера, которые используются на платах Ардуино: mini-USB (Arduino Nano), micro-USB (Arduino micro) и USB type B (Arduino UNO, MEGA). Кабель можно купить у китайцев, иногда он идёт в комплекте с платой, можно в наших магазинах, либо просто поискать на полке. Лично у меня целый букет юсб кабелей от старых смартфонов, плееров и фотиков.

Программы:

  • Среда разработки Arduino IDE, качаем с официального сайта и устанавливаем, попутно соглашаясь на установку всех драйверов.
  • Пакет JRE (Java). Так как IDE написана на Java, для её работы требуется пакет Java. Также качаем свежую версию с официального сайта и устанавливаем.
  • Дополнительно: notepad++ для комфортной работы с текстовыми файлами (библиотек или прошивок). Официальный сайт.

Драйвера: оригинальные платы от Arduino используют USB контроллер производства FTDI, драйвера на него идут в комплекте с Arduino IDE. Если вы используете китайские платы (а я надеюсь у вас хватает ума не переплачивать за другие), то вам понадобится дополнительный драйвер на китайский USB-TTL контроллер, который они ставят на свои платы. Называется он Ch440 (Ch441), является производимым в Китае дешёвым аналогом дорогого шведского FTDI чипа. Драйвера можно скачать по прямой ссылке с сайта, есть запасной архив на Яндекс.диске, или поискать в Гугле.

После установки и настройки всего необходимого можно попробовать прошить плату. Запускаем Arduino IDE и переходим к следующему уроку, где эту самую IDE рассмотрим более подробно.

Важные страницы


5 / 5 ( 5 голосов )

ARDUINO - Где научиться программировать с нуля?

Привет. Если стоит задача научиться программировать именно с нуля, то не стоит сразу бросаться в изучение синтаксиса какого-то конкретного языка, а начать с основ, понять, что программирование вообще такое и как оно работает. На эту тему есть хороший онлайн-курс от гарварда (он бесплатный, есть на разных образовательных платформах типа edx, есть на рутрекере, есть на гарвардском cdn записи всех лекций/семинаров и пдф-ки с домашними заданиями). Мне в свое время он очень помог, называется CS50 introduction to computer science. По-моему, его даже на русский переводил кто-то где-то. Там расскажут о различных базовых понятиях (алгоритмах, структурах данных, кое-что об архитектуре компьютера) и будут учить писать на C. Хороший курс, рекомендую.
Кроме того, есть много хороших открытых курсов от разных издателей на различную тематику на ресурсах вроде edx или udacity, в том числе по конкретным языкам программирования и технологиям.
Еще для практики могут помочь такие ресурсы, как codecademy.com (разные интерактивные курсы с написанием кода прямо в браузере, много бесплатных) и codewars.com (задачки по программированию на разных языках с предварительно написанными тестами, можно смотреть решения других пользователей, сравнивать со своим и все такое).
Из русскоязычных ресурсов - на ютубе можно довольно много лекций найти. Например, у Т. Ф. Хирьянова есть канал, на котором лежат записи его лекций в МФТИ, вроде. По структурам данных неплохой курс.
По поводу книг, опять же, не стоит бросаться на книги вроде "изучите программирование на С++ с нуля за 21 день". Углубляться в синтаксис языка без понимания того, что этот язык делает, довольно бессмысленно. Больше времени стоит уделять практике и писать код, решать конкретные задачи.
И, да, если возникает вопрос, какой язык выбрать для начала, мое мнение - любой. Подумайте, что вы хотите писать больше всего (там, сайты, андроид-приложения, десктопные приложения и тд), погуглите, какой язык для этого подходит - и вперед.
И, самое главное - не надо "начинать с паскаля, потому что паскаль подходит для обучения".
Программирование Arduino: справочник разработчика программиста

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

См. также - Статьи про C++

Мы предлагаем вам самый полный и дополняемый справочник программиста Arduino. Справочник постоянно дополняется и обновляется.

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

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

Основы Arduino

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

Для упрощения работы пользователей в Ардуино созданы готовые библиотеки функций, вам достаточно лишь вводить команды из них, чтобы добиться какой-то цели. Естественно, таким образом вы многого не добьётесь, но для создания собственных библиотек потребуется знание языка С++ на котором и построена прошивка чипа.

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

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

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

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

Чаще всего применяется ООП. Сам С++ имеет ядро из многочисленных библиотек и дополнительных функций или методов, поэтому, если вы собираетесь разобраться во всём кардинально, стоит начинать с освоения языка с нуля.

Особенности Arduino программирования

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

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

  1. Низкий порог вхождения. Этот пункт будет и в недостатках, так как из-за простоты системы и отсутствия требований к базису по программированию в сети гуляет множество библиотек, написанных ужасным образом. На то, чтобы разобраться, как они работают, уйдёт больше времени, чем на создание своей собственной. А стандартных функций от разработчиков не хватает для серьёзных задач.
  2. Обширное комьюнити. Это главное достоинство Ардуино перед его конкурентами, ведь вы найдёте пользователей, занимающихся созданием проектов на нём, как русскоязычных, так и англоязычных. Но если вы хотите получать действительно ценные советы и погрузиться в работу комьюнити, следует всё же изучить английский язык. Так как большая часть проблем, что вам встретятся, уже давно решены в Гугле, но, зачастую, ответы на английском.
  3. Большое количество библиотек, под разные случаи. Но, как уже описано чуть выше, у этого есть и свои недостатки.

Имеется у программирования на Ардуино и ряд весомых минусов:

  1. Низкая планка для вхождения превращает большую часть библиотек, коими наполнена сеть, в полностью бесполезный мусор. Ведь какие-то из них работают просто медленно и написаны без каких-либо знаний основ алгоритмизации, а часть – вовсе не работает, и непонятно, зачем авторы их создавали. Чтобы найти подспорье под конкретный проект, необходимо перелопатить несколько англоязычных форумов или же самостоятельно создать функции с нуля.
  2. Сложности программирования на С++. На деле – это один из сложнейших языков мультипарадигмального программирования, для создания прошивок и низкоуровневых задач. Однако, если вы имели опыт работы с ним и знаете хотя бы основные алгоритмы, а также работали хоть с одним другим мультипарадигмальным ЯП, тем более используя объектно-ориентированное программирование, вам будет значительно проще освоиться.
  3. Низкая скорость отклика самих чипов и их слабые характеристики. Да, микроконтроллеры Ардуино можно подстраивать под конкретную задачу, докупать компоненты и датчики, но это играет с ними злую шутку. Так как разработчики не знают, для чего будут использовать их детище, они усредняют все показатели, чтобы значительно уменьшить стоимость конечного продукта. В результате люди, создающие простейшие поделки, переплачивают за ненужную мощность, а тем, кто занимается робототехникой или автоматизацией каких-то процессов, приходится докупать и паять множество дополнительных плат.

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

Как начать правильно пользоваться Arduino

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

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

Программирование микроконтроллеров

Само программирование Ардуино делится на три этапа:

  1. Создание или скачивание готовой библиотеки функций.
  2. Загрузка этих библиотек в постоянную память чипа. Это ещё называют прошивкой.
  3. Ввод этих функций в командную строку, например, АТ, чтобы плата выполнила те или иные действия.

Если вы делаете что-то простое, и вам хватает базовой прошивки, можете пропустить первые два пункта.

Самые простые проекты с использованием Arduino

Примеров простых проектов с Ардуино множество, например, вы можете:

  1. Создать датчик освещённости, который будет подстраивать специальные LED лампы под ту яркость, которая необходима в комнате.
  2. Автоматизация любых вещей в вашем доме. Например, включения-выключения света, открытия дверей и прочее.
  3. Автоматизация оранжереи.

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

Книги по Arduino для начинающих. Изучаем программирование

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

Изучаем Arduino. Инструменты и методы технического волшебства. Джереми Блум

Изучаем Arduino. Инструменты и методы технического волшебстваИзучаем Arduino. Инструменты и методы технического волшебства

Аннотация

Одна из самых известных книг по работе на базе Ардуино от автора Джереми Блума рассказывает об основных принципах создания электронных устройств. Есть описания программной и аппаратной части микроконтроллера. Есть подробный разбор основных принципов программирования в специально разработанной среде Arduino IDE, приводится набор функций и операторов. Читатель научится правильно разбираться в описаниях компонентов, выбирать необходимые составляющие для создания своего уникального проекта, анализировать электронные схемы приборов. В книге можно найти примеры использования сенсоров, индикаторов, интерфейсов передачи информации. Все примеры снабжены списком необходимых составляющих, схемами примерами кода с пошаговым объяснением. Подходит для изучения новичкам.

Где купить или скачать

Программируем Arduino. Саймон Монк

Программируем ArduinoПрограммируем Arduino

Аннотация

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

Где купить или скачать

Проекты с использованием контроллера Arduino. Петин В.А

Проекты с использованием контроллера ArduinoПроекты с использованием контроллера Arduino

Аннотация

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

Где купить или скачать

Arduino и Raspberry Pi в проектах Internet of Things. Виктор Петин

Arduino и Raspberry Pi в проектах Internet of ThingsArduino и Raspberry Pi в проектах Internet of Things

Аннотация

Еще одна книга от Виктора Петина, рассказывающая о создании простых проектов в рамках концепции Интернета вещей (IoT) на основе платы Ардуино и микрокомпьютера Raspberry Pi. В ней показано, как устанавливать и настраивать среду разработки Arduino IDE и среду макетирования Fritzing. Рассказано, как подключать датчики и исполнительные устройства, как они работают и взаимодействуют друг с другом, описаны их технические возможности. Приведена организация доступа проектов к интернету, отправка и прием данных с использованием облачных IoT сервисов. Имеется рассмотрение проекта собственного сервера сбора данных с устройств на базе Ардуино. Подходит для пользователей продвинутого уровня. В архиве размещены исходные коды программ и нужные библиотеки.

Где купить или скачать

5. Практическая энциклопедия Arduino. Петин В.А., Биняковский А.А.

Практическая энциклопедия ArduinoПрактическая энциклопедия Arduino

Аннотация

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

Где купить или скачать

6. Программирование микроконтроллерных плат Arduino/Freeduino. Улли Соммер

Программирование микроконтроллерных плат Arduino FreeduinoПрограммирование микроконтроллерных плат Arduino Freeduino

Аннотация

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

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

Где купить или скачать

7. Мобильные роботы на базе Arduino. Момот М.В.

Мобильные роботы на базе ArduinoМобильные роботы на базе Arduino

Аннотация

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

Где купить или скачать

8. Arduino для начинающих волшебников. Массимо Банци

Arduino для начинающих волшебниковArduino для начинающих волшебников

Аннотация

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

Где купить или скачать

9. Электроника. Твой первый квадрокоптер. Теория и практика. Яценков В.С.

Книги Arduino - сборники для начинающих на русскомЭлектроника. Твой первый квадрокоптер. Теория и практика

Аннотация

Книга Яценкова В.С. подходит для людей, имеющих опыт работы с платформой Ардуино. Здесь в понятной форме изложены практические аспекты создания и управления квадрокоптером. Пошагово расписаны все этапы сборки – выбор нужных частей и их стоимость, настройка программного обеспечения, программирование в Arduino IDE, ремонт в случае аварии. Огромное внимание автор уделяет типичным ошибкам, которые совершают начинающие конструкторы. Подробно изложен процесс отладки системы ODS, беспроводного канала Bluetooth и различных навигационных систем. Имеются рекомендации по выбору оборудования FPV, обзор программ для ПК и телефонов, которые используются при работе коптера.

Где купить или скачать

10. Занимательная электроника. Ревич Ю.

Книги Arduino - сборники для начинающих на русском

Аннотация

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

Приводятся конкретные аналоговые и цифровые схемы с их подробным описанием. Описание работы на Ардуино поясняется примером создания домашней метеостанции с пошаговой инструкцией.

Где купить или скачать

Уроки Arduino. Интерфейсы, модули | AlexGyver Technologies

Подключаемое железо, интерфейсы


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

Начнем с мира цифрового, в котором устройства общаются друг с другом при помощи цифровых сигналов, так называемых логических, то есть имеющих два простейших состояния: правда и ложь, да и нет, 1 и 0. В большинстве цифровых устройств эти два состояния передаются напряжением 0 и 5 Вольт, но бывает и 0 и 3.3 Вольта. Таким образом микроконтроллер по сути может измерить цифровой сигнал (что подаётся на ногу, 0 или 5 Вольт), или выдать со своей ноги 0 и 5 Вольт соответственно. Закодированный цифровой сигнал выглядит примерно вот так: скачки 0 и 5 (или 3.3) Вольт с разной продолжительностью.


Совокупность правил и длин участков 5 и 0 Вольт можно назвать протоколом связи, или интерфейсом, шиной.

Интерфейсы


Ардуино имеет “хардварную”, т.е. на низком уровне, прям в процессоре, поддержку следующих интерфейсов:

UART – то, через что мы общаемся с компьютером через монитор порта. Очень распространенный интерфейс, много всякого железа с ним работает, те же Bluetooth/GSM/GPS модули именно “общаются” по UART текстовыми командами. Есть минус – одновременно к одному юарту может быть подключено только одно устройство. Подробнее почитать можно здесь.

I2C – очень популярный интерфейс, используется в 90% ардуино-модулей и датчиков. Прелесть в том, что он весьма простой, шустрый и поддерживает одновременное подключение 128 разных устройств всего по двум проводам. Шина адресная, то есть у каждого устройства есть свой адрес, собственно поэтому такие широкие возможности. Подробнее – здесь

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

Помимо этих трёх популярных интерфейсов существуют и другие (CAN, 1-wire и прочее), но так как у нас есть сила микроконтроллера, мы можем эмулировать практически любой протокол и интерфейс связи, так называемый software <название интерфейса> (softwareSerial, softwareI2C…). И тут на помощь приходит комьюнити ардуино, которое уже написало библиотеки для всего что можно, и можно без проблем общаться практически с любой железкой, поддерживающей какой-либо популярный протокол связи. По той же CAN шине можно подключиться к мозгам своего автомобиля и делать с ним всякое. Куча микросхем различного назначения без особых проблем и телодвижений подключаются к ардуино и позволяют собой управлять. Всяческие усилители, драйверы, сдвиговые регистры, ЦАПы, АЦПы, мультиплексоры, цифровые резисторы и сотни других интересных штук.

Аналоговый сигнал


Второй тип связи – аналоговый, работает только “на приём”. Микроконтроллер может измерять напряжение, которое подаётся ему на АЦП (аналогово-цифровой преобразователь), диапазон измерения ограничен вплоть до опорного напряжения или напряжения питания микроконтроллера, то есть максимум, что может измерить микроконтроллер без дополнительного железа – от 0 до 5 вольт, или от 0 до 3.3 вольт для 3.3 вольтовых моделей. К этому мы ещё вернёмся.

Благодаря наличию АЦП (чтение аналогового сигнала) ардуино может считывать показания любых аналоговых датчиков: термисторы, термопары, фоторезисторы, потенциометры, напряжение шунта и прочее прочее из мира аналоговой электроники. По сути можно подключить всё что угодно без особых навыков, было бы желание и готовая библиотека. Ну и умение читать.

Резюмируя


Теперь по сути дела: датчики, их куча кучная, измерять можно ну просто всё, что вообще измеряется. Электроника: напряжение, ток, сопротивление, работа с переменным током, поля. Параметры микроклимата: температура, влажность, давление, содержание газов, скорость ветра, освещенность, что угодно. Интересных модулей тоже очень много: Bluetooth, сотовая связь, GPS, дисплеи различных типов и размеров, датчики присутствия, как ИК, так и микроволновые, модули для беспроводной связи ардуинок и многое другое.

Можно управлять абсолютно любой железкой, которая выполняет свою функцию просто при подаче питания: лампочка, светодиодная лента, электронагреватель, мотор или любой электропривод, электромагнит, соленоид-толкатель, и это все с любым напряжением питания. Но тут нужно кое что понять: Ардуино (точнее микроконтроллер) – логическое устройство, то есть по-хорошему она должна только отдавать команды другим устройствам, или принимать их от них. Это я к тому, что напрямую от ардуино не работают ни лампочки, ни моторчики, ни нагреватели, ни-хуче-го. Максимум – светодиод. С пониманием этого идём дальше. Чтобы ардуино включила или выключила (подала питание) на другое устройство, нужно устройство – посредник, например реле или транзистор. Ардуино управляет реле, а реле в свою очередь включает любую нужную нагрузку с любым напряжением питания и все такое, подробнее об этом поговорим отдельно.

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

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

Важные страницы


● Уроки и проекты Arduino

Что такое Arduino?

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

Установка Arduino IDE

Первое включение. Установка Arduino IDE

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

Установка Arduino IDE Умный дом и интернет вещей. Элементы, решения, системы управления, проекты

Самый главный компонент любой "умной" системы – его контроллер. Контроллер предназначен для получения информации и управления "умным" домом. В нашем наборе два контроллера! Это плата Arduino MEGA и модуль NodeMCU v3 Lua WI-FI ESP8266 Ch440. Вы можете выбрать любой из них. Подробнее ...
 

Установка Arduino IDE Arduino проект 34: Организация подключения к сети Интернет с помощью модуля Ai-Thinker A6

В предыдущих главе мы рассмотрели мы сделали большие шаги построения "умного дома" –  оснастили его датчиками и исполнительными устройствами и создали и обеспечили определенную степень автоматизации для создания комфорта и безопасности. Теперь пришло время сделать наш "умный дом" устройством IoT (Интернета вещей), чтобы получить доступ к нему для мониторинга и управления из любой точки мира по сети интернет. Организуем доступ контроллеров нашего дома к сети интернет. Подробнее ...
 

Arduino Проект 33:  Модуль GPS. Принцип работы, подключение, примеры

Arduino проект 33:  Модуль GPS. Принцип работы, подключение, примеры

В этом эксперименте рассмотрим работу модуля GPS-приемника, позволяющего определять наше местоположение с помощью глобальной системы GPS, и подключение данного приемника к плате Arduino. GPS (Global Positioning System) – это система, позволяющая с точностью не хуже 100 м определить местоположение объекта.  Подробнее ...

Arduino проект 32: Беспроводная связь. Модуль GSM/GPRS SIM900

Arduino проект 32: Беспроводная связь. Модуль GSM/GPRS SIM900

В этом эксперименте рассмотрим работу модуля GSM/GPRS Shield – платы расширения, позволяющей Arduino работать в сетях сотовой связи по технологиям GSM/GPRS для приёма и передачи данных, SMS и голосовой связи. GSM/GPRS Shield на базе модуля SIMCom SIM900 выпускают несколько производителей, и платы имеют незначительные отличия. Также на некоторых платах расположены: слот для SIM-карты, стандартные 3,5 мм джек для аудиовхода и выхода и разъём для внешней антенны. На плате GSM/GPRS shild имеется несколько перемычек, позволяющих выбрать тип serial-соединения.  Подробнее ...

Arduino Проект 31: Беспроводная связь. Модуль Bluetooth HC-05 Arduino проект 31: Беспроводная связь. Модуль Bluetooth HC-05

В этом эксперименте рассмотрим работу модуля Bluetooth HC-05, позволяющего плате Arduino установить беспроводную связь и обмениваться данными с другими устройствами по протоколу Bluetooth. Bluetooth позволяет объединять в локальные сети любую технику: от мобильного телефона и компьютера до холодильника. При этом одним из немаловажных параметров новой технологии являются низкая стоимость устройства связи (в пределах 20 долларов), его небольшие размеры.  Подробнее ...
 

Arduino проект 30:  Беспроводная связь. Модуль Wi-Fi ESP8266 Arduino проект 30:  Беспроводная связь. Модуль Wi-Fi ESP8266

В этом эксперименте мы познакомимся с модулем ESP8266, с помощью которого можно подключить плату Arduini к сетям Wi-Fi, и напишем скетч для передачи данных датчика температуры на веб-сервис Народный мониторинг. Платы на ESP8266 – это не просто модули для связи по Wi-Fi. Чип, по сути, является микроконтроллером со своими интерфейсами SPI, UART, а также портами GPIO, а это значит, что модуль можно использовать автономно без Arduino и других плат с микроконтроллерами.  Подробнее ...
 

Arduino Проект 29: Работа с Интернетом на примере Arduino Ethernet Shield W5100 Arduino проект 29: Работа с Интернетом на примере Arduino Ethernet Shield W5100

В этом эксперименте мы покажем, как нашей плате Arduino получить доступ к сети Интернет с помощью модуля Ethernet shield W5100. Ethernet Shield позволяет легко подключить вашу плату Arduino к локальной сети или сети Интернет. Он предоставляет возможность Arduino отправлять и принимать данные из любой точки мира с помощью интернет-соединения.  Подробнее ...
 

Arduino проект 28:  Считыватель RFID на примере RC522. Принцип работы, подключение Arduino проект 28:  Считыватель RFID на примере RC522. Принцип работы, подключение

В этом эксперименте мы покажем, как плата Arduino получает доступ к данным RFID-карт и брелоков Mifare с помощью RFID-считывателя RC522C. Идентификация объектов производится по уникальному цифровому коду, который считывается из памяти электронной метки, прикрепляемой к объекту идентификации. Считыватель содержит в своем составе передатчик и антенну, посредством которых излучается электромагнитное поле определенной частоты.  Подробнее ...
 

Arduino проект 27:  SD-карта. Чтение и запись данных Arduino проект 27:  SD-карта. Чтение и запись данных

В этом эксперименте мы покажем, как к плате Arduino подключить SD-карту. Если вашим Аrduino-проектам не хватает памяти, а объем энергонезависимой памяти EEPROM в платах Arduino совсем небольшой, можно использовать внешние носители. Один из самых простых по подключению к платам Arduino – это SD-карта. Можно подсоединиться к SD-карте напрямую, а можно использовать модули.  Подробнее ...
 

Arduino проект 26:  Часы реального времени. Принцип работы, подключение, примеры Arduino проект 26:  Часы реального времени. Принцип работы, подключение, примеры

В этом эксперименте мы рассмотрим модуль часов реального времени на микросхеме DS1307. Микросхема Dallas DS1307 представляет собой часы реального времени с календарем и дополнительной памятью NW SRAM (56 байт). Микросхема подключается к микроконтроллеру при помощи шины I2C. Количество дней в месяце рассчитывается с учетом високосных лет до 2100 г. В микросхеме DS1307 имеется встроенная схема, определяющая аварийное отключение питания  Подробнее ...
 

Arduino проект 25:  ИК-фотоприемник и ИК-пульт. Обрабатываем команды от пульта Arduino проект 25:  ИК-фотоприемник и ИК-пульт. Обрабатываем команды от пульта

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

Arduino Проект 24:  3-осевой гироскоп + акселерометр на примере GY-521 Arduino проект 24:  3-осевой гироскоп + акселерометр на примере GY-521

В этом эксперименте мы познакомимся с акселерометром и гироскопом и будем с помощью Arduino получать показания с этих датчиков. Модуль GY-521 на микросхеме MPU6050 содержит гироскоп, акселерометр и температурный сенсор. На плате модуля GY-521 расположена необходимая обвязка MPU6050, в том числе подтягивающие резисторы, стабилизатор напряжения на 3,3 В с малым падением напряжения с фильтрующими конденсаторами. Обмен с микроконтроллером осуществляется по шине I2C.  Подробнее ...
 

Arduino проект 23:  Ультразвуковой датчик расстояния HC-SR04. Принцип работы, подключение, пример Arduino проект 23:  Ультразвуковой датчик расстояния HC-SR04. Принцип работы, подключение, пример

В этом эксперименте мы рассмотрим ультразвуковой датчик для измерения расстояния и создадим проект вывода показаний датчика на экран ЖКИ Wh2602. Ультразвуковой дальномер HC-SR04 – это помещенные на одну плату приемник и передатчик ультразвукового сигнала. Излучатель генерирует сигнал, который, отразившись от препятствия, попадает на приемник. Измерив время, за которое сигнал проходит до объекта и обратно, можно оценить расстояние.  Подробнее ...
 

Arduino проект 22:  Датчики газов. Принцип работы, пример работы Arduino проект 22:  Датчики газов. Принцип работы, пример работы

В этом эксперименте мы рассмотрим ультразвуковой датчик для измерения расстояния и создадим проект вывода показаний датчика на экран ЖКИ Wh2602. Серия MQ-сенсоров для Ардуино, построены на базе мини-нагревателя внутри и используют электрохимический сенсор. Они чувствительны для определенных диапазонов газов и используются в помещениях при комнатной температуре.  Подробнее ...
 

Arduino проект 21:  Датчик влажности и температуры DHT11 Arduino проект 21:  Датчик влажности и температуры DHT11

В этом эксперименте мы рассмотрим датчик для измерения относительной влажности воздуха и температуры DHT11 и создадим проект вывода показаний датчика на экран ЖКИ Wh2602. Датчик DHT11 состоит из емкостного датчика влажности и термистора. Кроме того, датчик содержит в себе простенький АЦП для преобразования аналоговых значений влажности и температуры.  Подробнее ...
 

Arduino проект 20:  Датчик температуры DS18B20

Arduino проект 20:  Датчик температуры DS18B20


В этом эксперименте мы рассмотрим популярный цифровой датчик температуры DS18B20, работающий по протоколу 1-Wire, и создадим проект вывода показаний датчика на экран ЖКИ Wh2602. DS18B20 – цифровой термометр с программируемым разрешением от 9 до 12 битов, которое может сохраняться в EEPROM-памяти прибора. DS18B20 обменивается данными по шине 1-Wire и при этом может быть как единственным устройством на линии, так и работать в группе. Все процессы на шине управляются центральным микропроцессором.  Подробнее ...
 
Arduino проект 19:  Шаговый двигатель 4-фазный, с управлением на ULN2003 (L293) Arduino проект 19:  Шаговый двигатель 4-фазный, с управлением на ULN2003 (L293)

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

Arduino проект 18:  Обрабатываем данные от джойстика. Управление Pan/Tilt Bracket с помощью джойстика Arduino проект 18:  Обрабатываем данные от джойстика. Управление Pan/Tilt Bracket с помощью джойстика

В этом эксперименте мы рассмотрим подключение к Arduino двухосевого аналогового джойстика. Для плат Arduino существуют модули аналогового джойстика, имеющие ось X, Y (потенциометры 10 кОм) и дополнительную кнопку – ось Z. Джойстик позволяет плавно и точно отслеживать степень отклонения от нулевой точки. Сам джойстик подпружиненный, поэтому он будет возвращаться в центральное состояние после его отпускания из определенной позиции.  Подробнее ...
 

Arduino проект 17:  Сервопривод. Крутим потенциометр, меняем положение Arduino проект 17:  Сервопривод. Крутим потенциометр, меняем положение

Сервопривод управляется с помощью импульсов переменной длительности. Угол поворота определяется длительностью импульса, который подается по сигнальному проводу. Это называется широтно-импульсной модуляцией. Сервопривод ожидает импульса каждые 20 мс. Длительность импульса определяет, насколько далеко должен поворачиваться мотор.  Подробнее ...
 

Arduino проект 16:  Графический индикатор. Подключение дисплея Nokia 5110 Arduino проект 16:  Графический индикатор. Подключение дисплея Nokia 5110

В этом эксперименте мы рассмотрим графический дисплей Nokia 5110, который можно использовать в проектах Arduino для вывода графической информации. Жидкокристаллический дисплей Nokia 5110 – монохромный дисплей с разрешением 84×48 на контроллере PCD8544, предназначен для вывода графической и текстовой информации. Питание дисплея должно лежать в пределах 2.7–3.3 В (максимум 3.3 В, при подаче 5 В на вывод VCC дисплей может выйти из строя). Но выводы контроллера толерантны к +5 В, поэтому их можно напрямую подключать к входам Arduino. Немаловажный момент – низкое потребление, что позволяет питать дисплей от платы Arduino без внешнего источника питания.  Подробнее ...
 

Arduino проект 15:  Индикатор LCD1602. Принцип подключения, вывод информации на него

Arduino проект 15:  Индикатор LCD1602. Принцип подключения, вывод информации на него


В этом эксперименте мы познакомимся с жидкокристаллическими индикаторами Winstar для вывода символьной информации. Научимся в Arduino-проектах применять библиотеки и создадим проект вывода показаний датчика температуры LM335 на экран дисплея. Жидкокристаллические индикаторы (ЖКИ, англ. LCD) являются удобным и недорогим средством для отображения данных ваших проектов. Символьный индикатор Wh2602 позволяет выводить на экран 2 строки по 16 символов (размером 5×7 или 5×10 и дополнительная строка под курсор). Управляет работой дисплея контроллер.  Подробнее ...
 
Arduino проект 14:  Датчик температуры аналоговый LM335. Принцип работы, пример работы Arduino проект 14:  Датчик температуры аналоговый LM335. Принцип работы, пример работы

В этом эксперименте мы познакомимся с аналоговым датчиком для измерения температуры LM335. LM335 – это недорогой температурный чувствительный элемент с диапазоном от –40 °C до +100 °C и точностью в 1 °C. По принципу действия датчик LM335 представляет собой стабилитрон, у которого напряжение стабилизации зависит от температуры.  Подробнее ...
 

Arduino проект 13:  Фоторезистор. Обрабатываем освещённость, зажигая или гася светодиоды Arduino проект 13:  Фоторезистор. Обрабатываем освещённость, зажигая или гася светодиоды

В этом эксперименте мы познакомимся с аналоговым датчиком для измерения освещенности – фоторезистором. Распространённое использование фоторезистора – измерение освещённости. В темноте его сопротивление довольно велико. Когда на фоторезистор попадает свет, сопротивление падает пропорционально освещенности.  Подробнее ...
 

Arduino проект 12:  Управляем реле через транзистор Arduino проект 12:  Управляем реле через транзистор

В этом эксперименте мы познакомимся с реле, с помощью которого с Arduino можно управлять мощной нагрузкой не только постоянного, но и переменного тока. При подключении реле к Arduino контакт микроконтроллера не может обеспечить мощность, необходимую для нормальной работы катушки. Поэтому следует усилить ток – поставить транзистор. Для усиления удобнее применять n-p-n-транзистор.  Подробнее ...
 

Arduino проект 11:  Транзистор MOSFET. Показываем усилительные качества транзистора. На примере электродвигателя изменяем обороты Arduino проект 11:  Транзистор MOSFET. Показываем усилительные качества транзистора. На примере электродвигателя изменяем обороты

В этом эксперименте мы познакомимся с транзистором MOSFET и с помощью него будем управлять мощной нагрузкой – электродвигателем. Выводы Arduino, сконфигурированные как OUTPUT, находятся в низкоимпедансном состоянии и могут отдавать 40 мА в нагрузку и не в состоянии обеспечить питание мощной нагрузки и большого напряжения. Одним из способов управления мощной нагрузкой является использование полевых MOSFET-транзисторов.  Подробнее ...
 

Arduino проект 10:  Управляем пьезоизлучателем: меняем тон, длительность, играем музыку Arduino проект 10:  Управляем пьезоизлучателем: меняем тон, длительность, играем музыку

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

Arduino проект 9:  Матрица светодиодная 8x8 Arduino проект 9:  Матрица светодиодная 8x8

В этом эксперименте мы рассмотрим каскадное подключение нескольких микросхем 74HC595, что позволит, используя 3 вывода Arduino, управлять множеством контактов, что будет продемонстрировано в примере вывода фигур на экран светодиодной матрицы 8×8. В эксперименте будем использовать двухцветную светодиодную матрицу FYM-23881BUG-11.  Подробнее ...
 

Arduino проект 8:  Микросхема сдвигового регистра 74НС595. Управляем матрицей из 4 разрядов, экономим выходы Arduino

Arduino проект 8:  Микросхема сдвигового регистра 74НС595. Управляем матрицей из 4 разрядов, экономим выходы Arduino


В этом эксперименте мы рассмотрим работу Arduino с микросхемой 74HC595 – расширителем выходов, позволяющей уменьшить количество выводов Arduino для управления 4-разрядной семисегментной матрицей. Цифровых выводов Arduino Nano и UNO, а иногда даже и Arduino Mega может не хватить, если требуется управлять большим количеством выводов. В этом случае можно использовать микросхему 74HC595.  Подробнее ...
 
Arduino проект 8:  Микросхема сдвигового регистра 74НС595. Управляем матрицей из 4 разрядов, экономим выходы Arduino Arduino проект 7: Матрица 4-разрядная из 7-сегментных индикаторов. Делаем динамическую индикацию

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

Arduino проект 6:  Семисегментный индикатор одноразрядный. Выводим цифры

Arduino проект 6:  Семисегментный индикатор одноразрядный. Выводим цифры


В этом эксперименте мы рассмотрим работу с семисегментным светодиодным индикатором, которая позволяет Arduino визуализировать цифры. Светодиодный семисегментный индикатор представляет собой группу светодиодов, расположенных в определенном порядке и объединенных конструктивно. Светодиодные контакты промаркированы метками от a до g (и дополнительно dp – для отображения десятичной точки), и один общий вывод, который определяет тип подключения индикатора (схема с общим анодом ОА, или общим катодом ОК).  Подробнее ...
 
Arduino проект 5: RGB-светодиод. Широтно-импульсная модуляция. Переливаемся цветами радуги

Arduino проект 5: RGB-светодиод. Широтно-импульсная модуляция. Переливаемся цветами радуги


В этом эксперименте мы рассмотрим широтно-импульсную модуляцию, которая позволяет Arduino выводить аналоговые данные на цифровые выводы, и применим эти знания для создания прозвольных цветов свечения с помощью RGB-светодиода.  Подробнее ...
 
Arduino проект 4: Светодиодная шкала 10 сегментов. Вращением потенциометра меняем количество светящихся светодиодов

Arduino проект 4: Светодиодная шкала 10 сегментов. Вращением потенциометра меняем количество светящихся светодиодов


В этом эксперименте мы рассмотрим работу аналоговых входов Arduino, работу потенциометра в качестве аналогового датчика и будем демонстрировать показания аналогового датчика с помощью светодиодной шкалы. ля получения аналоговых данных Arduino имеет аналоговые входы, оснащенные 10-разрядным аналого-цифровым преобразователем для аналоговых преобразований.  Подробнее ...
 
Arduino проект 4: Светодиодная шкала 10 сегментов. Вращением потенциометра меняем количество светящихся светодиодов Arduino проект 3: Потенциометр. Показываем закон Ома на примере яркости светодиода

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

Arduino проект 2: Обрабатываем нажатие кнопки на примере зажигания светодиода. Боремся с дребезгом контактов Arduino проект 2: Обрабатываем нажатие кнопки на примере зажигания светодиода. Боремся с дребезгом контактов

Это эксперимент по работе с кнопкой. Мы будем включать светодиод по нажатии кнопки и выключать по отпускании кнопки. Рассмотрим понятие дребезга и программные методы его устранения. При использовании Arduino в качестве входов используют pull-up- и pulldown-резисторы, чтобы вход Arduino не находился в «подвешенном» состоянии (в этом состоянии он будет собирать внешние наводки и принимать произвольные значения), а имел заранее известное состояние (0 или 1).  Подробнее ...
 

Arduino проект 1:  Мигаем светодиодом Arduino проект 1:  Мигаем светодиодом

В этом эксперименте мы научимся управлять светодиодом. Заставим его мигать. Светодиод – это полупроводниковый прибор, преобразующий электрический ток непосредственно в световое излучение. По-английски светодиод называется light emitting diode, или LED.  Подробнее ...
 

90000 S4A 90001 90002 S4A is a Scratch modification that allows for simple programming of the Arduino open source hardware platform. It provides new blocks for managing sensors and actuators connected to Arduino. There is also a sensors report board similar to the PicoBoard one. 90003 90002 The main aim of the project is attracting people to the programming world.The goal is also to provide a high level interface to Arduino programmers with functionalities such as interacting with a set of boards through user events. 90003 90006 The interface 90007 90002 90009 90010 An S4A program to control a light-sensor Theremin, with record and playback capabilities 90011 90012 90003 90002 Arduino objects offer blocks for the basic microcontroller functionalities, analog and digital writes and reads, and also for higher level ones.You can find blocks to manage standard and continuous rotation servomotors: 90003 90002 90003 90002 In S4A, an Arduino board is represented by a special kind of sprite. The Arduino sprite will automatically find the usb port where the board is connected. 90003 90002 It is possible to connect to multiple boards at the same time by just adding a new Arduino sprite. 90003 90006 Technical details 90007 90024 Supported boards 90025 90002 S4A works with Arduino Diecimila, Duemilanove and Uno.Other boards have not been tested, but they may also work. 90003 90024 Connectivity 90025 90002 Components have to be connected in a particular way. S4A allows for 6 analog inputs (analog pins), 2 digital inputs (digital pins 2 and 3), 3 analog outputs (digital pins 5, 6 and 9), 3 digital outputs (pins 10, 11 and 13) and 4 special outputs to connect Parallax continuous rotation servomotors (digital pins 4, 7, 8 and 12). 90003 90002 You can manage a board wirelessly by attaching an RF module to it, such as Xbee.90003 90002 S4A allows you to control as many boards as USB ports you have. 90003 90024 Compatibility 90025 90002 S4A is backwards compatible with Scratch, so you can open Scratch projects in it. However, you will not be able to share your projects on the Scratch community website because doing so goes against the Scratch terms of use. 90003 90002 Take in account that this compatibility does not work both ways, so you will not be able to open an S4A project from within the original Scratch.90003 90002 Using a PicoBoard along with an Arduino board is also supported. 90003 90024 Protocol 90025 90002 S4A interacts with Arduino by sending the actuator states and receiving sensor states every 75 ms, therefore the pulse width needs to be greater than this time period. The data exchange follows the PicoBoard protocol and needs a specific program (firmware) to be installed in the board. Please refer to the Downloads section for further instructions on how to do so.90003 90024 Donate to S4A 90025 90002 If you wish to help us continue developing and maintaining this project, you can always make a donation! 90003 90024 Hardware? Child's Play! 90025 90002 Scratch for Arduino (S4A) is a modified version of Scratch, ready to interact with Arduino boards. It was developed in 2010 by the Citilab Smalltalk Team and it has been used since by many people in a lot of differents projects around the world.90003 90002 Our main purpose was to provide an easy way to interact with the real world by taking advantage of the ease of use of Scratch. 90003 90002 Here you'll find all the documentation, videos, examples and exercices we have created. 90003 90006 Workshop 90007 90002 A zip file with complete materials and exercices for a workshop can be downloaded here: 90003 90002 Elisava Workshop Materials 2011 90003 90002 These materials were created and used by our team in an actual S4A course at the Elisava School of Design (Barcelona) in 2011 року.90003 90006 Basic Examples 90007 90002 Here you'll find basic S4A examples, complete with the Arduino schematics and an .sb Scratch project file for you to download. 90003 90024 Button and LED 90025 90002 A simple example showing how to trigger an LED by pushing a button. 90003 90002 90003 90002 Code 90003 90024 RGB LED 90025 90002 Using an RGB LED from Scratch.90003 90002 90003 90002 Code 90003 90024 Button, LED and keeping state 90025 90002 An LED that switches state when we push a button. 90003 90002 90003 90002 Code 90003 90024 Photoresistor and LED 90025 90002 Using the input of a photoresistor sensor to trigger an LED. 90003 90002 90003 90002 Code 90003 90006 Videos 90007 90002 Some of the following demos are in Catalan or Spanish, but the images pretty much speak for themselves.Some of the videos have English subtitles as well. 90003 90024 Full-featured Robot 90025 90002 A robot with a rotative camera, distance sensors and a remote control. It uses two arduino boards (remote control + robot), an XBee wireless module, three IR sensors, a camera module and three servomotors. 90003 90002 90113 90114 90003 90024 S4A Workshop Introduction 90025 90002 This video serves as an introduction for the S4A workshops given at Citilab, but you'll find a couple of demos of what can be achieved with our software.90003 90002 90121 90114 90003 90006 Exercices 90007 90002 Music: A theremin-like instrument 90003 90002 Domotics: A blind curtain controller 90003 90002 Robotics: A keyboard-driven car 90003 90006 For Developers 90007 90002 S4A Protocol Specs 90003 90024 External Documentation Links 90025 90002 Manual de S4A - by José Manuel Ruiz Gutiérrez 90003 90002 Scratch IO Wiki - by José Javier Vitón 90003 90002 Arduteka Blog: S4A 90003 90006 Hi Scratch for Arduino! 90007 90002 We have developed a simple Android application that can communicate with S4A through HTTP by means of the remote sensors protocol in Scratch.You can download it here or by scanning the QR code below: 90003 90002 90003 90002 To use it, follow the instructions below: 90003 90152 90153 In S4A, enable remote sensors (right click on any "Sensors" block) 90154 90153 In HiS4A (Android), type the local network IP of the PC where S4A is running (you can find that out through Edit> Show IP address), plus the prefix (only needed if you are connecting from more than one Android client) 90154 90153 The buttons correspond to messages and the touchpad and slider to remote sensors 90158 90154 90160 90010 90162 IMPORTANT! 90163 Both S4A as HiS4A must be connected to the same local network! 90011 90006 HTTP API 90007 90002 The Android application uses a very simple protocol we developed on top of the Scratch HTTP message protocol, so it is also possible to interact to S4A from a browser or any other network enabled application.90003 90002 You will first need to enable the remote sensors option in S4A (right click on any "Sensors" block). 90003 90024 Message Specification 90025 90002 Broadcast a message: 90158 90162 http: // [IP]: 42001 / broadcast = [message-name] 90163 90003 90002 Send the value of a remote sensor (for instance, the client's accelerometer, mouse position, etc): 90158 90162 http: // [IP]: 42001 / sensor-update = [sensor-name] = [value] 90163 90003 90002 Update an S4A variable: 90158 90162 http: // [IP]: 42001 / vars-update = [variable-name] = [value] 90163 90003 90006 Test web application 90007 90002 If you want to see the HTTP API in action, you can do so from our test webapp: 90003 90002 Hi S4A! from the Web 90003 90002 Using the example web application: 90003 90152 90153 S4A variables whose name starts with a plus sign (i.e. + PlayerName) are visible and modifiable from the web client 90154 90153 S4A variables whose name starts with a minus sign (i.e. -playerScore) are only visible (not modifiable) from the web client 90154 90153 S4A variables whose name does not start ether with a minus or plus sign are not visible from the web client 90154 90153 S4A messages whose name starts with a plus sign (i.e. + startGame) are visible from the web client 90154 90153 S4A messages whose name does not start with a plus sign are not visible from the web client 90154 90160 90006 Version 1.6 90007 90152 90024 S4A: 90025 90153 Fixed issue on block watchers when displaying% t instead the sensor name 90154 90153 Fixed issue when analog input error not disappearing 90154 90153 Fixed bug when creating new Arduino object and selecting an existing connection 90010 (thanks to Vaner Anampa, Erik Bartmann and many more for reporting this bug) 90011 90154 90153 Changed default pins and their order on Arduino blocks (as before) 90154 90153 Merged servo blocks, now pins 8, 7 and 4 can be used for standard and CR servomotors.90154 90153 Added HTTP block (GET method) as requested by IMI ( "Institut Municipal d'Informatica") of Barcelona 90154 90153 Updated some translation files. Thanks to: 90154 90152 90153 Frederique Pinson - French (fr.po) 90154 90153 Miguel Bouzada - Galician (gl.po) 90154 90153 Fabio Albanese - Italian (it.po) 90154 90153 Sungkuk Lim - Korean (ko.po) 90154 90153 Jan Van den Bergh - Dutch (nl.po) 90154 90153 Vadim Litvenko - Russian (ru.po) 90154 90153 Johan Solve - Swedish (sv.po) 90154 90160 90024 Firmware: 90025 90153 Refactored reset pins 90154 90153 Merged code for standard and CR servos 90154 90153 Merged patch for Leonardo from Peter Mueller (many thanks for this!) 90154 90160 90006 Version 1.5 90007 90152 90153 Fixed object collision bug (Arduino and non-Arduino) 90154 90153 Fixed bug related to persistent message error when stopping and resuming connection with the board 90154 90153 Changed indexed primitives to named ones for better compatibility with new Squeak VMs (thanks to Miriam Ruiz for the patch) 90154 90153 Changed pin 12 from standard servo to normal digital output 90154 90153 Changed default pin at digital on / off blocks from 13 to 10 90154 90153 Added reset actuators block 90154 90153 Improved Catalan and Spanish translations 90154 90160 90006 Version 1.4 90007 90152 90153 Added full compatibility with HTTP protocol (POST AND GET), you can now send messages to S4A and watch / modify variable values ​​from an Internet browser (among other things). See Android section. 90154 90153 Added a "check for updates" option in "Help" menu, from now on there is no need to visit website to check for new versions 90154 90153 Language is now detected upon first launch (when Scratch.ini file does not exist). Also saved in same file if changed from language menu 90154 90153 Serial port where a board is connected opens correctly when S4A is launched 90154 90153 Fixed bug in Windows version, in which title bar did not show the name and version of S4A when launched 90154 90160 90006 Version 1.3 90007 90152 90153 Fixed compatibility with Arduino UNO on Linux (thanks to Jorge Gómez).You will need to load the new firmware, besides updating the bootloader in some boards 90154 90153 Changed the sensor board names and their corresponding Arduino blocks to show real pin numbers 90154 90153 Added server commands to "Edit" menu to manage network communication over sockets 90154 90153 Added compatibility for Android apps (HiS4A) 90154 90153 Improved Catalan and Spanish translations 90154 90153 Lots of bugfixes 90154 90160 90002 90003 90002 Installing S4A requires you to install software both in your PC and your Arduino board.Here you'll find the detailed steps to get it up and running. 90003 90006 Installing S4A into your computer 90007 90002 S4A works in the three major consumer operating systems. Download and install the one that fits your configuration: 90003 90006 Installing the Firmware into your Arduino 90007 90002 This firmware is a piece of software you need to install into your Arduino board to be able to communicate with it from S4A.90003 90152 90153 Download and install the Arduino environment by following the instructions on http://arduino.cc/en/Main/Software. Take in account Arduino Uno requires at least version 0022. 90154 90153 Download our firmware from here 90154 90153 Connect your Arduino board to a USB port in your computer 90154 90153 Open the firmware file (S4AFirmware16.ino) from the Arduino environment 90154 90153 In the Tools menu, select the board version and the serial port where the board is connected 90154 90153 Load the firmware into your board through File> Upload 90154 90160 90006 Arduino drivers 90007 90002 If you are a Microsoft Windows user, you may need to install the Arduino drivers into your computer: 90003 Arduino drivers for Microsoft Windows 90006 For Developers 90007 90002 S4A is free software distributed under an MIT license.90003 90002 Since Scratch is actually a Squeak Smalltalk image, all of its code is actually shipped with the final user version itself. To access it, just shift + left click on the S4A "File" menu and select "Exit User Mode". You're now in front of a classic Squeak 2.8 image, and have access to a Browser, Workspace and all tools you're used to. 90003 90002 However, in the final user version some code has been compiled and you'll be missing several variable and message argument names, which is why we are also providing you with a clean source code image for developers, downloadable here: 90003 90002 S4A Developer Edition 90003 90006 Alternative download site 90007 90002 Since our VPS provider may sometimes be down, we've set up an alternative location for all files, including old versions: 90003 S4A Dropbox folder 90006 Coming Soon! 90007 90002 As a response to requests by the S4A community, several of our students, and users around the globe, we are developing a series of kits that will provide the necessary hardware to get started with S4A, with preinstalled firmware and documentation.90003 90002 These kits will come in incremental upgrades, so that you will not need to pay for components you do not require for your project. 90003 90002 Stay tuned! 90003 90006 General questions 90007 90356 Can the S4A firmware damage the board? 90357 90002 In fact, our "firmware" is just like any other Arduino sketch, so there is no risk at all.Of course, you can upload other sketches to the board and then upload the S4A firmware again when needed. 90003 90356 Can the S4A programs be pushed into the Arduino board? 90357 90002 There is currently no way to compile code into Arduino binaries. It must be said that S4A was conceived as an improvement of the older versions of Scratch (the ones that were developed in Smalltalk), to make learning how to program real-world objects easier to everyone, specially to children, by dealing with these real objects in the same way they'd deal with Scratch "normal objects", so they can interact between them.In other words, it was not made to program the board directly, but to help learn programming and electronics at the same time. 90003 90002 Still, if what you want is to just get rid of the USB cable, we recommend you use a wireless device like XBee. 90003 90356 Can I change the pinout configuration? 90357 90002 Unfortunately, no. Pin configuration is hardcoded both in the firmware and in the source code of S4A, and the way S4A is made does not allow to change source code "on the fly".So, until we find a better way or enhance the communication protocol between the board and the program, the only way to customize the pinout is by changing both S4A source code and the firmware. There is a Spanish unofficial guide available here (thanks to Borja Pérez). 90003 90356 Which boards does S4A support? 90357 90002 S4A works with Arduino Diecimila, Duemilanove and Uno. Other boards have not been tested, but they may also work. 90003 90356 Will S4A work on my PC? 90357 90002 S4A works on the three major consumer operating systems: Microsoft Windows, GNU / Linux and MacOS.So yes, it will most probably work on your PC. 90003 90006 Installation troubleshooting 90007 90356 I can not install it on 64-bit Ubuntu / Debian 90357 90002 The Debian version of S4A is packaged only for i386 systems. To get it working in a 64-bit version, you need to follow the following steps (in a terminal, as root): 90003 90002 Fist of all, enable i386 packages and install ia32-libs 90003 90386 dpkg --add-architecture i386 90158 apt-get update 90158 apt-get install ia32-libs 90158 90390 90002 Then install S4A: 90003 90386 dpkg -i --force-architecture S4A16.deb 90390 90356 I'm having issues trying to install it on MacOS 90357 90002 Since MacOS 10.8 (Mountain Lion), Gatekeeper is set up by default to allow downloaded applications only from "Mac App Store and identified developers". To install S4A, you'll need to change this option to "Anywhere". 90003 90002 More info here. 90003 90006 Board connection troubleshooting 90007 90356 I've connected the board and S4A does not detect it 90357 90002 Make sure you have uploaded the latest S4A firmware to the board before starting S4A.To do this you'll need the official Arduino IDE. 90003 90002 Please follow the instructions on the Downloads section in this website. 90003 90356 Been there, done that. Board still not detected 90357 90002 This is a common known issue in Windows operating systems. Try stopping the connection with the board (right-click on sensor board in S4A), unplugging the USB cable, plugging it again and restarting the connection. If the program still does not detect the board, there may be a conflicting serial COM port causing S4A to hang when trying to open it.To avoid this, try opening it directly (right-click on sensor board and select serial port) or changing the assigned Arduino COM port through the Windows Device Manager. For more help on this issue, please visit this guide. 90003 90002 S4A has been developed at Citilab by the Edutec Research Group, with the help of the Smalltalk.cat programming group and of collaborators like Jorge Gómez, who leads the hardware and software educational project at Miscela.90003 90006 Marina Conde 90007 90002 Marina Conde got her bachelor degree in Computer Science in the Technical University of Catalonia (UPC) in 2009 and graduated as a Computer Engineer in 2012 in the same university. 90003 90002 While working at Citilab, she developed her first final thesis, which consisted in building a framework to work with Arduino boards from within the Pharo Smalltalk environment.Later on, she used this project as the basis on which S4A was written. 90003 90006 Víctor Casado 90007 90002 Víctor chose to study Computer Science in the Autonomous University of Barcelona (UAB), but after two years he switched to the Castelldefels School of Technology (EPSC) to course the technical degree on telecommunications. 90003 90002 While there, he had the opportunity to enter Citilab through an internship, where he later developed S4A, his final thesis.90003 90006 Joan Güell 90007 90002 Joan is a biologist who, in his early years, worked in the field of ecology. The need to analyze the generated information and collected data drove his approach to computing. He enrolled to his first programming course in 1975, when computers where still programmed by means of punch cards. 90003 90002 His main work in Citilab has been related to the field of training in two areas: teaching programming with Scratch, especially to children, and teaching computer skills to early adult citizens.90003 90006 Jose García 90007 90002 Jose studied advanced telecommunications engineering, but started working at a publishing firm before completing his degree. During his time at the company, he worked on programming a wide variety of applications. 90003 90002 At Citilab, he discovered Scratch and Smalltalk, taking up part of his programming work again.Later on, he joined different projects that aim to establish closer contact between users and programming. He currently leads the Technological Education Research team Edutec. 90003 90006 Bernat Romagosa 90007 90002 In 2009 Bernat graduated as a technical engineer in Computer Science at the Open University of Catalonia (UOC). He learned Smalltalk at a course given by Jordi Delgado at Citilab in 2008, where he was later hired to build an online programming school.90003 90002 Since then, he's been involved in several programming projects in Citilab, including a social knowledge management system and different educational applications. 90003 90006 Jordi Delgado 90007 90002 Jordi is an associate professor at the Software Departament of the Technical University of Catalonia (Universitat Politècnica de Catalunya). He belongs to the research group LARCA and teaches at the Barcelona School of Informatics.90003 90002 He spends most of his time divulging, spreading the word of and programming in Smalltalk, an amazing programming language that, you know, everyone should be using. He is a member of the board of the European Smalltalk Users Group (ESUG) and he leads the Smalltalk.cat local group. 90003 90024 Smalltalk 90025 90002 Scratch was developed in Squeak Smalltalk by the MIT.Being Smalltalk programmers ourselves, we were able to modify its source code in order to achieve interaction with Arduino boards. 90003 90002 You can reach us at [email protected] to report bugs or for any suggestions you may have. 90003 .

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *