Skip to main content
Summary

로봇은 전기로 움직인다

앞 장에서는 아두이노에 코드를 업로드하고 LED를 깜빡여 보았다. 겉으로 보면 아주 단순한 동작이지만, 그 안에서는 전기가 정해진 길을 따라 흐르고 있었다. 로봇도 마찬가지다. 센서가 값을 읽고, 아두이노가 판단하고, 모터가 도는 모든 과정에는 전기가 필요하다.

전기를 어렵게 느끼는 이유는 눈에 보이지 않기 때문이다. 하지만 물의 흐름에 비유하면 훨씬 쉽게 이해할 수 있다. 물탱크, 수도관, 수도꼭지를 떠올려 보자. 물탱크가 물을 밀어내는 힘이 있고, 수도관 안으로 물이 흐르며, 수도꼭지나 좁은 관은 물의 흐름을 줄인다. 전기 회로도 비슷하다.

전기를 안전하게 다루려면 세 가지 말을 먼저 알아야 한다. 전압, 전류, 저항이다. 이 세 가지를 이해하면 LED가 왜 저항과 함께 연결되어야 하는지, 모터를 아두이노 핀에 바로 꽂으면 왜 위험한지, GND를 왜 꼭 연결해야 하는지 감이 잡힌다.

로봇을 움직이는 전기의 기본AI 생성 이미지

전압, 전류, 저항을 생활 속 흐름으로 이해하기

전압은 전기를 밀어주는 힘이다. 단위는 볼트, 기호는 V를 쓴다. 아두이노 우노의 5V 핀은 5볼트의 전압을 제공한다. 물탱크가 높은 곳에 있을수록 물을 더 세게 밀어내듯, 전압이 높을수록 전기를 밀어내는 힘이 커진다.

전류는 실제로 흐르는 전기의 양이다. 단위는 암페어, 기호는 A를 쓴다. 작은 회로에서는 밀리암페어, 즉 mA를 자주 쓴다. 1A는 1000mA이다. LED는 보통 아주 작은 전류만 필요하지만, 모터는 LED보다 훨씬 많은 전류를 필요로 한다.

저항은 전기의 흐름을 조절하는 요소이다. 단위는 옴, 기호는 Ω를 쓴다. 좁은 수도관이 물의 흐름을 줄이듯, 저항은 전류가 너무 많이 흐르지 않게 막아 준다. 회로에서 저항은 부품을 보호하는 역할을 자주 한다.

이 관계를 간단히 말하면 다음과 같다.

같은 전압이라면 저항이 작을수록 전류가 많이 흐르고, 저항이 클수록 전류가 적게 흐른다.

이 원리를 수식으로 나타낸 것이 옴의 법칙이다.

전압(V) = 전류(A) × 저항(Ω)

지금은 수식을 계산하는 것보다 의미가 중요하다. 전기는 아무렇게나 흐르게 두면 안 된다. 필요한 만큼만 흐르도록 길과 양을 조절해야 한다. 그래야 부품이 뜨거워지거나 망가지지 않는다.

회로는 반드시 한 바퀴 돌아야 한다

전기는 출발점만 있어서는 흐르지 않는다. 반드시 돌아오는 길이 필요하다. 손전등을 생각해 보자. 건전지의 +극에서 나온 전기는 전구를 지나 -극으로 돌아간다. 이처럼 전기가 한 바퀴 돌 수 있는 길을 회로라고 한다.

아두이노 회로에서도 마찬가지다. 5V 핀이나 디지털 핀에서 나온 전기는 LED, 저항, 센서 같은 부품을 지나 GND로 돌아와야 한다. GND는 회로의 기준점이자 전기가 돌아오는 길이다.

초보자가 많이 하는 실수 중 하나는 5V만 연결하고 GND를 연결하지 않는 것이다. 이 경우 전기가 돌아올 길이 없어서 부품이 제대로 동작하지 않는다. 반대로 5V와 GND를 아무 부품 없이 바로 연결하면 매우 위험하다. 이것을 쇼트, 또는 단락이라고 한다. 전류가 한꺼번에 많이 흐르면서 아두이노나 전원이 손상될 수 있다.

회로를 만들 때는 늘 이렇게 생각하자.

전기는 어디에서 나와서 → 어떤 부품을 지나 → 어디로 돌아가는가?

이 질문에 답할 수 있으면 회로를 훨씬 안전하게 만들 수 있다.

브레드보드는 전기 길을 쉽게 바꾸는 판이다

브레드보드는 납땜 없이 부품과 점퍼선을 꽂아 회로를 만들 수 있는 판이다. 로봇을 만들 때는 센서, LED, 저항, 버튼을 자주 바꿔 연결해야 하므로 브레드보드가 매우 유용하다.

브레드보드는 겉으로 보면 작은 구멍이 많이 뚫린 플라스틱 판이다. 중요한 점은 이 구멍들이 모두 따로 떨어져 있지 않다는 것이다. 안쪽에서는 금속판으로 몇 개씩 연결되어 있다.

일반적인 브레드보드는 가운데 홈을 기준으로 양쪽 영역이 나뉜다. 가운데 영역의 구멍은 보통 세로가 아니라 가로로 5개씩 연결되어 있다. 예를 들어 같은 줄의 a, b, c, d, e 구멍은 내부에서 서로 연결되어 있고, 가운데 홈을 건너편의 f, g, h, i, j 구멍과는 연결되어 있지 않다.

양쪽 가장자리에는 길게 이어진 줄이 있다. 이것을 전원 레일이라고 부른다. 보통 빨간색 선 또는 + 표시는 전원, 파란색 선 또는 - 표시는 GND로 사용한다. 전원 레일에 아두이노의 5V와 GND를 연결해 두면 여러 부품이 같은 전원과 GND를 쉽게 나누어 쓸 수 있다.

다만 모든 브레드보드가 완전히 같은 구조는 아니다. 어떤 브레드보드는 전원 레일이 중간에서 끊어져 있다. 긴 브레드보드를 사용할 때 한쪽 끝에서는 전원이 들어오는데 다른 쪽 끝에서는 동작하지 않는다면, 전원 레일이 중간에서 나뉘어 있는지 확인해야 한다. 이때는 점퍼선으로 끊어진 부분을 이어 주면 된다.

LED는 방향이 있는 부품이다

LED는 전기가 흐르면 빛을 내는 부품이다. LED는 작은 전구처럼 보이지만 중요한 차이가 있다. 방향이 맞을 때만 전류가 잘 흐른다. 이런 성질을 극성이라고 한다. 극성이 있는 부품은 +와 - 방향을 맞춰 연결해야 한다.

LED에는 긴 다리와 짧은 다리가 있다. 일반적으로 긴 다리는 +쪽에 연결하는 애노드, 짧은 다리는 -쪽에 연결하는 캐소드이다. LED 몸체의 한쪽이 납작하게 깎여 있는 경우가 있는데, 그쪽도 보통 캐소드 쪽이다.

LED를 거꾸로 연결하면 대부분 빛이 켜지지 않는다. 낮은 전압에서는 보통 바로 망가지지는 않지만, 회로가 의도대로 동작하지 않는다. 그래서 LED가 켜지지 않을 때는 코드만 보기 전에 LED 방향도 함께 확인해야 한다.

LED에서 더 중요한 점은 저항 없이 바로 연결하면 안 된다는 것이다. LED는 전류가 너무 많이 흐르면 쉽게 손상된다. 그래서 LED와 저항을 한 줄로 이어 전류를 제한한다. 이런 연결을 직렬 연결이라고 한다. 직렬 연결은 부품들이 한 줄로 차례대로 이어져 전류가 같은 길을 지나가는 연결이다.

저항은 방향이 없다. 어느 쪽으로 꽂아도 된다. 중요한 것은 LED와 저항이 같은 길 위에 놓여야 한다는 점이다.

아두이노 핀 → 저항 → LED → GND

또는 다음처럼 연결해도 된다.

아두이노 핀 → LED → 저항 → GND

두 경우 모두 저항과 LED가 한 줄로 이어져 있으므로 LED를 보호할 수 있다.

실습: 외부 LED를 안전하게 깜빡이기

이번에는 브레드보드에 LED와 저항을 꽂아 직접 회로를 만들어 보자. 앞 장에서 보드에 내장된 LED를 깜빡였다면, 이번에는 우리가 직접 전기의 길을 만든다.

필요한 부품은 다음과 같다.

  • 아두이노 우노

  • 브레드보드

  • LED 1개

  • 220Ω 또는 330Ω 저항 1개

  • 점퍼선 몇 개

연결 순서는 다음과 같다.

  1. 아두이노의 GND 핀을 브레드보드의 - 전원 레일에 연결한다.

  2. LED의 짧은 다리를 GND 쪽에 연결한다.

  3. LED의 긴 다리와 저항을 같은 줄에 이어 연결한다.

  4. 저항의 다른 쪽 다리를 아두이노 디지털 13번 핀에 연결한다.

핵심은 전기가 13번 핀에서 나와 저항과 LED를 지나 GND로 돌아가게 만드는 것이다. 저항의 위치는 LED 앞이어도 되고 뒤이어도 된다. 한 줄로 이어져 있기만 하면 전류 제한 역할을 한다.

코드는 앞 장의 Blink와 거의 같다.

const int ledPin = 13;

void setup() {
  pinMode(ledPin, OUTPUT);
}

void loop() {
  digitalWrite(ledPin, HIGH);
  delay(1000);

  digitalWrite(ledPin, LOW);
  delay(1000);
}

업로드한 뒤 LED가 1초 켜지고 1초 꺼지면 성공이다. 만약 켜지지 않는다면 다음 순서로 확인하자.

  • LED의 긴 다리와 짧은 다리가 바뀌지 않았는가?

  • 저항이 LED와 한 줄로 이어져 있는가?

  • GND가 브레드보드의 같은 전기 길에 연결되어 있는가?

  • 13번 핀에 연결한 줄이 LED와 실제로 이어져 있는가?

  • 코드에서 ledPin 번호가 회로의 핀 번호와 같은가?

회로 문제를 찾을 때는 한 번에 여러 부분을 바꾸지 않는 것이 좋다. LED 방향을 확인하고, 그다음 저항 위치를 확인하고, 그다음 GND 연결을 확인하자. 한 단계씩 점검해야 원인을 찾기 쉽다.

아두이노 5V와 GND를 사용할 때의 원칙

아두이노의 5V 핀은 작은 센서나 LED 회로에 전원을 공급할 때 사용할 수 있다. 하지만 모든 부품을 5V 핀에 연결해도 되는 것은 아니다. 특히 모터는 주의해야 한다. 모터는 처음 돌기 시작할 때 순간적으로 많은 전류를 요구한다. 이 전류를 아두이노 보드에서 직접 공급하려고 하면 보드가 불안정해지거나 손상될 수 있다.

디지털 핀도 마찬가지다. 디지털 핀은 HIGH와 LOW 신호를 내보낼 수 있지만, 큰 전류를 공급하는 전원 장치가 아니다. LED 하나 정도는 저항을 넣어 다룰 수 있지만, 모터를 디지털 핀에 바로 연결해서 돌리면 안 된다. 모터는 뒤에서 배울 모터 드라이버라는 부품을 거쳐 제어해야 한다. 모터 드라이버는 아두이노의 작은 제어 신호를 받아, 모터에 필요한 더 큰 전류를 따로 공급하도록 도와주는 장치이다.

전원을 연결할 때 기억할 원칙은 네 가지이다.

첫째, 5V와 GND를 직접 연결하지 않는다. 중간에 부품 없이 바로 이어지면 쇼트가 된다.

둘째, 극성이 있는 부품은 방향을 확인한다. LED, 일부 센서, 배터리, 모터 드라이버는 +와 - 연결을 틀리면 동작하지 않거나 망가질 수 있다.

셋째, 여러 장치가 함께 동작할 때는 GND를 공유해야 한다. 예를 들어 나중에 모터용 배터리를 따로 사용하더라도, 아두이노와 모터 드라이버의 GND는 서로 연결해야 한다. 그래야 신호의 기준이 같아진다.

넷째, 전류를 많이 쓰는 부품은 아두이노에서 직접 전원을 가져오지 않는다. 모터, 서보모터 여러 개, 밝은 LED 여러 개는 별도 전원이나 드라이버 회로가 필요할 수 있다.

전기를 알면 로봇이 안정해진다

로봇 회로는 단순히 선을 많이 꽂는 일이 아니다. 전기가 어디서 출발해 어디로 돌아오는지 설계하는 일이다. 전압은 전기를 밀어주는 힘이고, 전류는 흐르는 양이며, 저항은 그 흐름을 조절한다. LED처럼 방향이 있는 부품은 극성을 맞춰야 하고, 전류가 너무 많이 흐르지 않도록 저항을 함께 사용해야 한다.

브레드보드는 회로를 쉽게 바꿔 볼 수 있게 해 주지만, 내부 연결 구조를 모르면 엉뚱한 곳에 선을 꽂기 쉽다. 같은 줄이 연결되어 있는지, 전원 레일이 끊어져 있지 않은지, GND가 제대로 이어져 있는지 확인하는 습관을 들이자.

앞으로 센서와 모터를 연결할 때도 이 원칙은 계속 반복된다. 전원, GND, 신호선의 역할을 구분하고, 부품이 필요한 전압과 전류를 생각하는 것. 이것이 부품을 망가뜨리지 않고 안정적인 로봇을 만드는 첫 번째 안전장치이다.

책 목록

아두이노로 배우는 로봇의 기본

전체 목차 보기

이 노트는 보도·비평·교육·연구 목적으로 작성되었습니다. 저작권 문의가 있으시면 에서 알려주세요.

틸노트는 사용자가 AI를 활용해 노트를 쉽게 작성하거나 편집할 수 있는 서비스입니다.

AI 스퀘어 단톡방에 함께해요

AI 활용과 틸노트 사용 팁을 나누는 오픈채팅방입니다. 입장 비밀번호는 tilnote입니다.

참여하기