bakkas
5,000+ Views

코딩과 아두이노의 찰떡궁합 Ep-28

지난 에피소드(코딩과 아두이노의 찰떡궁합 Ep-27)에서 블루투스 2.0 을 지원하는 모듈로 통신하는 방법을 알아보았습니다. 지난 에피소드에서 사용한 모듈은 아이폰에서는 사용이 불가능합니다. 그리고 블루투스 2.0 모듈이기 때문에 전력 소모도 많습니다. 블루투스 4.0 모듈을 이용하면 안드로이드, 아이폰 구분없이 연결 가능하며, 전력 소모도 적습니다.

아두이노에 연결해 사용 가능한 블루투스 4.0을 지원하는 모듈은 AT-09와 HM-10이 있습니다. AT-09가 가격이 저렴하기 때문에 해당 모듈을 이용한 연결을 해보겠습니다. 물론 HM-10도 같은 방법으로 연결할 수 있습니다.
이제 프로젝트에 필요한 부품을 알아보겠습니다.
아두이노 우노(Uno) 보드가 필요하구요~
블루투스 통신에 사용할 모듈은 4.0이 지원되는 AT-09를 이용하겠습니다.


참고로AT-09는 오픈마켓이나 네이버에서 검색하시면 HC-06보다 저렴한 가격에 판매되고 있습니다.
아두이노 보드와 블루투스 모듈(AT-09)는 아래와 같이 연결해주시면 됩니다.
연결이 완료되면 아두이노 IDE를 실행해 아래 코드를 입력합니다.
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
#include <SoftwareSerial.h>
SoftwareSerial BTSerial(2, 3);
void setup() {
Serial.begin(9600);
Serial.println("Hello!");
BTSerial.begin(9600);

void loop() {
if (BTSerial.available()) {
Serial.write(BTSerial.read());
}
if (Serial.available()) {
BTSerial.write(Serial.read());
}

 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
위 코드에 대해 설명드리겠습니다.
#include <SoftwareSerial.h>
SoftwareSerial.h 파일을 로드하는 명령입니다. 소프트웨어 시리얼을 사용하는 경우에 이 파일을 로드해야 합니다. 소프트웨어 시리얼은 디지털 0, 1번이 아닌 다른 핀에 블루투스 모듈을 연결하는 것을 말합니다. 디지털 0, 1번에 연결하면 하드웨어 시리얼로 통신을 하게되는데 문제는 컴퓨터에 연결된 상태에서는 USB 포트가 디지털 0, 1번을 통해 데이터를 주고 받기 때문에 사용할 수 없습니다. 그래서 아두이노에서는 2~13번 핀 중 원하는 핀에 연결하고 사용할 수 있도록 지원합니다. 이때는 SoftwareSerial.h 파일을 로드해야 합니다.

SoftwareSerial BTSerial(2, 3);
소프트웨어 시리얼로 통신하기 위해 이름과 송신핀과 수신핀번호를 지정하는 명령입니다.

Serial.begin(9600); BTSerial.begin(9600);
시리얼 모니터의 통신 속도와 블루투스 통신의 속도를 설정한 것입니다. 이 두가지의 속도는 같아야합니다. 다르면 정상적인 통신을 할 수 없게됩니다.

if (BTSerial.available()) { Serial.write(BTSerial.read()); }
만약 블루투스로 아두이노에 전송된 데이터가 있다면 해당 데이터를 읽어 시리얼 모니터에 출력하는 명령입니다. 스마트폰에서 입력한 내용이 있다면 해당 내용을 아두이노의 시리얼 모니터에 나타내줍니다.

if (Serial.available()) { BTSerial.write(Serial.read()); }
만약 시리얼 모니터의 입력이 있다면 해당 내용을 블루투스를 통해 전송하는 명령어입니다.

이정도로 코드 설명은 마무리하고 이제 코드를 업로드 합니다.
아두이노가 연결된 컴퓨터의 아두이노 IDE 프로그램 오른쪽 상단 [시리얼 모니터]를 클릭해 엽니다. 시리얼 모니터가 열리면 하단 목록에서 [Both NL & CR]을 선택합니다. 이 항목으로 선택되지 않으면 블루투스로 주고받는 메시지가 깨져보이게 됩니다.
PC에서의 작업은 완료되었습니다. 스마트폰에서 통신할 앱을 설치해야합니다. 블루투스 4.0을 지원하는 앱을 설채햐아합니다. 블루투스 2.0은 설정에서 미리 페어링을 해야하지만 블루투스 4.0은 페어링 없이 앱에서 바로 연결해 사용합니다. Play 스토어/App Store에서 [3demp]로 검색합니다. 검색 결과 앱 중 [3Demp - 3dempPlayer...]를 설치합니다.
앱이 설치되면 앱을 실행합니다. 앱이 실행되면 왼쪽 블루투스 로고를 터치합니다.
[SCAN]을 터치해 근처 블루투스 모듈을 검색합니다. 검색된 모듈을 터치해 선택합니다.
블루투스 연결이 완료되면 블루투스 아이콘 모양이 밝은 하늘색으로 표시됩니다. 아두이노에 연결한 블루투스 모듈도 붉은색 LED가 깜박거리는 상태에서 계속 점등 상태로 나타납니다. 이제 통신을 위해 오른쪽 하단 [TEXT]를 터치합니다.
하단 메시지 입력란에 아두이노로 전송할 메시지를 입력하고 [Send]를 터치합니다.
컴퓨터의 아두이노 시리얼 모니터에 스마트폰에서 전송한 메시지가 나타납니다.
이번에는 아두이노 시리얼 모니터 입력창에 텍스트를 입력 후 [전송]을 클릭합니다.
아두이노 시리얼 모니터에서 전송한 메시지가 스마트폰에 전송된것을 확인할 수 있습니다.
위 과정을 동영상으로 확인해보겠습니다.


이 방법을 조금 더 응용하면 LED를 켜고 끄는것, RC카를 만드는 것 등도 가능합니다. 다음 강좌에는 블루투스 4.0으로 LED를 제어하는 방법을 알아보겠습니다.

감사합니다.
▶상상을 현실로 만드는 아두이노(Arduino)
     ■  박경진 지음 / 에듀아이 출판
■   알라딘, Yes24, 교보문고, 영풍문고, 반디앤루니스, 인터파크에서 구입가능합니다.
     ■  아두이노 초보자 책으로 추천합니다.

[책에서 다루는 내용]
    ■ 소프트웨어 코딩을 이해하고 아두이노에 업로드/테스트하는 방법     
    ■ 서서히 색상이 그라데이션 형태로 바뀌는 LED 무드등 만들기    
    ■ 리드 스위치 모듈로 창문이나 현관 문 열림 감지하기    
    ■ 토양 수분 센서로 화분의 수분 상태를 측정해 물 공급시기 체크하기    
    ■ 비접촉식 온도 센서로 비접촉 체온 측정기 만들기    
    ■ 이 세상 하나뿐인 우리집 미세 먼지 측정기 만들기    
    ■ 주변 밝기를 측정해 자동으로 켜지고 꺼지는 스마트 전등(가로등) 만들기   
    ■ 거리를 측정하는 초음파 센서를 이용해 자동차 후방 감지기 만들기    
    ■ 일정한 거리내의 사람을 인식해 자동으로 열리고 닫히는 스마트 휴지통 만들기    
    ■ 스마트폰 블루투스로 연결해 제어하는 RC 카 만들기    
    ■ 집밖에서 스마트폰으로 집안의 사물인터넷 기기 제어   

[이 책의 대상 독자]
    ■ 아두이노를 가장 쉽게 접근하고, 활용하고자 하는 독자   
    ■ 소프트웨어 교육 의무화로 소프트웨어 코딩을 배우고 싶은 학생    
    ■ 사물인터넷 제품을 만들어 스마트 홈을 구현하고 싶은 독자    
    ■ 어렸을 때 생각했거나 상상했던 제품을 직접 만들어보고 싶은 독자    
    ■ 소프트웨어와 하드웨어의 상관 관계를 이해하고 제어하고 싶은 독자    
    ■ 로봇, 드론 등의 제품 구현을 위한 기본 지식을 습득하고자 하는 독자   

아두이노 초보자분들이 가장 쉽게 배울수 있는 책입니다. 추천합니다^^!!

끝까지 읽어주셔서 고맙습니다^^
다음 에피소드에서 또 뵙겠습니다^^


#코딩추천책
#코딩책추천
#아두이노책
#아두이노강좌
#아두이노책추천
#아두이노추천도서
#코딩책
#사물인터넷
#사물인터넷책추천
#블루투스
#bluetooth
#블루투스통신하기
Comment
Suggested
Recent
Cards you may also be interested in
여행 끝! 여행사진과 동영상까지 깔끔하게 정리해 줄 꿀어플 모음
이번 름에 여행 다니면서 사진/동영상 엄청 많이 찍어 두셨나요? ^^ ● ‘Google 포토’가 답이다~ 구글포토(Google photo)는 무제한 용량에 평생 무료인 사진&동영상 백업 서비스입니다. 거기에 이미지를 AI분석해두기 때문에 기가막힌 검색능력을 갖추고 있고 알아서 편집까지 해주는 자동편집/추천기능은 덤~ 특히 아이폰의 고속연사사진, 슬로모션영상, 라이브포토 기능까지 그대로 구현해주니 안쓰면 손해인 최고의 서비스입니다. ______ * 구글포토 리뷰 및 사용방법 보기 ☞ 애플 앱스토어 / 구글 플레이 ● '알파카(Alpaca)'로 베스트샷만 남기기 우리는 보통 같은 장면을 여러장 찍지 않나요? 한 장은 인생샷 나오겠지 싶어 다작한 사진들 중 베스트 컷만 골라 남기는데 가장 적합한 앱이 알파카입니다. 비슷한 사진을 따로 모아서 그루핑해 보여주기 때문에 여행사진처럼 다량의 사진을 찍었을 때 가장 잘 나온 것만 골라내고 삭제해 버리기 좋아요. _____ * Alpaca 리뷰 및 사용법 ☞ 애플 앱스토어 ※ 아이폰전용앱으로 안드로이드폰은 'Duplicate photo finder'를 대신 추천합니다 ● ‘구글포토’가 공유의 신이다~ 구글포토에서 앨범을 만들어 공유하기 구글포토에 백업해 놓은 사진/영상 중에 공유할 것을 골라 앨범으로 만드세요. 그리고 그 앨범의 링크를 공유링크로 만들어 링크만 전달하면 모든 사진 공유 끝! 링크를 클릭하면 포토앨범 게시물처럼 보여줘서 댓글이나 하트도 남길 수 있어요. ● ‘Gopro ‘Quik’을 아는 순간 이미 크리에이터 Gopro Quik은 자동 동영상 제작 앱 입니다. 사진과 동영상을 다 불러들여 놓고 영상패턴 버튼을 하나씩 눌러보면 이미 여러 버전으로 여행스케치 영상들이 완성되어 있답니다. 그저그런 영상이 아니고 프로 제작자가 몇 날을 꼬박 만들어야 할 만큼의 퀄리티라니, 와우~ 그저 고르기만 하세요. ______ * Gopro Quik 리뷰/사용법 ☞ 애플 앱스토어 / 구글 플레이 ● ‘maptales’면 여행경로를 한 방에! 맛집, 까페, 공원 어디든 사진의 GPS정보를 읽어 지도에 여정을 매칭시켜 줍니다. _____ * maptales 리뷰/사용법 ☞ 애플 앱스토어 ※ 코스별로 기록하는 여행정리 어플 더 추천해요 * '여행노트 (아이폰 / 안드로이드폰 )
생각과 마음의 차이
공자가 나라에 관리로 일하고 있는 조카 '공멸'에게 질문했습니다. "네가 일하며 얻은 것은 무엇이며 잃은 것은 무엇이냐?" 공멸은 한숨을 쉬며 대답했습니다. "제가 얻은 것은 한 가지도 없는데  잃은 것은 무려 세 가지나 있습니다. 첫째, 아직 제가 많이 부족하여 해야 할 공부가 많은데  일이 너무 많아 공부를 제대로 못했고 둘째, 보수가 너무 적어 부모님을 봉양하기도 어렵고 주변 사람들을 대접하지 못해 평판이 나빠지고 있습니다. 셋째, 관리 일이 너무 바쁘고 시간이 없어서 매일 늦은 시간까지 일해야 하다 보니 친구들과 멀어지게 되었습니다." 이후 공자는 공멸과 같이 관리로 일하는 제자 '자천'에게 같은 질문을 했습니다. 그 질문에 자천은 대답했습니다. "잃은 것이라니요? 그런 것은 없습니다. 그런데 얻은 것은 세 가지나 있습니다. 첫째, 일하면서 배운 것을 실행해보게 되어  배운 내용이 더욱 확실해졌습니다. 둘째, 받은 보수로 조촐하게라도 주변 사람들에게 대접하니 사람들과 더욱 친숙해졌습니다. 셋째, 친구들과 만날 시간을 만들기 위해 제 업무를 더 정확하고 빠르게 하도록 노력했더니  제 능력도 높아지고 친구들과의 우정도  더욱 두터워졌습니다." 컵에 물이 반만 담겨 있는 것을 보고 누구는 '컵에 물이 반밖에 없네'라고 하고 누구는 '컵에 물이 반이나 차 있네'라고 합니다. 똑같은 것이 주어졌어도 그것을 바라보는 차이를 잘 보여주는 이야기입니다. 그러면 컵의 남은 반을 마저  채울 수 있는 사람은 누구일까요? 당연히 자신에게 주어진 것의 소중함을 잘 알고 있는 사람입니다. # 오늘의 명언 우리에게는 현재의 인생에 불만을 품을 어떠한 권리도 없다. 자신의 인생에 도저히 만족할 수 없다면, 자기 자신에게 불만을 품고 있다는 증거이다. - 레프 톨스토이 - =Naver "따뜻한 하루"에서 이식해옴..... #불만 #만족
중국마케팅 콰이쇼우 콰이의 팔로워 증대 통한 왕홍 이 되기 위한 방안
인친님 이웃님들 오늘은 중국마케팅 콰이쇼우 콰이의 팔로워 증대 통한 왕홍 이 되기 위한 방안을 살펴보도록 하겠습니다. 우선 아래와 같이 유입량을 높이기 위한 5가지 미션 항목을 살펴보도록 하실께요 유입량을 높이기 위한 5가지 미션항목 첫번째,통청(同城)즉 같은지역내 추천이 가장큰 비중을 차지함 ->기초가 되는 팬이 없을 때 作品/작품(콘텐츠)의 퀄리티가 없을 때 통청(같은지역내) 할당해주는 트래픽(유입량) 이 주력임 두번째,발견(发现)의 추천 은 일반 비중을 차지함 -> 아직 작품(콘텐츠)가 콰이쇼우 공식사이트의 인정을 받지못하므로 주는 추천량의 거의 전무하다고 보면됨 세번째, 인기추천 ->왜 많은 사람들이 666을 외치며 더블클릭을 하고, 팔로워 한다. 이유는더블클릭하는 것을 좋아라하며 좋아하는 사람들은 지속적으로 인기추천 증대의 유입량 을 가져옴. 통청말고 제2대 주력 카테고리임. 네번째, 买头条(마이토우티아오= 도우인 dou+ or웨이보 펀스토우티아오나) ->현재팬수대비 5배이상의 노출량과 팬수 증대 효과를 가져온다. 다섯번째,팬 팔로워 확보를 1000명으로한다. 이렇게 만한다면 무료 노출량이 팬수의 3배에서 6배를 가지고 올것이다. *정리해서 이야기 하자면 신규 계정 일경우,통청(같은지역)의 팔로워와 작품(콘텐츠)의질은 빠르게 향상되어야할 중요부분이다 또한, 팬덤이 될만한 팬(팔로워)를 만들고 싶다면 아래의 ?가지 부분을 생각해 보시기 바랍니다. 1).본인이 가장 쉽게 따라할 수 있는 태그를 찾고,카피(미러링)을 배우며 최소 3개부터 5개의 콘텐츠관련 배포를 진행합니다. 2).많은 비용을 필요로 하지않기 때문에 买头条를 활용해보도록 하자. 3).맞팔작업(互粉)을 진행하며되는데 보편적으로 위챗그룹,QQ그룹,바이두TIEBA를 통하여 본인이 키우고 있는 링크를 올리고 서로 팔로워 작업을 진행 합니다. 4).본인이 좋아하는 카테고리 의 팬수가 많은 왕홍 콘텐츠에 진정성 있는 리뷰(댓글)을 달면 빠르게 팔로워를 확보할수있다. 5)방송을 하는방법도 진정성 있는 팬을 확보하는 방법이니 고민을 해보자. 6)본인이 생각하는 태그를 연구하고 10개 정도의 태그를 모두 채우는 것이 검색량(노출량)을 증가시킬수있다 7)이슈가 많은 해시태그 에 참여하며, 지속적으로 콰이쇼우 TOP랭킹을 모니터링하여 콘텐츠 배포를 할 때 꼭 추가시키도록 한다. 오늘 포스팅보시고 궁금하신점이 있으시면 댓글 달아주세요 남은 설날연휴도 즐겁게 보내시길 소망합니다. 짜이지엔