AWS IoT를 사용하여 Raspberry Pi와의 MQTT 통신을 C 언어로 작동
8486 단어 RaspberryPiCmqttIoTAWS
개요
지금은 AWS IoT와 raspberry pi 사이의 MQTT 검증을 시도했습니다.
MQTT 통신은 비력한 디바이스가 적은 자원으로 통신할 수 있기 때문에 http 통신처럼 표준이 되고 있다. 라고 생각하고 있기 때문에 조금은 알아 두는 것이 좋다는 의도입니다
작동하는 내용은 AWS IoT를 사용하여 raspberry pi와의 MQTT 게시 및 구독 동작 확인입니다.
그러나 여기까지는 선인 분들의 정보를 이용함으로써 쉽게 실현할 수 있으므로,
이번에는 raspberry pi 측이 C 언어로 작동하기로 결정했습니다.
이미지
검증 방법
AWS IoT 마법사를 사용하여 일단 python 환경에서 작동합니다.
여기를 참고로했습니다.
AWS IoT Embedded C SDK를 사용하여 C 언어로 작동
AWS 설명서(AWS IoT Embedded C SDK 사용)의 단계에 따라 진행
htps : // / cs. 아 ws. 아마존. 이 m / 그럼 _ jp / 이오 t / ㅁ st / ゔ ぇ ぺぺ ぐ い で / い ー え m 뻬 dc sdk. HTML
(보충 설명)
- 현재 디렉토리/root에서
git clone https://github.com/aws/aws-iot-device-sdk-embedded-C.git -b release
- cert는 파이썬에서 작동 할 때 생성 된 인증서를 사용했습니다.- external_libs/mbedTLS/아래에 htps : // 기주 b. 코 m / 아 R m 베 d / m 베 dtls 파일을 복사했습니다.
- 정책은 파이썬에서 작동 할 때 생성 된 내용을 일부 수정했습니다.
- 샘플 프로그램은
~/aws-iot-device-sdk-embedded-C/samples/linux/subscribe_publish_sample
를 사용했습니다. 현재 디렉토리를 맞추고 make
를 실행하면 실행 파일을 만들 수 있습니다.-
aws_iot_config.h
설정하는 것을 잊지 마세요.Policy(변경 전)
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"iot:Publish",
"iot:Receive"
],
"Resource": [
"arn:aws:iot:ap-northeast-1:xxxxxxxx:topic/sdk/test/java",
"arn:aws:iot:ap-northeast-1:xxxxxxxx:topic/sdk/test/Python",
"arn:aws:iot:ap-northeast-1:xxxxxxxx:topic/topic_1",
"arn:aws:iot:ap-northeast-1:xxxxxxxx:topic/topic_2"
]
},
{
"Effect": "Allow",
"Action": [
"iot:Subscribe"
],
"Resource": [
"arn:aws:iot:ap-northeast-1:xxxxxxxx:topicfilter/sdk/test/java",
"arn:aws:iot:ap-northeast-1:xxxxxxxx:topicfilter/sdk/test/Python",
"arn:aws:iot:ap-northeast-1:xxxxxxxx:topicfilter/topic_1",
"arn:aws:iot:ap-northeast-1:xxxxxxxx:topicfilter/topic_2"
]
},
{
"Effect": "Allow",
"Action": [
"iot:Connect"
],
"Resource": [
"arn:aws:iot:ap-northeast-1:xxxxxxxx:client/sdk-java",
"arn:aws:iot:ap-northeast-1:xxxxxxxx:client/basicPubSub",
"arn:aws:iot:ap-northeast-1:xxxxxxxx:client/sdk-nodejs-*"
]
}
]
}
Policy(변경 후)
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"iot:*"
],
"Resource": [
"arn:aws:iot:ap-northeast-1:xxxxxxxx:*"
]
}
]
}
참고로 한 정보
htp : // bg. 아카누마 히로아키. 코m/엔트리/2017/07/01/160000
htps : // / cs. 아 ws. 아마존. 이 m / 그럼 _ jp / 이오 t / ㅁ st / ゔ ぇ ぺぺ ぐ い で / い ー え m 뻬 dc sdk. HTML
htps : // 기주 b. 코 m / 아 ws / 아 ws - 이오 t - ゔ ぃせ - sdk 에 m 베데 d - C / 이스에 s / 85
htps : // 기주 b. 코 m / 아 ws / 아 ws - 이오 t에서 ゔ ぃせ - sdk - 에 m 베데 d - C / 이스에 s / 183
Reference
이 문제에 관하여(AWS IoT를 사용하여 Raspberry Pi와의 MQTT 통신을 C 언어로 작동), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/shigeru-yokochi/items/439dca2b154c8e4fe93a텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)