مهندسی طور

روزنوشت های یه مهندس تازه کار

مهندسی طور

روزنوشت های یه مهندس تازه کار

مهندسی طور

تا حالا به این فکر کردین که تو یه سیستم کامپیوتری GPU چقدر کارآمد و مهمه ولی به اندازه CPU شناخته شده نیست.یه جورایی همون "مجهولون فی الارض معروفون فی السماء" که میگن!
یه حسی بهم میگه کاش بتونم مثه GPU باشم :)

۶ مطلب در فروردين ۱۴۰۰ ثبت شده است

ساخت گیرنده 2.4 گیگاهرتزی!

سه شنبه, ۱۰ فروردين ۱۴۰۰، ۰۳:۱۵ ب.ظ

سلام!

 

تو پست های قبلیم راجع به ساخت یه فرستنده صحبت کردم و دردسرهایی که برای ساختش داشتم ولی خب فرستنده بدون گیرنده که به درد نمیخوره! به همین خاطر تصمیم گرفتم گیرنده رو هم خودم بسارم و الان که این سطرها رو مینویسم کار ساختش که از دیروز شروع کرده بودم تموم شده و تست هاش رو هم پاس کرده و خداروشکر مشکلی نبود.اول از همه اینکه این برد گیرنده رو چون تجربم یه ذره تو ساخت بیشتر شده بود تونستم با کیفیت بهتری دربیارم که تصویر مراحل مختلف ساختش رو اینجا میبینید.

این تصویر زمانیه که برد رو از اسید درآوردم و با سیم ظرفشویی تمیزش کردم.

اینم مربوط میشه به بعد انجام سوراخ کاری که با مینی دریل (دفعه پیش که اومدم خونه این مینی دریل رو با درایور کامپیوتر ساختم) انجام شد و البته زمانبر بود نسبتا چون مته تیزی نداشتم که سریع سوراخ رو ایجاد کنه.

خب اینم روی برده تو همون مرحله سوراخکاری!

اون ماژول ژیروسکوپ رو هم گذاشتم تا بتونم این گیرنده رو روی ربات پرنده ام نصب کنم و باهاش پرواز کنم.گیرنده های رادیویی که تو بازار هست برای رباتای پرنده برد محدودی دارند ولی این گیرنده با کمک آنتنی که داره طبق ادعای شرکت سازنده تو فضای آزاد میتونه تا 1 کیلومتر برد داشته باشه و این خیلی خوبه :)

و اینم نتیجه نهایی که بدون مشکل کار میکرد!

 

ایشالا تصمیم دارم تا پایان عید برنامه فلایت کنترلر رو تکمیل کنم و روی ربات تست کنم.فقط تنها قسمتی که از همین الان نگرانش هستم تنظیم ضرایب کنترلیه که اونایی که کار کردن میدونن تو کوادکوپترها سخت ترین قسمته تقریبا!

 

خب اینم از این :)

  • Saeid

بالاخره تموم شد :)

يكشنبه, ۸ فروردين ۱۴۰۰، ۱۱:۰۵ ب.ظ

سلام!

این چند روز درگیر ساختن یه برد کنترلر با ماژول مخابراتی nrf24l01 بودم که PCB ش رو خودم تو خونه بزنم.اول برد رو خیلی باحال طراحی کرده بودم و پلی گان گذاشته بودم و اینا ولی بعد اینکه بردشو زدم(خود اینم کلی داستان داشت.کلی تو شهر گشتم تا یه جا پیدا کردم که کاغذ گلاسه خوب داشت و بعدش هم بردم یه جا که چاپ تبلیغاتی انجام میداد برام پرینت گرفتن!) در کمال تعجب دیدم که ترک ها با پلی گان تماس دارن و خیلی داغون شده :/ فکر کردم بردشو کلا بندازم دور و یکی دیگه درست کنم ولی حیفم اومد راستش :) همین شد که اون قسمت اتصالات الکتریکی برد رو فقط رو یه فیبر مسی دیگه اینبار بدون پلی گان و یه سری تغییرات پیاده کردم و روی برد قبلی رو چسب نواری زدم (که اتصالاتش با این برد جدیده مشکل درست نکنن) و این برد جدیده رو با چسب رو اون قسمتش چسبوندم.قبول دارم خیلی کار مزخرفیه برا یه برد مدار چاپی ولی خب پروتوتایپه دیگه D:

خلاصه بعد اینکه با هزار امید و آرزو پروگرامش کردم دیدم کار نمیکنه :/ بوق چک که کردم دیدم یکی از پایه های SPI ماژول به آردوینو خوب اتصال پیدا نکرده و سر همین مجبور شدم یه سیم خیلی کوتاه از پایه یه مقاومت بیچاره جدا کنم و این دو تا پین رو به هم لحیم کنم(احتمالا تو عکس یه خورده معلومه!) وخب شکر خدا بعدش کامل درست کار کرد و خستگی از تنم بیرون رفت.

 

ته داستان این شد نتیجش :)

 

 

پ.ن. امشب شب نیمه شعبانه و ولادت آقاجانمون.ایشالا زودتر بیان...

  • Saeid

ساخت مدارچاپی تو خونه!

پنجشنبه, ۵ فروردين ۱۴۰۰، ۰۷:۰۹ ب.ظ

سلام!

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

- برای طراحی برد خروجی PDF رو کهمیبرید برای چاپ بعضا میان روی صفحه A4 فیت میکنن که خب باعث میشه ابعاد بردتون همون ابعاد اصلی نباشه بنابراین برای جلوگیری از این موضوع میتونید از کسی که پرینت میکنه بخواید گزینه actual size رو انتخاب کنه که این مشکل پیش نیاد.از طرفی راهکاری که من خودم استفاده کردم این بود که از PCB بردم اسکرین شات گرفتم(البته بعد اینکه خروجی PDF گرفتم از رو اون PDF عه اسکرین شات گرفتم) و بعدش تو یه فایل ورد insert کردمش.نکته ای که هست اینه که ورد اجازه میده ابعاد عکس رو تغییر بدیم و منم همین کار رو کردم و ابعاد واقعی بردم رو وارد کردم.البته این راهکار باعث میشه وضوح مقداری کاهش پیدا کنه که همین مطلب تو فرایند ساخت PCB ممکنه دچار اشکال کنه کار رو.

- تو بردهای دست ساز خونگی به هیچ وجه از Polygun استفاده نکنید و یا هم اگه مجبور به استفاده هستید حتما spacing مناسبی رو در نظر بگیرید چون مشکلی که من خودم با بردم دارم همینه که این فاصله رو رعایت نکردم و یه جاهایی از برد متاسفانه ترک ها به پلی گان اتصال پیدا کردند و خب هیچی دیگه :/

- ضخامت ترک ها رو به نحو مناسب انتخاب کنید.ترک هایی که ضخامت خیلی کم داشته باشند و یا فاصله شون باهم کم باشه احتمال اتصالشون وجود داره.

- ترجیحا ترک ها رو از بین پدها و یا hole ها عبور ندید.تو بردی که من زدم همین داستان سبب اتصال کوتاه شده :(

 

خب برم ببینم با این بردی که ساختم چی کار میتونم کنم!
 

  • Saeid

پروگرام میکرو خارجی با STlink روی بردها

سه شنبه, ۳ فروردين ۱۴۰۰، ۱۲:۴۰ ق.ظ

سلام!

در ادامه اکتشافات امروزم :) تصمیم گرفتم برنامه نویسی میکرو رو با STlink روی برد دیسکاوری که دارم هم انجام بدم ببینم چی میشه.اینبار هم شکر خدا مشکل زیادی وجود نداشت و انجام شد.یه بار با نرم افزار Stlink utility که خب نرم افزار جانبی برای پروگرام میکروهای ST هستش انجام دادم ولی خب سرعت بالایی نداشت به همین خاطر رفتم سراغ پروگرام از طریق خود Keil که اونم اوکی شد و تونستم پروگرام رو انجام بدم.نکته ای که به نظرم مهم بود اینه که تو این روش فقط دو سیم SWDIO و SWCLK به همراه تغذیه و زمین کافیه برای پروگرام میکرو و نیازی به پایه ریست هم نیست حتی!

 

  • Saeid

پروگرام کردن میکروی stm32 با رابط سریال

دوشنبه, ۲ فروردين ۱۴۰۰، ۱۰:۵۸ ب.ظ

سلام!

برای ریختن برنامه روی میکروهای ST با کمک رابط سریال(UART) تنها چیزی که لازمه یه مبدل usb to serial هستش که لازمه چهارتا پینش رو (تغذیه و زمین و Tx و Rx) رو به پین های معادل در میکرو متصل کنیم و بعد هم با کمک نرم افزار Flash loader شرکت ST برنامه مطلوبمون رو که فایل hex ش رو ساختیم روی میکرو پروگرام کنیم.این نرم افزاره کارای دیگه ای هم میکنه که اینجا موضوع بحث نیست.یه سری نکته رو هم باید رعایت کرد که میگم اینجا :

اول اینکه دقت کنید تغذیه خروجی مبدل روی 3.3 ولت تنظیم شده باشه(بعضی از این مبدلا یه جامپر دارن که با تغییر اون میتونید تغذیه رو بین 5 ولت و 3.3 ولت عوض کنید)

مساله بعدی اینه که تو این روش فقط پورت سریال به خصوصی از میکرو رو باید به مبدل وصل کنیم و بقیه پورت ها نمیتونن کار برنامه ریزی میکرو رو برامون انجام بدن (اینو خودم تست کردم نتونستم با پورت های دیگه پروگرام کنم و تو میکرو stm32f103c8 پورت مدنظر شماره یک هستش.)

از قرار معلوم برای اینکه این نرم افزاره میکرو رو بشناسه و روش برنامه بریزه لازمه که میکرو از System memory بوت بشه و برای همینم باید پین های بوت رو در میکرو ولتاژهای خاص بدیم(تو موردی که من کار میکردم پین Boot0 رو به 3.3ولت و پین Boot1 رو به زمین متصل میکنیم تا میکرو از حافظه سیستم - و نه حافظه فلش داخلی - بوت بشه.)

یه وقتایی این میکروهه بازی در میاره و همه چی هم درسته ولی به نرم افزاره جواب نمیده که تو این حالت راهکاری که برا من کار کرد قطع و وصل تغذیه میکرو بود.

بعد اینکه پروگرام رو انجام دادین کافیه پین های بوت رو به حالت قبلی برگردونین(تا میکرو از حافظه فلش بوت شه) و بعدش هم ریست کنید میکرو رو.الان برنامه شما باید به درستی اجرا بشه.

راستی تا یادم نرفته بگم حتی زمانی که از این روش برای پروگرام میکرو استفاده میکنید هم میتونید از پورت سریال شماره یک(در واقع همون پورتی که برای برنامه نویسی استفاده میکنین) تو برنامه تون استفاده کنید.

  • Saeid

حل مشکل نرفتن Blue Pill به حالت Boot

دوشنبه, ۲ فروردين ۱۴۰۰، ۰۸:۲۰ ب.ظ

سلام!

امروز بعد مدتها اومدم به Blue Pill یه سر بزنم ببینم میتونم راش بندازم یا نه.اولش کلی داستان درست کرد ولی بالاخره راه افتاد.دوستانی که طراحی این برد رو انجام دادن اومدن یه مقاومت گردن کلفت (100 کیلو) گذاشتن سری با پین Boot0 این برده و تو هم اگه بخوای از طریق بوت برنامه رو روش دانلود کنی داستان درست میشه.چرا؟چون این مقاومته تمام ولتاژ رو دو سر خودش میندازه و نتیجتا چیزی به پایه بوت نمیرسه و در نهایت هم میکرو بوت نمیشه و خب تو هرچی زور میزنی نرم افزار نمیتونه برنامه رو روی حافظه فلش میکرو بریزه.حل مساله راهکار جالبی داشت.کافی بود این مقاومته (R3 برای اونایی که مشکل مشابه دارن) رو شورت کنی بعدش مشکل کامل حل میشه.البته برای احتیاط میتونی یه مقاومت 100 اهمی مثلا سری کنی که جریان زیادی نکشه میکرو ولی من بدون اونم تست کردم مشکلی نداشت.خلاصه که این دوستمون امروز کلی وقت گرفت تا راه افتاد ولی چیزای خوبی بهم یاد داد :)

  • Saeid