이번에는 AWSIOT가 아닌 thingspark에 데이터를 전송해보겠습니다. STM32 설정은 전에 했던 실습과 동일합니다.
https://rorsi.tistory.com/22?category=534836
thingspark란
the K system에서 만든 IOT Cloud Service로 여러 센서 데이터를 모으고 바로 차트를 확인할 수 있습니다. RESTFull, MQTT, WebSocket등을 지원합니다.
thingspark - IoT 데이터 수집,분석 및 활용
thingspark에서 IoT 데이터 수집, 분석 및 활용해보세요. thingspark는 개방형 IoT 플랫폼입니다.
www.thingspark.co.kr
thingspark 홈페이지에 들어가 회원가입을 한뒤 로그인을 합니다. 그 다음 우측 상단에 채널 메뉴에 들어가서 New Channel를 클릭한 뒤 다음과 같이 설정해줍니다.
채널을 만들고 해당 채널을 클릭하게 되면 다음과 같은 메뉴가 나오는데 거기서 API Key를 확인하고 복사해둡니다.
그 다음 라즈베리파이에서 thingspark_upload.py를 만들고 다음과 같은 코드를 작성해줍니다.
requests 모듈은 파이썬을 통해 RESTFul API를 간편하게 사용 할 수 있습니다. reuqests.get 함수를 통해 url enteys 뒤에 params 값이 붙게 되면서 값을 전송하게 됩니다.
import requests
import serial
ser = serial.Serial('/dev/ttyUSB0', baudrate=9600) //STM32 Device와 시리얼 통신
ser.reset_input_buffer() //버퍼를 리셋
url = "https://api.thingspark.co.kr/channels/entrys"
r = ser.readline()
params = {
"apiKey" : "apiKey",
"field1" : r,
"field2" : 10
}
result = requests.get(url, params=params)
print(result.text)
이제 코드를 실행시키면 다음과 같은 숫자가 나오는데 0이 아닌 숫자가 나온다는 것을 잘 실행되었다는것을 의미합니다.
stm32에서 uart 통신을 통해 보낸 777값이 Rpi4를 거쳐 thingspark까지 전송되었습니다.
출처 : https://www.youtube.com/watch?v=nkf8rvARfAA&t=1992s
'STM32 > STM32L475VGT6' 카테고리의 다른 글
B-L475E-IOT01A (0) | 2022.02.15 |
---|---|
STM32_RPI4_AWS IOT (0) | 2022.01.29 |