سه شنبه ۱۳۹۶/۰۷/۱۱ ساعت 4:33 PM توسط pourya | 

 

آنالیز و کنترل سیستمهای حاوی عناصر غیر خطی  کنترل غیر خطی
تحلیل و محاسبه رفتارهای یک سیستم کنترل حلقه بسته طراحی شده  آنالیز
طراحی کنترل کننده برای یک دستگاه دارای عناصر غیر خطی جهت ارضاء  طراحی
مشخصات مورد درخواست


نکته: در عمل مراحل طراحی و کنترل درهم تنیده شده اند. و انجام طراحی معمولا همراه با تحلیل و آنالیز سیستم تحت کنترل است

دوشنبه ۱۳۹۶/۰۷/۱۰ ساعت 7:58 PM توسط pourya | 
 

کنترلر بر مبنای مدل می بایست دینامیک کل سیستم به خوبی مشخص باشد

کنترلر مستقل از مدل احتیاجی به دانستن دینامیک سیستم تحت بررسی نیست.

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

1-  در ابتدا می‌بایست یک کنترلر PID بر مبنای روش های ابتدائی به مانند زیگلر نیکلز طراحی کنیم.

 2- یک کنترلر فازی برابر با PID طراحی شده ایجاد کنیم.

 3- حال تنظیم بیشتر کنترلر فازی را بر اساس آنچه رویت میشود انجام می‌دهیم.

یک کنترلر فازی PID

می بایست یک فازی کنترلر با سه ورودی خطا و تغییرات خطا و انتگرال خطا طراحی کنیم که در این صورت تعداد قواعد فازی به شدت زیاد می شود که برای رفع این مشکل آن را به دو بخش PD وI تقسیم می‌کنند
 
کنترلر فازی می تواند دقیقاً به صورت کپی از کنترلرPID طراحی شود. به عبارت دیگر کنترلر فازی یک کنترلر PID است که ضرایبش در نقاط کار متفاوت  تغییر می‌کند و این تغییر به گونه ای است که خروجی آن در مواردی که سیستم غیر خطی نیز می باشد به صورت نرم تغییر می کند.
دوشنبه ۱۳۹۶/۰۷/۱۰ ساعت 7:39 PM توسط pourya | 
استفاده از منطق فازی و سیستم های فازی برای کنترل سیستم های مختلف، باعث ایجاد و گسترش راه کار هائی جدید در جهت بهینه تر کردن فرآیند های کنترلی شده است. این گفته می تواند با در نظر گرفتن عملکرد سیستم های فازی و همچنین توانائی آن ها در ایجاد سیستم های غیر خطی به خوبی اثبات شود.
 
این سیستم ها همچنین دارای معایبی نیز می باشند، بدین صورت که این سیستم های کنترلی دارای محدودیت هایی از جهت آنالیز می‌باشند که از پیچیدگی بیان ریاضی غیر خطی آن ها  نشئت می‌گیرد.
 
کنترلر های فازی می‌توانند به طرق مختلفی ساخته شوند که تفاوت اصلی همه‌ی آن ها در وابستگی به مدل سیستم و عدم وابستگی به آن می‌باشد. بر همین مبنا کنترلر های فازی بر دو نوعند،
 
 نوع اول برمبنای مدل و نوع دوم مستقل از مدل.
 
دوشنبه ۱۳۹۶/۰۷/۱۰ ساعت 6:44 PM توسط pourya | 

This is accompanied by enclosing a linear potentiometer in a special cover tube on the actuator. The potentiometer is an infinitely variable membrane type device. An excitation voltage is applied to it and read by a voltage sensing circuit such as a voltmeter. A wiper is attached to the ball nut and translates along the length of the potentiometer. As the wiper moves, the voltage received by a voltmeter varies accordingly.

The potentiometer has three leads. An excitation DC voltage is applied to the red lead. The black lead is the ground at 0 VDC. The white lead gives an output DC voltage signal that varies linearly with the position of the actuator.

It is usually simplest to select an excitation DC voltage that is an even multiple or divider of the actuator’s stroke. For example, if the actuator in the application has a 6 inch stroke, select an excitation voltage of say 6 or 12 volts. This allows easy scaling of the voltage. The actuator motor and the potentiometer power should be completely independent from each other to avoid noise problems.

The power rating for the potentiometer is 1 watt maximum. Mechanically, the device is capable of 1 million cycles and will operate over a temperature range of -45°C to 75°C.

The linear potentiometer is provided only as a method of measuring the actuator’s position. It is left to the user to provide a method of reading the signal, interpreting the signal and devising a control scheme for the particular application. 

http://www.actuator.com/products/product/feedback-linear-actuator-85151-potentiometer/

 

دوشنبه ۱۳۹۶/۰۷/۱۰ ساعت 6:5 PM توسط pourya | 
دوشنبه ۱۳۹۶/۰۷/۱۰ ساعت 5:57 PM توسط pourya | 
 

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

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

لینک دانلود در ادامه مطلب

 

دوشنبه ۱۳۹۶/۰۷/۱۰ ساعت 4:39 PM توسط pourya | 

Introduction to Games

Elements of the Game

To characterize a game one needs to specify several items:

• The players are the agents that make decisions

• The actions available to each player at each decision point

• The information structure specifies what each player knows before

making each decision

• The objective specifies the payoffs of each player.

Example: Rope Pulling

 

دوشنبه ۱۳۹۶/۰۷/۱۰ ساعت 4:27 PM توسط pourya | 
 

کاربرد هاي نظريه بازي در مسائل شبکه هاي بي سيم

چکیده

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

دانلود مقاله

https://ganj.irandoc.ac.ir/articles/download_sparse/523343

 

دوشنبه ۱۳۹۶/۰۷/۱۰ ساعت 4:17 PM توسط pourya | 
دوشنبه ۱۳۹۶/۰۷/۱۰ ساعت 4:15 PM توسط pourya | 
كار برد نظريه بازي ها را مي توان در زمينه هاي زير يافت:

1-تئوري تصميم گيري

2- راهبر دهاي دفاعي

3- مدل هاي تجاري

4- آناليز سياست عمومي

5- سيستم هاي زيستي

6- محاسبات توزيع

7- شبكه هاي مخابراتي

تئوري رياضي بازي ها قوانين مورد نياز و ساختار مسائل را تهيه مي بيند.

 حل در نظريه بازي ها مقداري متفاوت است:

 يك توضيح سيستماتيك از خروجي كه منتج از مسئله تصميم مي باشد .

الف- بهينه سازي

ب- امكانپذيري

ج- تعادل

 

دوشنبه ۱۳۹۶/۰۷/۱۰ ساعت 4:4 PM توسط pourya | 
 نطريه بازي ها عبارت است از مطالعه مسائل تقابل به عبارت ديگر نظريه بازي ها عبارت است از بازي راهبرد ها نه بازي بر اساس شانس .

اجزاء  نظريه بازي ها عبارت است از :

1- بازي كن ها ( تصميم گيرنده ها)

2- انتخاب (عملي امكان پذير)

3- نتيجه (سود-جايزه-....)

4- انتخاب  بهترين نتيجه

مسائل در تئوري بازي ها را مي توان به بخش هاي زير تقسيم كرد:

1- بازي هاي ايستا در مقايل بازي هاي ديناميك( در بازي هاي دينامك نظم در تصميم گيري مهم است).

2- بازي مشاركتي در براربازي هاي غير مشاركتي (در بازي غير مشاركتي هر بازيكن بطور مستقل تصميم مي گيرد در صورتي كه در بازي مشاركتي تصميم به صورت گروهي گرفته مي شود).

 

دوشنبه ۱۳۹۶/۰۷/۱۰ ساعت 3:10 PM توسط pourya | 

 ارتباط بین تجهیزات در شبکه های مودباس :

ارتباط بین تجهیزات در پروتوکل ASCII/RTU Modbus بر روی پورتهای سریال 422-RS, 485-RS, 232-RS بطور SLAVE/MASTER می باشد .
چنانچه Master بخواهد با هر Slave ارتباط برقرار کند ، شماره آدرس آن Slave را در پیغام ارسالی قرار می دهد و پیغام را می فرستد. تمام
Slave ها این پیغام را دریافت می کنند ولی آن Slave ، که شماره آدرس آن در پیغام نوشته شده است پاسخ می دهد بدین ترتیب در هر لحظه فقط یک پیغام بر روی خط وجود دارد. SLAVE می تواند ورودی و خروجی دیجیتال یا آنالوگ، شیرهای برقی، درایورهای موتورها، یا تجهیزات اندازه گیری مانند ترنسمیترهای دما ، لودسل و غیره باشد.

دوشنبه ۱۳۹۶/۰۷/۱۰ ساعت 3:4 PM توسط pourya | 
ضعیت تحصیل مهندسان برق در مقاطع بالاتر از کارشناسی

فارغ التحصیل در مقطع کارشناسی برق که مدرک خود را در یکی از چهار گرایش الکترونیک، مخابرات، قدرت و کنترل می‌گیرد، می‌تواند در یکی از این گرایشها (اختیاری) یا رشته‌ای که برق زیر مجموعه‌ای برای آن تعریف شده، ادامه تحصیل نماید.

این رشته به صورت: مهندسی برق- الکترونیک(سه گرایش طراحی آنالوگ، مدارهای دیجیتال، ادوات میکرو و نانو الکترونیک)، برق- قدرت، برق- مخابرات (شامل گرایش‌های: میدان و مایکروویو نوری، سیستم،رمز، شبکه) برق- کنترل، مهندسی پزشکی (گرایش بیوالکتریک)،مهندسی مکاترونیک (شامل گرایش های:انسان جنبی ماشین،کنترل،رباتیک) مهندسی هسته‌ای (دو گرایش مهندسی رآکتور و مهندسی پرتو پزشکی، مهندسی کامپیوتر (معماری کامپیوتر، هوش مصنوعی و رباتیک) است.

 

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

 

دوشنبه ۱۳۹۶/۰۷/۱۰ ساعت 3:2 PM توسط pourya | 
چالش های مهندسی برق گرایش کنترل

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

دوشنبه ۱۳۹۶/۰۷/۱۰ ساعت 10:43 AM توسط pourya | 
 

نرم افزار MATLAB دارای توابع داخلی فراوانی است که نیازهای کاربران را برآورده می کند. بعضی از این توابع در ادامه آمده است:

⬅️ عنصر ماکزیمم: ()max

⬅️ عنصر مینیمم: ()min

⬅️ مینگین عناصر: ()mean

⬅️ فراوانی عناصر: ()hist

⬅️ محاسبه واریانس: ()std

⬅️ مرتب سازی عناصر: ()sort

⬅️ مجموع عناصر: ()sum

⬅️ قسمت حقیقی عدد مختلط: ()real

⬅️ قسمت موهومی عدد مختلط: ()imag

⬅️ مزدوج عدد مختلط: ()conj

⬅️ زاویه عدد مختلط: ()angle

⬅️ قدر مطلق (اندازه): ()abs

⬅️ نوشتن یک عدد مختلط: z=a+jb (که j باید به b چسبیده باشد) یا به صورت z=a+j*b و نیز (z=mag*exp(j*angl که (mag=abs(z و (angl=angle(z

⬅️ ریشه دوم: ()sqrt

⬅️ تابع نمایی اکسپونانسیل: ()exp

⬅️ لگاریتم طبیعی: ()log

⬅️ لگاریتم برمبنای 10: ()log10

⬅️ توابع مثلثاتی: ()sin(), cos(), tan(), cot

⬅️ توابع معکوس مثلثاتی: ()asin(), acos(), atan(), acot

⬅️ گرد کننده به نزدیکترین عدد صحیح به x (روند کردن عمومی): (round(x

⬅️ گرد كننده به نزديكترين عدد صحيح به x در جهت صفر: (fix(x

⬅️ گرد كننده به نزديكترين عدد صحيح به x در جهت ∞+: (ceil(x

⬅️ گرد كننده به نزديكترين عدد صحيح به x در جهت ∞-: (floor(x

⬅️ باقی مانده تقسیم x بر y (ترتیب x , y مهم است): (rem(x,y

⬅️ تولید ماتریس m×n تماما صفر: (zeros(m,n

⬅️ تولید ماتریس m×n تماما یک: (ones(m,n

⬅️ تولید اعداد تصادفی مابین صفر و یک: (rand(m,n یک ماتریس تصادفی با ابعاد m×n تولید
میکند.

⬅️ تولید اعداد تصادفی با میانگین صفر و واریانس یک: (randn(m,n

⬅️ تولید یک آرایه با تکرار آرایه دیگر: (repmat(a,m,n، آرایه a را با m بار افقی و n بار عمودی تکرار
می کند.

⬅️ محاسبه دترمینان ماتریس: ()det (ماتریس باید مربعی باشد)

⬅️ محاسبه معکوس ماتریس: ()inv (ماتریس باید مربعی باشد)

 

دوشنبه ۱۳۹۶/۰۷/۱۰ ساعت 10:38 AM توسط pourya | 

سیمولینک
 تعداد بلوک‌های موجود در هر کتابخانه زیاد است. حال که تقریباً شیوه‌ی استفاده از بلوک‌های عمومی موجود در سیمولینک را فراگرفتید‌، به بررسی دقیق‌تر بلوک اسکوپ می‌پردازیم و در ادامه چند مثال ساده و کاربردی را موردمطالعه قرار خواهیم داد.

 بلوك نوسان‌نما
بلوك نوسان‌نما تقليدي از اسيلوسكوپ است که در کتابخانه‌ی Sinks وجود دارد. اين بلوك بخشي از سيگنال ورودي كه می‌تواند برداري يا اسكالر باشد را نمايش می‌دهد. گستره‌ی عمودي (محور y) و گستره‌ی افقي (زمان روي محور x) را می‌توان با هر مقدار موردنظر تنظيم نمود. محور افقي مقدار واقعي سيگنال ورودي را نمايش مي‌دهد. درجه‌بندی محور افقي همواره از صفر شروع می‌شود و به مقدار مشخص‌شده با عنوان بازه زماني خاتمه می‌یابد.

پنجره‌ی محاوره‌ای ویژگی‌های نوسان‌نما
با کلیک بر روی دكمه‌ی پارامتر‌های اسکوپ‌، پنجره‌ی محاوره‌ای ويژگي‌هاي نوسان‌نما را كه داراي دو منو است باز می‌شود. منوی General داراي فيلدهايي براي تنظيم تعداد محورها و گسترده زماني و كنترل فاصله‌گذاری بين نقاط ترسيم است. منوی Data history داراي فيلدهايي براي كنترل اندازه‌ی بافر داده نوسان‌نما و ارسال داده نمايش يافته به فضاي كاري MATLAB است.

6

دوشنبه ۱۳۹۶/۰۷/۱۰ ساعت 10:30 AM توسط pourya | 
سیمولینک

ایجاد یک مدل
سیمولینک یکی از زیرمجموعه‌های نرم‌افزار MATLAB است و بایستی از محیط درونی MATLAB، به‌صورت کلیک بر روی نماد سیمولینک در نوارابزارMATLAB همان‌طور که در شکل زیر دیده می‌شود یا با واردکردن فرمان Simulink در خط فرمان MATLAB و یا از منوی شروع (Start) فراخوانی شود.

وصل کردن بلوک‌ها به یکدیگر
برای اتصال بلوک‌ها به یکدیگر روش‌های مختلفی وجود دارد.
 روش اول
وقتی مکان‌نما را مطابق شکل زیر به قسمت خروجی بلوک (به‌عنوان‌مثال موج سینوسی) موردنظر نزدیک می‌کنید علامت مکان‌نما به شکل (+) تبدیل می‌شود. این حالت به معنای آماده بودن جهت برقراری ارتباط با بلوک‌های دیگر است. در این حالت با نگه‌داشتن دکمه‌ی سمت چپ موس و حرکت مکان‌نما به سمت ورودی بلوک دیگر (به‌عنوان‌مثال بلوک انتگرال گیر) و رها کردن دکمه‌ی موس، می‌توانید اتصال را برقرار کنید. هنگام نزدیک کردن مکان‌نما به ورودی بلوک دیگر

 

دوشنبه ۱۳۹۶/۰۷/۱۰ ساعت 10:27 AM توسط pourya | 

 سیمولینک
راهنمای داده‌های بلوک
راهنمای داده‌های بلوک در صورت فعال بودن در یک پنجره نمایش داده می‌شود. این پنجره هنگامی ظاهر می‌شود که مکان‌نما حدود یک ثانیه بر روی بلوکی ثابت بماند. پنجره راهنمای داده‌های بلوک را می‌توان برای نمایش مواردی از اطلاعات بلوک نظیر پارامترهای بلوک و ... استفاده نمود.


 دست‌کاری بلوک‌ها
تغییر اندازه‌ی بلوک
یکی از کتابخانه‌ها را بازکرده و بلوکی را به پنجره‌ی مدل بکشید. برای تغییر اندازه‌ی بلوک، بلوک را انتخاب کنید. این کار باعث نمایش دستگیره‌ها می‌شود. برای تغییر اندازه‌ی بلوک، دستگیره را بکشید. توجه کنید که تغییر شکل مکان‌نما مؤید آن است که دستگیره‌ی تغییر اندازه را گرفته‌اید. دکمه‌ی موس را رها کنید. اکنون نماد بلوک به‌اندازه‌ی کافی تغییر کرده است.

چرخاندن بلوک
گاهی نیاز خواهد بود که بلوکی را بچرخانید برای این کار با راست کلیک کرده و سپس FormatRotate را انتخاب کنید. بلوک 90 در جهت ساعتگرد خواهید چرخید (این کار نیز با CTRL+R می‌توان انجام داد).

کپی گرفتن از بلوک‌ها
برای این کار روش‌های، مختلفی وجود دارد از قبیل:
•راست کلیک روی بلوک و انتخاب گزینه‌ی copy و سپس راست کلیک در یک جای خالی و انتخاب گزینه‌ی Paste
•استفاده مجدد از بلوکهای موجود در کتابخانه‌ی مرجع
•استفاده از منوی Edit و انتخاب گزینه‌ی کپی از بلوک موردنظر و سپس انتخاب گزینه‌ی paste
•درنهایت استفاده از کلید Ctrl موجود بر روی صفحه‌کلید. برای این کار ابتدا روی بلوک موردنظر کلیک کرده و کلید Ctrl را فشرده و نگه می‌داریم، آنگاه بر روی بلوک موردنظر کلیک کرده و آن را به نقطه دیگری درگ (می‌کشیم) می‌کنیم و سپس دکمه‌ی چپ موس و نیز کلید Ctrl را رها می‌کنیم.

 

دوشنبه ۱۳۹۶/۰۷/۱۰ ساعت 10:12 AM توسط pourya | 

در منطق فازی (Fuzzy Logic)، درستی یک عبارت به صورت یک درجه بیان می‌شود. مثلاً گفته می‌شود که درجه درست بودن یک جمله برابر 80% است.
منطق فازی براصل مجموعه‌های فازی (Fuzzy sets) استوار است که با مجموعه‌های کلاسیک متفاوت است. آنچه که تاکنون در مورد مجموعه‌ها می‌دانستیم این است که یک مجموعه مثل A شامل تعدادی اشیاء است که به آنها اعضای مجموعه می‌گویند. فرض کنید x عضوی از یک مجموعه کلی به نام مجموعه جهانی یا مجموعه مرجع X باشد.

آنگاه x یا کاملاً در مجموعه A قرار دارد یا اصلاً در آن مجموعه قرار ندارد. به چنین مجموعه‌هایی، مجموعه Crisp گفته می‌شود.
 برای هر مجموعه A، یک تابع عضویت (Membership Function) تعریف می‌کنند و آن را با mA نشان می‌دهند که فقط می‌تواند دو مقدار 0 و 1 را اختیار کند. این تابع، درجه عضویت هر شیء در یک مجموعه را توصیف می‌کند.
 اگر x عضو A باشد mA(x)=1 و اگر x عضو آن نباشد:
mA(x)=0
خواهد بود. بنابراین تابع mA، یک تابع از اعضای مجموعه X به مجموعه
{0,1}
است، یعنی به هر عضو مجموعه X یک عدد 0 یا 1 نسبت می‌دهد.

مثال 1- مجموعه افراد بلندقد را افرادی با قد بلندتر از 180 سانتیمتر تعریف می‌کنیم. در این صورت، اگر قد یک فرد 181 سانتیمتر باشد بلندقد است و اگر 179 سانتیمتر باشد بلندقد نخواهد بود                                        مثال 2- فرض کنید مجموعه افراد میانسال را افرادی با رده سنی 40 تا 55 سال در نظر بگیریم. در این صورت، فردی با سن 39 سال یا 56 سال جزو مجموعه افراد میانسال نخواهد بود.


اما این چیزی نیست که در واقعیت می‌بینیم. در واقع، برای دو مفهوم "بلندقد" و "میانسال" مرز مشخصی قائل نیستیم. یک فرد با قد 179 سانتیمتر را نیز جزو افراد بلندقد به شمار می‌آوریم و یا اینکه فردی با سن 39 سال یا 56 سال را نیز جزو افراد میانسال در نظر می‌گیریم. اینطور نیست که یک فرد 39 سال را جوان در نظر بگیریم و یک سال بعد، این فرد یک فرد میانسال باشد. برخی دیگر از این قبیل مفاهیم که مرز مشخصی ندارند، عبارتند از: سریع، بزرگ، متوسط و غیره. این مفاهیم را نمی‌توان با مجموعه‌های Crisp بیان کرد. در چنین مواقعی از مجموعه‌های فازی استفاده می‌کنیم (مانند شکل 3). هر مجموعه فازی با یک تابع عضویت نمایش داده می‌شود که به طور پیوسته بین 0 و 1 تغییر می‌کند. در یک مجموعه فازی، درجه عضویت یک عضو می‌تواند مقداری بین 0 و 1 باشد

اگر A یک مجموعه فازی باشد، تابع عضویت mA، یک تابع از اعضای مجموعه X به بازه اعداد حقیقی [0,1] است، یعنی به هر عضو مجموعه X یک عدد در این بازه اختصاص می‌دهد. بنابراین مجموعه فازی A را می‌توان با یک سری زوج مرتب به صورت (x, mA(x)) نمایش داد.

فرض کنید A مجموعه افراد بلندقد باشد. اگر فردی دارای قد 180 سانتیمتر باشد آنگاه با توجه به شکل 3 می‌توان نوشت: mA(180)=0.5، یعنی درجه عضویت این فرد در مجموعه A برابر 0.5 است. همچنین می‌توان نوشت: mA(185)=1 و mA(175)=0.
همچنین فرض کنید B مجموعه افراد میانسال باشد. در این صورت با توجه به شکل 3، یک فرد با سن 42 سال با درجه 0.7 به مجموعه B تعلق دارد، یعنی mB(42)=0.7. به همین ترتیب، می‌توان نوشت: mB(55)=0.5 و mB(50)=1.

یک مثال تکمیلی: فرض کنید سن 9 نفر را به عنوان مجموعه مرجع X در نظر بگیریم:
X = {5, 15, 25, 35, 45, 55, 65, 75, 85}
مجموعه‌های A، B و C را به ترتیب مجموعه افراد جوان، میانسال و پیر تعریف می‌کنیم. آنگاه می‌توان درجه عضویت هر یک از اعضای X در سه مجموعه فوق را به صورت زیر بیان کنیم:
A={ (5,0), (15,0.2), (25,1), (35,0.8), (45,0.4), (55,0.1), (65,0), (75,0), (85,0) }
B={ (5,0), (15,0), (25,0), (35,0.3), (45,1), (55,0.8), (65,0.1), (75,0), (85,0) }
C={ (5,0), (15,0), (25,0), (35,0), (45,0), (55,0.2), (65,0.7), (75,1), (85,1) }
برای مثال زوج (15,0.2) در مجموعه A به این معنی است که درجه عضویت فرد 15 ساله در مجموعه A (مجموعه افراد جوان) برابر 0.2 است و یا (35,0.8) یعنی درجه عضویت فرد 35 ساله در مجموعه A برابر 0.8 است. یک فرد 55 ساله، با درجه 0.1 جزو افراد جوان (مجموعه A)، با درجه 0.8 جزو افراد میانسال (مجموعه B) و با درجه 0.2 جزو افراد پیر (مجموعه C) محسوب می‌شود.
تا اینجا به معرفی مجموعه‌های فازی پرداخته شده است. منطق فازی نیز مشابه مجموعه فازی است. در منطق فازی، درجه درستی یک عبارت منطقی می‌تواند مقداری بین 0 و 1 داشته باشد. برای مثال، اگر فرد x دارای قد 180 سانتیمتر باشد، آنگاه درجه یا میزان درست بودن عبارت "x بلندقد است" برابر 0.5 است.

دوشنبه ۱۳۹۶/۰۷/۱۰ ساعت 10:4 AM توسط pourya | 

هدف نهایی این سری آموزشی، دستیابی به مهارتی برای طراحی کنترل‌کننده فازی با استفاده از جعبه‌ابزار Fuzzy Logic در نرم‌افزار MATLAB است. در اینجا سعی شده است که مراحل طراحی کنترل‌کننده فازی به صورت مرحله به مرحله و با مثال‌های متنوعی آموزش داده شود. اما قبل از ورود به بحث طراحی کنترل‌کننده فازی، نیاز است تا مفاهیم و مقدماتی در ارتباط با منطق فازی ارائه شود. در این جلسه به معرفی مجموعه‌های فازی می‌پردازیم.
 کلمه Fuzzy در لغت به معنی نامعلوم، تیره و غیرشفاف است. بنیانگذار منطق فازی، پروفسور لطفی‌زاده می‌باشد که در سال 1965 مجموعه‌های فازی را معرفی کرده است.

دوشنبه ۱۳۹۶/۰۷/۱۰ ساعت 8:48 AM توسط pourya | 
 

 

 دستورات کاربردی 

دستور dsolve برای حل معادلات دیفرانسیل و دستگاه معادلات معمولی به صورت سیمبولیک و یا عددی کار برد دارد.

فرض کنید میخواهیم معادله دیفرانسیل زیر رو حل کنیم:
y''+2y'=x
به دو صورت میتوانیم این معادله را با dsolve حل کنیم:

بدون استفاده از متغیرهای نمادین

dsolve('D2y+2*Dy=x','x')

ans=
C11-x/4+x^2/4+C12exp(-2*x)+1/8

که در این حالت مشتق اول y به صورت Dy و مشتق دوم به صورت D2y و به همین صورت مشتقات بالاتر قابل تعریف هستند.

۲-با استفاده از متغیرهای نمادین:

syms y(x)
dsolve(diff(y,2)+2*diff(y)==x)

ans=
C11-x/4+x^2/4+C12exp(-2*x)+1/8

ملاحظه میگردد در این حالت برای علامت تساوی معادلات حتما از == باید استفاده شود.

* حل معادله با شرایط مرزی اولیه:
z=dsolve('D2y+2*Dy=x, y(0)=1, Dy(1)=0','x')

z=
(exp(-2*x)*exp(2))/8-exp(2)/8-x/4+x^2/4+1

ترسیم خروجی حل معادله دیفرانسیل:
ezplot(z)

* حل دستگاه معادلات دیفرانسیل:
syms x(t) y(t) a b
z=dsolve(diff(x,2)==a*y, diff(y)==b*y)

z=
y :[1x1 sym]
x :[1x1 sym]

که در این حالت خروجی به صورت متغیرهای ساختاریافته (structured) هستن. با نوشتن z.x و z.y میتونید دو جواب معادله دیفرانسیل رو مشاهده کنید.

» z.x

ans =

(C1*a*exp(b*t))/b^2 - (C3*a)/b - C2*(a/b^2 + (a*t)/b)

» z.y

ans =

C1*exp(b*t)

یکشنبه ۱۳۹۶/۰۷/۰۹ ساعت 8:23 PM توسط pourya | 
 

به اطلاع کلیه علاقمندان می‌رساند در حاشیه برگزاری دومین کنفرانس بین‌المللی انرژی های تجدیدپذیر ایران (IranREC۲۰۱۷) از تاریخ ۹ الی ۱۱ آبان ماه سال جاری در مرکز همایش‌های بین المللی صدا و سیما، کارگاه آموزشی با عنوان Project Navigator از سوی آژانس بین‌المللی انرژی های تجدیدپذیر (آیرینا) برگزار می‌شود. خاطر نشان می‌گردد آژانس آیرینا به منظور تسهیل توسعه طرح‌های ارائه شده در حوزه تجدیدپذیرها و همچنین کاهش میزان ریسک سرمایه‎گذاری، اقدام به طراحی پلت‌فرم Project Navigator نموده است که در آن فرایند چرخه عمر یک پروژه در چندین مرحله مجزا جهت پشتیبانی و توسعه پروژه‌های تجدیدپذیر طراحی گردیده و توسعه‌دهندگان قادر خواهند بود تا با استفاده از مدل‌های مالی ارائه شده، چک لیست‌ها و فرم‌های ارزیابی، پروژه‌های پیشنهادی را از لحاظ اقتصادی توجه‌پذیر(bankable) نمایند. لازم به ذکر است که به شرکت کنندگان گواهی معتبر اعطا میگردد.
علاقمندان جهت کسب اطلاعات بیشتر با شماره 021-66063148 تماس حاصل فرمایند.

مشخصات
انقلاب صنعتی چهارم
مبانی مهندسی کنترل
هوشمندسازی سیستم‌های کنترلی
اینترنت اشیا در صنعت