본문 바로가기

메이커활동/HW&SW

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.. 더보기
아두이노 저가호환품에 사용되는 CH340 드라이버 설치 아두이노를 PC 에 USB 케이블로 연결하고 PC 에서 아두이노 IDE 를 실행시키면 보통 알아서 드라이버가 설치되고 아두이노와 PC는 연결된다. [툴]-[포트]를 선택하면 COM5(Arduino/Genuino Uno) 가 나온다. 그런데 이 부분에서 [툴]-[포트]를 선택해도 아무것도 나오지 않는다면 자신의 아두이노가 저가형 USB 칩인 CH340 계열의 칩을 사용한것이 아닌지 의심을 해야 한다. 그 경우 별도로 CH340 드라이버를 설치한 후 다시 아두이노 IDE 를 실행시키면 이 부분은 해결된다. 구글에서 "ch340 driver windows 10"을 검색한 후 필요한 드라이버를 다운받아서 설치한다. 현재 http://www.wch.cn/download/CH341SER_ZIP.html 에서 다운받.. 더보기
Broken TFT LCD Pictures This is the broken TFT LCD Shield for Arduino. The TFT shield has some problem, it is broken. Order ID : 73010957057680 Tracking Number : 1080719990Store: Cathy's Online Store 더보기
LabVIEW 로 Arduino UNO, DUE 사용하기 - Ethernet Shield 와 UDP 통신 LINX 를 사용하여 LabVIEW 와 Arduino 를 연결하는 것을 해보았다. 여기서는 아두이노와 이더넷실드를 결합한 후 UDP 통신으로 PC 에 일정한 데이터를 보내고, PC 에서 아두이노 쪽으로 일정 데이터를 보내는 작업을 해본다. UDP 혹은 TCP 통신으로 아두이노를 사용하는 것은 일종의 제약을 뛰어넘는 일이다. 이제는 아두이노 혹은 다른 어떤 것이라도 UDP / TCP 통신만 지원된다면 LabVIEW 를 사용하여 제어가 가능하다는 뜻이다. 여기서는 Arduino UNO 뿐만 아니라 Arduino DUE 를 Ethernet Shield 와 결합하여 LabVIEW 와 통신하는 것을 보여준다. 구글 유투브에 몇개의 동영상이 이러한 통신으로 LabVIEW 와 Arduino 간 신호를 전달하는 것을 .. 더보기
LabVIEW 로 Arduino 사용하기 - LINX 로 시리얼통신 기본적으로 아두이노 우노와 아두이노 메가2560 에 대해서 LabVIEW 와 연결해서 사용하기 위해서는 시리얼통신을 사용했다. 몇년전 관련된 글을 쓸 때만 해도 LIFA 라는 도구를 사용해서 LabVIEW 와 Arduino 를 연결해서 사용할 수 있었다. 최근에 다시 LabVIEW 를 돌아볼 일이 있어 LIFA 를 함께 살펴보았다. LINX 라는 새로운 톨이 그 자리를 차지하고 있었고, 생각보다 간편하게 잘 만들어져 있었다. PC 에 LabVIEW 가 설치되어 있다고 가정하면 LINX 를 설치하고 그대로 따라가기만 하면 아두이노에 펌웨어를 넣어주고 기본 예제까지 실행시켜준다. 구글에서 Arduino Labview LINX 를 검색하면 다운받을 수 있는 사이트로 쉽게 연결된다.(사이트링크) 위 링크를 클릭.. 더보기
OpenCV 사용을 위한 Python 개인스터디 03 - 비디오 1. Capture video from camera import numpy as np import cv2 cap = cv2.VideoCapture(0) while(True): # Capture frame-by-frame ret, frame = cap.read() # Our operations on the frame come here gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) # Display the resulting frame cv2.imshow('frame',gray) if cv2.waitKey(1) & 0xFF == ord('q'): break # When everything done, release the capture cap.release() cv2.des.. 더보기
OpenCV 사용을 위한 Python 개인스터디 02 - 이미지, 읽기, 디스플레이, 쓰기 두번째 장에서는 이미지를 다룬다.cv2.imread(), cv2.imshow() , cv2.imwrite() 세 함수를 사용해본다. 1. 이미지 읽기 : cv2.imread() import numpy as npimport cv2 img = cv2.imread('promini.png',0) cv2.imshow('image',img)cv2.waitKey(0)cv2.destroyAllWindows() img = cv2.imread('promini.png',0) : 회색(gray)으로 이미지 읽기img = cv2.imread('promini.png',1) : 원색으로 이미지 읽기 2. 이미지 디스플레이 : cv2.imshow() import numpy as npimport cv2 img = cv2.imread(.. 더보기
OpenCV 사용을 위한 Python 개인스터디 01 - 설치 오픈CV 를 사용해 보려고 Python 을 시작한다. OpenCV 도 Python 도 잘 모른다. 하지만 둘다 그리 어렵지는 않으리라는 생각을 하면서 우선 OpenCV-Python tutorial 의 내용을 따라하기로 한다. 파이썬의 버젼은 2.7 대의 구버젼과 3.0 대의 신버젼이 있다. 신버젼이 오히려 많이 사용되지 않고 있다. 예전 버젼으로 나온 많은 라이브러리가 사용되지 않기 때문이고, 문법적으로 상당한 변화가 있다. 언젠가는 바뀌겠지라고 생각을 하지만 정말 바뀔지는 모르겠다. 굳이 100 원짜리 연필로 가능한 낙서를 10만원짜리 만년필로 대체할 필요는 없고, 2.7 대에서 굳이 큰 문제없이 - 문제가 전혀없는 것은 아니지만 - 사용하는 것을 3.0 대로 바꾸면서 파이썬을 사용하려는 사람이 얼마나.. 더보기