این پروژه اجرای یک رابط کاربری گرافیکی مبتنی بر متلب (GUI) را برای کنترل حرکت یک ماشین روباتیک ارائه میکند. دستورات حرکت خودرو در جهتهای جلو، عقب، راست و چپ از رابط کاربری گرافیکی ارسال شده و توسط برد آردوینو Uno که در بالای خودرو نصب شده است پردازش میشود. نمونه اولیه نویسندگان در شکل 1 نشان داده شده است.
ماشین رباتیک مبتنی بر رابط کاربری گرافیکی متلب
مدار و کار
در این پروژه رابط کاربری گرافیکی مبتنی بر متلب با آردوینو از طریق کابل داده USB ارتباط برقرار می کند. شما می توانید با فشار دادن دکمه فشاری مربوطه در رابط کاربری گرافیکی، دستوراتی را به آردوینو ارسال کنید تا خودرو را در یک جهت خاص حرکت دهد. دکمه فشاری خاص، هنگامی که فشار داده می شود، عملکرد برگشت تماس مربوط به آن دکمه فشاری را در برنامه MATLAB، car.m اجرا می کند. در این تابع، دستورالعملهای تنظیم/تنظیم مجدد پینهای ورودی/خروجی دیجیتال (10، 11، 12 و 13) آردوینو اجرا میشود تا ماشین را در جهت مورد نظر هدایت کند.
بلوک دیاگرام برای کنترل ماشین روباتیک از طریق رابط کاربری گرافیکی مبتنی بر متلب
شکل 3: نمودار مدار برای کنترل ماشین روباتیک از طریق رابط کاربری گرافیکی مبتنی بر متلب
نمودارهای بلوک و مدار برای کنترل ربات به ترتیب در شکل 2 و 3 نشان داده شده است.
برد آردوینو Uno. Arduino Uno یک برد توسعه مبتنی بر میکروکنترلر AVR ATmega328P (MCU) با شش پین ورودی آنالوگ و 14 پین ورودی/خروجی دیجیتال است. MCU دارای 32 کیلوبایت حافظه فلش ISP، 2 کیلوبایت SRAM و 1 کیلوبایت EEPROM است. این برد قابلیت ارتباط سریالی از طریق UART، SPI و I2C را فراهم می کند. MCU می تواند در فرکانس ساعت 16 مگاهرتز کار کند. در این پروژه، پین های ورودی/خروجی دیجیتال 10، 11، 12 و 13 آردوینو به عنوان پایه های خروجی پیکربندی شده اند.
آی سی L293D. این یک آی سی درایور موتور H-Bridge دوگانه با جریان بالا است. این آی سی از آنجایی استفاده می شود که پین های دیجیتال آردوینو Uno نمی توانند جریان کافی برای به حرکت درآوردن موتورهای ماشین روباتیک را تامین کنند. پل های H در کنترل جهت چرخش موتور نیز مفید هستند. پینهای فعال (پایههای 1 و 9) آیسی که در حالت بالا فعال هستند به 9 ولت متصل هستند.
چهار پایه ورودی IN1، IN2، IN3 و IN4 L293D به ترتیب به پایههای ورودی/خروجی دیجیتال 10، 11، 12 و 13 آردوینو متصل شدهاند. چهار پایه خروجی (OUT1، OUT2، OUT3 و OUT4) آی سی به دو موتور (M1 و M2) وصل شده اند که پایانه های آنها به ترتیب با علامت A، B، C و D مطابق شکل 3 مشخص شده است.
با فشار دادن یک دکمه خاص در رابط کاربری گرافیکی، سیگنال های دیجیتال ارسال شده از آردوینو به L293D در جدول I فهرست شده اند.