Надішліть команди до Arduino з WEB

Мені потрібно надіслати Arduino деякі інструкції з Інтернету. В основному я мав б веб-додаток з декількома кнопками, і коли я натискаю їх, вони посилають інструкцію Arduino для переміщення, наприклад, двигуна або включення лампи. Це має функціонувати віддалено, а не локально.

Я використовую Arduino Yùn.

Як це робити? Websocket? Як? Дякую!

0
Ви повинні відправляти команди через сокет, так. Ви можете зробити свій власний порт на своєму порту або просто зробити HTTP-запити (наприклад, GET-запити). Просто знайдіть навчальний посібник, який показує, як це зробити за допомогою веб-сторінки, а потім відкиньте весь дизайн веб-сторінок і реалізовуйте лише сторінки для отримання. Після цього у віддаленому веб-програмі викликайте ці сторінки. Або просто зробіть свій власний протокол
додано Автор Tom Collins, джерело

3 Відповіді

Це стає набагато простіше, якщо ви побачите, що yun як комп'ютер linux з arduino, підключеним через серіал.
Тоді стає питання: що є найкращим способом надсилання команд через Інтернет на комп'ютер (linux) Відповідь: Є багато способів, тому що немає кращого шляху Які основні драйвери: Ваш комп'ютер з Linux повинен бути доступним з Інтернету. Це означає відкриття локальної мережі (брандмауер). Брандмауер з певною причиною. У вас є навички відкривати брандмауер і все ще бути в безпеці? Якщо так, ви можете запустити послугу (багато варіантів) і дістатися до свого юну з будь-якого місця в Інтернеті. Так само, як це роблять локально.

Якщо не, то вам потрібно буде перейти до виборчої системи. Ви використовуєте сервер, який знаходиться в Інтернеті, і відправляєте запит на цей сервер. Ваш yun опитує цей сервер для отримання повідомлень, які ви надсилаєте.

Існує третій варіант: якщо ви можете відкрити брандмауер з Інтернету, і ви єдиний користувач сервісу, і вам дуже рідко потрібна послуга, ви можете тимчасово відкрити брандмауер, коли вам це потрібно .

1
додано

Іншим варіантом, якщо ви можете обмежуватися керуванням пристроєм у мобільних програмах, є blynk.cc . Вони надають мобільні програми для Android і iOS, які дозволяють створювати панель керування за допомогою перетягування та вбудованих бібліотек платформи для Arduino, автономних ESP8266, RPi та інших, які обговорюють обидва шляхи між програмою та вбудованим пристроєм, а також між пристроями.

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

Ви не будете мати повної свободи (або вимоги!) Розробки користувацьких веб-сторінок; але OTOH, ви можете бути запущені з їх приклад коду протягом декількох хвилин.

Я маю пару моніторів приміщення-температури на мойому столі що може доповісти температура (плюс історія) мені де завгодно я можу отримати зв'язок мережі. Я помістив дві кнопки на панелі, щоб увімкнути або блимати 2 світлодіоди на платі. З ногами на вогнище я контролюю світлодіоди. Є слайдер-елементи управління, які також можуть спілкуватися з портами PWM. Всі необхідні можливості є, принаймні, щоб почати.

0
додано

Найпростішим способом зробити це було б розміщення веб-сторінки за допомогою кнопок на самому Yùn, як, наприклад, тут . Є безліч прикладів для подібних подій.

Щоб отримати доступ до неї "віддалено" - я припускаю, що ви маєте на увазі з будь-якого місця в Інтернеті - вам доведеться перенаправити порт з домашнього маршрутизатора до Yn, на зразок цього . Це зробить Yùn доступним з Інтернету. Вам потрібно знати лише свою зовнішню адресу (Google: "Знайти мій IP"), а потім ви можете отримати доступ до вашого arduino з усього світу.

0
додано