post index image
로터리 엔코더로 세그먼트 LED 제어하기
Arduino/Sensor

로터리 엔코더를 이용하여 시간 설정하는 인터페이스 만들기 만약 아두이노로 시계를 만든다면, 현재 시간이나 알람 등을 위해 시간 값을 조절하는 인터페이스를 구현해야 합니다. 현재 제 블로그에서 연재중인 Turtle Clock BigFont의 경우 NTP 프로토콜을 이용하여 자동으로 현재 시간을 설정하고 또 알람 기능도 없어서 구현하지 않았지만, 대부분의 시계들은 하나 이상의 버튼 등을 이용하여 이런 기능을 제공하고 있습니다. 이번 연재에서는 로터리 엔코더 하나를 이용하여 비슷한 기능을 만들어 보겠습니다. 코멘트로 요청하신 분이 있어 작성했는데, 다른 일들로 포스팅이 많이 늦었네요! 아두이노에 LED 세그먼트 연결하기 여기서 사용할 보드는 아두이노 Uno이고, 시간 표시를 위한 디스플레이 장치로 LED 세그..

2019. 3. 20. 23:00

post index image
WIFI로 제어하는 탁상시계 만들기 #8 3D 프린팅 및 조립
Project/Turtle Clock

3D 프린팅 출력 및 조립하여 완성하기 오늘은 3D 프린터를 이용하여 출력한 부품들과 앞서 소개한 부품들을 함께 조립하여 시계를 완성하겠습니다. 이 글을 통해 시계 자체는 모두 완성되고 다음 글에서 무선 인터넷을 이용한 사용자 인터페이스를 구성하면 이번 프로젝트는 모두 마무리 됩니다. 출력 과정은 생략하고 출력물부터 소개할 것이고, 별다른 설명은 필요 없어서 사진 위주의 소개글이 될 것입니다. 3D 프린터로 출력한 부품 출력물은 다섯 개입니다. 케이스 좌, 우 그리고 엔코더용 노브(knob)와 네오픽셀 LED용 디퓨저(diffuser), 마지막으로 시계 뒤 커버(cover)입니다. 제가 가진 3D 프린터의 출력 범위가 125mm 밖에 안돼서 케이스를 둘로 나눌 수 밖에 없었습니다. 세그먼트 LED의 폭이..

2019. 2. 26. 06:59

post index image
WIFI로 제어하는 탁상시계 만들기 #7 Rotary Encoder로 LED 램프 제어
Project/Turtle Clock

Rotary Encoder로 LED Lamp 제어하기 Turtle Clock BigFont에 사용할 부품 중 마지막으로 로터리 엔코더에 대해 소개합니다. 네오픽셀(RGBW)의 백색(White) LED로 간이 램프를 만들고 on/off와 밝기 조절을 이 엔코더로 제어하겠습니다. Rotary Encoder + Extras 이번에 사용할 엔코더입니다. Adafruit에서 다른 물품 주문할 때 같이 구입했는데 knob까지 포함된 구성입니다. 전에 연재했던 터틀 테이블에서 사용한 엔코더는 풀업(pull-up) 저항 및 입출력 포트를 적용한 브레이크아웃 보드 형태였지만, 이번 엔코더는 부품만 있기 때문에 사용하기는 좀 불편합니다. 엔코더의 입출력 포트는 위와 같습니다. 사진에서 위쪽 3개의 핀이 엔코더, 아래쪽 2..

2019. 2. 15. 15:59

post index image
WIFI로 제어하는 탁상시계 만들기 #6 NEOPIXEL RGB AND White LED
Project/Turtle Clock

NEOPIXEL RGBW LED Bar 연결하기 Turtle Clock BigFont에 대한 여섯 번째 연재입니다. 이번 글에서는 아직 설명하지 않은 두 개의 부품중 하나인 네오픽셀 RGBW 색상 LED에 대해 소개합니다. 원래 필요한 LED 색상은 백색(White)입니다. 밤중에, 아이가 자고 있는 침실에 들어갈 때나 아픈 아이 챙기거나 할 때, 주로 스마트폰의 손전등 기능을 사용합니다. 스탠드가 있긴 한데 넘어질 위험에 치워버린 상태입니다. 그래서 생각한 방법이, 이번에 만들 시계에 LED를 넣어 간이 스탠드로 사용하는 것입니다. 8 Bit SK6812 5050 Stick RGBW LED Natural 4500K with Integrated Drivers RGBW White 이번 시계에 사용할 LED..

2019. 1. 30. 14:11

post index image
WIFI로 제어하는 탁상시계 만들기 #5 NTP 기능을 이용한 인터넷 시계
Project/Turtle Clock

NTP 기능을 이용하여 시간 정보를 관리하고 출력하기 Turtle Clock BigFont에 대한 다섯 번째 연재입니다. 이제까지는 프로젝트에 사용할 부품들에 대해 소개하였는데, 나머지 두 개의 부품에 대한 연재에 앞서 우선 시계 표현을 위한 시간 정보를 구축하겠습니다. 아두이노로 시계를 만든다면 보통 외부 RTC 모듈을 사용하겠지만, 아두이노(Arduino)나 NodeMCU 보드는 부팅과 동시에 카운팅되는 자체 시계를 가지고 있습니다. 물론, 시스템이 재부팅되면 시간을 다시 세팅해야 되고 오랜 시간이 지나면 정확성이 떨어질 수 있지만, NodeMCU 보드는 와이파이를 통한 인터넷 접속이 가능하므로 네트워크 타임 프로토콜(Network Time Protocol, NTP)을 이용하여 이러한 단점을 커버할 ..

2019. 1. 22. 17:30

post index image
WIFI로 제어하는 탁상시계 만들기 #4 라이트(Light) 센서
Project/Turtle Clock

광(Light)센서를 이용하여 디스플레이 밝기 조절하기 연재 네 번째 글입니다. 이번 글에서는 아날로그 방식의 광량 측정 센서에 대해 소개합니다. 이전 글에서 언급했듯이 이 시계를 사용할 곳은 침실이기 때문에, 디스플레이로 사용하는 세그먼트 LED의 밝기가 수면을 방해할 수 있습니다. 이를 해결하기 위해서 LED를 백라이트로 사용하는 시계들에 많이 사용하는 기능처럼, 주위가 어두워지면 밝기를 낮추도록 광센서를 이용하여 제어하겠습니다. 1. DFRobot Analog Ambient Light Sensor DFRobot사에서 나오는 아날로그 방식의 광센서입니다. 박스 없이 비닐 포장되어 있습니다. 패키지도 간단합니다. 케이블 및 보드가 들어 있습니다. 이 센서는 이름처럼 아두이노의 아날로그 포트에 연결하여 ..

2019. 1. 17. 15:28