• Slide 1

انجمن تخصصی پهپاد رها

اولین انجمن گفتگوی تخصصی پرنده های بدون سرنشین

1
در اینجا در مورد نحوه راه اندازی سروو موتور ها و اسپیدکنترل ها(ESC) صحبت میکنیم و مدارات راه انداز اونها رو معرفی میکنیم.
تشکر ها
پاسخ ها (15)
  • پاسخ پذیرفته شده

    شنبه, 07 جولای 2012 - #permalink
    1
    برای راه اندازی سروو موتور های هابی ( مورد استفاده در هواپیما ها) میبایست با روش تغییر پهنای پالس یا PWM(Pulse Width Modulation) آنها را کنترل کرد استاندارد امواج PWM سرووها در زیر مشخصه:

    http://www.icrobotics.co.uk/wiki/images/d/d2/Servo_Signals.jpg

    خب همونطور که مشخصه فرکانس کاری 50 هرتز هست و عرض پالس تقریبا از .9 تا 2.1 تغییر میکنه.
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    چهارشنبه, 11 جولای 2012 - #permalink
    1
    ابتدا از ساخت راه انداز سروو با آیسی تایمر 555 شروع میکنیم، این یک مدار بسیار ساده هست برای راه اندازی یک سروو تنها به دلیل ثابت نبودن فرکانس کمی خطا دارد. در مدار زیر میتوانید نحوه عملکرد آن را مشاهده فرمایید:
    http://www.555-timer-circuits.com/images/ServoController.gif

    http://www.555-timer-circuits.com/images/Servo-Motor.jpg
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    شنبه, 21 جولای 2012 - #permalink
    0
    یکی از ساده ترین و بهترین راه ها برای کنترل سروو توسط میکرو های AVR استفاده از کانفیگوریشن آماده کامپایلر بسکام هست.

    برای استفاده از آن میتوانید عبارت SERVO را در help جستوجو کنید در انتهای راهنما مثال زیر را مشاهده میکنید:
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    شنبه, 21 جولای 2012 - #permalink
    1
    Example

    '-----------------------------------------------------------------------------------------

    'name : servos.bas

    'copyright : (c) 1995-2005, MCS Electronics

    'purpose : demonstrates the SERVO option

    'micro : 90S2313

    'suited for demo : yes

    'commercial addon needed : no

    '-----------------------------------------------------------------------------------------




    $regfile = "2313def.dat" ' specify the used micro

    $crystal = 4000000 ' used crystal frequency

    $baud = 19200 ' use baud rate

    $hwstack = 32 ' default use 32 for the hardware stack

    $swstack = 10 ' default use 10 for the SW stack

    $framesize = 40 ' default use 40 for the frame space




    'Servo's need a pulse in order to operate

    'with the config statement CONFIG SERVOS we can specify how many servo's we

    'will use and which port pins are used

    'A maximum of 14 servos might be used

    'The SERVO statements use one byte for an interrupt counter and the TIMER0

    'This means that you can not use TIMER0 anymore

    'The reload value specifies the interval of the timer in uS

    'Config Servos = 2 , Servo1 = Portb.0 , Servo2 = Portb.1 , Reload = 10




    Config Servos = 1 , Servo1 = Portb.0 , Reload = 10

    'as an option you can use TIMER1

    'Config Servos = 2 , Servo1 = Portb.0 , Servo2 = Portb.1 , Reload = 10 , Timer = Timer1




    'we use 2 servos with 10 uS resolution(steps)




    'we must configure the port pins used to act as output

    Config Portb = Output




    'finally we must turn on the global interrupt

    Enable Interrupts




    'the servo() array is created automatic. You can used it to set the

    'time the servo must be on

    Servo(1) = 10 '10 times 10 = 100 uS on

    'Servo(2) = 20 '20 times 10 = 200 uS on

    Do

    Loop




    Dim I As Byte

    Do

    For I = 0 To 100

    Servo(1) = I

    Waitms 1000

    Next




    For I = 100 To 0 Step -1

    ' Servo(1) = I

    Waitms 1000

    Next

    Loop

    End
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    شنبه, 21 جولای 2012 - #permalink
    0
    که البته با کمی توجه به برنامه متوجه میشویم که برنامه درست نیست و قابل اجرا نیست!

    یکی از نکات این است که ابتدا باید تایمر 0 را فعال نموده و سپس در صورت عدم نیاز به حلقه do loop آن را حذف کنید.

    با این روش میتوانید تا 16سروو را درایو کنید !!!:)
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    mostafa
    mostafa
    آفلاین
    پنج شنبه, 26 جولای 2012 - #permalink
    1
    salam vase rah andazi servo ba atmega 16 chekar bayad konam?
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    پنج شنبه, 26 جولای 2012 - #permalink
    1
    خب برای اینکار تنها کافی هست که توی برنامه به جای
    regfile = "2313def.dat$
    این رو بذارید:
    regfile = "m16def.dat$

    و فرکانس میکروتون رو هم بذارید روی 8 مگ یا هر چیزی که دوست دارید.که برای این کار به جای:
    crystal=4000000
    این رو بذارید:
    crystal=8000000
    البته توجه داشته باشید که با تغییر فرکانس کاری میکرو بازه تغییرات هم تغییر میکنه و برای تعیین اون میتونید از نرم افزار پروتئوس برای شبیه سازیش کمک بگیرید.
    همون طور هم که گفتم این برنامه داره از تایمر0 میکرو استفاده میکنه و شما می بایست اون رو روشن کنید.
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    mostafa
    mostafa
    آفلاین
    یکشنبه, 29 جولای 2012 - #permalink
    1
    salam age bekham az clock atmega 16 bedune crystal baraye tolid time daghigh estefade konam bayd chi kar konam
    ?
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    mostafa
    mostafa
    آفلاین
    یکشنبه, 29 جولای 2012 - #permalink
    0
    agar mitunid ba codevision ham tozih bedid
    تشکر ها
    • mohammad
      بیش از یک ماه قبل
      دوست عزیز، لطفا از الفبای فارسی استفاده کنید.
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    دوشنبه, 30 جولای 2012 - #permalink
    0
    برای استفاده از کلاک داخلی میکرو نیازی به کار خاصی نیست فقط حواستون باشه موقع پروگرام کردن int clk رو انتخاب کنید.اما بهتره که از کریستال استفاده کنید چون اینطوری نویز کمتری دارید و در نتیجه دقت بالاتر.;)

    انشا الله بزودی کدویژن رو هم توضیح میدیم.
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    mostafa
    mostafa
    آفلاین
    سه شنبه, 31 جولای 2012 - #permalink
    0
    سلام.من میخوام از فرستنده وگیرنده بی سیمی استفاده کنم.لطفا با یک مدار ساده برای شروع کار بهم کمک کنین
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    mostafa
    mostafa
    آفلاین
    سه شنبه, 31 جولای 2012 - #permalink
    0
    سلام لطفا یه توضیح مختصر در مورد فرستنده وگیرنده ها بدید یا کتابی یا سایتی رو معرفی کنید.
    ممنون از ضحماتتون
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    سه شنبه, 31 جولای 2012 - #permalink
    0
    یکی از بهترین ماژول ها برای شروع به نظر من HMTR-915-TTL هست که هم قیمت مناسبی داره و هم اینکه سطح ولتاژ اون با میکرو های AVR هماهنگی داره (5ولت) و به وفور هم یافت میشه.
    این هم یکی از فروشگاه ها که میتونید از اون تهیه کنید:
    http://www.javanelec.com/SpecialProducts.aspx?code=030

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

    mostafa
    mostafa
    آفلاین
    چهارشنبه, 01 آگوست 2012 - #permalink
    0
    سلام اگه بخوام فرستنده و گیرنده تصویر هم ارسال کنه چه مدلی رو شما معرفی میکنید؟
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    ali555
    ali555
    آفلاین
    دوشنبه, 22 اکتبر 2012 - #permalink
    0
    سلام

    متشکر از توضیحات لطفا درباره راه اندازی سروو با codevision هم صحبت بفرمایین
    مرسی
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
پاسخ شما

 

تمام حقوق برای شرکت رهنوردان هلیای آسمان محفوظ است
Copyright © 2015 RAHA