I mfumo wa ramani ya ndani
Rejelea kamili ya kiufundi ya mfumo wa uwekaji nafasi wa ndani wa See U: usanifu, vitambuzi, algoriti, API na mwongozo wa utekelezaji.
Urambazaji wa haraka
Muhtasari
Utangulizi wa mfumo wa ramani
Mfumo wa ramani ya ndani ya See U ni nini?
Mfumo wa ndani wa See U ni jukwaa la kuweka nafasi iliyofungwa ambayo huunganisha safu sita za teknolojia ya vitambuzi na muunganisho wa hali ya juu ili kutoa mahali sahihi ambapo GPS haipatikani.
Tofauti na Wi‑Fi- au bidhaa za Bluetooth pekee, tunatumia runda nyingi zinazojumuisha:
- Jiografia ya sumaku: "alama ya vidole" ya sumaku ya kipekee kwa kila jengo
- Wi‑Fi RTT: Muda wa safari ya ndege unaanzia umbali sahihi
- Bluetooth LE: Beacons kwa ajili ya nanga na maeneo ya kuvutia
- Vihisi vya inertial: Hesabu iliyokufa na IMU ya hali ya juu
- Maono ya kompyuta: SLAM na alama za kuona
- GNSS: Mpito laini wa ndani-nje
Usahihi wa mita 1-2 katika 99% ya kesi za kutafuta njia kwa usalama
Masasisho ya wakati halisi yenye kusubiri hadi mwisho kwa chini ya 100 ms
Fusing teknolojia nyingi kwa kuegemea na usahihi
Usanifu wa mfumo
Muundo na vipengele muhimu
Vitalu vya ujenzi wa usanifu
1. Safu ya ukusanyaji wa data
Hutiririsha data ghafi kutoka kwa vitambuzi vyote vya kifaa kwa wakati halisi.
- • Viendeshaji asili (iOS / Android)
- • Udhibiti wa kiwango cha sampuli
- • Kuhifadhi data kwa muunganisho wa bechi
- • Usawazishaji wa muhuri wa saa
2. Safu ya usindikaji
Vichujio, kurekebisha, na kuandaa data kwa muunganisho.
- • Vichujio vya pasi ya chini na pasi ya juu
- • Urekebishaji otomatiki
- • Utambuzi wa nje na kuondolewa
- • Kurekebisha & kuongeza
3. Safu ya fusion ya sensor
Inachanganya vyanzo vingi na mbinu za kisasa za muunganisho.
- • Kichujio cha chembe (uwezekano)
- • Kalman Iliyoongezwa kwa kulainisha
- • Uzani unaobadilika kwa kila sensor
- • Utambuzi wa muktadha wa ndani / nje
4. Kuweka safu
Hukokotoa nafasi ya mwisho ya mtumiaji kwenye ramani.
- • Kulinganisha ramani
- • Nenda kwa sehemu halali za njia
- • Utambuzi wa sakafu/kiwango
- • Marekebisho ya drift
5. Safu ya urambazaji
Upangaji wa njia na maagizo ya zamu.
- • A* yenye uzani wa ufikivu
- • Uzalishaji wa maagizo ya sauti
- • Uelekezaji upya wa nguvu
- • Arifa za ukaribu kwa POIs
6. Safu ya interface
API na SDK za ujumuishaji wa programu.
- • REST kwa wavuti na seva
- • SDK Asilia (iOS na Android)
- • Masasisho ya moja kwa moja ya WebSocket
- • Webhooks kwa matukio ya nafasi
Tabaka za sensor
Maelezo ya kiufundi kwa kila safu
Jiografia ya sumaku
Sehemu ya Ramani za Dunia na hitilafu zinazosababishwa na majengo. Kila muundo una alama ya vidole ya sumaku ya kipekee.
Vipimo vya kiufundi:
- Kiwango cha sampuli: 50-100 Hz
- Azimio: 0.01 µT
- Urekebishaji otomatiki unaoendelea
- Fidia ya kuingiliwa
I-Wi-Fi RTT
Muda wa safari ya ndege Wi-Fi kuanzia maeneo ya kufikia. Inahitaji usaidizi wa RTT wa kifaa na miundombinu.
Vipimo vya kiufundi:
- Itifaki: IEEE 802.11mc (Wi-Fi RTT)
- Bendi: 2.4 na 5 GHz
- Muda wa kusubiri: < 100 ms
- Angalau 3 AP kwa utatuzi
Nishati ya Chini ya Bluetooth (BLE)
Beacons kwa ukaribu, mwelekeo, POIs, na waypoints.
Vipimo vya kiufundi:
- Itifaki: BLE 5.0+
- RSSI (nguvu ya mawimbi iliyopokea)
- Betri: miaka 2-5
- Umbali: hadi 100 m
Kitengo cha kipimo cha inertial (IMU)
IMU inashughulikia mwendo, mzunguko, na mwinuko kwa ajili ya kuziba mapengo kati ya marejeleo.
Vipimo vya kiufundi:
- Kipima kasi: ± 16 g, 400 Hz
- I-Gyro: ±2000°/s, 400 Hz
- Baro: urefu wa sakafu 0.5 m
- Ukudibanisa: Kalman
Maono ya Kompyuta (CV)
Hutafuta vipengele, vialama vya Uhalisia Ulioboreshwa, QR, na maandishi kwa ajili ya masasisho ya nafasi na SLAM.
Vipimo vya kiufundi:
- SLAM: ujanibishaji na uchoraji ramani kwa wakati mmoja
- Utambuzi wa kipengele: ORB, SIFT
- Alama za Uhalisia Ulioboreshwa: ArUco, QR
- Muda wa Kuendesha: TensorFlow Lite
GNSS / GPS (nje)
Nafasi ya setilaiti nje na kwa makabidhiano ya ndani-nje na udhibiti wa kuteleza.
Vipimo vya kiufundi:
- I-Multi-GNSS: GPS, GLONASS, Galileo, BeiDou
- A-GPS kwa TTFF ya haraka
- Moja kwa moja ndani / nje
- Imeunganishwa na tabaka zingine
Ama-algorithms
Usindikaji na akili
Kichujio cha chembe (Monte Carlo)
Chembe nyingi zilizo na uzani hufuatilia mkao unaowezekana zaidi wa mtumiaji kutoka kwa vitambuzi vingi vya kelele.
Kichujio cha Kalman kilichopanuliwa
Inakadiria kwa kurudia mfumo wa nguvu na pembejeo za kelele; kutumika kwa njia laini na utabiri wa muda mfupi.
A* kutafuta njia
Hupata njia fupi iliyo na vizuizi, ufikiaji, na mapendeleo ya mtumiaji kama uzani.
I-SLAM
Huunda ramani na kufuatilia kifaa ndani yake kwa vipengele vya kuona.
Kujifunza kwa mashine (mitandao ya neva)
Miundo iliyofunzwa ili kuainisha mazingira, kupotosha data, na kuboresha usahihi kadri muda unavyopita.
Hesabu iliyokufa
Tangaza mkao kutoka kwa kurekebisha mwisho kwa kutumia kasi na kichwa wakati marekebisho ya redio yanapopungua.
Inachakata mtiririko
Kukamata data
Sensorer hutiririsha vipimo ghafi kwa wakati halisi
Inachakata mapema
Kuchuja, kusawazisha na kuhalalisha
Mchanganyiko wa sensor
Kichujio cha chembe huunganisha vyanzo vyote
Kichujio cha Kalman
Smooths na kutabiri trajectory
Kulinganisha ramani
Mradi kwenye grafu ya ramani inayoweza kubadilishwa
Pozi la pato
Imeonyeshwa kwa programu kupitia API
I-REST API
Mwisho na ushirikiano
URL ya msingi
/api/v1/positioningHurejesha mkao wa sasa wa kifaa
Vigezo:
device_idvenue_idfloor/api/v1/navigation/routePanga njia kati ya pointi mbili
Vigezo:
origindestinationaccessibility_mode/api/v1/venues/{id}/mapLeta vigae vya ramani ya eneo
Vigezo:
venue_idfloorformat/api/v1/poisOrodhesha vivutio vilivyo karibu
Vigezo:
latlngradiuscategory/api/v1/tracking/updateKundi la kihisi cha chapisho kwa muunganisho wa upande wa seva
Vigezo:
sensor_datatimestampdevice_idOmbi la sampuli
curl -X POST https://api.seeu.app/v1/navigation/route \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"origin": {
"lat": -23.550520,
"lng": -46.633308,
"floor": 1
},
"destination": {
"lat": -23.551234,
"lng": -46.634567,
"floor": 2
},
"accessibility_mode": true
}'Mwongozo wa utekelezaji
Jinsi ya kuunganisha stack
1. Mahitaji ya mfumo
iOS
- • iOS 14.0+
- • Mwepesi 5.5+
- • I-CoreLocation
- • I-CoreMotion
- • ARKit (hiari)
Android
- • I-Android 8.0+ (API 26)
- • Kotlin 1.7+
- • Huduma za Google Play
- • API ya kihisi cha Android
- • ARCore (si lazima)
2. Kusakinisha SDK
iOS (CocoaPods)
pod 'SeeUMapping', '~> 1.0'
I-Android (Gradle)
implementation 'app.seeu:mapping:1.0.0'
3. Kuanzisha
// Swift
import SeeUMapping
let mapping = SeeUMapping(apiKey: "YOUR_API_KEY")
mapping.configure(
venueId: "shopping-center-xyz",
enableMagneticPositioning: true,
enableWiFiRTT: true,
enableBLE: true
)
mapping.startPositioning { result in
switch result {
case .success(let position):
print("Lat: \(position.lat), Lng: \(position.lng)")
case .failure(let error):
print("Error: \(error)")
}
}4. Urambazaji
mapping.calculateRoute(
from: currentPosition,
to: destination,
accessibilityMode: true
) { route in
mapping.startNavigation(route: route) { instruction in
// turn-by-turn instructions
print(instruction.text)
speakInstruction(instruction.audio)
}
}