Лабораторна робота №1
Тема. Принцип роботи Arduino і сервісом Autodesk circuits.
Використовувати для вивчення робототехніки!
Лабораторна робота №1
Тема. Принцип роботи Arduino і сервісом Autodesk circuits.
Мета: ознайомитися з основними принципами роботи Arduino; навчитися складати алгоритм програми та аналізувати діяльність сервісу Autodesk circuits.
Обладнання та програмне забезпечення: персональні комп’ютери, програмне забезпечення для роботи з платформою Arduino, роздатковий дидактичний матеріал, мультимедійні навчальні елементи.
Теоретичні відомості
Arduino – це зручна платформа швидкої розробки електронних пристроїв призначена для різного рівня користувачів. Платформа користується величезною популярністю в усьому світі завдяки зручності і простоті мови програмування, а також відкритої архітектури і програмного коду. Пристрій програмується через USB без використання програматорів.
Arduino дозволяє комп'ютеру вийти за рамки віртуального світу в фізичний і взаємодіяти з ним. Пристрої на базі Arduino можуть отримувати інформацію про навколишнє середовище за допомогою різних датчиків, а також можуть управляти різними пристроями [2].
Мікроконтролер на платі програмується за допомогою мови Arduino (заснований на мові Wiring) і середовища розробки Arduino (заснована на середовищі Processing). Проекти пристроїв, засновані на Arduino, можуть працювати самостійно, або ж взаємодіяти з програмним забезпеченням на комп'ютері (напр .: Flash, Processing, MaxMSP). Плати можуть бути зібрані користувачем самостійно або куплені в зборі. Програмне забезпечення є для безкоштовного скачування. Вихідні креслення схем (файли CAD) є загальнодоступними, користувачі можуть застосовувати їх на свій розсуд.
Апаратна частина
Плата Arduino складається з мікроконтролера Atmel AVR (ATmega328 і ATmega168 в нових версіях і ATmega8 в старих) та елементної обв'язки для програмування та інтеграції з іншими схемами. На кожній платі обов'язково присутні лінійний стабілізатор напруги 5 В і 16 МГц кварцовий генератор (в деяких версіях керамічний резонатор). У мікроконтролер попередньо прошитий завантажувач, тому зовнішній програматор не потрібен [1].
Рис.1. Плата Arduino
На концептуальному рівні, все плати програмуються через RS-232 (послідовне з'єднання), але реалізація цього способу відрізняється від версії до версії. Поточні плати, на зразок Uno, програмуються через USB, що здійснюється завдяки мікросхемі конвертера USB-to-serial. У деяких варіантах, таких як Arduino Mini або неофіційною Boarduino, для програмування потрібне підключення окремої плати USB-to-serial або кабелю[3].
Плати Arduino дозволяють використовувати більшу частину I/O виходів мікроконтролера в зовнішніх схемах. Наприклад, в платі Uno є 14 цифрових входів / виходів (рівні «LOW» -0В і «HIGH» -5В), 6 з яких можуть видавати ШІМ сигнал, і 6 аналогових входів (0-5В). На ринку доступні кілька зовнішніх плат розширення, відомих як «shields».
Програмне забезпечення
Інтегроване середовище розробки Arduino - це кроссплатформлений додаток на Java, що включає в себе редактор коду, компілятор і модуль передачі прошивки в плату.
Рис.2. Інтегроване середовище розробки Arduino
Середовище розробки засноване на мові програмування Processing і спроектоване для програмування початкового рівня, які не знайомі близько з розробкою програмного забезпечення. Програми обробляються за допомогою препроцесора, а потім компілюється за допомогою AVR-GCC [4].
Autodesk Circuits
Кілька років тому, компанія Autodesk представила новий онлайн сервіс 123D Circuits. Це web-додаток призначений для проектування електронних схем і друкованих плат, яке дозволяє у візуальному режимі прямо з браузера редагувати код і будувати схеми без паяльника і проводів, що досить зручно.
123D Circuits пропонує цілий ряд можливостей для роботи в області схемотехніки. Після внесення даних облікового запису користувачеві на вибір пропонується: створення нових схем, додавання компонентів або імпорт ланцюгів з програми Eagle. Розміри плат тут можна вибирати за власним бажанням, підтримується вільне розміщення тексту, метод шовкографії. Однак основною особливістю 123D Circuits є імітація платформи Arduino з підтримкою плат введення / виводу і можливістю редагування програмного коду з браузера в візуальному режимі [2].
Працювати над схемами можна спільно з іншими користувачами, використовуючи бібліотеку компонентів. У візуальному режимі можна накидати дроти і різні компоненти на макетну плату і підключати до віртуальної Arduino. Крім того є можливість проведення діагностики, аналізу та інтерактивної імітації роботи схеми в режимі реального часу.
Рис.3. Пристрій макетної плати зсередини
Хід виконання
Рис.4. Електрона лабораторія
Рис.5. Початкове вікно лабораторії
Рис.6. Макетна плата
Рис.7. Світлодіод на макетній платі
Рис.8. Резистори 10 кОМ та 1кОМ
В результаті збірки схема повинна виглядати приблизно так.
Рис.9.Вигляд схеми
Рис.10. Підключення світлодіода до Arduino Uno
Рис.11. Видалення необхідних елементів
Рис.12. Підключення світлодіода до живлення
Рис.13. Апаратне підключення світлодіода
Код
void setup()
{
// налаштовуємо пін №13 в режим виходу,
// тобто в режим джерела напруги
pinMode (13, OUTPUT);
}
void loop ()
{
// подаємо на пін 13 «високий сигнал» (англ. «High»), тобто
// видаємо 5 вольт. Через світлодіод проходить струм.
// Це змусить його світитися
digitalWrite (13, HIGH);
// затримуємо (англ. «Delay») мікроконтролер в цьому
// стані на 1000 мілісекунд
delay (1000);
// подаємо на пін 13 «низький сигнал» (англ. «Low»), тобто
// видаємо 0 вольт або, точніше, прирівнюємо пін 13 до землі
// В результаті світлодіод згасне
digitalWrite (13, LOW);
// завмираємо в цьому стані на 1000 мілісекунд
delay (1000);
// після «розморожування» loop відразу ж почне виконуватися
// знову, і з боку це буде виглядати так, ніби
// світлодіод блимає раз в 1000 мс +1000 мс = 2000 мс = 2 сек
}
Після натискання кнопки Start спостерігаємо роботу пристрою. Світлодіод буде помигувати, експериментуємо з часом включення і виключення, тобто змінюємо цифри в коді.
Вимоги до виконання лабораторної роботи
Звiт про виконання лабораторної роботи обов`язково повинен мiстити:
Оформленi таким чином роботи повиннi бути захищенi у визначенi викладачем строки. При захисті студент повинен знати відповідний теоретичний матеріал та вміти розв’язувати задачі.
Контрольні запитання
Використанні джерела