MDC20

دسته:
  • گارانتی اصالت و سلامت فیزیکی کالا
  • آماده ارسال

تومان


  • 7 روز ضمانت بازگشت
  • پشتیبانی 24 ساعته
  • تضمین بهترین قیمت
  • تحویل اکسپرس
  • پرداخت در محل

توضیحات

فهرست مطالب
1. مقدمه
1-1.درایور MDC20 چیست؟
1-2.نقاط قوت درایور MDC20 کدام است؟
1-3. مشخصات درایور MDC20 به چه صورت می¬باشد؟
2. ارتباط با درایور
2-1. نصب درایورهای مورد نیاز
2-2. ارتباط با درایور از طریق پورت USB یا درگاه UART
2-2-1. ارتباط با درایور از طریق پورت USB
2-2-2. ارتباط با درایور از طریق درگاه UART
3. کنترل MDC20 در حالت راه¬اندازی دو موتور DC
3-1. نحوه¬ی روشن کردن درایور
3-2. انجام تنظیمات اولیه
3-3. قرار دادن درایور در حالت کنترل دو موتور دی سی
3-4. جدول دستورت
3-5. تنظیم سرعت موتورها
3-6. تنظیم شتاب موتورها
3-7. دریافت مقادیر انکودرها

4. کنترل MDC20 در حالت راه¬اندازی یک موتور پله¬ای
4-1. انجام تنظیمات اولیه
4-2. قرار دادن درایور در حالت کنترل یک موتور پله¬ای
4-3. جدول دستورات
4-4. تنظیم نحوه¬ی راه¬اندازی موتور پله¬ای
4-5. راه¬اندازی موتورهای پله¬ای دوقطبی
4-6. راه اندازی موتورهای پله¬ای تک قطبی
5. نحوه¬ی شبکه کردن
5-1. شبکه¬کردن سه یا چند موتور DC
5-2. شبکه¬کردن دو یا چند موتور پله¬ای
5-3. شبکه¬ای از موتورهای DC و پله¬ای
6. خلاصه¬ی نکات مهم در مورد درایور

1.مقدمه

درایور MDC20 چیست؟
نقاط قوت درایور MDC20 کدام است؟
مشخصات درایور MDC20 به چه صورت می¬باشد؟
1-1. درایور MDC20 چیست؟
درایور و کنترل کننده¬ حرکت MDC20 یک درایور با قابلیت کنترل حرکت و درایو دو موتور دی سی یا یک موتور پله ای محصولی پلتفرم، تولیدی شرکت دانش بنیان ربات سازان مستقر در دانشگاه فردوسی مشهد است. این درایور با قابلیت¬های فراوان پاسخگوی نیاز قشر عظیمی از کاربران می باشد. شکل زیر نمایی از این درایور و امکانات آن را نشان می¬دهد.

شکل1: درایور MDC20
همان طور که مشاهده می¬کنید این درایور دارای ورودی تغذیه، خروجی موتور، ورودی انکودر، پورت USB ، درگاه UART، خروجی +5V دکمه ریست و سوئیچ¬های تنظیم مد کاری می¬باشد.

1-2. نقاط قوت درایور MDC20 کدام است؟
از ویژگی های منحصر به فردی که درایور MDC20 را از سایر محصولات موجود در بازار متمایز می کند می-توان به موارد زیر اشاره کرد:
 درایور MDC20 یک درایور پلتفرم با قابلیت اتصال به نرم¬افزارهایی هم¬چون MATLAB، VISUAL STUDIO، LABVIEW و… می باشد و می توان با اتصال فقط یک کابل USB آن را راه¬اندازی و کنترل کرد.

 درایو دو دسته از مهم¬ترین موتورهای پرکاربرد به طوری که با در اختیار داشتن این درایور قادر خواهید بود دو موتور DC و یا یک موتور پله¬ای را هدایت و کنترل کنید.

 امکان شبکه کردن تعداد 100 درایور و کنترل تمامی آن¬ها فقط با یک کابل USB .

 پشتیبانی و وجود آموزش¬های گام به گام در سایت شرکت به نشانی www.robotmakers.ir

1-3. مشخصات درایور MDC20 به چه صورت می¬باشد؟
• درایو و کنترل دو موتورDC یا یک موتور پله¬ای با ولتاژ بین 5.5 تا 36 ولت و با جریان دهی دائمی15 آمپر و جریان دهی لحظه¬ای 30 آمپر برای هر کانال خروجی(توان نامی 540 وات برای هر کانال خروجی).
• محافظت در برابر جابجا زدن تغذیه بورد(Reverse Voltage Protection)، اتصال کوتاه در خروجی موتورها، جریان کشی بیش از 15 آمپر با قرار دادن فیوز، دمای بیش از حد، قطع ناگهانی VCC و یا زمین.
• قابلیت اتصال مستقیم به کامپیوتر با استفاده از پورت .USB
• ارسال و دریافت فرمان¬ها با سرعت 300 تا 57600 بیت در ثانیه.
• قابلیت شبکه شدن 100 عدد بورد به صورت همزمان و کنترل تمامی آن¬ها فقط با یک کابل USB .
• توان مصرفی فوق العاده پایین در حالت استراحت(Standby) .
• دارای دو ورودی 32 بیتی شمارنده¬ی انکودر(Encoder Input) در دو مد کاری ساده و پیشرفته(quadrature)
• ولتاژ منطق کاری 0 ولت و +5 ولت
• دارای پروتکل¬های USB و UART برای ارتباط با دیگر اجزای سیستم و کامپیوتر.
• قابلیت تنظیم شتاب موتورها برای جلوگیری از سرعت گرفتن سریع و امکان توقف نرم.
• قابلیت پیاده سازی الگوریتم¬های کنترل موتور(موقعیت، سرعت و شتاب) در نرم افزار هدف.
• محافظت موتورها در مقابل تغییر ناگهانی جهت موتورها و افزایش طول عمر آنها.
• دارای کدهای راه ¬اندازی نمونه به زبان¬های برنامه نویسی مختلف از جمله زبان برنامه نویسی C++, C# و همچنین نرافزار MATLAB در سایت شرکت.
• دارای یک خروجی 5 ولت یک آمپر برای راه¬اندازی مدارات متصل به درایور و همچنین تغذیه فن در صورت نیاز.

2. ارتباط با درایور

نصب نرم¬افزارهای مورد نیاز
ارتباط با درایور از طریق پورت USB یا درگاه UART

2-1. نصب نرم¬افزارهای مورد نیاز
برای ارتباط با درایور MDC20 باید درایور FTDI را بر روی سیستم خود نصب کنید پس از نصب درایورهای مورد نیاز در صورت اتصال درایور از طریق پورت USB به کامپیوتر درایور شناسایی شده و سپس تنظیمات درگاه شناخته شده از جمله نرخ ارسال اطلاعات را در کامپیوتر منطبق با درایور انجام دهید. (برای دریافت راهنمای نصب درایور FTDI و کسب اطلاعات راجع به تنظیمات پورت USB در ویندوز به بخش مقالات آموزشی در سایت شرکت به این نشانی مراجعه کنید).
2-2. ارتباط با درایور از طریق پورت USB یا درگاه UART
2-2-1. ارتباط با درایور از طریق پورت USB
از این نوع ارتباط زمانی استفاده می¬شود که قصد دارید درایور را به وسیله¬ی کامپیوتر کنترل
و هدایت کنید.
2-2-2. ارتباط با درایور از طریق درگاه UART
چنانچه بخواهید از طریق یک بورد کنترلی این درایور را کنترل کنید یا چندین درایور را با
یک¬دیگر شبکه کنید از طریق درگاه UART می توانید این کار را انجام دهید.

3.کنترل MDC20 در حالت درایو دو موتور DC

نحوه¬ی روشن کردن درایور
انجام تنظیمات اولیه
قرار دادن درایور در حالت کنترل دو موتور دی سی
جدول دستورت
تنظیم سرعت موتورها
تنظیم شتاب موتورها
دریافت مقادیر انکودرها

3-1.نحوه¬ی روشن کردن درایور
درایور MDC20 را می¬توانید با ولتاژی از 5.5 تا 36 ولت راه اندازی کنید. مطابق شکل1 از طریق درگاه ورودی توان می¬توانید درایور را تغذیه کنید. سپس در صورتی که تغذیه بورد را درست متصل کرده باشید چراغ Power’s LED که مطابق شکل1 در قسمت میانی بورد قرار دارد روشن خواهد شد.
توجه. در صورتی که تغذیه¬ی بورد را جابجا وصل کنید( VCC و GND را جابجا متصل کنید)، درایور MDC20 مجهز به مدار محافظت در برابر جابجا زدن ولتاژ ورودی بوده و از صدمه دیدن بورد جلوگیری می¬کند.
3-2. انجام تنظیمات اولیه
برای کنترل MDC20 در حالت درایو موتور DC باید ابتدا تنظیمات اولیه را انجام دهید برای این منظور تغذیه درایور را وصل کرده و کابل USB را متصل نمایید. سوئیچ¬های 1 و 2 به هنگام شبکه کردن چند بورد با یکدیگر مورد استفاده قرار می¬گیرند و در حالتی که می¬خواهید تنها یک بورد را از طریق پورت USB کنترل کنید باید همواره در حالت ON قرار داشته باشند. مطابق شکل زیر سوئیچ¬های 1،2 و 4 را در حالت ON و سوئیچ 3 را در حالت OFF قرار دهید.

شکل2: حالت سوئیچ¬ها برای ورود به مد تنظیمات

جدول زیر چهار مد عملیاتی درایور MDC20 را نشان می¬دهد.
Operating Mode DIP Switch4 DIP Switch3
DC Mode ON ON
Stepper Mode OFF ON
Setting Mode ON OFF
Factory Reset Mode OFF OFF
جدول1: مدهای عملیاتی درایور MDC20
بعد از قرار دادن درایور در حالت مد انجام تنظیمات(Setting Mode) دکمه ریست که دقیقا در پشت سوئیچ¬ها قرار دارد را به مدت یک ثانیه فشار دهید. بعد از ریست کردن بورد، درایور وارد مد تنظیمات می-شود. قالب دستورات ارسالی برای درایور در این حالت به صورت زیر می¬باشد.
Encoder Mode Baud Rate Board Address

از آنجایی که نحوه¬ی ارتباط با درایور MDC20 از طریق پروتکل¬های ارتباطی USB و UART می-باشد بنابراین در این نوع از پروتکل¬ها اطلاعات به صورت سریال در بسته¬های 8 بیتی منتقل می-شوند(در ارتباط سریال علاوه بر داده¬ها معمولا یک یا دو بیت توقف(Stop Bit) و یک بیت Parity به همراه داه¬ها منتقل می¬گردند). بنابراین در قالب دستورات فوق هر یک از رشته¬ها باید اعدادی در مبنای 16 (هگزادسیمال) که حداکثر 8 بیت را اشغال می¬کنند، باشند.
به عنوان مثال عدد 50 در مبنای 16 به صورت 0X32 نمایش داده می¬شود که فرم باینری آن به صورت زیر می¬باشد:
0 1 0 0 1 1 0 0

حال به توضیح قالب دستورات فوق می¬پردازیم. از آنجا که هر بورد MDC20 می¬¬تواند یک آدرس از 0 تا99 داشته باشد باید آدرس بورد(Board Address) مورد نظر خود را قبل از کار با آن تنظیم کنید.
توجه.آدرس بورد پیش فرض کارخانه 0X00 می باشد.
در درایور MD20 نرخ ارسال اطلاعات(Baud Rate) می¬تواند از 300 تا 57600 بیت در ثانیه تنظیم گردد. برای این منظور متناظر با نرخ ارسال اطلاعات مورد نظر رشته مربوطه طبق جدول زیر باید بعد از آدرس بورد ارسال گردد.
رشته ارسالی(هگزا دسیمال) 0X00 0X01 0X02 0X03 0X04
نرخ ارسال اطلاعات(bps) 300 600 1200 2400 4800

0X05 0X06 0X07 0X08 0X09 0X0A
9600 14400 19200 38400 56000 57600
جدول2: نرخ ارسال اطلاعات در درایور MDC20
توجه. نرخ ارسال اطلاعات پیش فرض کارخانه 9600 می¬باشد. هم¬چنین در صورتی که رشته ارسالی یکی از 11 حالت فوق را شامل نشود نرخ ارسال اطلاعات همان 9600 تنظیم می¬گردد.
آخرین رشته ارسالی مربوط به تنظیمات مد کاری موتور DC، مد انکودر(Encoder Mode) می-باشد در صورت ارسال 0X00 مد انکودر در حالت شمارش ساده (معمولی) قرار می¬گیرد، این مد زمانی کاربرد دارد که شما انکودری در اختیار دارید که تنها یک پالس خروجی دارد و این گونه از انکودرها را می¬توانید به راحتی خودتان بسازید(به بخش مقالات آموزشی در سایت شرکت به این نشانی مراجعه کنید). این مد عملیاتی در مواردی خاص بسته به کاربرد کارایی نداشته که برای حل این مشکل باید از انکودری استفاده نمایید که دو پالس خروجی با اختلاف فاز 90 درجه تولید نماید(quadrature encoder). در صورت استفاده از این گونه از انکودرها باید مد انکودر را 0X01 تنظیم نمایید.
توجه. مد عملیاتی انکودر در تنظیمات پیش فرض کارخانه مد شمارش معمولی(0x00) می¬باشد. هم چنین ولتاژ اعمالی به ورودی¬های کانال انکودرها (CH1 و CH2) نباید مقداری بیشتر از +5v یا کمتر از 0 ولت باشد.
به عنوان مثال فرض کنید می¬خواهید آدرس بورد را 20 ، نرخ ارسال اطلاعات را 38400 و مد انکودر را در حالت 0X01 قرار دهید. بنابراین باید رشته زیر را ارسال نمایید:
0X14 0X08 0X01
رشته فوق باید از چپ به راست ارسال گردد. توجه کنید که 0X14 در واقع همان معادل مبنای 16 عدد 20 می¬باشد. دقت شود که عبارت 0X… در ابتدای هر رشته بیان کننده عدد در مبنای 16 بوده که تنها یک نماد می¬باشد و نباید ارسال گردد.
توجه. آدرس بورد، نرخ ارسال اطلاعات و مد انکودر بعد از تنظیم آن¬ها در حافظه¬ی EEPROM درایور قرار می¬گیرند، بدین معنا که با قطع تغذیه¬ی بورد MDC20 دیگر به مقادیر پیش فرض کارخانه برنمی¬گردند.
توجه. در صورتی که مطابق جدول1 سوئیچ¬های 3 و 4 را در حالت OFF قرار داده و دکمه ریست را به مدت یک ثانیه فشار دهید آدرس بورد، نرخ ارسال اطلاعات و مد انکودر به ترتیب به مقادیر 0 ، 5 و 0 که همان تنظیمات پیش فرض کارخانه می¬باشند، برگردانده می¬شوند.
3-3. قرار دادن درایور در حالت کنترل دو موتور دی سی
بعد از انجام تنظیمات اولیه مطابق جدول1 سوئیچ¬های 3 و 4 را در حالت ON قرار داده و دکمه ریست را به مدت یک ثانیه فشار دهید تا وارد مد کنترل موتور DC شوید.
توجه. به طور کلی پس از هر بار تغییر مد عملیاتی برای ورود به آن مد باید دکمه ریست را به مدت یک ثانیه فشار دهید.
3-4. جدول دستورات
توضیحات تعداد بایت دریافتی تعداد بایت ارسالی نام دستور آدرس دستور
(Instruction)
دستور تنظیم سرعت موتور یک در جهت ساعت گرد —–
3
تنظیم سرعت موتور یک
0X64

دستور تنظیم سرعت موتور دو در جهت ساعت گرد —– 3 تنظیم سرعت موتور دو 0X65
دستور تنظیم سرعت موتور یک در جهت پاد ساعت گرد —– 3 تنظیم سرعت موتور یک 0X66
دستور تنظیم سرعت موتور دو در جهت پاد ساعت گرد —– 3 تنظیم سرعت موتور دو 0X67
—————— —– 2 تنظیم شتاب موتورها 0X68
در حالتی که مد انکودر 0X00 باشد استفاده می¬گردد 4 2 دریافت مقدار انکودر کانال1 موتور یک 0X69
در حالتی که مد انکودر 0X00 باشد استفاده می¬گردد 4 2 دریافت مقدار انکودر کانال2 موتور یک 0X6A
در حالتی که مد انکودر 0X00 باشد استفاده می¬گردد دریافت مقدار انکودر کانال1 موتور دو 0X6B
در حالتی که مد انکودر 0X00 باشد استفاده می¬گردد 4 2 دریافت مقدار انکودر کانال2 موتور دو 0X6C
در حالتی که مد انکودر 0X01 باشد استفاده می گردد 4 2 دریافت مقدار انکودر موتور یک در مد quadrature 0X6D
در حالتی که مد انکودر 0X01 باشد استفاده می گردد 4 2 دریافت مقدار انکودر موتور دو در مد quadrature 0X6E
دریافت سرعت موتور اول 1 2 دریافت سرعت موتور اول 0X6F
دریافت سرعت موتور دوم 1 2 دریافت سرعت موتور دوم 0X70
دریافت شتاب موتورها 1 2 دریافت شتاب موتورها 0X71
به مقدار صفر بر می¬گردند —– 2 ریست کردن مقدار انکودرها 0X72
مقدار ID درایور ارسال می¬گردد 1 2 دریافت آدرس بورد 0X73
دریافت مدل بورد(MDC20) – 2 دریافت مدل بورد 0X74
مقادیر 0 یا 1 از سوی بورد ارسال می¬گردند 1 2 دریافت مد انکودر 0X75
نرخ ارسال اطلاعات ار سوی بورد ارسال می گردد. 1 2 دریافت baud rate 0X76
دریافت نسخه نرم افزار بورد – 2 دریافت نسخه نرم افزار بورد 0X77
دریافت تمامی اطلاعات بورد – 2 دریافت تمامی اطلاعات بورد 0X78
جدول3: جدول دستورات در حالت درایور دو یا یک موتور DC
در جدول فوق مقادیر ستون اول(آدرس دستور) هگزادسیمال(مبنای 16) می¬باشند. دلیل استفاده از مبنای 16 به ماهیت ارسال اطلاعات به صورت سریال برمی¬گردد(برای کسب اطلاعات بیشتر راجع به پروتکل سریال به بخش مقالات آموزشی در سایت شرکت به این نشانی مراجعه کنید).

3-5. تنظیم سرعت موتورها
قالب دستورات برای تنظیم سرعت موتورها به صورت زیر می¬باشد.
MOTOR’S SPEED INSTRUCTION BOARD ADDRESS

از آنجایی که هر بورد MDC20 می¬تواند یک آدرس از 0 تا 99 داشته باشد، اولین قدم برای شروع ارتباط با درایور ارسال آدرس بورد(Board Address) برای آن در ابتدای هر دستور عملیاتی می¬باشد. در واقع با ارسال آدرس بورد در ابتدای دستورات در صورت شبکه بودن درایورها، آن درایوری به دستورات عمل خواهد کرد که آدرسش با آدرس ارسالی یکسان باشد.
برای تعیین جهت هر یک از موتورها مطابق جدول3 دو عدد به نام آدرس دستور(INSTRUCTION) وجود دارد به طوری که اعداد 0X64 و 0X66 برای تعیین جهت موتور یک به ترتیب در جهت-ساعت گرد و پادساعت گرد و اعداد 0X65 و 0X67 برای تعیین جهت موتور دو به ترتیب در جهت ساعت گرد و پاد ساعت گرد می¬باشند.
بعد از ارسال آدرس بورد(Board Address) و آدرس دستور(INSTRUCTION) درایور مورد نظر منتظر دریافت سرعت موتور می¬ماند. سرعت هر یک از موتورها در درایور MDC20 یک سرعت نسبی است که می¬تواند یک عدد از 0 تا 255 باشد (0X00 تا 0XFF). عدد 0 متناظر با سرعت صفر و عدد 255 متناظر با ماکزیمم سرعت موتور در جهت مورد نظر می¬باشد.
به عنوان مثال فرض کنید که می¬خواهید که موتور یک بوردی با آدرس 10 با حداکثر سرعت در جهت ساعت گرد شروع به حرکت کند، رشته¬ای که باید ارسال کنید مطابق زیر می¬باشد.
0X0A 0X64 0XFF
با ارسال رشته¬ی فوق از چپ به راست برای درایور یا شبکه¬ای از درایورهای MDC20 موتور یک بوردی که آدرس آن 10 می¬باشد با سرعت 255 شروع به حرکت می¬کند(برای مشاهده نمونه کدهای راه اندازی به زبان¬های C# و MATLAB به بخش مقالات آموزشی در سایت شرکت به این نشانی مراجعه نمایید).

3-6. تنظیم شتاب موتورها
شتات موتورها پارامتری از لختی موتورها می¬باشد. در تنظیم شتاب دیگر نیازی به تنظیم شتاب جداگانه¬ی هر یک از موتورها نیست و شتاب هر دو موتور در یک بورد MDC20 به طور همزمان مساوی تنظیم می¬شود. شتاب دار بودن حرکت موتورها باعث افزایش طول عمر محسوس موتورها و درایور می¬شود چرا که از تغییر ناگهانی جریان در موتورها جلوگیری کرده و در دراز مدت باعث افزایش طول عمر موتورها می¬شود.
هم¬چنین شتاب دار بودن حرکت موتورها علاوه بر افزایش طول عمر موتورها و درایور در مواردی می-تواند مفید واقع شود. به عنوان مثال در برخی از کاربردها می¬خواهیم موتور از سرعت صفر کم کم شروع به حرکت کرده و تدریجا به حداکثر سرعت خود برسد(Soft Start) و یا برعکس می¬خواهیم موتور کم کم و تدریجا متوقف شود(Soft Stop). این پارامتر عددی بین 0 تا 255 بوده که برای هر دو موتور DC به یک میزان تنظیم می¬گردد، به طوری که به ازای عدد 0 موتور دارای کمترین شتاب ممکن(بیشترین میزان لختی) و به ازای عدد 255 موتور دارای بیشترین شتاب(کمترین میزان لختی) می باشد. میزان شتاب پیش فرض درایور 255 بوده که به معنی کمترین لختی می¬باشد. به عبارتی در این حالت موتور در کمترین زمان ممکن سرعت می گیرد و هر چقدر میزان این عدد را کاهش دهیم(شتاب را کمتر کنیم) حرکت موتور نرم تر شده و دیرتر سرعت می¬گیرد.

Acceleration 0X68(Instruction) Board Address

به عنوان مثال فرض کنید قصد داریم موتور یک درایوری با آدرس 16 در جهت ساعت گرد با سرعت 40 و موتور دو همان درایور درجهت پاد ساعت گرد با حداکثر سرعت و شتاب 3 شروع به حرکت کنند. برای این منظور باید رشته زیر را ارسال کنیم.
0X10 0X68 0X03 0X10 0X64 0X28 0X10 0X66 0XFF
در رشته¬ی فوق سه بایت اول(0X10 0X68 0X03) مربوط به تنظیم شتاب موتورها به میزان سه می-باشند. هم چنین سه بایت دوم و سوم به ترتیب برای تنظیم سرعت موتور اول در جهت ساعت گرد به میزان 40(0X28) و سرعت موتور دوم در جهت پاد ساعت گرد به میزان 255(0XFF) می¬باشند.
توجه. شتاب پیش فرض بورد 0XFF می¬باشد(حداکثر شتاب یا کمترین لختی).

3-7. دریافت مقادیر انکودرها
با مراجعه به جدول دستورات در حالت کنترل موتور DC (جدول3) مشاهده می¬کنید که با ارسال آدرس-های 0X69 تا 0X6E می¬توانید مقادیر مربوط به انکودرها را دریافت نمایید به طوری که آدرس¬های 0X69 تا 0X6C برای دریافت میزان پالس¬های انکودر در مد معمولی و آدرس¬های 0X6D و 0X6E برای دریافت میزان پالس¬های انکودر در مد Quadrature می¬باشند.
شمارش پالس¬ها در درایور MDC20 در صورتی که مد انکودر در حالت Quadrature قرار گیرد(0X01) با دقت یک برابر انجام می¬شود. به عنوان مثال در صورتی که انکودری در اختیار دارید که دقت نامی آن 500 پالس می¬باشد، درایور MDC20 به ازای چرخش یک دور شقف موتوری که انکودر به آن متصل است مقدار 500 را برمی¬گرداند.
در درایور MDC20 برای هر انکودر حافظه¬ای 32 بیتی در نظر گرفته شده است که می¬تواند در دو جهت متفاوت به شمارش پالس¬های انکودر بپردازد این عدد می¬تواند بین 2147483648 تا -2147483648 باشد. در واقع بری چرخش در جهت ساعت گرد این عدد افزایشی(Incremental ) و برای چرخش در جهت پاد ساعت گرد این عدد کاهشی(Decremented ) می¬باشد.
توضیح اینکه در صورتی که موتور در جهت ساعت گرد بچرخد مقدار انکودر به ازای هر پالس یک واحد افزایش و درصوتی که موتور در جهت پاد ساعت گرد بچرخد مقدار انکودر به ازای هر پالس یک واحد کاهش می¬یابد. شکل موج خروجی کانال¬های یک انکودر Quadrature به صورت زیر می-باشد.

شکل3: شکل موج خروجی کانال¬های یک انکودر Quadrature
در صورتی که مد انکودر 0X01 تنظیم گردد، شکل موج پالس¬هایی که به MDC20 اعمال خواهند شد به صورت شکل بالا می¬باشد که در آن کانال¬های A و B به میزان 90 درجه با یکدیگر اختلاف فاز دارند و از روی همین اختلاف فاز درایور جهت را تشخیص داده و اقدام به شمارش افزایشی یا کاهشی می¬نماید(برای کسب اطلاعات بیشتر راجع به انکودر Quadrature به بخش مقالات آموزشی در سایت شرکت به این نشانی مراجعه نمایید).
قالب دستورات برای دریافت مقادیر انکدرها به صورت زیر می¬باشد.
Instruction Board Address

مطابق جدول3 آدرس دستور(Instruction) برای خواندن مقدار انکودر هر یک از موتورها در دو مد کاری معمولی و quadrature از 0X69 تا 0X6E می¬باشد.
برای مثال اگر مد انکودر خود را در حالت 0X01 (مد Quadrature) تنظیم کرده¬اید با ارسال رشته زیر می¬توانید مقدار انکودر موتور یک بوردی با آدرس 3 را در حالت شمارش Quadrature دریافت نمایید.
0X03 0X6D
در سایر دستورات خواندنی در جدول دستورات 3 از قبیل خواندن سرعت، شتاب، مدل بورد و… روال کار دقیقا مشابه می¬باشد. در واقع سه مرحله¬ی پشت سر هم از قبیل:
1- ارسال آدرس بورد
2- ارسال آدرس دستور
3- خواندن جواب ارسالی از درایور
باید در تمامی دستورات خواندنی انجام پذیرند.

4.کنترل MDC20 در حالت درایو یک موتورپله¬ای

انجام تنظیمات اولیه
قرار دادن درایور در حالت درایو یک موتور پله¬ای
جدول دستورات
تنظیم نحوه¬ی راه¬اندازی موتور پله¬ای
راه اندازی موتورهای پله¬ای دو¬قطبی
راه اندازی موتورهای پله¬ای تک¬قطبی
4-1. انجام تنظیمات اولیه
برای انجام تنظیمات مربوط به مد کاری موتور پله¬ای مشابه قسمت تنظیمات در مد کاری موتور DC عمل کنید با این تفاوت که چون کنترل موتورهای پله¬ای به صورت حلقه باز انجام می¬شود دیگر نیازی به استفاده از انکودر در آن¬ها نمی¬باشد و رشته¬ی مربوط به مد انکودر را می¬توانید هر یک از مقادیر 0X00 و یا 0X01 تنظیم کنید. رشته¬های مربوط به آدرس بورد و نرخ ارسال اطلاعات نیز مشابه مد کاری موتور DC می¬باشند.
4-2. قرار دادن درایور در حالت درایو یک موتور پله¬ای
مطابق جدول1 برای ورود به مد کاری موتور پله¬ای سوئیچ¬های 1،2 و 3 را در حالت ON و سوئیچ 4 را در حالت OFF قرار دهید. سپس دکمه ریست را به مدت یک ثانیه فشار دهید تا وارد مد کاری موتور پله¬ای شوید.
موتورهای پله¬ای برخلاف موتورهای دی سی که دو رشته سیم از آن¬ها خارج می¬شود شامل 4،5،6 و یا 8 رشته سیم خروجی می¬باشند که دلیل آن به ساختار موتورهای پله¬ای برمی¬گردد(برای کسب اطلاعات راجع به ساختار موتورهای پله¬ای به بخش مقالات آموزشی در سایت شرکت به این نشانی مراجعه کنید). به طور خلاصه موتورهای پله¬ای به دو دسته¬ی مهم تک قطبی و دوقطبی تقسیم می¬شوند که نحوه¬ی راه اندازی در هر کدام متفاوت است.
4-3. جدول دستورات
توضیحات تعداد بایت دریافتی تعداد بایت ارسالی نام دستور آدرس دستور
(Instruction)
چرخش در جهت ساعت گرد – 3 چرخش در جهت ساعت گرد 0XC9
چرخش در جهت پاد ساعت گرد – 3 چرخش در جهت پاد ساعت گرد 0XCA
راه¬اندازی دوقطبی، موجی، کامل و یا نیم پله – 3 تنظیم نحوه¬ی راه¬اندازی موتور پله¬ای 0XCB
فاصله زمانی بین هر دو پله¬ی¬ متوالی بر حسب میکروثانیه – 3 تنظیم سرعت چرخش موتور پله¬ای 0XCC
دریافت آدرس بورد 1 2 دریافت آدرس بورد 0XCD
تنظیم آدرس بورد – 3 تنظیم آدرس بورد 0XCE
دریافت مدل بورد 2 دریافت مدل بورد 0XCF
Bipolar drive, wave ,full of half drive – 2 دریافت نحوه¬ی راه اندازی موتور پله¬ای 0XD0
دریافت فاصله زمانی بین هر دو پله¬ متوالی بر حسب میکروثانیه 1 2 دریافت سرعت موتور پله¬ای 0XD1
دریافت نسخه نرم افزار بورد – 2 دریافت نسخه نرم افزار بورد 0XD2
دریافت تمامی اطلاعات بورد – 2 دریافت تمامی اطلاعات بورد 0XD3
جدول4: جدول دستورات در حالت مد عملیاتی موتور پله¬ای

4-4.تنظیم نحوه¬ی راه¬اندازی موتور پله¬ای
همان طور که می¬دانیم موتورهای پله¬ای به دو دسته تک قطبی و دو قطبی تقسیم می¬شوند که نحوه¬ی راه-اندازی در هرکدام متفاوت است. هم¬چنین راه¬اندازی موتورهای تک قطبی نیز شامل سه روش راه اندازی موجی، راه اندازی کامل و راه اندازی نیم پله می¬باشد. بنابراین اولین قدم در راه اندازی موتور پله¬ای تنظیم نحوه¬ی راه اندازی آن می¬باشد.
قالب دستورات برای تنظیم نحوه¬ی راه¬اندازی موتور پله¬ای به صورت زیر می¬باشد:
Mode of Drive 0XCB(Instruction) Board Address

در قالب فوق رشته¬یof Drive Mode به صورت جدول زیر روش راه¬اندازی موتور پله¬ای را مشخص می¬کند:
0X04 0X03 0X02 0X01
Half Step Drive Full Step Drive Wave Drive Bipolar Drive
جدول5: جدول تنظیم نحوه¬ی راه¬اندازی موتور پله¬ای

به عنوان مثال برای تنظیم نحوه¬ی راه¬اندازی موتور پله¬ای با آدرس 99 به صورت دوقطبی باید رشته زیر را ارسال نمایید:
0X63 0XCB 0X01
نکته. در درایور نحوه¬ی راه¬اندازی پیش فرض موتور پله¬ای، راه اندازی دوقطبی می¬باشد.
4-5. راه اندازی موتورهای پله¬ای دو¬قطبی
در استاتور موتورهای پله¬ای دوقطبی دو سیم پیچ مجزا وجود دارد که انتهای هر یک از آن¬ها به صورت دو رشته سیم از آن بیرون آمده است. راه¬اندازی این گونه از موتورها کمی دشوارتر از موتورهای پله¬ای تک قطبی است چرا که در موتورهای پله¬ای دوقطبی مجبوریم جهت جریان عبوری از سیم¬پیچ¬ها را تغییر دهیم. توجه کنید که هر یک از موتورهای پله¬ای 5 ، 6 و یا 8 سیمه را می¬توان با آرایش دوقطبی راه¬اندازی کرد. فرض کنید سیم¬پیچ¬های یک موتور پله¬ای دوقطبی را به صورت زیر در نظر بگیریم:

شکل4: ساختار موتور پله¬ای دوقطبی
برای راه¬اندازی موتور پله¬ای دوقطبی مطابق جدول5 باید ابتدا نحوه¬ی راه¬اندازی را به صورت دوقطبی تنظیم کنید. سپس سرهای A و B را به خروجی موتوریک و سرهای C و D را به خروجی موتور دو متصل کنید.

پس از تنظیم نحوه¬ی راه اندازی موتور پله¬ای باید سرعت چرخش موتور پله¬ای را مشخص کنید. برای این کار مطابق جدول4 قالب دستورات برای تنظیم سرعت موتور پله¬ای به صورت زیر می¬باشد:
Stepper’s Speed 0XCC(Instruction) Board Address

در قالب فوق بایت Stepper’s Speed که سرعت چرخش موتور پله¬ای را مشخص می¬کند می-تواند از صفر(0X00) تا 255 (0XFF) تنظیم گردد، به طوری که 0xFF متناظر با ماکزیمم سرعت موتور پله¬ای و 0x00 متناظر با مینیمم سرعت می¬باشد. به عنوان مثال برای تنظیم سرعت موتور پله¬ای با آدرس 50 به میزان 252 باید رشته زیر را ارسال نمایید:
0X32 0XCC 0XFC
از آنجایی که در موتورهای پله¬ای با افزایش سرعت از یک میزان مشخصی گشتاور موتور صفر شده و پدیده¬ی رزونانس رخ می¬دهد، بنابراین در اکثر موتورهای پله¬ای سرعت های 255 و 254 منجر به این پدیده می¬شود که باید در این موتورها سرعت را به مقدار پایین تری کاهش داد.
نکته. سرعت موتور پله¬ای در تنظیمات پیش فرض کارخانه 252 می¬باشد.
پس از تنظیم سرعت می¬توانید با استفاده از قالب زیر دستورات حرکتی را برای موتور پله¬ای مورد نظر ارسال کنید:
Board Address 0XC9/0XCA(Instruction) Stepper’s Step

در قالب دستورات فوق 0XC9 برای چرخش در جهت ساعت گرد و 0XCA برای چرخش در جهت پاد ساعت گرد می¬باشد. هم چنین بایت Stepper’s Step تعداد پله را مشخص می¬کند که می¬تواند از صفر تا 255 پله تنظیم گردد.
به عنوان مثال چنانچه قصد دارید موتور پله¬ای با آدرس 50 به صورت دوقطبی با سرعت 252 در جهت ساعت گرد 200 پله حرکت کند باید رشته زیر را ارسال کنید:
0X32 0XCB 0X01 0X32 0XCC 0X252 0X32 0XC9 0XC8
رشته¬ی فوق باید به ترتیب از سمت چپ ارسال گردد. توضیح اینکه سه بایت اول نحوه¬ی راه¬اندازی موتور پله¬ای با آدرس 50 را در حالت دوقطبی تنظیم می¬کند، هم چنین سه بایت دوم سرعت موتور پله¬ای را 252 قرار می¬دهد و در نهایت سه بایت سوم باعث چرخش موتور پله¬ای به میزان 200 پله در جهت ساعت گرد می¬گردد.
4-6. راه اندازی موتورهای پله¬ای تک¬قطبی
موتورهای پله¬ای تک قطبی را می¬توان به سه روش زیر راه اندازی کرد:
1- راه¬اندازی موجی(Wave Drive)
2- راه¬اندازی کامل(Full Drive)
3- راه اندازی نیم پله(Half Drive)
برای راه¬اندازی موتورهای پله¬ای تک قطبی به لحاظ نرم¬افزاری تنها کافیست مطابق جدول5 نحوه¬ی راه اندازی موتور پله¬ای را یکی از سه روش¬ فوق تنظیم کنیم.
ولی نحوه¬ی اتصال موتور پله¬ای تک قطبی به درایور به سادگی موتور پله¬ای دوقطبی نبوده و باید از نحوه¬ی اتصالات سیم پیچ¬های موتور پله¬ای مطلع باشیم که برای کسب اطلاعات راجع به نحوه¬ی اتصالات در سیم-پیچ¬های موتور پله¬ای به بخش مقالات آموزشی در سایت شرکت به این نشانی مراجعه نمایید. سایر مراحل از قبیل تنظیم سرعت و دستورات حرکتی مشابه راه¬اندازی موتورهای پله¬ای دو قطبی می¬باشد.

5. نحوه شبکه کردن

شبکه¬کردن سه یا چند موتور DC
شبکه¬کردن دو یا چند موتور پله¬ای
شبکه¬ای از موتورهای DC و پله¬ای
5-1. شبکه¬کردن سه یا چند موتور DC
چنانچه بخواهید بیش از دو موتور DC را تنها از طریق یک درگاه USB یا UART کنترل و هدایت کنید باید از درایورهای MDC20 به صورت شبکه استفاده کنید.
برای این منظور ابتدا باید تنظیمات درایورهای MDC20 را به طور جداگانه مشابه قسمت انجام تنظیمات در مد کاری موتور دی سی (قسمت 3-2.) انجام دهید. دقت کنید که در این مرحله باید به هر یک از بوردهای MDC20 آدرسی متفاوت اختصاص دهید( در صورت مشابه بودن آدرس¬ها عملکرد مطلوب حاصل نخواهد شد).
پس از انجام تنظیمات باید تمامی بوردهای MDC20 را از طریق درگاه UART با یکدیگر شبکه کنید که برای این منظور باید تمامی پایه¬های RX در بوردهای MDC20 را به یکدیگر و تمامی پایه-های TX را نیز به یکدیگر متصل کنید.
نکته. در صورتی که درایورهای MDC20 را از طریق منابع متفاوت تغذیه می¬کنید باید زمین تمامی بوردها را به منظور عملکرد صحیح یکی کنید(همه زمین¬ها را به هم متصل کنید).
پس از شبکه کردن بوردهای MDC20 با یکدیگر چنانچه می¬خواهید تمامی آنها را از طریق یک درگاه USB و به وسیله کامپیوتر کنترل کنید، ابتدا مطابق جدول1 مد کاری تمامی درایورهای MDC20 را در حال DC قرار دهید.
سپس سوئیچ¬های 1 و 2 درایوری که می¬خواهید از طریق آن به وسیله درگاه USB به کامپیوتر متصل شوید را در حالت ON قرار داده و سوئیچ¬های 1 و 2 سایر درایورها را از حالت ON خارج کنید.
پس از انجام مراحل فوق دکمه ریست را در تک تک بوردها به مدت یک ثانیه فشار دهید تا هر کدام از بوردها وارد مد عملیاتی DC شوند(در صورتی که تغذیه بوردها را خاموش و سپس روشن کنید نیز این کار انجام می¬شود). اکنون می¬توانید این شبکه از بوردها را از طریق درگاه USB کنترل کنید.
چنانچه می¬خواهید این شبکه از درایورهای MDC20 را از طریق درگاه UART و به وسیله یک بورد کنترلی دیگر کنترل کنید لازم است که سوئیچ¬های1 و 2 در تمامی بوردها را از حالت ON خارج کنید.

5-2. شبکه¬کردن دو یا چند موتور پله¬ای
چنانچه می¬خواهید بیش از یک موتور پله¬ای را از طریق یک درگاه USB و یا UART کنترل کنید باید مشابه قمست قبل عمل کنید تنها با این تفاوت که مد عملیاتی بوردها باید در حالت کنترل موتور پله¬ای قرار گیرند.
5-3. شبکه¬ای از موتورهای DC و پله¬ای
با ترکیب دو مرحله¬ی قبل می¬توانید شبکه¬ای از موتورهای DC و پله¬ای را از طریق یک درگاه USB و یا UART کنترل و هدایت کنید.

دیدگاهها

هیچ دیدگاهی برای این محصول نوشته نشده است.

اولین نفری باشید که دیدگاهی را ارسال می کنید برای “MDC20”

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *