MIT 앱 인벤터를 활용한 아두이노 제어 실습 - 기초 코딩부터 사물인터넷(IoT) 실습까지!!!
21세기 들어 스마트폰이 급속하고도 광범위하게 보급되면서 우리 사회에는 ‘스마트 혁명’이라 불릴 정도로 빠른 변화가 일어나고 있다. 이미 스마트폰 없는 세상을 상상하기란 불가능하게 된 것이다.
앱 인벤터는 컴퓨터 프로그래밍을 접해 보지 않은 사람들이 쉽게 스마트폰 애플리케이션을 만들 수 있도록 하기 위한 도구로써 누구나 제작 및 이용이 가능한 오픈 소스 소프트웨어이다. 애플리케이션 개발자가 프로그래밍에 대한 지식이 부족하더라도 앱 인벤터의 그래픽 인터페이스를 이용해서 블럭들을 끌어오고 서로 붙여서 스마트폰 애플리케이션을 만들 수 있다.
아두이노 역시 컴퓨터 프로그래밍이나 전자회로에 대한 전문 지식이 부족한 사람들도 비교적 쉽게 하드웨어 작품을 만들 수 있도록 고안되었으며, 앱 인벤터와 마찬가지로 오픈 소스 프로젝트이다. 대학교는 물론 초, 중, 고등학교의 프로그래밍 교육에 사용되며, 간단한 배선과 오픈 소스라는 장점 때문에 기업의 제품 개발에도 널리 활용되고 있다. 최근에는 IoT(사물인터넷), 드론, 3D 프린터 등에 활용되면서 많은 관심을 받고 있다.
본 교재에서는 앱 인벤터로 제작한 스마트폰 애플리케이션을 이용해서 아두이노로 구현된 다양한 시스템을 블루투스 통신을 통해 제어해 볼 수 있도록 하였다. 각 시스템에 사용된 부품들의 특성 및 동작 원리에 대해 소개한 다음 이를 바탕으로 아두이노 IDE에 의해 작성된 프로그램을 소개했다. 그 뒤 앱 인벤터로 스마트폰 애플리케이션을 제작하는 방법에 대해 최대한 상세하게 설명하였다. 또한, 모든 시스템의 결선도 및 회로도를 삽입하여 비전문가들도 그림을 보고 쉽게 따라 할 수 있도록 만들었다.
본 교재는 총 10개의 Chapter로 구성되어 있으며, 미리 내용을 간략하게 소개하면 다음과 같다.
Ch. 1, 2에서는 아두이노와 앱 인벤터의 개괄적인 내용을 기술했다.
Ch. 3은 블루투스 통신을 이용해 간단한 데이터를 송신 및 수신하는 시스템을 만들어 본다.
Ch. 4는 가장 기초적인 디지털 출력 장치인 LED를 점등 및 소등하는 내용을 다룬 후 적외선 인체 감지 센서인 AM312 센서를 입력 장치로 삼아 테스트해 보도록 했다.
Ch. 5는 아날로그 입력 장치인 가변저항의 저항값을 출력하는 시스템이다.
Ch. 6, 7, 8은 모두 아날로그 출력으로서 서보모터, RGB LED, 일반 LED의 밝기 조절, DC 모터의 속도 조절이라는 총 3가지의 아날로그 출력 장치를 다뤄볼 수 있도록 했다.
Ch. 9, 10에서는 지금까지 학습한 내용과 각 센서의 데이터 시트를 참고하여 미세먼지 센서와 습도 센서의 검출값을 출력하는 시스템을 제작할 수 있도록 하였다.
부디 독자 여러분들이 아두이노와 앱 인벤터에 대한 관심과 이해도가 높아지기를, 그럼으로써 학업과 실무 능력에 도움이 되기를 기대한다.
1. 아두이노 기초
2. 앱 인벤터 기초
3. 블루투스 통신에 의한 데이터 송수신
4. 디지털 출력 - LED
5. 아날로그 입력 - 가변저항, 센서
6. 아날로그 출력 - 서보모터
7. 아날로그 출력 - RGB LED
8. 아날로그 출력 - LED & DC모터
9. 아날로그 입력1(공기청정기 제작) - 미세먼지 센서(GP2Y1010AU0F) 활용
10. 아날로그 입력2(스타일러 제작) - 습도 센서 활용