اطلاعیه

Collapse
No announcement yet.

طراحی فیتر کالمن با lpc1768

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

    طراحی فیتر کالمن با lpc1768

    سلام.
    من نیاز به طراحی فیلتر کالمن با lpc1768 پیدا کردم و هر چی تو اینترنت سرج کردم یا چیزی مناسبی پیدا نکردم یا یا اگه پیدا کردم نتوستم از روابط چیزی بفهمم دوستان اگه اطلاعاتی در ضمینه طراحی فیلتر کالمن با میکرو کنترلر دارن لصفا دریغ نکن.خیلی بهش نیاز دارم؟؟؟؟؟؟؟؟؟؟؟؟؟

    #2
    پاسخ : طراحی فیتر کالمن با lpc1768

    کسی نیست.کممممممممممممممممک

    دیدگاه


      #3
      پاسخ : طراحی فیتر کالمن با lpc1768

      دوستان درموررد فرمول و نحوه برنامه نویسی کسی هست اینو بدونه؟؟؟؟؟
      این تصویر ببینید.سیگنال نویزی قرمز و رنگ آبی خروجی فیلتر کالمن

      دیدگاه


        #4
        پاسخ : طراحی فیتر کالمن با lpc1768

        با سلام
        خروجی فیلتر کالمن که اصطلاحا برای هموار سازی سیگنال بکار میره مجموع آخرین خروجی بعلاوه ی چند جمله آخر از نمونه هایی هست که در طول زمان از سیگنال گرفته میشه.
        هر کدوم از این جملات دارای ضریب هستن که وزن اونها در خروجی رو مشخص میکنه و باید دقت بشه که مجموع تمام این ضرائب باید حتما 1 باشه.
        برای کاربردهایی مثل این عکس که گذاشتین( البته این فیلتر چبیشف هست) معمولا این فرمول کفایت میکنه:
        U(k+1) = a * U(k) + b * S(k+1)
        در عبارت بالا مجموع ضرایب a و b باید حتما 1 باشه. اگر a بزرگ بشه و به تبعش b کوچیک بشه فیلتر کندترو از مقدار خونده شده دورترمیشه و فرکانس قطع پائینتری خواهد داشت. مثلا اگه a = 1 و b = 0 بشه خروجی dc خواهد بود.
        و بالعکس اگه b زیاد بشه و a کم، خروجی فیلتر به سمت مقدار خونده شده و فرکانسش خواهد رفت و اگه b = 1 و a = 0 بشه خروجی فیلتر کاملا عین دامنه و فرکانس ورودی میشه.
        کمترین توقع از یک فرد تحصیلکرده، دانستن املای صحیح کلمات است.

        دیدگاه


          #5
          پاسخ : طراحی فیتر کالمن با lpc1768

          نوشته اصلی توسط نو رسیده نمایش پست ها
          با سلام
          خروجی فیلتر کالمن که اصطلاحا برای هموار سازی سیگنال بکار میره مجموع آخرین خروجی بعلاوه ی چند جمله آخر از نمونه هایی هست که در طول زمان از سیگنال گرفته میشه.
          هر کدوم از این جملات دارای ضریب هستن که وزن اونها در خروجی رو مشخص میکنه و باید دقت بشه که مجموع تمام این ضرائب باید حتما 1 باشه.
          برای کاربردهایی مثل این عکس که گذاشتین( البته این فیلتر چبیشف هست) معمولا این فرمول کفایت میکنه:
          U(k+1) = a * U(k) + b * S(k+1)
          در عبارت بالا مجموع ضرایب a و b باید حتما 1 باشه. اگر a بزرگ بشه و به تبعش b کوچیک بشه فیلتر کندترو از مقدار خونده شده دورترمیشه و فرکانس قطع پائینتری خواهد داشت. مثلا اگه a = 1 و b = 0 بشه خروجی dc خواهد بود.
          و بالعکس اگه b زیاد بشه و a کم، خروجی فیلتر به سمت مقدار خونده شده و فرکانسش خواهد رفت و اگه b = 1 و a = 0 بشه خروجی فیلتر کاملا عین دامنه و فرکانس ورودی میشه.
          سپاس مهندس
          ممکنه بفرمایید S تو این معادله چیه ؟؟
          آیا این فرمول میتونه فیلتر مناسبی رو انجام بده تا مقادیر خروجی ثبات مناسبی داشته باشه؟
          آرزوی سرافرازی برای ایران عزیز . . .


          دیدگاه


            #6
            پاسخ : طراحی فیتر کالمن با lpc1768

            نوشته اصلی توسط نو رسیده نمایش پست ها
            با سلام
            خروجی فیلتر کالمن که اصطلاحا برای هموار سازی سیگنال بکار میره مجموع آخرین خروجی بعلاوه ی چند جمله آخر از نمونه هایی هست که در طول زمان از سیگنال گرفته میشه.
            هر کدوم از این جملات دارای ضریب هستن که وزن اونها در خروجی رو مشخص میکنه و باید دقت بشه که مجموع تمام این ضرائب باید حتما 1 باشه.
            برای کاربردهایی مثل این عکس که گذاشتین( البته این فیلتر چبیشف هست) معمولا این فرمول کفایت میکنه:
            U(k+1) = a * U(k) + b * S(k+1)
            در عبارت بالا مجموع ضرایب a و b باید حتما 1 باشه. اگر a بزرگ بشه و به تبعش b کوچیک بشه فیلتر کندترو از مقدار خونده شده دورترمیشه و فرکانس قطع پائینتری خواهد داشت. مثلا اگه a = 1 و b = 0 بشه خروجی dc خواهد بود.
            و بالعکس اگه b زیاد بشه و a کم، خروجی فیلتر به سمت مقدار خونده شده و فرکانسش خواهد رفت و اگه b = 1 و a = 0 بشه خروجی فیلتر کاملا عین دامنه و فرکانس ورودی میشه.
            ممنونم از پاسختون.
            مهندس چند تا سوال داشتم
            1-فرمول که کذاشتید رابطه کالمن هست یا چیبف
            2-در فرمول بالا مقادیر u و s چی هستن.
            3-من دارم روی پروژه اسیلو سکوپ دیجیتال کار کنم به خاطر رفع نویز ADC می خوام از این فیلتر استفاده کنم به نظر شما می تونه نویز از بین ببره ؟
            4-چطور باید ضرایب انتخاب کنم
            با تشکر............

            دیدگاه


              #7
              پاسخ : طراحی فیتر کالمن با lpc1768

              نوشته اصلی توسط rezamajdi نمایش پست ها
              سپاس مهندس
              ممکنه بفرمایید S تو این معادله چیه ؟؟
              آیا این فرمول میتونه فیلتر مناسبی رو انجام بده تا مقادیر خروجی ثبات مناسبی داشته باشه؟
              S در واقع سمپل جدیده.
              مفهوم فارسی فرمول فوق میشه: «خروجی جدید فیلتر برابر است با مضربی از خروجی قبلی به علاوه ی مضربی از سمپل جدید»
              بله. کیفیت هموار سازی به انتخاب ضرایب مربوطه. باید طوری انتخاب بشن که نه خروجی خیلی لخت و کند بشه و نه خیلی نوسانی.
              یه مزیت دیگه ی این رابطه اینه که عملا رزولوشن ADC رو پنهان میکنه. یعنی شما دیگه خروجی با پله های رزولوشن مبدل نخواهید داشت. بلکه یه خروجی پیوسته دارید و البته رزولوشن مبدل هم روی میزان پایداری خروجی موثر هست.

              دلیل: ادغام دو پست برای جلوگیری از اسپم

              نوشته اصلی توسط MM320 نمایش پست ها
              ممنونم از پاسختون.
              مهندس چند تا سوال داشتم
              1-فرمول که کذاشتید رابطه کالمن هست یا چیبف
              2-در فرمول بالا مقادیر u و s چی هستن.
              3-من دارم روی پروژه اسیلو سکوپ دیجیتال کار کنم به خاطر رفع نویز ADC می خوام از این فیلتر استفاده کنم به نظر شما می تونه نویز از بین ببره ؟
              4-چطور باید ضرایب انتخاب کنم
              با تشکر............
              این رابطه رابطه ی ساده شده و خلاصه ی کالمن هست.
              البته شما میتونید برای تشکیل خروجی جدید از مقدار n تا جمله ی قبل کمک بگیرید که البته باید مجموع ضرایبشون 1 باشه و فرمول پیچیده تر میشه، اما اینجا فقط از یک جمله قبل استفاده شده.
              مقادیر s و u رو تو پست بالا گفتم.
              برای رفع نوسان adc ابتدا حتما باید کلیه ی تمهیدات سخت افزاری اعم از تغذیه ی صاف، ولتاژ رفرنس صاف، گراند خوب و مناسب و خازنکاری و شیلدینگ خوب رو انجام بدید و بعد برید سراغ روشهای نرم افزاری.
              در واقع اگه ایراد از سخت افزار باشه این فیلتر نمیتونه کمکی بکنه و نوسانات در خروجی دیده میشه ولی با ریت کمتر. خروجی فیلتر به شرطی پایداره که نوسانات ورودی برآیند و میانگین مشخصی داشته باشن در غیر اینصورت خروجی نوسانی خواهد بود.
              ضرائب معمولا باید با سعی و خطا تنظیم بشن. بطور معمول ضریب 0.9 برای جمله ی قبلی و 0.1 برای جمله ی جدید مناسبه و بعدش میتونه دقیقتر تنظیم بشه.
              کمترین توقع از یک فرد تحصیلکرده، دانستن املای صحیح کلمات است.

              دیدگاه


                #8
                پاسخ : طراحی فیتر کالمن با lpc1768

                سلام جناب مهندس نورسیده.
                خیلی از شما سپاس گذارم بسیا ربسیار.
                فیلتر رو روی سیگنال ورودی اعمال کردم و نتیجه اش عالی بود ممنونم از شما

                اینم عکسشش.سیگنال نویزی زرد و سیگنال سبز هم خروجی فیلتر کالمن.


                جدیدترین ویرایش توسط MM320; ۱۵:۵۶ ۱۳۹۸/۰۲/۰۸.

                دیدگاه


                  #9
                  پاسخ : طراحی فیتر کالمن با lpc1768

                  نوشته اصلی توسط MM320 نمایش پست ها
                  سلام جناب مهندس نورسیده.
                  خیلی از شما سپاس گذارم بسیا ربسیار.
                  فیلتر رو روی سیگنال ورودی اعمال کردم و نتیجه اش عالی بود ممنونم از شما

                  اینم عکسشش.سیگنال نویزی زرد و سیگنال سبز هم خروجی فیلتر کالمن.
                  سلام بر شما و ارادت
                  کار بسیار زیبایی شده.
                  موفق باشید.
                  کمترین توقع از یک فرد تحصیلکرده، دانستن املای صحیح کلمات است.

                  دیدگاه


                    #10
                    پاسخ : طراحی فیتر کالمن با lpc1768

                    سلام مهندس نورسیده.
                    متاسفافه مشکل توی کارم هست .امروز موج مربعی به اسیلو سکوپ طراحی کردم دادم و متوجه شدم که موج با فیلتر کالمن ،خروجیش موج مثلی شده یعنی از سیگنال انتگرال گرفته .به نظر شما نباید فرمول تغییر کنه؟ یا حداقل ضرایب باید عوض شه؟
                    اینم قسمتی از برنامه ام که فیلتر کالکن هست.

                    void kalman_filter(void){
                    int a,x,u_pre,n_next;
                    for(x=0;x<256;x++) //max x=256
                    {
                    a=adc_v[0][x];
                    n_next=((0.9*u_pre)+(.1*a));
                    adc_v[1][x]=n_next;
                    u_pre=n_next;

                    }
                    }

                    دیدگاه


                      #11
                      پاسخ : طراحی فیتر کالمن با lpc1768

                      نوشته اصلی توسط MM320 نمایش پست ها
                      سلام مهندس نورسیده.
                      متاسفافه مشکل توی کارم هست .امروز موج مربعی به اسیلو سکوپ طراحی کردم دادم و متوجه شدم که موج با فیلتر کالمن ،خروجیش موج مثلی شده یعنی از سیگنال انتگرال گرفته .به نظر شما نباید فرمول تغییر کنه؟ یا حداقل ضرایب باید عوض شه؟
                      اینم قسمتی از برنامه ام که فیلتر کالکن هست.

                      void kalman_filter(void){
                      int a,x,u_pre,n_next;
                      for(x=0;x<256;x++) //max x=256
                      {
                      a=adc_v[0][x];
                      n_next=((0.9*u_pre)+(.1*a));
                      adc_v[1][x]=n_next;
                      u_pre=n_next;

                      }
                      }
                      گفتم که باید ضرایب رو تنظیم کنین.
                      توی همون عکسهایی هم که گذاشتین از اختلاف فاز ایجاد شده با موج اصلی و افت دامنه، مشخص بود که ضرایب لخت تنظیم شدن.
                      اصولا برای کاربرد اسکوپ باید برید به سمتی که تا حد امکان عین شکل موج رو بدون فیلتر نشون بدین.
                      یعنی با یه سخت افزار خوب ترجیحا بدون فیلترو یا حداکثر با یه فیلترینگ بسیار جزئی، مثلا 0.9 ضریب سمپل جدید باشه و 0.1 ضریب مقدار قبلی.
                      دقیقا بر عکس چیزی که الان هست.
                      کمترین توقع از یک فرد تحصیلکرده، دانستن املای صحیح کلمات است.

                      دیدگاه


                        #12
                        پاسخ : طراحی فیتر کالمن با lpc1768

                        نوشته اصلی توسط نو رسیده نمایش پست ها
                        گفتم که باید ضرایب رو تنظیم کنین.
                        توی همون عکسهایی هم که گذاشتین از اختلاف فاز ایجاد شده با موج اصلی و افت دامنه، مشخص بود که ضرایب لخت تنظیم شدن.
                        اصولا برای کاربرد اسکوپ باید برید به سمتی که تا حد امکان عین شکل موج رو بدون فیلتر نشون بدین.
                        یعنی با یه سخت افزار خوب ترجیحا بدون فیلترو یا حداکثر با یه فیلترینگ بسیار جزئی، مثلا 0.9 ضریب سمپل جدید باشه و 0.1 ضریب مقدار قبلی.
                        دقیقا بر عکس چیزی که الان هست.
                        سلام
                        ضرایب برعکس میکنم سیگنال عین ورودی میشه حتی ضرایب 0.5 برای حالت جدید و 0.5 برای حالت قبلی تنظیم می کنم ولی بازم تاثیر زیادی نداره!!!!!!به نظر شما فرمول نباید تغییر کنه؟

                        دیدگاه


                          #13
                          پاسخ : طراحی فیتر کالمن با lpc1768

                          نوشته اصلی توسط نو رسیده نمایش پست ها
                          اصولا برای کاربرد اسکوپ باید برید به سمتی که تا حد امکان عین شکل موج رو بدون فیلتر نشون بدین.
                          یعنی با یه سخت افزار خوب ترجیحا بدون فیلترو یا حداکثر با یه فیلترینگ بسیار جزئی، مثلا 0.9 ضریب سمپل جدید باشه و 0.1 ضریب مقدار قبلی.
                          دقیقا بر عکس چیزی که الان هست.
                          بنده هم کاملا موافقم. در طراحی اسیلوسکوپ، فیلتر کردن سیگنال کار درستی نسیت. کسی که طراح است، در هنگام استفاده از اسیلوسکوپ به تمام مولفه های سیگنال نیاز دارد و اگر اسیلوسکوپ بخواهد آن را فیلتر کند، میتواند طراح را به اشتباه بیندازد.
                          شما فرض کنید یک نفر میخواهد بر فرض مثال همین فیلتر کالمن را برای سنسورهایش طراحی کند و نتیجه فیلترش را با اسیلوسکوپ شما ببیند. طبیعتا مشاهدات آزمایشهایش واقعی نیستند و فیلتر شده هستند و تصور میکند طراحی اش بسیار عالی تر از تصور جواب داده است!
                          معمولا طراحان اسیلوسکوپ از سخت افزارهای با کیفیت بالا برای محصولاتشان استفاده می کنند که همونطور که میدونیم این دستگاه ها ارزان قیمت نیستند.
                          جدیدترین ویرایش توسط slh; ۲۰:۱۴ ۱۳۹۸/۰۲/۰۹.

                          دیدگاه


                            #14
                            پاسخ : طراحی فیتر کالمن با lpc1768

                            نوشته اصلی توسط MM320 نمایش پست ها
                            سلام
                            ضرایب برعکس میکنم سیگنال عین ورودی میشه حتی ضرایب 0.5 برای حالت جدید و 0.5 برای حالت قبلی تنظیم می کنم ولی بازم تاثیر زیادی نداره!!!!!!به نظر شما فرمول نباید تغییر کنه؟
                            گفتم خدمتتون که اول باید حتما سخت افزار خوب و نمونه برداری واقعی داشته باشین. فیلتر کردن سیگنال کار درستی نیست. چون بخشی از اطلاعات فرکانس و دامنه ی سیگنال از دست میره.
                            اگه لازم باشه در حد بسیار جزئی، مثل همون خازن و مقاومتی که تو پروبها هست انجام بشه. اما نه بصورتی که روی مشخصات موج تاثیر بذاره.
                            مشکل شما از دو حال خارج نیست. یا ولتاژ ورودی واقعا نویزی و متغیره، و یا مبدل مشکل داره و نمونه های نا معتبر میگیره.
                            در حالت اول طبیعتا بهتره که هیچ کاری نکنین تا کاربر بتونه نویزهای سیگنالش رو ببینه و اگه لازم بود برای حذفش کاری بکنه.
                            در حالت دوم هم همونطور که عرض کردم فیلترهای نرم افزاری، مشکلات سخت افزاری رو پوشش نمیدن، اونم برای اسکوپ که تا حد امکان باید تمام اطلاعات سیگنال نمایش داده بشه.
                            بنظرم شما روی سخت افزارتون کار کنین تا اول از اون مطمئن بشید.
                            کمترین توقع از یک فرد تحصیلکرده، دانستن املای صحیح کلمات است.

                            دیدگاه


                              #15
                              پاسخ : طراحی فیتر کالمن با lpc1768

                              ممنونم از پاسختون.
                              به نظر شما نویز می تونه کابل فلت که خروجی دیتا ADC به FPGA وصل می کنه باشه(کابل فلت 15 سانتی).کابل که تکون می دم نویز روی اسیلوسکوپم می دازه؟(البته برد اولیه بود که طراحی کردم برد بعدی ماژول ADC و FPGA روی یک برد طراحی میکنم)

                              دیدگاه

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