سروو موتور و استپر موتور

homayoon.sh

عضو جدید
سلام
اگه کسی نقشه عملی از سروو موتور ویا استپرموتور داره ممنون میشم برام بذاره
.;)
 

سعید گروسی

عضو جدید
کاربر ممتاز
سروو موتور وراه اندازی 14عددسروباavr :


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

Config Servos = X , Servo1 = Portx.y , Servo2 = Portx.y , Servon = Portx.y ,
Reload = Rl

x نشان دهنده تعداد سروو های استفاده شده ميباشد که بيشترين تعداد ميتواند 14 باشد.(به جای : Config Servos = X
( Config Servos = تعداد گذاشته ميشود مانند : 3
مشخص شده متصل ميشود. Portx.y پايه کنترل سروو به يکی از پين های ميکرو که با .: Servo1 = Portx.y
نشان دهنده زمانی است که ميکرو دوباره اطلاعات مربوط به سرو ها را روی پين مورد نظر ميفرستد(اين : Reload
زمان برحسب ميکروثانيه است
نکته: اين دستور از تايمر صفر برای راه اندازی (توليد زمان روشن بودن سروو) استفده ميکن و هنگلمی که سروو را
پيکربندی کرديد ديگر نميتوانيد ا تايمر صفر استفاده کنيد.
بعد از پيکر بندی سروو نوبت به راه اندازی ان است برای اين کار از دستور زير استفاده ميشود:

Servo(x) = y
ضرب در 10 زمان روشن بودن سروو را نشان ميدهد، که ميتواند y شماره سروو است که ميتواند از 1 تا 14 باشد و X
يک متغيير يا عدد صحيح باشد.مانند


$regfile = "m16def.dat"
$crystal = 12000000
Config Servos = 14 , Servo1 = Portd.0 , Servo2 = Portd.1 , Servo3 = Portd.2_
,Servo4 = Portd.3 , Servo5 = Portd.4 , Servo6 = Portd.5 , Servo7 = Portd.6_
, Servo8 = Portd.7 , Servo9 = Portc.7 , Servo10 = Portc.6 , Servo11 =
Portc.5_
, Servo12 = Portc.4 , Servo13 = Portc.3 , Servo14 = Portc.2 , Reload = 100
Config Portd = Output , Portc = Output
Enable Interrupts
Dim A As Word
A=10
Do
Servo(1) = 1 : Wait 1
Servo(2) = 5 : Wait 1
Servo(3) = a : Wait 1
Servo(4) = 15 : Wait 1
Servo(5) = 20 : Wait 1
Servo(6) = 25 : Wait 1
Servo(7) = 30 : Wait 1
Servo(8) = 35 : Wait 1
Servo(9) = 40 : Wait 1
Servo(10) = 45 : Wait 1
Servo(11) = 50 : Wait 1
Servo(12) = 55 : Wait 1
Servo(13) = 60 : Wait 1
Servo(14) = 65 : Wait 1
Loop
End

در مثال بالا تعداد 14 عدد سروو به ميکرو مگا 16 متصل شده است ، مدت زمان روشن بودن سروو ها به ترتيب از
سروو 1 به اين شرح است: 10 و 50 و 100 و 150 و 200 و 250 و 300 و 350 و 400 و 450 و 500 و 550 و 600
و 650 ميکرو ثانيه است.( يک سروو فقط در يک زاويه خاص ميچرخد ، مثلا از 0 تا 270 درجه يا از 0 تا 360 درجه،
زمان که در بالا گفته شد ، بيان ميکند که چقدر طول ميکشد تا سررو به يک زاويه خاص برسد ، برای فهميدن اين زمان
بايد به ديتاشيت سروو مراجعه کنيد ، مثلا نوعی سررو در هر 10 ميکرو ثانيه . 1 درجه حرکت ميکند و زاويه چرخش ان
عدد 120 را قرار دهيم، در صورتی که به y از 0 تا 10 است، بنابراين برای رسيدن به زاويه 120 درجه بايد به جای
ميتوانيد قرار دهيد 255 y عدد بيشتر از 180 قرار دهيم سروو روی 180 قفل ميشود.بيشتر مقداری که به جای y جای
است.


 
بالا