AWS IOT를 사용하여 Raspberry Pi에서 데이터 전송

사쿠라 VPS의 Rails 앱 REST API로 데이터를 모아 보았지만 AWS IoT를 사용해보고 싶은 설정을 해본다.

Raspberri Pi2 B에서 AWS IoT에 연결합니다.
  • AWS 관리 화면에서 IoT를 선택합니다.
  • Things 만들기. 이번에는 Baobab의 이름으로 작성.

  • AWS IoT에 연결하기 위한 인증서를 생성하고 Activate로 다운로드합니다.

  • Raspberry Pi에서 AWS IoT에 연결하는 SDK를 다운로드하지만,
    이 화면의 HTTPS 엔드포인트도 복사해 둔다.

    이번에는 LINUX/OSX -> Python을 선택. Python 2.7+ or Python 3.3+를 지원합니다.

  • 사용법은 이쪽이 참고가 되었다.
    htps : // 기주 b. 코 m / 아 ws / 아 ws - 이오 t에서
  • 3.에서 다운로드한 키와 4.에서 다운로드한 SDK를 Raspbery Pi에 SCP나 FTP 소프트웨어로 업로드.
  • AWS IoT 루트 CA는 키와 동일한 디렉토리에 준비합니다.
  • curl https://www.symantec.com/content/en/us/enterprise/verisign/roots/VeriSign-Class%203-Public-Primary-Certification-Authority-G5.pem -o rootCA.pem
    

    7. Raspberry Pi에 터미널로 로그인하여 SDK를 설치.
    $ pip install AWSIoTPythonSDK
    

    8. 샘플 프로그램으로 연결 확인.
    $ python basicPubSub.py -e <endpoint> -r <rootCAFilePath> -c <certFilePath> -k <privateKeyFilePath>
    

    키 파일은 풀 패스로 기재.
    2016-12-23 18:40:01,310 - AWSIoTPythonSDK.core.protocol.mqttCore - DEBUG - Publish request 2 succeeded.
    Received a new message: 
    New Message 0
    from topic: 
    sdk/test/Python
    --------------
    
    
    2016-12-23 18:40:02,315 - AWSIoTPythonSDK.core.protocol.mqttCore - DEBUG - Try to put a publish request 3 in the TCP stack.
    2016-12-23 18:40:02,317 - AWSIoTPythonSDK.core.protocol.mqttCore - DEBUG - Publish request 3 succeeded.
    Received a new message: 
    New Message 1
    from topic: 
    sdk/test/Python
    --------------
    

    연결할 수 있었다.

    9. 대시보드에서도 확인할 수 있습니다.



    마지막 파이썬 프로그램을 바꾸면서,
    Lambda로 DB에 연결하는 등 전체 설계를 재검토해 본다.

    좋은 웹페이지 즐겨찾기