Русский   English
ДонНТУ   Портал магістрів

Розробка та дослідження модуля керування з віддаленим доступом в мікроконтролерній системі на базі інтерфейсу Wi-Fi

Зміст

Вступ

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

З впровадженням мікроконтролерних систем бурхливий розвиток отримала концепція «Інтернет речей», сформульована ще в 1999 [1] року і передбачає виключення з різного роду процесів участі людини. Пізніше, в 2004 році була опублікована присвячена цій концепції стаття [2], в якій була приведена ілюстрація, що показує, як побутові прилади, домашні системи, датчики, і «речі» взаємодіють один з одним за допомогою комунікаційних мереж і роблять процеси повністю автоматизованими. Важливим моментом у розвитку «Інтернету речей» були 2008-2009 роки, коли кількість пристроїв, підключених до глобальної мережі, перевищила чисельність населення Землі [3].

Чи не останню роль у розвитку концепції «Інтернет речей» зіграли і бездротові технології, найпоширенішим з яких є інтерфейс Wi-Fi. Впровадження цього інтерфейсу дозволило створювати безконтактні мікропроцесорні системи, забезпечуючи гнучкість в їх використанні.

1. Актуальність теми

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

Також, сьогодні активно розвивається модель «туманних обчислень», в якій дані і їх обробка знаходяться максимально близько до пристрою. Необхідність цієї моделі з'явилася в зв'язку з величезною кількістю пристроїв і великими обсягами даних, які потрібно обробляти з малою затримкою в режимі реального часу [4]. Дана концепція вимагає активної взаємодії між пристроями, що тісно пов'язує її з «Інтернетом речей» і бездротовими технологіями.

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

Існує безліч прикладів застосування мікроконтролерних систем з віддаленим доступом. Наприклад, Абдрахманов Вали Хизировіч, Важдаев Костянтин Володимирович і Саліхов Ренат Баязітовіч в своїй статті [5] досліджували можливість підвищення якості молочної продукції з допомогою мережевих електронних технологій і контролю через мережу і моніторингу доїльного обладнання.

2. Мета і завдання дослідження, плановані результати

Метою роботи є розробка модуля управління з віддаленим доступом в микроконтроллерной системі на базі інтерфейсу Wi-Fi і дослідження процесу передачі даних. Для досягнення мети виділено наступні завдання:

  1. Аналіз апаратної бази для побудови моделі.
  2. Побудова експериментальної моделі.
  3. Розробка програмного забезпечення для експериментальної моделі.
  4. Дослідження процесу передачі даних.

3. Аналіз мікроконтролера ESP8266

ESP8266 - мікроконтролер китайського виробника Espressif з інтерфейсом Wi-Fi. Крім Wi-Fi мікроконтролер відрізняється можливістю виконувати програми з зовнішньої флеш-пам'яті з інтерфейсом SPI. Даний мікроконтролер привернув увагу в 2014 році в зв'язку з виходом перших продуктів на його базі за незвичайно низькою ціною.

Даний мікроконтролер містить:

Мікроконтролер не має на кристалі користувальницької незалежній пам'яті. Виконання програми ведеться з зовнішньої SPI ПЗУ шляхом динамічної підвантаження необхідних ділянок програми в кеш інструкцій. Вантаження йде апаратно, прозоро для програміста. Підтримується до 16 МБ зовнішньої пам'яті програм. Можливий Standard, Dual або Quad SPI інтерфейс.

Виробник не надає документації на внутрішню периферію мікроконтролера. Замість цього він дає набір бібліотек, через API яких програміст отримує доступ до периферії. Оскільки ці бібліотеки інтенсивно використовують ОЗУ контролера, то виробник в документах не вказує точну кількість ОЗУ на кристалі, а тільки приблизну оцінку того кількості ОЗУ, що залишиться користувачеві після лінковки бібліотек - близько 50 кБ. Імовірно, він містить 32 кБ кешу інструкцій і 80 кБ ОЗУ даних.

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

Основне застосування знаходить в управлінні різноманітними побутовими приладами через бездротові мережі. Концепцію такого управління називають «Internet of Things». Верхній рівень цієї концепції представлений різноманітними додатками під управлінням популярних платформ (Android, Windows і т.д.).

Для розробки була обрана плата LoLin v3 NodeMcu Lua на базі ESP8266. Дана плата використовується для програмування, контролю, управління в різних проектах, в яких потрібно використання мікроконтролера або можливе підключення до програмного забезпечення, що виконується на комп'ютері. LoLin NodeMcu v3 поставляється на платі з гніздом MicroUSB і перетворювачем USB - UART CH340G, що дозволяє не використовувати зовнішні перетворювачі USB - UART і не турбуватися на рахунок великого споживання чіпа ESP8266.

Плата LoLin v3 NodeMcu Lua

Рисунок 1 – Плата LoLin v3 NodeMcu Lua

Для використання LoLin NodeMcu v3 потрібно підключити його до USB порту комп'ютера за допомогою кабелю USB тип A - microUSB тип B. Операційна система комп'ютера визначить пристрій як USB Serial CH340. Після подачі живлення на платі контролера почне блимати синій світлодіод (індикація передачі даних). Після підключення контролера до комп'ютера потрібно завантажити і встановити програмне забезпечення для роботи. LoLin NodeMcu v3 поставляється з уже завантаженої на ESP8266 прошивкою NodeMCU. Дана прошивка сприймає код, написаний на мові програмування LUA.

Але, також є можливість працювати з Arduino IDE на мові програмування С і С ++. Перед прошивкою потрібно затиснути кнопку Reset, потім, не відпускаючи Reset, затиснути кнопку Flash, потім відпустити спочатку Reset потім Flash. Для оновлення прошивки в програмі Arduino IDE за адресою: вкладка «Файл», пункт «Налаштування», в поле «Additional Boards Manager URLs:» водиться рядок http://arduino.esp8266.com/package_ esp8266com_index.json. Далі вкладка «Інструменти», пункт «Плата:», у спливаючому списку вибирається «Boards Manager ...», в рядку пошуку потрібно набрати ESP, під рядком пошуку з'явиться назва модуля, далі тиснемо кнопку «INSTALLED». Після того, як інформація завантажиться і пройде установка, з'явиться можливість вибрати в програмному забезпеченні Arduino IDE модуль ESP8266 як контролер і безпосередньо писати під нього програми. Після цього повертаємося у вкладку «Інструменти», пункт «Плата:» шукаємо і вибираємо NodeMCU 1.0.

Передбачено три варіанти використання в бездротовому режимі: Клієнт (STA), Точка доступу (AP), Клієнт + Точка доступу (STA + AP).

Распиновка LoLin v3 NodeMcu Lua

Рисунок 2 – Распиновка LoLin v3 NodeMcu Lua

Висновки

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

Список джерел

  1. Леонид Черняк. Платформа Интернета вещей. Открытые системы. СУБД, №7, 2012. Открытые системы
  2. Neil Gershenfeld, Raffi Krikorian, Danny Cohen. The Internet of Things
  3. Dave Evans. The Internet of Things. How the Next Evolution of the Internet Is Changing Everything
  4. Bonomi, Flavio; Milito, Rodolfo; Zhu, Jiang; Addepalli, Sateesh (2012-08-17). Fog computing and its role in the internet of things
  5. Абдрахманов В.Х., Важдаев К.В., Салихов Р.Б. Разработка средств автоматизации с использованием Wi-Fi модулей ESP8266 и LPWAN технологий