یک موتور پله ای 6 سیمه دارم که می خوام اونو با uln2003 راه اندازی کنم اما نمی دونم باید کام به منبع وصل شه یا زمین اگه منبع هست چند ولت و چطور خلاصه یه شماتیک مناسب و یه برنامه ساده دارید که ازش استفاده کنم. :
اطلاعیه
Collapse
No announcement yet.
موتور پله ای
Collapse
X
-
پاسخ : موتور پله ای
نوشته اصلی توسط hamed_avrیک موتور پله ای 6 سیمه دارم که می خوام اونو با uln2003 راه اندازی کنم اما نمی دونم باید کام به منبع وصل شه یا زمین اگه منبع هست چند ولت و چطور خلاصه یه شماتیک مناسب و یه برنامه ساده دارید که ازش استفاده کنم. :
ساختمان داخلی موتور پله ای
یک موتور پله ای متداول دارای شش سیم می باشد که 4 سیم برای چهار سیم پیچ استاتور و دو سر مشترک برای سیم های سر وسط(در اکثر موتورها این دو سر وسط از داخل به هم وصل می شوند و در نتیجه موتور دارای 5 سیم می شود). با اعمال پالسهایی به هر یک از سیم پیچ ها موتور شروع به حرکت می نماید.
بنابراین برای دستیابی به عملکرد صحیح، سیم پیچهای موتور پله ای باید به صورت مناسب تغذیه شوند. این بدان معنی است که به هنگام استفاده از یک موتور پله ای نه تنها باید از مشخصه های الکتریکی دستگاه اطلاع داشت بلکه باید ویژگیهای مکانیکی آن را نیز به خوبی شناخت.
برنامه در code vision avr:
مثال) برنامه ای بنویسید که یک موتور پله ای با زاویه پله 1.8، ده دور بچرخد.
#include <mega16.h>
#include <delay.h>
#define steper_motor PORTB
int i;
void main(void)
{
DDRB=0xFF;
for(i=0;i<=500;i++){
steper_motor=0b1000;
delay_ms(5);
steper_motor=0b0100;
delay_ms(5);
steper_motor=0b0010;
delay_ms(5);
steper_motor=0b0001;
delay_ms(5);
};
}
درایور 2003ULN و 2002 ULN:
این درایورها برای راه اندازی موتورهای پله ای با جریان mA50 بکار می روند. ساختمان داخلی این درایورها از تعدادی ترانزیستور زوج دالینگتون تشکیل شده است. درایورهای خانواده ULN200X تقریباً شبیه یکدیگرند و تنها تفاوت آنها در مقدار مقاومت روی بیس ترانزیستورها می باشد که شکل زیر این مقدار را برای هر یک از درایورهای خانواده ULN200X مشخص کرده است.
نحوه اتصال موتور پله ای به درایورULN2002
دیدگاه
-
پاسخ : موتور پله ای
البته اول اصلا موتور نمی چرخید بعد یکی از کام ها رو که دراوردم شروع به چرخش کرد.
$regfile = "m8def.dat"
$crystal = 8000000
Config Pinb.0 = Input
Config Pinb.1 = Input
Config Portd = Output
'---------------------------------------------------------------------
Main:
If Pinb.0 = 0 Then Goto Leftrol
If Pinb.1 = 0 Then Goto Rightrol
Goto Main
'-------------------------------------------------
Leftrol:
Portd = 0
Do
Portd = 8
Waitms 15
Portd = 4
Waitms 15
Portd = 2
Waitms 15
Portd = 1
Waitms 15
If Pinb.0 = 1 Then Goto Main
Loop
'---------------------------------------------------
Rightrol:
Portd = 0
Do
Portd = 1
Waitms 15
Portd = 2
Waitms 15
Portd = 4
Waitms 15
Portd = 8
Waitms 15
If Pinb.1 = 1 Then Goto Main
Loop
End
دیدگاه
-
پاسخ : موتور پله ای
برای چپ گرد و راست گرد از دو تا کلید استفاده کردی. پس بهتره شرط پرش به زیربرنامه مربوطه رو محکم تر و کامل تر کنی. یعنی اینجوری:
If Pinb.0 = 0 And Pinb.1 = 1 Then Goto Leftrol
If Pinb.0 = 1 And Pinb.1 = 0 Then Goto Rightrol
در مجموع فکر می کنم به خاطر همین موضوع باشه. اما همچین برنامه ای رو می تونی با وقفه هم بنویسی ( برای کلید ها ) . اما بدون اون هم میشه. فقط شرط چپ گرد و راست گرد رو درست کن ( مثلا برای چپ گرد چرخیدن باید کلید اول صفر و کلید دوم یک باشه و ...)
دیدگاه
-
پاسخ : موتور پله ای
دوستان
من یه 4 سیم دارم با uln2803 راهندازیش کردم اما راه نمی یوفته
خط + رو هم زدم به بدنه
اینم کدم
while (1)
{
PORTB=0b1000;
LED1=1;
LED2=0;
delay_ms(50);
LED1=0;
LED2=1;
PORTB=0b0100;
delay_ms(50);
LED1=0;
LED2=0;
PORTB=0b0010;
delay_ms(50);
LED1=1;
LED2=1;
PORTB=0b0001;
delay_ms(50);
};هرچه سعی کنیم لایه های نرم افزاری زیاد کرده و از سخت افزار دور کنیم مشکلات(باگ ها) کمتر خواهد شد(امنیت بیشتری خواهید داشت)
بهترین جواب دهنده برای سوال شما، خود شما هستید البته بعد تلاش،پشتکار و مطالعه بیشتر
میدونی مشکل ما کجاست؟سرمایه و مغز ها رو نمیتونیم یکجا جمع کنیم...
تعدادی ماژول GPS GP5MX1513F1 با بالاتریت حساسیت -170db به قیمت خرید بفروش میرسد
دیدگاه
دیدگاه