بخش ۴-۳ راه اندازی سنسور فتوسل با برد آردوینو
۱۱ اسفند ۱۳۹۸کنترل از راه دور ربات با رادیو کنترل به وسیله دو عدد درایور PMD90
۱۱ اسفند ۱۳۹۸مقدمه
اتصال درایور MDC20 به نرم افزار متلب
برای راهاندازی درایور MDC20 با استفاده از نرمافزار متلب مراحل زیر را به ترتیب انجام دهید.
۱- درایور را با ولتاژی از ۵.۵ تا ۳۶ ولت تغذیه کنید. (در صورتیکه تغذیه درایور را به درستی متصل کرده باشید، چراغ قرمز رنگ Power’s LED موجود در وسط بورد روشن خواهد شد).
۲- درایور را از طریق کابل USB به کامپیوتر وصل کنید و سوئیچهای ۱ و ۲ را در حالت ON قرار دهید.
۳- به قسمت Device Manager کامپیوتر خود رفته و شماره درگاه USB را استخراج کنید.
۴- سوئیچهای ۳ و ۴ را در حالت OFF قرار داده و دکمه ریست را به مدت یک ثانیه فشار دهید (با انجام این مرحله آدرس بورد، نرخ ارسال اطلاعات و مد انکودر به ترتیب صفر، ۹۶۰۰ و مد شمارش معمولی تنظیم میگردند).
بعد از انجام مراحل چهارگانهی فوق درایور آمادهی کنترل موتور DC یا پلهای میشود.
انجام تنظیمات درگاه USB در نرم افزار متلب
برای شروع کار و کنترل درایور از طریق نرمافزار متلب ابتدا باید تنظیمات درگاده USB را در نرمافزار متلب انجام دهید که برای این منظور میتوانید از قطعه کد زیر استفاد کنید:
clear delete(instrfind) s=serial('COM13'); set(s,'BaudRate',9600); fopen(s);
با اجرای قطعه کد فوق درگاه سریال s با شماره درگاه ۱۳ (شماره درگاه مطابق با شمارهی آن در قسمت Device Manager کامپبوتر تنظیم میگردد) و نرخ ارسال اطلاعات به میزان ۹۶۰۰ بیت در ثانیه ایجاد و باز میگردد.
کنترل موتورهای DC
در مرحله بعد چنانچه قصد دارید تا از درایور MDC20 برای کنترل موتور DC استفاده کنید سوئیچهای ۳ و ۴ را در حالت ON قرار داده و دکمه ریست را به مدت یک ثانیه فشار دهید تا وارد مد کنترل موتور DC شوید.
تنظیم سرعت موتورها
در درایور MDC20 برای کنترل سرعت موتورها با توجه به جدول ۳ موجود در User’s Manual درایور MDC20 برای کنترل سرعت موتور یک از دستورات 0X64 و 0X66 به ترتیب برای چرخش در جهت ساعت گرد و پاد ساعت گرد و برای کنترل سرعت موتور دو از دستورات 0X65 و 0X67 به ترتیب برای چرخش در جهت ساعت گرد و پاد ساعت گرد استفاده میشود.
به عنوان مثال برای تنظیم سرعت موتور اول در جهت ساعت گرد به میزان ۲۰۰ و تنظیم سرعت موتور دوم در جهت پاد ساعت گرد به همان میزان میتوان از قطعه کد زیر استفاده کرد:
M1CW = hex2dec({'00','64','C8'); fwrite(s,M1CW); M2CCW = hex2dec({'00','67','C8'); fwrite(s,M2CCW);
تنظیم شتاب موتورها
یکی از قابلیتهای درایور MDC20 امکان تنظیم شتاب موتورها میباشد. شتاب موتورها میزان نرم بودن حرکت را مشخص میکند. این پارامتر عددی بین 0 تا 255 بوده که برای هر دو موتور DC به یک میزان تنظیم می گردد، به طوری که به ازای عدد 0 موتور دارای کمترین شتاب ممکن (بیشترین میزان لختی) و به ازای عدد 255 موتور دارای بیشترین شتاب (کمترین میزان لختی) میباشد.
میزان شتاب پیش فرض درایور 255 بوده که به معنی کمترین لختی میباشد. به عبارتی در این حالت موتور در کمترین زمان ممکن سرعت میگیرد و هر چقدر میزان این عدد را کاهش دهیم (شتاب را کمتر کنیم) حرکت موتور نرم تر شده و دیرتر سرعت میگیرد.
برای تنظیم شتاب موتورها مطابق جدول ۳ در User’s Manual درایور MDC20 باید از دستورالعمل 0X68 استفاده کنیم. به عنوان مثال برای تنظیم شتاب موتورها به میزان 250 میتوان از قطعه کد زیر در نرم افزار متلب استفاده کرد:
Acceleration = hex2dec({'00','68','FA'); fwrite(s,Acceleration);
دریافت مقادیر انکودرها
انکودر درایور MDC20 در دو مد کاری زیر میتواند عمل نماید:
الف) مد انکودر شمارش ساده: در این حالت درایور پالسهای خروجی از انکودر را جدا از هم به صورت ساده میشمارد (جهت حرکت در شمارنده بی تاثیر است).
ب) مد انکودر شمارش Quadrature: در این مد هر دو پالس خروجی انکودر به صورت مرکب شمرده خواهد شد. این مد مناسب پیادهسازی الگوریتمهای کنترلی است. توجه کنید که انکودر شما بایستی در این حالت دارای دو خروجی پالس باشد.
قبل از استفاده از انکودر توجه نمایید که درایور در کدام مد کاری تنظیم شده است. سپس به عنوان مثال با قطعه کد زیر میتوانید مقدار انکودر موتور یک را در مد quadrature دریافت نمایید:
delete(instrfind); s = serial('COM5'); set(s,'BaudRate',9600); fopen(s); Encoder_Read = hex2dec({'00','6D'}); fwrite(s,Encoder_Read); Actual = fscanf(s,'%e',14);
28 Comments
با سلام و سپاس بابت توضیحات مناسبتون..لطفا کد مربوط به دریافت مقادیر انکودر را نیز به عنوان نمونه در وب قرار دهید .. با تشکر
سلام
نحوه دریافت مقدار انکودر در مد quadrature اضافه شد.
با عرض سلام و خسته نباشید
۱- آیا درایور MDC20 توانایی تغییر جهت حرکت و سرعت یا شتاب موتور در دقت زمانی ۰.۰۰۵ ثانیه دارد؟
۲- آیا می توان مقادیر جهت حرکت و سرعت یا شتاب در محیط متلب بصورت ماتریسی یا با حلقه for تغییر داد؟
با تشکر
سلام بر شما کاربر گرامی،
در ابتدا به عنوان پاسخ کوتاه، جواب هردو سئوال شما بله است اما چرا؟
در جواب سوال اول باید به ۲ نکته مهم توجه داشته باشید. اولا اینکه تغییر سرعت یک موتور تابع ۲ مسئله است، اولین مسئله سرعت ارسال و دریافت اطلاعات بین درایور و کنترل کننده که می تواند یک کامپیوتر، یک میکروکنترلر یا یک سیستم میکروکنترلری همانند Arduino یا Rasperi و یا … باشد. در این حالت حداکثر تاخیر ارسال و دریافت در حد چند میکرو ثانیه می باشد، که همان پاسخ درایور به تغییرات سرعت است. دومین مسئله که باید در نظر بگیرید دینامیک موتور شماست. در واقع باید این سوال را از خود بپرسید که موتور می تواند در بازه های ۵ میلی ثانیه ای به تغییرات سرعت پاسخ دهد یا خیر؟ برای یافتن جواب باید پاسخ پله ی موتورتان را بدانید. اگر موتور شما قابلیت دنبال کردن تغییرات سرعت در این بازه زمانی را دارد باید بدانید که در استفاده از MDC20 به مشکلی نخواهید خورد. به طور خلاصه محدود کننده ی تغییرات سرعت موتور شماست نه درایور موتور، به همین دلیل باید روی موتور نیز تمرکز داشته باشید.
در جواب سوال دوم شما باید بگویم که اصلا هدف اصلی طراحی و ساخت MDC20 چنین چیزی بوده است. در واقع شما قادرید هر برنامه ی کنترلی را از طریق هر نرم افزار یا زبان برنامه نویسی بر روی MDC20 تست کنین. به عنوان جواب دقیق تر شما می توانید همانند مثال های بالا به جای دادن سرعت های ثابت، سرعتهایی از پیش تعیین شده را در یک ماتریس قرار داده و برای موتور در هر لحظه ی دلخواه ارسال کنین.
به عنوان مثال می توانید به صفحه ی زیر که یک نمونه کنترلر PID پیاده سازی شده بر روی MATLABبرای درایور MDC20 است مراجعه فرمایید.
در صورت داشتن هرگونه ابهام ، تردیدی در پرسیدن سئوال در اینجا نداشته باشید.
https://robotmakers.ir/%DA%A9%D9%86%D8%AA%D8%B1%D9%84-%D9%85%D9%88%D8%AA%D9%88%D8%B1-dc-%D8%A8%D8%A7-%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%D8%A7%D8%B2-%D8%AF%D8%B1%D8%A7%DB%8C%D9%88%D8%B1-mdc20-%D9%88-%D9%86%D8%B1/
سلام
چند تا موتور dc دارم که می خواهم سرعت هر یک از آنها را به صورت تابعی از زمان (هر موتور با تایع متفاوت) مثلا سینوسی با زمان تغییر کند و با انکودر مکانیکی هم چک کنم. خودم مکانیک خوندم و از الکترونیک اطلاع ندارم ۱- آیا میشه با این درایور این کار رو کرد؟ ۲- من که اصلا الکترونیک نمیدانم می توانم با این درایور کار کنم یا یاز به کمک دارم؟ یعنی جای اتصال سیمه و انکودر مشخص شده است؟ ۳- آیا شرکت چند نمونه از برنامه های آماده متب در اختیار کاربر قرار می دهد تا فقط من تابع را عوض کنم؟ ۴- آیا از این درایور برای تغییر سرعت سینوسی استپ موتور میشه استفاده کرد؟
با سلام،
به طور خلاصه تمام سئوالات شما پاسخشان بله هست، در ادامه به تک تک آنها پاسخ می دهیم:
۱- اولا با هریک از درایور های MDC20 شما می توانید ۲ موتور DC به صورت همزمان یا یک موتور Stepper را کنترل کنید. در MDC20 دو درگاه برای انکودر در نظر گرفته شده که شما می توانید در صورت مجهز بودن موتور خود به انکودر از این ویژگی در دو حالت Simple و Quadrature بهره ببرید. همچنین شما می توانید شبکه ای از درایور موتورهای DC و STEPPER را ساخته و همه را با یک کامپیوتر کنترل کنین.
۲- جالب است بدانید هدف اصلی و نهایی MDC20 همین بوده که نیاز به دانش فنی در کاربر را به حداقل برساند، MDC20 محصول کار گروهی ۴ نفره ای است که ۲ نفر از این ۴ نفر مهندسین مکانیک هستند، و تمام تلاش بر سادگی و عدم نیاز کاربر به ورود به مسائل تخصصی بوده و هست و خواهد بود.
۳- اگر به لینک زیر مراجعه کنین با انواع و اقسام آموزش ها و برنامه های آماده برای MDC20 مواجه می شوید، تمام توابع مورد نیاز شما برای کار با MATLAB از قبیل راه اندازی موتور ها، خواندن انکورد، پیاده سازی روشهای کنترلی مثل PID Controller آورده شده. همچنین MDC20 مجهز به یک رابط کاربری بسیار کاربردی برای تستهای اولیه شماست.
https://robotmakers.ir/%D9%85%D8%B3%D8%AA%D9%86%D8%AF%D8%A7%D8%AA-%D8%A2%D9%85%D9%88%D8%B2%D8%B4%DB%8C-%D8%AF%D8%B1%D8%A7%DB%8C%D9%88%D8%B1-mdc20/
۴- به دلیل اینکه درایور طوری طراحی شده که تمام نیازهای کاربر از بعد سخت افزار به بعد نرم افزار آورده شده، شما قادر به ارسال هر نوع تابع برای سرعت و یا موقعیت موتور خواهید بود. به مثال PID کنترلر مراجعه کرده و خواهید دید که تمامی این کارها در آنجا انجام شده است.
در نهایت در آینده نزدیک همواره مطالب آموزشی بیشتری برای نحوه کنترل بیشتر و بهتر MDC20 در سایت قرار داده خواهد شد.
ممنون از جواب ولی باز هم چند سوال
۱- آیا با یک درایور امکان دادن ۲ تابع متفاوت به هر یک از موتورها وجود دارد؟ یعنی یکی سرعتش سینوسی و دیگری کسینوسی با زمان تغییر کند؟
۲- سوال قبلی را با عرض پوزش مجددا تکرار می کنم (چون به علت عدم داشتن اطلاعات کافی الکترونیک خیلی وقتم تلف شده) من فقط ۲ موتور دارم و ۲ انکودر چرخ دنده ای خریدم و می خواهم سرعت هرکدام را با زمان به صورت تابع مشخص تغییر بدهم ولی از الکترونیک اطلاع ندارم آیا منبع آموزشی شروع از صفر برای مثل من دارید تا بدون نیاز به کسی کارم را انجام دهم یا چون اطلاع از نحوه کار درایور و یا انکودر ندارم باید از کسی کمک بگیرم؟ مثلا الان می خواهم شروع کنم چطور اقدام کنم و خروجی انکودر را چطور رسم کنم؟ آیا فیلمی در این زمینه دارید؟
۳- از انکودر مکانیکی که دارای چرخ دنده و سنسور اپتیکال هستش و روی شفت موتور قرار می گیرد استفاده میکنم ولی بلد نیستم چطور پالسهاش رو بشمورم و خروجی درایور در نرم افزار رو ببینم. یعنی در کل کار با آن را بلد نیستم. چطور می توانم خروجی انکودر را در نرم افزار متلب یا لب ویو ببینم و رسم کنم؟ چون خروجی انکودر بسیار برام مهم هستش و دور موتور حدکاثر ۵ آر پی ام هست برای همین خطا به شدت تاثیر گذار هست.
نکته آخر: اگز نمونه یک کد که در آن موتورها یکی سینوسی و دیگری کسینوسی می چرخد و انکودر هم کنترل می شود و رسم می گردد را به عنوان نمونه در سایت قرار دهید واقعا سپاسگذار شما خواهم بود و حتما از مشتریان خوب شما می شوم.
سلام مجدد به شما کاربر گرامی
پاسخهایتان را به ترتیب در زیر تقدیم می کنیم:
۱- قطعا چنین چیزی ممکن است، برای حرکت MDC20 در هر جهت یکی از فرامینی که برای موتور ارسال می شود میزان سرعت موتور است، شما می توانید یک ماتریس از سرعت های متفاوت یا یک Vector از سرعت های متفاوت که می تواند به صورت سینوسی و … تنظیم شده اند را برای موتور در زمانهای مختلف ارسال کرده و موتور به محض دریافت پیام اقدام به تنظیم سرعت می کند.
۲- شما با داشتن MDC20 اصلا نیازی به این ندارید که پالسهای Encoder ها را بشمارید. MDC20 برای شما این کار را انجام می دهد و در هر لحظه برای شما تعداد کل پالسهای ارسالی را با دو دقت ۱X و ۴X ارسال می کند. به عبارت دیگر اگر شما از یک انکودر ۲۰۰ پالس در دور استفاده کنید و این انکودر را به MDC20 متصل کنین، در مد (X1 (Simple پس از یک دور چرخش موتور شما اگر از MDC20 مقدار پالس دریافت شده را بخوانید عدد ۲۰۰ را دریافت خواهید کرد و اگر MDC20 را برای شمارش پالسها بر روی مد X4 یا Quadrature تنظیم کرده باشین به ازای یک دور چرخش عدد ۸۰۰ را دریافت خواهید کرد. مد quadrature دارای دقت شمارش پالس ۴ برابر مد simple است.
۳- نحوه ی خواندن انکودر با استفاده از Matlab در همین جا آورده شده است. شمارش انکودر به صورت incremental خواهد بود و در داخل MDC20 انجام می گیرد. مثلا اگر موتور شما با یک انکودر ۲۰۰ پالس در دور ،۵ دور بچرخد شما در مد simple عدد ۱۰۰۰ و دز مد Quadrature عدد ۴۰۰۰ را دریافت می کنین. همچنین شمارش انکودر با تغییر جهت موتور نیز کاهشی ادامه پیدا خواهد کرد، به عنوان مثال اگر با همان انکودر قبلی ۲۰۰ پالسی شما ۵ دور در جهت ساعتگرد و ۲ دور در جهت پادساعت گرد موتور را بچرخوانید و حالا عدد انکودر را در مد Simple بخوانید عدد ۶۰۰ را دریافت خواهید کرد ( ۲*۲۰۰-۲۰۰*۵)
۴- MDC20 به جرات یکی از پشتیبانی شده ترین درایورهای موجود در بازار است و همواره روشهای جدیدی برای کنترل آن بر روی سایت قرار می گیرد، بنابراین نگرانی ای از آینده کار با این درایور نداشته باشید. در صورت داشتن هر گونه سوال دیگر تردیدی در مطرح کردن آن در اینجا نداشته باشید.
۵- برای رسم خروجی انکودر به سادگی می توانید خروجی پورت سریال را در زمانی که از انکودر مقادیر پالس ها را می خوانید با استفاده از تابع plot در متلب رسم کنین. در صفحه ی زیر در بخش خواندن انکودر کافی است متغییر Actual را برای تابع plot به صورت (plot(Actual ارسال کنین.
https://robotmakers.ir/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D9%86%D8%AD%D9%88%D9%87-%D8%B1%D8%A7%D9%87-%D8%A7%D9%86%D8%AF%D8%A7%D8%B2%DB%8C-%D8%AF%D8%B1%D8%A7%DB%8C%D9%88%D8%B1-mdc20-%D8%A8%D8%A7-%D9%86%D8%B1%D9%85-%D8%A7%D9%81/
با سلام،
چند تا سوال داشتم خدمتتون، می خواستم بدونم برای درایو دو تا موتور دی سی باید حتما انکودر استفاده بشه یا نه؟
بعد اینکه اگه بخوایم حلقه باز دور موتور رو کنترل کنیم باید چیکار بکنیم، چون دینامیک پروژه ما به انکودر احتیاج نداره ، ولی ما از سنسور شتاب سنج و ژیروسکوپ از سرعت دستگاه فیدبک می گیریم، میشه از این سنسور ها فیدبک گرفت به جای انکودر؟
و اینکه واحد های سرعت و شتاب در Manual این دستگاه چیه؟
با سلام خدمت شما
در جواب سوال اولتون باید عرض کنم، خیر، شما مختار هستید برای درایور دو موتور DC آنها را به صورت حلقه بسته (با انکودر) یا به صورت حلقه باز (بدون انکودر) کنترل نمایید.
بهتره اینطور بگم که سرعتی که به موتور در این درایور اختصاص داده میشه یک عدد از صفر تا ۲۵۵ هست که به صورت یک پهنای باند برای سیگنال PWM (کنترل کننده سرعت چرخش موتور) به درایور ارسال میشه و رابطه ای با واحد سرعت مکانیکی که متر بر ثانیه هست نداره چرا که دینامیک هر موتور با دیگری متفاوت هست و از اونجا که درایور ما جنرال می باشد و بایستی تمامی موتورها را پوشش دهد، ما این تغییر واحد را به عهده خود کاربر گذاشته ایم.
بسیار خوب، حال که شما خودتان یک سنسور در اختیار دارید می توانید به راحتی با فیدبک گرفتن از آن سنسور برنامه ای بنویسید که سرعت موتور را متناسبا با بازخوردی که از سنسور شتاب سنج میگیرد کنترل نماید. یک PID ساده همانطور که در مستندات آموزشی درایور موجود است را می توانید بر روی آن پیاده کنید و به جای اینکه از واحد انکودر بازخورد بگیرید اطلاعات سنسور خود را در سیگنال کنترل وارد نمایید.
ولی اگر منظور شما اتصال سنسور شتاب سنج به سوکت انکودر این درایور هست با توجه به تفاوت در پروتکل این نوع سنسورها با انکودر، این قابلیت وجود ندارد.
با سلام دوباره
ما روش حلقه باز گفته شده رو با توجه به مطالب آموزشی انجام دادیم، همچنین تنظیمات اولیه رو هم همونطور که گفته شده بود انجام دادیم، ولی باز هم شفت موتور هیچ تغییری نکرد، با تغییر ولتاژ نیز اتفاقی نیفتاد، میشه گفت که مشکل از کجاست؟ چون همون مراحل این سایت رو اجرا کردیم
با سلام دوست عزیز، برای کمک به شما ابتدا ما نیازمندیم که اطلاعاتی را در مورد پروژه شما داشته باشیم تا بتوانیم دقیق تر شما را راهنمایی کنیم، به همین منظور لطفا به تاپیک زیر مراجعه کرده و ضمن دادن توضیحات در مورد پروژه و مشکلتان لطفا کدهای نوشته شده در Matlab برای MDC20 در پروژه ی خود را قرار دهید تا بتوانیم به نحو احسن شما را راهنمایی کنیم
با تشکر
http://robotmakers.ir/ask/index.php?qa=10&qa_1=%D8%B1%D8%A7%D9%87-%D8%A7%D9%86%D8%AF%D8%A7%D8%B2%DB%8C-mdc20-%D8%A8%D8%A7-%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%D8%A7%D8%B2-%D9%86%D8%B1%D9%85-%D8%A7%D9%81%D8%B2%D8%A7%D8%B1-matlab
سلام ممنون از مطلب مفیدتون
من یه مشکل دارم و نمیتونم حلش کنم یه درایو ac و سروو موتور دارم از برند یاسکاوا میخوام درایو رو به متلب متصل کنم و با متلب میزان سرعت مورد نظرم رو تنظیم کنم و خروجی موتور رو مانیتور کنم چه راهی پیشنهاد میشه؟
ممنون میشم جواب بدین چون خیلی گیر این مسوضوعم
با سلام
من میخوام دنای محیطو با میکرو اندازه بگیرم و به صورت مقدار عددی و نموداری در متلب ببینم میشه راهنمایم کنیین که چطوری به متلب چنین دستوری بدم؟
سلام
میتونی از بردهای آردوینو استفاده کنین که قابلیت گرفتن ورودی آنالوگ(سنسور دما) و اتصال به متلب رو داره.
با عرض سلام و خسته نباشید.
بنده برای کنترل موقعیت موتور از یک انکدر absolute استفاده میکنم که خروجی این سنسور بصورت عدد باینری ده بیتی میباشد و بر اساس پالس کار نمیکند. خروجی این سنسور ده پایه میباشد که مقدار هرکدام یا یک است و یا صفر. آیا امکان اتصال مستقیم این نوع انکدر به درایو شما وجود دارد یا باید از طریق یک برد واسط مثلا بردهای آردوینو و .. استفاده کرد؟
پیشاپیش سپاس فراوان از پاسخگویی شما. موفق و پیروز باشین
سلام
درایور MDC20 فقط قابلیت پشتیبانی از انکودر افزایشی رو داراست و شما نیاز به یک برد واسط برای تبدیل کد باینری انکودر هستین
سلام مجدد.
ممنون بابت پاسخگوییتون. موفق و پیروز باشین
سلام و عرض ادب خدمت شما
خداقوت به همه دوستان
سوال من این است که آیا الگوریتم های کنترلی را بصورت کامل میتوان به کمک این درایور پیاده سازی کرد؟
توضیحات بیشتر :
من میخواهم انواع کنترل کننده ها، اعم از کنترل تطبیقی، مد لغزشی، پسگام و روش های دیگر کنترل غیرخطی را بر
روی موتور DC، با کمک سیمولینک پیاده کنم (فرض کنید که خروجی ها را برای مقاله میخواهم). مسله tracing برای
من مهم است.
با سلام
واسه پیاده سازی کنترل کننده ها فوق باید از یک درایور قویتری استفاده کنین. درایور AMD48 مناسب اینکار هست و من خودم هم پایان نامه کارشناسی ارشدم رو روش پیاده سازی کردم. لطفا جهت اطلاعات بیشتر تماس با دفتر شرکت تماس بگیرین.
[…] نمونه کد راه اندازی درایور MDC20 در نرم افزار متلب […]
[…] بیشتر بخوانید: نمونه کد راه اندازی درایور MDC20 در نرم افزار متلب […]
[…] نمونه کد راه اندازی درایور MDC20 در نرم افزار متلب […]
[…] آموزش نحوه ی راه اندازی درایور MDC20 با نرم افزار متلب […]
سلام
اگر از این برد علاوه بر کنترل حلقه بسته موتور دی سی بخواهیم اطلاعات یک سنسور مثل لود سل را بخونیم و در متلب با توجه به ان موتور را کنترل کنیم امکان پذیر هست؟
[…] آموزش نحوهی راه اندازی درایور MDC20 با نرم افزار متلب […]
سلام برای تشخیص تعداد پالس یک انکودر که پلاک ندارد چه میتوان کرد. با توجه به اینکه انکودر فاقد پالس Z هست.
سلام
میتونین یک نشانگر روی بدنه موتور و شفت موتور بزارین و مثلا موتور رو ۱۰ دور بچرخونین. بعد تعداد پالس دریافتی رو تقسیم بر ۱۰ کنین و اینجوری میتونین به شکل تقریبی تعداد پالس بر دور انکودر رو در بیارین.