• Главная
  • Карта сайта
Не найдено

Перетворіть свій смартфон в IoT-пристрій

  1. Що вам буде потрібно для розробки додатків
  2. Створення IoT-додатки в Bluemix
  3. Додавання пристрою, який буде відправляти MQTT-повідомлення на сервер IoT
  4. Встановлювати чи налаштовувати додатки для Android
  5. Перевірка відправки повідомлень зі смартфона на сервер IoT
  6. Обробка повідомлень в потоці Node-RED
  7. Створення програми Bluemix для візуалізації показань датчика
  8. висновок
  9. Ресурси для скачування

Створення додатків Bluemix для обробки, візуалізації і зберігання показників датчиків, відправлених і отриманих смартфоном

У керівництві розповідається про те, як можна відправляти показники датчиків, згенеровані вашим смартфоном, в хмарну службу IBM Watson IoT Platform, а також як створювати додатки Bluemix ™, які обробляють, візуалізують і зберігають ці дані. Крім того, демонструється створення додатка для смартфона на базі Android.

можна відкрити відеоролик в окремому вікні браузера, щоб дивитися відео і слідувати інструкціям в керівництві.

У керівництво внесені зміни, що відображають нові назви і версії служб. Наступний відеоролик демонструє виконання дій, наведених в цьому керівництві, проте в ньому використовуються старі версії служб з застарілими іменами (служба IBM Watson IoT Platform колись називалася IBM Internet of Things Foundation).

Загальна архітектура:

Що вам буде потрібно для розробки додатків


Створення IoT-додатки в Bluemix

До складу шаблону Internet of Things Platform Starter входить механізм Node-RED, який ви будете використовувати згодом для обробки IoT-повідомлень. Зараз ми створимо службу Internet of Things для відправки MQTT-повідомлень на сервер IBM IoT в хмарі і отримання повідомлень електронної пошти.

  1. Увійдіть в Bluemix під вашим обліковим записом (або зареєструйтеся для безкоштовного пробного використання ).
  2. Виберіть Catalog.
  3. Клацніть по Internet of Things Platform Starter.
  4. Вкажіть ім'я свого застосування. Це ім'я буде також використовуватися як ім'я хоста, тому воно повинно бути унікальним в Bluemix, наприклад, iot <ваше_ім'я>. В даному прикладі використовується ім'я iotdemodaniel4.
  5. Натисніть кнопку Create.
  6. На панелі інструментів виберіть Dashboard і клацніть по створеному з додатком (Cloud Foundry або CF APP).
  7. Клацніть по кнопці Add a Service or API.
  8. У навігаційній області виберіть Internet of Things для фільтрації списку доступних служб. Виберіть службу Internet of Things Platform.
  9. Залиште значення за замовчуванням і натисніть кнопку CREATE.
  10. У повідомленні, що з'явилося натисніть на кнопку Restage. Ваша програма буде оновлено.

Додавання пристрою, який буде відправляти MQTT-повідомлення на сервер IoT

  1. На панелі Bluemix Dashboard виберіть свій додаток і клацніть по новій службі.
  2. На сторінці служби натисніть на кнопку Launch Dashboard.

    З'явиться панель сервера IBM Internet of Things - служби, незалежної від Bluemix. Вашому додатку присвоюється ідентифікатор організації Organization ID, який вам буде потрібно пізніше при розробці мобільного додатку. На наступному малюнку ідентифікатор організації має значення 1xuhbp і відображається під вашим логіном в правому верхньому куті панелі.

  3. У лівому меню, яке спливає при наведенні на нього покажчика миші, виберіть Devices. Потім клацніть по Add a device і натисніть кнопку Create device type. У вашій організації може бути багато типів пристроїв, в кожному з яких може бути багато пристроїв. Тип пристрою - це група пристроїв із загальними характеристиками; наприклад, у них можуть бути однакові датчики. У нашому випадку тип пристрою повинен мати ім'я Android (цей тип пристроїв необхідний додатком, яке ви будете використовувати пізніше).
  4. Натисніть кнопку Next. З'явиться сторінка, на якій ви зможете вказати такі відомості про свій виріб, як серійний номер або модель. У цій демонстрації вводити таку інформацію не потрібно, просто натисніть кнопку Next. Також немає необхідності вказувати будь-яку метаінформацію. Натискайте кнопку Next, поки не повернетеся в діалогове вікно Add Device.
  5. Натисніть кнопку Next. Вкажіть ідентифікатор пристрою. Ідентифікатором пристрою може бути, наприклад, MAC-адресу вашого смартфона. Але він повинен бути унікальним для вашої організації. Тому можна вказати, як в цьому прикладі, що-небудь типу "112233445566".
  6. Залиште поле Meta Data порожнім і натисніть кнопку Next. Залиште поле Authentication token порожнім і натисніть кнопку Next.
  7. Вкажіть значення токена аутентифікації. Запам'ятайте це значення, воно вам знадобиться пізніше. Натисніть Next.
  8. Натисніть Add.

    На екрані з'явиться сгенерированное пристрій.

  9. Закрийте це діалогове вікно.

Тепер ви можете відправляти MQTT-повідомлення з пристрою на сервер IBM IoT.

Встановлювати чи налаштовувати додатки для Android

Якщо у вас iPhone або iPad, ви можете використовувати IoT Starter for iOS . Процес установки на iPhone в цій статті не описується, але якщо ви зробите це самостійно, ви зможете користуватися цією програмою для iOS у всій решти цього керівництва.

Ми будемо використовувати додаток IoT Starter for Android для читання і відправки показань датчика на вашому смартфоні. Вихідний код та документацію для цього додатка можна отримати в проекті IoT Starter for Android в GitHub .

Якщо у вас є досвід розробки під Android, ви можете завантажити код з GitHub, імпортувати в своє середовище розробки і потім створити apk-файл. В іншому випадку, щоб швидко встановити і запустити додаток, виконайте наступні дії.

отримати код

  1. Зайдіть в своєму телефоні в меню Settings> Security (Установки> Безпека). Від імені адміністратора пристрою дозвольте установку додатків з невідомих джерел - поставте позначку в полі Unknown sources (Невідомі джерела). Тепер ви можете встановлювати файли .apk не тільки з Google Play.
  2. Відкрийте браузер в своєму телефоні і введіть наступний URL-адресу:

    https://ibm.box.com/v/iotstarterapp

    Ви будете перенаправлені на сайт https://m.box.com і до файлу iot-starter_501.apk.

  3. Натисніть Download.
  4. За допомогою файлового менеджера (наприклад, додаток ES File Explorer, доступне для завантаження з Google Play ) Знайдіть файл в каталозі Downloads.
  5. У цьому каталозі клацніть по файлу iot-starter_501.apk. Натисніть Install (Встановити).

    Тепер додаток IoT Starter встановлено на вашому пристрої на базі Android.

    Примітка: цей файл .apk скомпільовано для Android версії 5.0.1.

Потім вам потрібно конфігурувати свій додаток для Android.

  1. Відкрийте програму IoT Starter.
  2. Вкажіть наступні параметри:
    • Organization: Ідентифікатор організації, який виводився на сервері IBM IoT (він був зазначений на початку етапу "Додавання пристрою, який буде відправляти MQTT-повідомлення на сервер IoT"). У цьому посібнику цей ідентифікатор має значення y6spgy.
    • Device ID: Ідентифікатор пристрою, який ви вказали в кінці етапу "Додавання пристрою, який буде відправляти MQTT-повідомлення на сервер IoT". У цьому посібнику цей параметр має значення 112233445566.
    • Auth Token: Токен авторизації, який ви вказали на етапі "Додавання пристрою, який буде відправляти MQTT-повідомлення на сервер IoT."
  3. Натисніть кнопку Activate Sensor. Тепер додаток збирає свідчення датчика прискорення в вашому смартфоні і відправляє ці дані на сервер IBM IoT. Додаток відображає дані акселерометра і кількість переданих або отриманих повідомлень.

Перевірка відправки повідомлень зі смартфона на сервер IoT

  1. Відкрийте на комп'ютері сторінку сервера IBM IoT для вашої організації (див. Початок етапу "Додавання пристрою, який буде відправляти MQTT-повідомлення на сервер IoT").
  2. На вкладці Devices відображається ваш пристрій на базі Android.
  3. Клацніть за ідентифікатором пристрою. З'явиться спливаюче вікно з повідомленнями, що надходять з вашого пристрою. Клацніть по події, щоб побачити докладні відомості.

    Повідомлення з вашого смартфона відправляються в форматі JSON. Вони містять дані про прискорення і позиції.

Тепер ви можете працювати з даними повідомлень в Bluemix.

Обробка повідомлень в потоці Node-RED

У цьому розділі ви поліпшите своє додаток Bluemix IoT з використанням потоку Node-RED для обробки повідомлень з вашого смартфона і відправки повідомлень назад на смартфон. Телефон буде реагувати на ці повідомлення, змінюючи колір фону в додатку.

Node-RED - це візуальний інструмент, який спрощує передачу і обробку повідомлень в Інтернеті речей.

запустити програму

  1. Відкрийте Bluemix, виберіть Dashboard і на панелі Bluemix Dashboard переконайтеся в тому, що ваш додаток Bluemix IoT (створене на етапі 1) виконується.
  2. Відкрийте в браузері сторінку <імя_вашего_пріложенія> .mybluemix.net, де <yourappname> - це ім'я вашого застосування Bluemix IoT, створеного на кроці 1. У редакторі Node-RED для вашого застосування Bluemix натисніть на кнопку Go to your Node-RED flow editor.
  3. Відкриється редактор з прикладом потоку.

    У відеоролику демонструється застосування методу drag-and-drop в редакторі потоків Node-RED. Даний посібник містить рядок коду, який створює для вас потік автоматично.

    Використовуючи в редакторі метод drag-and-drop, ви можете конструювати потік повідомлень. Хоча ви можете створити свій власний потік самостійно, ми імпортуємо наведений нижче код. Але спочатку виберіть всі існуючі вузли і видаліть їх, натиснувши клавішу Delete.

  4. Скопіюйте наступний код (як одну довгу рядок) і вставте його в текстовий редактор. Щоб отримати цей код в форматованому вигляді, можна завантажити його як текстовий файл зі сторінки https://ibm.box.com/v/iotstarterNodeRedCode . [{ "Id": "215c6601.12d32a", "type": "ibmiot in", "authentication": "boundService", "apiKey": "", "inputType": "evt", "deviceId": "" , "applicationId": "", "deviceType": "", "eventType": "accel", "commandType": "", "format": "json", "name": "IBM IoT App In", " service ":" registered "," allDevices ": true," allApplications ":" "," allDeviceTypes ": true," allEvents ":" "," allCommands ":" "," allFormats ":" "," x " : 264.1999969482422, "y": 434.1999969482422, "z": "dc6a0ca6.7993b", "wires": [[ "ce21edbb.320628", "fdfdaaa2.a45678"]]}, { "id": "ce21edbb.320628" , "type": "function", "name": "calc color", "func": "var accelZ = msg.payload.d.acceleration_z; \ nvar r = 0,0; \ nvar b = 0,0; \ nvar g = 0.0; \ nif (accelZ> 0) {\ n \ tg = Math.round (accelZ * 25); \ n} else if (accelZ <0) {\ n \ tr = 255.0; \ n} else {\ n \ tr = 104; \ n \ tg = 109; \ n \ tb = 115; \ n} \ na = 1.0; \ n \ nmsg.eventOrCommandType = \ "color \"; \ nmsg.payload = JSON.stringify ({\ "d \": {\ "r \": r, \ "b \": b, \ "g \": g, \ "alpha \": a}}); \ n \ nreturn msg; "," outputs ": 1," noerr ": 0," x ": 437.1999969482422," y ": 430.1999969482422," z ":" dc6a0ca6.7993 b "," wires ": [[" 9df37edb.5d4588 "]]}, {" id ":" 9df37edb.5d4588 "," type ":" ibmiot out "," authentication ":" boundService "," apiKey ": "", "outputType": "cmd", "deviceId": "112233445566", "deviceType": "Android", "eventCommandType": "text", "format": "json", "data": "{\ "d \": {\ "value \": \ "text \"}} "," name ":" IBM IoT App Out "," service ":" registered "," x ": 629.1999969482422," y ": 443.1999969482422, "z": "dc6a0ca6.7993b", "wires": []}, { "id": "fdfdaaa2.a45678", "type": "debug", "name": "", "active": false, "console": "false", "complete": "false", "x": 442.1999969482422, "y": 364.1999969482422, "z": "dc6a0ca6.7993b", "wires": []}]
  5. В текстовому редакторі переконайтеся в тому, що весь код знаходиться в одному рядку. Видаліть всі розриви рядків. Скопіюйте цей рядок коду в буфер обміну.
  6. У редакторі Node-RED натисніть Ctrl-I, щоб відкрити діалогове вікно Import Nodes. Вставте код і натисніть OK.
  7. Тепер вам потрібно адаптувати потік до ваших конкретних параметрів. Єдиним значущим параметром є Device ID. Двічі клацніть по вузлу IBM IoT App out. У спливаючому вікні введіть ідентифікатор пристрою, який ви використовували раніше (наприклад, +112233445566), і натисніть OK.
  8. У редакторі потоку натисніть на кнопку Deploy. Потік буде розгорнуто і повинен негайно стати активним.
  9. Переміщайте смартфон, перевертаючи і нахиляючи його. Фон додатки в вашому телефоні повинен міняти свій колір залежно від орієнтації осі Z.
  10. У редакторі Node-RED клацніть по прямокутнику поряд з вузлом msg.payload, потім клацніть по вкладці debug для виконання налагодження. Ви повинні побачити повідомлення, які відправляються з вашого телефону. Дані передаються в форматі JSON.
  11. Досліджуйте потік, двічі клацнувши по вузлу calc color. Цей вузол обчислює значення red, green та blue на базі вхідних значень z-прискорення і відправляє результати обчислень як дані JSON.

Тепер у вас є двосторонній обмін даними між вашим смартфоном і вашим першим додатком Bluemix.

Створення програми Bluemix для візуалізації показань датчика

Примітка: це додаток задокументовано на сторінці Bluemix IoT Samples .

На цьому етапі ви створите в Bluemix додатковий додаток, яка отримує повідомлення від вашого смартфона (який тепер став IoT-пристроєм) і візуалізує ці дані.

отримати код

  1. завантажте файл iot-visualization-0.2.0.zip з проекту iot-visualization в Github. Розпакуйте цей архів.
  2. Відкрийте Bluemix і виберіть Dashboard.
  3. Натисніть кнопку Create App.
  4. Виберіть WEB як тип програми.
  5. Виберіть SDK for Node.js.
  6. Клацніть по кнопці Continue і вкажіть назву програми. Як і раніше, ім'я має бути унікальним в Bluemix, оскільки використовується як ім'я хоста. Введіть що-небудь типу iotvisualizer <ваше_ім'я> і натисніть Finish.
  7. Через кілька секунд ви повинні отримати повідомлення Your app is running.
  8. У каталозі, куди ви розпакували архів iot-visualization-0.1.0.zip, знайдіть файл manifest.yml і відкрийте його в текстовому редакторі. Змініть параметри host і name на вибране вами ім'я програми. Збережіть файл.
  9. Відкрийте вікно командного рядка і перейдіть в каталог, куди ви розпакували архів iot-visualization-0.1.0.zip.
  10. Виконайте наступні команди Cloud Foundry:
    cf api https://api.ng.bluemix.net
    cf login -u <your_bluemix_login_id>
    Команда cf login необхідна тільки при першому використанні інструменту командного рядка cloud foundry. Вам також може знадобитися ввести свій пароль в Bluemix. Якщо у вас більше однієї організації Bluemix (на відміну від установок за замовчуванням), то вам потрібно буде вибрати одну з них.
  11. Розгорніть додаток в Bluemix, виконавши наступну команду:

    cf push <your_application_name>

    Ця команда бере параметри з файлу manifest.yml і потім завантажує код в Bluemix. Через деякий час ви повинні побачити приблизно таке повідомлення:

    OK

    App <your app name> was started using this command 'node app.js'.

  12. На панелі Bluemix Dashboard відкрийте сторінку Overview для вашого застосування. Клацніть по кнопці Bind a service or API.
  13. Виберіть службу Internet of Things, яку ви визначили на етапі "Створення IoT-додатки в Bluemix". Натисніть Restage для оновлення програми. Тепер додаток може отримувати повідомлення з сервера IBM IoT.
  14. Для перевірки додатку візуалізації відкрийте в браузері сторінку http: // <your app name> .mybluemix.net
  15. У спадному меню Device виберіть ідентифікатор вашого пристрою.

висновок

У цьому керівництві описано, як можна легко перетворити смартфон в датчик, підключити його до сервера IBM Internet of Things, а потім відправляти і отримувати дані. Ви також дізналися, як обробляти і візуалізувати одержувані з пристрою дані в Bluemix. Ці два додатки демонструють ефективність Bluemix в додатках Інтернету речей. Єдине, що вам потрібно, - ваш смартфон.

Ресурси для скачування

Схожі теми

Підпишіть мене на повідомлення до коментарів

Провайдеры:
  • 08.09.2015

    Batyevka.NET предоставляет услуги доступа к сети Интернет на территории Соломенского района г. Киева.Наша миссия —... 
    Читать полностью

  • 08.09.2015
    IPNET

    Компания IPNET — это крупнейший оператор и технологический лидер на рынке телекоммуникаций Киева. Мы предоставляем... 
    Читать полностью

  • 08.09.2015
    Boryspil.Net

    Интернет-провайдер «Boryspil.net» начал свою работу в 2008 году и на данный момент является одним из крупнейших поставщиков... 
    Читать полностью

  • 08.09.2015
    4OKNET

    Наша компания работает в сфере телекоммуникационных услуг, а именно — предоставлении доступа в сеть интернет.Уже... 
    Читать полностью

  • 08.09.2015
    Телегруп

    ДП «Телегруп-Украина» – IT-компания с 15-летним опытом работы на рынке телекоммуникационных услуг, а также официальный... 
    Читать полностью

  • 08.09.2015
    Софтлинк

    Высокая скоростьМы являемся участником Украинского центра обмена трафиком (UA — IX) с включением 10 Гбит / сек... 
    Читать полностью