2011-11-25 13 views
13

मैं एक एंड्रॉइड एप्लिकेशन पर काम कर रहा हूं जो डिवाइस की गति को 6 दिशा में गणना कर सकता है। मुझे लगता है कि मैं त्वरण का उपयोग कर सकते हैं;3 डी दुनिया में डिवाइस के आंदोलन की गणना करने के लिए एक्सेलेरोमीटर, जीरोस्कोप और कंपास का उपयोग

"x = a.t^2" लेकिन एक स्थिर नहीं है। और यह समस्या है। मैं कुल आंदोलन की गणना कैसे कर सकता हूं ??

+0

आपको 'ए' के मूल्य को मतदान करने और औसत त्वरण का कार्य करने की आवश्यकता होगी, और चुनाव के दौरान उस अवधि के दौरान उस औसत को लागू करना होगा। – Bringer128

+0

बहुत उत्सुक है कि आप इसे कैसे हल करने में कामयाब रहे, और यदि आपको यह मिला तो सटीक नेविगेशन की अनुमति देना सटीक है। – ina

उत्तर

18

एक्सेलेरोमीटर आपको तीन दिशाएं (x, y, z) देता है। वे त्वरण माप हैं जो यह जानना मुश्किल है कि डिवाइस की स्थिति क्या है। लेकिन, याद त्वरण एकीकरण के माध्यम से स्थिति से संबंधित है:

a(t) = a[x] 
v(t) = a[x]t + c 
x(t) = a[x]t^2 + ct + d 

समस्या है क्योंकि के रूप में आप व्युत्पन्न ले स्थिरांक ही अपनी पढ़ाई छोड़ आप सी या डी में पता नहीं कर सकते हैं। तो कुछ राशि है जो आप सी और डी गायब के साथ सही नहीं हो सकते हैं। आप उन मूल्यों को याद करके क्षतिपूर्ति करने का प्रयास कर सकते हैं जिन्हें आपने अंतिम बार उपयोग किया था। तो 3 नमूने हथियाने के बाद आप उस स्थिति की गणना करना शुरू कर सकते हैं।

सेंसर से डेटा की व्याख्या करने के बारे में जानकारी की एक बड़ी मात्रा है। यह पता लगाने की तरह कि गुरुत्वाकर्षण उन्मुखीकरण के लिए है, और रैखिक त्वरण प्राप्त करने के लिए गुरुत्वाकर्षण को घटाना।

http://www.freescale.com/files/sensors/doc/app_note/AN3397.pdf

+2

विशेष रूप से दूसरा लिंक मेरे लिए एक सुनहरा खान है। बहुत बहुत धन्यवाद। – kubudi

+0

बस एक चेतावनी: आपको भयानक एकीकरण त्रुटियां मिलेंगी। – Ali

+0

यह होगा। बस इंतज़ार करें। – kubudi

4

यह सच है, तो आप को एकीकृत करके स्थान प्राप्त:

http://developer.android.com/reference/android/hardware/SensorEvent.html

यहाँ विस्तार से स्थिति को खोजने के लिए एक तरह से स्थिति के साथ आने के लिए एक एल्गोरिथ्म के साथ एक accelerometer का उपयोग कर रहा है रैखिक त्वरण दो बार। लेकिन त्रुटि भयानक है। यह अभ्यास में बेकार है।

यहां an explanation why (Google Tech Talk) 23:20 पर है। मैं अत्यधिक इस वीडियो की सिफारिश करता हूं।

यह एक्सेलेरोमीटर शोर नहीं है जो समस्या का कारण बनता है लेकिन gyro white noise, उपधारा 6.2.3 त्रुटियों का प्रचार देखें। (वैसे, आपको भी जीरोस्कोप की आवश्यकता होगी।)

एक समान प्रश्न Distance moved by Accelerometer है।

+0

धन्यवाद लेकिन मुझे लगता है कि मुझे जियो की आवश्यकता नहीं है। क्या आप समझा सकते हैं कि आपको लगता है कि दूरी को स्थानांतरित करने के लिए यह क्यों नुकीला है? – kubudi

+0

यदि आप रैखिक त्वरण का उपयोग कर रहे हैं तो सेंसर प्रबंधक को gyros की आवश्यकता होती है। स्वीकार्य उत्तर के लिए, मुझे आशा है कि आपको पता चलेगा कि आपको जो परिणाम मिलेगा वह बहुत खराब होगा। आप अपेक्षा से भी बदतर है। – Ali

+0

क्यों? Gyro आपको कोणीय वेग लौट रहा है। त्वरण के लिए आपको इसकी आवश्यकता क्यों है। मुझे वास्तव में यह नहीं मिला। – kubudi

संबंधित मुद्दे