전압(Voltage), 전류(Current), 전력(Power)가 무엇인지 모르는 사람은 거의 없다. 모두가 전기(Electricity)에 대한 용어들이다. 전기는 현대문명을 지탱해주는 동력이자, 나의 직업이 존재할 수 있는 근원이다(토마스 에디슨, 니콜라 테슬라 두 형님에게 감사할 따름이다). 임베디드 소프트웨어를 개발하기 위해 우리가 가장 먼저 이해해야 하는 것은 전압과 전류, 그리고 전력의 관계다.
공돌이스럽고 딱딱한 이론은 사양한다.
임베디드 소프트웨어 개발하는데 꼭 알아야 할 초등교과 지식만 설명하겠다.
단순히 말해 전류가 흐르기 위해서는 물리적인 두 지점간에 전압차가 존재해야 한다.
물이 높은 곳에서 낮은 곳으로 흐르는 것과 같은 이치다.
여기서 두 지점간의 전압의 차이(voltage difference - 전압강하 Voltage drop이라고도 한다)를 나타나는 단위가 볼트Volt(기호 V)다.
전압(Voltage) = 약자 V = 단위 Volt
전압이 존재하려면 두 지점간의 차이가 있어야 한다. 통상 우리가 이야기하는 전압 - 220V라는 것은 교류(AC) 전압으로 일반 가정에서 쓰는 대한민국 표준전압이다. 국내에서 사용가능하려면 모든 제품이 표준전압에 맞춰 설계되어 있다. 하지만 기기 내부에서 사용하는 실제 디바이스가 동작하는 전압값은 보통 5V내지는 3.3V 등의교류가 아닌 직류(DC) 전압이다.
다시 물이 흐르는 것을 상상해보자. 상식적으로 두 지점간의 높이의 차이가 크면 클수록 물이 떨어지는 속도는 빨라진다. 마찬가지로 전압이 크면 클수록 전류 또한 커지게 된다.
이것을 도식으로 나타내면 다음과 같다.
여기서 I는 전류(Current)를 나타내는 약자로 단위는 Ampere(약자 A)이다. R는 저항(Resistence)을 나타내는 약자로, 단위는 Ω(Ohm)이다. 옴(Ohm)은 바로 위 도식을 만든 학자의 이름(Georg Ohm)으로 위 도식은 옴의 법칙이라 불리운다.
저항은 쉽게 말해 전류가 흐르면서 생기는 손실을 유발하는 물체다. 회로도상 다음과 같이 그린다.
저항은 말그대로 전류가 흐르지 못하도록 저항하는 것이다. 위 공식에 따르면 동일한 전압차인 경우 저항이 크면 클수록 전류는 줄어든다. 곱셈을 할 줄 아는 초등지식만 있으면 이해할 수 있는 관계다. 거꾸로 저항이 작으면 작을수록 전류량은 커진다. 하드웨어 개발자는 기본적으로 이점을 이용하여 회로의 전류량을 조절할수 있다.
임베디드 개발을 하다보면 통상 알 PCB(나중에 알아볼 것이다)에 온갖 선을 연결해서 개발작업을 진행한다. 이 때 심심찮게 뻑 하는 소리와 함께 매퀘한 냄새을 동반하는 보드 망가짐 - 때론 전기 차단기 작동 사고가 발생한다. 이것은 쇼트(정확하게 short circuit)가 발생한 것이다. 쇼트는 합선 내지 단락이라는 우리말로 풀어 쓸 수 있겠다, 전압차를 갖는 회로 상의 두부분이 전기적으로 접촉되는 현상으로 접점부분의 작아진 저항 때문에 큰 전류가 흐르게 되고, 이 때 발생한 발열로 인해 화재가 발생하는 것이다.
임베디드 소프트웨어를 개발하는데 전압과 전류, 저항의 관계는 위 도식 하나면 충분하다.
더이상 알 필요 없다.
한단계 더 나아가 전력(Power, P)에 대해 살펴보자.
폭포에서 물이 떨어진다. 떨어지는 물을 가지고 물레방아를 돌려서 그 힘을 동력으로 사용한다고 치자. 물이 흐르는 양이나 속도가 클수록 물레방아는 더 빨리, 많이 돌 것이다.
그리고 그 속도를 결정하는 것은 앞에서 이미 언급했듯이 폭포의 높이다.
전력을 도식화하면 다음과 같다.
전압차(V)가 크고, 전류량(I)이 많으면 전력(P)이 커진다. 전력은 시간당 전기가 하는 일로서(Joules/sec - 이게 뭔지 몰라도 된다), 단위는 와트(Watt, W)를 쓴다.
전압, 전류 관련해서는 이상의 내용만 알면 임베디드 소프트웨어 개발하는데 아무런 지장이 없다.
물론 하드웨어 개발자인 경우에는 더 많은 지식이 필요하다.