Съдържание:

Визуално известие: 9 стъпки
Визуално известие: 9 стъпки

Видео: Визуално известие: 9 стъпки

Видео: Визуално известие: 9 стъпки
Видео: ИМПРОВИЗАЦИЯ. КОМАНДЫ | 4 сезон 9 выпуск: Цветные VS Громкие 2024, Юли
Anonim

Този урок ви учи как да кодирате, за да информирате Phillips Hue за предупреждение. Би било много полезно за хора, които са глухи и с увреден слух, имат слабо зрение или сензорни увреждания. Visual Notification Alert е да информира потребителите след получаване на известия от електронна поща, Facebook, Trello или други подобни. LED крушката Hue започва да предупреждава, като мига лампата.

Photon Particle е малък, препрограмируем комплект за разработка на Wi-Fi за прототипиране и мащабиране на вашия продукт на Интернет на нещата.

Стъпка 1: Списък на хардуера и софтуера

Нуждаете се от хардуер и софтуер, за да разработите кодовете за предупреждение за визуално известие.

Хардуер

  • Комплект за създаване на частици
  • Philips Hue - Стартов комплект (3 LED крушки и 1 Hue мост)

Софтуер

  • Обща информация за фотона на частиците
  • Частична уеб IDE (компилация) *Изисква се за вход *
  • IFTTT (Ако това, тогава това)

Стъпка 2: Инсталиране

Трябва да имате своя комплект за създаване на частици, който включва всичко, като сензори, джъмперни проводници, светодиоди, резистори и др. Можете да прочетете повече информация за частичния фотон.

Преди да свържете фотона си, трябва да знаете състоянието на светодиодите на фотона. Ето информацията за състоянието на LED.

Свържете своя фотон

  1. Включете USB кабела във вашия източник на захранване. (Вашият компютър работи перфектно за тази цел). Вашето устройство за частици не се нуждае от компютъра ви, за да се свърже с wifi.
  2. Когато е включен, RGB светодиодът на вашето фотонно устройство трябва да започне да мига в синьо. Ако устройството ви не мига в синьо, задръжте бутона SETUP за 10 секунди, след което отпуснете бутона SETUP.
  3. Влезте в Setup Particle, ако вече имате акаунт. Ако нямате акаунт, създайте акаунта за Photon.
  4. Кликнете върху Photon/P Series.
  5. След като щракнете върху СЛЕДВАЩ, трябва да ви бъде представен файл (photonsetup.html)
  6. Щракнете върху ПРОДЪЛЖИ С МЕСТЕН ФАЙЛ, за да изтеглите файл.

След отваряне на файл

  1. Свържете вашия компютър към Photon, като се свържете към мрежата, наречена PHOTON-…
  2. Конфигурирайте вашите идентификационни данни за Wi-FI. Забележка: ако погрешно въведете идентификационните си данни, Photon ще мига тъмно синьо или зелено. Трябва да преминете отново през процеса, като опресните страницата или щракнете върху частта за повторен опит.
  3. Преименувайте устройството си. Ще видите потвърждение дали устройството е заявено или не.

Преди да преминете към следващата част, ако вашето Photon устройство има дишащ циан, значи е успешно за Интернет и Photon Cloud! Преминаваме към IDE за частици, изграждане.

Стъпка 3: Кодиране в Part ID Web IDE

Трябва да създадете акаунт за IDE на частици, Build. Ако вече имате акаунт, тогава страхотно! Влезте в IDE за частици.

Искаме да тестваме дали светодиодът мига на платката. На платката ви Photon има малък син светодиод. Той е до D7. Можете да изтеглите файла, gettingstarted-blinknet.ino и да видите кодовете там. Има обяснение. Щракнете върху тази връзка, за да отворите изходния код в IDE на Particle Web. Ако D7 (малък син светодиод) мига, поздравления, току -що мигате светодиод, използвайки вашето устройство за частици! Ако искате да научите повече за Photon, като мигащ различен светодиод, четене на фото сензор и т.н., ето връзката.

Сега ще преминем към Philips Hue.

Стъпка 4: Philips Hue

Image
Image
Philips Hue
Philips Hue
Philips Hue
Philips Hue

За справка: Щракнете тук за API на Phillips Hue.

Преди да имате достъп до документацията на Philips Hue API, ще трябва да се регистрирате като разработчик. Това е безплатно, но трябва да приемете общите условия.

1. Първо се уверете, че вашият Philips Hue Bridge (първата снимка) е свързан към вашата мрежа, работи правилно. Тествайте приложението Hue (приложението Hue е достъпно за iOS и Android), което контролира светлината в същата мрежа.

Ако го тествате успешно, тогава трябва да откриете IP адреса на моста във вашата мрежа. Използвайте откриването на брокерския сървър на Philips, като посетите www.meethue.com/api/nupnp.

Когато намерите вашия IP адрес, въведете го в адресната лента на браузъра си с debug/clip.html, добавен към URL адреса: https:// мост IP адрес/debug/clip.html, Трябва да видите интерфейс (втора снимка) като този. Забележка: Заменете „мост IP адрес“с вашия IP адрес.

2. Нека направим проста команда и да получим информация за вашата система за оттенъци. Попълнете данните по -долу, като оставите тялото празно и натиснете бутона GET. Трябва да видите интерфейс (трета снимка) като този. Трябва да получите съобщение за грешка. Забележка: Заменете „мост IP адрес“с вашия IP адрес.

Адрес: https:// мост IP адрес/api/newdeveloperBody: Метод: GETПоздравления! Просто изпращате първата си команда! 3. След това попълнете информацията по -долу и натиснете бутона POST. Забележка: Заменете „bridge IP Address“на вашия IP адрес и „phonetype name“на вашия собствен телефон.

Адрес: https:// мост IP адрес/apiBody: {"devicetype": "my_hue_app#phonetype name"} Метод: POST

Връзката помага да го създадете за вас. Когато натиснете бутона POST, трябва да получите обратно съобщение за грешка (четвърта снимка), което ви уведомява, че трябва да натиснете бутона за връзка на Hue Bridge. Това е стъпката за сигурност, така че само приложенията или сървърите, които искате да управляват светлините ви. Чрез натискане на връзката на Hue Bridge, той доказва, че потребителят има физически достъп до Hue Bridge.

Когато получите успешен отговор (пета снимка), поздравления! Току -що създадохте оторизиран потребител, който ще използваме отсега нататък.

4. Последен пример, преди да го интегрираме във фотонната частица, уверете се, че една от вашите светлини е видима и включена и трябва да знаете коя е светлината с числа. Променете URL адреса на/api/username/lights/light number/state (променете номера на светлината [може да бъде 1, 2, 3 или?]) И изпратете бутон PUT със следните данни:

Забележка: Уверете се, че сте променили IP адреса на моста, потребителското име и номера на светлината

Адрес: https:// мост IP адрес/api/потребителско име/светлини/номер на светлина/състояние

Body: {"on": true, "sat": 254, "bri": 254, "hue": 10000}

Метод: ПОСТАВЕТЕ Трябва да видите как светлината ви променя цвета:

Стъпка 5: Настройка на Photon с бутон и проводници

Настройка на фотона с бутон и проводници
Настройка на фотона с бутон и проводници
Настройка на фотона с бутон и проводници
Настройка на фотона с бутон и проводници

Преди да разработим повече кодове във Photon Web IDE, искаме да настроим нашия Photon с бутон и проводници. Имате няколко бутона и много проводници от вашия Комплект за стартиране на частици. Прикачих две изображения, едното е диаграма, а другото е действителна картина.

  1. Уверете се, че сте поставили фотона си на макета.
  2. Поставете бутон в долната част на дъската, както е показано на изображението.
  3. Поставете края на черния проводник в J4 (GND) и поставете друг край на същия черен проводник в J30.
  4. Поставете край на жълтия проводник в J7 (D5) и поставете друг край на същия жълт проводник в J28.

Ако те съвпадат с моя имидж, който ти показвам, значи си добър!

Стъпка 6: Записване на кодове във фотонни частици

Писане на кодове във фотонни частици
Писане на кодове във фотонни частици

Ще създадем първото си приложение във Photon Particle - Web IDE.

  1. Отидете на https://build.particle.io/build и влезте (регистрирайте се, ако все още не сте създали)
  2. Въведете „Сигнал за визуално известие“под Текущо приложение.
  3. Натиснете бутона Enter (вижте първата снимка).

Приложението се записва във Photon Particle Cloud. Функцията setup () се извиква, когато приложението се стартира и стартира веднъж. Функцията loop () прави точно това, което прави, и циклира последователно, позволявайки на вашето приложение да се променя и отговаря.

За да добавите HttpClient за фотонната частица:

  1. Щракнете върху Библиотеки в долния ляв ъгъл на Web IDE.
  2. Въведете „HttpClient“в лентата за търсене.
  3. Кликнете върху „Включване в проекта“в синия бутон.
  4. Щракнете върху VisualNotificationAlert (той премахва интервалите, след като сте създали приложението).
  5. Щракнете върху Потвърди.

Сега той добави HttpClient в началото на уеб IDE.

/ Този #include израз е добавен автоматично от IDE на частиците. #Include

/*** Конфигурация за Philip Hue ***

/ 1. Заменете това с вашето потребителско име за API от Стъпка 1 const String API_USERNAME = "Вашето потребителско име за API"; // 2. Заменете това с IP адреса на вашия мост от Стъпка 1 IPAddress hueIP (x, x, x, x); // 3. Заменете с пътя към светлините, които искате да контролирате. Използвайте уеб страница от стъпка 1, за да проверите дали работи. // Уверете се, че разпознавате номера на светлината на Philip Hue ///lights/NUMBER/state const String LIGHT_PATH = "/lights/Number/state"; // 4. Заменете това с тялото на вашата заявка за включване на светлините. const String REQUEST_BODY_ON = "{" on / ": true, \" bri / ": 254}"; // 5. Заменете това с тялото на вашата заявка за изключване на светлините. const String REQUEST_BODY_OFF = "{" on / ": false, \" bri / ": 254}"; / *** END Конфигурация за Philip Hue *** / Бутон const int BUTTON_PIN = D5; // HttpClient обект, използван за отправяне на HTTP заявки към Hue моста HttpClient http; // Заглавна част по подразбиране за HTTP заявки http_header_t headers = {{"Приемам", "*/*"}, {NULL, NULL} // ЗАБЕЛЕЖКА: Винаги прекратяването на заглавките ще бъде NULL}; // Обекти на заявка и отговор http_request_t заявка; http_response_t отговор; void setup () {Serial.begin (9600); request.ip = hueIP; request.port = 80; // Вграден светодиод като индикаторна светлина за измерване на pinMode (D7, OUTPUT); // За вход ние дефинираме BUTTON_UP като вход-издърпване. Това използва вътрешен резистор за издърпване // за управление на последователни отчитания от устройството. pinMode (BUTTON_PIN, INPUT_PULLUP); // задава PIN като вход // Ние се „Абонираме“за нашето IFTTT събитие, наречено Button, така че да получаваме събития за него Particle.subscribe ("RIT_Gmail", myHandler); Particle.subscribe ("Trello", myHandler); } // функция setup () void loop () { / * * Това е раздел за тестване дали светлинните сигнали * / // установяват дали бутонът е натиснат или не, като се чете от него. int buttonState = digitalRead (BUTTON_PIN); // Когато бутонът е натиснат, ще получим НИСКИ сигнал. // Когато бутонът НЕ е натиснат, ще получим ВИСОКО. if (buttonState == LOW) gmailAlert (); } // функция loop () void printInfo () {Serial.print ("Application> / tResponse status:"); Serial.println (response.status); Serial.print ("Application> / tHTTP Response Body:"); Serial.println (response.body); } // функция printInfo () int i = 0; // Функцията, която обработва събитието от IFTTT void myHandler (const char *събитие, const char *данни) {// Тест за печат в сериен Serial.print (събитие); Serial.print (", данни:"); if (данни) Serial.println (данни); else Serial.println ("NULL"); if (strcmp (събитие, "Trello") == 0) {trelloAlert (); } else if (strcmp (събитие, "Gmail") == 0) {gmailAlert (); }} // myHandler () функция /** Стойността на нюанса за настройка на светлината. * Стойността на нюанса е опаковъчна стойност между 0 и 65535. * И 0 и 65535 са червени, * 25500 е зелено и 46920 е синьо. * / / *** Той ще предупреди с помощта на интелигентната крушка Philips Hue, използвайки синия цвят. Той ще предупреди за 15 секунди. */ void trelloAlert () {String trello_body_alert = "{" on / ": true, \" bri / ": 255, \" sat / ": 255, \" hue / ": 46920, \" alert / ": / "lselect \"} "; sendHttpPut (trello_body_alert); } /*** Той ще предупреди с помощта на интелигентната крушка Philips Hue, използвайки червения цвят. Той ще предупреди за 15 секунди. */ void gmailAlert () {String gmail_body_alert = "{" on / ": true, \" sat / ": 254, \" bri / ": 254, \" hue / ": 65535, \" alert / ": / "lselect \"} "; sendHttpPut (gmail_body_alert); }/** * Ще изпратим PUT до Philips Hue * @param httpPutBody тялото на низа */void sendHttpPut (String httpPutBody) {request.path = "/api/" + API_USERNAME + LIGHT_PATH; request.body = httpPutBody; http.put (заявка, отговор, заглавки); }

Когато приключите с въвеждането или копирането на кода във вашата уеб IDE на Photon Particle Web, щракнете върху иконата за проверка (Verify) в горния ляв ъгъл на лентата.

Стъпка 7: Качване на код на фотона

Тази стъпка е много проста. Преди да качим кодовете във Photon:

  1. Включете USB кабела във вашия източник на захранване (препоръчвам лаптоп).
  2. Уверете се, че вашият фотон има дишащ циан LED. Ако не диша циан или има различен цвят, преминете към Стъпка 2: Инсталиране
  3. Щракнете върху иконата Lighting от уеб IDE на Photon Particle.
  4. Когато качва кодовете във Photon, трябва да видите магента. Това означава, че кодът започва да се качва в кода. След това ще мига бързо в зелено, след което ще се върне към дишането на циан.
  5. Натиснете бутона, за да видите дали вашата интелигентна крушка Philips мига (или предупреждава).

Ако Philips Smart Bulb предупреждава, поздравления! Почти свършихме!

Ще преминем към софтуерната част.

Стъпка 8: Създаване на аплети от IFTTT (Ако това, тогава това)

Ще създадем аплети от уебсайта на IFTTT (Ако това, тогава онова). Аплетчетата ще публикуват събитие на Photon, а след това Photon изпраща команда до моста Philips Hue, за да предупреди интелигентните крушки.

За този проект ще използваме Trello и Gmail за публикуване на събития във Photon.

Отидете на https://ifttt.com/ и се регистрирайте.

Трело

  1. Щракнете върху Моите аплети в горната част.
  2. Щракнете върху Нов аплет.
  3. Щракнете върху + това със син текст.
  4. Въведете Trello в лентата за търсене и щракнете.
  5. Щракнете върху Карта, назначена за мен.
  6. Изберете дъската си от Trello.
  7. Щракнете върху +това със син текст.
  8. Въведете Particle в лентата за търсене и щракнете.
  9. Щракнете върху Публикуване на събитие.
  10. Въведете „Trello“в След това публикувайте (Име на събитие).
  11. Изберете обществено.

Gmail (Забележка: те ще използват вашия имейл адрес, когато се регистрирате)

  1. Щракнете върху Моите аплети в горната част.
  2. Щракнете върху Нов аплет.
  3. Щракнете върху + това със син текст.
  4. Въведете Gmail в лентата за търсене и щракнете
  5. Изберете Всеки нов имейл във входящата поща
  6. Щракнете върху +това със син текст.
  7. Въведете Particle в лентата за търсене и щракнете
  8. Щракнете върху Публикуване на събитие.
  9. Въведете „Gmail“в След това публикувайте (Име на събитието).
  10. Изберете обществено.

След като работите два аплета, Trello и Gmail, преминаваме към последната стъпка.

Стъпка 9: Накрая, Тестване

Ще тестваме за публикуване на събития от Applets до Photon. Уверете се, че вашите аплети са включени.

Трело

Когато някой създаде нова карта в Trello, той ще ви назначи (маркира) в картата. IFTTT изслушва това и започва да публикува събитие на Photon. Тогава Photon изпраща команда до моста Philip Hue, за да предупреди интелигентните крушки.

Gmail

Когато получите някакъв нов имейл във входящата си поща, IFTTT слуша това и започва да публикува събитие във Photon. Тогава Photon изпраща команда до моста Philip Hue, за да предупреди интелигентните крушки.

Предизвикателства

  • Всеки път, когато получим ново известие от Trello и Gmail, има огромно забавяне за изпращане на събитие от IFTTT и изпращане на команда от Photon. Трябва да отнеме по -малко от 5 минути, за да предупредите интелигентните крушки.
  • Аплетът на Gmail понякога се изключва сам, защото аплетът трябва да бъде свързан отново или актуализиран.

Препоръчано: