اطلاعیه

Collapse
No announcement yet.

حذف اعداد نادرست از فاصله سنج التراسونیک

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    حذف اعداد نادرست از فاصله سنج التراسونیک

    سلام
    من یک دستگاه فاصله سنج با mega 8 ساختم (که البته مطمئنم توی برنامش هم اشتباهاتی دارم !!!) و برنامشم با codevision هست اما مساله اینجاست که بعضی وقتها اعداد اندازه گیری شده نادرستی هم وارد اعداد میشن
    به عنوان مثال فاصله 208 سانتی متر رو مرتبا 206 ، 207 ، 208، 209 میده اما ممکنه بینش اعددی مثل 0 یا 1 یا 148 هم به ندرت دیده بشه . تعداد اعدادخطا کمه یعنی توی 10 تا نمونه شاید به 3 تا برسه . لازمه بتونم با یک روش این اعداد نادرست رو حذف کنم تا برای میانگین گیری فقط اعداد درست استفاده بشن .
    لطفا در خصوص الگوریتم این کار راهنمایی فرمایید .
    Don't hesitate to ask any question ..

    #2
    پاسخ : حذف اعداد نادرست از فاصله سنج التراسونیک

    سلام.

    درمورد 148 نظری ندارم. اما برای اون دوتای دیگه یعنی 0 یا 1 می تونی شرط بذاری که اگر مثلا کمتر از 3 بود دوباره اندازه گیری کنه چون اکثرا فاصله سنج های آلتراسونیک همچین فاصله هایی را نمی تونن اندازه گیری کنن. درضمن درمورد اعداد بزرگ تر هم ببین اگه یه عدد ثابته برای اون یک عدد هم شرط بذار که اون بود دوباره خونه بشه.

    اگه مشکلت با اینا حل نشد باید برنامه و چیزایی که لازمه را بذاری تا بشه نظر داد.

    دیدگاه


      #3
      پاسخ : حذف اعداد نادرست از فاصله سنج التراسونیک

      متشکرم
      اما مشکل من دقیقا با همون اعداد 148 ها هست که مشخص نیستن داده نادرستند یا درست
      واسه همین به یک الگوریتم آماری نیاز دارم تا بدونم اکثریت اعداد من - که مثلا توی یک آرایه 10 تایی ذخیرشون کردم - در چه بازه ای هستند و بر طبق اونا داده های نادرست رو دور بریزم
      Don't hesitate to ask any question ..

      دیدگاه


        #4
        پاسخ : حذف اعداد نادرست از فاصله سنج التراسونیک

        بهترین راه حل اینه که کیفیت و سطح کدتون را بالا ببرید تا این مشکل خود به خود حل بشه وگرنه باید برید سراغ روش های ایرانی!!!!!! چون دلیلی نداره در این حد خطا داشته باشید.

        اما اگر می خواهید با همین شرایط کارتون حل بشه باید دقیقا بدونم که شرایط پروژه چیه. مثلا اگه فاصله به تدریج کم و زیاد میشه میشه از داده ها مشتق گرفت و اگه این مشتق در یک نقطه خیلی زیاد بود اون داده پذیرفته نشه.

        دیدگاه


          #5
          پاسخ : حذف اعداد نادرست از فاصله سنج التراسونیک

          کار من تشخیص وجود یک جسم در مقابل سنسور هست
          به این صورت که سنسور مرتبا فاصله خودش با جداره روبرو رو اندازه میگیره که چیزی حدود 4 متر هست
          بعد اگر جسمی مقابل سنسور قرار بگیره و برای مدت زمانی مثلا حداقل 5 تا 10 ثانیه حضور داشته باشه ، چون فاصله اندازه گیری شده کم میشه ، ما وجود جسم رو تشخیص میدیم اما اجسامی که بصورت گذرا از جلوی سنسور رد میشوند برای ما اهمیتی ندارند
          ابعاد جسم هم مشخص نیست اما حدود آنها معمولا بین 1 تا 2 متر میباشد
          (اصل کار : مقابل درب خروجی انبار یک سنسور قرار گرفته است . ممکن است افرادی از درب انبار وارد و خارج شوند که این برای ما مهم نیست
          اما اگر لیفتراک وارد شد یا بسته ای با حجم بالا خارج شد باید تعداد دفعات آن حساب شود . لزوما سرعت حرکت کم است و برای خروج یک بسته حدود 5 ثانیه زمان لازم است
          Don't hesitate to ask any question ..

          دیدگاه


            #6
            پاسخ : حذف اعداد نادرست از فاصله سنج التراسونیک

            من الان یه چیزی به فکرم رسید اینکه مدارتو با یه Human Motion Detector ترکیب کنی

            هر موقع انسان رد میشه Human Motion Detector به کار میافته و با اینکه آلتراسونیک هم جسم رو تشخیص میده میتونی تو برنامه شرط بزاری که در این حالت نشماره

            و هر وقت که لیفتراک رد میشه فقط آلتراسونیک جسم رو تشخیص میده و میشماره
            من نمىآ‌توانم فرضیه «بىآ‌اخلاقى انسان» را بپذیرم، و من اخلاق را منحصرا امرى انسانى و متعلق به انسان مىآ‌دانم که هیچ نوع قدرت مافوق انسانى در پشت آن وجود ندارد
            آلبرت اینشتین
            منبع: http://fa.wikiquote.org

            دیدگاه


              #7
              پاسخ : حذف اعداد نادرست از فاصله سنج التراسونیک

              ممنون از پاسختون
              اما این مساله مشکل من رو حل نمی کنه
              چون اعداد 146 که میاد اصلا نتیجه اندازه گیری عبور انسان نیست بلکه اثر back scatteredd شدن امواج از سطوح مجاوره که اشتباها میاد پس باید حذف بشه
              Don't hesitate to ask any question ..

              دیدگاه


                #8
                پاسخ : کمک در نوشتن برنامه فاصله سنج اولتراسونیک

                سلام مجدد خدمت دوستان
                اگه ممکنه در مورد نوشتن برنامه فاصله سنج اولتراسونیک به زبان C منو راهنمایی کنید چون احتمالا مشکل از کد من هست
                روند برنامه :
                موج 40k hz توسط خود میکرو ایجاد و توسط مدار تقویت کننده ای تقویت و ارسال میشه و سپس بازگشت موج توسط سنسور دریافت و با تقویت کننده ای تقویت شده و سپس با مدار تشخیص فرکانس ، تبدیل به یک پالس با لبه پایین رونده میشه که به اینتراپت خارجی میکرو وصله
                پس شکل برنامه باید قاعدتا اینطور باشه :
                تولید موج 40khz توسط تایمر 2 به مدت زمان لازم (برای ارسال حدودا 8 پالس )
                فعال شدن تایمر 1 یا 2 جهت اندازه گیری زمان رفت و برگشت پالس
                منتظر شدن برای ارسال این پالسها برای جلوگیری از دریافت پالس نادرست در حین ارسال (خاموش بودن وقفه خارجی 1 تا زمان مناسب )
                فعال کردن وقفه خارجی حساس به لبه پایین رونده جهت دریافت بازگشت موج
                قطع تایمر 1 و اندازه گیری زمان رفت و برگشت
                محاسبه فاصله از روی مقدار زمان
                Don't hesitate to ask any question ..

                دیدگاه


                  #9
                  پاسخ : حذف اعداد نادرست از فاصله سنج التراسونیک

                  یه روش برای فیلترینگ اینطوریه که (اسم روش رو نمیدونم): شما چند بار نمونه برداری میکنی و اونها رو مرتب میکنی بطور صعودی یا نزولی (بعنوان مثال ده بار)
                  3 تا از کوچکترینها و 3 تا از بزرگترین ها رو میندازی دور و فقط از 4 تای وسطی میانگین گیری میکنی (شاید اسم اصلیش باشه قضیه حد مرکزی central limit teorem)

                  دیدگاه


                    #10
                    پاسخ : حذف اعداد نادرست از فاصله سنج التراسونیک

                    ممنون اینم تست میکنم
                    Don't hesitate to ask any question ..

                    دیدگاه


                      #11
                      پاسخ : حذف اعداد نادرست از فاصله سنج التراسونیک

                      اگه ممکنه لطف کنید و تو بازنویسی کد فوق کمکم کنید متشکر میشم
                      کدم رو نمیگذارم که باعث سردرگم شدن نشه چون چیزای اضافی توش داره
                      اما پیاده سازی الگوریتم فوق روی مگا 8 یکم گیجم کرده
                      Don't hesitate to ask any question ..

                      دیدگاه


                        #12
                        پاسخ : حذف اعداد نادرست از فاصله سنج التراسونیک

                        وقت بخیر

                        پیشنهاد میکنم از ماجول های آماده التراسونیک استفاده کنی !!
                        در این صورت فقط یک پالس شروع داری و یک پالس دریافت !!

                        دیدگاه


                          #13
                          پاسخ : حذف اعداد نادرست از فاصله سنج التراسو&

                          نوشته اصلی توسط mojalan
                          یه روش برای فیلترینگ اینطوریه که (اسم روش رو نمیدونم): شما چند بار نمونه برداری میکنی و اونها رو مرتب میکنی بطور صعودی یا نزولی (بعنوان مثال ده بار)
                          3 تا از کوچکترینها و 3 تا از بزرگترین ها رو میندازی دور و فقط از 4 تای وسطی میانگین گیری میکنی (شاید اسم اصلیش باشه قضیه حد مرکزی central limit teorem)
                          قضیه حد مرکزی میگه اگه چند تا فرایند تصادفی مستقل با هم جمع بشن تابع توزیع احتمال این ها به توزیع نرمال میل میکنه اینجا

                          اینی که شما میگید اینه که تو مسابقات ورزشی هم ازش استفاده میشه

                          پی نوشت: میانگین گیر یه فیلتر پایین گذر هست
                          افتادگی آموز اگر طالب فیضی هرگز نخورد آب زمینی که بلند است

                          دیدگاه


                            #14
                            پاسخ : حذف اعداد نادرست از فاصله سنج التراسونیک

                            یه آرایه داشته باش که همیشه مثلا 10 20 تا دیتای آخر توش باشه
                            میانگین بگیر
                            واریانس تک تک و حساب کن
                            از یه درصدی به بالا رو حذف کن
                            البته این برای روشیه که خطا به خاطر نویز های محیطی باشه نه برنامه نویسی. واریانس چون به توان 2 هست، باعث میشه دیتاهای پرت، پرتتر بشن

                            دیدگاه

                            لطفا صبر کنید...
                            X