Websocket을 통한 Intel Edison의 실시간 센서 데이터

3869 단어 iothardwarejavascript
(참고: 이 게시물은 내 이전medium.com 블로그에서 마이그레이션되었습니다.)

설정 및 개발을 훨씬 쉽게 해주는 문서, 도구 및 라이브러리에 대한 수많은 업데이트가 있었습니다. downloads 페이지를 확인하여 새 설치 프로그램과 최신 펌웨어를 받으세요.

다음 자습서에서는 Intel Edison이 이미 업데이트되고 연결 설정이 되어 있다고 가정합니다. 최신 인텔 에디슨이 있는 경우 이guide 또는 이전 .

1. UPM 저장소를 사용하여 센서 데이터 읽기



UPM은 MRAA을 사용하는 센서/액추에이터에 대한 높은 수준의 저장소입니다. 지원되는 센서 목록을 확인하십시오here . 사용 중인 센서가 이미 UPM에서 지원되는 경우 높은 수준의 인터페이스를 사용하여 많은 시간을 절약할 수 있습니다.

UPM에서 사용 중인 센서를 찾을 수 없는 경우 언제든지 Github에서 문제를 제출하거나 풀 요청을 제출하세요. 물론 항상 MRAA을 사용하여 센서에서 원시 데이터를 읽을 수 있습니다(예: 아날로그, I²C, SPI, UART 등을 통해).

이 자습서에서는 내 temperature sensor에서 Grove Starter Kit을 사용합니다.



이 온도 센서는 서미스터를 사용하여 온도를 감지합니다. 서미스터는 온도가 변하면 저항을 변경하는 장치입니다. 아날로그 핀으로 이 센서의 전압 출력을 측정함으로써 센서의 데이터시트를 찾아 온도를 결정할 수 있습니다. 운 좋게도 UPM은 이미 사용을 위해 이를 수행했습니다. 서미스터here에 대해 자세히 알아보십시오.

아래 그림과 같이 온도 센서를 아날로그 핀 A0에 연결했습니다.



UPM은 그로브 온도 센서를 지원하며 예제code도 포함합니다. Intel Edison에서 예제 코드를 wget하여 실행하겠습니다.

...다음 출력이 표시되어야 합니다.



grovetemp.js의 코드를 보면 기본적으로 온도 센서 개체를 인스턴스화하고 temp.value()를 반복적으로 호출하여 최신 온도 판독값을 가져오는 것을 볼 수 있습니다.

2. Websocket을 통해 센서 데이터 푸시



그건 쉬웠어요 :) 이제 마지막 튜토리얼처럼 Socket.IO를 사용하여 웹소켓을 통해 이 데이터를 UI로 푸시하기만 하면 됩니다.





<script id="gist-ltag"src="https://gist.github.com/w4ilun/987d338c3b3111d8dd9f.js"/>


Intel Edison에 이 두 파일을 넣고 다음을 실행합니다.



node tempsensorsocket.js


express와 socket.io가 이미 설치되어 있는지 확인하고 index.html에서 IP 주소를 변경하세요.



브라우저에 실시간 온도 데이터가 표시되어야 합니다. 센서를 터치하여 온도가 올라가는 것을 확인하세요 :)





40줄의 코드로 웹소켓을 통해 실시간 온도 센서 데이터를 스트리밍할 수 있었습니다! 이는 Socket.IO, Express, UPM 및 MRAA와 같은 우수한 오픈 소스 라이브러리에서만 가능합니다.



이 튜토리얼 자체는 시작점 역할을 하며 여기에 추가할 수 있는 다른 많은 것들이 있습니다. 멋진 CSS 대시보드? 클라우드 분석? 너무 더워지면 AC를 켜시겠습니까? 스프링클러를 작동하시겠습니까?



무엇을 만드시겠습니까?

좋은 웹페이지 즐겨찾기