Схема: Компьютер-Arduino-Сервер-Arduino(c wifi shield)-Устройство

Edward_Kennedy
Offline
Зарегистрирован: 12.09.2017

Нужно сделать схему: Компьютер-Arduino-Сервер-Arduino(c wifi shield)-Устройство

Объяснение:

- Компьютер дает команду

- Ардуино считывает команду и кидает ее на сервер

- Сервер обрабатывает команду и передает его на другой ардуино

- Другой ардуино передает сигнал на устройтво

Хочеться чтобы с компа можно было управлять устройством (при этом хочеться чтобы этим устройством можно было упралять где угодно, естественно при условии подключения у интернету). Возможно у Вас есть идеи как это сделать, или есть другие предложения, я Вас с радостью читаю). Очень нужна помощь.

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Edward_Kennedy пишет:

Нужно сделать

Всем нужно

Edward_Kennedy пишет:

Хочеться 

Всем хочетЬся

Edward_Kennedy пишет:

я Вас с радостью читаю

Да, нет, это мы Вас с радостью читаем. Выкладывайте, что Вы уже сделали, обясняйте, что идёт не так и с чем Вы не можете справиться сами. а мы почитаем и постараемся помочь. Ибо

Edward_Kennedy пишет:

Очень нужна помощь.

только тому,  кто делает сам!

А тому, кто сам не делает помощь не нужна, ему нужно просто пойти в профильный раздел и заказать работу, чтобы ему сделали.

Edward_Kennedy
Offline
Зарегистрирован: 12.09.2017

Я хочу сделать сам, но проблема в том что я хз с чего начать, так так ардуино в руках не держал. Почему сам а не заказать, потомоу что не хочеться лишние деньги тратить, да и к тому же, самому всетаки чуток интересней. А так, может у кого какие наработки есть, идеи, с чего начать, где почитать. Потому что толковых статей не нашел. Может я просто искать не умею, но пока не видел.

Клапауций 112
Offline
Зарегистрирован: 01.03.2017

Edward_Kennedy пишет:

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

Почему сам а не заказать, потомоу что не хочеться лишние деньги тратить, да и к тому же, самому всетаки чуток интересней.

Потому что толковых статей не нашел. Может я просто искать не умею, но пока не видел.

хреново быть тупым нисчебродом.

b707
Offline
Зарегистрирован: 26.05.2017

Edward_Kennedy пишет:

Нужно сделать схему: Компьютер-Arduino-Сервер-Arduino(c wifi shield)-Устройство

Объяснение:

- Компьютер дает команду

- Ардуино считывает команду и кидает ее на сервер

- Сервер обрабатывает команду и передает его на другой ардуино

- Другой ардуино передает сигнал на устройтво

Хочеться чтобы с компа можно было управлять устройством (при этом хочеться чтобы этим устройством можно было упралять где угодно,

Первая ардуина в этой схеме явно лишняя. Компьютер же наверняка в сети - значит он связывается со второй ардуиной напрямую или через сервер.

А вообще - попробуйте поискать в гугле "управление ардуино через интернет" - все уже давно придумано.

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

Edward_Kennedy пишет:

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

Для начала, надо подержать в руках ардуину, диодиком помигать, почитать книшки. Это как с бабой, не поймешь куда тут чо сувать, пока в руках не подержишь. 

Voodoo Doll
Voodoo Doll аватар
Offline
Зарегистрирован: 18.09.2016

Edward_Kennedy пишет:
Компьютер дает команду

Ну допустим.

Edward_Kennedy пишет:
Ардуино считывает команду и кидает ее на сервер

Эмм, нахер? Не проще ли подать команду прямо серверу?

Edward_Kennedy пишет:
Сервер обрабатывает команду и передает его на другой ардуино

Обязательно сервер? Они какбе от ста тысяч стоят. А с этим справится роутер за полторашку. Вам ведь просто надо получить TCP/IP передачу извне (допустим, классический HTTP запрос)

Edward_Kennedy пишет:
Другой ардуино передает сигнал на устройтво

Ну да, выставляет единицу на цифровом выводе, и пять сантиметров дорожки на плате передают этот сигнал до транзистора, который что-то там у вас включает. Ответственный процесс однако.

Кстати, Arduino это она. Отладочная плата.

Короче, вот что вам надо сделать.

1. Купите роутер, D-link например. Пардон, не сочтите за рекламу. Далее идёте на сайт dlinkddns.com и там настраиваете некое имя (любое слово из букв), которое будет соответствовать MAC-адресу роутера. Адрес определится сам. Имя - это будет как домен третьего уровня. Например xxxxxxxxxx.dlinkddns.com

Пардон, не сочтите за рекламу D-Link, такой сервис есть и у других вендоров роутеров. Зюхели там. Микротики. D-link самый дешёвый.

2. Первый компьютер не покупайте, он у вас есть. Сервер тоже не покупайте, дорого.

3. Пробрасываете порт 80 в роутере на адрес устройства в сети, которое будет получать запрос. Адрес устройства - это IP адрес внутри сети роутера, то есть позади NAT. То есть он начинается с 192.168. Или не 80 а другой порт по желанию, тогда при запросе надо будет его указать после двоеточия, например xxxxxxxxxx.dlinkddns.com:666/?query, где ?query - данные запроса, 666 - TCP порт.

4. Уря, можно получать свои запросы. По факту, вам даже не нужно Arduino, есть платка последовательного (то есть с выходом UART и AT-командами) вайфая, называется ESP8266. Существует масса модификаций оной, вам подходит любая ибо вы не описали что конкретно делает устройство и как им управлять, из чего я делаю вывод, что его надо просто включить/выключить транзистором, как кусок светодиодной ленты. Для этого нужен цифровой выход, GPIO-порт микроконтроллера, как их принято называть. Таких выходов у 8266-01 два, что делает Arduino просто лишней в схеме.

Один из вариантов программирования плат ESP8266 - язык сценариев Lua и загрузчик Esplorer. Пример описан в этой статье, гуглёж терминов и инструментов оттуда элементарен. В статье описано выполнение запросов и аппаратная реакция устройства на это, внутри сети роутера (внутри локальной сети, там где адреса 192.168.x.xxx). Выше мной описано, что вам надо поменять чтобы был доступ в эту сеть снаружи, то есть с компьютеров, находящихся вне этой сети, посредством интернета.

Почитайте о сетевых технологиях и уровнях модели OSI, если выражения типа "проброс порта" и NAT вам непонятны. Если совсем всё грустно - то от вас модель роутера и хоть мало-мальски подробное описание момента, где застряли, и мы тут можем хоть пошаговую инструкцию сделать. Можно даже с картинками. Как в арифметике Пупкина. Главное не сидеть на заднице ровно, ожидая, пока с неба упадёт нямка. Надо самостоятельно ручками взять, и нужные кнопки нажать. Скрипт на LUA там вбить, не знаю. Хоть что-то сделать. Просто хотеть - недостаточно.

А, и вот ещё что, насчёт желаний. Я хочу подарить другу сет на любимого героя в DotA. Его цена 618 рублей, оплатите мне 500 из них, за консультацию. Я считаю, что это честно. Мой номер яндекса 410011919696337.

b707
Offline
Зарегистрирован: 26.05.2017

Voodoo Doll, вангую, что все еще проще - человеку надо включать-выключать свет с пульта в соседней комнате :) а вы ему интернет, сервера. динамик-днс.... :)

Все что ему нужно - радиореле и пульт с кнопками, типа такого

ТС - гонорар за совет приму на телефон, 100 рублей будет достаточно :)

 

Voodoo Doll
Voodoo Doll аватар
Offline
Зарегистрирован: 18.09.2016

b707, а ты харооош :)

kost82
Offline
Зарегистрирован: 30.11.2015

Есть офигительная книжка Джереми Блума "Изучаем Arduino - инструменты и методы технического волшебства" в которой в главе 14 все пошагово расписано. Книгу можно найти в сети и скачать в pdf (бесплатно и без СМС). Там есть все термины (IP, MAC, GET/POST, DNS, DHCP и др.), расписан перечень деталей, схема, пример страницы и даже как вывести данные с датчиков в онлайн сервисы по обработке данных. Очень рекомендую топикстартеру ознакомиться с этой книгой с самого начала, а не сразу с 14 главы.

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

kost82 пишет:

Есть офигительная книжка Джереми Блума "Изучаем Arduino - инструменты и методы технического волшебства" 

К сожалению, в русском издании много ошибок в кодах программ (вручную они их набирали, что-ли!).

А вообще, мне кажется, что совет мимо кассы. ТС ведь ясно написал, что ему "хочеться" не книжки читать, а "Хочеться чтобы с компа можно было управлять устройством" :)

pdjboy
pdjboy аватар
Offline
Зарегистрирован: 22.01.2017

Собрано по схеме изложенной товарищем выше, работает. спасибо.