کاربرد پایتون در مهندسی برق + بهترین منابع یادگیری پایتون
در آموزشهای قبلی مجله فرادرس با زبان برنامهنویسی پایتون آشنا شدیم و دیدیم که این زبان، یکی از زبانهای برنامهنویسی محبوب و کارآمد برای انجام محاسبات و پروژههای مختلف است. در این آموزش با کاربرد پایتون در مهندسی برق آشنا میشویم و مهمترین منابع یادگیری پایتون را معرفی خواهیم کرد.
کاربرد پایتون در مهندسی برق
طراحی و ویژگیهای زبان برنامهنویسی پایتون، آن را برای حل بسیاری از مسائل، از جمله مواردی که در کار روزمره بخش تحقیق و توسعه با آن مواجه میشوند، به زبانی کارآمد و مفید تبدیل کرده است. برای مثال، عیبیابی سیستمهای یکپارچه یکی از کاربردهای رایج است که پایتون در آن واقعاً میدرخشد. برای درک دلایل کاربرد پایتون در مهندسی برق، ابتدا ویژگیهای زبان برنامهنویسی پایتون را که امکان نوشتن کد و آزمایش سریع آن را فراهم میکنند، بیان میکنیم:
- پایتون یک زبان تفسیری است، نه یک زبان کامپایل شده. لایه اضافه انتزاعی که توسط مفسر پایتون ارائه شده، برنامهنویسان را از کار با جزئیات مدیریت حافظه سطح پایین سیستم عامل و معماری CPU بینیاز میکند. با توجه به این موضوع، برنامهنویسان میتوانند روی موارد مهمتر، مانند الگوریتم خود تمرکز کنند.
- مفسر تعاملی پایتون (Python Prompt) به دلیل بازخورد فوری، امکان نوشتن و آزمایش سریع کلاسها (اشیاء نرمافزاری که دادهها یا چیزی با آنها را ذخیره میکند) را ممکن میکند. این امر برای توابع نمونه اولیه ایدهآل است.
- امروزه، کتابخانه استاندارد پایتون شامل کلاسهایی برای بسیاری از کارهای رایج در حوزه برنامهنویسی است. این امر سبب شده انجام کارهای دشوار قابل مدیریت باشد.
- تعداد زیاد ماژولها حل مسائل دشوار را با کدهای مختصر و ساده ممکن میکند.
این مزیتها توسعه سریع و نوشتن برنامههای خاص را در شرایطی که مراحل کلی برنامه مشخص است، اما فقط باید به دستورالعمل رایانه تبدیل شود، تسهیل میکند. در مهندسی سختافزار، این برنامهها اغلب مورد نیاز است، زیرا مسائل غیرمنتظره غالباً در سیستمهای یکپارچه پیچیده رخ میدهد که نیاز به حل سریع نیز دارند؛ به ویژه هنگامی که این مشکل غیرمنتظره در سمت مشتری باشد.
طبقهبندی «سیستمهای یکپارچه پیچیده» چیزی بسیار بیشتر از ماشینآلات بزرگ را شامل میشود. بسیاری از محصولات سختافزاری (از چاپگرهای اداری گرفته تا سیستمهای کنترل موتور خودرو) بخشهای متنوعی دارند: قطعات و تراشههای الکترونیکی، سیستم عامل، ارتباطات (مانند کابلکشی یا ارتباطات بیسیم) و در نهایت برنامه GUI قابل مشاهده توسط کاربر. این بخش آخر را افراد مختلف، مانند برنامهنویسان میتوانند به زبانهای مختلف بنویسند.
فرض کنید بین چاپگر دیجیتال و کامپیوتر متصل به آن، تأخیر بیش از حد انتظار (یعنی تأخیر بین ارسال فرمان و دریافت نتیجه) وجود داشته باشد. آیا سیستم عامل روی برد اصلی به اندازه کافی سریع به دستورات رایانه پاسخ نمیدهد؟ آیا کاهش سرعت در جایی در پشته نرمافزار روی رایانه است؟ طبیعتاً پایتون به نوشتن و اصلاح برنامههایی که بتواند سطوح بالاتری از یک مجموعه نرمافزاری را دور زده و مستقیماً با سختافزار ارتباط برقرار کند، کار را راحتتر خواهد کرد. ارزش این موضوع زمانی مشخصتر خواهد بود که نیاز داشته باشید نرمافزار یا سختافزار را تست کنید. اگر سختافزار به همان سرعتی که برنامه آزمایشی شما میتواند پاسخ دهد، مشکل نرمافزاری است و نه سختافزاری.
برای بسیاری از سناریوهای عیبیابی مانند مورد بالا، این واقعیت که پایتون یک زبان تفسیری است مهم نیست، حتی اگر زبانهای تفسیری به طور کلی کندتر از زبانهای کامپایلشده عمل کنند. این امر به ویژه در صورتی صادق است که کد پایتون روی رایانه شخصی و با یک پروتکل مانند سریال از طریق بلوتوث، سریال از طریق USB ،RS-485 یا RS-232 (با استفاده از ابزار بسیار مفید ماژول PySerial شخص ثالث) اجرا شود. این امر میتواند یک اتفاق بسیار رایج باشد، زیرا این نوع لولههای داده اغلب برای رابطهای اشکالزدایی سیستم عامل یا به عنوان رابط ارتباطی اصلی برای دستگاههای قدیمی استفاده میشوند. به عنوان مثال، RS-485 هنوز به طور گسترده برای تجهیزات صنعتی مورد استفاده قرار میگیرد.
تقریباً در همه موارد، نرخ باد (Baud Rate) رابط سریال، و نه سرعت تفسیر و اجرای متن مفسر پایتون، عاملی محدودکننده خواهد بود. این امر اغلب در مورد دستگاههایی که از طریق شبکه ارتباط برقرار میکنند صادق است.
مانند یک مولتیمتر دیجیتال، پایتون به راحتی قابل استفاده است و سریع میتوان از آن بهره گرفت. برنامههای پایتون مانند یک اسیلوسکوپ با حالتها و گزینههای متعدد میتوانند ابزارهای تشخیصی همهکاره و سازگار باشند. این قدرت و کاربرد پایتون در مهندسی برق است.
یادگیری و درک پایتون آسان است، برنامهنویسی با آن انعطافپذیر است و به طور گسترده مورد استفاده قرار میگیرد و در سیستم عاملهای متعدد با تعداد زیادی کتابخانه برای همه چیز از پردازش سیگنال گرفته تا بینایی ماشین پشتیبانی میشود.
برای آشنایی عملی با کاربرد پایتون در مهندسی برق یک مثال را بیان میکنیم. فرض کنید از یک مشتری خواسته شده که منحنی تخلیه (دشارژ) یک باتری را مشخص کند تا به عمر باتری یک محصول کمک کند. هر ماده شیمیایی باتری منحنی منحصربهفردی دارد که در آن اگر جریان ثابتی از آن بکشید، باتری ولتاژ آن منحنی را از دست میدهد. حتی برای یک نوع باتری اما از تولیدکنندگان مختلف، منحنیهای متفاوتی خواهید داشت.
در حال حاضر ابزارهایی وجود دارد که میتوانید آنها خریداری کنید که این کار را برای شما در 10 ساعت یا بیشتر انجام میدهد، اما فرض کنید ابزارهای تخصصی نداریم. آنچه داریم یک بار ثابت، یک ولتمتر بسیار دقیق با رابط USB و البته پایتون است. نوشتن سناریو به معنای واقعی کلمه چند دقیقه طول میکشد. خواندن ولتمتر، ذخیره مقدار آن در یک آرایه، یک دقیقه صبر، یک خوانش دیگر و... تا زمانی که ولتاژ به نقطه خاصی برسد که در آن زمان اسکریپت بار فعلی را خاموش میکند و سپس تمام دادههای جمعآوریشده در یک صفحه گسترده اکسل نوشته میشود. همه این کارها به صورت اتوماتیک، همه بدون نظارت و همه در حالی که کارهای دیگری را انجام میدهیم قابل انجام است.
چیزهای بیشتری وجود دارد که کاربرد پایتون در مهندسی برق را ناشن میدهد و یکی از جدیدترین پیشرفتها، MicroPython است. این پیادهسازی ساده و کارآمد پایتون برای اجرای سختافزارهای محدود مانند میکروکنترلرها طراحی شده است. اکنون ساعتها صرفهجویی در سختافزار جدید به ارمغان میآید. نوشتن اسکریپتها برای آزمایش وسایل جانبی/حسگرها و غیره متصل به میکروکنترلر به ما اطمینان میدهد و مسائلی را مشخص میکند که باید در هنگام نوشتن سیستم عامل واقعی با بازسازی یا طراحی مجدد برطرف شوند.
پایتون هنگامی که با NumPy و Matplotlib و SciPy و Pandas ترکیب میشود یک پلتفرم محاسباتی علمی بسیار قدرتمند است که از نظر قابلیت با MATLAB و Scilab و GNU Octave قابل مقایسه است (با این تفاوت که هنوز ابزار شبیهسازی گرافیکی قابل مقایسه با Simulink متلب یا Xcos سایلب را ندارد). با اینکه متلب در کاربردهای مهندسی برق و الکترونیک محبوب است، میتوان پایتون را جایگزین آن کرد.
پایتون به عنوان یک زبان برنامهنویسی عمومی با پشتیبانی از محاسبات عددی، مجموعه عظیمی از کتابخانهها برای برنامههای دیگر مانند چارچوبهای GUI، دسترسی به پایگاه داده، کتابخانههایی برای رابط سختافزاری و... را دارد. دستیابی به این امر در MATLAB/Scilab/GNU Octave دشوار است، زیرا آنها یک پلتفرم محاسباتی عددی تخصصی با پشتیبانی محدود برای برنامههای عمومی هستند.
اگر بخواهیم از یک زبان برنامهنویسی مناسب مبتدیان نام ببریم، آن پایتون است. پایتون دارای نحو بسیار سادهای است که شبیه زبان انگلیسی است. این زبان منحنی یادگیری کوتاهی دارد و بنابراین، یک انتخاب عالی برای مبتدیان است. منحنی یادگیری و سادگی پایتون دو دلیل اصلی این است که چرا یکی از پرکاربردترین زبانهای برنامهنویسی در برنامه های آموزشی، چه در سطوح مبتدی و چه در سطوح پیشرفته است.
با این حال، پایتون فقط به عنوان یک زبان مقدماتی عالی نیست؛ حتی توسعهدهندگان و برنامهنویسان حرفهای در سراسر جهان به شدت به پایتون اعتماد دارند.
معرفی مجموعه فیلمهای آموزش برنامه نویسی پایتون (Python)
یکی از بهترین منابع یادگیری متلب، مجموعه فیلمهای آموزش برنامه نویسی پایتون (Python) فرادرس است که تاکنون شامل ۳۳ عنوان آموزشی و بیش از ۲۰۷ ساعت آموزش است. با استفاده از این مجموعه فیلمهای آموزشی میتوانید زبان برنامهنویسی پایتون را از سطح مقدماتی تا پیشرفته به خوبی فراگیرید. یکی از ویژگیهای مهم و بارز این مجموعه آموزشی استفاده از مثالهای متنوع و فراوان است که یادگیری برنامهنویسی پایتون را آسانتر و عمیقتر میکند.
- برای مشاهده مجموعه فیلمهای آموزش برنامه نویسی پایتون (Python) + اینجا کلیک کنید.
معرفی فیلم آموزش برنامه نویسی پایتون (Python) - مقدماتی
یکی از پرمخاطبترین آموزشهای فرادرس برای آغاز یادگیری زبان برنامهنویسی پایتون، فیلم آموزش برنامه نویسی پایتون (Python) - مقدماتی است که در ۱۹ ساعت و ۵۳ دقیقه و در قالب ۵ درس تهیه شده است. موضوع درس یکم این آموزش، آشنایی با Python (پایتون) است. در درس دوم به ساختمان داده در پایتون پرداخته شده است. توابع و ماژولها در درس سوم معرفی شدهاند و کلاسها در درس چهارم مورد بحث قرار گرفتهاند. در نهایت، درس پنجم، به خواندن و نوشتن فایلها اختصاص یافته است.
- برای مشاهده فیلم آموزش برنامه نویسی پایتون (Python) - مقدماتی + اینجا کلیک کنید.
معرفی فیلم آموزش زبان برنامه نویسی پایتون (Python) همراه با مثال های عملی
یکی دیگر از بهترین منابع یادگیری پایهای زبان برنامهنویسی پایتون، فیلم آموزش زبان برنامه نویسی پایتون (Python) همراه با مثال های عملی فرادرس است که در ۱۳ ساعت و ۲۰ دقیقه و در قالب ۱۷ درس تدوین شده است.
در درس یکم این آموزش به انواع دادهها پرداخته شده است. موضوع درس دوم عملگرها است. در درس سوم به دستورات شرطی پرداخته میشود. درس چهارم این آموزش به حلقهها اختصاص یافته است. در درس پنجم رشته (String) معرفی شده است. موضوع درس ششم، لیست است. در درس هفتم به تاپل (Tuple) پرداخته شده است. موضوع درس هشتم دیکشنری است. در درس نهم به مجموعه پرداخته شده است. در درسهای دهم و یازدهم تابع (Function) معرفی شده است. تابع بازگشتی موضوع درس دوازدهم است و در درس سیزدهم عبارت لامبدا (Lambda) معرفی شده است.
در درس چهاردهم به مدیریت استثناها پرداخته شده است. درس پانزدهم فایل را مورد بررسی قرار داده و در درس شانزدهم به عبارتهای منظم پرداخته شده است. در نهایت، در درس هفدهم الگوریتمهای مرتبسازی بیان شدهاند.
- برای مشاهده فیلم آموزش زبان برنامه نویسی پایتون (Python) همراه با مثال های عملی + اینجا کلیک کنید.