Как отправить данные с веб-страницы на Arduino UNO через модуль ESP8266?

Вот мой HTML-код для страницы. Я использовал JQuery здесь. Управление светодиодом ESP8266

<!-- in the <button> tags below the ID attribute is the value sent to the arduino -->

<button id="11" class="led">Toggle Pin 11</button> <!-- button for pin 11 -->
<button id="12" class="led">Toggle Pin 12</button> <!-- button for pin 12 -->
<button id="13" class="led">Toggle Pin 13</button> <!-- button for pin 13 -->

<script src="jquery.min.js"></script>
<script type="text/javascript">
    $(document).ready(function(){
        $(".led").click(function(){
            var p = $(this).attr('id'); // get id value (i.e. pin13, pin12, or pin11)
            // send HTTP GET request to the IP address with the parameter "pin" and value "p", then execute the function
            alert("Sending Get Request");
            $.get("http://192.168.4.1:80/", {pin:p}); // execute get request
        });
    });
</script>
</body>
</html>

Когда я подключаю свой компьютер к Wi-Fi ESP8266, я могу управлять подключенным к нему светодиодом. Но я хочу управлять им через Интернет. Модуль ESP8266 подключен к Wi-Fi моего модема, но я не знаю, что написать в методе $.get() на HTML-странице, чтобы запрос отправлялся на Arduino через Интернет. Я попытался указать общедоступный IP-адрес моего модема вместо 192.168.4.1 (по умолчанию для ESP8266), это не сработало.


person user3035457    schedule 25.09.2015    source источник
comment
Вам нужно будет настроить модем/маршрутизатор для передачи внешнего трафика с порта 80 (или лучше использовать другой порт) на 192.168.4.1:80 - то, как вы это сделаете, будет зависеть от модема/маршрутизатора и не относится к теме переполнения стека. . Но ищите переадресацию портов или что-то подобное в веб-интерфейсе администратора вашего модема/маршрутизатора.   -  person CupawnTae    schedule 25.09.2015
comment
добро пожаловать. Я предполагаю, что это может быть полезно другим и может быть рассмотрено по теме, поэтому я разместил его как ответ. Я позволю другим решить, хотят ли они закрыть вопрос как не по теме, но, по крайней мере, это работает для вас :)   -  person CupawnTae    schedule 28.09.2015


Ответы (2)


Вам нужно будет настроить модем/маршрутизатор для передачи внешнего трафика с порта 80 (или лучше использовать другой порт) на 192.168.4.1:80 - то, как вы это сделаете, будет зависеть от модема/маршрутизатора.

Найдите «переадресацию портов» или что-то подобное в веб-интерфейсе администратора вашего модема/маршрутизатора.

person CupawnTae    schedule 28.09.2015

Я только что использовал код кнопки выше, мне нужно было только подключить esp8266 к реальной сети Wi-Fi (с доступом в Интернет) и узнать его IP-адрес (AT + CIFSR). У меня есть веб-сервер на моем ПК, и я могу управлять Arduino через esp. (я меняю технику)

person Tapiwanashe Augustine    schedule 20.11.2015