Що таке Arduino?

Arduino – це платформа для прототипування електроніки з відкритим вихідним кодом, яка базується на гнучкому, простому у використанні апаратному та програмному забезпеченні. Вона створена для художників, дизайнерів, інженерів, любителів і всіх, хто хоч трохи цікавиться програмованою електронікою, створенням інтерактивних об’єктів або середовищ. 

Проекти Arduino можуть бути автономними, або вони можуть спілкуватися з програмним забезпеченням, запущеним на комп’ютері. Вони можуть спілкуватися з іншими Arduinos, Raspberry Pi, NodeMCU або майже будь-чим іншим. Arduino вимірює дані навколишнього середовища, зчитуючи дані з різних пристроїв, компонентів і датчиків. Вони можуть впливати на навколишнє середовище, керуючи світлодіодами, двигунами, сервоприводами, реле та багатьом іншим.

Незалежно від того, чи ви новачок, який тільки починає працювати з електронікою та вбудованими системами, чи професійний інженер, який планує свій наступний великий дизайнерський проект, Arduino має широкий вибір різноманітних плат, тому запропонує вам саме таку, що найкраще відповідає вашим конкретним вимогам. Для любителів та інженерів платформа Arduino була і є ідеальним місцем для швидкого створення прототипів і перевірки дизайну. Але більшість користувачів не може вийти за межі популярних плат розробки Arduino, як-от Arduino UNO, Mega тощо. Тому ця серія статей зосереджена на тому, щоб представити всі різні типи плат розробки Arduino та провести швидке порівняння їх функцій і застосувань. 

Ви можете запитати, чому обирати Arduino? Arduino дійсно спрощує процес створення проекту програмованої електроніки, що робить його чудовою платформою для початківців. Ви можете легко розпочати роботу над ним без попереднього досвіду роботи з електронікою. Є тисячі доступних навчальних посібників, і вони різного рівня складності, тож ви можете бути впевнені, що складність може бути набагато підвищено, коли опануєте основи. 

Схеми для плат опубліковано за ліцензією Creative Commons, тому досвідчені любителі та інші виробники можуть створювати власні версії Arduino, просто копіюючи, або потенційно розширюючи та покращуючи стандартний функціонал плат. 

 

Давайте перелічемо всі наявні офіціальні сімейства плат Arduino:

 

1. Класичне сімейство (Classic Family)

У класичному сімействі ви знайдете такі плати, як легендарна Arduino UNO та інші класичні плати, такі як Leonardo & Micro. Ці плати вважаються основою проекту Arduino і користуються успіхом протягом багатьох років (і далі в майбутньому).

Плати мікроконтролерів:
Arduino UNO R4 Minima
Arduino UNO R4 WiFi
Arduino UNO R3
Arduino Leonardo
Arduino UNO Mini Limited Edition
Arduino Micro
Arduino Zero
Arduino UNO WiFi Rev2

Плати розширення:
Arduino Motor Shield Rev3
Arduino 4 Relay Shield
Arduino Ethernet Shield Rev2


2. Сімейство Mega (Mega Family)

У сімействі Mega ви знайдете плати для проектів, які потребують збільшеної обчислювальної потужності та контактів GPIO.

Плати мікроконтролерів:
Arduino Mega 2560 Rev3
Arduino Due
Arduino GIGA R1 WiFi


3. Сімейство MKR (MKR Family)

Сімейство MKR – це серія плат, які можна комбінувати для створення дивовижних проектів без будь-яких додаткових схем. Кожна плата оснащена радіомодулем (крім MKR Zero), який забезпечує зв’язок Wi-Fi, Bluetooth®, LoRa®, Sigfox, NB-IoT. Усі плати сімейства засновані на 32-розрядному процесорі Cortex-M0 SAMD21 з низьким енергоспоживанням і оснащені криптографічним чіпом для безпечного зв’язку. Плати сімейства MKR розроблені для роботи з датчиками навколишнього середовища, GPS, Ethernet, керування двигунами, матрицею RGB, тощо.

Плати мікроконтролерів:
Arduino MKR 1000 WiFi
Arduino MKR WiFi 1010
Arduino MKR FOX 1200
Arduino MKR WAN 1300
Arduino MKR WAN 1310
Arduino MKR GSM 1400
Arduino MKR NB 1500
Arduino MKR Vidor 4000
Arduino MKR Zero
Плати розширення:
Arduino MKR ENV Shield Rev2
Arduino MKR GPS Shield
Arduino MKR IMU Shield
Arduino MKR RGB Shield
Arduino MKR THERM Shield
Arduino MKR ETH Shield
Arduino MKR 485 Shield
Arduino MKR CAN Shield
Arduino MKR MEM Shield


4. Сімейство Nano (Nano Family)

Сімейство Nano – це набір мініатюрних плат із безліччю функцій. Він варіюється від недорогого базового Nano Every до багатофункціонального Nano 33 BLE Sense / Nano RP2040 Connect, який має радіомодулі Bluetooth® / Wi-Fi. Ці плати також мають набір вбудованих датчиків, таких як температура/вологість, тиск, жести, мікрофон тощо. Їх також можна програмувати за допомогою MicroPython і підтримують машинне навчання. 

Плати мікроконтролерів:
Arduino Nano
Arduino Nano Every
Arduino Nano 33 BLE
Arduino Nano 33 BLE Sense
Arduino Nano ESP32
Arduino Nano 33 IoT
Arduino Nano RP2040 Connect

Саме детальному розгляду плат Сімейства Nano і присвячена дана стаття.

З початку давайте подивимося на позитивні та негативні сторони сімейства Arduino Nano.

Плюси:

  • Це є чудова платформа для новачків. Однією з переваг Arduino в цілому є величезна спільнота, яка стоїть за нею. Що б ви не хотіли зробити, швидше за все, хтось інший спробував це першим. Є незліченна кількість блогів і повідомлень на форумах, які охоплюють усе, що може уявити початківець майстер. Незалежно від того, чи потрібна вам допомога з кодом чи підказки щодо створення правильної електронної схеми для вашої збірки, користувачі Arduino з усього світу готові допомогти. На офіційному сайті Arduino є короткий посібник із початку роботи з Nano (https://docs.arduino.cc/hardware/nano), а плату можна програмувати безпосередньо з вашого браузера за допомогою веб-редактора Arduino (https://create.arduino.cc/editor).
  • Маленький розмір робить це сімейство плат ідеальним для компактних проектів.
  • Функціонально такі ж, як і їх більші побратими.
  • Розміщується на стандартній макетній платі, що полегшує створення прототипів. Arduino Nano має, здавалося б, невелику, але значну перевагу перед іншими, більшими платами Arduino. Оскільки він не страждає від такої ж нерівномірної відстані між контактами, як у оригінальних дизайнах Arduino (те, що нібито було помилкою в оригінальному файлі дизайну), він підійде на стандартну макетну плату. Це має явні переваги. Незалежно від того, чи ви тільки починаєте займатися електронікою, чи є досвідченим "ветераном", здатність працювати таким чином дозволить швидко створювати прототипи проектів без будь-якого паяння чи виконання дизайну.

Мінуси:

  • Відсутність вбудованого підключення (тільки для Nano та Nano Every) обмежує можливості використання Інтернету речей (IoT).
  • Можливо обмежений обсяг вбудованої пам'яті може ускладнити використання у складних програмах.

 

Щоб легше сприймати можливості плат, ми розділимо всі плати на три основні категорії:

  1. Плати початкового рівня
  2. Плати з розширеними можливостями
  3. Плати для Інтернету речей

 

1. Плати початкового рівня

Ці типи плат Arduino є найкращим вибором для початку. У цій категорії більшість плат мають низьку тактову частоту або обмежену кількість портів введення/виведення. Всі ці плати живляться від 8-розрядних мікроконтролерів. Більшість із них легко вивчати та створювати проекти. Мало того, на ринку доступні різноманітні модулі та плати розширення для них, особливо орієнтовані на ці плати базового рівня. 

 

1.1. Arduino Nano

Arduino Nano – це компактна версія Arduino UNO, тобто вона має більш-менш всі функціональні можливості Arduino UNO, але в малому форм-факторі. Єдиними істотними відмінностями від UNO є відсутність роз’єму живлення постійного струму, використання порту Mini-B USB  і мікросхема перетворювача USB-TTL. Nano використовує FT232, спеціальну мікросхему мосту USB-UART від FTDI замість ATMega16U2. Тому це також дуже популярний вибір серед розробників, як і UNO, через його невеликий розмір і низьку ціну. Це ідеальний мікроконтролер для вивчення електроніки та програмування, а його розмір робить його чудовим для вбудовування в проекти, які вимагають малого форм-фактора.

Основні параметри:

  • MCU: ATmega328
  • НАПРУГА I/O: 5 В
  • ПАМ'ЯТЬ: SRAM: 2 КБ / Flash: 32 КБ

Arduino Nano має 20 цифрових, 6 ШІМ і 8 аналогових контактів. Наразі Nano базується на Atmel ATmega328P і вперше побачив світ у 2008 році.

Він програмується, як і слід було очікувати, через Arduino Software IDE.

Команда Arduino пише: "Розроблений з думкою про виробників, Nano являє собою невелике, потужне та доступне рішення для щоденних проектів. Зберігаючи якість і надійність Arduino, вони полегшують, ніж будь-коли, втілення ваших проектних ідей у реальність. Вони сумісні з класичними платами Arduino, мають низьке енергоспоживання та оснащені більш потужними процесорами."

Arduino Nano — найдешевший справжній Arduino, який ви можете купити.

 

 

1.2. Arduino Nano Every

Arduino Nano Every – це плата нового покоління в малому форм-факторі. Як ми вже згадали вище, Arduino Nano є кращою платою для багатьох проектів, які потребують невеликого та дешевого рішення. Ми могли б назвати Arduino Nano Every, оновленим Arduino Nano з набагато більшими функціями. Nano Every працює на більш потужному процесорі ATMega4809. Він має на 50% більше пам’яті для програм і на 200% більше оперативної пам’яті, що дозволить нам використовувати цю плату для більших програм. Зубчасті отвори дозволяють нам використовувати Nano Every на друкованій платі без необхідності штифтів.


Найкраща базова плата для безпроблемних IoT-проектів (але без функції бездротового зв'язку): маленька, проста у використанні та за низькою ціною – у класичному форм-факторі Nano! Ідеально підходить для всіх, від освіти до робототехніки: ви можете створити дверний замок RFID, систему домашньої автоматизації або використовувати мікроконтролер MIDI для створення музики за допомогою недорогого Nano.

Основні параметри:

  • MCU: ATMega4809
  • НАПРУГА I/O: 5 В
  • ПАМ'ЯТЬ: SRAM: 6 КБ / Flash: 48 КБ

Arduino Nano Every – ідеальна плата для тих, хто любить працювати з Arduino, але має обмежений бюджет. Arduino Nano Every коштує майже половину ціни оригінального Arduino Nano. 
Nano Every має 22 цифрових, 5 ШІМ і 8 аналогових контактів. Описані як доступні, надійні, компактні та прості в програмуванні, нові члени сімейства Nano сумісні з класичними платами Arduino. Найдешевший спосіб входу, як згадувалося вище, — через плату Every, яка базується на мікроконтролері ATMega4809. Виробники можуть використовувати його в основі макетної плати або припаяти до друкованої плати, і він може замінити класичний Nano, де проекти потребують трохи більше режимів.

Arduino Nano є кращою платою для багатьох проектів, які потребують невеликої та легкої у використанні плати мікроконтролера. Невеликі розміри та низька ціна роблять Nano Every особливо придатним для носимих винаходів, недорогої робототехніки, електронних музичних інструментів і загального використання для керування меншими частинами великих проектів.

 

 

2. Плати з розширеними функціями

Плати Arduino в цій категорії призначені для проектів, де потрібні розширені функції та висока продуктивність.

 

2.1. Arduino Nano 33 BLE

Nano 33 BLE – це потужніша плата від Arduino в тому ж форм-факторі, що й популярна Arduino Nano. Незважаючи на той самий розмір, вона потужніша за Nano. Вона живиться від більш досконалого NRF52480 від Nordic Semiconductors, 32-розрядного процесора ARM Cortex-M4, що працює на частоті 64 МГц. Більший розмір флеш-пам'яті на 1 МБ і SRAM на 256 КБ роблять її кращим вибором там, де потрібно багато пам'яті. Головна особливість цієї плати є в самій назві – BLE, Bluetooth Low Energy. Nano 33BLE може бути як клієнтом BLE, так і хост (головним ) Bluetooth пристроєм. У цю епоху, коли все пов’язано, цей функціонал дозволить розробляти енергозберігаючі носії.


Найкомпактніша плата Arduino з Bluetooth® і Bluetooth® Low Energy і вбудованим інерційним датчиком для наукових експериментів, які потребують бездротового зв’язку на короткій відстані.

Основні параметри:

  • MCU: nRF52840 / u-blox® NINA-B306 (Bluetooth®)
  • НАПРУГА I/O: 3,3 В
  • ПАМ'ЯТЬ: SRAM: 256 КБ / Flash: 1 МБ
  • БОРТОВИЙ ДАТЧИК: IMU

Nano 33 BLE постачається з 9-осьовим інерціальним вимірювальним блоком (IMU), що означає, що вона містить акселерометр, гіроскоп і магнітометр з роздільною здатністю по 3 осях кожен. Це робить Nano 33 BLE ідеальним вибором для більш просунутих робототехнічних експериментів, навчальних трекерів, цифрових компасів тощо.

Якщо ви раніше використовували Arduino Nano у своїх проектах, Nano 33 BLE є еквівалентною піновою заміною. Ваш код все ще працюватиме, але пам’ятайте, що він працює при напрузі 3,3 В. Це означає, що вам потрібно переглянути свій оригінальний дизайн, якщо він не сумісний з 3,3 В. Крім того, основними відмінностями від класичного Nano є кращий процесор, роз’єм micro-USB і, як вже згадувалося, 9-осьовий IMU.

 

 

2.2. Arduino Nano 33 BLE Sense Rev2

 

Також доступний інший варіант Nana33 BLE під назвою Arduino Nano 33 BLE Sense (Rev 2) з деякими додатковими датчиками на борту. Наприклад, 9-осьовий інерційний датчик, датчик вологості та температури, барометричний датчик, мікрофон, датчик жестів, наближення, світлового кольору та інтенсивності світла.

Arduino Nano 33 BLE Sense має ті самі функції Bluetooth, що й Nano 33 BLE.

BLE Sense оснащено набором вбудованих датчиків:

  • 9-осьовий датчик інерції: що робить цю плату ідеальною для портативних пристроїв.
  • Датчик вологості та температури, що можуть використовуватися для дуже точних вимірювань умов навколишнього середовища.
  • Барометричний датчик, що дозволить зробити просту метеостанцію.
  • Мікрофон для захоплення та аналізу звуку в реальному часі.
  • Датчик жестів, наближення, кольору світла та інтенсивності світла. Завдяки цьому ви зможете усвоїх проектах оцінити освітленість кімнати, а також те, чи рухається хтось біля плати.

Arduino Nano 33 BLE Sense Rev2 – це плата Arduino з підтримкою штучного інтелекту, тож головною особливістю цієї плати, окрім вражаючого вибору датчиків, є можливість запускати на ній програми Edge Computing (AI) за допомогою TinyML. Ви можете створювати свої моделі машинного навчання за допомогою TensorFlow ™ Lite і надсилати їх на свою плату за допомогою Arduino IDE.

З Arduino Nano 33 BLE Sense Rev2 ви можете створювати:

  • носимі пристрої, які за допомогою ШІ можуть розпізнавати рухи.
  • пристрій моніторингу кімнатної температури, який може пропонувати або змінювати зміни в термостаті.
  • пристрій для розпізнавання жестів або голосу, використовуючи мікрофон або датчик жестів разом із можливостями ШІ на дошці.

Дізнайтеся, як користуватися бібліотекою Tensor Flow Lite, дотримуючись цих інструкцій, або дізнайтеся, як навчити свою плату за допомогою Edge Impulse.

 

 

3. Плати для Інтернету речей (IoT)

Сьогодні багато продуктів, які ми використовуємо, підтримують IoT, від простого комутатора до всіх побутових приладів. Типи плат Arduino, які ми збираємося розглянути, розроблені для таких застосувань. Давайте подивимося, що це за плати в сімействі Arduino Nano і в чому їх особливості.

 

3.1. Arduino Nano ESP32

Ця плата поєднує в собі всю потужність добре відомого ESP32-S3 із повною підтримкою екосистеми Arduino, що дозволяє виробникам досліджувати світ Arduino та MicroPython без жодного блокувальника. Просто розкрийте свій творчий потенціал і почніть будувати наступний проект IoT.

Основні параметри:

  • MCU: ESP32-S3
  • НАПРУГА I/O: 3,3 В
  • ПАМ'ЯТЬ: SRAM: 512 КБ / Flash: 16 МБ

Ключові особливості Nano ESP32:

  • Компактний розмір: розроблена з урахуванням  форм-фактора Nano, компактний розмір цієї плати робить її ідеальною для вбудовування в окремі проекти.
  • Wi-Fi® і Bluetooth®: використовуйте потужність мікроконтролера ESP32-S3, добре відомого в сфері Інтернету речей, з повною підтримкою Arduino для бездротового зв’язку та Bluetooth®.
  • Підтримка Arduino та MicroPython: легко перемикайтеся між програмуванням Arduino та MicroPython за допомогою кількох простих кроків. Додаткову інформацію можна знайти на https://docs.arduino.cc/tutorials/nano-esp32/getting-started-nano-esp32.
  • Сумісність з Arduino IoT Cloud: швидко й легко створюйте проекти IoT за допомогою лише кількох рядків коду. Стандартні налаштування піклуються про безпеку, дозволяючи вам відстежувати та контролювати свій проект з будь-якого місця за допомогою програми Arduino IoT Cloud app. (Доступно з серпня 2023 р.)
  • Підтримка HID: емулюйте пристрої людського інтерфейсу, такі як клавіатури чи миші, через USB, відкриваючи нові можливості для взаємодії з комп’ютером.

 

 

3.2. Arduino Nano 33 IoT

Як випливає з назви, ця плата має той самий форм-фактор, що й Nano. Плата живиться від малопотужного 32-розрядного ARM Cortex M0, Atmel SAMD21. Підключення WiFi і Bluetooth здійснюється за допомогою модуля u-blox NINA-W102. Плата також оснащена крипточіпом Microchip ECC60r, який забезпечує безпечний зв'язок. Крім того, вбудований 6 aixs IMU дозволяє використовувати плату в проектах, які потребують або реалізують такі функції, як вібраційний сигнал, балансування крокоміра та відносне позиціонування тощо. Ця плата також сумісна з більшістю хмарних сервісів IoT, таких як Arduino IoT Cloud, Blynk, IFTTT, AWS IoT Core, Azure, Firebase тощо. Arduino Nano 33 IoT – це дуже цікава плата для проектів IoT. 

Ця плата буде у нагоді, якщо ви плануєте створити свій власний автоматизований будинок, інтерактивну гру чи розумний сад, автоматичну годівницю для домашніх тварин, розумний детектор паркування для легкого авто або керування споживанням енергії вдома.

Основні параметри:

  • MCU: SAMD21 Arm® Cortex®-M0+ / u-blox® NINA-W102 (Wi-Fi® і Bluetooth®)
  • НАПРУГА I/O: 3,3 В
  • ПАМ'ЯТЬ: SRAM: 256 КБ / Flash: 1 МБ
  • БОРТОВИЙ ДАТЧИК: IMU

З Arduino Nano 33 IoT світ IoT (Інтернета речей) стає набагато доступнішим. Цю плату Arduino можна програмувати в Arduino Create. Коли ви це зробите, ви можете створити інформаційну панель у хмарі Arduino IoT, де ви зможете читати всі дані з датчиків. З цієї панелі також можна керувати освітленням або приводами, наприклад, за допомогою віртуальної кнопки. Arduino Nano 33 IoT має вбудований модуль WiFi і BLE, щоб ви могли легко підключити свій проект бездротовим способом.
Nano Every має 22 цифрових, 11 ШІМ і 8 аналогових контактів.

 

 

 

3.3. Nano RP2040 Connect

І остання, але не менш важлива, Arduino Nano RP2040 Connect – найновіше доповнення до сімейства Arduino. Вона містить досить популярний перший власний чіп Raspberry Foundation, RP2040. RP2040 – це двоядерний ARM Cortex M0+ SoC, який працює на частоті 133 МГц і має 264 КБ SRAM і 16 МБ зовнішньої флеш-пам’яті. На платі є NINA-W102 для підключення Wi-Fi і BLE, є вбудований мікрофон для активації звуку, керування звуком і навіть розпізнавання голосу. На борту також є 6-осьовий IMU. Плата також сумісна з RPi Pico.

Arduino Nano RP2040 Connect дозволяє створити ваш наступний розумний проект. Ви коли-небудь хотіли мати автоматизований будинок? Або розумний сад? Що ж, тепер це легко з платами, сумісними з Arduino IoT Cloud. Це означає: ви можете підключати пристрої, візуалізувати дані, контролювати та ділитися своїми проектами з будь-якої точки світу. Незалежно від того, новачок ви чи професіонал, у нас є широкий вибір планів, щоб гарантувати, що ви отримаєте потрібні вам функції. 

Arduino Nano RP2040 Connect – це преміальний вибір для пристроїв RP2040 і ідеальний варіант для оновлення ваших проектів і розкриття потенціалу нових.

Основні особливості:

  • Радіомодуль u-blox NINA-W102 робить це єдиною підключеною опцією RP2040. Він забезпечує повне підключення Wi-Fi 802.11b/g/n, а також Bluetooth® і Bluetooth® Low Energy v4.2
  • На цій крихітній платі розміщено пару дуже корисних датчиків. Є вбудований мікрофон для активації звуку, керування звуком і навіть розпізнавання голосу AI. Шестиосьовий інтелектуальний IMU з можливостями штучного інтелекту повідомляє дошці, у якому напрямку вона рухається, і додає датчик падіння та активацію подвійним дотиком.
  • Завдяки 16 МБ флеш-пам’яті, яка є зовнішньою по відношенню до мікропроцесора, є багато місця для вашого коду та потреб у сховищі.
  • Програмовані контакти вводу/виводу мають функції, про які великі плати тільки мріють; 22 цифрових, 18 з ШІМ і 8 аналогових.
  • Сумісний з Raspberry Pi® Pico. Він повністю підтримує всю програмну екосистему RP2040.
  • Підтримує мову програмування Arduino, IDE 2.0 і всі додані бібліотеки.
  • Повна підтримка MicroPython. Nano RP2040 Connect йде із БЕЗКОШТОВНОЮ ліцензією OpenMV для проектів машинного зору.
  • Програмуйте та керуйте Nano RP2040 Connect безпосередньо з веб-браузера. Завантажуйте свої ескізи по повітрю за допомогою миттєвого дистанційного керування з безкоштовної програми для смартфона Arduino IoT Remote.

 

Основні параметри:

  • MCU: Raspberry Pi RP2040 / u-blox® NINA-W102 (Wi-Fi® і Bluetooth®)
  • НАПРУГА I/O: 3,3 В
  • ПАМ'ЯТЬ: SRAM: 264 kB / Flash: 16 MB IC
  • БОРТОВИЙ ДАТЧИК: IMU / Мікрофон


 

Підсумок

Ми сподіваємося, що ви тепер ви краще розібралися в різних платах Arduino та їхніх особливостях. Отже, який Arduino найкращий для вас, повністю залежатиме від ваших потреб. Якщо ви новачок або виконуєте проекти, які не вимагають великої обчислювальної потужності чи вбудованого зв’язку, ви можете обрати базові Nano, оскільки вони дешеві та прості в програмуванні. Якщо вам потрібна досконаліша плата, ви можете вибрати одну з наведеного вище списку залежно від ваших вимог.

Ну а для полегшення вибору, можете скористуватися цією таблицею, що порівнює всі наведені вище моделі: