본문 바로가기

Hardware112

ESP01 모듈 활용, 핸드폰으로 켜고 끄는 IoT 전등 만들기 지난 포스팅에서는 간단하게 ESP01 모듈에 Blynk를 이용해서 모듈의 내장 LED를 핸드폰으로 껐다가 켜는 예제를 한번 따라 해 봤었습니다. 원격으로 스위치 제어를 하기 위한 로직을 구현해 봤으니 이번에는 실제로 실생활에서 사용할 수 있는 IoT 스위치를 만들어 보려고 합니다. 알리를 검색하다보니 ESP01 모듈로 사용할 수 있는 릴레이 제품을 발견할 수 있었습니다. ESP01 모둘의 GPIO 핀의 신호를 받아서 릴레이를 컨트롤할 수 있도록 모듈 형태로 만들어진 제품입니다. "ESP01 Relay module"이라고 검색하면 되고 가격도 1달러가 되지 않습니다. ESP01 모듈을 포함해도 3달러가 넘지 않으니 부담 없이 한번 테스트해볼 수 있습니다. 릴레이 스위치를 이용해서 제어를 해볼 제품은 전등으.. 2020. 8. 27.
ESP8266-01 모듈로 Blynk 시작하기 - 원격으로 LED 켜고 끄기 Blynk라는 솔루션을 아시나요? 엄청 편리하고 디자인도 이쁘고 거기다가 무료(일부만)라서 많이들 사용하실텐데요. 아두이노, ESP8266 등 컨트롤러를 컴퓨터와 유선으로 혹은 BT, WIFI를 이용해서 무선으로도 연결해서 IOT 프로젝트를 구현해볼 수 있는 그런 서비스입니다. Blynk Join the most popular IoT platform to connect your devices to the cloud, design apps to control them, and manage your deployed products at scale blynk.io 오픈소스 기반의 라이브러리와 다양한 예제가 제공되고 핸드폰용 어플도 매우 직관적으로 사용할 수 있도록 잘 만들어져 있어서 처음 시작해도 손가락 몇번.. 2020. 8. 18.
DC Step-up 모듈 MT3608 직류 승압 모듈 MT3608입니다. 저전압의 전원 소스를 사용해야 할 때 필요한 작동 전압으로 승압시켜야 할 때 사용할 수 있는 모듈입니다. 저는 아두이노 보드를 사용하는데 3.7V의 리튬폴리머 배터리를 사용하기 위해서 사용하고 있습니다. 구성은 아주 단순합니다. 입력 전원 +, - 와 승압된 출력 전원 +, - 단자가 각각 있어서 입력된 전압을 설정값에 맞게 승압해서 내보내 주는 그런 역할을 하는 모듈입니다. 중요한 스펙 몇 가지만 집고 넘어가겠습니다. 칩셋: MT3608 입력 전압: 2 ~ 24 V 출력 전압: 5 ~ 28 V 최대 전류: 2A 저는 5V의 아두이노 보드를 사용하기 위해서 출력을 5V로 설정하였습니다. 전원 공급장치에서 약 3V정도의 전압을 걸어준 상태에서 모듈 중간 부분의 가변저항을.. 2020. 8. 17.
ESP3D 설정 및 사용법 지난 포스팅(https://kwonkyo.tistory.com/376)에서 ESP01 모듈을 이용해서 ESP3D를 업로드하고 Trigorilla 보드에 연결하는 방법에 대해서 설명을 했었는데요. 이번에는 설치된 ESP3D를 사용하는 방법을 간단히 알아보겠습니다. 설치가 잘 되어 있다면 Anycubic Delta Kossel 프린터기 기준으로, 프린터기를 켜면 아래 사진과 같이 설정 시 지정한 SSID로 연결을 시도하고 연결이 완료되면 할당받은 아이피 주소가 화면 하단에 나타나게 됩니다. 이제 핸드폰이나 PC에서 아이피주소를 통해서 ESP3D에 접속해 줍니다. ESP3D for Marlin ESP3D의 웹서버 GUI 화면입니다. 우측 상단의 메뉴에서 "Preferences" 를 눌러보면 Dashboard .. 2020. 8. 12.
PlatformIO.ini 설정 모음 Platformio에서 보드별로 "platformio.ini"를 설정하는 방법을 모아둔 페이지 입니다. 공통 [common] lib_deps = [의존 라이브러리명] lib_dir = [사용자 라이브러리 폴더명] lib_deps = ${common.lib_deps} 아두이노 우노 [env:uno] platform = atmelavr framework = arduino board = uno 아두이노 나노 [env:nano] platform = atmelavr framework = arduino board = nanoatmega328 ESP8266 [env:esp8266] platform = espressif8266 board = esp01_1m framework = arduino 2020. 8. 8.
리튬폴리머 배터리 + 충방전 및 배터리 보호 모듈(TP4056, DW01A) 아두이노로 나만의 프로젝트를 완성하고 나면 활용까지 해봐야 할 텐데, 대부분의 개발단계에서 사용되는 전원은 PC의 USB인 경우가 많습니다. 그런데 완성된 아두이노 프로젝트를 사용하기 위해서 매번 PC를 켜는 건 배보다 배꼽이 더 커지는 상황이고 야외에서 사용해야 하거나 할 때는 PC를 가지고 다닐 수도 없기 때문에 다른 방법이 필요합니다. 그래서 오늘은 주변 전자기기에서 많이 사용하는 리튬폴리머 배터리와 배터리 충전 모듈에 대한 이야기입니다. 리튬폴리머 배터리 배터리는 종류가 참 많습니다. 충전을 할 수 있는 것도 있고 충전은 안되지만 마트에서 쉽게 살 수 있는 알카라인 건전지도 있고 전압도 손가락 만한 AAA, AA 규격의 건전지는 1.5V이고, 네모난 9V의 건전지도 있습니다. 이런 건전지들 중에서.. 2020. 8. 5.
Anycubic Delta Kossel - WIFI 모듈 설치 및 무선 시리얼 통신 (ESP01+ESP3D) 세상에는 정말 대단하신 분들이 많습니다. 3D 프린터 처음 사서 조립하면서도 어떻게 이런 생각을... 그리고 어떻게 이런 걸 오픈소스로... 그리고 Anycubic은 이걸 이렇게 쉽게 조립할 수 있게 키트화 할 생각을... 등등으로 끝없는 감탄을 했던 게 얼마 전인 것 같은데 여기에 이제 WIFI모듈을 연결해서 무선으로 접속할 수 있도록 할 생각을 하고 있다니 다시 한번 감탄을 하게 됩니다. 이번 포스팅은 저렴한 ESP01 모듈에 ESP3D라는 솔루션을 사용하여 기존에 사용하고 있던 Anycubic Delta Kossel 프린터를 무선으로 접속해서 컨트롤할 수 있도록 업그레이드하는 과정을 다루고자 합니다. 준비물 먼저 필요한 준비물입니다. 당연히 가장 중요한 ESP01 모듈(1M 메모리짜리) 필요하고 그.. 2020. 7. 26.
VS Code로 아두이노 업로드 - PlatformIO IDE 저는 Arduino IDE의 대안으로 Visual Studio(VS)에 Visual Micro라는 확장 프로그램을 깔아서 사용하고 있습니다. VS가 매우 무거운 프로그램이긴 하지만 그만큼 생산성을 높여주는 유용한 프로그램입니다. 그런데 Visual Studio Code(VS Code)에서도 아두이노를 코딩하고 업로드할 수 있는 "PlatformIO IDE(PIO)"라는 새로운 옵션을 알게 되어서 소개합니다. VS Code는 오픈소스의 텍스트 에디터라고 할 수 있는데요. 오픈소스답게 방대하고 막강한 확장 프로그램이 특징입니다. 그래서 다양한 플랫폼에서 사용 가능하고 다양한 코드 개발을 지원하기 때문에 단기간에 점유율이 급상승한 인기 프로그램입니다. 다양한 익스텐션을 활용하면 Visual Studio 못지않.. 2020. 7. 24.
PlatformIO IDE - UnicodeDecodeError 해결하기 Vsivual Studio Code + PlatformIO(PIO) 환경에서 아두이노 프로젝트 컴파일 할 때, 코드에 주석을 한글로 달아둔 경우 드물게 다음과 같은 에러가 발생하는 경우가 있습니다. "UnicodeDecodeError" 말 그대로 유니코드로 해석이 안됩니다 라는건데요. 뒤에 'cp949' 라는 부분은 윈도우에서 사용하는 인코딩의 한 종류로, 949번 코드페이지, 그러니까 한글 인코딩을 얘기하는 겁니다. cp949 말고 다른 메시지가 나올 수도 있는것 같습니다. 이 문제의 원인은, PIO가 파이썬3 기반으로 만들어져 있는데 파이썬에서 유니코드 인코딩의 텍스트를 읽어오는데 어떤 이슈가 있는것 같습니다. 대충 찾아본 바에 따르면 PIO차기 버전에서는 내장 파이썬 엔진 사용해서 이런 문제가 해결.. 2020. 7. 23.
ESP-01 모듈용 아두이노 쉴드 제작 ESP-01 와이파이 모듈을 조금 공부해 보고 나니 이것저것 해보고 싶은 것들도 있고 테스트해보고 싶은 것도 하나둘 생기고 하니 ESP-01 모듈용 어댑터를 구매해야 하나라는 고민이 들었습니다. ESP-01 모듈을 아두이노에 연결해서 사용했었는데 회로가 복잡한 건 아니지만 필요할 때마다 회로 꾸며서 사용하기도 귀찮고 그렇다고 하나뿐인 빵판을 ESP모듈용으로 꾸며둘 수도 없어서 어댑터를 알아봤는데, 단순히 USB에 연결만 해주는 브릿지가 5천원이나 하고 펌웨어 올리고 확인하는 것 외에는 GPIO 핀을 테스트하기도 힘들고 해서 전혀 가성비가 없는 것 같았습니다. 그냥 아두이노 쉴드 형태로 만들어두고 필요할 때마다 아두이노에 꽂아서 쓰면 좋겠다 싶어서 쉴드를 만들어 보기로 했습니다. ESP-01 모듈로 공부 .. 2020. 6. 14.
와이파이 모듈 ESP8266-01의 모든것 ESP8266은 Espressif systems라는 중국 업체가 설계한 마이크로 컨트롤러로 2014년에 출시된 칩입니다. ESP8266은 단순히 와이파이 모듈의 역할뿐만 아니라 아두이노와 같이 자체적으로 프로그램을 구동할 수 있는 그런 컨트롤러입니다. ESP8266은 마이크로 칩의 이름이지만 인터넷 상에서는 많은 다른 부품들이 그러하듯 모듈화 된 보드의 이름으로 통용되고 있습니다. ESP8266이라고 하면 원래는 위 사진에서 보듯 손톱보다 작은 저 칩을 얘기하는 겁니다. 그런데 저같이 아두이노를 취미로 하는 분들은 인터넷으로 쉽게 접하기를 아래와 같이 보드에 조립된 모듈을 ESP8266라고 알고 있는데요. 사실은 이건 ESP8266 칩을 기반으로 사용하기 쉽도록 만든 여러 가지 형태의 모듈 중에 하나입니.. 2020. 6. 12.
아두이노 + 블루투스 모듈 (HC05, HC06) 기본 사용법 2020-11-17 update log: 결선도 오류 수정 블루투스모듈 HC05를 아두이노에서 사용하는 방법입니다. 준비물 아두이노 우노 블루투스 모듈 HC-05(ZG-B23090W) 점프케이블 저항 1kΩ, 2kΩ HC-05 아두이노 실습용으로 가장 많이사용하는 블루투스 모듈로는 HC05, HC06 두가지가 있는데 이 두가지 모듈의 차이점에 대해서 설명한 자료들은 많기 때문에 생략하고 제가 가지고 있는 HC05 모듈에 대해서 간략히 정리합니다. 블루투스는 마스터기기와 슬레이브기기가 서로 쌍으로 연결이되어 통신을하도록 되어 있는데 쉽게 생각해서 스마트폰으로 음악을 들을때 핸드폰이 마스터기기가 되고 블루투스 이어폰이 슬레이브기기가 되는식입니다. HC05는 마스터와 슬레이브 역할을 모두 할수 있는 모듈입니다.. 2020. 5. 22.
아두이노, 미세먼지 센서 + Time Timer 하나로 합치기 도입 이번 포스팅은 Nextion LCD에서 여러개의 페이지를 만들고 선택에 따라서 각 페이지별로 독립된 기능이 실행되도록 아두이노와 연계하는 방법입니다. 그래서 Nextion에서 선택하는 메뉴에 따라 아두이노와 Nextion이 상호적으로 작동을하도록 해서 여러가지 기능을 할 수 있는 복합 디바이스를 만드는 그런 방법 되겠습니다. 말은 거창했지만 간단히 얘기해서, 이전에 소개했던 아래 2개의 포스팅을 하나로 합쳐보는 시간이 되겠습니다. 첫번째 기능은 Nextion에서 동작하는 타이머 기능입니다. Nextion 단독으로만 구현된 기능이며 시간을 설정하면 그 시간동안 남은 시간을 시각적으로 보여주고 간단한 기능을 수행합니다. Nextion LCD만으로 Time Timer MOD(타이머) 만들기 이번 포스팅은.. 2020. 5. 6.
아두이노 + 자외선(UV) 센서 모듈 사용법 아두이노를 이용해서 자외선 센서 모듈을 사용하는 방법과 자외선을 측정해본 결과입니다. 준비물 아두이노(나노를 사용했어요.) 자외선 센서 모듈 점프 케이블 자외선 센서 약 200~370nm 파장 범위의 빛의 강도를 측정하는 아날로그 센서입니다. 자외선의 강도를 출력 전압으로 읽어올 수 있으며 출력전압이 자외선 지수에 맞도록 캘리브레이션이 되어 있어서 출력전압에 10을 곱해주면 그 값이 자외선지수가 된다고 합니다. 사용도 간편하고 반응 속도도 빠르며 전력소모도 적은 편리한 센서 모듈입니다. 사양 (Specification) 작동 전압 : DC 3.3V ~ 5V 출력 전압 : DC 0~1V 시험 정확도 : ±1UV INDEX 전류 : 0.06mA,최대 0.1mA 응답 파장 : 200nm~370nm 응답 시간 .. 2020. 5. 2.
Anycubic Kossel mini - Hardware Spec. 3D프린터 Kossel mini의 스펙관련 자료들의 모음 Mainboard (Trigorilla Ramps 1.4 Arduino Mega 2560 호환) 주요스펙 Main Control Chip: ATMEGA256016AU USB to UART bridge: CP2101 Input Power: 10V ~ 30V Standby Current: 35mA±5mA Stepper Motor Drivers: 5 channel Max Hot bed Output Control: 1 channel Heated output control: 2 channel under-current output control: 3 channel Dimensions: 125mm x 82mm Stepper Motor 42HD6021-08 Mo.. 2020. 4. 1.