Как изменить переменную на ардуино с PHP сервера, использую internet sheald W5100
- Войдите на сайт для отправки комментариев
Ср, 22/05/2019 - 14:14
Как изменить переменную на ардуино с PHP сервера, использую internet sheald W5100
погуглите про MQTT протокол
ок, спасибо, сейчас
MQTT - это короче отдельный софт через облако
MQTT - это короче отдельный софт через облако
и незачем так орать.
Да, через облако. И что не так?
а примера нет как гет или пос запросами организовать, у меня просто на пхп сервер отправляет а как на оборот сделать не где найти не могу
а как на оборот сделать не где найти не могу
а не надо наоборот. Чтобы "наоборот" - это вам придется на ардуине сервер поднимать, а это дело грустное, слабовата она для этого.
Как раз отправлять с ардуины запросы на внешний сервер - самое правильное решение вашей задачи. именно для этого придуман MQTT. но в принципе он не единствкенный. можно и без него
а примера нет как гет или пос запросами организовать, у меня просто на пхп сервер отправляет а как на оборот сделать не где найти не могу
И не найдёте. Вы не до конца понимаете смысл слов "сервер" и "клиент". Запросы шлёт всегда клиент, а сервер их обслуживает. И никогда "наоборот". Клиент никогда не принимает никаких запросов.
Если хотите, чтобы ардуина обслуживала запросы откуда-то, нужно пднимать на ней хоть крохотный-простенький, но сервер. Поднимите и дёргайте его из пхп сколько хотите.
Впрочем, есть вариант (подойдёт или нет - зависит от Вашей задачи). Ваша адруина может оставаясь чистым клиентом, долбить пхп-сервер запросами скажем раз в секунду "дай мне значение моей любимой переменной", а тот должен отвечать. Только меняться перемнная быдет не точно в том момент, когда на php поменялась, а при ближайшем запросе.
...
Женя! И то и другое есть вот-прям в примерах к стандартной ethernet.h размещенной в ИДЕ с раздачи, то есть по умолчанию.
Я вообще не могу понять, что происходит с людьми? Не нужно в библиотеку ГПНТБ ехать, даже в Гугль лезть не надо, нужно просто открыть пример на своем компе, и все равно: "Подайте на пропитание!", вот как это у них получается?
а примера нет как гет или пос запросами организовать, у меня просто на пхп сервер отправляет а как на оборот сделать не где найти не могу
обсуждалось неоднократно, делаете запрос на сервер (можно почаще), а в ответ PHP уже шлет ответ, в котором есть некая команда, типа так:
я так и думал что ругать будете, на счет клиент-серверной архитектуры
я так и думал что ругать будете, на счет клиент-серверной архитектуры
если проброс портов на железку есть, то можно и микро сервер нарисовать, вопрос что на нем должно быть...
а так вот например - примитивный сервер, с браузера подключайтесь и меняйте что хотите
http://arduino.ru/forum/proekty/ethernet-vyklyuchatel-nagruzki-v-lokalnoi-seti
я так и думал что ругать будете, на счет клиент-серверной архитектуры
Так ото ж :-)))
а можно сделать ГЕТ по файлу с нужной мне переменной и в ответ мне содержимое этого файла с числом, а на HTML C PHP я сам буду туда вводить число?
Сделать можно все, вопрос какими силами...
Сами как пробовали? Что не получилось?
ЗЫ. Или надеетесь на готовый код? Зря, здесь халявщиков не любят.
я первый раз в жизни пишу форум, кот готовый мне не нужен, не пойму в каком виде PHP сервер должен отправлять ответ на запрос(на другом форуме прочитал что автоматически), а как ардуина его читает я уже понял
Вот мой проект https://www.youtube.com/watch?v=1Zwehtj-R6M
в плане терминала все работает
теперь мне преподователь поставила задачу чтобы можно было управлять дистанционно, у меня пока успех в отправке на PHP затем в MySql, температуру при которой будет открывать или закрывать ввожу двумя кнопками, первая уменьшает переменную вторая увеличивает, и затем по условию идет сравнение.
есть еще одна мысль:"а можно эмитировать нажатие этих кнопок удаленно?"
я первый раз в жизни пишу форум, кот готовый мне не нужен, не пойму в каком виде PHP сервер должен отправлять ответ на запрос(на другом форуме прочитал что автоматически), а как ардуина его читает я уже понял
Не поверите, в том же виде как вы формируете HTML страничку, например:
у меня маленький успех!!! я уже получаю инфу от сервера
у меня маленький успех!!! я уже получаю инфу от сервера
Обмыл?
НЕ ДО ЭТОГО!!!! Я этого с суботы бьюсь, у меня предзацита скоро, уже пожалел что эту тему выбрал, над одной фунцией бьюсь, мне просто "информационную систему" нужно именно сделать, а как терминал не прокатит
Вот нашел урок в https://www.youtube.com/watch?time_continue=243&v=8vC4VJLzghs там с 4 минуты расписанно как дальше переменные искать в этих строках
Вот нашел урок
Чего вы все так видео любите? Читать не умеете? :)
НЕ ДО ЭТОГО!!!!
Напрасно! Народная мудрость она такая ...
Вот нашел урок
Чего вы все так видео любите? Читать не умеете? :)
уже начитался, я к тому что у него часть скетча спилить, а так что мне его смотреть и слушать
НЕ ДО ЭТОГО!!!!
Напрасно! Народная мудрость она такая ...
так спиться можно после каждого успеха
уже начитался
незаметно что-то :(
Вот как изменить переменную на ардуино с PHP сервера
А на php сервере, в том файле который мы отправляем гет запрос GET Test.PHP должно быть
для ответа
вот пример файла подключения к базе
Теперь главное - надеятся, что сервер не заDDOS-ит ардуину длинным HTTP-хидером ))
Вот маленький успех в отпраке переменных Arduino Uno Sheald W5100 https://www.youtube.com/watch?v=pPggXbwTXtw
У меня маленькая проблема появилась, не сталкивались? теперь если использовать как терминал, а не удаленно, в тот момент когда контроллер занят другими циклами кнопки не работают, помогает только долгое нажатие на кнопку 1клик в 10сек, раньше использовал функцию SmartDelay foo(20000UL); сейчас не помогает.
Кнопки повесить на прерывания как вариант. А вообще пока скетч что то не видно....сложно судить.
сейчас в порядок его приведу а то я тут на вертел уже
Если там обильно встречаются вызовы функции типа delay(1000), то можно не постить - дело в них.
Ну это понятно, они есть, на что заменить можно, я скетч приготовил, там не портянка коменты есть
У меня маленькая проблема появилась, не сталкивались? теперь если использовать как терминал, а не удаленно, в тот момент когда контроллер занят другими циклами кнопки не работают, помогает только долгое нажатие на кнопку 1клик в 10сек, раньше использовал функцию SmartDelay foo(20000UL); сейчас не помогает.
Решил проблему!!! везде где стоит delay заменил на циклы