BASIC4MCU | 질문게시판 | 답변 : BLE와 관련해서 블루투스 1:N 통신 질문드립니다
페이지 정보
작성자 master 작성일2018-09-02 09:15 조회12,039회 댓글2건본문
질문 내용이 많으니 복사해서 답변을 적어드리죠
//
저는 현재 1대의 안드로이드 스마트폰을 마스터로 하여 여러 개의 아두이노에 각각 블루투스 모듈을 장작하고 슬레이브로서 다중 제어를 하고자 합니다. 원래는 hc06을 사용하려 했으나 이 모듈은 1:1 통신밖에 지원하지 않는다고 이해했기에 대신 다중 제어가 가능한 BLE에 대해 알아보고자 했습니다. 알아보니 ble가 지원되는 모듈이 HM-10이라고 하더라구요.
1. 제가 다른 곳에서 이해한 원리에 의하면,
한 대의 폰(A)이 자신을 discoverable 하게 만들어서 주변에서 스캔가능하도록 만들고, RFComm server 소켓을 생성하고 외부의 RFComm 소켓이 연결되길 대기.
discoverable 한 폰(A)이 연결이 되더라도 다른 RFComm 소켓을 여러 개 생성해서 연결이 되길 기다릴 수 있고, 그럼 한 폰(A)에서 1:1 연결 여러 개를 마치 1:N 연결이 된 것 처럼 폰(A)이 관리할 수 있다는 겁니다.
이 내용에 대해서 아직 잘 이해가 가지 않는데요. 자신을 스캔가능토록 한 폰A가 소켓을 여럿 생성하고 연결을 기다린다고 하였습니다. 이 말은 만약 제가 이 폰을 중심으로 1:N 통신을 하고 싶다면, BLE 모듈이 장착된 아두이노에서 이 폰에 직접 연결을 요청하고 그걸 소켓을 생성하고 대기하던 폰A가 받아들여야 한다는 뜻인가요? 저는 연결을 시도하는 게 마스터 쪽으로 이해하고 있어서 그렇습니다만, 이 경우 아두이노쪽은 슬레이브가 맞는 건가요??
마스터와 슬레이브 개념은 UART 시리얼통신에 관한 부분이 아닙니다.블루투스의 무선 인터페이스에 관한 부분이고
여러가지 방식의 멀티 통신에서 유사합니다.
마스터는 어느 슬레이브가 접속을 시도할지 모르니 슬레이브 접속을 기다립니다.
슬레이브는 마스터의 IP를 알고 있어야하며, 슬레이브가 마스터에 접속을 시도합니다.
지그비든 유선 이더넷이든 다 마찬가지입니다.
노트북이나 휴대폰의 블루투스는 HC-06이나 HM-10이 아닙니다.
블루투스에서는 여러가지 프로파일을 사용하는데, 프로파일이란 여러가지 다른 용도에 맞게 만든 규격으로 생각하시면 됩니다.
이 중에서 직렬통신(SPP) 프로파일이 HC-06 및 HM-10에서 사용하는 방식입니다.
PC나 휴대폰처럼 막강한 자원과 속도를 가진 OS에서 동작하는 경우에는 블루투스의 모든 기능을 사용할 수 있어서 마스터/슬레이브 변경 등도 쉽게 처리합니다.
HC-06이 마스터로 설정되었다면 휴대폰에서 접속을 시도하면 되고
HC-06이 슬레이브로 설정되어서 접속을 시도하면 접속을 허용해주기만 하면 됩니다.
HC-06 기능이 낮은 점을 생각하면 HC-06을 마스터로 설정해서 휴대폰에서 접속 해주는 편이 나을 수도 있겠습니다만, 기본적으로는 무엇으로 설정하든 통신이 되어야 정상입니다.
만약, HC-06을 슬레이브로 설정한다면 휴대폰의 블루투스 ID를 HC-06 설정에서 등록해줘야합니다.
블루투스 두 개를 동시에 연결해 본 적이 없어서 된다 안된다의 말씀은 못 드립니다.
2. 만약 다중 통신이 가능하다면, 혹시 1대의 스마트폰을 마스터로 두고, 하나의 HC06과 HM10을 슬레이브로 다중 통신이 가능할까요? 즉 1:1밖에 지원하지 않는 블루투스와 다중 통신이 가능한 블루투스를 섞어서 제어할 수 있는지 궁금합니다.
휴대폰의 블루투스는 HC-06이나 HM-10이 아니므로 멀티 통신에 관해서 고민할 필요는 없고요
두 개의 블루투스 동시 접속이 가능한지 확인하고
각각 포트가 생성된다면 동시에 처리가 가능한겁니다.
PC로보면 장치관리자에서 HC-06이 COM5으로 연결되고, HM-10이 COM7로 생성된다면
두 개의 시리얼포트가 생성 되었으니 각각 터미널창을 열어서 통신이 가능한겁니다.
3. 여러 곳을 찾아봤지만 BLE의 멀티 페어링 & 제어에 대한 예제는 찾지 못하고 전부 1:1과 관련된 소스라 공부하기가 힘들더라구요 ㅜㅜ 혹시 안드로이드 스튜디오를 이용한 BLE의 다중 통신과 관련된 예제 코드를 볼 수 있는 곳을 알 수 있을까요...?
긴 글 읽어주셔서 감사합니다.
댓글 2
조회수 12,039제이투님의 댓글
제이투 작성일즉 휴대폰은 기종마다 블루투스 멀티 통신 지원이 될 수도, 안 될 수도 있다는 말씀인가요?
master님의 댓글
master
휴대폰으로 멀티 통신을 해본 적이 없어서 모르겠습니다.
직접 해보세요