Ethernet Shield отправка данных на сервер
- Войдите на сайт для отправки комментариев
Вс, 23/08/2015 - 15:07
Доброго дня.
Стоит задача отправки на сервер показаний датчика - сработал/несработал. Дальше на сервере уже обработать разными способами.
Объясните на пальцах как организовать отправку на ПК данных.
Вариант 1:
Ардуино работает в роли сервера. Вы обращаетесь к этому серверу с ПК посредством http-запросов для получения данных. Ардуино, обрабатывает ваши запросы и отдает нужные данные.
Вариант 2:
Ардуино работает в роли клиента. Нужен сторонний сервер. Ардуино передает на этот сервер данные, посредством http-запросов. Вы обращаетесь к этому серверу с ПК посредством http-запросов для получения данных.
про вариант№2
а если в качестве сервера будет какая нибудь програмка на winsock'е? возможно ли в ардуине подготовить данные для этого сервера?
про вариант№2
а если в качестве сервера будет какая нибудь програмка на winsock'е? возможно ли в ардуине подготовить данные для этого сервера?
про вариант№2
а если в качестве сервера будет какая нибудь програмка на winsock'е? возможно ли в ардуине подготовить данные для этого сервера?
Меня немного смущают данные (т.е. мне совершенно не понятно как они устроены), которые я буду отправлять с клиента на сервер. Сервер не веб, а просто ПК с линухом.
paz001, вам следует сначала понять, чего вы хотите.
Веб-сервер для ваших нужд можно развернуть на любом компьютере, подключенном к сети (даже локальной, был бы доступ). Не обязательно ПК - можно даже на роутере, РасПи, другой Ардуино и т.п.
paz001, вам следует сначала понять, чего вы хотите.
100% Ваша правда)
Вообще идея следующая: есть инфракрасный датчик движений. Необходимо регистрировать движение рук в зоне мониторинга и отправлять единицу на удаленный пк. Дальше эту единицу т.е. к факт срабатывания, конкатенируем со временем этой удаленной машины и все это дела сохраняем в файл гденибудь. Далее аналитическое ПО само берет из файла данные и что то сними делает.
Код клиента.
Если будут какие либо предложения по реализации, то с удовольствием ознакомлюсь.
Меня немного смущают данные (т.е. мне совершенно не понятно как они устроены), которые я буду отправлять
Если будут какие либо предложения по реализации, то с удовольствием ознакомлюсь.
Это вы, типа конкурс объявляете?
Это вы, типа конкурс объявляете?
какой конкурс, помощь зала, не более
Это вы, типа конкурс объявляете?
какой конкурс, помощь зала, не более
Сделайте простой сервер на Ардуино. Возьмите скетч из примера - он вроде умеет температуру отдавать.
Любым клиентом с ПК забирайте данные с этого сервера.
<p>[/quote]</p>
<p>Меня немного смущают данные (т.е. мне совершенно не понятно как они устроены), которые я буду отправлять с клиента на сервер. Сервер не веб, а просто ПК с линухом.</p>
<p>[/quote]</p>
На линуксе вообще сервер можно написать в блокноте.
Вечером домой приду найду и выложу исходники своего старого проекта "СКУД для дворового спрт-зала"
https://www.youtube.com/watch?v=nE_Lr29Wlxs
Нашол более старую версию нежли в видео ролике выше.
Сервер.
Клиент на Линуксе
Клиент на Ардуино
Образец базы данных для тестов
paz001, вам следует сначала понять, чего вы хотите.
100% Ваша правда)
Вообще идея следующая: есть инфракрасный датчик движений. Необходимо регистрировать движение рук в зоне мониторинга и отправлять единицу на удаленный пк. Дальше эту единицу т.е. к факт срабатывания, конкатенируем со временем этой удаленной машины и все это дела сохраняем в файл гденибудь. Далее аналитическое ПО само берет из файла данные и что то сними делает.
Код клиента.
Если будут какие либо предложения по реализации, то с удовольствием ознакомлюсь.
собственно вам на линухе необходимо запустить только эту строчку
соответственно ардуино данные должна слать на этот порт.
Написал для вас линукс сервер который слушает порт 27050 и всё что понему приходит записывает в лог файл.
на диске в папке создать файл:
на экране нажимаем "A" или "I"
Вставляем в файл мой код, нажимаем Esc, вводим :w или Shift + ZZ
далее выполняем команду:
В водим пароль администратора.
Запускаем сервер:
Всё.
Теперь всё что придет на порт 27050 будет записано в лог файл который будет лежать в текущей папке.
Линукс это система где всё ограниченно лишь твоей фантазией.
Поправлю:
$ sudo chmod 777 Server.sh
Спасибо за код.
"Это - неправильные пчелы" (с) Зачем же делать файл world writable? :)
chmod +x Server.sh
Спасибо, опечатался.
собственно вам на линухе необходимо запустить только эту строчку
соответственно ардуино данные должна слать на этот порт.
Максим, большое спасибо за сорцы и видео.
Вобщем и целом мне удалось запуститься в тестовом режиме.
А скрипт из сообщения 15 не получилось запустить?
А скрипт из сообщения 15 не получилось запустить?
Говоря "удалось запуститься" имел ввиду клиентское по на ардуинке.
Мне только сегодня-завтра предоставят пк для "стендовых испытаний" и настройки датчика.
А скрипт из сообщения 15 не получилось запустить?
Говоря "удалось запуститься" имел ввиду клиентское по на ардуинке.
Мне только сегодня-завтра предоставят пк для "стендовых испытаний" и настройки датчика.
Я имею ввиду ты запустил тот скрипт который я написал в 15 сообщении, он работает в фоне и пишет в лог всё что ты кидаешь на TCP порт? Или ты только nc -l 27050 запустил проверил?