KnowledgePlus.ir
5.48K subscribers
47 photos
11 videos
16 files
176 links
کانال مهندس اوژن کی نژاد
کلیه مطالب این کانال به جز مواردی که صریحا در متن آن ذکر شده باشد جنبه تالیفی دارد و از جایی کپی نشده است.
کانال اشتغال:
@KnowledgePlusir
@StepMotor
@MC3Delta
@FindChips
instagram.com/knowledgeplus.ir
aparat.com/KnowledgePlus
Download Telegram
یک وارد کننده قطعات ادعای عجیبی را مطرح می کند به این شرح که در دفتر خود دو اتاق به عنوان انبار دارند که از هر نظر مشابهند و تنها تفاوت دو اتاق این است که یکی کولر آبی دارد و دومی کولر گازی. ادعای ایشان این است که میکروکنترلرهای smd را که وارد می کنند اگر در اتاق با کولر گازی انبار کنند، بعد از فروش هیچ مشکلی گزارش نمی شود. اما اگر همان میکروکنترلرها مدتی در اتاق با کولر آبی انبار شوند، بعد از فروش تعدادی به علت خرابی مرجوع می شوند. به نظر شما آیا این ادعا می تواند صحت داشته باشد و ربطی بین قرار دادن قطعات در اتاقی با دو نوع کولر و خرابی بعدی آنها وجود داشته باشد؟ نظر خود را در نظرسنجی پست بعد اعلام کنید.

@KnowledgePlus
به نظر شما آیا ادعای مطرح شده در پست قبل  در مورد ربط دادن خرابی میکروکنترلرها با محل انبار کردن آنها و نوع کولر اتاق می تواند صحیح باشد؟
Final Results
24%
خیر به هیچ عنوان ربطی ندارد
76%
بله ممکن است صحیح باشد
KnowledgePlus.ir
به نظر شما آیا ادعای مطرح شده در پست قبل  در مورد ربط دادن خرابی میکروکنترلرها با محل انبار کردن آنها و نوع کولر اتاق می تواند صحیح باشد؟
آن درصدی که معتقد بوده اند نگهداری میکروکنترلرها در دو اتاق با سیستم سرمایشی کولر آبی و کولر گازی نمی تواند ربطی به ایجاد خرابی در آی سی ها داشته باشد، مطلب زیر را که ۴ سال پیش نوشته شد مطالعه کنند:

t.iss.one/KnowledgePlus/1186
در صورتی که شغل شما به نحوی به الکترونیک مرتبط است، در حال حاضر وضعیت کاری و درآمد شما مشمول کدام یک از توصیفات زیر است؟
Anonymous Poll
8%
عالی
39%
متوسط
32%
ضعیف
21%
بسیار بد
اخیرا شرکتی در مورد مشکل ایجاد شده در تولید یک برد درخواست کمک کردند. مشکل از این قرار بود که بردی داشتند که نمونه قدیمی اش خوب کار میکرد ولی بردهای تولید جدید درست عمل نمیکردند و نمی توانستند علت مشکل را پیدا کنند. این برد فاقد اجزای برنامه پذیری مثل میکروکنترلر بود ولی آی سی های مختلفی روی برد وجود داشت. با توجه به ساختار برد به نظر میرسید که مشکل به علت فیک بودن یکی از قطعات در بردهای جدید است. در مورد قطعات اعلام کردند اکثرشان کاملا اصلی و اوریجینال هستند و فقط چند قطعه معدود از منابع نامطمئن تهیه شده اند. برای تشخیص قطعه فیک مسئله این بود که به علت پیچیدگی عملکرد مدار، امکان تشخیص از طریق تحلیل مدار یا مشاهده شکل موج میسر نبود.
به عنوان یک راه حل برای تشخیص قطعه غیراصلی به ایشان پیشنهاد شد که از برد سالم به عنوان شاهد کمک بگیرند. به این ترتیب که قطعات مشکوک را یک به یک از برد سالم و بدون مشکل به یکی از بردهای جدید منتقل کنند و در هر مرحله عملکرد را تست کنند و به محض آن که قطعه ای جابجا شد و بعد از آن مشکل برطرف شد نشان دهنده فیک بودن قطعه تعویض شده است.

@KnowledgePlus
در کاربردهای صنعتی گاهی این نیاز ایجاد میشود که جریان متناوبی به صورت ایزوله توسط ADC میکروکنترلر اندازه گیری شود. برای این کار روش های مختلفی وجود دارد که در این پست به یکی از آنها اشاره می شود.
شرکت Allegro MicroSystems طیف وسیعی از آی سی های سنسور جریان را تولید میکند که از طریق آنها میتوان جریان هایی تا محدوده ده ها آمپر را به صورت ایزوله اندازه گیری کرد. در بازار ایران آی سی هایی مثل سری ACS712 یا ACS758 کاملا شناخته شده و موجود هستند.
به عنوان مثال آی سی ACS712ELCTR-30A-T می تواند جریانی در محدوده 30A- تا 30A+ را به صورت ایزوله و خطی به ولتاژی در محدوده 0.5V تا 4.5V تبدیل کند. این ولتاژ بعد از تغییر مقیاس و به اصطلاح scale شدن می تواند به صورت مستقیم به ورودی ADC میکروکنترلر اعمال شود.
به عنوان یک نکته جانبی، تبدیل ولتاژ 0.5V تا 4.5V به مثلا 0V تا 3.3V یا سایر محدوده ها برای اعمال به ADC، نیاز به اطلاعاتی از طراحی مدارات آنالوگ دارد.

@KnowledgePlus
چندین سال پیش یک محصول ابتکاری را تولید کردیم که نمونه ایرانی نداشت. بعضی افراد هم از آن ایده گرفتند و محصول مشابهی را تولید کردند که تا اینجای کار چندان اشکالی ندارد و بالاخره این پیشرفتی که در دنیا حاصل شده، نتیجه همین ایده گرفتن ها و رقابت ها است. اما بخش تاسف آور قضیه این بود که متونی را که به عنوان دستور کار یا تبلیغات برای آن محصول نوشته بودیم، واو به واو برای محصولشان کپی کردند و حتی این زحمت را به خود ندادند که در جمله بندی ها و کلمات تغییری بدهند تا حداقل یک ناظر خارجی متوجه نشود که کار اینها کپی کاری از ایده دیگران بوده است. از همین جا باید درود فرستاد به کسانی که رعایت اصول اخلاقی و انسانی را بر سود مادی و کسب درآمد مقدم می دانند.

@KnowledgePlus
نکته طراحی مدار:

در بعضی بردها و دستگاه ها لازم است تغذیه DC از بیرون به برد متصل شود. اگر اتصال از طریق کانکتوری باشد که جهت خاصی داشته و فقط به یک صورت جا برود، امکان اتصال برعکس تغذیه از بین می رود. در غیر این صورت باید در طراحی حفاظتی در نظر گرفته شود تا اگر کاربر تغذیه را برعکس متصل کرد، آسیبی ایجاد نشود. معمول ترین روش برای این حفاظت، سری کردن دیود در مسیر تغذیه است.
اما گاهی به دلیل معذوراتی در طراحی مدار مثل آنچه در این پست شرح داده شده امکان سری کردن دیود در مسیر تغذیه وجود ندارد:

t.iss.one/KnowledgePlus/1000

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

@KnowledgePlus
شخص محترمی تماس گرفتند و درخواست انجام پروژه ای با AVR را داشتند که به ایشان اعلام شد پروژه ای انجام نمی دهیم و باید به افرادی که کارشان انجام پروژه است مراجعه کنید. ایشان پاسخ قابل تاملی دادند مبنی بر این که افرادی هستند که انجام بدهند ولی درخواست چند میلیون تومان به عنوان دستمزد را دارند و مگر چه کاری جز برنامه نویسی انجام می دهند که چنین پولی را می خواهند بگیرند؟ در این رابطه این سوال پیش می آید که چرا انجام پروژه های الکترونیکی تا این حد از ارزش افتاده و خوار و خفیف شده که دستمزد چند میلیونی (کمتر از ۱۰ میلیون تومان) برای کاری که مستلزم گاهی سال ها زحمت و کسب تجربه است به نظر خیلی زیاد می آید؟ اما برای پرداخت دستمزد بعضی کارهای با سطح تخصص بسیار پایین تر و رقم های بسیار بالاتر، کسی اصلا احساس ناراحتی نمی کند؟ چرا نوبت الکترونیک و برنامه نویسی که می رسد اکثرا انتظار دستمزدهای پایین را دارند؟ پاسخ این است که مقصر اصلی خود متخصصان و فارغ التحصیلان این رشته هستند که در رقابت با یکدیگر، دائم قیمت کار سایر همکاران را شکسته اند و موجب از بین رفتن ارزش کارشان شده اند.

@KnowledgePlus
در دهه ۷۰ و ۸۰ اکثر دانش آموختگان رشته الکترونیک از دانشگاه های درجه یک دولتی، افراد نخبه و توانمندی بودند و همین که یک نفر فارغ التحصیل این دانشگاه ها بود این اطمینان را تا حد بالایی ایجاد می کرد که در انجام کارهایی که از او انتظار می رود به لحاظ ضریب هوشی و سطح دانش مورد نیاز، مشکل چندانی نداشته باشد. اما اخیرا نقل هایی از میزان اطلاعات و توانمندی بعضی فارغ التحصیلان دانشگاه ها شنیده می شود که واقعا باور کردنی نیست که چطور ممکن است یک فارغ التحصیل دانشگاه خوب دولتی تا این حد فاقد اطلاعات اولیه باشد.

@KnowledgePlus
Forwarded from KnowledgePlus.ir
درباره برنامه نویسی حرفه ای و شباهت عملکرد مغز به عضلات:

شاید برای کسانی که در مقاطعی درگیر برنامه نویسی و نوشتن کدهای پیچیده و پرحجم شده اند، این تعبیر ملموس باشد که عملکرد مغز تا حدی شبیه به عملکرد عضلات بدن است. همانطور که آمادگی عضلات با تمرینات جسمی افزایش می یابد و سکون و بی حرکتی موجب ضعیف شدن آنها می شود، به طریق مشابه مغز نیز مانند یک عضله نیاز به تمرین دارد و این قابلیت که کسی بتواند مثلا 12 ساعت بصورت مداوم در یک روز کدهای پیچیده را بنویسد و تحلیل کند، نیاز به تمرین و ممارست زیاد برای تقویت قابلیت کار کشیدن از مغز در مدت طولانی دارد و تنها وابسته به خواست فرد یا حتی سواد و دانش او به تنهایی نیست. یک ورزشکار حرفه ای به دلیل آمادگی که به واسطه تمرین پیدا کرده قادر است ساعت ها در یک روز ورزش و فعالیت کند و خسته نشود. اما یک شخص کم تحرک در فعالیت های مشابه زود خسته می شود و عضلاتش قدرت و استقامت عضلات یک فرد ورزشکار را ندارند. به همین ترتیب کسی که در کدنویسی تمرین نداشته باشد، در هنگام کار بعد از مدت کوتاهی خسته می شود و نمی تواند متمرکز باقی بماند. عبارت معروف "حوصله ندارم" در بسیاری از موارد حاصل همین تنبل شدن ذهن و عادت نداشتن به تمرکز و انجام پردازش های ذهنی پیچیده است.

@KnowledgePlus
معرفی قطعه:

سری 23LC1024 یک آی سی ۸ پین SRAM با ظرفیت 128KByte است که ارتباط با آن از طریق پروتکل های SPI/SDI/SQI و فقط با چند پین محدود قابل انجام است و در پروژه هایی می تواند مورد استفاده قرار بگیرد که حافظه SRAM داخلی میکروکنترلر جوابگوی نیاز مورد نظر نباشد.

@KnowledgePlus
اطلاع رسانی:

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

@KnowledgePlus
کاربردهایی در الکترونیک وجود دارند که پیاده سازی آنها با میکروکنترلر نه به قابلیت پردازشی بالایی احتیاج دارد و نه سخت افزارهای جانبی چندان ویژه ای مورد نیاز است و حجم بخش اجرایی کد نوشته شده هم در حدی است که فلش میکروکنترلرهای ضعیف و ارزان هم برای ذخیره سازی جوابگو هستند. اما به علت وجود اطلاعات و دیتای از پیش محاسبه شده و Lookup Table های حجیم در آن کاربرد، سایزحافظه فلش مورد نیاز بسیار بزرگ است. بعضی طراحان در این شرایط فقط به واسطه دسترسی به حافظه فلش با ظرفیت بالا، از انواع گران قیمت خانواده stm32 استفاده می کنند. اما بجای این کار می توان از آی سی های فلش ارزان قیمت سریال مثل سری W25Qxx استفاده کرد که قابلیت اتصال به میکروکنترلر با ۴ پین از طریق ارتباط SPI را دارند و با قیمتی بسیار مناسب، ظرفیتی در حد مگا بایت را برای ذخیره سازی اطلاعات فراهم می کنند. در کارهای تولیدی و تعداد بالا که قیمت قطعات مهم است، چنین روشی می تواند صرفه جویی قابل توجهی در قیمت تمام شده ایجاد کند.

@KnowledgePlus
فرض کنید قرار باشد برای پروژه ای جدید با منطق عملکرد پیچیده، چندین هزار خط برنامه بنویسید. شما به کدام شیوه عمل می کنید؟
Final Results
74%
قبل از شروع برنامه نویسی، از فلوچارت یا شبه کد استفاده می کنم
26%
بدون استفاده از فلوچارت یا شبه کد نوشتن برنامه را شروع می کنم
KnowledgePlus.ir
فرض کنید قرار باشد برای پروژه ای جدید با منطق عملکرد پیچیده، چندین هزار خط برنامه بنویسید. شما به کدام شیوه عمل می کنید؟
نوشتن برنامه های بزرگ بدون استفاده از فلوچارت یا شبه کد علاوه بر طولانی شدن فرایند کد نویسی، احتمال ایجاد خطا در خروجی برنامه را هم بالا می برد و عموما روش درستی نیست.
در همین رابطه یک گام فراتر این است که در هنگام نوشتن برنامه، فهرست کلیه متغیرهای تعریف شده را پیش روی خود داشته باشیم و همیشه حواسمان باشد که هر متغیر یا فلگ در هر مرحله چه وضعیتی دارد؟ یکی از عوامل ایجاد باگ و عملکرد ناصحیح در خروجی برنامه ها این است که متغیرهایی برای رفع نیاز تعریف می شوند، اما بعدا تعیین تکلیف این متغیرها توسط برنامه نویس فراموش می شود و بعد از کلی وقت گذاشتن برای رفع اشکال تازه متوجه می شود که فلان متغیر یا فلگی که جایی تعریف کرده و بعدا به حال خود رها شده، موجب چنین مشکلی شده است. یک روش برای جلوگیری از چنین خطاهایی این است که کلیه متغیرهای تعریف شده را جایی کنار هم یادداشت کنیم و در هر مرحله از برنامه نویسی این سوال را مد نظر داشته باشیم که الان هر متغیر در این مرحله چه وضعیتی دارد و آیا مقدارش تاثیری در این بخش از کد دارد یا نه.

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

@KnowledgePlus