Удаленное управление Arduino Uno

Alex-human
Offline
Зарегистрирован: 03.11.2014

Подскажите пожалуйста, как осуществить выполнение следующей задачи.

Как послать на ардуину запрос, в котором будут данные для изменения константы в программе, и чтобы потом она перезаписалась и использовалась далее, но уже удаленно. 

имеется arduino uno + ethernet shield w5100 + dallas + servo. Работа заключается в следующем. Есть нижний порог температуры int x=25. Как удаленно поменять его на другое значение? 

Sloper
Sloper аватар
Offline
Зарегистрирован: 30.03.2015

Поднять сервер, добавить на страницу кнопки и по их нажатию менять значение. Или заюзать формы на странице.

Alex-human
Offline
Зарегистрирован: 03.11.2014

Сервер то есть. на него передаются данные построчно, типа 22, а на другой строке 45. первое значение это температура текущая. второе значение это на сколько градусов повернут сервопривод.  как отправить запрос, чтобы изменить нижний порог температуры(в программе он int x = 25) на 22. На странице ничего не должно быть кроме данных. Запрос необходимо передать из программы, написанной на C#. Подскажите пожалуйста

 

Penni
Penni аватар
Offline
Зарегистрирован: 18.01.2015

Alex-human пишет:

Сервер то есть.

Сервер на стороне ардуино или на PC где-то? Если на ардуино, то вообще не важно откуда запросы приходят, с браузера или программы на СИ. Отправляете запрос вида http://xxx.xxx.xxx.xxx/index.htm?t=22 На сервере разбираете параметры и присваиваете переменной х нужное значение.

Alex-human
Offline
Зарегистрирован: 03.11.2014

Можете на примере каком-либо показать тогда как разобрать параметры и вывести что и какой переменной присвоить? ни разу не сталкивался и пока не совсем понимаю как обработать запрос

Alex-human
Offline
Зарегистрирован: 03.11.2014

Сервер на ардуине.

Alex-human
Offline
Зарегистрирован: 03.11.2014

Как на стороне сервера на ардуине разобрать получаемый запрос?

Gippopotam
Gippopotam аватар
Offline
Зарегистрирован: 12.09.2014

Alex-human пишет:

Как на стороне сервера на ардуине разобрать получаемый запрос?

Вариант один - распарсить (разобрать на составляющие) GET-запрос клиента (браузера).

Дальше, если формат простой - напрямую преобразовать строки в числа, если что-то более менее серьезное - использовать JSON.

В стандартном примере разобрано 90% того, что вам нужно.

 

Alex-human
Offline
Зарегистрирован: 03.11.2014

А стандартный пример это пост #3? Есть пример как распарсить? 

Gippopotam
Gippopotam аватар
Offline
Зарегистрирован: 12.09.2014

Alex-human пишет:

А стандартный пример это пост #3? Есть пример как распарсить? 

Я имею в виду стандартные примеры ETHERNET, доступные в Arduino IDE.

Парсинг - это просто работа со строками. Примеры есть, как в тех-же стандартных примерах, так и на этом форуме.

Alex-human
Offline
Зарегистрирован: 03.11.2014

Киньте пожалуйста ссылки проектов.

Gippopotam
Gippopotam аватар
Offline
Зарегистрирован: 12.09.2014

Alex-human пишет:

Киньте пожалуйста ссылки проектов.

А ссылки, которые можно получить поиском, чем вас не устраивают?

Alex-human
Offline
Зарегистрирован: 03.11.2014

Не нашел именно такого приера который нужен. Где есть запрос на изменение переменной. Пример такой не нашел. А как со странице данные парсить, типа пример с реле или светодиодом, это разные вещи. Либо страницу на изменения парсить, либо принять запрос, который необходимо разобрать граммотно. Есть же разница?