Ардуино json api
- Войдите на сайт для отправки комментариев
Ср, 10/08/2016 - 08:32
Добрый день!
Есть ардуино и датчик DHT11, есть ENC28j60 для ethernet. Чтобы отображать данные на компьютере в интернете обычно рассказывают как сделать из ардуино веб-сервер. И писать в скетче вставки html и т.п. ужас.
Можно ли использовать адрес ардуино для получения данных в виде json, а на сайте на php, .net или python отображать эти данные? Может быть существуют для этого библиотеки, подскажите какие?
Можно подробнее архитектуру, которую Вы задумали (если можно, с рисунком). Т.е. у Вас есть сервер, на котором стоит php или там .net. Так? Есть клиент, который со своего браузера лезет к серверу. Правильно? А какова роль Ардуино? Сервере периодически у неё спрашивает данные и хранит у себя для показа клиенту? Или спрашивает непосредственно в момент обращения клиента? Т.е. архитектура непонятна.
Ничего необычного в архитектуре и непонятного. Преставте обычный сайт или мобильное приложеине, которое отображает данные подтянутые по апи с другого источника.
Допустим на .net ApiController который выдает по запросу какие-то данные из бд, любому кто попросит в формате json. Можно ли заставить ардуино выдавать ответы в таком формате? Разница только в том что он будет выводить либо html страницу либо json данные.
Обращение к ардуино непосредственно когда клиенту нужно отобразить данные.
Т.е. схема такая
1) клиент запросил что-то у сервера
2) сервер запрсоил информацию у ардуины (в данный момент сервер играет роль клиента ардуины, которая для него сервер)
3) получив данные сервер сформировал страницу для клиента и отдал её.
Всё так? Получается, что сервер будет дёргать ардуину в то время пока клиент ждёт ответа - тормозно, но дело Ваше, конечно.
Если так, то не понимаю проблемы вообще. Вам нужно, чтобы ардуина выдала данные в некотором, понятном Вашему серверу формате. Так и выдавайте, кто мешает-то? Просто формируйте ответ в том виде в каком нужно. В чём проблема?
Можно ли использовать адрес ардуино для получения данных в виде json, а на сайте на php, .net или python отображать эти данные? Может быть существуют для этого библиотеки, подскажите какие?
Можно - отдавайте данные с ардуины в JSON-формате, делов-то. Только учтите, что если запрашивать с браузера или из честного клиента - то всё равно на ардуину будет приходить HTTP-запрос, который надо разбирать.
По поводу библиотек для JSON - не думаю, что они нужны применительно к ардуине - объём и виды данных сильно ограничены, можно ручками быстренько выдать всё.