본문 바로가기

아두이노로 장난하기

아두이노로 사람의 움직임을 감지히기 안녕하세요 고군입니다~이번 시간에는 인체감지센서(PIR Sensor)에 대하여 알아 보도록 하겠습니다. 아파트 현관이나 빌딩의 비상계단을 지날 때 스위치를 작동하지 않았는데도 전등이 자동으로 켜지는 것을 보신적이 있을 것입니다. 이때 사용되는 센서로 아두이노를 사용하여 간단하게 동작 시켜보겠습니다. ■ 인체감지센서(PIR센서)란 PIR Sensor 의 정의 PIR Sensor 는 적외선을 받아들이는 sensor이라 할 수 있습니다. 국내에서는 PIR Sensor를 인체감지 Sensor 라 하는데 이것은 잘못된 표현입니다 보다 정확히 말하면 일정한 적외선을 띤 물체가 움직이는 것을 감지하는 Sensor가 정확한 표현이고 외국에서는 Moving IR Detector라 표현하기도 합니다. PIR Sensor(.. 더보기
아두이노로 구부러짐 측정하기 안녕하세요 고군입니다~이번 시간에는 휨 센서(Flex Sensor)에 대하여 알아보고 아두이노에 연결하여 동작을 시켜보겠습니다. 모양은 위 그림과 같이 길쭉한 형태로 생겼고 얇은 필름으로 덮여 있습니다. 이름 처럼 휘어지면서 구부러짐 정도에 따라 저항값이 바뀌게 됩니다. 휨 센서는 센서 본체를 구부리면 저항값이 변하는 센서입니다. 똑바로 펴진 상태에서의 저항값은 약 10kΩ으로, 구부리면 천천히 저항값이 증가하여 90도일 때 약 30~40kΩ이 됩니다(곡률 반지름에 따라서도 360도까지 구부릴 수 있습니다). 인쇄 면을 바깥쪽으로 해서 구부리면 저항값이 증가하지만, 인쇄 면을 안쪽으로 구부리면 저항값이 점점 줄어들다가 변화를 멈춥니다. 두 개의 휨 센서를 사용해 양쪽 방향의 구부러진 정도를 검출할 수 있.. 더보기
아두이노로 압력을 측정하기 FSR(Force Sensing Resister)은 고분자후막(PTF)장치의 하나입니다. 압력을 감지하는 면에 가해지는 압력에 반비례해서 전기 저항이 감소하는 특성이 있고, 이것을 센서 입력으로 받아서 입력을 측정할 수 있습니다. 필름 상태로 된 얇고 가벼운 센서로, 아주 약한 압력도 감지할 수 있습니다. 또 어느 정도 구부러지는 성질이 있어 곡면에도 접착할 수 있기 때문에 버튼으로 사용되고 있습니다. 보통 스위치를 이용하는 버튼에는 ON/OFF 두 단계의 정보밖에 얻을 수 없지만, FSR을 이용하는 버튼에서는 버튼을 누르는 강도에 따른 정보까지 얻을 수 있는 것이 특징입니다. 정확하게 측정하기 위해서는 압력을 감지하는 면을 균일하게 눌러야 합니다. 누르는 범위가 감지하는 면보다 넓으면, 면의 크기보다 .. 더보기
아두이노로 거리(초음파 센서)를 측정하기 초음파 센서는 약 20kHz이상의 높음 주파수의 음파가 물체에 부딪힌 다음 반사파가 되어 돌아오는 시간을 측정하여 물체까지의 거리를 계산합니다. ▶초음파센서 원리 초음파 센서에는 4개의 핀이 있는데 왼쪽부터 VCC, Trig, Echo, GND가 있습니다. Trig는 VCC에 신호가 들어오면 초음파을 발신합니다. 발신된 초음파가 장애물이나 벽에 부딪혀 다시 돌아오게 됩니다. 이 신호를 Echo가 받아들입니다. Trig를 통해 초음파는 340m/s의 속도로 발신됩니다. triger 핀에 10us 정도의 High 신호를 주면 초음파센서는 40khz 펄스를 자동적으로 8번을 발생시킵니다. 펄스를 발생시킨 직후에 echo 핀은 high 되고 반사된 초음파가 감지 되었을때 echo 핀이 low 가 됩니다. 이 e.. 더보기
아두이노로 온도(LM35D)를 측정하기 아두이노 우노로 온도 측정 하기 LM35DZ는 섭씨(℃)에 비례해 전압을 측정하는 센서로, 센서의 접압을 읽어 들여서 온도를 측정할 수 있습니다. 온도의 계수는 10.0mV/℃이므로, 0℃라면 0V, 20℃라면 200mV가 됩니다. 아두이노 보드의 아날로그 입력은 0~5V까지의 전압을 1024단계로 읽어 들이므로, 읽어 들인 값(0~1023)을 온도로 쓰면 됩니다. 0~100℃까지를 약 205단계로 측정하므로 기온의 변화 들을 측정하는 것과 같은 용도라며 층분한 정밀도를 얻을 수 있습니다. 이번 예제는 온도 센서의 값을 읽어 들여, 섭씨로 변환하는 것을 LCD에 표시합니다. [온도측정 부품목록] ▶ 아두이노 보드 : 1개 ▶ 브레드보드 : 1개 ▶ 점프선 ▶ 온도 센서 : 1개 (LM35D) (http:.. 더보기
아두이노로 빛의 밝기를 측정하기 밝기를 재기 위한 기본적인 방법은 포토레지스터를 사용하는 방법입니다. 포토레지스터는 받는 빛의 세기가 증가하면 전기저항이 낮아지는 부품으로 빛 의존성 저항(LDR)이나 광도전체(Photoconductor), 포토셀(photocell)이라고도 불립니다. 포토레지스터 중에서도 대중적인 것은 Cds(황화카드뮴)셀로 단순히 'cds'라고 불리기도 합니다. 빛의 세기에 따라 저항값이 변하는 Cds셀과 저항기 한 개를 조합해서 저항값의 변화를 전압의 변화로 바꿉니다. 여기에서는 주변의 빛이 밝으면 LED를 어둡게, 어두우면 LED를 밝게 켜는 여제를 소개합니다. [부품목록] ▶ 아두이노 보드 : 1개 ▶ 브레드보드 : 1개 ▶ 점프선 ▶ Cds셀 : 1개 (http://www.icbanq.com/P000411228.. 더보기
아두이노로 텍스트 LCD 표시하기 안녕하세요 고군입니다~이번 시간에는 텍스트LCD에 대하여 알아보고, 아두이노를 사용하여 화면을 표시해보도록 하겠습니다.텍스트 LCD는 그래픽이나 한글 표시가 힘들고 표시할 수 있는 문자의 수가 적어 그래픽 LCD에 밀려나는 추세이지만 저렴한 가격으로 인해 산업현장에서는 아직도 많이 사용되고 있으며, 표시(Display)장치와 구동(Driver)장치가 하나로 되어 있습니다. 또한 그래픽 LCD보다 사용되는 포트수가 적고 사용이 용이해 여전히 학습용으로 많이 사용되고 있습니다.LCD는 8문자 x 2라인, 16 x 2, 16 x 4, 20 x2, 40 x 2라인 등 많은 종류가 있는데 여기서는 16 x 2 LCD에 대해 알아보겠습니다. [그림1] 텍스트 LCD 외형 및 연결 회로도 핀 번호 기호 기 능 1 V.. 더보기
아두이노로 FND 4Digit 7세그먼트 표시하기 안녕하세요 고군입니다. 이번시간에는 앞전의 1자리 FND에 이어서 4자리 FND 7세그먼트를 제어하는 방법을 알아보겠습니다. FND는 한자리를 비롯해 2자리, 3자리, 4자리 등 다양하게 판매되고 있습니다. 1개일 때 8개의 포트를 사용해서 제어 했는데, 4자리는 몇개의 포트로 어떻게 제어하게 되는지 한번 알아 보겠습니다. 이론 부분이 좀 어려울 수 있으나 천천히 알아가면 이해 할 수 있을거라 생각이 듭니다. 그림1. 4Digit 7세그먼트 구조와 외형 위 그림은 숫자 4자리를 표시할 수 있는 7세그먼트의 외형 및 핀 구조를 보이고 있습니다. 2개의 공통 핀을 사용하는 1자리 표시용 7세그먼트와 달리 공통 단자가 각 자리별로 1개씩 있습니다. 위 그림에서 공통 단자를 COMn으로 표기하고 있으며, COM.. 더보기
아두이노로 FND 1Digit 7세그먼트 표시하기 안녕하세요 고군입니다. 이번시간에는 아두이노 우노를 사용하여 1자리 FND 7세그먼트를 제어해 보겠습니다. 7세그먼트(7-Segment)는 7개의 선분으로 숫자나 글자를 표시하기 위해 발광 다이오드(LED)를 사용항여 만든 출려 장치의 일종이다. 일반적으로 7세그먼트에는 7개의 선분에 소수점(decimal point)이 추가되어 총 8개의 요소를 1바이트의 데이터로 제어할 수 있다. 7세그먼트의 10개 핀은 두 개의 공통 핀과 8개의 세그먼트 제어 핀으로 구성된다. 공통 핀은 공통 양극의 경우 Vcc에, 공통 음극의 경우 GND에 연결한다. 나머지 8핀은 각 세그먼트를 제어하는 핀으로 공통 양극의 경우 GND 입력이 가해질 때(출력 LOW)불이 켜지는 반면, 공통 음그의 경우 Vcc입력이 가해질 때(출력.. 더보기
아두이노로 LED 매트릭스 표시하기 안녕하세요 고군입니다~ 이번시간에는 아두이노 우노를 사용하여 LED 매트릭스를 제어해보겠습니다. LED 매트릭스는 LED를 매트릭스 형태로 배열하여 다양한 문자나 패턴을 표현 할 수 있도록 해주는 표시 장치의 일종으로 광고를 비롯한 다양한 분야에서 활용되고 있습니다. 8X8 크기의 매트릭스의 경우 알파벳 한 글자 숫자 등을 표현할 수 있어 정보 표시를 위해 많이 사용되고 있습니다. 8X8 크기의 LED 매트릭스는 LED만 포함한 제품에서 부터 제어를 위한 칩을 포함한 보드 형태로 제작된 제품 등 종류가 다양합니다. 매트릭스의 도트를 구성하는 LED도 단색, 이색, 등 다양한 종류가 있습니다. 위 사진의 LED 매트릭스 모듈은 16개의 핀을 가지는 모듈로 각 핀은 8개 행(Row)과 8개 열(Column).. 더보기
아두이노 기초지식_아날로그 입력/출력 안녕하세요 고군입니다.이번시간에는 아날로그 입력과 출력에 대해 알아보겠습니다. ▶ 아날로그 입력 그림 1과 같이 배선을 하고 아두이노 IDE로 업로드한 다음 가변 저항의 손잡이를 좌우로 돌려보세요. 손잡이 위치에 따라 LED의 밝기가 변하는 것을 보실 수 있습니다. 그림 1. 가변 저항과 LED를 연결한 배선도와 회로도 아두이노 예제 소스 123456789101112131415161718192021222324//가변 저항에 연결한 핀 번호const int sensorPin = 0; //LED에 연결한 핀 번호const int ledPin = 9; void setup(){ //LED에 연결한 핀의 모드를 출력으로 설정 pinMode(ledPin, OUTPUT);} void loop(){ //가변저항에 연결.. 더보기
아두이노 기초지식_디지털 입력 안녕하세요 고군입니다이번 시간에는 아두이노를 사용한 디지털 입력에 대해 알아 보겠습니다. ▶ 풀다운(Pull-Down) 저항이 연결된 버튼 입력 그림 1. D2에 택트 스위치와 저항을, D13에 정항과 LED를 연결한 배선도와 회로도, 스위치를 누르는 동안에만 LED가 커진다. 1234567891011121314151617181920212223242526272829303132//버튼을 연결한 핀 번호const int buttonPin = 2;//LED를 연결한 핀 번호const int ledPin = 13;//버튼의 상태를 나타내는 변수int buttonState = 0; void setup(){ //LED에 연결한 핀의 모드를 출력으로 설정 pinMode(ledPin, OUTPUT); //버튼에 연결한.. 더보기
아두이노 기초지식_스케치의 기본 구조 안녕하세요 고군입니다.이번시간에는 아두이노 우노를 갖고 놀기 전에 도구가 어떤 원리에 의해 동작하는지를 간단히 알아보고 가겠습니다. 아두이노를 제대로 갖고 놀기 위해서는 전자 공학, 회로 이론, C / C++언어등을 어느정도 알고 있어야 합니다. 물론 모든 이론을 알고 시작하면 더 없이 좋겠지만 아마도 이론만 공부하다 포기를 해버리지 않을까하는 걱정이 듭니다. 아두이노를 하실 때는 그냥 장난감을 갖고 논다고 생각하시면 좋을 것 같습니다. 재미가 생기면 어려운 이론들도 금방 이해가 가실 것이기 때문입니다. 마이크로컨트롤러는 주변 환경으로부터 정보를 획득하고 이를 처리하여 그 결과에 따라 다양한 동작을 수행합니다. 마이크로컨트롤러는 아날로그 및 디지털 형식의 데이터를 받아들일 수 있으면, 출력 역시 아날로그.. 더보기
아두이노 기초지식_전자회로 안녕하세요 고군입니다~ 전자회로는 매우 깊이 있는 분야이지만, 최소한의 지식을 몸에 익혀야 아두이노 보드를 갖고 좀더 재미있게 테스트를 할 수 있니다. 여기서는 전자회로에 별로 익숙하지 않은 사람을 위해 전자회로의 기초 지식을 설명합니다. ▶ 전압, 전류, 저항 전기의 흐름은 물의 흐름에 곧잘 비유됩니다. 물론 엄밀히 말하면 다르지만, 그 성질은 대강 파악하는 데는 효과적입니다. 전압은 두 개의 물체 사이에 있는 전압(전위)차이를 나타내는 용어입니다. 물은 높은 곳에서 낮은 곳을 향해 흐릅니다. 마찬가지로 전기도 전압이 높은 곳에서 낮은 곳을 향해 흐릅니다. 서로 다른 두 지점의 높이를 비교하려면 기준이 되는 지점이 필요합니다. 전기는 그라운드GND를 기준으로 비교하는데, 보통 전원의 마이너스 쪽을 그라.. 더보기
아두이노 IDE 작동확인 하기 안녕하세요 고군입니다~ 앞의 과정대로 아두이노 IED 설치를 완료 하셨다면 다음으로 아두이노 우노와 연결하여 이상없이 프로그램이 다운이 되는지 확인하셔야 합니다. 그럼 아두이노 IDE 실행하여 아두이노 우노에 프로그램을 다운로드하는 방법을 알려드리겠습니다. 1.바탕화면에 설치된 아이콘을 클릭해서 실행합니다. 2.실행이 완료되면 아래와 같은 아두이노 IDE 창이 뜨게 됩니다. 3. 다음으로 같고 계신 아두이노 우노 보드를 USB 케이블로 컴퓨터와 연결 합니다. 4. 컴퓨터가 아두이노 우노를 인식하는 동안 기다리시면 아두이노 IDE에서 툴 >포트> COM6을 선택하시면 됩니다. 포트넘버는 컴퓨터 마다 다를 수 있으니 아래 처럼 아두이노가 인식된 포트를 선택하시면 됩니다. 5. 위에 과정을 정상적으로 마치셨다.. 더보기