اطلاعیه

Collapse
No announcement yet.

مشکل در کنترل دور موتور

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

    مشکل در کنترل دور موتور

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

    #2
    پاسخ : مشکل در کنترل دور موتور

    با سلام.
    لطفا توضیح دقیقتری بدین؛ مشخصات موتور، نحوه ی کنترل ، نحوه ی قرائت دور و در صورت امکان،برنامه ی نوشته شده.

    دیدگاه


      #3
      پاسخ : مشکل در کنترل دور موتور

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


      ولی دور موتور ثابت نمی تون بمونه . بعد از اینکه به میزان مورد نظر رسید مدام بالا پایین میشه ، یه چیزی شبیه میرایی بحرانی که تو کنترل می خوندیم!( البته بعد از مدت زیادی میرا میشه ولی خیلی طول می کشه-چند دقیقه!)

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

      دیدگاه


        #4
        پاسخ : مشکل در کنترل دور موتور

        خب تا الان من اینجوریش رو کار نکردم و متأسفانه اطلاعات دقیقی تو این زمینه ندارم.فکر کردم موتورDC توان پایین رو دارین کنترل میکنین و با PWM ( مثلا با L298 )

        فقط این مورد به ذهنم رسید(که نمیدونم تا چه حدی درست هست) احتمالا علت کم و زیاد شدن سرعت موتور ،ایجاد نوسان بین خازنهای صافی و سلف معادل موتور هست(البته احتمالش کمه) اگه امکانش باشه یه مقاومت نسبتا زیاد با توان بالا (مثلا 10 کیلو 2 وات ) با موتور موازی ببندین ببینین تأثیری داره؟ و اینکه میگین دیود هرزگزد که میزارین فیوز میپره؛ دیود رو درست قرار میدین؟

        دیدگاه


          #5
          پاسخ : مشکل در کنترل دور موتور

          نه نوع نوسان از برنامه کوفتی منه!
          برای اینکه هم نوسان ها در زمان های بلند اتفاق میافته ( مثلا 6 ثانیه یا 16 ثانیه! ) و هم اینکه اگر سیستم کنترلی نباشه و فقط یک قدرت خاص بهش بدم تقریبا ! ثابت میمونه
          من دیود رو به صورت موازی با موتور و خازن صافی می بندم البته با جهت عکس ( یعنی اگر دیود رو یک فلش در نظر بگیریم میشه از سر منفی به سمت سر مثبت )
          دوستان عزیزم تصمیم گرفتم تا یه مدت کمتر به تالار سر بزنم . اگر دیر جواب دادم ببخشید.

          دیدگاه


            #6
            پاسخ : مشکل در کنترل دور موتور

            با سلام خدمت همه دوستان


            راستش من تابه حال نه با موتور های DC کار کردم و نه با AC , اما یه جایی یه مطلبی خوندم در باره کنترل دور موتور های AC , در اونجا یه نکته مهمی رو متوجه شدم , اونم این بود که نمیشه همینجوری با یه PWM دور موتور AC رو کنترل کرد , درست خاطرم نیست اما فکر میکنم باید به وسیله یک دیود زمان پیک فرکانس 50Hz رو چک کرد و وقت های خاصی عمل سوئچ رو انجام داد

            اگر رفرنس رو پیدا کردم اطلاع میدم
            نا اميدي يه دروغ بزرگه که آدما به خودشون ميگن
            تلاش يه حقيقت بزرگه که با صبر به ثمر ميرسه

            دیدگاه


              #7
              پاسخ : مشکل در کنترل دور موتور

              نوشته اصلی توسط محمدحسـین
              نه نوع نوسان از برنامه کوفتی منه!
              برای اینکه هم نوسان ها در زمان های بلند اتفاق میافته ( مثلا 6 ثانیه یا 16 ثانیه! ) و هم اینکه اگر سیستم کنترلی نباشه و فقط یک قدرت خاص بهش بدم تقریبا ! ثابت میمونه
              من دیود رو به صورت موازی با موتور و خازن صافی می بندم البته با جهت عکس ( یعنی اگر دیود رو یک فلش در نظر بگیریم میشه از سر منفی به سمت سر مثبت )
              خب اگه اینطوره؛ جهت اطمینان به جای کنترل ترایاک با میکرو؛ بیاین یه دیمر بذارین و تست بکنین که موتور تغییر سرعت داره یا نه؟

              ضمنا الان یادم اومد! شما ترایاک رو چطوری با میکرو کنترل میکنین؟ آیا از اپتوترایاک استفاده میکنین؟ و از مدار Zero Cros جهت تعیین زاویه آتش ترایاک استفاده میکنین؟

              جهت دیود هم که درست قرار دادین.(آند دیود به زمین و کاتد به مثبت ) فقط با توجه به اینکه جهت چرخش موتور ثابت هست و فقط دورموتور کم و زیاد میشه؛اصلاً نیازی به دیود هرزگرد هست یا نه؟
              راستی میکروتون چی هست؟

              دیدگاه


                #8
                پاسخ : مشکل در کنترل دور موتور

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

                این روشها کمی زمان بر هستن پیشنهادم این هست از آی سی های درایور دور موتور AC که توانایی راه اندازی 6 IGBT رو دارن استفاده کنین تا نیازی به برنامه نویسی زیاد نباشه

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

                دیدگاه


                  #9
                  پاسخ : مشکل در کنترل دور موتور

                  نحوه تصمیم گیریت در مورد روشن/خاموش کردن کنترلرت چطوره؟
                  شما یه کنترلر تناسبی (اگه اینطور باشه!) ساختی که دقت سنسور اندازه گیری و منطق سوئیچینگت خیلی اهمیت دار میشه

                  دیدگاه


                    #10
                    پاسخ : مشکل در کنترل دور موتور

                    نوشته اصلی توسط شاهرخ
                    خب اگه اینطوره؛ جهت اطمینان به جای کنترل ترایاک با میکرو؛ بیاین یه دیمر بذارین و تست بکنین که موتور تغییر سرعت داره یا نه؟
                    آره ثابته . همون طور که گفتم اگر با برنامه هم یه مقدار ثابت بهش بدم دور موتور ثابته. من فکر می کنم مشکل اصلی اینجاست که قدرتی که من به موتورم اعمال می کنم ( بخاطر چیزایی مثل اینرسی و اصطکاک و ... ) بعد از یه مدت خودش رو نشون می ده . مثلا من وقتی که از 0 شروع می کنم و قدرت ثابت به موتور می دم بعد از 12 ثانیه به 1000 دور خودش می رسه و هنگامی که در دور 800 هستم و این قدرت رو به موتور می دم 6 ثانیه طول می کشه که روی 1000 دور ثابت بشه . [glow=red,2,300]من فکر می کنم باید یه برنامه ای بنویسم که با این زمان تاخیر مقابله کنه و اون رو جبران کنه [/glow]

                    ضمنا الان یادم اومد! شما ترایاک رو چطوری با میکرو کنترل میکنین؟ آیا از اپتوترایاک استفاده میکنین؟ و از مدار Zero Cros جهت تعیین زاویه آتش ترایاک استفاده میکنین؟
                    بله دقیقا
                    جهت دیود هم که درست قرار دادین.(آند دیود به زمین و کاتد به مثبت ) فقط با توجه به اینکه جهت چرخش موتور ثابت هست و فقط دورموتور کم و زیاد میشه؛اصلاً نیازی به دیود هرزگرد هست یا نه؟
                    راستی میکروتون چی هست؟
                    منظورتون رو متوجه نمی شم . اونجور که من فهمیدم برای همه ی سلف ها و سیم پیچی ها ، کلا دیود هرز گرد لازمه چون با قطع شدن تغذیه اونا تمایل به بازگرداند انرژیشون در جهت عکس دارن
                    من از این میکروی pic16f877a استفاده می کنم ( خیلی هم از این پیک میکروها ناراضی ام چون هم فرکانس رو 1/4 می کنن و هم کل زمان هایی که باهاشون محاسبه کردم و درآوردم اشتباه شده)
                    دوستان عزیزم تصمیم گرفتم تا یه مدت کمتر به تالار سر بزنم . اگر دیر جواب دادم ببخشید.

                    دیدگاه


                      #11
                      پاسخ : مشکل در کنترل دور موتور

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

                      این روشها کمی زمان بر هستن پیشنهادم این هست از آی سی های درایور دور موتور AC که توانایی راه اندازی 6 IGBT رو دارن استفاده کنین تا نیازی به برنامه نویسی زیاد نباشه

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

                      دیدگاه


                        #12
                        پاسخ : مشکل در کنترل دور موتور

                        نوشته اصلی توسط mojalan
                        نحوه تصمیم گیریت در مورد روشن/خاموش کردن کنترلرت چطوره؟
                        شما یه کنترلر تناسبی (اگه اینطور باشه!) ساختی که دقت سنسور اندازه گیری و منطق سوئیچینگت خیلی اهمیت دار میشه
                        - من خروجی رو ( یعنی دور موتور رو ) با سنسور اندازه گیری می کنم ولی بلافاصلاله اون رو به صورت پالس های دیجیتال 5 ولتی در میارم و میکرو کنترل می کنه.( پس دقت سنسور به نظر من اهمیت نداره )
                        - منطق سوئیچینگ ؟!؟
                        دوستان عزیزم تصمیم گرفتم تا یه مدت کمتر به تالار سر بزنم . اگر دیر جواب دادم ببخشید.

                        دیدگاه


                          #13
                          پاسخ : مشکل در کنترل دور موتور

                          1- وقتی سنسور میگه 1000 دور؛ واقعا چقدر فکر میکنی این 1000 درست باشه و مثلا 980 نباشه
                          2- بلافاصله اونو پالس 5 ولتی میکنی ؛ دقیق ترش اینه که بعد از انجام محاسبات با میکرو این کار انجام میشه که حدود چند ده میکرو ثانیه در بهترین حالت طول میکشه! و تاخیر یکی از اصلیترین عوامل ناپایداریه
                          3- منطق سوئیچینگ: که با توضیحاتی که داردی مشخص میشه که متناسب با میزان خطاست یعنی سنسور میگه 900 و شما میخوای 1000 باشه اونوقت اختلاف 100 تاست و شما به اندازه اون دیوتی سایکل پالس رو زیاد میکنی

                          دیدگاه


                            #14
                            پاسخ : مشکل در کنترل دور موتور

                            - در مورد 1000 دور و 980 دور و همچنین تاخیر چند میکرو ثانیه ای ، فکر نکنم مشکلی باشه . من اگر دور موتورم رو 3000 دور تنظیم شده باشه و اون بین 2800 تا 3200 هم بازی کنه برام تقریبا مطلوبه.
                            مشکل اینجاست که بعضی مواقع بین 2000 تا 4000 دور ! نوسان داره :eek:
                            - نوع دیجیتال کردن من هم بوسیله ی استفاده از ترانزیستور ، اپتو کوپلر و دوباره ترانزیستوره . بعد میدمش به کانتر میکروم. از adc استفاده نکردم چون هم خوب بلد نیستم ، هم زمان می بره و هم ممکنه برای باقی ماژول های برنامه ام مزاحمت ایجاد کنه . در مورد دقتش هم تقریبا مطمتن هستم چون روی ال سی دی ام دور رو می خونم 3096 و روی اسکوپ هم می خونم فرکانس 51.5 هرتز (که ضربدر 60 همون رو نشون می ده ) :rolleyes:
                            -با دادن دور های ثابت به موتور هم ، سرعت ثابت ثابت نیست ، یه چیزی نزیدیک 2 در صد خودش بالا پایین میره . که من فکر می کنم بخاطر فیزیک موتور یا مثلا بخاطر گرم و سرد شدن ترانس تغذیه کننده موتور باشه.
                            - یه چیز دیگه هم که دیدم اینه که زمان لازم برای صفر تا صد درصد شدن سرعت موتور 6 ثانیه و 10 ثانیه نیست . یه چیزی نزدیک یک دقیقه طول می کشه که موتور ( با بار البته )به سرعت نامی خودش برسه !!!!! و من فکر می کنم این تاخیر برای هر کنترلری فاجعه است . در حقیقت این کنترل داره به ما میگه که نتیجه کامل قدرتی که الان داری به موتور اعمال می کنی یک دقیقه بعد خودش رو نشون میده !!!! حالا من فکر می کنم اینجا دو تا کار می تونم بکنم :
                            ---->یکی اینکه کلا کنترل رو بی خیال بشم و سرم رو مثل بچه آدم بندازم پایین و تنها کاری که می کنم این باشه که یک قدرت بر حسب سرعتی که می خوام به موتور بدم و بذارم تا خودش به اون سرعت برسه . :redface:
                            ----->یا اینکه مثل مهندس های واقعی نوع کنترل این رو یاد بگیرم ، شاید باید هر یک دقیق یا لااقل سی ثانیه یک بار ( که 90 درصد نتیجه قدرت قبلی در سرعت ظاهر شده ) اقدام به اعمال تغییرات در قدرت بکنم که زمان زیادی می بره ، شاید باید با قدرت های خیلی بیشتر موتور رو کنترل کنم ، مثلا اگر الان روی 1000 دور هستیم و می خواهیم با افزایش 20 ولت در عرض یک دقیقه به 2000 دور برسیم ، من بیام 50 ولت به موتور بدهم چهار ثانیه صبر بکنم و بعد ( مثلا وقتی موتور به 1800 دور رسید ) من 30 ولت از قدرتم کم کنم . یا ....
                            << عقلم به جایی قد نمی ده ، زمان لازم برای امتحان کردن هم ندارم . فکر کنم باید برم سراغ همون راه اول>>
                            دوستان عزیزم تصمیم گرفتم تا یه مدت کمتر به تالار سر بزنم . اگر دیر جواب دادم ببخشید.

                            دیدگاه


                              #15
                              پاسخ : مشکل در کنترل دور موتور

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

                              دیدگاه

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