2017-05-08 8 views
0

저는 최근에 BLE 비컨을 기반으로 한 실내 포지셔닝 프로젝트를 진행하고 있습니다.Android 기기에서 스캔 할 수있는 비컨 수는 몇 개인가요?

내 Android 앱에 Estimote 또는 Android Beacon Library를 포함 시키려고했지만 내 장치 (Zenfone3, HTC X9)는 약 100 개의 비콘을 약 100 개의 비콘을 검색 할 수있었습니다. 벽.

우리 앱의 iOS 버전과 달리 매초 50-80 개의 비콘을 스캔 할 수 있습니다. Android 기기에서 얼마나 많은 비콘을 스캔 할 수 있는지 궁금합니다. 그리고 더 많은 표지 광고를받을 수있는 방법이 있습니까? 그것은 정말로 안드로이드의 블루투스 API 또는 onbroad 블루투스 칩셋에 임계 값을 가지고 있습니까?


업데이트 (2017년 5월 8일 16시 17분) :

나는 모든 비콘이 작동하는지 확신했습니다. Radius Network의 "Locate"를 사용하여 근처의 표지를 스캔하고 내 공간에 실제로 50 개 이상의 표지가 있는지 확인합니다.


업데이트 (2017년 5월 10일 10시) :

친애하는 에밀, 당신의 성실한 응답을 당신을 감사합니다. 다음은 내 해결 방법입니다. 3 가지 테스트를 거쳤습니다.

케이스 (1) (100 비컨) : X 100m 500m 대한 공간에, I는 비컨의 다른 번호를 배포 매초 약 16 개의 서로 다른 장치들로부터 광고들을 수신한다.

케이스 2 (50 비컨) : 매초 약 15 개의 서로 다른 장치로부터 광고를 수신합니다.

사례 3 (20 개의 비컨) : 매초 약 14 개의 서로 다른 장치로부터 광고를 수신합니다.

내가 달성하고 싶은 것은 모든 기기에서 매초마다 광고를 수신하고 싶다는 것입니다. 귀하의 요구를 충족시키기 위해 어떤 접근 방식을 제공해 주시겠습니까? .

05-04 12:42:24.460 C4:BE:7B:5B:60:74 -87 
05-04 12:42:25.055 C4:BE:C8:F6:DD:28 -84 
05-04 12:42:25.066 C4:BE:C8:F6:DD:28 -84 
05-04 12:42:25.075 C4:BE:5F:55:74:AE -90 
05-04 12:42:25.084 C4:BE:5F:55:74:AE -90 
05-04 12:42:25.090 C4:BE:14:70:C7:F1 -91 
05-04 12:42:25.100 C4:BE:14:70:C7:F1 -91 
05-04 12:42:25.134 C4:BE:BB:AD:8A:B3 -91 
05-04 12:42:25.163 C4:BE:BB:AD:8A:B3 -91 
05-04 12:42:25.169 C4:BE:D7:80:E1:34 -89 
05-04 12:42:25.174 C4:BE:D7:80:E1:34 -89 
05-04 12:42:25.536 C4:BE:5D:90:5C:86 -79 
05-04 12:42:25.543 C4:BE:5D:90:5C:86 -79 
05-04 12:42:25.559 C4:BE:20:20:C9:69 -88 
05-04 12:42:25.564 C4:BE:20:20:C9:69 -88 
05-04 12:42:25.986 C4:BE:C1:D9:CB:5E -86 
05-04 12:42:25.999 C4:BE:C1:D9:CB:5E -86 
05-04 12:42:26.007 C4:BE:CD:AA:AE:DD -94 
05-04 12:42:26.016 C4:BE:CD:AA:AE:DD -94 
05-04 12:42:26.038 C4:BE:E7:F1:88:EE -89 
05-04 12:42:26.044 C4:BE:E7:F1:88:EE -89 
05-04 12:42:26.051 C4:BE:E9:AE:45:03 -83 
05-04 12:42:26.056 C4:BE:E9:AE:45:03 -83 
05-04 12:42:26.063 C4:BE:97:5D:B7:50 -95 
05-04 12:42:26.071 C4:BE:97:5D:B7:50 -95 
05-04 12:42:26.076 C4:BE:EF:15:EB:C3 -77 
05-04 12:42:26.082 C4:BE:EF:15:EB:C3 -77 
05-04 12:42:26.086 C4:BE:35:94:B2:3D -70 
05-04 12:42:26.092 C4:BE:35:94:B2:3D -70 
05-04 12:42:26.644 C4:BE:5F:55:74:AE -92 
05-04 12:42:26.667 C4:BE:5F:55:74:AE -92 
05-04 12:42:26.693 C4:BE:7B:5B:60:74 -86 
05-04 12:42:26.702 C4:BE:7B:5B:60:74 -86 
05-04 12:42:26.708 C4:BE:D7:80:E1:34 -82 
05-04 12:42:26.717 C4:BE:D7:80:E1:34 -82 
05-04 12:42:26.720 C4:BE:3B:29:8A:42 -93 
05-04 12:42:26.724 C4:BE:3B:29:8A:42 -93 
05-04 12:42:26.731 C4:BE:4F:21:CF:81 -94 
05-04 12:42:26.734 C4:BE:4F:21:CF:81 -94 
05-04 12:42:26.738 C4:BE:86:4F:C2:8D -87 
05-04 12:42:26.742 C4:BE:86:4F:C2:8D -87 
05-04 12:42:26.746 C4:BE:E7:F1:88:EE -88 
05-04 12:42:26.750 C4:BE:E7:F1:88:EE -88 
05-04 12:42:26.753 C4:BE:20:20:C9:69 -86 
05-04 12:42:26.757 C4:BE:20:20:C9:69 -86 
05-04 12:42:26.760 C4:BE:BB:AD:8A:B3 -88 
05-04 12:42:26.763 C4:BE:5D:90:5C:86 -79 
05-04 12:42:26.767 C4:BE:BB:AD:8A:B3 -88 
05-04 12:42:26.770 C4:BE:5D:90:5C:86 -79 
05-04 12:42:27.113 C4:BE:6F:53:2A:B3 -73 
05-04 12:42:27.133 C4:BE:6F:53:2A:B3 -73 
05-04 12:42:27.151 C4:BE:62:C4:68:38 -82 
05-04 12:42:27.160 C4:BE:62:C4:68:38 -82 
05-04 12:42:27.166 C4:BE:F2:A7:4F:4E -88 
05-04 12:42:27.170 C4:BE:F2:A7:4F:4E -88 
+0

기기의 광고 간격이란 무엇입니까? – Emil

+0

우리 장치는 채널 39에서 100ms 전송 간격의 BLE 비컨입니다. –

답변

0

광고 간격이 100ms 인 광고 장치가 100 대 있으면 광고 패킷의 100 %를받을 수 없습니다. 첫 번째 안드로이드 장치는 100 % 듀티 스캔 간격을 사용하더라도 시간의 100 %를 실제로 스캔하지 않습니다. 일부 시점에서는 Wi-Fi 나 다른 장치의 연결 이벤트 예약과 같은 다른 용도로 안테나를 사용해야하기 때문입니다. 채널 39에서만 광고하는 경우 스캐너가 광고 채널 사이를 순환하기 때문에 모든 패킷의 약 1/3이 손실됩니다. 또한 패킷을 전송하는 데 수백 마이크로 초가 걸리기 때문에 공중에 충돌하는 광고가있을 가능성이 큽니다.리시버는 그럴 때 쓰레기를받을 것입니다.

+0

환경에서 블루투스 광고를 수집 한 경험과 경험을 공유해 주시겠습니까? 비컨 수, 비콘 전송 간격 또는 그와 비슷한 것? 감사합니다. –

+0

대부분의 기기는 1 초 정도의 광고 간격을 가지고 있다고 생각합니다. 어떤 정보를 원하니? 내가 추측 할만한 흥미로운 사실은별로 없다. 우리는 장치 존재 여부 이외에 광고 데이터를 사용하지 않으므로 일부 패킷이 삭제되면 문제가되지 않습니다. 광고 패킷이 1 MBit/s로 보내지고 광고 데이터 + 표제 주소에 80 비트의 오버 헤드가 있고 광고 간격에 따라 충돌 가능성을 파악할 수있는 몇 가지 기본 계산을 수행하면됩니다. – Emil

0

제한 사항이 없어야한다 : 나는 BluetoothAdapter.getBluetoothLeScanner() startScan (ScanCallback)에서 ScanResult에서 광고를받을 때마다

다음

내가 얻을 로그입니다. Android의 Bluetooth 스택은 광고 및 스캔 응답을 애플리케이션으로 전달합니다. 우리는 수백 개의 광고 장치를 보유하고 있으며 여전히 잘 작동합니다.

패킷 형식 등으로 인해 전혀 작동하지 않는 특정 장치의 광고가 있습니까?

+0

친애하는 Emil 님, 진심으로 감사드립니다. 내가 직면하고있는 도전 과제는 매 초 ** ** 모든 기기 ** ** 모든 광고 **를 받고 싶다는 것입니다. –

+0

내 업데이트를 참조하십시오. –