본문 바로가기

아두이노

ESP8266 와 PMS7003 을 사용한 IOT 미세먼지 측정기 ESP8266 와 PMS7003 을 사용한 IOT 미세먼지 측정기 사진에는 개발 중 테스트를 위한 별도의 NodeMCU 가 하나 더 있습니다. PMS7003 이 Fritzing 에 없으므로 10 핀 짜리 커넥터와 만능기판을 사용해서 비슷하게 만들어 사용했다. ESP8266 에서 할 일 1. nodeMCU 를 사용하여 PMS7003 의 먼지데이터를 가져온다.2. nodeMCU 를 사용하여 AP 에 연결한다.(스마트폰으로 nodeMCU 를 AP 에 연결한다.)3. AP 와 연결된 nodeMCU 는 Thingspeak 와 sparkfun 서버에 값을 전송한다.4. Lua 언어를 사용하지 않고 아두이노 IDE 를 사용하여 작업한다.5. PUT/GET 을 사용하여 서버에 값을 전달한다. 세부 작업 내용 ## Ar.. 더보기
PMS7003 센서값을 통계적방법으로 보완하기 PMS7003 사용에 관한 소스를 조금 수정해 보았다. 기본 내용에 수정된 내용은 다음과 같다. 1. 불필요한 데이터 가져오는 부분을 삭제2. 체크섬을 활용, 손상이 의심되는 데이터 제거3. 일정 갯수의 데이터를 이용 통계적 방식으로 mean value 계산 이용 3.1. 10개의 데이터를 읽고 그 중 최대값과 최소값을 제외한 8개의 값으로 평균을 만든다. 수정된 소스는 아래에 붙여둔다. 아두이노 IDE 에서 바로 실행이 가능한 소스이다. /*Tips for Using Plantower PMS7003 air quality sensor to a Particle IoT microcontrollerMade by 2016 winduino http://wemakers.tistory.com */ #include /.. 더보기
아두이노 프로 미니 프로그램 팁 예전에 프로미니를 사두었고, 오늘 처음으로 작동시켜 보았다. 프로미니는 우노와 같은 프로세서를 사용하고 있기에 우노와 거의 틀린 것이 없다. 단, 크기를 줄이기 위해 최소한 작은 부품을 사용하고 USB 관련된 부분을 제거했다. 그래서 프로미니를 사용하기 위해서는 별도로 USB-ISP / TTL Programmer 가 있어야 한다. 우노는 이 부분에 보드에 자체 내장되어 있기 때문에 사용이 편하지만 그만큼 보드의 크기가 증가하는 단점이 있다. 일반적인 개발 단계와 개인의 프로젝트를 위해서는 우노 정도를 사용하는 것이 좋고, 조금 더 크기가 작아져야만 하는 작업을 할때는 프로미니나 나노를 사용하는 것이 좋다. 프로미니가 현재로서는 가장 작고 가장 저렴하다. 지금 가지고 있는 USB-ISP 는 3개가 있으며 .. 더보기
Thingspeak 로 먼지센서 모니터링하기 Thingspeak 로 먼지센서 모니터링하기 기획실장의 글에서 PMS7003 을 사용하여 시리얼통신으로 미세먼지 데이터가 가져오는 것을 확인하였고[PMS7003 테스트 소스코드], 이후에 thingspeak 라는 IOT 서비스를 사용하여 아두이노에서 thingspeak 로 데이터를 업로드하는 것을 확인하였다[Thingspeak 사용 기초]. 여기서는 PMS7003 에서 가져온 데이터를 Thingspeak 에 올리는 작업을 진행한다. 기존 소스코드를 그대로 사용하려 하였으나 메모리 부족현상이 일어나 불필요한 부분과 디버깅에 관련된 부분(시리얼 모니터링부분)을 상당부분 제거하였다. 또한 아두이노 우노와 이더넷 실드는 핀 10,11,12,13 번을 사용하므로 기존 예제에서 소프트웨어 시리얼로 사용했던 10,1.. 더보기
PMS7003 에 대한 자료와 인터넷 IOT 플랫폼인 ThingSpeak 기초 1. 모임2016년 8월 27일, 토요일 10:00 ~ 13:00 까지 바람, David, 케이트 참석으로 모임이 이루어짐키덜트 행사 멘토로 2명이 지원을 간 상황이며 출석을 못한 회원들은 나름의 사정으로 참석을 못하였음. (다음번에는 다 뵐수 있기를 바랍니다. ^^) 2. PMS7003 사용자료기획실장님이 작성해 둔 자료 참고 : 링크1, 링크2 ...PMS7003 은 총 10개의 핀이 있으며 그중 4개(VCC, GND, RX, TX )를 사용하여 시리얼로 데이터를 가져올 수 있다.아두이노 우노에서 소프트웨어 시리얼을 사용하여 PMS7003 과 시리얼통신을 하고 관련 자료를 가져온다. 내용은 다음과 같다.가져오는 데이터 중에 PM1.0, PM2.5, PM10 데이터가 있으며 단위는 ug/m3 이다. 현.. 더보기
thingspeak 사용 기초 IOT 관해서 이미 서비스를 제공하고 있는 thingspeak 를 사용해보고 그 장단점을 분석해보려한다. 우선 thingspeak 에 접속하고 아두이노를 이용해서 사용하는 기본 방법을 따라해 본다. 아두이노에서 thingspeak 라이브러리를 설치한다. 아두이노 IDE >> 스케치 >> 라이브러리 포함하기 >> 라이브러리 관리 >> 검색 : thingspeak 여기서 나오는 라이브러리를 설치한다. 설치가 완료되면 예제에서 thingspeak 관련 자료들을 확인할 수 있다. WriteVoltage 라는 예제를 열어 본 내용이다. /* WriteVoltage Reads an analog voltage from pin 0, and writes it to a channel on ThingSpeak every 2.. 더보기
아두이노 웹서버 예제 분석 아두이노 웹서버 분석 예제입니다. 1. 개요 아두이노와 이더넷실드를 연결해서 A0 부터 A5 까지의 값을 읽어서 클라이언트의 웹브라우저에서 보여줍니다.바꿀 부분은 mac 과 ip 주소입니다. /* Web Server A simple web server that shows the value of the analog input pins. using an Arduino Wiznet Ethernet shield. Circuit: * Ethernet shield attached to pins 10, 11, 12, 13 * Analog inputs attached to pins A0 through A5 (optional) created 18 Dec 2009 by David A. Mellis modified 9 Ap.. 더보기
ADB-02. 센서 선별과정과 서버 세팅 1. DSM-501 관련자료 모음 미세먼지 측정을 위한 센서로 초기에 계획했던 것은 DSM-501 이었습니다. 하지만 DSM-501 을 사용해본 결과 원하는 감도의 측정값이 나오지 않았으며 데이터 시트를 면밀히 검토해 본 결과 본 프로젝트에 사용할 수 없다는 결론이 쉽게 나왔다. 우선 DSM-501 관련 자료와 아두이노 소스는 다음과 같다. DSM-501 데이터시트 (링크)기본 소스 (테스트 및 기본 분석용) 출처 : http://www.elecrow.com/wiki/index.php?title=Dust_Sensor-_DSM501A // Connect the Pin_3 of DSM501A to Arduino 5V// Connect the Pin_5 of DSM501A to Arduino GND// Con.. 더보기
08/13 모임후기 2016년 08월 13일 토요일 모임후기입니다. IOT 서버를 만들기 위해 라즈베리파이를 사용하였으며, 이날 라즈베리파이에 OS 와 서버프로그램을 설치하였습니다. 참석자는 바람, 기획실장, 이람, 케이트, David, 이이오, 6명이고, 이날 라즈베리파이 기초 설정을 마쳤습니다. 아래에 그때 사용했던 라즈베리파이 설정방법을 다시 씁니다. 링크1 : 라즈베리파이 준비물(기획실장) 링크2 :OS, 서버, DB, PHP 설치하기 (기획실장) 링크3 : MySQL + PhpMyAdmin 설치 (이이오) 링크4 : 라즈베리파이 IP 를 고정IP로 변경 (바람) 마지막으로 필요한 사람을 위해 위에 사용한 기본 명령들을 스크립트로 만들어서 올려두었습니다. 텍스트파일을 다운 받은 후 확장자를 sh 로 바꾸어서 실행시키.. 더보기
새로 찾은 센서 PMS7003 기존에 사용하려던 DSM501A 의 감도문제로 새로운 센서를 찾아보았으며 검색 중 PMS7003 이라는 제품을 발견하였다. PMS7003 은 PlantTower 라는 중국계 회사의 먼지센서로 PMS1003, PMS3003, PMS5003, PMS6003 후에 PMS7003 을 발표했다. 크기는 최근 것일수로 작아졌으며 PMS7003 은 48*37*12(mm) 로 가장 작다. 사용에 큰 불편이 없을 것으로 예상되며 구입하여 테스트 해볼 예정이다. 크기도 Wearable 로 사용하기에 그리 크게 부담되지 않을 듯 하다. 사용방법이 기존 센서와 동일한지 여부를 파악해보고 몇번의 Trial & Error 를 거쳐 사용법을 파악하는 것이 우선할 일이다. 중국어로 된 데이터시트 : 더보기
미세먼지에 대한 환경부 자료 http://www.me.go.kr/issue/finedust/ebook.pdf 위 링크를 통해가면 2016년 4월자 환경부에서 소개하는 미세먼지에 대한 내용이 있다. 먼지측정기 제작시 참고할 자료. 먼지의 종류 총먼지 (Total Suspended Particles, TSP) : 입자의 크기 50um 이하미세먼지 (Particulate Matter, PM) : 입자의 크기가 작은 미세먼지PM10 : 입자의 크기 10um 이하PM2.5 : 입자의 크기 2.5um 이하 미세먼지 측정방법 미세먼지 측정은 크게 두가지 방법으로 진행된다. 방사선인 베타선을 미세먼지를 통과할 때 질량이 클수록 많이 흡수되는 성질을 이용한 베타선 흡수법과 미세먼지에 반사된 빛의 산란 정도를 측정하여 미세먼지의 농도를 구하는 간접측.. 더보기
기본 아두이노와 DSM501A 를 사용하는 소스 1. DSM501 데이터시트 2. 기본 소스 분석 출처 : http://www.elecrow.com/wiki/index.php?title=Dust_Sensor-_DSM501A 다음 소스를 분석한다. // Connect the Pin_3 of DSM501A to Arduino 5V// Connect the Pin_5 of DSM501A to Arduino GND// Connect the Pin_2 of DSM501A to Arduino D8// www.elecrow.com#includebyte buff[2];int pin = 8;//DSM501A input D8unsigned long duration;unsigned long starttime;unsigned long endtime;unsigned long.. 더보기
ADB-01. 첫모임 논의 내용 2016년 07월 16일, IOT AntiDustWristBand (가칭) 의 첫번째 모임 요약 I. 일정과 참석자 >> 바람, David, 기획실장 (총3인)>> PM3 구로역 모임, 미팅장소인 공구상가1번지로 이동, PM4.30까지 미팅 후 티타임 후 해산 II. 회의 내용 1. 프로젝트에 대한 내용 소개1) Wearable2) Dust-Monitor System3) IOT 2. 외부 지원사업(K-Maker 프로젝트) 참여에 대해 불필요성1) 참여자 수준이 특정분야를 맡아 진행할 정도가 아님2) 각자의 생활과 직장을 고려할 때 제한된 시간내 프로젝트 마감의 어려움3) 정해진 기한내 프로젝트 결과물에 대한 불확실성 큼4) 외부 사업 참여시 본 프로젝트의 수정, 추가, 변화에 어려움5) 기한과 과정을 내.. 더보기