아두이노 코딩을 하려면 Arduino IDE (integrated development environment, 통합개발환경)을 설치해야 합니다. 간편하게 설치할 수 있으며 윈도우, 맥OS 등 대부분의 운영체제에서 실행이 됩니다. 이 IDE를 통해 코드를 만들고 프로그램을 아두이노 보드에 업로드 할 수 있습니다. 하지만, 웹에디터를 이용하면 이 IDE 조차 설치하지 않고 프로그램을 아두이노에 업로드할 수 있습니다. 웹에디터를 이용하면 작성한 프로그램이 웹에 저장돼 있어 다른 컴퓨터에서도 그대로 사용 할 수 있습니다. 모바일로도 접속이 됩니다. (모바일에서는 아직 컴파일과 업로드는 안되며, 코드 작성/수정은 가능합니다.) 아두이노 웹 에디터 사용하기 우선 Arduino Plugin을 다운받아야 합니다. 이 ..
LED 중에는 3가지 색을 낼 수 있는 제품이 있습니다. 다리가 4개이기 때문에 '4 leg LED', '4 pin LED', 또는 낼 수 있는 색깔이 빨강(Red), 초록(Green), 파랑(Blue)이라 'RGB LED'라고도 부릅니다. RGB LEDRGB 가산 혼합 RGB LED를 사용하면 3가지 색만 낼 수 있는 것이 아니라 색을 조합해서 거의 모든 색을 낼 수 있습니다. 2개 또는 3개의 색이 동시에 켜져 있지만 우리 눈은 한 가지 색으로 인지합니다. 만약 빨강과 초록이 켜져 있다면 노란색으로 보입니다. 물감은 여러 가지 색을 섞을수록 어두워지다 결국 검은색이 되지만, 이 LED 빛은 모을수록 밝아지며 3개를 모두 모으면 흰색이 됩니다. 물감처럼 섞을수록 어두워지는 것을 'RGB 감산 혼합'..
아두이노 회로에 LED를 사용하려면 그에 맞는 저항을 같이 사용해야 합니다. 만약 너무 높은 저항을 쓰면 빛이 너무 약하거나 아예 안 켜질 수도 있습니다. 너무 낮은 저항을 쓰면 LED에 과전류가 흘러서 타버릴 수도 있습니다. LED, Anode와 Cathode LED 과전류 방지 저항 계산하기 LED를 사용할 때 가장 먼저 주의해야 할 점은 극성입니다. 2개의 다리 중 긴 쪽이 Anode(+) 쪽입니다. 다리가 짧은 쪽이 Cathode(-)입니다. 아두이노와 사용할 때는 다리가 긴 쪽을 전원(Vcc)이나 출력핀에 연결합니다. 다른 다리는 GND에 연결합니다. LED를 사용할 때 극성을 신경 쓰는 것 만큼 중요한 것이 적절한 전류를 흘려주는 것입니다. 전류를 제어하는 가장 쉬운 방법은 LED와 직렬로..
스위치는 평소에는 전기를 흐르지 않게 하다가 눌렀을 때 회로에 전기가 통하게 하는 역할을 합니다. 누르면 회로가 닫혀 전기가 흐르고 제품을 동작 시킵니다. 가끔 눌렀을 때 고정(Hold)되어 손을 떼도 회로에 전기가 계속 흐르는 스위치도 있습니다. 하지만 가장 많이 쓰이는 버튼 스위치는 택트 스위치입니다. 버튼 스위치 텍트 스위치(Tactile Switch) Tactile Switch (Source: https://en.wikipedia.org/wiki/Switch#/media/File:Tactile_switches.jpg) 사용이 간단하고 가격이 매우 저렴해서 아두이노 회로에 많이 사용됩니다. 사용할 제품은 아래 그림과 같이 다리가 네 개 달린 제품입니다. 브레드 보드에 사용된 모습 택트 스위치는 브레..
릴레이를 사용하면 아두이노로 높은 전압의 가전제품을 켜고 끌 수 있습니다. 그 말은 집에 있는 전등, 히터, 선풍기 같은 아날로그 스위치를 가진 거의 모든 가전제품에 사용 가능하단 뜻입니다. 이런 제품들은 220V 전원을 사용합니다. 아두이노로 직접 이 전압을 제어할 수 없습니다. 따라서 아두이노의 출력 5V로 동작할 수 있는 전자식 스위치인 릴레이가 필요합니다. 릴레이는 어떤 조건이 되면 동작하게 사용됩니다. 예를 들면 '온도가 20도 이하이면 릴레이를 동작해라' 같은 동작입니다. 거의 모든 센서와 조합해서 사용할 수 있습니다. 스마트 공기청정기는 미세먼지 센서와 릴레이, 스마트 히터는 온도센서와 릴레이, 스마트 건조기는 습도센서와 릴레이와 같이 다양한 조합이 가능합니다. 아두이노가 스마트폰과 연결돼 ..
BOM 만드는 법을 알아보겠습니다. BOM(Bill of material)은 제품을 구성하는 물품 리스트와 각 물품의 정보입니다. 한글로 하면 자재명세서나 부품목록 등으로 부를 수 있습니다. 아두이노로 어떤 제품을 만든다고 가정해보겠습니다. 온/습도 정보를 LCD에 표시하는 프로젝트로 하겠습니다. 우선 코드를 짜고 회로도를 만들었습니다. 그 다음은 실제 회로를 만들어야 합니다. 아두이노 부품이 종류별로 충분히 있다면 그냥 가져다 사용하면 되지만 그렇지 않다면 사야 합니다. BOM이 있다면 리스트에 맞춰 살 수 있습니다. 제품을 다 만들었더라도 이후 똑같은 제품을 만들거나 비슷한 제품 계획 시 참고하기 위해서라도 BOM을 만들어 두면 좋습니다. Fritzing으로 BOM 만들기회로도를 작성할 때 사용했..
아두이노의 가장 큰 장점이라면 풍부한 라이브러리(Library) 입니다. 아두이노 스케치 프로그램 자체에도 많은 라이브러리가 있을 뿐만 아니라 인터넷에도 수 많은 라이브러리가 있습니다. 좀 더 편하게 좀 더 다양하게 사용하기 위해 새로운 라이브러리가 계속 만들어지고 있습니다. 라이브러리란? 온도센서, LCD 디스플레이, 서보 모터 등을 사용할 때 라이브러리를 이용했습니다. LCD 디스플레이를 사용할 때 라이브러리 덕분에 코드에 쓴 글자가 LCD로 출력될 수 있었습니다. 만약 라이브러리가 없었다면 LCD를 제어해서 글자를 보시하기가 정말 어려울 것입니다. 이렇게 센서, 디스플레이, 모듈 등을 아두이노와 간편하게 연결할 수 있도록 이미 만들어져 있는 코드가 라이브러리입니다. 내장된 라이브러리 종류도 많지만 ..
어떤 목표를 가지고 코딩을 하는데 자꾸 다른 것이 하고 싶어진다. 이미 결정된 주제의 코드를 완성하는 것은 재미가 없고 새로운 걸 해보고 싶다. 왠지 다른 기능들이 필요하지 않을까하는 생각이 들고 새로운 것을 추가하고 싶다. 그럴 때는 어떻게 할까요? “너 그거 필요없을꺼야.” YAGNI (You aren't gonna need it) 원래 목표에서 벗어난 것은 필요하지 않은 것일 가능성이 높습니다. 특히나 팀으로 일할 경우 갑자기 다른 것을 추가해 버리면 전체 프로젝트에 영향을 줄 수 있습니다. ‘YAGNI’는 프로그래밍 원칙 중 하나입니다. 프로그래머는 반드시 필요하다고 결론 나지 않은 기능은 도중에 추가해서는 안된다는 원칙입니다. 절대 독단적으로 예측해서 어떤 기능을 추가해서는 안됩니..
릴레이는 아주 다양한 곳에 사용 가능합니다. 릴레이를 사용하면 아두이노로 더 높은 전압의 일반 전자제품을 켜고 끌 수 있습니다. 예를 들면 선풍기나 히터 같은 제품을 아두이노로 켜고 끌 수 있습니다. 저희는 직접 전자제품을 켤 때 손으로 스위치를 누릅니다. 아두이노 회로에서 이 스위치를 누르는 역할을 하는 것이 릴레이라 보시면 됩니다. 이번 예제에서는 스마트 건조기를 만든다고 가정해 보겠습니다. 습도에 따라 릴레이가 동작하는 로직입니다. 습도만 가지고 동작하면 재미없으니 아래와 같이 조금 복잡하게 해보겠습니다.1) 물건이 들어오면 릴레이 동작 (초음파센서 10cm 거리 이하에 감지되면 동작)2) 습도가 높으면(50% 이상) 릴레이 계속 동작, 습도가 낮으면(50% 이하) 5초만 동작하고 릴레이 끔 초음파..
서보모터 제어는 아두이노를 배울 때 가장 먼저 접하는 예제이기도 합니다. 아마 예제를 하거나 동작로직을 점검 할 때 아두이노의 5V 전원을 사용해 모터를 작동시킨 경험이 있을 겁니다. 저도 이전 글에서 아두이노 5V 전원으로 서보모터를 동작하는 예제를 했습니다.[아두이노] - 아두이노: 버튼 스위치와 초음파센서로 동작하는 서보모터 하지만 실제 서보모터를 이용해 실제 기계를 움직이려면 아두이노의 전원으로는 무리가 있습니다. 모터가 힘(토크)을 내기 위해서는 전류가 많이 필요한데 아두이노 전원으로는 많은 전류를 감당할 수 없습니다. 심할 경우 아두이노나 다른 부품이 고장날수도 있습니다. 이런 상황을 해결할 수 있도록 외부전원(배터리)을 이용한 서보모터 동작 예제를 해보겠습니다. 외부전원(배터리)로 동작하는 ..
- Total
- Today
- Yesterday
- 서보모터
- DHT22
- 4 원칙
- relay
- Renewable
- Fading LED
- Solar Sharing
- 시리얼 모니터
- 애자일
- 온도
- Stepper Motor
- LED
- 초음파센서
- solar
- dc 모터
- 아두이노
- 릴레이
- 습도
- Arduino
- Step Motor
- 스크럼
- Scrum
- DC Motor
- 코딩
- 태양광
- Potentiometer
- 태양광 공유
- dht
- agile
- Solar Panel
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |