안드로이드와 스위치 간 MQTT를 이용한 통신을 서버에서 중계를 하고자 한다. 그러면 어떻게 해야 중계를 할 수 있을까? 이번에는 MQTT_JSON.py, Network.py와 Reserve_Main.py까지 보도록 하겠습니다. 바로 코드 보시죠. (저번 글에 이어 바로 3번부터 시작하겠습니다.) 3. 코드 살펴보기 3번. MQTT_JSON.py import json def JSON_Parser(object): #print(object) jsonObject = json.loads(object) dic = {'sender': jsonObject['sender'], 'message': jsonObject['message'], 'room': jsonObject['room']} return dic def JSO..
홈 IoT/서버
안드로이드와 스위치 간 MQTT를 이용한 통신을 서버에서 중계를 하고자 한다. 그러면 어떻게 해야 중계를 할 수 있을까? 내용이 너무 길어 나눠서 포스팅 하도록 하겠습니다. 살펴볼 코드는 총 5개 Main.py, MQTT_Main.py, MQTT_JSON.py, Network.py, Reserve_Main.py 이렇게 입니다. 이번에는 Main.py와 MQTT_Main.py까지 보도록 하겠습니다. 1. 중계 프로그램의 목적 정의 우선 중계 프로그램을 통해 어떤걸 하고자 하는지 정의를 먼저 정할 필요가 있습니다. 제가 원하는 목적들을 정의를 하자면 아래와 같습니다. 1. MQTT 구독 1-1. 스위치로 부터 발행된 메세지 구독 1-2. 안드로이드로 부터 발행된 메세지 구독 2. MQTT 발행 3. 스위치 ..
리눅스(Ubuntu)에서 파이썬을 이용해 MQTT를 이용하여 각종 IoT가 접목된 기기들을 컨트롤하고자 한다. 그러면 어떻게 파이썬으로 이를 사용할 수 있을까? 해당 글은 파이썬 3.10 기준으로 작성했습니다. 1. MQTT 라이브러리(paho mqtt) 설치하기 우선 MQTT 라이브러리를 설치해야 이 기능을 사용할 수 있으므로 설치를 합니다. pip install paho-mqtt 저는 1.6.1 버전으로 설치했습니다. 2. 코드 작성(Publish) import paho.mqtt.client as mqtt def pub(topic_str, message_str): mqtt_client = mqtt.Client() mqtt_client.connect("서버 아이피 혹은 주소", 1883) # 1번 mq..
MQTT란? MQTT는 Message Queue Telemetry Transport의 약자로 낮은 전력, 낮은 대역폭 환경에서도 사용할 수 있게 설계된 포로토콜이다. 주로 IoT, M2M 등에 주로 사용된다. Mosquitto란? Mosquitto는 MQTT중 오픈소스 메세지브로커로 저전력 파워센서, 모바일 디바이스 등에 가벼운 메시징 처리를 하기 적합한 프로그램니다. 왜 설치를 해야하는가? 전등을 원격으로 컨트롤 하기 위해서 여러 방법이 있지만, 그중 간편하고 좋은 방법에 속하는 MQTT방식을 통해 사물인터넷을 구현 하고자 한다. 이러한 MQTT 서비스 중에서 비교적 간편하고 무료인 Mosquitto 으로 낙점 1. 설치 우선 중간에서 발신자,수신자를 연결해 줄 브로커를 설치해보자. cmd 창에 아래의..