1   2   3   4
Ім'я файлу: ФККПІ_2021_122_П_ятківський_В_Ю.pdf
Розширення: pdf
Розмір: 1266кб.
Дата: 08.06.2022
скачати
Пов'язані файли:
186393.rtf
ГРОШІ ТА КРЕДИТ.doc.docx
ЕКОНОМІКА ПІДПРИЄМСТВА.doc
залік-професйна іноземна мова (фахова).doc
Курсова (1).docx
Практична 3.docx
Заняття 3.DOCX
химия.docx
образец 2.docx
595594.rtf
stat_chvor.pdf
Семінар 2.docx
Лекція 5 Педагогічна техніка.docx
2022_щоденник_Вир_пр_в_гр_дошк_віку_.docx
Python_ПЗ_Модуль_04_Функции_ч_3.pdf
Тема 1.docx
Курсова пат анат.docx
Курсова робота по патологічній анатомії Інфекційний гепатит.docx
10_p35.docx
urrizmir0980[1].doc
Філологічна практика uk.docx
2.1.5. Програмування плати Arduino.
Для написання програм (скетчів) для контролер Ардуіно вам потрібно встановити середовище програмування. Найпростішим варіантом буде установка безкоштовної Arduino IDE, скачати її можна з офіційного сайту.
Сам скетч найчастіше представляє собою нескінченний цикл, в якому регулярно перевіряються порти з приєднаними до них датчиками і за допомогою спеціальних команд формується керуючий вплив на зовнішні пристрої (вони включаються або вимикаються). У програміста Ардуіно є можливість підключити готові бібліотеки, як вбудовані в IDE, так і доступні на численних сайтах і форумах.

28
Написана і скомпільована програма завантажується через USB-з'єднання
(UART- Serial). З боку контролера за цей процес відповідає bootloader.
Ардуіно програмується на мові програмування C / C ++ з відповідним йому синтаксисом. Вбудований складальник, препроцесор і компілятор виправляють велику кількість помилок і робить багато за користувача автоматично, ми навіть про це не знаємо і не замислюємося. Базові функції для управління портами і
інтерфейсами мікроконтролера, математика і деякі інші функції / макроси взяті з відкритого фреймворка для роботи з мікроконтролерами під назвою Wiring. Саме з нього складається базовий набір інструментів Ардуіно. У зв'язку з цим самі розробники Ардуіно називають мову "спрощеним c ++", і навіть дали йому окрему назву - Arduino Wiring. З самого початку в Arduino IDE нам доступна величезна купа різних функцій і інструментів: Всі можливості мови C ++, які надає компілятор: типи даних, оператори і взагалі весь неосяжний синтаксис. Ми програмуємо на тому ж C
++, на якому можна програмувати в будь-якому іншому місці. "Ядро" Ардуіно - бібліотека Arduino.h, яка автоматично підключається в код. У ній містяться функції для управління пінами, інтерфейсами, а також є набір всяких корисних функцій і
інструментів. А ще воно відповідає за ініціалізацію і настройку периферії мікроконтролера при запуску. В ядрі, до речі, лежать стандартні бібліотеки для Serial,
Wire, SPI і EEPROM. В папці з програмою лежить набір стандартних бібліотек: для
LCD дисплея, крокового мотора, сервоприводу і деяких інших приладів. З компілятором йде набір низькорівневих бібліотек для AVR. Компілятор дозволяє працювати з мікроконтролером "безпосередньо" за допомогою регістрів і читання даташіта. Також ми можемо писати на асемблері, взявши під контроль кожен такт роботи мікроконтролера.
При запуску Arduino IDE дає нам заготовку у вигляді двох обов'язкових функцій: setup() і loop(). Код в блоці setup() виконується один раз при кожному запуску мікроконтролера. Код в блоці loop() виконується "по колу" на всьому протязі роботи мікроконтролера, починаючи з моменту завершення виконання setup(). Також програма може містити підключення бібліотек. Бібліотека є файлом (набором

29 файлів), що містить такий самий С ++ код, на якому ми пишемо скетч (іноді зустрічаються і асемблерні вставки). Ми можемо підключити бібліотеку в свій код і використовувати можливості, які вона дає, а варіантів там дуже багато: готові
"інструменти" для роботи з зовнішніми датчиками і модулями, для роботи з внутрішньою периферією мікроконтролера (таймери, АЦП, пам'ять), бібліотеки різних математичних інструментів і багато чого іншого.
Рис. 2.2. Інтерфейс середовища Arduino IDE.
2.2. Bluetooth технологія
Bluetooth - це технологія бездротового з'єднання з іншими пристроями на відстані до 100 метрів. Роботи зі створення Bluetooth були розпочаті в 1994 році виробником телекомунікаційного устаткування Ericsson в якості бездротової альтернативи кабелям RS-232. В результаті Bluetooth розробила група Bluetooth

30
Special Interest Group, заснована в 1998 році. До неї увійшли компанії Ericsson, IBM,
Intel, Toshiba і Nokia. Згодом Bluetooth стала частиною міжнародного стандарту IEEE
802.15.1. Саме слово Bluetooth - це переклад на англійську мову датського слова
“Blatand” (“Синьозубий”). Так прозвали короля вікінгів Харальда I, який об'єднав ворогуючі датські племена в єдине королівство. Bluetooth по суті робить те ж саме з протоколами зв'язку, об'єднуючи їх в один універсальний стандарт.
Інтерфейс Bluetooth дозволяє передавати як голос (зі швидкістю 64 Кбіт / сек), так і дані. Для передачі даних можуть бути використані асиметричний (721 Кбіт / сек в одному напрямку і 57,6 Кбіт / сек в іншому) і симетричний методи (432,6 Кбіт / сек в обох напрямках). Bluetooth чіп - це маленький високочастотний (2.4 - 2.48 ГГц) приймач (рис. 2.3), який дозволяє в залежності від ступеня потужності встановлювати в зв’язок межах 10 або 100 метрів. Різниця в відстані, безумовно, велика, однак з’єднання в межах 10 м дозволяє зберегти низьке енергоспоживання, компактний розмір і досить невисоку вартість компонентів. Так, малопотужний передавач споживає всього 0.3 мА в режимі standby і в середньому 30 мА при обміні
інформацією.
Як радіотехнологія, Bluetooth здатний «обходити» перешкоди, тому що з’єднуються, можуть знаходитися поза зоною прямої видимості. З’єднання відбувається автоматично, як тільки Bluetooth-пристрої виявляються в межах досяжності, причому не тільки за принципом точка – точка (два пристрої), але і за принципом точка – багато точок (один пристрій працює з декількома іншими).
Рис. 2.3. Bluetooth чіп.

31
Принцип дії Bluetooth заснований на використанні радіохвиль. При включенні
Bluetooth активується радіопередавач, який працює в обмеженому діапазоні частот в районі 2,4 ГГц. Ця частина спектра називається ISM - Industry, Science and Medicine -
і використовується в різних побутових приладах і бездротових мережах. Після активації радіопередавач починає відстежувати всі сигнали в цьому діапазоні. Другий пристрій робить те ж саме. Після того, як пристрої виявили один одного, перше бере на себе роль передавача, а друге стає приймачем. При цьому дані передаються за спеціальним алгоритмом FHSS, який забезпечує стійкість до широкосмугових перешкод. Згідно з цим алгоритмом, частота сигналу Bluetooth стрибкоподібно змінюється 1600 разів в секунду, перестрибуючи з однієї з наявних 79 частот на іншу.
Послідовність перемикання між частотами для кожного з'єднання є псевдослучайной
і відома тільки передавача і приймача, які кожні 625 мікросекунд синхронно перебудовуються з однієї частоти на іншу. Таким чином, якщо поруч працюють кілька пар приймачів-передавачів, то вони не заважають один одному. Цей алгоритм також є частиною системи захисту інформації, що передається.
Перед відправкою по Bluetooth дані розбиваються на спеціальні блоки,
іменовані пакетами, з інструкціями по складанню з них вихідного файлу. Процесор приймача обробляє пакети, створює з них передається файл і поміщає його в постійну пам'ять пристрою.
При передачі цифрових даних і аудіосигналу використовуються різні схеми кодування: аудіосигнал не повторюється, а цифрові дані в разі втрати пакета
інформації передаються повторно.
Коли пара будь-яких Bluetooth-пристроїв з'єднується, то вони утворюють пікомережу. Одне з них, яке виконує функції ведучого пристрою, формує сигнали синхронізації частоти і її зміни. Зазвичай провідним є той модуль, який розміщений в найбільш потужному пристрої, такому, як персональний комп'ютер. Всі інші пристрої є відомими. Пікомережа є фундаментальною формою комунікації в технології Bluetooth. Пікомережа може містити до 7 активних ведучих пристроїв.

32
Крім того, в зоні впевненого прийому провідного пристрою можуть перебувати неактивні ведені пристрої, які також синхронізовані на загальні годинник і загальну послідовність зміни частот, але не можуть обмінюватися даними до тих пір, поки ведучий пристрій не активує їх. Якщо в мережі виявляється більше 8 пристроїв, то буде сформована друга пікомережа і так далі. Кілька (до 10) незалежних і навіть не синхронізованих між собою пікомереж, між якими можливий обмін інформацією, можуть об'єднуватися в так звану велику мережу Scatternel. Для цього кожна пара пікомереж повинна мати як мінімум одну спільну пристрій, який буде головним в одній і підпорядковується в інший. Таким чином, в межах окремої Scatternet може бути одночасно пов'язано максимум 71 пристрій.
Говорячи про бездротовий зв'язок, не можна залишити поза увагою питання безпеки такого з'єднання. Крім фокуса з частотними шаблонами і необхідності синхронізації прийому-передачі в стандарті Bluetooth передбачено шифрування даних, що передаються з ключем ефективної довжини від 8 до 128 біт і можливістю вибору односторонньої або двосторонньої аутентифікації (звичайно, можна обійтися взагалі без аутентифікації), що дозволяє встановлювати стійкість результуючого шифрування відповідно до законодавства кожної окремої країни (в деяких країнах заборонено використання сильної криптографії. На додаток до шифрування на рівні протоколу може бути застосоване шифрування на рівні додатків.
Часто доводиться стикатися з думкою, що Bluetooth-пристрої, які знаходяться в межах дії зв'язку, можуть просто з'єднатися і почати обмінюватися конфіденційною
інформацією. Насправді автоматичний обмін інформацією між Bluetooth-пристроями ведеться лише на рівні апаратного забезпечення, тобто виключно для визначення самого факту можливості з'єднання. А ось на рівні додатків користувач сам вирішує, ввести або заборонити автоматичну установку зв'язку. Таким чином, використання
Bluetooth стає безпечніше підключення до Інтернету, в якому всі вузли також з'єднані електрично, але це ще не означає отримання беззастережного доступу до будь-якого ресурсу.

33
Варто також зауважити, що стандарт Bluetooth розроблявся з розрахунком на малу потужність, тому вплив його на організм людини зведено до мінімуму.
Bluetooth пристосований для використання в тих бездротових пристроях зв'язку, де потрібно досить низька ціна, немає необхідності у високих швидкостях і бажано низьке енергоспоживання. Можливості застосування Bluetooth на практиці безмежні: крім синхронізації з настільним комп'ютером периферії на зразок клавіатур або мишей інтерфейс дозволяє дуже просто і з невеликими витратами організувати домашню мережу. Причому вузлами цієї мережі можуть бути будь-які пристрої, що мають потребу в інформації або володіють необхідною інформацією.
2.3. Огляд окремих компонентів апаратної частини платформи
Окрім плати мікроконтролера Arduino Uno до апаратної частини будуть входити інші компоненти.
2.3.1. Bluetooth модуль для Arduino HC-05
Одне з кращих рішень для організації двостороннього зв'язку по Bluetooth вашого Arduino-пристрої з планшетом, ноутбуком або іншим Bluetooth-пристроєм -
Bluetooth-модуль HC-05 (рис. 2.4), який може працювати як master (здійснювати пошук Bluetooth-пристроїв і ініціювати установку зв'язку), так і slave (пристрій - відомий).

34
Рис. 2.4. Bluetooth-модуль HC-05.
Основні характеристики модуля HC-05:
− Діапазон частот радіозв'язку: 2,4-2,48 ГГц
− Потужність передачі: 0,25-2,5 мВт
− Чутливість: -80 dBм
− Напруга живлення: 3,3-5 В
− Струм: 50 мА
− Радіус дії: до 10 метрів
− Інтерфейс: послідовний порт
Контакти: VCC - (живлення 3,6 - 6 В); GND - (земля); TXD (надсилання даних),
RXD (отримання даних) - UART інтерфейс; STATE - індикатор стану; KEY (або EN)
- контакт для входу в режим програмування.

35
2.3.2. Драйвер мотора
Найпростіший електродвигун працює тільки на постійному струмі (від батарейки). Струм проходить по рамці, розташованої між полюсами постійного магніту. Взаємодія магнітних полів рамки з струмом і магніту змушує рамку повертатися. Після кожного півоберту колектор перемикає контакти рамки, які підходять до батарейці, і тому рамка обертається.
До мікроконтроллера мотори напряму краще не під'єднувати, адже, в основному, мотори працюють зі струмами, напруга яких більша 5В, і в момент виключення або включення мотори створять пікові перепади струму, що може негативно вплинути на плату. Тому для кращого управління моторами використовується такий модуль як драйвер мотора. Драйвер мотора – пристрій, який дозволяє легко та зручно керувати швидкістю та напрямом обертання мотора за допомогою цифрових та ШІМ сигналів (рис. 2.5).
Рис. 2.5. Драйвер мотора.
Мотор керується трьома портами – двома цифровими та одним ШІМ. Мотор може обертатися за годинниковою стрілкою або проти неї. За це відповідають цифрові порти, які на драйвері мотора підключаються до контактів IN (рис.2.7). За

36 швидкість відповідає ШІМ порт і він підключається до EN контакту і може задавати діапазон значень 0-255.
Рис. 2.6. Комбінації сигналів для мотора.
2.3.3. Сервопривід
Сервомотори Ардуіно по суті своїй відмінні пристрої, які можуть повертатися в зазначене положення і можуть застосовуватися у величезній кількості областей.
Особливо зараз їх найчастіше застосовують в робототехніці. Зазвичай у них є вихідний вал, який може повертатися на 180 градусів. Використовуючи Arduino ми можемо поставити сервомоторами певне положення в яке він перейде (рис. 2.7).
Сервомотор отримує сигнал, подібний PWM. Кожен цикл в сигналі триває 20 мілісекунд, і велика частина часу в значенні LOW. На початку кожного циклу значення сигналу стає HIGH на час від 1 до 2 мілісекунд. При 1 мілісекунді вона становить 0 градусів, а при 2 миллисекундах - 180 градусів, а в проміжку значення від
0 до 180. Це дуже хороший і надійний метод.
Рис. 2.7. Будова сервоприводу.

37
2.4. MIT App Inventor 2
MIT App Inventor - це інтегроване середовище розробки веб-додатків
Він пропонує веб-редактор "Що ви бачите - те і отримуєте" для створення програм для мобільних телефонів, орієнтованих на операційні системи Android та iOS. Він використовує блочну мову програмування, побудовану на Google Blockly і натхненну такими мовами, як StarLogo TNG та Scratch, надаючи можливість кожному створити додаток для мобільних телефонів, щоб задовольнити потреби.
Інтерфейс користувача MIT App Inventor включає два основних редактори: редактор дизайну та редактор блоків. Редактор дизайну або дизайнер (рис. 2.8) – це
інтерфейс перетягування для викладення елементів користувальницького інтерфейсу програми (UI). Винахідники додатків перетягують компоненти з палітри (вкрай ліворуч) до засобу перегляду (ліворуч по центру), щоб додати їх до програми.
Винахідники можуть змінювати властивості компонентів (крайній праворуч). Також відображається огляд компонентів екрану та носіїв проекту (в центрі праворуч).
Редактор блоків – це середовище, в якому винахідники програм можуть візуально викласти логіку своїх додатків, використовуючи кольорові блоки, які з’єднуються, як шматочки головоломки, для опису програми. Код блоків зазвичай читається зліва направо, зверху вниз.
Для сприяння розробці та тестуванню App Inventor пропонує мобільний додаток, який називається App Inventor Companion (або просто “Супутник”), який розробники можуть використовувати для тестування та регулювання поведінки своїх додатків у режимі реального часу. Таким чином, кожен може швидко створити мобільний додаток і негайно почати ітерацію та тестування.

38
Рис. 2.8. Пенель “Дизайнер” програми MIT App Inventor 2.
Рис. 2.9. Панель “Редактор блоків” програми MIT App Inventor 2.

39
2.5. Висновки до розділу 2
Для побудови моделі автомобіля з можливістю його управління необхідно реалізувати програмну та апаратну частину.
Апаратна частина – це фізична модель нашого об'єкта, а саме модель автомобіля, яка складається з безлічі деталей. Основна деталь, яка буде відповідати за управління фізичної моделі автомобіля є плата мікроконтролера Arduino UNO R3.
Інші деталі будуть підключатися до портів плати, через яку будуть отримувати команди.
Програмна частина має 2 пункти, а саме розробка програмного застосунку на телефон за допомогою середовища розробки веб додатків MIT App Inventor 2, а також програмування мікроконтролера на виконання команд.

Виконав
Аркуш
Аркушів
Літера
Керівник
Консульт.
Н-котрол.
Зав. каф.
П'ятківський В.Ю.
Климова А.С.
Шевченко О.П.
Савченко А.С.
Кафедра КІТ (47)
НАУ 21 38 75 000 ПЗ
412 122
Розробка програмно-
апаратних засобів керування
моделлю автомобіля
40
8
РОЗДІЛ 3
РОЗРОБКА ПРОГРАМНО-АПАРАТНИХ ЗАСОБІВ КЕРУВАННЯ МОДЕЛЛЮ
АВТОМОБІЛЯ
3.1. Розробка апаратних засобів
За умовою задачі, потрібно було створити модель автомобіля з можливістю його управління.
Модель складається з наступних компонентів (рис. 3.1):
1. Мікроконтролера Arduino UNO R3;
2. Модуль драйвера мотора L298N;
3. 2-х електромоторів (3V-12V);
4. Сервопривід;
5. Блока живлення (9V-12V);
6. Перемикач
7. Bluetooth модуль HC-05;
8. Макетна плата.

41
За допомогою електромоторів буде здійснюватись рух моделі вперед-назад.
Bluetooth модуль необхідний для прийому даних від пульта управління. Драйвер мотора необхідний для управління напрямкор руху моторів та швидкістю їх обертання. Сервопривід для того, щоб платформа здійснювала повороти вліво- вправо. За допомогою мікроконтролера буде відбуватися керування всіма компонентами. Макетна плата необхідна для кращого підключення пристроїв. На неї буде виводитись струм від головного джерела живлення 12V та струм від плати мікроконтролера напругою 5V. Перемикач необхідний для ввімкнення живлення.
Схематична модель підключення компонентів зображена на рис. 3.1., а схема підключень в табл. 3.1.
Рис. 3.1. Схематична модель підключення компонентів прототипу автомобіля на дистанційному управлінні.

42
Таблиця 3.1.
Таблиця підключень компонентів.
Компонент
Контакт компонента
Контакт для підключення
Драйвер мотора
Порти підключення першого мотора
Контакти електромотора 1
Порти підключення другого мотора
Контакти електромотора 2
Живлення для двигунів
Джерело живлення 12V
VCC
5V мікроконтролера
GND
GND мікроконтролера
ENA
5 порт мікроконтролера
INA1 2 порт мікроконтролера
INA2 3 порт мікроконтролера
INB1 4 порт мікроконтролера
INB2 7 порт мікроконтролера
ENB
6 порт мікроконтролера
Сервопривід
GND (коричневий)
GND
VCC (червоний)
5V мікроконтролера
Signal (жовтий)
8 порт мікроконтролера
Bluetooth модуль
GND
GND
VCC
5V мікроконтролера
TX
10 порт мікроконтролера
RX
11 порт мікроконтролера

43

1   2   3   4

скачати

© Усі права захищені
написати до нас