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

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

А почнемо ми з платформи, яка відома, мабуть, всім. І часто її недооцінюють, вважаючи її «несерйозною», чи «дитячими забавками». Звичайно, ви не зустрінете її в серійних виробах, але, для прототипування, для перевірки ідеї вона якнайкраще підходить. І саме тому, з нею наші студенти працюють лише на першому курсі, в якості «вступу» до фаху. Мова йде про мікроконтролерну плату Arduino. Для тих, хто вже зустрічався з нею немає сенсу робити детальні пояснення – що всередині, скільки пам’яті, яка тактова частота тощо. А для тих, хто не зустрічався – пояснимо так. Уявіть, у Вас є електронний модуль, серцем якого є спеціальна мікросхема – мікроконтролер, яка може виконувати вашу програму та працювати з двигунами, дисплеями, датчиками, передавати інформацію в мережу Інтернет. Наприклад, за допомогою окремого датчика – вимірювати температуру в приміщенні, або наявність певного газу, і передавати її на сервер, де користувач може її переглядати. Або, керувати серводвигуном, який буде відкривати кришку відра для сміття, якщо Ви підностите до нього руку. Або ж – керувати дроном, приймаючи команди від користувача та змінюючи швидкість обертання пропелерів. І Ви можете змінювати цю програму, використовуючи цей модуль повторно величезну кількість разів. Вирішили, що відро можна відкривати і вручну, і краще автоматизувати освітлення в туалеті – розібрали попередню конструкцію і зібрали нову. За рахунок великої кількості готових модулів та бібліотек для Arduino Ви можете дуже швидко втілити майже будь-яку вашу ідею. Звичайно, є й обмеження. Як правило, така конструкція не буде дуже надійною, за простотою будуть ховатися обмеження, і використати її, наприклад, для керування важливим технологічним процесом на виробництві – не найкраща ідея. Але, як прототип, перша проба – це чудовий інструмент!

І тому, в наших дисциплінах «Вступ до фаху» та «Комп’ютерна практика» наші студенти вчаться працювати з Arduino, писати найпростіші програми, підключати датчики, керувати двигунами тощо. І вже на першому курсі отримають практичний досвід, і можуть збирати свої перші «розумні» пристрої! А в подалльшому, на 2 та подальших роках навчання, вони вже самостійно розробляють плати, вивчають більш складні мікроконтролери, детально працюють з провідними та бездротовими інтерфесами для підключення пристроїв у мережу…

Як же працюють наші студенти з Ардуіно? В аудиторіях ми маємо комплекти, підготовлені нашими лаборантами (до речі – студентами цієї ж освітньої програми, які працюють на старших курсах на кафедрі). В кожному комплекті є все необхідне – плата Arduino Uno, набір датчиків (датчик відстані – ультразвуковий сонар, датчики температури), виконавчих механізмів (серводвигун, двигун постійного струму), додаткові плати розширення, так звані «шилди» (від англ. Shields – «щити»), які містять індикатори, динаміки тощо. Також до комплекту входить макетна плата, набір кабелів для з’єднання компонентів між собою. Все це розміщується у зручній коробці. Ці комплекти можуть видаватися здобувачам для роботи вдома (у випадку дистанційного навчання). Крім цього, ми рекомендуємо використовувати онлайн симулятори, якi дозволяють «зібрати» схему та перевірити програму навіть без використання реального обладнання – безкоштовне ПЗ TinkerCAD використовується в такому випадку під час онлайн навчання, на фото Ви можете побачити, як це виглядає.

Але й це ще не все – наші здобувачі від LabsLand, нашого партнеру по проєкту від NGI (New Generation Internet) Search, отримали безкоштовний доступ до так званих «віддалених» лабораторій (це можливість дистанційно, через інтернет, підключитися до реального обладнання та виконувати лабораторні роботи). І серед цих лабораторій є також лабораторія з опанування основ роботи з Arduino. Але, про дистанційні лабораторії – пізніше, так як це вже окрема тема для розмови.