سؤال

أنا أستخدم أجهزة الاستشعار لموازنة الروبوت، لكن SENSOR_DELAY_FASTEST يوفر فقط معدل أخذ عينات يبلغ 10 هرتز، وهو ببساطة ليس بالسرعة الكافية.هل هناك طريقة لأخذ العينات بشكل أسرع؟

هل هناك طريقة لاستطلاع آراء المستشعرات بدلاً من انتظار أ SensorEvent ?

هل كانت مفيدة؟

المحلول

هل هناك طريقة لأخذ العينات بشكل أسرع؟

SENSOR_DELAY_FASTEST هو تأخير 0 مللي ثانية.لا يمكن أن يكون لديك وقت سلبي، على الأقل بقدر ما قرره الفيزيائيون.وبالتالي، لا يوجد تأخير "أسرع" من SENSOR_DELAY_FASTEST.

يستخدم عرض التتبع لتحديد المكان الذي يتم فيه استهلاك وقتك.من الممكن أن يكون الكود الخاص بك هو الذي يبطئ عملية المعالجة.

طريقة لاستقصاء أجهزة الاستشعار بدلاً من انتظار حدث الاستشعار؟

لا آسف.

نصائح أخرى

سأقوم بالتحقق من تحسين الكود أيضًا، ولكن لماذا تحتاج إلى سرعة أعلى من 10 هرتز؟في رأيي، يمكنك فقط كتابة خوارزمية "توازن" أفضل لتقليل الحاجة إلى عينة أسرع.

على سبيل المثال، عندما يتحرك الروبوت الخاص بك بمقدار 5 درجات إلى اليمين، فسوف تحاول التصحيح بمقدار 4 درجات بدلاً من ذلك وتقليل الحاجة إلى إعادة التصحيح.ربما أكون مخطئا، ولكنني منفتح على الاقتراحات أيضا!

منذ إصدار Android 2.3، يمكن الاستعلام عن المستشعرات من خلال NDK، مما سيسمح باستقصاء أسرع بكثير.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top