Project 15

LoRa 프로젝트 완성(LoRa, WiFi, 센서 등 모든 코드 정리)

드디어 한 학기짜리 LoRa 프로젝트를 완성했다. 프로젝트 주제는 최종 완성과 시연 영상은 글 제일 마지막에 ! 일단 이번 프로젝트에서 LoRa 통신을 이용했고, 하드웨어는 ESP32 TTGO LoRa 모듈이다. 네이버에서 하나당 약 3만5천원? 정도 주고 구매했다. SK나 다른 회사에서 제공하는 LoRa 통신망을 이용하지 않고, 모듈 3개로 송수신했다. 코드는 이 전에 포스팅 했던 게시글에 있다. LoRa 모듈 송수신 코드 CO2와 이산화탄소 측정 코드 와이파이로 웹서버에 데이터 보내는 코드 최종 완성된 전체 코드 및 깃헙 주소는 아래에 있다. 코드만 옮기면 안되고, 필요한 라이브러리들을 모두 다운받아서 추가해야 한다. https://github.com..

Project/Arduino 2020.07.09

LoRa 통신을 이용한 창문 자동 개폐 시스템과 문자 서비스

프로젝트 초기의 목표는 1,2,3층의 열람실에 각각 센서를 달고 단순히 앱/대시보드로 보여주는 것이었다. 그러나, 단순히 보여주는 것보다는 사람이 신경쓰지 않더라도 기기가 스스로 하도록 하는 것이 IoT의 본질이라고 생각하였고, 다른 여러 상황과 겹쳐서 목표가 바뀌었다. " 제목과 같이 실내 공기 질을 센서로 지속적으로 측정을 하고 기준치 이상으로 올라간다면 창문에 달린 모터가 작동되어 창문이 열리고, 센서값이 낮아지면 다시 닫히는 시스템이다. 그리고, 열람실 관리자 책상에 설치된 [LoRa - LED] 기기에서 기준치가 넘으면 빨강색 LED가 켜지고, 정상 범주에서는 초록색 LED가 켜진다. 관리자는 대시보드에 들어가지 않아도 책상에 있는 LED를 보고 현재 열람실의 상황을 알 수 있다. " 가 우리 ..

Project/Arduino 2020.06.23

2019년 네이버 웨일 확장앱 콘테스트 본선 결과 및 코드

결과부터 말하면 수상하지 못했다. 11월 말에 시험기간임에도 불구하고 팀원들과 며칠을 밤새면서 만들긴 했지만,,, 완성도와 활용도가 조금 떨어졌다 ㅠㅠ 떨어진 이유와 경험 분석 1. 우리들 수준에 비해서 단기간 내에 너무 높은 목표를 잡았다. 당시 우리 팀원들은 CSS, JS, HTML에 대해 기초적인 지식밖에 없었다. 그래서 개발 초기에 진도가 거의 못나가고 언어를 익히는데 오래 걸렸다. ▷ 상은 받지 못했지만, 그 덕분에 우리 팀원들 스스로의 한계치를 뚫고 한계를 더 높게 만들었다. 독학으로 단기간에 폭발적인 프로그래밍 실력을 키울 수 있었다. 다음번에 다른 무엇에 도전을 하더라도, '할 수 있을 것 같다.' 라는 자신감을 얻음. 2. 회의에서 나온 아이디어들을 다른 팀들도 시도했다. ▷ 생각하는 범..

LoRa 통신 Sender - Receive 주고 받기

CO2와 미세먼지 측정값에 일단은 '상수'를 배정하여서 로라 통신을 테스트하는 코드이다. 작동 전에 라이브러리를 모두 다운 받아 추가해야 한다. 로라 라이브러리 : https://github.com/sandeepmistry/arduino-LoRa OLED (로라액정) 라이브러리 : https://github.com/adafruit/Adafruit_SSD1306, https://github.com/adafruit/Adafruit-GFX-Library adafruit/Adafruit-GFX-Library Adafruit GFX graphics core library, this is the 'core' class that all our other graphics libraries derive from - ad..

Project/Arduino 2020.06.21

ESP32로 CO2와 미세먼지 측정하기(MH-Z14A)

이산화탄소와 미세먼지를 동시에 측정하는 코드이다. 이 전 게시글에 비해 미세먼지를 측정하는 코드 약 10줄? 정도만 추가되어서, 바뀐 부분만 보면 될 듯하다. 일반 아날로그값을 읽는 것과는 다르게 Setup() 부분에서 미세먼지 센서를 pinMode(pinnumber, INPUT)으로 읽는다. #include #include #include //#include const char* ssid = "A"; const char* password = "A!"; const char* serverName = "http://00.000.00.000:0000/"; int value_co2; int value_dust; int sensor_number = 1; int analog = 34; IPAddress hostIp..

Project/Arduino 2020.06.18

ESP32로 CO2 센서(MH-Z14A) 측정하기

MH-Z14A 센서로 CO2를 측정하니 전압값이 너무 안맞아서 한참 고생했다. ESP32와 MH-Z14A 예제도 별로 없음 ㅠㅠ 아래 코드는 5V에 연결된 전압을 변환해서 적정 값으로 바꾸어주는 코드이다. #include #include #include //#include const char* ssid = "A"; const char* password = "A"; const char* serverName = "http://00.000.00.000:0000/"; int value; int sensor_number = 1; int analog = 34; IPAddress hostIp(00, 000, 00, 000); int SERVER_PORT = 5000; WiFiClient client; void set..

Project/Arduino 2020.06.18

Esp32로 웹서버 통신(http POST, Json 형식)

영단어 퀴즈 앱테크 어플 (하루 5분 100원 적립 가능!) 아이폰> ‎캐시보카 - 돈버는 영단어 앱테크 ‎단어를 맞추면 1캐시가 적립돼요. 적립된 캐시는 네이버 포인트로 전환할 수 있어요. apps.apple.com esp32의 예제가 많이 없어서 찾기 힘들었다. 본 코드는 esp32에 있는 값을 POST 방식을 통해 Json 형태로 웹서버에 보내는 방법이다. http POST를 이용해서 데이터를 보내는 부분만 있다. 우리 팀은 웹서버에서 데이터를 수신할 필요는 없어서 수신 코드는 넣지 않았다. 그리고 본 게시글 하단에 참조된 사이트에 GET 방식도 있으니 참조하면 좋을 것 같다. 우리 팀은 AWS에서 프리티어로 웹서버를 개설하고 DB를 구축해놓았다. ESP32 예제가 일단 많이 없을 뿐더러 Http ..

Project/Arduino 2020.05.28

LoRa 통신 전체적인 시스템 아키텍처 및 참고 사이트

4학년 1학기인 이번학기에 졸업 프로젝트 수업인 '융합캡스톤디자인' 을 수강하고 있다. 기업과 협업해서 한 학기동안 프로그램을 만드는 수업이다. 우리 팀은 교내 도서관의 Co2를 측정해서 LoRa통신을 이용해 웹서버로 보내고, 대시보드에서 나타내는 주제로 진행하게 되었다. 초기에 그린 시스템 구조는 이렇다. 각 열람실에서 co2를 측정해서 esp32의 LoRa 통신 모듈로 게이트웨이까지 데이터를 보낸다. 게이트웨이에서는 축적된 데이터를 웹서버에 보내고 대시보드에 나타낸다. LoRa 통신이 나온지 얼마 안되어서 예제가 많이 없다. 특히 Esp32와 LoRa 통신은 예제가 정말 없다. 아래는 우리팀이 참고했던 Esp32와 LoRa통신 관련 사이트 목록이다. m.blog.naver.co..

Project/Arduino 2020.05.28

[네이버 웨일 확장앱 콘테스트] Extension Day 참석 후기

네이버 웨일팀에서 주최하는 에 다녀왔습니다!! 콘테스트 본선 진출자들을 대상으로 웨일에 대해 설명해주고 사전에 설문조사로 받은 Q&A들을 대답해주고 피드백 해주는 일종의 설명회? 같은 느낌이에요! 역삼역에 네이버파트너스퀘어에서 진행되었습니다 -! 3번 출구 나와서 바로 앞에 있더라구요 빌딩에 들어가자마자 1층에 웨일팀에서 안내를 나왔어요 :) 참가자분들을 많이 존중해주는 느낌이라 좋았습니다ㅎㅎ 21층에 올라가자마자 간판이 저희를 맞이해주네요 만날 학교에서 망부석 귀신처럼 지내다가 새로운 건물에 오니까 막 활기가 돋는거 있죠 ㅋㅋㅋㅋㅋ 이 날 미세먼지고 쪼끔! 있었지만 21층에서 바라본 서울 전경 끝내줬어요 ㅠㅠㅠㅠㅠ대박 그리고 드디어 입장!! 본선에 진출한 37팀의 참가자들이 가득차있었습니다. 1시부터 ..

[네이버 웨일 확장앱 콘테스트 본선 합격] 합격.. 합격취소? 그리고 합격!

두구두구두구 드디어 22일 발표날이 되었습니다 ! 작년에 참가한 사람들의 후기를 보니까 3시쯤 메일이 왔더라구요. 3시 수업이 끝나고 두근거리는 마음으로(은근 기대했습니다 ㅎㅎ) 핸드폰을 봤는데, 메일이 안왔어요 ! 오후 6시까지도 안오는거에요 ㅠㅠㅠㅠ떨어졌구나 싶었죠... 그런데 ! 아니 !? 합격이라고 ?!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 시험기간에 잠을 못자서 너어어어무 피곤했는데, 잠이 확 깼어요 !!!! 전혀 기대 안하고 있던 팀원들도 완전 놀랐어요 ㅋㅋㅋㅋ 그렇게 막 좋아하고 있는데 갑자기 엥....? .......... 왜 괜히 기쁨을 주셨나요 웨일이여.... 너무 이상해서 웨일팀으로 메일을 보내봤어요 ! 어떤 결과가 맞는지 !!! (왜 그랬는지도 물어보고 싶었지만 ..

[네이버 웨일 확장앱 콘테스트 본선 합격] 아이디어가 나오기까지

네이버에서 Whale이라는 새로운 브라우저를 출시했습니다.(아니 했었다, 난 얼마 전에 알았다) Whale에는 여러가지 유용한 기능들이 있는데, 그 중 가장 유용한 것이 확장앱인 것 같아요 -! 네이버 웨일팀에서 2019 확장앱 콘테스트를 진행하더라고요!! https://whale.naver.com/contest/ 웨일 확장앱 콘테스트 대학생 개발자라면 누구나! 지금 '웨일 확장앱 콘테스트'에 참여하세요! whale.naver.com 총 1,200만원의 상금이 주어지고, 그것보다는 시상시 네이버 인턴 기회가 주어지다니 !! 물론 나는 현재 3학년이라 시상을 해도 인턴을 못하지만(김칫국,,마음은 이미 시상했음 ㅋㅋㅋ), 재미있을 것 같아서 해보기로 했습니다 :) 같이 '동국대알리미'를 만든 팀원들하고 지원..

[카카오 챗봇 만들기] 3. 챗봇 생성, 플러스친구 연동

안녕하세요 :) 저번 포스팅까지 해서 챗봇을 만들기 위한 준비 단계가 모두 끝났습니다 ! 이번 포스팅에서는 챗봇을 생성하고 플러스친구ID와 연동에 대해 알아볼거에요!! 1. 챗봇 생성 승인이 된 후에 오픈빌더로 들어가면 위와 같은 화면이 떠요! + 버튼을 꾹 눌러줍니다 카카오톡 챗봇을 눌러주고~ 챗봇의 이름을 정해줍니다 ! 카톡 사용 유저한테 보여지는 이름이 아니기 때문에 구분하기 편하게 지으시면 돼요 :) 저는 블로그 업로드용이니까 블로그 이름으로 지어보겠습니다 두근두근 .. ! 드디어 챗봇 탄생하는 순간이에요 ! ...!!!! 저는 처음에 챗봇이라고 하면 엄청난 코딩을 해야할 것 같고 복잡하게 생겼을 줄 알았는데 생각보다 심플하고 깔끔해서 놀랐어요 ! 카카오에서 코딩을 하나도 모르는 사람도 간편하게 ..

[카카오 챗봇 만들기] 2.오픈빌더 준비하기

안녕하세요 ! 카카오 플러스친구 만들기에 이어 바로 오픈빌더 준비하는 방법을 알아보겠습니다 ! 1. 오픈 빌더 승인받기 https://i.kakao.com/login 카카오 i 오픈빌더 Make your kakao I. 손쉽게 카카오 AI기술을 활용하도록 누구에게나 제공하는 kakao I 개발 플랫폼을 만나보세요. i.kakao.com 위의 링크로 이동해서 카카오 로그인을 한 후에 파란색 메뉴를 클릭합니다. 그러면 신청 링크로 들어가지게 됩니다. 신청서가 아주 간단해서 좋습니다 ㅎㅎ 현재 OB기간 중에 오픈빌더를 사용하기 위해서 정보를 입력해야해요. 현재 운영중인 플러스친구 항목에는 이 전 게시글에서 만들었던 플러스친구의 홈 URL을 입력하면 됩니다. 홈 URL을 보는 경로는 다음과 같습니다. 플러스친구..

[카카오 챗봇 만들기]1. 플러스친구ID 생성하기

안녕하세요 :) Juzero 입니다! 오늘부터 카카오톡 챗봇 만들기 포스팅을 진행할 예정이에요!! 그럼 쓸데없는 말은 접어두고 바로 시작해볼까요? 카카오톡 챗봇을 만들기 위해서는 플러스친구 ID를 만들어야 합니다. https://business.kakao.com/dashboard/?sid%3Dpfr%26redirect%3Dhttps%3A%2F%2Fcenter-pf.kakao.com%2Fprofiles 카카오 for 비즈니스 Kakao for Business 카카오 for 비즈니스는 카카오의 다양한 비즈니스 서비스를 경험할 수 있는 통합 비즈니스 플랫폼입니다. business.kakao.com 카카오 id를 가지고 있으면 누구나 만들 수 있어요. 위의 사이트로 이동해서 +새 플러스친구 만들기를 클릭합니다...

[카카오 챗봇 만들기] @동국대알리미 , 교내 학식, 전화번호, 일정, 공지사항 등등

안녕하세요 :) 오늘부터 카카오톡 플러스친구로 챗봇을 만드는 방법을 포스팅할 예정이에요! 요새 쇼핑몰부터 시작해서 카카오톡 플러스친구를 쓰지 않는 회사가 없을 정도에요.(카카오 침투력 무엇) 솔직히 어플이나 홈페이지 들어가서 문의하는 것보다 카톡에서 쉽게 문의하니까 접근성이 훠어어엉어어어ㅇ얼씬 좋은 것 같아요!! 저는 현재 동국대학교 재학중인데, 학식같은 교내 정보를 챗봇으로 만들면 좋겠다는 생각이 들더라구요. 그래서 직접 만들었습니다! 그런데, 카카오 빌더가 현재 오픈 베타은 상태이고(내년부터 유료화 예정), 나온지 얼마 안돼서 인터넷에 정보가 너어어어무 없더라구요 ㅠㅠㅠ 힘들었습니다. 물론 카카오에서 교과서같은 info를 제공하긴 하지만 이해하기 좀 오래걸렸어요 ^^; 그래서 직접 포스팅하려고 마음을..