اطلاعیه

Collapse
No announcement yet.

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

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

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

    سلام
    برای ساخت یه ربات 8 پا نیاز به کنترل 24 عدد موتور سرو دارم که باید خیلی سریع دستورات به همه ی سرو ها انتقال داده بشه
    آیسی هست که به سروو وصل بشه و با یه پروتکل ارتباطی یه مقدار رو بگیره و سرو رو بچرخونه؟
    اگه نیست به نظروتون باید چطوری اینکار رو انجام بدم؟

    ممنون
    AYRIC

    #2
    پاسخ : بهترین روش برای کنترل تعداد زیادی سرو موتور

    من تا حالا 3 تا سروو رو راه انداختم و هیچ مشکلی نداشت . هیچ محدودیتی برای تعداد سروو وجود نداشت . میتونی با یه میکرو هم همین کار رو انجام بدی .

    اما اگه مشکل هزینه نداری پیشنهاد من اینه که از یک میکرو بعنوان master و 24 عدد میکروی تایمر دار بعنوان slave استفاده کن . master با استفاده از spi داده ها رو به slave ها ارسال می کنه و slave ها مطابق داده pwm رو تولید میکنه .

    [glow=blue,2,300]آنقدر به تاريكي لعنت نفرستيد ، يك شمع روشن كنيد. [/glow]

    دیدگاه


      #3
      پاسخ : بهترین روش برای کنترل تعداد زیادی سرو موتور

      خیلی ممنون
      اخه بدی این سرو ها اینه که بار اول که یه پالس رو براشون میآ‌فرستید توی موقعیت دقیق خودشون نمیاستند و باید مدام اون پالس رو بهشون داد که یعنی همونpwm که درست کردن 24 تا pwm با یه میکرو زیاد جالب در نمیاد یا حداقل من نمیدونم چطوری باید اینکار رو به نحوی درست انجام بدم

      روش دوم روش خوبیه اما گرون درمیاید فکر کامیون منم با pic کار میکنم و هزینه هر میکرو فکر نکنم کمتر از3 تومن بشه اما اگه راهدیگه نباشه مجبورم از همین روش استفاده بکنم
      یعنی ایسی نیست که با مثلا i2c یه مقدار بگیره و pwm درست کنه؟
      AYRIC

      دیدگاه


        #4
        پاسخ : بهترین روش برای کنترل تعداد زیادی سرو موتور

        اگر به جای PWM از وقفه تایمر استفاده کنید این کار امکان پذیر است.تایمر را روی کوچک ترین واحد زمانی که پالس ها فرستده می شوند تنظیم کنید و با یک تایمر مجازی که با یک متغیر در وقفه تایمر ایجاد کرده اید به ازای هر مقدار آن متغیر پایه ی مورد نظر را صفر یا یک کنید.

        دیدگاه


          #5
          پاسخ : بهترین روش برای کنترل تعداد زیادی سرو موتور

          برد زیر رو ببینید
          http://www.roboeq.ir/products/detail/%D8%AF%D8%B1%D8%A7%DB%8C%D9%88%D8%B1%20%D8%B3%D8%B 1%D9%88%20%D9%85%D9%88%D8%AA%D9%88%D8%B1%20SD84/
          با پی ای سی هم کار کرده-84 تا سروو :mrgreen:

          اینم هست که فکر میکنم قیمتش هم مناسب باشه برای 21 سروو-
          http://www.roboeq.ir/products/detail/%D8%AF%D8%B1%D8%A7%DB%8C%D9%88%D8%B1%20%D8%B3%D8%B 1%D9%88%20%D9%85%D9%88%D8%AA%D9%88%D8%B1%20SD21/
          ولی اگه بخوای خودت بسازی من تو نت دیدم قبلا- بگردید شاید پیدا کنید

          دیدگاه


            #6
            پاسخ : بهترین روش برای کنترل تعداد زیادی سرو موتور

            نوشته اصلی توسط voyager2020
            برد زیر رو ببینید
            http://www.roboeq.ir/products/detail/%D8%AF%D8%B1%D8%A7%DB%8C%D9%88%D8%B1%20%D8%B3%D8%B 1%D9%88%20%D9%85%D9%88%D8%AA%D9%88%D8%B1%20SD84/
            با پی ای سی هم کار کرده-84 تا سروو :mrgreen:

            اینم هست که فکر میکنم قیمتش هم مناسب باشه برای 21 سروو-
            http://www.roboeq.ir/products/detail/%D8%AF%D8%B1%D8%A7%DB%8C%D9%88%D8%B1%20%D8%B3%D8%B 1%D9%88%20%D9%85%D9%88%D8%AA%D9%88%D8%B1%20SD21/
            ولی اگه بخوای خودت بسازی من تو نت دیدم قبلا- بگردید شاید پیدا کنید
            ممنون
            پس اگه با خود میکرو میشه که سعیمو میکنم خودم انجامش بدم
            AYRIC

            دیدگاه


              #7
              پاسخ : بهترین روش برای کنترل تعداد زیادی سرو موتور

              پایه هایی که بهش سروو وصل میشه یک میکنی بعد timing را محاسبه میکنی و زمان یاقیمانده را به تابع delay یا با تایمر محاسبه میکنی و اخر برنامه اضافه میکنی بعد پایه ها را صفر میکنی و همه برنامه را میندازی توی لوپ! البته به این روش میشه یک زاویه مشخص برای همه سروو تعیین کرد

              دیدگاه


                #8
                پاسخ : بهترین روش برای کنترل تعداد زیادی سرو موتور

                نوشته اصلی توسط hamid9543
                پایه هایی که بهش سروو وصل میشه یک میکنی بعد timing را محاسبه میکنی و زمان یاقیمانده را به تابع delay یا با تایمر محاسبه میکنی و اخر برنامه اضافه میکنی بعد پایه ها را صفر میکنی و همه برنامه را میندازی توی لوپ! البته به این روش میشه یک زاویه مشخص برای همه سروو تعیین کرد
                فکر کنم اگه کمترین و بیشترین تایمی که باید به سرو ها داده بشه (یعنی کدوم سرو به عرض پالس کمتری نیاز داره ) رو پیدا کنم و همه پایه هارو یک کنم وبه ترتیب پایه هارو سر وقتشون که با تایمینگ حساب میکنم 0 کنم بشه اینکار رو کرد
                AYRIC

                دیدگاه


                  #9
                  پاسخ : بهترین روش برای کنترل تعداد زیادی سرو موتور

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

                  دیدگاه


                    #10
                    پاسخ : بهترین روش برای کنترل تعداد زیادی سرو موتور

                    نوشته اصلی توسط hamid9543
                    البته هر کاری بکنی بیشتر از چهار پنج قدم نمی تونی باهاش بری و سرنگون میشه چون خطای جمع شوندش زیاد میشه و مرکز ثقل را منحرف میکنه و به خاطر ژاکوبین روبات سرنگون میشه
                    پس یعنی به هر حال باید از سروو ax استفاده کنم؟؟؟
                    AYRIC

                    دیدگاه


                      #11
                      پاسخ : بهترین روش برای کنترل تعداد زیادی سرو موتور

                      فقط ax !

                      دیدگاه


                        #12
                        پاسخ : بهترین روش برای کنترل تعداد زیادی سرو موتور

                        به جای سرو چینی از سرو کره ای (دینامیکسل) استفاده کن
                        این جوری دیگر لازم نیست هر دفعه پالس بدی
                        چون ارتباشان به صورت متوالی هست، دیگر نیاز به سیم کشی زیاد ندارد

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

                        دیدگاه


                          #13
                          پاسخ : بهترین روش برای کنترل تعداد زیادی سرو موتور

                          پالس PWM سروو موتورها فرکانسش کمه (در حدود 50 هرتز). درست کردن PWM با این فرکانس پایین توسط نرم افزار اصلاً کار سختی نیست.
                          من درایور LED توان بالا تمام رنگ با PWM نرم افزاری 60 کاناله ساختم (فرکانس 100 هرتز)، فقط با یه دونه ATmega8.

                          با یه وقفه تایمر، و تخصیص پایه های خروجی به سرووموتورها می تونی به راحتی این کار رو انجام بدی. اگه توضیح بیشتری خواستی بگو که بگم :smile:
                          بیایید با Google آشتی کنیم!

                          دیدگاه


                            #14
                            پاسخ : بهترین روش برای کنترل تعداد زیادی سرو موتور

                            من توی این تایپیک زیر دنبال یادگیری همین روش داینامیکسل بودم و هستم!
                            http://www.eca.ir/forum2/index.php?topic=70715.msg533116#msg533116

                            صاحب نظران برای تکمیل شدن بحث مشارکت کنند!

                            ممنون


                            راستی اگر از خود میکرو با یک وقفه بخواید استفاده کنید ، همون طور که آقای رستمی عرض کردند ،همین روشهایی که برای ال ای دی ها استفاده می شه!مناسبه!
                            همواره يادمان باشد:
                            1-مردان بزرگ اراده مي کنند و مردان کوچک آرزو
                            2-افراد بزرگ، هميشه به دنبال ايده هاي بزرگند و افراد کوچک به دنبال افراد بزرگ
                            3-هميشه سعي کن آنقدر کامل باشي که بزرگترين تنبيه تو براي ديگران گرفتن خودت از آنها باشد.

                            دیدگاه


                              #15
                              پاسخ : بهترین روش برای کنترل تعداد زیادی سرو موتور

                              نوشته اصلی توسط محمد رستمی
                              پالس PWM سروو موتورها فرکانسش کمه (در حدود 50 هرتز). درست کردن PWM با این فرکانس پایین توسط نرم افزار اصلاً کار سختی نیست.
                              من درایور LED توان بالا تمام رنگ با PWM نرم افزاری 60 کاناله ساختم (فرکانس 100 هرتز)، فقط با یه دونه ATmega8.

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

                              دیدگاه

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