반응형

https://youtu.be/IAmBnqjr5Sg

 

(Websocket#8) 16채널 릴레이 웹소켓으로 제어해보기!
녹칸다의 웹소켓(websocket)을 이용해서 ESP8266을 웹서버로 구동시키는 시리즈이다!
기존 ESP8266으로 구현할 수 있는 웹서버를 동적으로 구현할 수 있는 예제이다!
웹서버와 웹클라이언트 방식에서 클라이언트가 서버에게 요청한다음 응답을 받는 구조를 가진다!
그러나 서버가 주도적으로 클라이언트에게 데이터를 전송할 수 없다!
웹소켓을 이용한 웹서버는 기존 웹서버와 동일한 방식으로 동작하나 클라이언트가 받게될 응답데이터에 자바스크립트로 구현된 웹소켓 코드가 내장되어있다!
웹서버는 내부적으로 별도의 포트를 이용해서 클라이언트에 설치된 웹소켓과 소켓통신을 함으로써 양방향 통신이 가능해진다!
(웹서버와 웹소켓 2개의 통신이 동시에 이루어진다)
이번편에서는 웹소켓을 이용한 웹서버를 구현하고 16채널 릴레이를 연결해서 스마트폰의 웹브라우저에서 실시간 양방향 통신으로 제어할 수 있도록 해보자!
16채널 릴레이는 ESP8266에서 직접 제어가 어려우므로 74HC595모듈 2개를 사용해서 연결하도록 하자!(선행 예제가 이미 구현되어 있음)
스마트폰의 웹브라우저에서 16채널 릴레이의 상태를 출력하고 릴레이를 on/off할 수 있는 인터페이스를 html과 javascript를 이용해서 구현해보도록 하자!

 

(실제로한거)

1.ESP8266에서 시리얼모니터에 유저의 입력으로 16채널릴레이의 현재상태를 플립하시오!

412-1(ESP8266에서시리얼모니터로16채널릴레이제어하기).txt
0.00MB

2.ESP8266에서 웹소켓서버를 작동시키고 유저의 입력으로 16채널 릴레이를 양방향제어하시오!

412-2(웹소켓으로16채널릴레이제어하기).txt
0.01MB

3.(2)예제에서 자바스크립트의 타이머를 활용해서 클라이언트가 주도적으로 릴레이 작동을 예약할 수 있도록 하시오!

412-3(타이머기능추가).txt
0.01MB


레퍼런스코드(#375-9)
https://bota.tistory.com/1759
레퍼런스코드(#380-3)
https://bota.tistory.com/1765
관련라이브러리(websocket)
https://github.com/Links2004/arduinoWebSockets

반응형
Posted by 덕력킹
,