2015-03-25 30 views
-1

我一直在研究Estimote beacons SDK,用於創建應用程序,其中我在6個不同的會議大廳中推出了6個estimote信標。我可以從包含我的應用程序的iPhone獲得所有信標的距離(以米爲單位)。爲了讓我使用此代碼的所有信標距離:如何找到針對iPhone的Estimote iBeacon的角度位置和距離?

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    self.title = @"Distance Demo"; 

    /* 
    * BeaconManager setup. 
    */ 
    self.beaconManager = [[ESTBeaconManager alloc] init]; 
    self.beaconManager.delegate = self; 

    self.beaconRegion = [[CLBeaconRegion alloc] initWithProximityUUID:self.beacon.proximityUUID 


    [self.beaconManager startRangingBeaconsInRegion:self.beaconRegion]; 
} 

- (void)viewDidDisappear:(BOOL)animated 
{ 
    [self.beaconManager stopRangingBeaconsInRegion:self.beaconRegion]; 

    [super viewDidDisappear:animated]; 
} 

#pragma mark - ESTBeaconManager delegate 

- (void)beaconManager:(id)manager didRangeBeacons:(NSArray *)beacons inRegion:(CLBeaconRegion *)region 
{ 
    CLBeacon *firstBeacon = [beacons firstObject]; 

    [self updateDotPositionForDistance:firstBeacon.accuracy]; 
} 

#pragma mark - 

- (void)updateDotPositionForDistance:(float)distance 
{ 
    NSLog(@"distance: %f", distance); 

} 

但我需要從iPhone設備的所有的信標精確角位置(其中包含我的應用程序)。其實我想我的應用程序產生這樣的形象:

enter image description here

謝謝!

+0

恐怕這對於SO來說太「寬泛」 - 對於具體的技術問題,SO更具Q&A風格,這甚至不是一個真正的編程問題(拋開寬度),而是數學問題 – 2015-03-25 12:57:26

+0

Estimote擁有室內位置SDK解決你的問題。當然,從我的經驗來看,它並不能很好地工作,但是你可以將他們的代碼用作啓動平臺或作爲參考。這是GitHub回購的鏈接:https://github.com/Estimote/iOS-Indoor-SDK – ApperleyA 2015-03-25 13:16:10

回答

0

廣闊回答一個寬泛的問題:

,如果你知道它們之間的信標的相對位置 - 你可以把它們給用戶位置......你能三角測量用戶的位置,如果你看到3信標。

這是行不通的,因爲你不會有確切的距離的信標。你可能會認爲你做了,但是信標如此瘋狂地波動,以至於這是不可能的

1

在覈心位置和原始Estimote SDK中都沒有開箱即用的解決方案來獲取信標或用戶的角位置信標(有一個獨立於傳統SDK的工具,下面會解釋)。但是,您可以實施三角測量,以使用距離測量和信標的固定位置來確定角度。請記住,由於無線電波的性質,在沒有大量降噪的情況下,測量值會波動很多。所以如果你想讓這個工作可靠,那麼需要做大量的數學工作。

在Estimote,我們也有室內位置SDK,它專門用於映射位置並提供室內導航解決方案。我們仍在努力改善定位的準確性和穩定性:自2014年10月推出以來,我們已發佈了一些重大更新,但仍有空間。它應該足以讓你離開地面,所以請隨時在這裏查看:http://estimote.com/indoor/

乾杯。

相關問題