امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
کمک (تولید پالس برای سروو موتور با بسکام)
نویسنده پیام
mhk1367 آفلاین
تازه وارد

ارسال‌ها: 4
موضوع‌ها: 2
تاریخ عضویت: مرداد ۱۳۹۰

تشکرها : 2
( 0 تشکر در 0 ارسال )
ارسال: #1
کمک (تولید پالس برای سروو موتور با بسکام)
دوستان واساتيد عزيز راهنمايي مي خواهم:
برا کار روي يه پروژه نياز به يک سروو موتور پيدا کردم (9805mg) ولي هر کاري که مي کنم نمي تونم با بسکام اون پالس لازم را تهيه کنم که بر حسب درجه خاص(بين 0 تا 180) متوقف بشود اگه کسي در اين باره اطلاعاتي داره لطفا کمک کنه من تو این زمینه تازه کارم.ConfusedShy
اين سروو 0.2sec/60degree و باند مرده 5ميکرو ثانيه است
(آخرین ویرایش در این ارسال: ۳۰-دى-۱۳۹۱, ۱۶:۰۸:۲۸، توسط aKaReZa75.)
۲۸-دى-۱۳۹۱, ۱۳:۴۲:۰۸
ارسال‌ها
پاسخ
aKaReZa75 آفلاین
حسین باقری
*****

ارسال‌ها: 1,484
موضوع‌ها: 22
تاریخ عضویت: مرداد ۱۳۹۱

تشکرها : 4898
( 4577 تشکر در 1474 ارسال )
ارسال: #2
RE: کمک (تولید پالس برای سزوو موتور با بسکام)
سلام.
تو بسکام یک دستور بخصوص هس واسه راه اندازی سروو که زاویه رو بهش میدی و اون خودش پالسهارو میفرسته.
اینم دستور:
کد:
Config Servos = 3 , Servo1 = Porte.3 , Servo2 = Porte.4 , Servo3 = Porte.2 , Reload = 10
Config Porte = Output
Enable Interrupts    
Servo(1) = 87
Servo(2) = 77
Waitms 300
Servo(3) = 85
موفق باشید....

سلام، من حسین باقری هستم، طراح الکترونیک و برنامه نویس میکروکنترلر.
توی کانال یوتیوب من قراراه طراحی انواع بردهای الکترونیکی مثل بردهای تک لایه، دو لایه یا به طور کلی بردهای چند لایه، بردهای مبتنی بر میکروکنترلر، بردهای صنعتی، بردهای الکترونیک قدرت و بردهای فرکانس بالارو یاد بگیریم.
همینطور کدنویسی انواع میکروکنترلرهای 8 بینی مثل میکروکنترلرهای خانواده AVR-STM8، میکروکنترلرهای میبتی بر معماری ARM مثل STM32 و پردازنده های مخصوص اینترنت اشیاء مثل ESP32-ESP8266 و DSPها یاد میگیریم.
در کنار مباحث گفت شده، اصول اندازه الکترونیکی، نحوه صحیح مونتاژ و عیب‌یابی بردهای الکترونیکی، شبیه سازی مدارات مختلف رو هم یاد میگیریم.
اگر علاقه مند به یادگیری موضوعات عنوان شده هستید، به کانال یوتیوب من با آدرس زیر سر بزنید.
https://www.youtube.com/@aKaReZa75
(آخرین ویرایش در این ارسال: ۲۸-دى-۱۳۹۱, ۱۴:۱۷:۰۵، توسط aKaReZa75.)
۲۸-دى-۱۳۹۱, ۱۴:۱۶:۱۸
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : رسول, omid_phoenix, hadikh73, sharin, behzady
mhk1367 آفلاین
تازه وارد

ارسال‌ها: 4
موضوع‌ها: 2
تاریخ عضویت: مرداد ۱۳۹۰

تشکرها : 2
( 0 تشکر در 0 ارسال )
ارسال: #3
RE: کمک (تولید پالس برای سزوو موتور با بسکام)
(۲۸-دى-۱۳۹۱, ۱۴:۱۶:۱۸)h.unique نوشته است: سلام.
تو بسکام یک دستور بخصوص هس واسه راه اندازی سروو که زاویه رو بهش میدی و اون خودش پالسهارو میفرسته.
اینم دستور:
کد:
Config Servos = 3 , Servo1 = Porte.3 , Servo2 = Porte.4 , Servo3 = Porte.2 , Reload = 10
Config Porte = Output
Enable Interrupts
Servo(1) = 87
Servo(2) = 77
Waitms 300
Servo(3) = 85
موفق باشید....


ممنون ولی این کد را هم امتحان کردم با میکرو با کلاک چند مگ؟ عدد reload اینجا چیه و چند باید بزارم؟
۲۸-دى-۱۳۹۱, ۱۷:۴۸:۴۷
ارسال‌ها
پاسخ
behzady آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 1,169
موضوع‌ها: 57
تاریخ عضویت: آبان ۱۳۹۰

تشکرها : 4094
( 6339 تشکر در 2085 ارسال )
ارسال: #4
RE: کمک (تولید پالس برای سروو موتور با بسکام)
به به دوباره پست زیر خاکیBiggrin
----
این بنده خدا(Condif servo) میاد و تایمر 0 رو به کار می گیره
با استفاده از این خودش پالس متاسب برای سرو ایجاد می کنه
وقتی شما reload رو برابر 10 میزاری میاد تایمر 0 رو طوری تنظیم می کنه که هر 10 میکرو ثانیه یک بار ریست بشه(تقریبا)
حالا وقتی اول پالس برای سرو بشه پین سرو یک میشه وتازمانی که به عدد سرو برسه یک می مونه مثلا وقتی servo1=100 هست و reload =10 طول یک بودن میشه 100*10=1000 میکرو ثانیه پس پهنای باند شما یک میلی ثانیه هست
هرچی شما ریلود رو کم کنی دقت میره بالا ولی فشار روی میکرو بالا میره
وبلعکس
حالا مثلا معمولا سرو ها با پالس 1.5 میلی ثانیه ای وسط وایمیسند(درست میگم؟)
پس باید مقدار servo1=150باشه تا 1.5 میلی ثانیه پهنای باند داشته باشیم
چیزی که مهم هست اینه که فراموش نکنیم وقفه سراسری رو فعال کنیم
وقتی از کد زیر استفاده می کنیم
کد:
Config Servos = 1 , Servo1 = Portd.0 , Reload = 10
همون طوری که گفتم عمل می کنه اما حالات دیگه ای هم هست
مثلا وقتی اینو می نویسید
کد:
Config Servos = 2 , Servo1 = Portd.7 , Servo2 = Portb.1 , Reload = 100 , Interval = 100
این اینتروال میاد و طول پالس رو تغییر میده همونی که قبلا خودش نزدیک 20 میلی نگه میداشت و دوره پاس شما میشه reload*interval در میکرو ثانیه
توجه کنید که همه ی اعداد بین 0 تا 255 باشن
البته این روش رو توصیه نمی کنم چون تو بعضی عدد ها قاط می زنه این مال وقتی هست که می خواید PWM درست کنید به درد می خوده
---
چیزی که مهم هست اینه که این ها همه تقریبی هستن پس باید تجربی هی مقدار سرو رو کم و زیاد کنید تا بالاخره راه بیوفته
و البته به نظر من مشکل شما این بوده که با توجه به سرعت بالای میکرو باید مقداری زمان ریلود رو زیاد می کردید

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

نباید ایمان به انسانیت را از دست دهید. انسانیت یک اقیانوس است؛ اگر قطرات اندکی از اقیانوس کثیف است، اقیانوس کثیف نمی‌شود.
مهاتما گاندی

يَا أَيُّهَا الَّذِينَ آمَنُواْ اسْتَعِينُواْ بِالصَّبْرِ وَالصَّلاَةِ إِنَّ اللّهَ مَعَ الصَّابِرِينَ
۰۹-خرداد-۱۳۹۲, ۱۰:۰۵:۰۰
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : sharin, babyy, Ambassador


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  تغییر جهت موتور دی سی midos 14 8,539 ۲۴-آبان-۱۳۹۴, ۱۶:۲۸:۵۹
آخرین ارسال: javad917
  درخواست كمك در مورد درايور موتور هاي DC rex2883 3 5,612 ۲۴-آبان-۱۳۹۱, ۲۰:۱۹:۳۰
آخرین ارسال: hadia
  جریان کشی موتور akbar8 12 8,189 ۱۷-بهمن-۱۳۹۰, ۰۱:۱۱:۳۶
آخرین ارسال: maxn@morteza
  کمک در مورد نوع حرکت سروو موتورها 83201138 9 7,899 ۲۰-مهر-۱۳۸۹, ۰۴:۴۹:۲۹
آخرین ارسال: 83201138

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS