اطلاعیه

Collapse
No announcement yet.

ساخت کنترلر دما PID فازی با AVR [آموزشی]

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

    #16
    پاسخ : ساختار سیستم های کنترلی

    نوشته اصلی توسط لوک
    خب سنسور محسوب میشه .. چون المان سنس کننده ست و این دما رو برای ما سنس میکنه
    پس در درجه اول سنسور محسوب میشه
    انتقال دهنده بیشتر معطوف ترانسدیوسر ها هستند و همچنین مبدل هایی که سیگنال و پیام سنسور به شکل استاندارد دراورند مثل 0تا 10 ولت .....

    البته اینجا توی میکرو سیگنال سنسور خود میکرو پردازش و تبدیل به رنج استاندارد میکنه
    و همچنین محاسبه های اولیه

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

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

    با تشکر از شما @};-
    به جز سنسور بودن LM35 بقیه رو کاملا درست گفتی...خیلی خوبه
    LM35 نه سنسور محسوب میشه نه ترنسدیوسر...ترنسدیوسر نیست چون خروجی استاندارد صنعتی که همون 4 تا 20 میلی آمپر باشه رو نداره....اصلا خروجیش از نوع ولتاژه...
    سنسور هم نیست چون اسم LM35DZ به مجموعه سنسور و مدارات جانبی اون گفته میشه....به اون مدار جانبی Signal Conditioning Element گفته میشه...این مدار کارش اینه که خروجی سنسور رو میگیره و به یه سیگنال قابل اندازه گیری با دستگاه های معمولی تبدیل میکنه....پس LM35 مجموعه سنسور و Signal Conditioning element هستش...

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

    www.intelart.ir


    ساخت کنترلر دما PID فازی با AVR [آموزشی]

    دیدگاه


      #17
      انواع روش های کنترلی (FeedBack , Feed Forward , Open loop و ... )

      خب در این پست قراره به انواع روش های کنترلی بپردازیم
      قبل از هرچیز بابت تاخیر پوزش میطلبم...
      انتخاب نوع و روش کنترل برای هر فرایند ممکن متفاوت باشد.
      این طور نیست که بگوییم که مثلا فلان روش کنترلی بهتری است و همیشه و همه جا از آن روش استفاده کنیم.

      کنترل پس خور (Control Feed Back) :
      همانطور که در شکل زیر مشاهده میکنید در کنترل فیدبک اطلاعات مربوط به خروجی سیستم توسط سنسور ها و انتقال دهنده ها به سمت عقب برگشت داده میشود و به کنترل کننده وارد می شود.کنترل کننده پس از تحلیل اطلاعات ورودی تصمیم میگیرد و سپس آن را توسط انتقال دهنده به عنصر نهایی کنترل یا همان محرک یا همان وروردی فرایند منتقل میکند و محرک(ها) به نوبه خود روی خروجی سیستم تاثیر میگذارند.
      کنترل فیدبک متداول ترین نوع کنترل است و بسیاری از کنترلرهای صنعتی بر همین اساس کار میکنند.
      پس کنترل فیدبک بر اساس اندازه گیری خروجی زمان حال و تصمیم گیری بر اساس این اندازه گیری سیستم یا فرایند را کنترل میکند.
      اگه یادتون باشه در مورد انواع ورودی ها گفتیم که دو نوع متغیر ورودی داریم:نوع اول که قابل اندازه گیری بود و نوع دوم که به طور مستقیم قابل اندازه گیری نبود و میتوانست بر حالت سیستم تاثیر بگذارد که اسم ورودی مزاحم رو روش گذاشتیم!
      خب حالا تصور کنید که از کنترل فیدبک استفاده کردیم و ورودی مزاحم به سیستم اعمال می شود در چنین حالتی سیستم به اصطلاح دچار آشفتگی (Upset) میشود.سیستم کنترل بعد از اندازه گیری خروجی و تشخیص اینکه خطایی رخ داده با اقدام مناسب خودش دوباره سیستم رو اصلاح میکنه و به حالت مورد نظر ما می رساند.
      پس در کنترل فیدبک تصمیم گیری بعد از اتفاق افتادن (After The Fact) شروع میشه.
      در زیر ساختار کنترل فیدبک رو مشاهده میکنید:




      کنترل پیشرو (Feed Forward Control) :
      در این نوع کنترل کننده ورودی مزاحم به طور مستقیم اندازه گیری میشه و قبل از اینکه بتونه روی فرایند تاثیر منفی بزاره یا به اصطلاح دچار آشفتگی کنه کنترل کننده فرمان لازم رو برای محرک ورودی میده تا اثر ورودی مزاحم رو خنثی کنه.
      به این نوع کنترل کنترل پیشرو گفته میشه.همانطور که در شکل مشاهده میکنید جلوی ضربه اصلی ناشی از عمل ورودی مزاحم در خروجی گرفته میشود!.
      ویژگی اصلی این نوع کنترل این است که هیچ اطلاعاتی در مورد خروجی یا وضعیت تنظیمی خروجی فرایند نداریم.
      شاید از معایب این نوع کنترل وابستگی شدید به مدل سیستم هست که البته همیشه مدل سیستم در دسترس نیست.همانطور که ذکر شد در این نوع کنترل هیچ اطلاعاتی از خروجی فرایند در دسترس نداریم.مشکل دوم این است که این نوع کنترل وقتی کارساز است که ورودی مزاحم قبل از ورود به سیستم اندازه گیری شود در غیر اینصورت هیچ تاثیر مثبتی نمیتوان از این نوع کنترل انتظار داشت.
      در شکل زیر ساختار کنترل پیشرو را مشاهده میکنید:



      کنترل حلقه باز (Open Loop Control) :

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



      مباحث دیگر در باب سیستم های کنترل :

      در سیستم های کنترل برخی از متغیرهای خروجی از اهمیت خیلی زیادی برخوردار هستند و باید همیشه در مقادیر خاصی که مثلا از جانب کاربر تنظیم میشود نگه داری شوند.یکی از اهداف اصلی کنترل همین ثابت نگه داشتن متغیرهای خروجی در مقادیر مد تنظیم شده است که البته این کنترل میتواند دستی یا اتوماتیک باشد.
      پس تغییر متغیرها میتواند ناشی از دو مورد زیر باشد :

      1- به علت تاثیر ورودی مزاحم
      2- تغییر نقطه تنظیم توسط کاربر یا اپراتور


      وقتی از کنترل تنظیمی (Regulary Control) صحبت میشود منظور این است که سیستم کنترل باید بتواند اثر ورودی مزاحم را خنثی کند و سیستم را در حالت تنظیم شده پایدار کند.از طرف دیگر هدف کنترل دنباله رو ان است که اگر نقطه تنظیم توسط کاربر تغییر کرد بتواند در کمترین زمان ممکن تغییرات را دنبال کند و متغیر(های) خروجی را در این نقطه تنظیم شده نگه دارد.
      تصویر زیر را ببینید :



      طرح یک مثال :

      تصور کنید که قراره دمای یک محیط بسته را کنترل کنیم.
      این محیط بسته میتونه یک کوره گرم کننده آب یا هرچیز دیگه باشه.

      1- خب قدم اول اینه که ببینیم به چه سیستم کنترلی نیاز داریم؟آیا اصلا با کنترل مساله حل میشه؟

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


      3- پیداکردن مهمترین ورودی ها . خب این دفعه هم چندین متغیر ورودی هست که میتونن بر شرایط حاکم بر سیستم تاثیر بذارن مثل : دمای آب ورودی به کوره ، میزان سوخت ورودی به کوره ، میزان هوای ورودی به مشعل کوره ، دبی آب ورودی به کوره و ...
      خب از بین موارد بالا میتونید بگید کدوم یکی ورودی مناسب و کدوم یکی ورودی مزاحم هست ؟
      جواب : میزان سوخت و هوای ورودی به مشعل از جمله متغیرهای ورودی هستند که میشه باهاشون خروجی رو به نحو قابل قبولی کنترل کرد و دبی و دمای آب ورودی هم متغیرهای مزاحم هستند.

      4- انتخاب روش کنترل مناسب. باید با توجه به ماهیت مسئله کنترلی مد نظر ، یک متد مناسب (فیدبک ، پیشرو ، حلقه باز و ...) انتخاب کنیم.(البته در پست بعدی در مورد این ساختارها توضیح بیشتری میدم.الان فقط در حد اسم بدونید)

      5- طراحی کنترل کننده که میتونه با درجه مهارت های مختلفی اجرا بشه.خب این مورد خیلی مهمه چرا که باید با درنظر گرفتن متغیر هایی که در بالا ذکر شد ، یک ساختار مناسب رو انتخاب کنیم و تا از طریق تنظیم متغیرهای ورودی بتونیم تصمیم قابل قبولی جهت کنترل سیستم بگیریم.


      پس داشتن یک درک صحیح از قواعد دینامیکی و ساختار سیستم میتواند به طراحی یک سیستم کنترل بهینه کمک شایانی بکند.

      برخی نکات مهم :

      مبحث کنترل آن گونه که میپندارید ساده و راحت نیست.در عمل مشکلات بسیار زیادی در روبه روی ما قرار دارد.از آنجایی که هدف ما ساخت کنترل کننده است باید این موارد را هم در نظر بگیریم :

      1- غیر خطی بودن فرایند : بسیاری از مدل هایی که در کتاب ها هستند و یا ما آن ها را برای آنالیز انتخاب میکنیم خطی هستند ولی واقعیت موجود چیز دیگری است.در عمل بسیاری از فرایندها غیر خطی هستند و طرح مسئله کنترل در این موارد پیچیدگی های زیادی را از جمله خطی سازی و ... در مقابل ما قرار میدهد.

      2- خطاهای مدلسازی : ممکن است بتوانیم برای چند فرایند ساده عمل خطی سازی را با دقت بالا و بدون خطا انجام دهیم ولی در واقعیت سیستم ها گاهی آنقدر پیچیده هستند که هرگز خطی سازی ما آن دقت مورد نیاز را نخواهد داشت و باید این خطا به نحوی در فرموله کردن سیستم کنترل لحاظ شود وگرنه خروجی سیستم کنترل ما آن چیزی نخواهد بود که انتظار داریم !

      3- سایر مشکلات اجرایی : واقعیت این است که در تجرا مشکلات بیشتر از ان است که فکرش را میکنیم !بع عنوان مثال اگر در کاربردی بخواهیم دمای سیال عبوری از یکی لوله را ندازه بگیریم باید این را هم در نظر بگیریم که اجسام اطراف لوله هم بر روی دمای سیال تاثیر میگذارند!یا مثلا ممکن است تاثیر گذاشتن رو یک متغیر باعث تغییر در متغیر دیگری شود و آن هم به نوبه خود با عث تغییر در متغیر دیگر!

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

      4- ساختارهای فرایند پیچیده : در مثالی که در بالا ارائه شد تعداد ورودی خروجی کم بود.اما در بسیاری اوقات تعداد متغیرها بیشتر خیلی بیشتر بوده و روابط بین آن ها پیچیده است.که البته در این موارد میتوان فرایند پیچیده را به چند فرایند ساده تر تقسیم کرد که در این صورت مطالعه فرایند ساده تر میشود.

      البته هدف ما از ایجاد این تاپیک ساخت یک مورد ساده از سیستم کنترل است که خوشبختانه چون با نرم افزار سروکار داریم میتوانیم به راحتی خیلی از این موارد را جبران کنیم!

      و البته در نهایت با طراحی کنترلر فازی تمامی این مشکلات به راحتی آب خوردن جبران میشوند.

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

      www.intelart.ir


      ساخت کنترلر دما PID فازی با AVR [آموزشی]

      دیدگاه


        #18
        پاسخ : انواع روش های کنترلی (FeedBack , Feed Forward , Open loop و ... )

        نوشته اصلی توسط punisher.x64

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


        3- پیداکردن مهمترین ورودی ها . خب این دفعه هم چندین متغیر ورودی هست که میتونن بر شرایط حاکم بر سیستم تاثیر بذارن مثل : دمای آب ورودی به کوره ، میزان سوخت ورودی به کوره ، میزان هوای ورودی به مشعل کوره ، دبی آب ورودی به کوره و ...
        خب از بین موارد بالا میتونید بگید کدوم یکی ورودی مناسب و کدوم یکی ورودی مزاحم هست ؟
        جواب : میزان سوخت و هوای ورودی به مشعل از جمله متغیرهای ورودی هستند که میشه باهاشون خروجی رو به نحو قابل قبولی کنترل کرد و دبی و دمای آب ورودی هم متغیرهای مزاحم هستند.
        ممنون از دوست و استاد گرامی

        یه سوال برام پیش اومد ؟

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

        -2 چرا دمای اب رو وروذی مزاحم خوندیت ؟ در واقع ایا ورودی است که اغشته به وردی مزاحم ؟
        ایا ورودی مزاحم به ورودی گفته میشه که مقدارش دست ما نیست
        مثلا در مثال کنترل دمای هوای یک اتاق ؟ وروی مزاحم میشه تغییرات دمایی که حین باز و بسته شدن درب اتاق رخ میده ؟

        و همچنین گفتید ورودی میزان اب (مزاحم ) ؟ اگه میزان وردی اب دست ما باشه که دیگه مزاحم نیست و تحت کنترل ماست
        و اینکه یکبار ورودی و یک بار خروجی تعریف شده اینه که
        مثلا دمای اب که توسط سنسور گزارش میشه = ورودی
        و میزان دمای اب = خروجی

        در واقع وردی مزاحم یعنی همون عاملی که ما رو به طرف کنترل سوق میده
        میشه گفت ناهنجاری های که باید کنترل بشن
        ؟
        و یبار گفتید که میزان سوخت ورودی هست ؟ در واقع برای کنترل دما ما میایم سوخت رو افزایش یا کاهش میدیم ! پس خروجی تحت کنترل هست
        چرا میگید ورودی

        در واقع کدوم خروجی ماست ؟ کنترل میزان سوخت یا دما اب یا هر دو؟


        کمی این ورودی و خروجی ها ادم بفکر فرو میکنه .. که چی خروجی و چی ورودی
        ممنون از شما

        دیدگاه


          #19
          پاسخ : ساخت کنترلر PID فازی با AVR --- آموزشی ---

          ممنون از دوست و استاد گرامی
          !!!!! به قول یکی از رفیقام استاد خودتی!!! :mrgreen:

          در مرحله اول من راجب این متغییر خروجی سوال داشتم ؟ شما دمای اب رو خروجی بیان کردید
          و جای دیگه ورودی ؟
          نه دیگه دقت نکردی!گفتم دمای آب ورودی به کوره ورودی مزاحم هست و دمای آب خروجی که مطلوب ماست متغیر خروجی...
          فرض کن کوره داره یک میزان سوخت ثابت رو به مشعل میرسونه تا دمای آب خروجی روی 80 بمونه...فرض کن در همین حالت دمای آب ورودی 20 هست...پس برای اینکه دمای آب خروجی 80 باشه باید فلان قدر سوخت بدیم به مشعل به شرطی که دمای آب ورودی 20 باشه...حالا اگه دمای آب ورودی 5 درجه بشه چه اتفاقی میفته؟مسلما دیگه با مصرف اون میزان سوخت دمای آب خروجی 80 نمیشه و باید سوخت بیشتری مصرف کرد...حالا فرض کن سیستم در حال خودشه و داره مثل ساعت کار میکنه...یهو دمای آب ورودی بیاد پایین یا اصلا بره بالا!خب روی خروجی تاصیر میذاره پس سیستم باید خودشو اصلاح کنه تا اثر این ورودی که مزاحم تلقی میشه رو از بین ببره...واضحه که کنترل دمای آب ورودی دست ما نیست!

          -2 چرا دمای اب رو وروذی مزاحم خوندیت ؟ در واقع ایا ورودی است که اغشته به وردی مزاحم ؟
          ایا ورودی مزاحم به ورودی گفته میشه که مقدارش دست ما نیست
          مثلا در مثال کنترل دمای هوای یک اتاق ؟ وروی مزاحم میشه تغییرات دمایی که حین باز و بسته شدن درب اتاق رخ میده ؟
          در واقع همیشه ورودی آب دست ما نیست...فرض کن از یک تانکر با ارتفاع 10 متر داری آب رو وارد کوره میکنی...خب باز هم تصور کن که شیر کنترلی روی 50درصد باز باشه....و وفرض که در این حالت فلوی آب ورودی 20لیتر بر صانیه باشه...حالا با کم شدن میزان آب درون تانکر فشار آب کم میشه و به تبع اون فلوی آب کم میشه با اینکه شیر کنترل روی 50درصد هست...اینجا این تغییر سطح آب تانکر میشه ورودی مزاحم که البته با کنترل Feed Forward میتونی کنترلش کنی...
          خب اولی رو که بالا گفتم...در مورد دمای اتاق هم کاملا درست میگی...مثلا جابه جا شدن هوای اتاق ورودی مزاحم هستش...

          در واقع کدوم خروجی ماست ؟ کنترل میزان سوخت یا دما اب یا هر دو؟


          کمی این ورودی و خروجی ها ادم بفکر فرو میکنه .. که چی خروجی و چی ورودی
          اینجا دمای آب خروجی متغیر خروجی ماست و میزان سوخت ورودی متغیر ورودی که با تغییر دادنش میتونیم متغیر خروجی رو متاثر کنیم...اینو هم بدون که ممکنه بعضی وقتا چندین متغیر خروجی داشته باشیم...در حالت کلی چیزی کیخوایم اون رو در حالت مطلوب نگه داریم میشه متغیر خروجی و اون چیزی که باهاش میشه روی خروجی تاثیر گذاشت میشه متغیر ورودی و اون چیزی که روی خروجی تاثیر میذاره ولی تکلیفش نامشخصه و معلوم نیست چی به چیه میشه متغیر ورودی مزاحم!
          حالا تو همین مورد کوره دوتا متغیر ورودی داریم : 1- میزان سوخت ورودی به مشعل 2- میزان هوای ورودی به مشعل....ممکنه بعضی وقتا چندین متغیر ورودی دیگه داشته باشیم ولی از بعضی از اون ها واسه تغییر درخروجی استفاده کنیم...مثلا همینجا میشه درچه هوا رو یک مقدار خاص ثابت کرد و با تغییر میزان سوخت ورودی دمای آب خروجی رو تغییر داد...پس در این حالت یک متغیر ورودی داریم و اون هم میزان سوخت ورودی هستش...

          تولید کننده تجهیزات برنامه پذیر اتوماسیون صنعتی

          www.intelart.ir


          ساخت کنترلر دما PID فازی با AVR [آموزشی]

          دیدگاه


            #20
            پاسخ : ساخت کنترلر PID فازی با AVR --- آموزشی ---

            نوشته اصلی توسط punisher.x64
            !!!!! به قول یکی از رفیقام استاد خودتی!!! :mrgreen:

            استاد یعنی اموزگار ( معلم ) ( اموزش دهنده ) (یعنی ذهنی که حاوی جواب // سوال های که تو ذهن مخاطبشه )

            ممنون حاوی جان

            اینجا دمای آب خروجی متغیر خروجی ماست و میزان سوخت ورودی متغیر ورودی که با تغییر دادنش میتونیم متغیر خروجی رو متاثر کنیم...اینو هم بدون که ممکنه بعضی وقتا چندین متغیر خروجی داشته باشیم...در حالت کلی چیزی کیخوایم اون رو در حالت مطلوب نگه داریم میشه متغیر خروجی و اون چیزی که باهاش میشه روی خروجی تاثیر گذاشت میشه متغیر ورودی و اون چیزی که روی خروجی تاثیر میذاره ولی تکلیفش نامشخصه و معلوم نیست چی به چیه میشه متغیر ورودی مزاحم!
            حالا تو همین مورد کوره دوتا متغیر ورودی داریم : 1- میزان سوخت ورودی به مشعل 2- میزان هوای ورودی به مشعل....ممکنه بعضی وقتا چندین متغیر ورودی دیگه داشته باشیم ولی از بعضی از اون ها واسه تغییر درخروجی استفاده کنیم...مثلا همینجا میشه درچه هوا رو یک مقدار خاص ثابت کرد و با تغییر میزان سوخت ورودی دمای آب خروجی رو تغییر داد...پس در این حالت یک متغیر ورودی داریم و اون هم میزان سوخت ورودی هستش...
            پس من مثال میزنم:
            ما یک اتاق معمولی دارم که میخوام دماش رو روی 30 درجه نگه دارم

            من اینجا یک سنسور دما دارم
            و یک هیتر

            پس کنترل ( دما هوای اتاق) میشه خروجی ما
            و کنترل جریان و ولتاز هیتر میشه ورودی ما
            و اینجا وروی مزاحم چیه ؟
            دمای سنس شده چیه ؟

            دیدگاه


              #21
              پاسخ : ساخت کنترلر PID فازی با AVR --- آموزشی ---

              نوشته اصلی توسط لوک

              استاد یعنی اموزگار ( معلم ) ( اموزش دهنده ) (یعنی ذهنی که حاوی جواب // سوال های که تو ذهن مخاطبشه )

              ممنون حاوی جان

              پس من مثال میزنم:
              ما یک اتاق معمولی دارم که میخوام دماش رو روی 30 درجه نگه دارم

              من اینجا یک سنسور دما دارم
              و یک هیتر

              پس کنترل ( دما هوای اتاق) میشه خروجی ما
              و کنترل جریان و ولتاز هیتر میشه ورودی ما
              و اینجا وروی مزاحم چیه ؟
              دمای سنس شده چیه ؟
              خب منظورم این بود که منم چیزی بلد نیستم...آره بابا...

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

              www.intelart.ir


              ساخت کنترلر دما PID فازی با AVR [آموزشی]

              دیدگاه


                #22
                پاسخ : ساخت کنترلر PID فازی با AVR --- آموزشی ---

                با عرض سلام و تشکر بسیار زیاد

                با توجه به اون مطالبی که در مورد انواع سیستم های کنترل گفتید آیا میشه گفت هر کنترل دنباله رو یه کنترل تنظیمی است؟

                و یک سوال شاید مسخره در مورد اون شکل ها: عنصر نهایی دقیقا چی هست؟

                سوال دیگه اینکه آیا کنترل می تواند به طور همزمان feed forward و feed backward باشد؟

                به طور کلی مطالب خیلی خوب و قابل فهم دارن بیان میشن و خیلی از شما متشکرم و مشتاقانه منتظر بخش های بعدی می مانیم.....

                دیدگاه


                  #23
                  پاسخ : ساخت کنترلر PID فازی با AVR --- آموزشی ---

                  سلام دوست گرامی...بسیار سپاسگزارم...لطف دارید

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

                  عنصر نهایی دقیقا چی هست؟
                  عنصر نهایی همون شیر کنترل هستش.حالا شیر کنترل تعریفی واسه محرک هست.یک المنت با یک دیمر در کنارش یک شیر کنترل محسوب میشه ، یک فن که بشه دورشو تغییر داد یک شیر کنترل هست ، و حتی شیر آبی که بشه دریچه ورودیش رو تغییر داد یک شیر کنترل هست.

                  آیا کنترل می تواند به طور همزمان feed forward و feed backward باشد؟
                  بله میشه .فهرست رو یک نگاه بندازید!یکی از مثال های حلقه های کنترل پیشرفته کنترلر با Feed Forward و Feed Back هستش.

                  مطالب بعدی رو به محض اماده شدن پ میکنم...
                  موفق باشید
                  تولید کننده تجهیزات برنامه پذیر اتوماسیون صنعتی

                  www.intelart.ir


                  ساخت کنترلر دما PID فازی با AVR [آموزشی]

                  دیدگاه


                    #24
                    پاسخ : ساخت کنترلر PID فازی با AVR --- آموزشی ---

                    سلام دوست عزیز
                    میگم امکانش هست که این اموزش های که سرفصل شونو زدید تا قبل عید اموزش بدید؟
                    و اون کنترل فازی چون پیچیده تره رو به بعد عید موکول کنید

                    همین که خیلی مشتاقانه تاپیک دنبال میکنم
                    و همچنین قدردان زحمات شما دوست گرامی رو هستم و ایم @};-

                    [move] ... :nerd: :nerd: ... [/move]

                    دیدگاه


                      #25
                      پاسخ : ساخت کنترلر PID فازی با AVR --- آموزشی ---

                      نوشته اصلی توسط لوک
                      سلام دوست عزیز
                      میگم امکانش هست که این اموزش های که سرفصل شونو زدید تا قبل عید اموزش بدید؟
                      و اون کنترل فازی چون پیچیده تره رو به بعد عید موکول کنید
                      از یک طرف هم میترسم بعد عید اینترنت نداشته باشم
                      همین که خیلی مشتاقانه تاپیک دنبال میکنم
                      و همچنین قدردان زحمات شما دوست گرامی رو هستم و ایم @};-

                      [move] ... :nerd: :nerd: ... [/move]
                      سلام..مرسی لطف دارید
                      والا تا قبل عید که فکر نکنم ...دو هفته دیگه عید میشه! :redface:
                      ولی خب تا جایی که بتونم سعیمو میکنم....چشم
                      پست بعدی رو هم امروز میذارم...
                      حالا اگه یه قسمتیش بیفته بعد عید اشکالی داره؟
                      تولید کننده تجهیزات برنامه پذیر اتوماسیون صنعتی

                      www.intelart.ir


                      ساخت کنترلر دما PID فازی با AVR [آموزشی]

                      دیدگاه


                        #26
                        پاسخ : ساخت کنترلر PID فازی با AVR --- آموزشی ---

                        نوشته اصلی توسط punisher.x64
                        سلام..مرسی لطف دارید
                        والا تا قبل عید که فکر نکنم ...دو هفته دیگه عید میشه! :redface:
                        ولی خب تا جایی که بتونم سعیمو میکنم....چشم
                        پست بعدی رو هم امروز میذارم...
                        حالا اگه یه قسمتیش بیفته بعد عید اشکالی داره؟
                        نه دوست من اشکالی نداره ... و من گفتم اگه امکانش هست
                        در کل همش لطف شماست .. اجباری که در میون نیست
                        فقط بابت نت خودم نگران بودم که شاید بعد عید دسترسی نداشته باشم
                        و از این اموزش زیبا بی نصیب بشم
                        هر جور که امکانش هست اقدام کنید
                        و ما همچنان مشتاقانه این تاپیک دنبال میکنیم
                        و از زحمات شما دوست عزیز تشکر داریم @};-

                        دیدگاه


                          #27
                          پاسخ : ساخت کنترلر PID فازی با AVR --- آموزشی ---

                          نوشته اصلی توسط لوک
                          نه دوست من اشکالی نداره ... و من گفتم اگه امکانش هست
                          در کل همش لطف شماست .. اجباری که در میون نیست
                          فقط بابت نت خودم نگران بودم که شاید بعد عید دسترسی نداشته باشم
                          و از این اموزش زیبا بی نصیب بشم
                          هر جور که امکانش هست اقدام کنید
                          و ما همچنان مشتاقانه این تاپیک دنبال میکنیم
                          و از زحمات شما دوست عزیز تشکر داریم @};-
                          شما لطف داری...پس امروز سعی میکنم هر طور شده پست بعدی رو بزارم..
                          تولید کننده تجهیزات برنامه پذیر اتوماسیون صنعتی

                          www.intelart.ir


                          ساخت کنترلر دما PID فازی با AVR [آموزشی]

                          دیدگاه


                            #28
                            انواع مدل های سیستم و مدل های مرتبه اول با تا

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

                            انواع مدل های سیستم :

                            مدل های درجه اول همراه با تاخیر زمانی :

                            اصول این روش بر مبنای بدست اوردن پاسخ پله واحد است.از ان جایی که اکثر فرایند های صنعتی از این نوع هستند و به منحنی های S شکل معروف هستند ما نیز تمرکز بیشتری برای این مدل به خرج میدهیم.
                            تابع تبدیل ورودی خروجی یک فرایند با چنین منحنی پاسخی را میتوان به صورت تابع تبدیل زیر تعریف نمود که به ان تابع تبدیل درجه اول همراه با اخیر زمانی گفته میشود :







                            همانطور که مشاهده میکنید این یک تابع تبدیل درجه یک به همراه تاخیر زمانی است.البته تاخیر زمانی خود یک رفتار مرتبه بالاتر را نشان میدهد و نباید ان را به اشتباه درجه اول تصور نمود.
                            این را هم در نظر داشته باشید که تاخیر زمانی در حوزه لاپلاس معادل معادل شیفت زمانی در حوزه زمان است.
                            برای یافتن پارامتر های تابع تبدیل مذکور باید ابتدا سه پارامتر شامل بهره DC یا بهره مانای مربوط به K ، ثابت زمانی τ و تاخیر زمانی t_d را بدست آوریم .
                            برای این منظور خط مماس بر منحنی را که از نقطه عطف منحنی (جایی که تقعر منحنی تغییر پیدا میکند) عبور میکند رسم میکنیم.بدین ترتیب پارامترهای مجهول محاسبه خواهند شد.
                            توجه کنید که این مدل یک تقریب اولیه است و اگر خروجی سیستم با خروجی این مدل یکی نباشد باید از ساختار های دیگری استفاده شود که چون ما بدان نیاز نداریم از گفتن ان صرف نظر میشود.پس از سیستم ها مرتبه اول با تاخیر زمانی سراغ سیستم های با مرتبه بالاتر میرویم اما از انجا که با سیستم های ساده چون سیستم های حرارتی سروکار داریم از گفتن مباحث مربوط به سیستم های مرتبه بالاتر فاکتور میگیرم!

                            اگه مایل بودید میتونم در مورد سیستم های مرتبه دوم و بالاتر و مدل سازی ریاضی اون ها بحث کنیم ولی واسه کار ما بی فایده ست و اصلا نیازی بهش پیدا نمیکنیم...

                            مطالب گفته شده در این پست را بدقت مطالعه کنید چرا که در اینده برای بدست آوردن ضرایب PID برای سیستم های مرتبه اول با تاخیر زمانی (به عناون مثال سیستم های حرارتی) استفاده خواهد شد.
                            اگر جمله بندی ها زیاد درست و حسابی نبود ببخشید دیگه.آخر شبه و ما هم...
                            تولید کننده تجهیزات برنامه پذیر اتوماسیون صنعتی

                            www.intelart.ir


                            ساخت کنترلر دما PID فازی با AVR [آموزشی]

                            دیدگاه


                              #29
                              کنترلرهای کلاسیک و خواص آن ها

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

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



                              البته فکر میکنم نیازی به توضیح نباشه که چرا اینجا فیدبک منفی استفاده شده...اگه فکر میکنید نیاز هست بگید تا در این مورد هم صحبت کنیم...

                              ویژگی های عمومی یک سیستم فیدبک :

                              کنترل فیدبک چندین ویژگی قابل توجه و مهم دارد که باعث شده است در بسیاری از سیستم های کنترل مورد استفاده قرار گیرد.البته نسبت به کنترل حلقه باز پیچیدگی های ساخت و مشلات طراحی به آن اضافه می شود!.
                              در زیر سیستم کنترل حلقه باز و حلقه بسته را مشاهده میکنید:



                              خروجی برای سیستم های فیدبک و حلقه باز را مشاهده میکنید :


                              در سیستم حلقه باز واضح است که هر تغییری در D یا G به طور مستقیم بر خروجی اثر می گذاردولی در سیستم حلقه بسته اگر اندازه بهره(Gain) یا همان |DG| خیلی بزرگتر از 1 انتخاب شود (|DG|>>1 ) میتوان از عدد 1 در مخرج کسر صرف نظر کرد و به دنبال ان صورت و مخرج کسر را ساده کرد . به طور تقریبی میتوان نوشت :

                              کد:
                              Y2(s)~ R(s)
                              پس میتوان این استدلال را داشت که تغییر در D و G اصری بر خروجی ندارد ، یعنی خروجی مستقل از از این تغییرات عمل خواهد کرد.این کاهش حساسیت سیستم به تغییرات پارامترها دلیل اساسی استفاده از سیستم های کنترل فیدبک است.

                              اگرچه مهمترین دلیل استفاده از فیدبک کاهش حساسیت سیستم می باشد ولی خصوصیات مفید دیگری نیز در استفاده از کنترل فیدبک وجود دارد که به شرح ذیل بیان می شوند :

                              حذف اثر ورودی مزاحم (Disturbance Rejection) :

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

                              عدم قطعیت مدل های طراحی شده (Model Noncertainty) :

                              مدل های همیشه تقریبی از فرایند واقعی هستند .در ساختار فیدبک به خاطر حذف تقریبی اثر D و G (مدل فرایند و مدل کنرل کننده) ، هدم قطعیت موجود برای مدل بدست آمده تاصیر گذار نخواهد بود ولی در کنترل حلقه باز این ویژگی موضوعیت ندارد.

                              ناپایداری فرایند :

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

                              www.intelart.ir


                              ساخت کنترلر دما PID فازی با AVR [آموزشی]

                              دیدگاه


                                #30
                                پاسخ : ساخت کنترلر PID فازی با AVR --- آموزشی ---

                                راستی یادم رفت بگم...
                                تا اینجا مطالب بیسیک گفته شد و از پست بعدی وارد موارد عملی میشیم...پس لطفا تا اینجای کار اگه جایی رو نتونستم درست توضیح بدم و حق مطلب رو ادا نکردم لطفا اعلام کنید تا اون قسمت رفع ابهام بشه تا مباحث بعدی رو با آمادگی کامل جلو ببریم...
                                با تشکر از همه...
                                تولید کننده تجهیزات برنامه پذیر اتوماسیون صنعتی

                                www.intelart.ir


                                ساخت کنترلر دما PID فازی با AVR [آموزشی]

                                دیدگاه

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