طراح



نرم افزار طراحی سه بعدی فیوژن 360 از زیرمجموعه های اتودسک ، با محیطی یوزر فرندی ، یادگیری آسان ، حجم کم و در عین حال حرفه ای که برای طراحی قاب، قالب، محصول ، طراحی قطعات جهت چاپ سه بعدی بسیار کاربردی میباشد و یادگیری آن برای مهندسین قطعا مفید هست.


برای یادگیری میتوانید از آموزش های لیندا و ویدئوهای موجود در یوتیوب ، همینطور ویدئو های خود سایت اتودسک استفاده کنید.


ویدئوی معرفی:

https://www.aparat.com/v/q1S2K


قطعه ایی که خودم با فیوژن 360 جهت چاپ سه بعدی طراحی کردم:

https://www.aparat.com/v/PRDr4


سلام به دوست داران الکترونیک و دنیای برنامه نویسی.

در این مطلب می خواهم که اطلاعات مربوط به ساخت رباتی که ویدئوی آن را قرار دادم برایتان منتشر کنم.


1 - مدار و شماتیک

لیست قطعات: 

AMS1117 - ,MC34063 - LM324 - ATXMEGA32A4U - SRF05 - ESP8266 - L293

1-1 : واحد تغذیه: برای مدار نیاز به ولتاژ 3.3 ولت و 5 میباشد. رگولاتور 3.3 ولت AMS1117  تغذیه میکرو و ماژول WIFI  را تامین میکند. رگولاتور MC34063 نیز ولتاژ 5 ولت سایر قطعات را تامین میکند. که به دلیل کوچک بودن سایز این رگولاتور و سلفش انتخاب شده است.


1-2 : پردازنده: برای این مورد هم از پردازنده محبوبم یعنی ATXMEGA32A4U استفاده کردم.


1-3: ESP8266: ارزان ترین و در دسترس ترین و کوچکترین و محبوب ترین ماژول وای فای موجود در دنیا میباشند.


1-4: SRF05: ماژول فاصله سنج آلتراسونیک با حداکثر اندازه گیری 5 متر

1-5: LM324: خروجی آنالوگ سنسورهای مادون قرمز TCRT5000 با استفاده از حالت مقایسگر آپ امپ تبدیل به دیجیتال شده و به میکرو منتقل میشود. از سه سنسور برای حالت مسیریاب استفاده شده است. و سنسور چهارمی هم پیش بینی شده که بتوان کنار چرخ نصب کرد و تعداد چرخیدن چرخ را شمرد که فعلا از آن استفاده نشده است.


1-6: L293 : راه اندازی موتورها به عهده درایور 

L293D  میباشد. که امکان کنترل دو موتور را به صورت چپ-گرد / راست-گرد با جریان خروجی برای هر موتور 600 میلی آمپر را دارد.



شماتیک کل مدار:


2- PCB: برد ربات با استفاده از نرم افزار EAGLE و به صورت یک رو طراحی شده است. آموزش های این نرم افزار را از 

اینجا میتوانید دانلود کنید.



دانلود سورس PCB


3 -توضیحات برنامه:

برنامه به زبان C و نرم افزار اتمل استودیو نوشته شده است. با فرض بر اینکه دوستان با برنامه نویسی زبان C آشنا هستند، قسمتهایی که بیشتر مربوط به تنظیمات سخت افزاری ATXMEGA میباشد را شرح میدهم. 

3-1: در ابتدای برنامه تابع init فراخوانی شده و فرکانس میکروکنترلر با اجرای تابع osc_extclk_pll_init از کتابخانه osilator config.h در حالت اسیلاتور متصل به کریستال خارجی تنظیم میشود و با استفاده از واحدد PLL فرکانس 8 مگاهرتز 4 شده و به 32 مگاهرتز میرسد و با توجه به این که ضرایب Prescaler A و Prescaler B و Prescaler C  بدون تغییر با مقدار پیش فرض 1 میباشند فرکانس کاری CPU هم 32 مگاهرتز خواهد بود.


void osc_extclk_pll_init(void)
{ }









3-2: کنترل دور موتور: برای کنترل دور موتورها تایمر/کانتر 1 از پورت C در حالت Single-slop PWM Generation قرار داده شده و فرکانس خروجی PWM با قرار دادن مقدار 800 در رجیستر تایمر بر روی 156 هرتز تنظیم شده ، خروجی PWM بر روی پایه های OC1A و OC1B فعال و تایمر با Prescaler 256 شروع به کار کرده است.


TCC1.CNT = 0;
TCC1TCC1TCC1EN_LEN_R





3-3: اندازه گیری فاصله با استفاده از ماژول SRF05: به صورت خلاصه با تحریک کردن پایه Trigger و اندازه گیری مدت زمان تغییر وضعیت پایه echo می توان فاصله تا مانع را بدست آورد. با تحریک پایه تریگر؛ پایه اکو به وضعیت یک تغییر میکند و بعد از دریافت برگشت امواج فراصوت وضعیت پایه به صفر برمی‌گردد. با توجه به اینکه اندازه گیری فاصله با مانع؛ برای جلوگیری از برخورد با مانع؛ باید پشت سر هم تکرار شود در صورتی که اندازه گیری طول پالس را CPU انجام دهد باعث مشغول شدن CPU و کاهش استفاده مفید از آن میشود. به این خاطر اندازه گیری طول پالس به قابلیت  Pulse Width Capture از تایمر صفر پورت C واگذار میشود. برای این کار باید وقفه بر روی پایه میکرو که به خروجی اکو ماژول متصل است در حالت both edges فعال شود و از طریق Event به عنوان ورودی واحد کپچر تایمر متصل شود.  نحوه کار تایمر در حالت اندازه گیری عرض پالس به این شکل است که با لبه بالا رونده پالس، تایمر ریست شده و از مقدار صفر شروع به شمارش میکند و با لبه پایین رونده پالس، مقداری که در شمارنده تایمر قرار دارد در رجیستر کپچر(CCX) ذخیره میشود.

در اینجا کانال صفر ایونت به PIN2 از PORTA متصل و وقفه خارجی پایه در حالت both edges به عنوان تریگر ایونت انتخاب میشود.


EVSYS.CH0MUX = EVSYS_CHMUX_PORTA_PIN2_gc; //ENABLE EVENT CHANEL 0 ON PIN2 FROM PORTA
PORTA.PIN2CTRL = PORT_ISC_BOTHEDGES_gc;//ENABLE Sense both edges ON PORTA2 FOR TRIGER







EVENT CHANEL 0



تنظیم تایمر در حالت کپچر:


TCC0.CNT = 0;
TCC0.CTRLB = TC_TC0_WGMODE_NORMAL_gc | TC0_CCAEN_bm;//ENABLE CAPTURE CHANEL A(CCA)-
TIMER IN NORMAL MODE
TCC0.CTRLD = TC_TC0_EVACT_PW_gc | TC_TC0_EVSEL_CH0_gc;//ENABLE TIMER EVENT FOR Pulse width
capture - CHANEL 0 EVENT
//ENABLE LO LEVEL INTERRUPT FOR CAPTURE CHANEL ATCC0





3-4:مدیریت مصرف: با توجه به اینکه تغذیه ربات از باتری تامین میشود بنابراین باید مصرف جریان را به حداقل برسانیم به این منظور از طریق رجیستر کنترلی Power Reduction کلاک قسمتهای سخت افزاری میکرو که استفاده نمیشوند را قطع میکنیم.

PR.PRGEN = PR_USB_bm | PR_AES_bm | PR_RTC_bm | PR_DMA_bm; PR.PRPA = PR_AC_bm | PR_ADC_bm | PR_DAC_bm; PR.PRPB = PR_AC_bm | PR_ADC_bm | PR_DAC_bm; PR.PRPC = PR_TWI_bm | PR_USART1_bm | PR_USART0_bm | PR_SPI_bm; PR.PRPD = PR_TWI_bm | PR_USART1_bm | PR_USART0_bm | PR_SPI_bm;





دانلود سورس برنامه



دانلود اپلیکیشن اندروید



برای ساخت یک قاب یا جعبه برای مداری که طراحی کردید یا هدیه ای که میخواهید برای کسی ببرید. میتوانید یک سر به سایت زیر بزنید شکل قاب مورد نظرتون را انتخاب کنید. ابعاد را وارد کنید و در عرض چند ثانیه فایل SVG را تحویل بگیرید. برای برش فایل را به یک برش لیزر ببرید

https://www.festi.info/boxes.py/



نرم افزار طراحی PCB با محیطی یوزر فرندی، دارای کتابخانه بسیار قوی، امکان ساخت قطعات جدید بسیار سریع و آسان، یک از قابلیت های کاربردی جدید که به نرم افزار اضافه شده امکان ذخیره یک شماتیک و pcb از قبل طراحی شده به عنوان یک بلاک دیزاین هست (مشابه کتابخانه قطعات) که به طراح این امکان را میده که مداراتی را که زیاد استفاده میکنه (مثلا مدار تغذیه) یک بار طراحی و ذخیره کنه و در پروژه های بعدی از طرح آماده استفاده کنه.


ویدئو:

https://www.aparat.com/v/2Adb1


منبع تغذیه بدون ترانس. 5 ولت.

معایب: عدم ایزوله بودن خروجی از برق شهر - جریان محدود - احتمال ظاهر شدن هارمونی های برق شهر به صورت تضعیف شده در خروجی تغذیه که در مدارات حساس نیاز به استفاده از EMI فیلتر میباشد.

محاسن: قیمت پایین - پیچیدگی کم

 


آموزش های ویدئویی نرم افزار طراحی PCB ایگل، زیر مجموعه اتودسک، یک نرم افزار یوزر فرندلی، سریع و پیشرفته جهت طراحی بردهای الکترونیکی که توسط نویسنده وبلاگ در جهت یادگیری علاقه مندان الکترونیک تهیه شده .
 
 
 
 
 
 
 

منبع تغذیه بدون ترانس. 5 ولت.

معایب: عدم ایزوله بودن خروجی از برق شهر - جریان محدود - احتمال ظاهر شدن هارمونی های برق شهر به صورت تضعیف شده در خروجی تغذیه که در مدارات حساس نیاز به استفاده از EMI فیلتر میباشد.

محاسن: قیمت پایین - پیچیدگی کم

 


اگر به دنبال برنامه نویسی برای ESP8266 هستید و  مثل بنده از IDE ساده و ضعیف آردینو رنج میبرید. میتوانید اکستنشن آردینو را برای ویژوال استودیو نصب کنید و در محیط قدرتمند  ویژوال استودیو برنامه نویسی ESP8266 و یا آردینو را انجام بدهید و از برنامه نویسی لذت ببرید.

فایل افزونه آردینو برای ویژوال استودیو:

دانلود


آخرین ارسال ها

آخرین وبلاگ ها

آخرین جستجو ها