2016-11-30 4 views
0

사용자가 요청할 때 휴대폰에서 오는 Bluetooth LE 요청에 응답하는 하드웨어 (동글이라고 함)를 만듭니다. 모든 통신은 전화에서 시작되며 동글은 절대로 통신을 시작하지 않습니다. 의사 소통은 발생하면 매우 드물 것이며 (하루에 한 번) 짧을 것입니다 (몇 백 바이트). 통신이 발생하면 사용자가 동글과 수동으로 상호 작용하지 않아도 동글이 몇 초 안에 응답하기를 원합니다 (예 : 사용자가 동글에있는 버튼을 눌러서 "깨우기 및 지불" 주의").Bluetooth LE - 클라이언트를 결정하는 서버

전력 사용에 대해 생각해 보면 기기가 블루투스 스캔을 할 때 스캔을하는 기기는 대부분 수신/수신 중이며 광고를하는 기기는 전송을하고있는 것으로 보입니다 (맞습니까?).

그러나 this one 같은 페이지

Slave (or “peripheral“) devices advertise and wait for connections. Usually, the slave is a small device like a fitness tracker or a smartwatch. 

왜 작은 장치 (예를 들어, 피트니스 추적기) 영원히 몇 초마다 광고 /,이 방송을 앉아있을 것이다라고 (이 현재 아무것도 연결되지 않은 가정)? 모든 종류의 힘을 사용하지 않습니까? 소형 장치가 대신 듣기 (스캔) 모드에 있어야하는 것이 더 합리적이지 않습니까?

일단 연결되면 "연결된 상태"가 유지되어 두 연결된 장치가 다른 장치가 아직 있다는 것을 "알 수 있습니까?"

답변

4

nRF51822 (8.5.2 참조)과 같은 칩 사양 시트를 작성해 보겠습니다. RX (13mA) 및 TX @ 0dBm (10.5mA)에서 전력 소모량은 거의 동일합니다. TX/RX 전력 비율은 동일합니다. forotherchipsonthe 시장 : 약 1x.

전송은 낮은 듀티 사이클 동작입니다 (200ms마다 TX로 전송하면 200ms마다 0.1 %). 광고용 평균 전력 소비는 낮습니다 (10.5mA * 0.001 + 5uA * 0.999). 반면 수신은 디자인 상 연속적입니다. 실제로 패킷이 전송 될 때를 알지 못하는 경우 패킷을 놓치지 않으려면 100 % 듀티 사이클에 가까워 야합니다 (13mA, 연속).

그래서 연결 설정에서 주변 장치 (광고)는 대부분의 시간을 잘 수 있으므로 중앙 (수신 대기)보다 전력을 절약합니다.

일단 연결되면 Central (Master) 및 Peripheral (Slave) 모두 "슬립 클럭"으로 시간을 추적하고 시간 슬롯 방식으로 일어나서 동기화하여 다른 사람의 존재를 확인합니다. 슬롯은 사양에서 "연결 이벤트"라고합니다. 연결 이벤트 사이에는 둘 다 잠자기 상태가되므로 연결이 지속되는 동안 동등하게 전원이 절약됩니다. (잘, 주변 장치 (즉, 슬레이브)가 더 많은 전력을 절약 할 수있게 해주는 "슬레이브 대기 시간"이라는 또 다른 최적화가 있지만 여기에서는 무시해 보겠습니다.).

귀하의 경우 "동글"이 광고를해야합니다. 알림 간격은 응용 프로그램에 필요한 재접속 시간에 맞게 조정할 수 있습니다. 50-500 밀리 초가 일반적으로 사용됩니다.