홈 IoT

기존에 안드로이드에서 MQTT를 이용하여 메세지를 주고 받는걸 확인 했다. 이를 응용해서 전등을 컨트롤하는 예제를 만들어보자. 1. MQTT 로 보낼 TOPIC, JSON 구조 정하기 MQTT 중계 프로그램 제작 - 1부 안드로이드와 스위치 간 MQTT를 이용한 통신을 서버에서 중계를 하고자 한다. 그러면 어떻게 해야 중계를 할 수 있을까? 내용이 너무 길어 나눠서 포스팅 하도록 하겠습니다. 살펴볼 코드는 총 5 sonjuhy.tistory.com 이 글과 2부에서 작성한 서버와 통신할 안드로이드 어플을 만들고자 합니다. 그러므로 TOPIC은 이 글을 따라가겠습니다. 해당 글에서 안드로이드로부터 오는 메세지를 받는 토픽은 아래와 같습니다. MyHome/Light/Pub/Server 그리고 전등의 변경된 ..
버튼입력을 통한 컨트롤 및 MQTT를 이용한 통신을 서버에 전송 하고자 한다. 그리고 유지 보수를 위해 펌웨어를 OTA로 업데이트 할 수 있도록 하고자 한다. 1. 펌웨어의 목적 정의 스위치를 통해 하고자 하는 목적을 먼저 정의를 해야합니다. 제가 원하는 목적들을 정의를 하자면 아래와 같습니다. 1. 버튼으로 스위치 컨트롤 1-1. 어떠한 경우에도 최우선적으로 작동 1-2. 버튼 작동했을때 상태를 서버로 전송 2. MQTT 구독, 발행 3. 웹 컨트롤 기능 3-1. OTA 기능 3-2. 테스트 컨트롤 및 상태값 확인 2. 목적 별 필요 기능 1번. 핀&릴레이 컨트롤 및 인터럽트 버튼 입력을 통해 컨트롤 하고자 하면 핀 & 릴레이 컨트롤이 필요합니다. 핀 : 버튼을 눌렀을때 해당 신호를 esp칩셋에 전송할..
그동안 진행한 글들을 보시면서 이런 궁금증이 생기실수도 있습니다. 그럼 DB는 어떻게 되어있길래 저렇게 DB에 데이터를 넣고 가져와서 쓸 수 있는거지? 그래서 이번에는 DB에 있는 테이블 구조들을 보도록 하겠습니다. ※ 코드에 있는 테이블, 컬럼 명이랑 대소문자 등이 다를 수 도 있습니다. 여러분들 보기 편하기 위해서 수정했습니다. (그리고 저도 곧 이렇게 수정할 예정입니다.) 1. 테이블 리스트 한번 표로 정리해봤습니다. Table 이름 역할 사용되는 기능 비고 LIGHT_RESERVE 전등 예약 설정 정보 저장 전등 예약 LIGHT_RECORD 전등을 컨트롤 한 기록 저장 전등 컨트롤 기록 누가,언제,어디를,무엇을 NOTICE 공지사항 정보 저장 공지사항 ROOM_LIGHT 전등 리스트 정보 저장 전..
안드로이드와 스위치 간 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..
안드로이드와 스위치 간 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. 스위치 ..
안드로이드, 서버, 스위치간에 서로 데이터를 JSON으로 주고 받는다. 그러면 그 데이터들의 JSON 타입을 정할 필요가 있다. 한번 정해보고 표준타입으로 설정해서 서로 원활하게 통신이 되도록 해보자 1. JSON은 무엇인가? 가장 먼저 알아야 할 것은 JSON은 무엇인가? 입니다. JSON의 정의는 아래와 같습니다. JavaScript Object Notation(JSON) 용도는 데이터를 저장하거나 전송할 때 사용되는 경량 DATA 교환 형식이며, 데이터 포맷일 뿐 어떠한 통신 방식도, 문법도 아닌 단순히 데이터 표시하는 방법 중 하나입니다. 그럼 구성은 어떤지 살펴보겠습니다. 문법 먼저 살펴보겠습니다. 형태는 name-value 타입이며 {} 같은 중괄호로 묶여있습니다. 아래는 예시입니다. {"na..
Red-Hat
'홈 IoT' 카테고리의 글 목록