라벨이 nodemcu인 게시물 표시

ESP8266, espeasy, HA, MQTT, 센서를 이용하여 실내공기질을 측정하자(3)-미세먼지

이미지
3. pms7003   알리 에서 구매 약 20,000원  가. 하드웨어연결 pms7003 선 연결은 작고 네모난 모양의 커넥터를 사용한다. 보통 핀헤더로 연결하는 점퍼는 안들어가고, 사진과 같이 생긴 어댑터보드가 필요하다. 위 링크는 센서+어댑터로 구성되어있다. 어댑터빼고 싸게 파는것도 있는데 이거는 다른특별한 수단 있는거 아님 사지말자. 심히 고생한다(고 한다). 주의할점은 이 어댑터를 끼우는 방향이다. 케이블 나오는 쪽이 센서 아래로 가도록 꽂아야 한다. 반대로 꽂으면 핀연결이 달라진다. 다른핀은 큰문제가 아닐수 있는데 5v가 set에 붙는 관계로 모듈에 문제가 생길수 있다(set은 3.3v로 신호 받게 되어있다) pms7003도 전원은 5v로 공급받고 통신은 3.3v로 하는 센서이다. 센서에는 각인이 안되어있는데 어댑터보드에는 각인이 되어있으니 연결이 편하다. 저 보드를 꽂고, 케이블 중간을 잘라서 적당히 해체한다음에 필요한 곳에 연결하면된다. 아니면 하네스커텍터 10핀(아마도 이런거 )짜리를 사서 이어도 되는데 그럼 또 납땜하고 더 복잡해질수도 있다. Function: Pin PMS7003 ESP8266 VCC 1 or 2 5V GND 3 or 4 GND TX 9 1st GPIO specified in Device-settings Set 10 free gpio Reset 5 3rd GPIO specified in Device-settings nodemcu의 경우 5v는 vin이라는 이름으로 있다. tx는 빈 gpio에 연결하면 espeasy에서 설정할 수 있다. set도 마찬가지. reset도 마찬가지이긴한데, reset은 꼭 필요아지 않은 것으로 보인다. esp8266의 gpio는 생각보다 많지 않기 때문에 다른센서 연결...

ESP8266, espeasy, HA, MQTT, 센서를 이용하여 실내공기질을 측정하자(2)-온습도, 이산화탄소

이미지
센서가 온 순서대로 진행중. 1. espeasy mqtt 설정  espeasy에 접속해서 이렇게 설정해준다. constoller ip는 mqtt broker가 설치된 라즈베리파이가 있는 ip이다. user, passwd는 모스키토 설치하면서 만든 것을 사용해야한다. 포트, subscribe, publish는 건드리지 말자. 1-2. HA에서 mqtt설정 HA에서 mqtt설정을 하지 않았다면 아래 설정을 configuration.yaml에 추가해준다. mqtt: broker: 192.168.29.180 port: 1883 client_id: homeassistant-1 username: !secret mqtt_user password : !secret mqtt_passwd 브로커는 라즈베리파이가 있는 ip로 바꿔준다. secret.yaml에 mqtt_user와 mqtt_passwd를 설정해준다. 모스키토 설정하면서 만든 사용자이름과 암호를 사용하면된다. 2. dht11  사용결과 dht11은 너무 오차가 커서 온습도 측정의 의미가 없는 것으로 보인다. bme280으로 교체예정 dht11의 가장 큰 장점은 가격(천원 전후, 알리에서 대량구매하면 몇백원 수준)이지만, 정확도가 매우 떨어진다. 2. dht11 연결   가. 하드웨어연결 이 그림을 참고해서 이놈을 esp8266에 연결한다. nodemcu라면 암-암 점퍼선을 사용하면 편하다(나중에 완성되면 글루건이나 납땜으로 안빠지게 고정해야된다) 그림을 참조해서 vcc는 nodemcu의 3.3v 또는 esp12의 vcc에, gnd는 gnd에, data는 빈 GPIO에 연결한다(글쓴이는 GPIO14(d5) 사용) 그리고 dht11의 data와 vcc 사이를 4.9k 저항으로 연결해줘야 한다. 빵판없으면 좀 귀찮은데 납땜해야할수도 있다. 나. espeasy 설정 espeasy의 device창에서 위 그...

ESP8266, espeasy, HA, MQTT, 센서를 이용하여 실내공기질을 측정하자(1)

실내공기질은 크게 미세먼지(pm10, pm2.5), 이산화탄소농도, 포름알데이드 농도(또는 종합 VOC농도), 총부유세균, 일산화탄소 농도  를 종합하여 평가한다. 여기다 참고를 위해 온도, 습도, 기압을 측정하는 센서를 espeasy를 이용해서 돌리고, mqtt를 이용해 ha로 보내서 iot 사용에 편리를 도모해보고자 한다. 1. espeasy 준비 (다른글 참조) 2. ha 준비 (다른글 참조) 3. 센서 준비 가. 온습도 센서 dht11 이란걸 사용할 예정. 싸기때문에...더 좋은센서도 많으니 좋은걸 찾아보자. 배송비 절약차 국내에서 다른 잡재료 사면서 같이 샀다. 하나 1,100원. 알리에서 잘하면 개당 몇백원으로 살수있다. 나. 미세먼지 센서 pms7003 을 사용할 예정 알리에서 21,500원 다. co2센서 mh-z19 를 사용할 예정. 알리에서 25,000원 라. co센서 보통 mq-7이란걸 사용한다. 그런데 이놈이 보정을 제대로 안해주면 값이 제대로 안나온다고 한다. 그렇다고 보정할 능력이 되는것도 아니고, 자동보정되는센서는 너무비싸다. 일단 보류 마. 기압센서 일단 보류. bme680이나 bmp280을 고려중. 온습도 센서도 같이 패키징되어있다. bme680은 거기다 공기질지수란게 더 포함.되어있기는한데.. 바. 포름알데이드 또는 voc센서 정보수집중. bme680으로 떄울까 싶기도 하고.. 사. 부유세균 정보수집중. 필요한 센서와 그 연결에 필요한 점퍼선 등 잡자재를 준비한다.

ESP8266, espeasy, HA, MQTT를 이용하여 에어컨 자동화하기(1)

이미지
제일 비싸고 편한 방법은 IOT붙은 에어컨을 새로 사면된다. 근데 에어컨을 이렇게 막 바꾸는 집은 잘 없고...10년된 에어컨도 잘돌아가는데 굳이 바꾸기도 뭐하고..수십만원 쓰기엔(iot 붙은 에어컨이 이정도는 더 비싸게 나오는것같다) 아까운 사람들도 많을것이다. 이런사람들을 위해 다른 방법으로 싸게(약 6천원 + 많은 시간) 에어컨 자동화할 수 있는 방법이다. 1. esp8266 준비 이전글 참고 글쓴이는 에어컨 옆에 쉽게 붙이기 위해서 ESP-12S+adapter plate를 사용하였다. 마침 남는 3.3v 어댑터도 하나 있고 해서. 2. esp8266에 올릴 펌웨어 준비 기본적으로는 espeasy 를 사용한다 다만 적외선관련해서 문제가 있는데..espeasy 최근 정식릴리즈(2.0)에는 에어컨관련해서 가장 중요한 irremoteesp8266이라는 라이브러리가 매우 구버전으로 들어가있어서 그대로 사용이 안된다. 그런관계로 espeasy에서 저 라이브러리를 최신버전으로 바꿔주고, 관련된 플러그인을 좀 손봐줘야 한다. 이부분은 나중에 글을 따로 쓰던지 하겠다. 여기 다 쓰기엔 너무 길고 복잡하다. 포인트는 라이브러리 최신버전 업글, lg 에어컨의 경우 타이밍 손봐주기이다(저 라이브라리 그대로 쓰면 신호 받는건 되는데 보내는게 안먹더라). 2018. 7. 17.수정. irremoteesp8266에서 lg 에어컨 타이밍 안받는 부분은 수정되어 그대로 사용가능하다. 이제 espeasy에서 최신라이브러리로 업데이트만 해주면좋겠다. 또한, espeasy 중 _p35_IRTX.ino 플러그인을 조금 수정해서 함수를 하나 추가해줘야 한다. 여기 글쓴이가 작업해놓은 소스가 있으니 필요하면 컴파일해서 사용할 수 있다(github 첨써보는거라 이렇게 하는게 맞는지 모르겠다...혹시 잘아시는분 있으면 정리해주시면 더 좋겠다) 이미 espeasy 다른버전을 올려두었다면 tools-firmware-load에서 올려주면 유...