Raspberry Pi проти Arduino: що краще?

Роздумуєте, що краще обрати: Raspberry Pi чи Arduino? Намагаєтесь визначити, в яких ситуаціях кожен з них буде найбільш ефективним?

І Raspberry Pi, і Arduino зробили революцію у світі технологій. Для правильного їх використання необхідно розуміти відмінності між ними.

У цій статті ми детально розглянемо, що таке Raspberry Pi і Arduino, а також порівняємо їхні можливості залежно від конкретних завдань.

Отже, почнемо.

Все, що потрібно знати про Raspberry Pi

Raspberry Pi – це доступний за ціною комп’ютер, розміром з банківську картку, розроблений Фондом Raspberry Pi, некомерційною організацією з Великої Британії.

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

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

Raspberry Pi також дає можливість людям будь-якого віку навчитися програмувати на таких мовах, як Scratch і Python.

Тепер, коли ми познайомилися з Pi, давайте глибше розглянемо технічні характеристики Raspberry Pi.

Raspberry Pi вперше з’явився у 2012 році, і з того часу було випущено кілька його удосконалених версій. Оригінальна модель мала одноядерний процесор з тактовою частотою 700 МГц і всього 256 МБ оперативної пам’яті.

У найновішій моделі, Raspberry Pi 4 Model B, ми маємо чотириядерний процесор з тактовою частотою понад 1,5 ГГц і 4 ГБ оперативної пам’яті.

Ціна на Raspberry Pi зазвичай не перевищує 80 доларів (найчастіше близько 35 доларів).

Pi Zero взагалі коштує 5 доларів, що підтверджує його компактність, доступність і ефективність.

Більше того, Raspberry Pi знайшов широке застосування в багатьох сферах, від музики до метеорологічних станцій.

Сфери застосування Raspberry Pi

#1. FM радіостанція

Хочете поділитися повідомленням з групою людей чи спільнотою? Raspberry Pi допоможе вам транслювати його через FM-радіо.

Зауважте: трансляція радіоповідомлень через FM-радіо без ліцензії є незаконною. На щастя, Pi здатний транслювати лише на невеликій відстані, тому ви можете уникнути проблем.

Вам знадобиться лише портативний акумулятор і базові навички паяння.

Завантажте аудіо, яке хочете транслювати, на карту microSD, і все готово!

#2. Створення ретро-ігрової системи своїми руками

Інше популярне застосування Raspberry Pi – це створення ретро-ігрової приставки. Він досить компактний і потужний для запуску різноманітних ігор.

Можна встановити окремий емулятор, завантажити ПЗУ і розпочати гру.

Також можна грати в ігри через платформи, розроблені спеціально для Raspberry Pi, наприклад RetroPie, RecalBox і PiPlay.

Ви навіть можете емулювати багато популярних платформ, таких як ігри для MS-DOS та Commodore 64. Крім того, Raspberry Pi допоможе відродити багато популярних 16-бітних ігрових консолей.

#3. Веб-сервери

Ще один чудовий варіант використання Raspberry Pi – це веб-сервер. Ці сервери достатньо потужні для хостингу веб-сайту, наприклад, вашого власного блогу.

Спочатку вам потрібно встановити програмне забезпечення Apache або повний стек LAMP з PHP і MySQL разом з Apache.

Після завершення налаштування ви можете завантажити свій HTML-файл у каталог (www), і ваш сервер почне працювати.

Зауважте: для того, щоб ваш веб-сайт запрацював, вам потрібна статична IP-адреса від вашого інтернет-провайдера.

Тепер давайте подивимося, що таке Arduino і чим він відрізняється від Raspberry Pi.

Все, що вам слід знати про Arduino

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

Інтегроване середовище розробки Arduino було створено в Інституті дизайну взаємодії Ivrea. Його мета така ж, як і Raspberry Pi – навчати студентів, які не мають досвіду в технологіях і програмуванні.

Плати Arduino можуть зчитувати вхідні сигнали – наприклад, світло від датчика або натискання кнопки – і перетворювати їх на вихідні, такі як активація двигуна або вмикання світлодіода.

Arduino став основою для багатьох простих і складних наукових проектів. Завдяки своїй зручності, він підходить як для новачків, так і для досвідчених користувачів.

Ви можете керувати Arduino, ввівши набір інструкцій або закодувавши програму на спрощеній мові C++ в інтегрованому середовищі розробки Arduino (IDE).

Зауважте: IDE – це місце, де ви вводите програмний код перед його завантаженням на плату.

Сфери застосування Arduino

#1. Музичні інструменти

За допомогою Arduino створюють різноманітні музичні інструменти, такі як синтезатори, барабани і терменвокси.

Для початку вам знадобиться шилд і Arduino UNO.

Плата Flic розпізнає жести на відстані до 15 см над поверхнею. Це дозволить вам махати руками в повітрі, і ваші рухи автоматично перетворюватимуться на музику.

Це справді цікавий проект на Arduino!

#2. Дверний замок з відбитком пальця

Набридло губити ключі, але не хочете встановлювати дорогий замок з відбитками пальців?

Що, якщо ми скажемо, що ви можете встановити замок з відбитками пальців на базі Arduino лише за 70 доларів?

Для початку вам знадобиться плата Arduino UNO, а також:

  • Датчик відбитків пальців
  • Інфрачервоний датчик відбиття
  • Серводвигун
  • РК-дисплей з RGB підсвічуванням
  • Щит живлення

Як це працює?

Спочатку потрібно зареєструвати свій відбиток пальця в системі. Після цього прикладіть палець до датчика відбитків пальців.

Якщо ваш палець розпізнано, серводвигун поверне замок і автоматично відчинить двері.

Коли двері зачиняються знову, інфрачервоні датчики виявляють рух і замикають двері. Звучить цікаво, чи не так?

#3. RoboCar

Не просто робокар, а робокар, який уникає перешкод!

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

Комерційні та військові організації використовують цю технологію для виконання небезпечних робіт без участі людини.

Що вам потрібно?

Вам знадобиться іграшковий автомобіль, ультразвуковий датчик, акумулятор 9 В/12 В 1 А і кілька одножильних дротів.

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

Переваги використання Raspberry Pi над Arduino

  • Широка підтримка периферійних пристроїв: він оснащений 26 контактами GPIO, що дозволяє підключати одночасно кілька дисплеїв, модулів і датчиків
  • Підтримка багатьох мов: підтримує різні мови програмування, такі як C, C++, Java, Python, Ruby тощо.
  • Доступний і потужний: співвідношення ціни та продуктивності Raspberry Pi є неперевершеним; він має процесор 1,6 ГГц, що є рідкістю для одноплатних комп’ютерів
  • Кишеньковий робочий стіл: ви можете легко перетворити свій Raspberry Pi на кишеньковий дистрибутив Linux, підключивши його до екрана; потім ви можете використовувати його для кодування, редагування фотографій, перегляду веб-сторінок та інших комп’ютерних задач

Переваги використання Arduino замість Raspberry Pi

  • Доступний і кросплатформний мікроконтролер: плата Arduino є найдоступнішим мікроконтролером на ринку, який працює на Windows, Mac та Linux
  • Простий у використанні: базується на середовищі програмування Processing і підходить як для новачків, так і для досвідчених користувачів
  • Програмне забезпечення з відкритим вихідним кодом: розповсюджується як інструмент з відкритим кодом і може бути розширений за допомогою бібліотек C++
  • Розширюване апаратне забезпечення: розповсюджується під ліцензією Creative Commons, що дозволяє розробникам створювати власну версію модуля

Raspberry Pi проти Arduino – коли що використовувати?

Ви хочете створювати інноваційні побутові пристрої та робототехніку, і вас цікавить, коли використовувати Raspberry Pi, а коли Arduino?

Для початку давайте з’ясуємо основну відмінність між Raspberry Pi і Arduino.

Плата Raspberry Pi має мікропроцесор. Її процесор базується на архітектурі ARM і може запускати повноцінну операційну систему (Raspbian, Ubuntu).

По суті, ви можете використовувати Raspberry Pi як комп’ютер (з деякими обмеженнями щодо продуктивності).

Натомість плата Arduino містить мікроконтролер. Залежно від типу Arduino, ви можете мати інший мікроконтролер.

Основна відмінність полягає в тому, що мікроконтролер – це не те саме, що мікропроцесор. Ви не можете встановити операційну систему на мікроконтролер Arduino. У вас просто програма, яка виконується в циклі. Ось і все!

Коли використовувати Raspberry Pi

Є проекти, які можна реалізувати тільки за допомогою Raspberry Pi.

#1. Якщо у вас складна програма

Існує велика різниця між програмуванням на мікропроцесорі (Raspberry Pi) і мікроконтролері (Arduino).

Arduino популярний завдяки своїй повторюваній структурі. Він обмежений одним потоком з одним циклом управління.

Очевидно, що одного потоку недостатньо для розробки алгоритму розпізнавання руху, створення кишенькового робочого столу або навіть передавання зображення з камери.

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

Якщо ви хочете створити щось складніше, вам знадобиться потужний мікропроцесор, як у Raspberry Pi.

#2. Якщо ви хочете програмувати з використанням багатьох можливостей Cpp

Мова Arduino є підмножиною C/Cpp і не дозволяє використовувати всі можливості Cpp, такі як C++14 або C++17 під час кодування.

Натомість, з Raspberry Pi ви можете використовувати всі функції Cpp.

Бібліотека std, винятки, ключові слова “new” і “delete” – все це доступно.

Крім того, ви зможете самостійно компілювати файли Cpp, не потребуючи сторонньої допомоги.

#3. Справжня багатопотоковість

Якщо ви розробляєте програму, що потребує багатопотоковості, Raspberry Pi – це ваш вибір!

З Arduino ви можете налаштувати свою програму так, щоб вона нагадувала багатопотоковість. Але це не буде ідеально!

Тому для досягнення “справжньої” багатопотоковості вам потрібно, щоб Raspberry Pi створював будь-який потік на вибраній вами мові програмування.

Коли використовувати Arduino

Оскільки плата Arduino використовує мікроконтролер, її не можна використовувати як операційну систему. Але деякі завдання можна виконати тільки за допомогою плати Arduino.

#1. Обробка в реальному часі

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

Зокрема, при використанні плати Raspberry Pi ви маєте менше контролю над ресурсами, оскільки операційна система керує ними за вас.

І якщо ви запускаєте кілька програм одночасно, ймовірність досягнення обробки в реальному часі через Raspberry Pi є меншою.

Проте, в деяких випадках можна досягти обмежень в реальному часі за допомогою Raspberry Pi, наприклад, використовуючи патч RT-Preempt. Але це, звичайно, складніше і менш практично.

З іншого боку, Arduino має набагато менше ресурсів процесора і мінімальну кількість КБ оперативної пам’яті.

Може здатися, що щось з меншою обчислювальною потужністю буде кращим, ніж Raspberry Pi. Але це не так.

Arduino працює на потужній мові програмування (C/C++). Оскільки у вас є тільки одна програма, яка виконується в циклі в одному потоці, легше оцінити час, необхідний для виконання завдання.

#2. При виконанні простого проекту

Наразі ви повинні були зрозуміти дві речі:

  • Raspberry Pi підходить для складних проектів
  • Arduino найкраще підходить для простих програм, які включають в себе повторювані інструкції

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

Крім того, на відміну від Raspberry Pi, Arduino постачається з попередньо інтегрованим апаратним забезпеченням і займає значно менше часу на розробку.

#3. Коли вам потрібні потужні апаратні контакти

Хоча обидві плати мають схожі апаратні характеристики, деякі ключові відмінності роблять Arduino кращим за Raspberry Pi у певних випадках, як наведено нижче.

  • Аналого-цифровий перетворювач (АЦП): АЦП Arduino UNO дозволяє зчитувати значення від 0 до 5 В, що спрощує зчитування відсоткових значень з датчиків
  • Вбудована ШІМ: деякі контакти Arduino дозволяють генерувати і використовувати ШІМ для надсилання аналогових сигналів через пристрій і повного контролю над ним.

Тепер, коли ви знаєте, що для чого найкраще підходить, розглянемо, де можна придбати Raspberry Pi і Arduino.

Де купити Raspberry Pi?

Щоб придбати Raspberry Pi, ви можете скористатися наступними надійними платформами.

#1. Amazon

Amazon – це велика інтернет-компанія, яка продає майже все, що тільки можна собі уявити. І звісно, плати Raspberry Pi тут також продаються.

На Amazon ви можете придбати останню версію Raspberry Pi, тобто Raspberry Pi 4 Model B, випущену в 2019 році.

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

#2. Okdo

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

Він пропонує свій Raspberry Pi 4 Model B в стартовому наборі з 8 компонентів.

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

Де купити Arduino?

#1. Arduino.cc

Arduino.cc – це офіційний магазин для всіх продуктів і аксесуарів Arduino. Він пропонує широкий асортимент продукції Arduino, серед яких найпопулярнішим є пакет сертифікації Arduino.

Набір включає в себе стартовий набір Arduino та онлайн-сертифікаційний іспит.

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

Іспит доступний англійською, іспанською, німецькою, італійською та китайською мовами.

#2. Amazon

І знову, Amazon є ідеальним майданчиком для придбання плат Arduino та аксесуарів до них.

Тут ви можете придбати все: від однокомпонентної плати Arduino UNO до повного комплекту Arduino.

Серед них Arduino Uno REV 3 є бестселером серії Arduino від Amazon. Це окрема плата Arduino з вражаючими оцінками та відгуками покупців.

Що краще: Raspberry Pi чи Arduino?

З наведеного вище обговорення стає очевидним, що і Raspberry Pi, і Arduino мають свої переваги та недоліки.

Вибір між цими двома платформами значною мірою залежить від типу програми, над якою ви будете працювати.

Arduino підходить для виконання повторюваних завдань, які включають один потік введення та прості вихідні сигнали, наприклад, відкриття дверей, вмикання/вимикання світла, зчитування температури за допомогою датчиків тощо.

З іншого боку, Raspberry Pi рекомендується для складних програм, які вимагають декількох програм і різних результатів, наприклад, управління роботами, створення кишенькового ПК, створення веб-сайту, публікація в інтернеті тощо.