iBeacon: τι είναι, αρχή λειτουργίας beacon και ρύθμιση BLE

Συγγραφέας: IT Sectr Δημοσιεύτηκε: 2026-07-17 Χρόνος ανάγνωσης: 10 λεπ

iBeacon — είναι ένα ιδιόκτητο πρωτόκολλο της Apple για beacons Bluetooth Low Energy που επιτρέπει σε συσκευές iOS να καθορίζουν τη θέση τους μέσα σε κτίρια με ακρίβεια εκατοστού. Η βάση του πρωτοκόλλου είναι η εκπομπή πακέτων BLE με ένα μοναδικό αναγνωριστικό που περιέχει UUID, Major και Minor. Σύμφωνα με το Apple iBeacon Design Guidelines (2025), η τεχνολογία χρησιμοποιείται σε πλοήγηση σε εμπορικά κέντρα, μουσεία, αεροδρόμια και στάδια, υποστηρίζοντας παθητική ανίχνευση χωρίς ενεργή σύζευξη συσκευών.

Βασικά σημεία

  • iBeacon — ιδιόκτητο πρωτόκολλο της Apple για BLE beacons, που λειτουργεί χωρίς ενεργή σύζευξη συσκευών.
  • Το πακέτο iBeacon περιέχει τρία αναγνωριστικά: UUID (μοναδικό αναγνωριστικό οργανισμού), Major και Minor (ζώνες και σημεία).
  • Το iOS καθορίζει τρεις καταστάσεις: Immediate (<0,5 m), Near (<3 m) και Far (<30-50 m) βάσει RSSI.
  • Η παρακολούθηση περιοχής (region monitoring) επιτρέπει στην εφαρμογή να λαμβάνει ειδοποιήσεις για είσοδο και έξοδο από τη ζώνη beacon ακόμη και στο παρασκήνιο.
  • Το Android υποστηρίζει το iBeacon μέσω βιβλιοθηκών τρίτων, όπως το AltBeacon από τη Radius Networks για συμβατότητα μεταξύ πλατφορμών.

Τι είναι το iBeacon;

iBeacon — είναι μια τεχνολογία εντοπισμού εσωτερικών χώρων που αναπτύχθηκε από την Apple και παρουσιάστηκε στο WWDC 2013. Σε αντίθεση με το GPS, που δεν λειτουργεί μέσα σε κτίρια, το iBeacon χρησιμοποιεί beacons Bluetooth Low Energy — μικρές συσκευές που τροφοδοτούνται από μπαταρία και εκπέμπουν σταθερά πακέτα αναγνώρισης. Συσκευές iOS και Android λαμβάνουν αυτά τα πακέτα και υπολογίζουν την κατά προσέγγιση απόσταση μέχρι το beacon βάσει του επιπέδου σήματος (RSSI).

Ιστορία και ανάπτυξη

Το πρωτόκολλο iBeacon έγινε το πρώτο μαζικό πρότυπο BLE beacon, που εξαπολύθηκε από την Apple το 2013 στο iOS 7. Αρχικά η τεχνολογία χρησιμοποιήθηκε στο λιανικό εμπόριο: τα καταστήματα Apple Store εφάρμοσαν το iBeacon για να ενημερώνουν τους πελάτες για εκπτώσεις κατά την είσοδο σε συγκεκριμένες ζώνες. Μέχρι το 2025, η υποδομή iBeacon αριθμεί εκατομμύρια εγκατεστημένα beacon σε όλο τον κόσμο, αν και εμφανίστηκαν εναλλακτικά πρωτόκολλα — το Eddystone από τη Google και το AltBeacon με ανοικτό κώδικα.

Πεδία εφαρμογής

Το iBeacon χρησιμοποιείται σε πέντε κύρια σενάρια: πλοήγηση εσωτερικών χώρων (εμπορικά κέντρα, αεροδρόμια, μουσεία), ειδοποιήσεις περιεχομένου (εκπτώσεις κατά την είσοδο σε κατάστημα), αυτοματοποίηση εργασιακών διαδικασιών (σήμανση παρουσίας), εφοδιασμός και διαχείριση αποθήκης, καθώς και τουριστικοί οδηγοί με αυτόματη αναπαραγωγή περιεχομένου κατά την προσέγγιση σε αντικείμενο. Σύμφωνα με την ABI Research (2025), η αγορά BLE beacon υπολογίζεται σε 3,2 δισεκατομμύρια συσκευές σε λειτουργία.

Δομή πρωτοκόλλου iBeacon και μορφή πακέτου

Το πακέτο iBeacon — είναι ένα Advertising PDU (Protocol Data Unit), που μεταδίδεται στο διαφημιστικό κανάλι BLE σε συχνότητες 2402, 2426 και 2480 MHz. Η μορφή πακέτου είναι αυστηρά καθορισμένη και αποτελείται από τέσσερα πεδία: πρόθεμα Apple iBeacon (0x4C000215), UUID 16 byte, τιμές Major 2 byte και Minor 2 byte, καθώς και TX Power 1 byte για βαθμονόμηση απόστασης. Το συνολικό μέγεθος δεδομένων είναι 30 byte, που χωράει σε ένα BLE Advertising PDU.

ΠεδίοΜέγεθοςΠεριγραφή
Πρόθεμα Apple9 byteCompany ID (0x004C) + iBeacon type (0x0215)
UUID16 byteΜοναδικό αναγνωριστικό οργανισμού ή εφαρμογής
Major2 byteΑναγνωριστικό ζώνης (0-65535), π.χ. αριθμός καταστήματος
Minor2 byteΑναγνωριστικό σημείου (0-65535), π.χ. αριθμός ραφιού
TX Power1 byteΒαθμονομημένη ισχύς σήματος σε απόσταση 1 μέτρου (dBm)

Ιεραρχία UUID, Major και Minor

Οι αναγνωριστές iBeacon σχηματίζουν μια τριεπίπεδη ιεραρχία. Το UUID εκχωρείται σε έναν οργανισμό (π.χ. αλυσίδα καταστημάτων), το Major — σε ένα συγκεκριμένο κατάστημα ή όροφο, το Minor — σε ένα συγκεκριμένο σημείο μέσα στη ζώνη (ταμείο, τμήμα προϊόντων). Αυτή η ιεραρχία επιτρέπει στην εφαρμογή να αντιδρά ευέλικτα σε διαφορετικά επίπεδα περιεχομένου: κατά την είσοδο σε ένα κατάστημα (UUID + Major) η εφαρμογή μπορεί να φορτώσει τον χάρτη ορόφου, και κατά την προσέγγιση σε ένα συγκεκριμένο τμήμα (Minor) να εμφανίσει πληροφορίες προϊόντος.

TX Power και βαθμονόμηση

Το πεδίο TX Power — είναι η τιμή αναφοράς του επιπέδου σήματος (RSSI) σε απόσταση 1 μέτρου από το beacon. Μετά τη λήψη του πακέτου, η συσκευή καταγράφει το πραγματικό RSSI και υπολογίζει την απόσταση σύμφωνα με τον τύπο: distance = 10^((TX_Power - RSSI) / (10 * n)), όπου n — ο συντελεστής εξασθένησης περιβάλλοντος (συνήθως 2-4). Η σωστή βαθμονόμηση του TX Power είναι κρίσιμη για την ακρίβεια τοποθέτησης: ένα σφάλμα 1 dBm δίνει απόκλιση έως 30% σε απόσταση 5 μέτρων.

Ζώνες εγγύτητας: Immediate, Near, Far

Το iOS καθορίζει τρεις ζώνες εγγύτητας βάσει της υπολογισμένης απόστασης από το beacon: Immediate (λιγότερο από 0,5 μέτρα), Near (από 0,5 έως 3 μέτρα) και Far (από 3 έως 30-50 μέτρα ανάλογα με τις συνθήκες). Η ακριβής απόσταση δεν αναφέρεται — μόνο η κατηγορία. Αυτό γίνεται σκόπιμα: το RSSI υπόκειται σε παρεμβολές, ανακλάσεις σήματος και στην επίδραση του ανθρώπινου σώματος, επομένως οι κατηγορίες παρέχουν πιο σταθερό καθορισμό θέσης.

Immediate — άμεση εγγύτητα

Immediate — η ζώνη άμεσης επαφής, όταν η συσκευή βρίσκεται λίγα εκατοστά από το beacon. Χρησιμοποιείται για σενάρια που απαιτούν μέγιστη ακρίβεια: πληρωμή μέσω τερματικού, άνοιγμα ψηφιακής κλειδαριάς, επαλήθευση σε σημείο ελέγχου. Στη ζώνη Immediate, το RSSI είναι συνήθως από -30 έως -60 dBm.

Near — μεσαία απόσταση

Η ζώνη Near — η κύρια ζώνη εργασίας του iBeacon, που καλύπτει απόσταση από 0,5 έως 3 μέτρα. Χρησιμοποιείται για πλοήγηση εσωτερικών χώρων — για παράδειγμα, κατά την προσέγγιση σε μια βιτρίνα με προϊόντα, η εφαρμογή εμφανίζει λεπτομερείς πληροφορίες. Στη ζώνη Near, το RSSI κυμαίνεται από -60 έως -80 dBm με βαθμονόμηση TX Power = -59 dBm.

Far — μακρινή απόσταση

Far — η μέγιστη ζώνη ανίχνευσης σήματος beacon. Χρησιμοποιείται για παρακολούθηση εισόδου στην περιοχή (για παράδειγμα, είσοδος σε εμπορικό κέντρο). Σε απόσταση Far, το RSSI είναι συνήθως ασθενέστερο από -80 dBm, και η ακρίβεια καθορισμού απόστασης μειώνεται σημαντικά. Για παρακολούθηση εισόδου χρησιμοποιούνται system API region monitoring, όχι καθορισμός ακριβούς ζώνης.

Παρακολούθηση περιοχής σε iOS

Περιοχή iBeacon — είναι μια εικονική περιοχή που καθορίζεται από UUID (και προαιρετικά Major + Minor). Το iOS επιτρέπει παρακολούθηση έως 20 περιοχών ταυτόχρονα με CLLocationManager. Κατά την είσοδο σε μια περιοχή, το σύστημα αφυπνίζει την εφαρμογή ακόμη και στο παρασκήνιο ή σε απενεργοποιημένη κατάσταση και στέλνει ειδοποίηση μέσω του delegate locationManager:didEnterRegion. Κατά την έξοδο από την περιοχή, καλείται το locationManager:didExitRegion.

swift
import CoreLocation

let locationManager = CLLocationManager()
let region = CLBeaconRegion(
    uuid: UUID(uuidString: "E2C56DB5-DFFB-48D2-B060-D0F5A71096E0")!,
    identifier: "myBeaconRegion"
)
locationManager.delegate = self
locationManager.requestAlwaysAuthorization()
locationManager.startMonitoring(for: region)

Ranging — καθορισμός ακριβούς ζώνης

Για τον καθορισμό ζώνης (Immediate, Near, Far) χρησιμοποιείται ranging — σάρωση beacon σε πραγματικό χρόνο. Σε αντίθεση με την παρακολούθηση, το ranging λειτουργεί μόνο στην ενεργή λειτουργία της εφαρμογής και απαιτεί άδεια πρόσβασης στην τοποθεσία. Η μέθοδος locationManager:didRangeBeacons:inRegion επιστρέφει μια συστοιχία CLBeacon με πεδία proximity (CLProximity.immediate, .near, .far, .unknown), accuracy (βαθμονομημένη απόσταση σε μέτρα) και rssi.

swift
func locationManager(
    _ manager: CLLocationManager,
    didRangeBeacons beacons: [CLBeacon],
    in region: CLBeaconRegion
) {
    for beacon in beacons {
        switch beacon.proximity {
        case .immediate:
            print("Άμεση εγγύτητα")
        case .near:
            print("Κοντινή εγγύτητα")
        case .far:
            print("Μακρινή εγγύτητα")
        default:
            print("Άγνωστη εγγύτητα")
        }
    }
}

iBeacon σε Android: AltBeacon και ενσωμάτωση μεταξύ πλατφορμών

Το Android δεν έχει ενσωματωμένη υποστήριξη για iBeacon, καθώς το πρωτόκολλο είναι μια ιδιόκτητη λύση της Apple. Ωστόσο, με βιβλιοθήκες τρίτων, όπως το AltBeacon από τη Radius Networks (τώρα μέρος του οργανισμού Open Beacon), οι προγραμματιστές μπορούν να ενσωματώσουν το iBeacon σε εφαρμογές Android. Η βιβλιοθήκη AltBeacon υλοποιεί σάρωση πακέτων BLE, ανάλυση μορφής iBeacon και εξομοίωση ranging και παρακολούθησης περιοχών, ανάλογη με το API iOS.

kotlin
val beaconManager = BeaconManager.getInstanceForApplication(context)
beaconManager.beaconParsers.add(
    BeaconParser().setBeaconLayout(
        "m:2-3=0215,i:4-19,i:20-21,i:22-23,p:24-24"
    )
)
beaconManager.backgroundBetweenScanPeriod = 5000
beaconManager.foregroundScanPeriod = 1100
beaconManager.bind(this)

Ανάλυση πακέτου iBeacon σε Android

Η μορφή ανάλυσης iBeacon στη βιβλιοθήκη AltBeacon καθορίζεται από τη συμβολοσειρά layout: „m:2-3=0215” — έλεγχος δύο byte του δείκτη iBeacon, „i:4-19” — UUID 16 byte, „i:20-21” — Major, „i:22-23” — Minor, „p:24-24” — TX Power. Η ίδια μορφή υποστηρίζεται για Eddystone και άλλα πρωτόκολλα, καθιστώντας το AltBeacon μια καθολική βιβλιοθήκη για εργασία με BLE beacons σε Android.

Περιορισμοί σε Android

Σε Android, η εργασία με iBeacon έχει τρεις βασικούς περιορισμούς: η σάρωση παρασκηνίου περιορίζεται από κατασκευαστές (Xiaomi, Huawei, Samsung συχνά σκοτώνουν διεργασίες παρασκηνίου), η ακρίβεια RSSI είναι χαμηλότερη από iOS λόγω διαφορών σε στοίβες BLE, και για σάρωση απαιτείται άδεια ACCESS_FINE_LOCATION από Android 6.0 και BLUETOOTH_SCAN από Android 12.

iBeacon vs Eddystone: σύγκριση πρωτοκόλλων beacon

Eddystone — ανοικτό πρωτόκολλο BLE beacon από τη Google, που παρουσιάστηκε το 2015. Σε αντίθεση με το iBeacon, το Eddystone υποστηρίζει τέσσερις τύπους πακέτων: Eddystone-UID (σταθερό αναγνωριστικό), Eddystone-URL (μετάδοση URL για Physical Web), Eddystone-TLM (τηλεμετρία beacon — επίπεδο μπαταρίας, θερμοκρασία) και Eddystone-EID (κρυπτογραφημένο αναγνωριστικό για προστασία από κλωνοποίηση). Παρόλο που η Google σταμάτησε την ανάπτυξη του Physical Web το 2022, το πρωτόκολλο Eddystone συνεχίζει να χρησιμοποιείται σε εταιρικές λύσεις.

ΠαράμετροςiBeaconEddystone
ΙδιοκτήτηςAppleGoogle (ανοικτό)
Τύποι πακέτων1 (UID)4 (UID, URL, TLM, EID)
ΔεδομέναUUID+Major+MinorID/URL + τηλεμετρία
Εγγενής υποστήριξη iOSΝαι (CoreLocation)Όχι (μέσω CoreBluetooth)
Physical WebΌχιΝαι (Eddystone-URL)
ΑσφάλειαΧωρίς κρυπτογράφησηEID με περιστροφή κλειδιών

Επιλογή πρωτοκόλλου για το έργο

Η επιλογή μεταξύ iBeacon και Eddystone εξαρτάται από την πλατφόρμα στόχο και το σενάριο χρήσης. Το iBeacon είναι προτιμότερο για εφαρμογές iOS χάρη στην εγγενή ενσωμάτωση με CoreLocation και παρακολούθηση περιοχών στο παρασκήνιο. Το Eddystone είναι καταλληλότερο για έργα προσανατολισμένα σε Android και σενάρια Physical Web, όπου το beacon μεταδίδει URL χωρίς εγκατάσταση εφαρμογής. Για έργα μεταξύ πλατφορμών, χρησιμοποιείται συχνά το AltBeacon που υποστηρίζει και τα δύο πρωτόκολλα.

Συνηθισμένα προβλήματα και περιορισμοί iBeacon

Κατά την υλοποίηση iBeacon, οι προγραμματιστές αντιμετωπίζουν μια σειρά περιορισμών που πρέπει να ληφθούν υπόψη στο στάδιο σχεδιασμού της αρχιτεκτονικής. Η μη σωστή λήψη υπόψη αυτών των παραγόντων οδηγεί σε ασταθή λειτουργία πλοήγησης, ψευδείς ενεργοποιήσεις και ταχύτερη από την αναμενόμενη αποφόρτιση μπαταρίας beacon.

Επίδραση περιβάλλοντος στο RSSI

Το επίπεδο σήματος RSSI υπόκειται σε σημαντικές διακυμάνσεις λόγω ανακλάσεων από τοίχους, μεταλλικών κατασκευών, παρουσίας ανθρώπων και άλλων ασύρματων συσκευών στη ζώνη 2,4 GHz. Σε εσωτερικό χώρο, η διασπορά RSSI για ένα beacon μπορεί να φτάσει 10-15 dBm ανά λεπτό, καθιστώντας τον υπολογισμό απόστασης ανακριβή χωρίς χρήση φίλτρων (εξομάλυνση κινητού μέσου όρου, φιλτράρισμα Kalman).

Όριο παρακολούθησης περιοχής

Το iOS υποστηρίζει παρακολούθηση όχι περισσότερων από 20 περιοχών ταυτόχρονα ανά εφαρμογή. Για έργα που απαιτούν κάλυψη μεγάλης περιοχής (αεροδρόμιο, στάδιο), αυτό δεν είναι αρκετό. Λύση — δυναμική εναλλαγή περιοχών: κατά την είσοδο σε μια περιοχή, οι γειτονικές ενεργοποιούνται και οι απομακρυσμένες απενεργοποιούνται.

Χρόνος απόκρισης παρακολούθησης

Η καθυστέρηση μεταξύ εισόδου σε μια περιοχή και λήψης ειδοποίησης μπορεί να είναι από 1 έως 30 δευτερόλεπτα ανάλογα με τις συνθήκες. Το iOS σαρώνει beacons περιοδικά για εξοικονόμηση μπαταρίας, επομένως δεν πρέπει να αναμένεται άμεση αντίδραση. Για χρονικά κρίσιμα σενάρια (άνοιγμα πόρτας κατά την προσέγγιση), συνιστάται η χρήση Immediate ranging, αλλά αυτό λειτουργεί μόνο στην ενεργή λειτουργία της εφαρμογής.

Συχνές Ερωτήσεις

Τι είναι το iBeacon;

iBeacon — είναι το πρωτόκολλο της Apple για beacons Bluetooth Low Energy που επιτρέπει σε συσκευές iOS και Android να καθορίζουν τη θέση τους μέσα σε κτίρια με ακρίβεια εκατοστού βάσει ανάλυσης του επιπέδου σήματος (RSSI) των λαμβανόμενων πακέτων BLE.

Σε τι διαφέρει το iBeacon από το Bluetooth;

Bluetooth — είναι ένα γενικό πρωτόκολλο ασύρματης επικοινωνίας για μεταφορά δεδομένων μεταξύ συσκευών που απαιτεί σύζευξη. iBeacon — ένα εξειδικευμένο πρωτόκολλο πάνω από BLE, που προορίζεται αποκλειστικά για εκπομπή αναγνωριστικών χωρίς εγκατάσταση σύνδεσης. Τα iBeacon beacons δεν μεταδίδουν δεδομένα — απλώς αναφέρουν την παρουσία τους.

Πώς λειτουργεί το iBeacon χωρίς σύνδεση;

iBeacon λειτουργεί σε λειτουργία Advertising — το beacon εκπέμπει συνεχώς πακέτα BLE με πληροφορίες ID. Η συσκευή λαμβάνει το πακέτο αλλά δεν συνδέεται στο beacon. Αυτό εξοικονομεί μπαταρία του beacon (έως 2-3 χρόνια λειτουργίας από μία CR2032) και επιτρέπει την παθητική ανίχνευση beacon χωρίς ενεργή σάρωση.

Μπορεί να βρεθεί iPhone μέσω iBeacon;

Όχι, το iBeacon δεν προορίζεται για εύρεση συσκευών. Τα iBeacon beacons είναι σταθεροί πομποί, και το iPhone λειτουργεί ως δέκτης. Το iPhone δεν εκπέμπει σήματα iBeacon (εκτός από τη λειτουργία Find My που χρησιμοποιεί άλλο πρωτόκολλο βασισμένο σε BLE). Για εύρεση τηλεφώνου χρησιμοποιούνται άλλες τεχνολογίες (δίκτυο Find My, UWB).

Πόσο μακριά λειτουργεί το iBeacon;

Η εμβέλεια του iBeacon εξαρτάται από τις ρυθμίσεις beacon και τις συνθήκες περιβάλλοντος. Τυπική εμβέλεια: Immediate — έως 0,5 m, Near — έως 3 m, Far — έως 30-50 m. Με beacon με ενισχυτή σήματος και σε ανοικτούς χώρους, η εμβέλεια μπορεί να φτάσει τα 70 m, αλλά η ακρίβεια καθορισμού απόστασης σε τέτοια απόσταση είναι ελάχιστη.

Σύνοψη

  • iBeacon — ιδιόκτητο πρωτόκολλο της Apple για BLE beacons, που λειτουργεί βάσει εκπεμπόμενων πακέτων χωρίς ενεργή σύζευξη.
  • Το πακέτο iBeacon περιέχει UUID (16 byte), Major (2 byte) και Minor (2 byte) καθώς και βαθμονόμηση TX Power.
  • Το iOS καθορίζει τρεις ζώνες εγγύτητας: Immediate (<0,5 m), Near (<3 m) και Far (<30-50 m), χρησιμοποιώντας κατηγορίες αντί για ακριβή απόσταση.
  • Η παρακολούθηση περιοχής επιτρέπει στην εφαρμογή να λαμβάνει ειδοποιήσεις εισόδου/εξόδου από τη ζώνη beacon ακόμη και στο παρασκήνιο (έως 20 περιοχές).
  • Το Android υποστηρίζει iBeacon μέσω της βιβλιοθήκης AltBeacon με ανάλυση πακέτων μέσω BeaconParser και συμβολοσειράς layout.
  • Eddystone από τη Google — εναλλακτικό ανοικτό πρωτόκολλο με υποστήριξη URL και κρυπτογραφημένων αναγνωριστικών EID.
  • Κύριοι περιορισμοί iBeacon: αστάθεια RSSI σε εσωτερικούς χώρους, όριο 20 περιοχών και καθυστέρηση παρακολούθησης έως 30 δευτερόλεπτα.

Θα αναπτύξουμε μια εφαρμογή για κινητά έτοιμη για χρήση

Η IT Sectr δημιουργεί εφαρμογές iOS και Android για νεοφυείς επιχειρήσεις και επιχειρήσεις από το 2017. Θα σας συμβουλεύσουμε και θα προτείνουμε την καλύτερη λύση.

Συζήτηση έργου

Διαβάστε επίσης