اطلاعیه

Collapse
No announcement yet.

سیمولینک

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

    سیمولینک

    سلام
    من یک برنامه ای در سیمولینک پیاده سازی کردم منتها در این برنامه نیاز به ساختن یک متغیر هست که با زمان تغییر می کنه به صورت زیر:
    [left]tc=0.8
    ts=0.16+0.3tc4
    tm=mod(t,tc)a(t)= (1-cos(2*pi*tm/ts))/2 if tm<ts
    a(t)= 0 if tm>ts
    بلوک زیر رو طراحی کردم ولی همیشه a=0 میشه (نتونستم عکس رو لود کنم)
    دوستان اگه راهنمایی کنید ممنون میشم.

    #2
    پاسخ : سیمولینک

    نوشته اصلی توسط shahbazy
    سلام
    من یک برنامه ای در سیمولینک پیاده سازی کردم منتها در این برنامه نیاز به ساختن یک متغیر هست که با زمان تغییر می کنه به صورت زیر:
    [left]tc=0.8
    ts=0.16+0.3tc4
    tm=mod(t,tc)a(t)= (1-cos(2*pi*tm/ts))/2 if tm<ts
    a(t)= 0 if tm>ts
    بلوک زیر رو طراحی کردم ولی همیشه a=0 میشه (نتونستم عکس رو لود کنم)
    دوستان اگه راهنمایی کنید ممنون میشم.
    اینجا tc با زمان تغییر میکنه؟ اگه تغییر با زمان خطی است خیلی راحت میتونی به کمک بلوک Ramp یک خط راست با شیب دلخواه و نقطه شروع دلخواه ایجاد کنی و از اون به عنوان tc استفاده کنی. اگه اینطوری نیست بیشتر توضیح بده تا بتونم راهنمایی کنم.

    دیدگاه


      #3
      پاسخ : سیمولینک

      نوشته اصلی توسط mhm_004
      اینجا tc با زمان تغییر میکنه؟ اگه تغییر با زمان خطی است خیلی راحت میتونی به کمک بلوک Ramp یک خط راست با شیب دلخواه و نقطه شروع دلخواه ایجاد کنی و از اون به عنوان tc استفاده کنی. اگه اینطوری نیست بیشتر توضیح بده تا بتونم راهنمایی کنم.
      سلام
      tc مقدار ثابت 0.8 هست. با این حساب ts مقدار 0.4 بدست میاد. وقتی tm رو محاسبه میکنم طبق دستور mod خروجی درست بدست نمیاد. مشکلم ساختن tm هست که با مقدار ثابت ts مقایسه کنم و مقدار a رو محاسبه کنم.

      دیدگاه


        #4
        پاسخ : سیمولینک

        نوشته اصلی توسط shahbazy
        سلام
        من یک برنامه ای در سیمولینک پیاده سازی کردم منتها در این برنامه نیاز به ساختن یک متغیر هست که با زمان تغییر می کنه به صورت زیر:
        [left]tc=0.8
        ts=0.16+0.3tc4
        tm=mod(t,tc)a(t)= (1-cos(2*pi*tm/ts))/2 if tm<ts
        a(t)= 0 if tm>ts
        بلوک زیر رو طراحی کردم ولی همیشه a=0 میشه (نتونستم عکس رو لود کنم)
        دوستان اگه راهنمایی کنید ممنون میشم.
        سلام دوستان
        من واسه ساختن tm مشکل دارم. توی سیمولینک طبق رابطه زیر بلوک ساختم ولی جواب مطابق با دستور tm=mod(t,tc) در نمیاد:
        t-(floor(t/tc)*tc)
        که توی این فرمول t همان زمان هست و tc مقدار ثابت 0.8 هست.
        لطفا اگر کسی راه حل رو میدونه راهنمایی کنه.

        دیدگاه


          #5
          پاسخ : سیمولینک

          سلام دوستان
          بالاخره موفق شدم مشکل رو حل کنم
          اگر کسی با این مشکل مواجه شد که شکل ها درست نمایش داده نمی شد و یا پارامتری درست تنظیم نمی شد بهتره اول توی قسمت simulation,
          configure parameter,solver, برید و fixed step رو انتخاب کنید و step رو اونقدر تغییر بدید تا دقت بالا بره.

          دیدگاه

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