세 걸음의 고리
책상 위의 컴퓨터는 주로 사람이 넣어 준 것만 압니다. 자판을 두드리거나 화면을 눌러야 무엇인가가 들어갑니다. 그런데 사람이 다가서면 빛이 반응하는 작품은 아무도 자판을 두드리지 않았는데도 사람이 다가온 것을 알았습니다.
피지컬 컴퓨팅(physical computing)
컴퓨터가 화면 밖의 세상을 직접 읽고, 세상에 직접 답하도록 만드는 것입니다. 사람이 넣어 주기를 기다리지 않고 스스로 읽어 들입니다.
하는 일은 언제나 세 걸음입니다. 아주 단순한 장치도, 아주 복잡한 작품도 이 셋뿐입니다.
아래쪽 보라색 화살표가 중요합니다. 답한 결과가 다시 세상의 일부가 됩니다. 빛이 켜지면 그 자리는 밝아지고, 밝기를 읽는 센서가 있다면 그 밝아짐을 또 읽습니다. 그래서 「불이 켜져서 밝아지고, 밝으니까 꺼지고, 꺼지니 어두워져서 다시 켜지는」 끝없이 깜빡이는 장치가 실수로 만들어지곤 합니다.
가운데가 없으면 피지컬 컴퓨팅이 아니다
스위치를 누르면 전구가 켜지는 것도 「세상을 읽어 세상에 답하는」 일처럼 보입니다. 그러나 여기에는 판단이 없습니다. 회로가 이어지면 켜지고 끊기면 꺼질 뿐입니다. 「어두울 때만, 그리고 사람이 있을 때만 켠다」처럼 조건이 붙는 순간 가운데 걸음이 필요해집니다.
「끝없이 깜빡이는 장치」가 되지 않게 하려면 가운데 걸음에 어떤 조건을 더하면 좋을까요? 한 가지만 생각해 보세요.
센서
센서(sensor)
빛 · 소리 · 온도 · 거리처럼 세상에 있는 물리적인 값을 전기 신호로 바꾸어 주는 부품입니다. 컴퓨터는 전기 신호만 다룰 수 있으므로, 센서를 거치지 않은 세상의 값은 컴퓨터에게 없는 것입니다.
센서는 「본다」가 아니라 「한 가지 값을 읽는다」
흔한 오해입니다. 거리 센서를 붙였다고 해서 장치가 「사람이 있다」는 것을 아는 것이 아닙니다. 아는 것은 「앞에 무엇인가가 30cm에 있다」뿐입니다. 그것이 사람인지 가방인지 벽인지는 모릅니다.
그래서 「사람이 있다」로 옮기는 일은 가운데 걸음의 몫입니다. 예를 들어 「30cm 안에 무엇인가가 있고, 그 값이 계속 조금씩 흔들린다면 사람일 것이다」처럼 사람이 규칙을 정해 주어야 합니다.
무엇을 알고 싶은가로 고른다
| 알고 싶은 것 | 쓰는 센서 | 실제로 읽는 값 |
|---|---|---|
| 주변이 밝은가 | 빛 센서 | 그 자리에 닿는 빛의 세기. 어디서 온 빛인지는 모른다. |
| 덥고 습한가 | 온습도 센서 | 센서 바로 옆의 온도와 습도. 방 전체가 아니다. |
| 앞에 무엇이 있나 | 거리 센서 | 내보낸 신호가 되돌아오기까지 걸린 시간으로 계산한 거리. |
| 눌렸는가 | 압력 센서 · 버튼 | 누르는 힘의 세기, 또는 눌렸는지 아닌지. |
| 시끄러운가 | 소리 센서 | 소리의 크기. 무슨 말인지는 모른다. |
| 기울었는가 흔들리는가 | 움직임 센서 | 기울어진 정도와 흔들린 세기. |
「실제로 읽는 값」 열을 꼭 읽어 두세요. 「실제로 읽는 값」과 「알고 싶은 것」 사이에는 늘 거리가 있습니다. 이 거리를 메우는 것이 프로그램이 하는 일이고, 여기서 잘못 메우면 엉뚱하게 반응하는 장치가 됩니다.
「교실에 사람이 몇 명 있는지」를 알고 싶습니다. 표에 나온 센서 가운데 그대로 답해 주는 센서가 있나요? 없다면 무엇을 어떻게 조합해야 할까요?
구동기
구동기(액추에이터, actuator)
센서와 정반대 일을 하는 부품입니다. 전기 신호를 받아 빛 · 소리 · 움직임처럼 사람이 알아챌 수 있는 것으로 바꿉니다.
빛으로 답한다
낱개의 빛부터, 한 줄에 여러 알이 박혀 알마다 다른 색과 밝기를 낼 수 있는 띠까지 있습니다. 조용해서 전시장에 쓰기 좋습니다.
소리로 답한다
작은 스피커나 버저가 여기에 포함됩니다. 보지 않아도 알아채므로 급한 알림에 알맞습니다. 대신 여럿이 있는 곳에서는 방해가 됩니다.
움직임으로 답한다
계속 도는 모터와, 정해진 각도로 돌아가 멈추는 서보모터가 있습니다. 앞의 것은 바퀴에, 뒤의 것은 여닫는 관절에 알맞습니다.
고를 때 도움이 되는 물음이 하나 있습니다. 「받는 사람이 무엇을 하고 있을 때 알아채야 하는가」입니다. 잠든 사람에게는 빛이 소용없고, 시끄러운 체육관에서는 소리가 묻힙니다.
| 어떻게 답하나 | 잘 맞는 경우 | 안 맞는 경우 |
|---|---|---|
| 빛 | 조용해야 하는 곳, 여럿이 함께 보는 곳 | 밝은 대낮의 실외, 보고 있지 않은 사람에게 알릴 때 |
| 소리 | 급하게 알려야 할 때, 보지 않아도 되게 할 때 | 교실 · 도서관처럼 남에게도 들리는 곳 |
| 움직임 | 멀리서도 보이게 할 때, 실제로 무엇을 여닫을 때 | 사람 가까이에서 다칠 수 있는 자리 |
움직이는 것에는 힘이 있다
빛과 소리는 잘못 만들어도 대개 놀라는 데서 그칩니다. 그러나 움직이는 것은 사람을 다치게 할 수 있습니다. 관절이 접히는 자리에 손이 들어가지 않는지, 전원이 갑자기 끊겼을 때 어느 자세로 멈추는지를 만들기 전에 정해 두어야 합니다.
수업 중에 한 사람에게만 알려야 한다면 셋 중 무엇이 알맞을까요? 셋 다 아쉽다면 넷째 방법은 무엇이 있을까요?
짝지어 보기
이제 만들고 싶은 것을 정해 놓고 센서와 구동기를 골라 보겠습니다. 순서가 중요합니다. 부품에서 시작하지 말고 하고 싶은 일에서 시작합니다. 「이 센서로 뭘 만들지?」로 시작하면 억지스러운 것이 나오기 쉽습니다.
채워 보는 다섯 칸
| 하고 싶은 일 | 쉬는 시간에 교실 공기가 답답해지면 창문을 열자고 알리고 싶다. |
| 무엇을 읽나 | 「답답함」은 센서로 못 읽는다. 대신 온도와 습도를 읽어 「사람이 오래 머문 정도」를 가늠한다. → 온습도 센서 |
| 어떻게 판단하나 | 습도가 정한 값을 3분 이상 계속 넘으면 알린다. 순간적으로 넘는 것은 무시한다. |
| 무엇으로 답하나 | 교실이므로 소리는 쓰지 않는다. 칠판 옆의 빛이 천천히 노랗게 밝아진다. |
| 틀릴 수 있는 자리 | 센서 바로 옆에서 누가 물을 쏟으면 교실 전체가 아닌데도 습도가 올라간다. 창가에 두면 바깥 날씨에 끌려간다. |
이 표에서 눈여겨볼 것은 「무엇을 읽나」 칸의 「답답함은 센서로 못 읽는다」입니다. 하고 싶은 일은 대개 사람의 말로 되어 있고, 센서가 읽는 것은 숫자입니다. 이 사이를 잇는 것이 만드는 사람의 일입니다.
해 보기 — 나의 다섯 칸
- 교실이나 집에서 「이럴 때 알려 주면 좋겠다」 싶은 것을 하나 고릅니다.
- 다섯 칸을 채웁니다. 「무엇을 읽나」 칸에서 막히면 「그 대신 무엇을 읽으면 비슷하게 알 수 있을까」를 물어보세요.
- 「무엇으로 답하나」 칸은 「받는 사람이 그때 무엇을 하고 있을까」를 떠올리고 정합니다.
- 「틀릴 수 있는 자리」 칸을 반드시 채웁니다. 만든 것이 어디서 틀릴 수 있는지 미리 적어 두는 칸입니다.
「3분 이상 계속 넘으면」이라는 조건을 왜 넣었을까요? 이 조건이 없으면 어떤 일이 일어날지 말해 보세요.
핵심 정리
세 걸음의 고리
- 피지컬 컴퓨팅은 컴퓨터가 화면 밖 세상을 읽고 세상에 답하도록 만드는 것이다.
- 하는 일은 언제나 감지 · 판단 · 반응 세 걸음이다.
- 답한 결과가 다시 세상의 값이 되어 돌아온다. 가운데 걸음이 없으면 그냥 스위치다.
센서
- 세상의 물리적인 값을 전기 신호로 바꾸는 부품이다.
- 센서는 「본다」가 아니라 「한 가지 값을 읽는다」. 사람인지 가방인지는 모른다.
- 「알고 싶은 것」과 「실제로 읽는 값」 사이의 거리를 프로그램이 메운다.
구동기
- 전기 신호를 빛 · 소리 · 움직임으로 바꾸는, 센서의 반대편이다.
- 고를 때는 「받는 사람이 그때 무엇을 하고 있을까」를 묻는다.
- 움직이는 것은 사람을 다치게 할 수 있다. 전원이 끊겼을 때의 자세까지 정한다.
짝지어 보기
- 부품이 아니라 하고 싶은 일에서 시작한다.
- 하고 싶은 일은 사람의 말이고 센서가 읽는 것은 숫자다. 그 사이를 잇는 것이 만드는 사람의 일이다.
- 「틀릴 수 있는 자리」 칸을 반드시 채운다.
확인 퀴즈
배운 내용을 확인해 봅시다.
스위치를 누르면 켜지는 전등이 피지컬 컴퓨팅이 아닌 까닭은?
거리 센서를 붙인 장치가 실제로 아는 것은?
도서관에서 자리가 비었음을 알리는 장치에 소리를 쓰지 않는 까닭은?
「교실이 답답하다」를 장치로 만들려 할 때 가장 먼저 할 일은?