상세 컨텐츠

본문 제목

아두이노ADK보드+12V이상제어용릴레이+안드로이드앱으로 작업환경구성1부

안드로이드+드론 제작

by 김일국 2016. 4. 22. 15:49

본문

이번 포스트는 2부작으로 지난 포스트에서 아두이노 ADK(안드로이드개발킷)으로 작업한 내용에 이어서 IoT의 핵심인 12V 이상의 고전압 외부 장치를 제어하는 기술을 다루도록 하겠습니다.

1부는

아두이노ADK보드+12V이상제어용릴레이+안드로이드앱으로 작업환경구성에 필요한 사전지식과

2부는

실제 하드웨어 구성을 하고, 12V 팬을 구동시키는 스케치(임베디드)와 안드로이드앱을 제작하도록 하겠습니다.


1부: 앞으로 구성하게될 화면부터 보시겠습니다.(아래)

* 메가보드 구매참조: http://artrobot.co.kr/front/php/product.php?product_no=497


지난 포스트 까지는 5V이내로 모두 작동 가능한 구성(레퍼런스)이기 때문에, 위 그림처럼 릴레이 스위치가 필요하지 않았습니다.

하지만, 드론 날개라든지, 실린더, 기어드모터 같은 경우 대부분 12V 이상에서 구동시키는 경우가 많습니다.

일단 아두이노 정품Uno보드(부가세포함40,000원)+USB실드보드(부가세포함33,000원)를 사용하지 않고, 안드로이드 정품 ADK Mega보드(부가세포93,000원)를 사용한 이유는 아래 Uno보드로 구성한 그림을 보면 아실 수 있으실 겁니다.(아래참조)

* 모터드라이브보드구매참조: http://artrobot.co.kr/front/php/product.php?product_no=835&main_cate_no=37&display_group=1


참고로 위 Uno보드 구성은 USB실드보드를 장착하지 않고, 12V이상(고전압) 스테핑모터(속도조절가능하게 하기위해)를 구동시키기 위한 구성 입니다.

ADK Mega보드와 Uno 보드 차이점

Uno 보드: 일명 GPIO 포트라고하는 로직레벨(0V/5V) 출력하는 포트가 14개 정도 됩니다. 그리고, 안드로이드앱과 통신하기위한 USB실드보드를 별도 구매해서 얹어 놓아야 합니다.

ADK Mega 보드: GPIO포트가 50개가 넘고, 제가 파악하지 못한 여러가지 기능과 USB호스트(포트)기능이 내장되어 있습니다. 또한 실드보드를 4개까지 확장할 수 있는 보드가 존재 합니다. ( 참조URL: http://artrobot.co.kr/front/php/product.php?product_no=899&main_cate_no=34&display_group=1 )

Ps. 일반적으로 아두이노계열의 보드에서 요구되는 구동전압과 암페어 전류 값은 아래와 같습니다.

- 기본은 5V로 구동되며  여유있게 1A 이상 전원을 권장드립니다.아마도 3V정도에서도 구동은 가능함.

Ps. 메인보드 어댑터와 확장보드에 연결된 외부장치의 전압은 안정성 때문에 분리하는 것을 추천 합니다. 즉, 어댑터가 2개 필요합니다.

- 위 Uno보드의 스테핑모터를 들자면, 아두이노 보드와 모터드라이브 보드의 작동전압은 5V 입니다.

하지만, 외부 모터의 구동 전압은 8V ~ 30V 를 연결하는 것을 보여 주고 있습니다.

Ps. 모터드라이브 보드는 외부 구동전압 결선단자가 있으나, 다른 장치 즉, 솔레노이드 또는 쿨링팬 과 같은 장치는 별도의 구동 드라이버가 필요하지 않고, 릴레이만 있으면, 12V 이상에서 구동되는 쿨링팬과 솔레노이드실린더를 작동 시킬 수 있게 됩니다.

- 릴레이보드에 프린트된 용어정리(상단 ADK 보드 그림 참조)

-> 외부모터와 연결: 초기전압0V=NO(Node Open)+COM(common:공통) 따라서 결선은 오픈과 연결합니다.
-> 외부모터와 연결: 작동전압5V=NC(Node Close)+COM(common:공통)

-> ADK(아두이노)보드와 연결: Sig(시그널: 작동스위치역할). Vcc(작동전압 5V), GND(-전압,아두이노보드GND핀)


Ps. 만약 외부구동장치(솔레노이드실린더)가 여러개 라면, 2가지로 구성 할 수 있습니다.

1. 릴레이실드보드를 얹는다. (제품구성: http://artrobot.co.kr/front/php/product.php?product_no=898&main_cate_no=&display_group= )

2. 아래 그림처럼 릴레이 보드를 ADK보드와 연결한다.(추천 유투브 동영상참조아래: https://www.youtube.com/watch?v=rygfpmuMe78 )

*제폼구매참조: http://www.mechasolution.com/shop/goods/goods_view.php?goodsno=127738&category=044023

2번을 추천하는 이유는 1번 릴레이실드보드에는 스테핑모터를 구동시 외부 고전압(24V 이상)을 받을 곳이 없고, 사용한다면, 솔레노이드실린더만 구동시킬 수 있고, 4개 로는 부족하기 때문 입니다.

1, 2번 비교

1, ADK메인보드+4개확장실드+릴레이실드보드2개+모터드라이브보드

2. ADK메인보드+릴레이드라이브보드1개+모터드라이브보드

안전성면에서 2번 구성이 나아 보입니다.


다음 포스트에서는 테스트로 릴레이1개 짜리(5,000원) 보드를 ADk보드에 연결하여, 12V 쿨링팬을 돌리는 스케치(임베디드)+안드로이드앱 을 제작하도록 하겠습니다.

Ps.

만약, 아두이노 ADK 메가 보드를 사용하지 않고, 호환보드를 만들게 된다면,,,

호환보드 구글프레이 스토어에서 adk demokit ( https://play.google.com/store/search?q=adk%20demokit&c=apps ) 으로 검색해서

구글에서 배포하는 Strandard... 로 시작하는 앱이나, 앤써북책에서 배포하는 adk demokit answer... 앱을 스마트폰에 설치한 후

호환보드에 스케치프로그램으로 만든 소스(아래 스케치 프로그램 ino 소스)를 호환보드의 플래시메모리에 업로드하여

20160425AM_accfw.zip

정상으로 작동하는지 테스트를 마치면 됩니다.(결과화면)

위 사진에서 Led2를 손가락으로 255 까지 드래그 했을때 오른쪽 브레드보드의 LED가 밝게 빛이 나게 됩니다.

참고로 IN 탭 화면에서 오늘쪽 브레드보드의 빨간색 버튼을 누르면, B2버튼이 활성화 됩니다.

만약, adk demokit을 사용하지 않고, 직접 안드로이드 스튜디오 앱을 사용해서 소스를 수정하고 싶으시면,

제가 이전 포스트에서 작업한 소스를 안드로이드스튜디오에서 빌드해서 사용하시면 됩니다.

20160425AM_AdkFramework.zip

위 안드로이드스튜디오 소스에 대한 설명은 이전에 작성한 포스트를 참조해 주세요. 결과 화면입니다.(아래)

위 화면에서 Play on 버튼을 클릭하면 오늘쪽 브레드보드의 LED가 밝게 빛나게 됩니다.

20160425AM_AdkFramework.zip
6.44MB
20160425AM_accfw.zip
0.0MB

관련글 더보기

댓글 영역