• رابط سیستم متلب. نکاتی در مورد Matlab ایجاد یک رابط کاربری گرافیکی (GUI Matlab)

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


    رابط متلب برنامه ها

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

    دسکتاپ

    به طور پیش فرض، دسکتاپ شامل چهار پنجره است:
    پنجره فرمان (پنجره فرمان) در سمت راست دسکتاپ، ویندوز
    دایرکتوری فعلی (دایرکتوری فعلی) و فضای کاری (فضای کاری) در بالا
    سمت چپ و پنجره Command History (History of commands) در سمت چپ پایین.
    توجه داشته باشید که برای جابجایی بین پنجره های دایرکتوری فعلی
    (دایرکتوری فعلی) و Workspace (Workspace) برگه هایی وجود دارد،
    تکرار نام پنجره شما می توانید نمایش پنجره ها را با
    منوی دسکتاپ (در نسخه 6، منوی View)، واقع در بالا
    بخش هایی از دسکتاپ، علاوه بر این، می توانید اندازه ویندوز را تنظیم کنید
    با کشیدن حاشیه های پنجره با ماوس. پنجره فرمان
    (پنجره فرمان) پنجره ای است که در آن دستورات و
    دستورالعمل هایی که باعث می شود برنامه متلب محاسبه، ترسیم و
    انجام بسیاری از چیزهای چشمگیر دیگر که در این توضیح داده شده است
    کتاب. بقیه پنجره ها در قسمتی جداگانه در ادامه این آموزش پوشش داده خواهند شد.
    دسکتاپ شامل یک نوار منو و یک نوار ابزار است. پانل
    ابزارها حاوی آیکون‌هایی (میانبر) هستند که دسترسی به برخی را فراهم می‌کنند
    عناصر برنامه که می توانید از منو انتخاب کنید. زیاد
    آیتم های منو همچنین دارای میانبرهای صفحه کلید در سمت راست هستند
    از آیتم منو برخی از این میانبرهای صفحه کلید به شما بستگی دارد
    سیستم عامل، اساساً ما به آنها اشاره نمی کنیم. با این حال، شما
    ممکن است این ویژگی برای شما مفید باشد و از صفحه کلید استفاده کنید
    ترکیب‌هایی در کار شما برای آوردن آیتم‌های منو که اغلب می‌توانید انجام دهید
    درخواست دادن.

    هر پنجره روی دسکتاپ شامل دو دکمه کوچک در بالا سمت راست است
    گوشه. یکی از آنها با داشتن فرم [x] به شما امکان می دهد پنجره را ببندید و دیگری در فرم
    فلش منحنی، به شما امکان می دهد پین پنجره را از دسکتاپ باز کنید (پنجره را برگردانید
    به دسکتاپ بازگردید، می توانید دستور منو Desktop => Dock (Desktop) را انتخاب کنید
    جدول => پین) در پنجره باز شده یا با کلیک بر روی فلش منحنی،
    واقع در نوار منو).

    • اگرچه دسکتاپ برخی از ویژگی‌های جدید و یک رابط مشترک برای نسخه‌های ویندوز و یونیکس متلب ارائه می‌کند، برنامه با دسکتاپ باز هنوز می‌تواند بسیار کندتر از رابط اصلی Command Window، به خصوص در رایانه‌های نسخه‌های قدیمی‌تر، اجرا شود. برای کار در یک برنامه متلب با رابط قدیمی، باید برنامه را با استفاده از دستور matlab -nodesktop شروع کنید.

    فضای کار

    در فصل 2، دستورات clear و whos را که می توانید استفاده کنید، معرفی کردید.
    برای پیگیری متغیرهایی که در طول جلسه تنظیم کرده اید تماس بگیرید
    برنامه های متلب همه متغیرها در ناحیه حافظه کامپیوتر قرار دارند،
    به نام «فضای کار». لیست کاملی از متغیرهای مجموعه نمایش داده می شود
    در پنجره Workspace به همین نام. نمایش این پنجره
    می توانید با تایپ دستور Workspace یا با باز بودن دسکتاپ، کلیک کنید
    ماوس را روی تب Workspace در پایین پنجره Current قرار دهید
    دایرکتوری (دایرکتوری فعلی). پنجره Workspace شامل یک لیست است
    متغیرهای جاری و اندازه آنها (اما نه مقادیر متغیرها). اگر شما
    روی متغیر دوبار کلیک کنید، مقدار متغیر در آن نمایش داده می شود
    پنجره جدیدی به نام Array Editor که می توانید
    برای ویرایش استفاده کنید عناصر منفرددر بردارها و ماتریس ها
    (این پنجره را نیز می توان با وارد کردن دستور openvar و نام the باز کرد
    شما متغیر است.) می توانید با برجسته کردن، یک متغیر را از "فضای کاری" حذف کنید
    آن را در پنجره Workspace (Workspace) انتخاب کنید و دستور منو Edit => Delete را انتخاب کنید
    (ویرایش => حذف).
    اگر نیاز به خاتمه جلسه دارید و نمی خواهید بعداً محاسبه کنید
    همه دوباره، سپس می توانید "فضای کاری" فعلی را با آن ذخیره کنید
    دستورات را ذخیره کنید به عنوان مثال پس از وارد کردن دستور save xnyfile ذخیره می شود
    مقادیر همه متغیرهای فعلی داده شده در فایلی به نام myfile.mat. به
    فقط مقادیر متغیرهای X و Y را ذخیره کنید، موارد زیر را وارد کنید:

    >> ذخیره myfile X Y

    هنگامی که یک جلسه جدید را شروع می کنید و می خواهید مقادیر آنها را بازیابی کنید
    متغیرها، از دستور load استفاده کنید. به عنوان مثال، وارد کردن دستور load myfile
    مقادیر تمام متغیرهای ذخیره شده در فایل myfile.mat را بازیابی می کند.

    • به‌طور پیش‌فرض، متغیرها در فرمت باینری ذخیره می‌شوند که در متلب رایج است، اما می‌توانید داده‌ها (فرمان‌های ذخیره و بارگذاری) را در قالب متن ASCII ذخیره و بارگذاری کنید. برای جزئیات بیشتر به راهنمای آنلاین این دستورات مراجعه کنید. این ویژگی می تواند برای تبادل داده با سایر برنامه ها مفید باشد.

    فهرست راهنمای فعلی و مسیر جستجو

    فایل های جدیدی که در برنامه متلب ایجاد می کنید در آنها ذخیره می شوند
    دایرکتوری فعلی شما نام این دایرکتوری در پنل نمایش داده می شود
    ابزارهای دسکتاپ و فایل ها و زیرشاخه هایی که دایرکتوری فعلی شامل می شود
    در پنجره Current Directory نمایش داده می شود. نام نمایشی
    دایرکتوری فعلی، همچنین می توانید از دستور pwd ("print working
    دایرکتوری" در پنجره فرمان (Command
    پنجره)، و همچنین می توانید با تایپ کردن، محتوای فهرست فعلی را فهرست کنید
    dir یا فرمان است.

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

    ممکن است بخواهید دایرکتوری پیش فرض فعلی را تغییر دهید یا شما
    می خواهید دایرکتوری های جداگانه ای برای پروژه های مختلف نگه دارید. تو می توانی
    تغییر دایرکتوری فعلی در برنامه متلب با استفاده از دستور cd، پنجره جاری
    دایرکتوری (دایرکتوری فعلی) یا لیست کشویی دایرکتوری فعلی
    (دایرکتوری فعلی) در نوار ابزار دسکتاپ. می توانید یک نام وارد کنید
    دایرکتوری را در این قسمت قرار داده و کلید (Enter) را فشار دهید. دایرکتوری خود را انتخاب کنید
    قبلاً با کلیک بر روی دکمه پیکان در سمت راست فیلد یا
    یک دایرکتوری را با کلیک بر روی نماد (...) Browse for folder انتخاب کنید،
    واقع در سمت راست میدان
    به عنوان مثال، در رایانه ای که سیستم عامل ویندوز را اجرا می کند
    دایرکتوری فعلی پیش فرض یک زیر شاخه به نام کار است،
    در دایرکتوری نصب MATLAB قرار دارد. برای مثال می تواند باشد
    دایرکتوری C:\MATLAB7\work. شما می توانید یک دایرکتوری جدید ایجاد کنید، فرض کنید ProjectA،
    داخل آن با تایپ mkdir ProjectA. همچنین می توانید کلیک راست کنید
    در پنجره Current Directory (Current Directory) را فشار دهید و دستور را انتخاب کنید
    منوی New => Folder (Create => Folder) یا روی نماد New folder کلیک کنید
    (پوشه جدید) که در نوار ابزار این پنجره قرار دارد. سپس
    cd ProjectA را تایپ کنید یا در پنجره Current روی آن دوبار کلیک کنید
    دایرکتوری (دایرکتوری فعلی) تا این دایرکتوری دایرکتوری فعلی شما باشد
    فهرست راهنما. پس از آن، می توانید با فایل های این دایرکتوری در جریان کار کنید
    جلسه برنامه متلب.

    بنابراین با توجه به موارد فوق می توان نتیجه گرفت که شما نیاز به مشاهده زیاد دارید اطلاعات اضافیو جایگزین ها!

    ارسال کار خوب خود در پایگاه دانش ساده است. از فرم زیر استفاده کنید

    کار خوببه سایت">

    دانشجویان، دانشجویان تحصیلات تکمیلی، دانشمندان جوانی که از دانش پایه در تحصیل و کار خود استفاده می کنند از شما بسیار سپاسگزار خواهند بود.

    نوشته شده در http://www.allbest.ru/

    ایجاد اپلیکیشن های گرافیکی در محیط متلب

    دستورالعمل های کار آزمایشگاهی در رشته "اتوماسیون محاسبات مهندسی" برای دانش آموزان تمام اشکال آموزش گرایش 230100 - انفورماتیک و فناوری کامپیوتر،

    I.A. سلیوانوا، A.A. بوکین

    V.A. پنکیک

    Ekaterinburg UrFU 2012

    1. اصول ایجاد رابط های گرافیکی

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

    1. توسعه یک رابط کاربر گرافیکی (Graphical User Interface)، که شامل ترتیب کنترل ها در پنجره است.

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

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

    2. بیان مسئله

    هدف از این کار آزمایشگاهی- مطالعه اصول اولیه ایجاد اپلیکیشن های گرافیکی در بسته متلب.

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

    برنج. 1 پنجره برنامه

    3. محیط راهنمای

    با اجرای دستور به محیط توسعه رابط کاربری تعاملی - GUIDE بروید راهنمادر خط فرمان در پنجره ای که ظاهر می شود، را انتخاب کنید جای خالیرابط کاربری گرافیکیروی نشانک ايجاد كردنجدیدرابط کاربری گرافیکیو روی OK کلیک کنید. پنجره ویرایشگر رابط باز می شود (شکل 2).

    برنج. 2 پنجره ویرایشگر رابط

    ویرایشگر رابط کاربری شامل:

    * نوار منو؛

    * نوار ابزار کنترل برنامه؛

    * آماده سازی پنجره برنامه با شبکه اعمال شده؛

    * خط کش های عمودی و افقی؛

    * نوار ابزار برای افزودن عناصر رابط به پنجره برنامه.

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

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

    3.1 رویدادهای برنامه نویسی

    یک برنامه گرافیکی در متلب در دو فایل با پسوند ذخیره می شود. شکلو. متر، اولین مورد شامل توضیحات فرم پنجره و دومی - کد برنامه است. افزودن یک عنصر رابط در ویرایشگر به طور خودکار یک الگوی کنترل کننده رویداد (به عنوان مثال، کنترل کننده کلیک دکمه) در فایل کد برنامه ایجاد می کند.

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

    اولین دکمه و شی را روی فرم قرار دهید تبرهاهمانطور که در شکل نشان داده شده است. 3. برچسب به طور خودکار روی دکمه قرار می گیرد فشار دادندکمه. هر عنصر گرافیکی دارای مجموعه ای از خصوصیات است که ظاهر و رفتار آن را تعیین می کند. نام عنصر گرافیکی برچسب بزنیدبه شما امکان می دهد بین عناصر رابط تمایز قائل شوید. به دکمه نامی بدهید که عملکرد آن را توصیف کند.

    برنج. 3 قرار دادن قطعات

    برای این کار بر روی دکمه راست کلیک کرده و در لیست باز شده با ویرایشگر ویژگی تماس بگیرید ویژگیبازرس، یا روی دکمه سمت چپ ماوس دوبار کلیک کنید (شکل 4).

    برنج. 4 پنجره بازرس اموال

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

    زمانی که در برنامه در حال اجراکاربر روی دکمه کلیک می کند، سپس رویداد handler فراخوانی می شود که نام آن از نام عنصر، خط زیر و کلمه تشکیل می شود. پاسخ به تماس(مرور). در حال حاضر فاقد اپراتور است. توصیه می شود قبل از فراخوانی کنترل کننده نام عناصر را تنظیم کنید تا در آینده مجبور نباشید نام تابع تولید شده را تغییر دهید. برای فراخوانی یک handler، روی لیست کشویی کلیک راست کنید btnPlotرا در آن انتخاب کنید چشم اندازپاسخ به تماس هاو اجرا پاسخ به تماس، کنترل کننده رویداد باز شده را همانطور که در فهرست 1 نشان داده شده است تغییر دهید.

    فهرست 1.

    btnPlot.

    mygui.m:

    x=-2.5:0.6:2;

    drawPlot(x, y, handles);

    برای ایجاد یک تابع ترسیم پلات، در رابط MATLAB، آیتم منو را انتخاب کنید فایل، سپس کشویی جدیدمورد را انتخاب کنید اسکریپت. فایل تابع ایجاد شده را مطابق با لیست 2 تشکیل دهید و آن را در دایرکتوری همراه با فایل ذخیره کنید mygui. متر.

    لیست 2.

    تابع رسم نمودار از فراخوانی شده است btnPlot.

    drawPlot.m:

    تغییر نشانگر (دسته ها)

    تغییر رنگ (دسته ها)

    برای توابع تغییر نشانگرو تغییر رنگخالی ایجاد کنید اسکریپتفایل ها (خرد). هر دو فایل را ذخیره کنید و برنامه را از ویرایشگر برنامه اجرا کنید. فشار دادن دکمه در برنامه در حال اجرا باید منجر به نمایش نمودار تابع در شیء شود axMain. پنجره برنامه را ببندید و در ویرایشگر فرم به کار ادامه دهید. یک دکمه دوم به نام اضافه کنید btnCیاد بگیر. به عملکرد مدیریت رویداد دکمه دوم بروید. فراخوانی تابع را تزئین کنید پlotClearDialog, همانطور که در لیست 4 نشان داده شده است.

    لیست 3.

    رویداد دکمه را با نام مدیریت کنید btnCیاد بگیر.

    mygui.m:

    تابع ذخیره plotClearDialogدر همنام اسکریپتفایل، بعداً آن را اصلاح خواهیم کرد.

    لیست 4.

    تابع پاک کردن نمودار، فراخوانی شده از btnCیاد بگیر.

    plotClearDialog.m:

    برنامه را اجرا کنید و مطمئن شوید که با فشار دادن دکمه اول نمودار تابع نمایش داده می شود و دکمه دوم برای پاک کردن نمودار استفاده می شود.

    3.2 طراحی رابط

    3.2.1 مدیریت خواص شی

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

    3.2.2 طراحی فرم

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

    3.2.3 تغییر خصوصیات از کد

    ویژگی های شی را می توان به صورت برنامه نویسی در زمان اجرا تنظیم کرد. برنامه را طوری بهبود دهید که فقط " ساختن"، و زمانی که روی دکمه کلیک می کنید ساختن"نمودار نمایش داده می شود و از دسترس خارج می شود. به نوبه خود، هنگام فشار دادن، دکمه " پاک کردن».

    مسدود کردن دکمه بستگی به ویژگی دارد فعال کردن، با ارزش برموجود، و خاموشخیر تنظیم مقادیر برای خصوصیات اشیاء در برنامه با استفاده از تابع انجام می شود تنظیم.

    تابع تنظیمبا سه پارامتر فراخوانی می شود - اشاره به شیئی که ویژگی آن باید تغییر کند، نام ویژگی و مقدار آن. دو استدلال آخر در آپاستروف ها محصور شده اند. استدلال ها hObjectو دسته هاتوابع کنترل کننده حاوی اشاره گر هستند. که در hObjectیک اشاره گر به شیئی که رویداد آن در لحظه در حال پردازش است ذخیره می شود، a دسته هابردار اشاره گر به تمام اشیاء روی فرم است. مثلا، دسته ها. btnطرحاشاره گر به یک دکمه است btnPlot. تنظیم در ویرایشگر ویژگی برای دکمه " پاک کردن" ویژگی فعال کردنبرابر خاموش، سپس برنامه را برای مطابقت با لیست 5 تغییر دهید.

    لیست 5.

    کنترل وضعیت های دکمه.

    mygui. متر:

    تابع btnPlot_Callback (hObject، داده‌های رویداد، دسته‌ها)

    x=-2.5:0.6:2;

    drawPlot(x, y, handles);

    plotDialog (hObject، handles)؛

    تابع btnClear_Callback (hObject، داده‌های رویداد، دسته‌ها)

    set(hObject، "Enable"، "off");

    set(handles.btnPlot، "Enable"، "on");

    یک خرد تابع ایجاد کنید plotDialog. فراموش نکنید که مانند قبل از راه اندازی بعدی برنامه ذخیره کنید. مترفایل، همچنین. شکلفایل.

    3.3 کار بر روی برنامه

    3.3.1 راه اندازی برنامه

    برنامه نه تنها از ویرایشگر برنامه راه اندازی می شود. برای اجرای اپلیکیشن کافی است نام آن را به عنوان دستور در خط فرمان >> mygui مشخص کنید

    دایرکتوری حاوی برنامه باید در مسیرهای جستجوی متلب قرار داشته باشد یا دایرکتوری فعلی باشد.

    3.3.2 طراحی رابط

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

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

    3.4 عناصر رابط برنامه نویسی

    3.4.1 پرچم ها و قاب ها

    پرچم ها چک باکسبرای تغییر مقادیر با دو مقدار ممکن استفاده می شود. با استفاده از نوار ابزار دو پرچم اضافه کنید و مقادیر را تنظیم کنید رشتهبرای آنها شبکه توسطایکسو شبکه توسطY. این پرچم ها باید نمایش شبکه مربوطه را در نمودار تنظیم کنند.

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

    لیست 6.

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

    mygui.m:

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

    نقشهارزش.m:

    if get (hObject، ویژگی)

    تغییرات در ساخت و ساز با شرط وجود شبکه.

    drawPlot.m

    3.4.2 سوئیچ ها

    سوئیچ ها رادیودکمهامکان تغییر مقادیر با چندین مقدار ممکن را در اختیار کاربر قرار می دهد. فقط یک دکمه رادیویی در یک گروه همیشه تنظیم شده است. به عنوان مثال، با کمک آنها می توان نشانگرها را برای مقادیر گرهی به مربع یا دایره تغییر داد.

    یک پنل جدید به پنجره برنامه اضافه کنید دکمهگروه(سوئیچ را برای رادیودکمهخودتان)، یک برچسب برای آن مشخص کنید MarkGroup، نام "نشانگرها"، سپس سه کلید را با نام ها روی آن اعمال کنید rbMarkCirج, rbMarkSq, rbMarkNoneو کتیبه ها - نشانگرهای دایره ای, "مربع نشانگر", "بدون نشانگر"به ترتیب.

    وضعیت یک دکمه رادیویی با ویژگی آن تعیین می شود ارزش: اگر ارزشبرابر یک، سوئیچ روشن است. در ویرایشگر ویژگی، ویژگی را روی 1 قرار دهید ارزشسوئیچ با برچسب "بدون نشانگر"، سپس با شروع برنامه فعال می شود.

    لیست 7.

    مقادیر ممکن را تنظیم کنید

    mygui. متر:

    handles.output = hObject;

    guidata (hObject، handles)؛

    تغییر نشانگر (دسته ها)

    عملکرد نشانگر را با توجه به دکمه رادیویی انتخاب شده تغییر می دهد.

    changeMarker.m:

    نشانگر = getappdata(handles.figure1, "optionsValues");

    تابع نشانگر فعلی را برمی گرداند.

    getMarkerValue.m:

    عملکرد دکمه رادیویی فعلی را در گروه مشخص شده برمی گرداند.

    getSelectedOption.m:

    شاخص = شمارنده;

    3.4.3 لیست ها

    با استفاده از لیست کشویی، می توانید امکان انتخاب رنگ خط نمودار را فراهم کنید. به حالت ویرایش بروید و یک کشویی اضافه کنید ترکیدن- بالامenuبا برچسب pmColor، که عناصر آن رشته هستند "آبی","قرمز", "سبز"(رشته رشتهدر حالت چند خطی).

    برنامه را اجرا کنید و بررسی کنید که لیست کشویی شامل موارد مورد نیاز باشد. انتخاب رشته های مختلفتا زمانی که رنگ خط را تغییر دهد - باید یک رویداد را برنامه ریزی کنید پاسخ به تماسلیست کشویی

    فهرست 8.

    وکتور را با گل در متن فرم ذخیره می کنیم.

    mygui.m:

    تابع GuiProj_OpeningFcn (hObject، داده‌های رویداد، دسته‌ها، varargin)

    color = ["b"، "r"، "g"];

    تماس بگیر تغییر رنگبه کنترل کننده لیست

    mygui.m:

    تغییر رنگ (دسته ها)

    رنگ خط را تغییر دهید.

    ChangeColor.m:

    تغییر رنگ تابع (دسته ها)

    thePlot = getappdata(handles.axMain، "Plot");

    3.4.4 نوارهای پیمایش

    با کمک نوار اسکرول می توانید مثلاً ضخامت خط نمودار را تعیین کنید. یک نوار پیمایش اضافه کنید لغزندهوارد پنجره برنامه شوید و نام را تنظیم کنید scrWidth. یک نوار با توضیح متنی ارائه دهید "ضخامت خط".

    اکنون باید مطابقت بین موقعیت نوار لغزنده و مقدار عددی ویژگی را تعیین کنید. ارزش.

    کامل تنظیمات زیراز ویرایشگر اموال:

    1. در حداکثرده را وارد کنید و وارد کنید حداقل- واحد. خواص حداکثرو حداقلاسکرول‌بارها مسئول مرزهای مقادیر نوشته شده هستند ارزشهنگام حرکت دادن نوار لغزنده

    2. موقعیت اولیه نوار لغزنده را تعیین کنید. روی دکمه در خط با نام ملک و در پنجره ظاهر شده کلیک کنید ارزشمقدار را به یک تغییر دهید

    3. دسترسی به ملک SliderStep. مقدار آن بردار دو مولفه است که اولی تغییر نسبی را مشخص می کند ارزشهنگام کلیک بر روی دکمه های پیکان نوار پیمایش، و دوم - هنگام کشیدن نوار لغزنده با ماوس. شما باید مقدار را تنظیم کنید و با فشار دادن دکمه های باند تغییر می کند ارزشده درصد، و با کلیک ماوس به سمت راست یا چپ نوار لغزنده به دوازده برسد. خط را گسترش دهید SliderStepبا کلیک بر روی علامت مثبت در سمت چپ نام ملک و در خطوط ظاهر شده ایکسو در 0.1 و 0.2 را وارد کنید.

    لیست 9.

    ضخامت خط را تغییر دهید.

    mygui. متر:

    thePlot = getappdata(handles.axMain، "Plot");

    تغییر ضخامت خط در حین ساخت.

    drawPlot.m

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

    3.4.5 ناحیه ورودی متن

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

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

    لیست 10. تغییر عنوان نمودار.

    mygui. متر

    اگر ispc

    دیگر

    پایان

    عنوان (get(hObject، "String"))

    drawPlot.m

    متلب برنامه نویسی برنامه های گرافیکی

    3.5 گفتگوها و منوهای برنامه

    3.5.1 پنجره تایید

    در سیستم MATLAB، امکان اضافه کردن کادرهای محاوره ای (شکل 5) وجود دارد، به عنوان مثال، فشار دادن تصادفی دکمه ها را به عقب برگردانید. یک کادر محاوره ای باید نمایش داده شود که در آن کاربر تأیید کند که آیا نمودار واقعاً باید پاک شود یا خیر.

    برنج. 5 جعبه گفتگو

    تابع questdlgیک گفتگوی تایید ایجاد می کند , که در ساده ترین حالت دارای دو پارامتر ورودی است - یک رشته با متن در کادر محاوره ای و یک عنوان پنجره. اما هنگام اضافه کردن سه خط دیگر، می توانیم نام دکمه ها را تغییر دهیم (به طور پیش فرض آره, نه, لغو کنید).

    بیایید یک فایل موجود را تغییر دهیم plotClearDialog. مترهمانطور که در فهرست 11 نشان داده شده است.

    لیست 11.

    یک کادر محاوره ای اضافه کنید تا هنگام فراخوانی ظاهر شود

    plotClearDialog.m:

    تابع plotClearDialog (hObject، handles)

    yesButton = "بله";

    noButton = "نه";

    message = "پاک کردن نمودار";

    if strcmp (دکمه، دکمه بله)

    cla

    پایان

    حذف از کنترل کننده دکمه " پاک کردن» دکمه باز کردن قفل برای ساختمان.

    mygui.m:

    تابع btnClear_Callback (hObject، داده‌های رویداد، دسته‌ها)

    plotClearDialog (hObject، handles)؛

    3.5.2 خواندن داده ها از یک فایل

    محیط MATLAB امکان ذخیره و بارگذاری اشیاء را در قالب باینری یا متنی فراهم می کند. از دستورات برای بارگذاری یک فایل ذخیره استفاده می شود. بارو صرفه جویی، که به ترتیب فایل ها را بارگیری و ذخیره می کند. داده های ورودی را در یک فایل ایجاد و بنویسید داده ها. txt، نام بردار ذخیره شده باید باشد mymatrix.

    تابع errordlgبرای ایجاد یک کادر محاوره ای با پیام خطا طراحی شده است. آرگومان های ورودی errordlgرشته هایی با متن و عنوان پنجره هستند.

    فهرست 12. گفتگوی انتخاب منبع داده نمودار.

    plotDialog.m:

    default = "پیش فرض";

    fromFile = "از فایل";

    errorCaption = "خطا!";

    result = questdlg(dialogCaption، "mygui"، پیش‌فرض، fromFile، پیش‌فرض);

    if strcmp (نتیجه، fromFile)

    تلاش كردن

    mymatrix = load("data.txt");

    گرفتن

    پایان

    sMatrix = اندازه (mymatrix);

    errordlg (پیام خطا، errorCaption)

    پایان

    x = mymatrix(:,1);

    y = mymatrix(:,2);

    پایان

    if strcmp (نتیجه، پیش فرض)

    x=-2.5:0.6:2;

    y = exp(-x.^2);

    پایان

    drawPlot (x, y, handles)

    عملکرد را از کنترل کننده دکمه "ساخت" بردارید ترسیم پلاتو با plotDialog.

    mygui.m

    تابع btnPlot_Callback (hObject، داده‌های رویداد، دسته‌ها)

    set(hObject، "Enable"، "off");

    set(handles.btnClear، "Enable"، "on");

    plotDialog (hObject، handles)

    در این صورت فایل باید دارای دو ستون مربوط به ابسیساها و مختصات نقاط برای رسم باشد. بررسی هایی را برای ابعاد داده ها از فایل و همچنین بررسی عددی بودن داده ها انجام می دهد.

    3.5.4 منوهای پنجره

    در پکیج MATLAB می توانید منوهای زمینه و پنجره را نیز پیاده سازی کنید. ویژگی منوبارشی پنجره برنامه ارقاممسئول در دسترس بودن منوهای استاندارد است فایل, ویرایش کنید, ابزار, پنجرهو کمکدر یک برنامه در حال اجرا قرار دادن منو و برنامه نویسی با استفاده از ویرایشگر منو انجام می شود.

    ویرایشگر منو (شکل 6) را از کنترل پنل یا با انتخاب آیتم منو راه اندازی کنید ابزار، سپس منوویرایشگر.

    برنج. 6 پنجره ویرایشگر منو

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

    برنج. 7 پنجره ایجاد منوی برنامه

    در زمینه برچسببرچسب عنصر تنظیم شده است، a برچسب بزنید- نام شی متن را وارد کنید " برنامه"به یک رشته برچسبو نامی بگذار mnGraph. مرحله بعدی ایجاد آیتم های منو است. با کلیک بر روی دکمه جدیدمنومورد، یک آیتم منوی جدید ایجاد می شود. کتیبه نقطه تنظیم « ساختن"و اسمش را بگذار mnGraphPlot. یک زیرمجموعه منو دیگر اضافه کنید، ابتدا آن را به خط فعلی تبدیل کنید برنامهدر ناوبر کپشن را به همین ترتیب تنظیم کنید « پاک کردن"و نام mnGraphClear. ناوبر منو باید شامل ساختار نشان داده شده در شکل 8 باشد برنامهدارای سطح اول و امتیاز است « ساختن", « پاک کردن"- دومین.

    برنج. 8 منوی برنامه

    برنامه را اجرا کنید. انتخاب منو برنامهمنو را باز می کند. در حالی که هنگام مراجعه به موارد « ساختن"و « پاک کردن"هیچ اتفاقی نمی افتد، شما باید کنترل کننده رویداد آیتم های منو را برنامه ریزی کنید. اضافه کردن کنترل کننده های منو به mygui. مترو در plotClearDialog. متر.

    لیست 13.

    مقادیر لازم را برای ساخت دکمه ها تنظیم کنید.

    mygui.m:

    plotDialog (hObject، handles)

    plotClearDialog (hObject، handles)

    مقادیر لازم برای حذف دکمه ها را تنظیم کنید.

    plotClearDialog.m:

    3.5.6 منوهای زمینه

    کنترل‌ها، از جمله کنترل‌هایی که در طول عملکرد برنامه ایجاد شده‌اند، می‌توانند خود را داشته باشندمنوی زمینه، که با فشار دادن LMB در دسترس است.

    به برگه بروید متن نوشتهمنوهادر ویرایشگر منو و روی دکمه ایجاد کلیک کنید منوی زمینه، یک خط برای منو در ناوبری منو ظاهر می شود. اسمش را بگذار خط سانتی متر. توجه داشته باشید که هیچ خط ورودی در پنل خصوصیات وجود ندارد برچسب، زیرا منوی کشویی نباید دارای برچسب باشد. سه آیتم منو با یک دکمه ایجاد کنید جدیدمنومورد. برای آنها برچسب تعریف کنید آبی قرمز, سبزو اسامی cmLineBlue, cmLineRed, cmLineGreenبه ترتیب (شکل 9).

    برنج. 9 منوی زمینه

    در یک برنامه در حال اجرا، با کلیک راست بر روی یک خط نمودار، منوی زمینه نمایش داده نمی شود، زیرا منوی زمینه در حال حاضر خط سانتی متردر برنامه به عنوان یک شی جداگانه وجود دارد، نه به خط ساخته شده گره خورده است. به همین دلیل است که هر شیء ایجاد شده دارای یک خاصیت است UIContext Menu، که مقدار آن می تواند نشانگر یک منوی زمینه موجود باشد. ملک باید تنظیم شود UIContext Menuمقدار اشاره گر منو خط سانتی متر، موجود در ساختار دسته ها. خط در برنامه یا زمانی که کاربر دکمه را فشار می دهد کشیده می شود « ساختن"، یا هنگام انتخاب یک مورد « ساختن"منو برنامه. بیایید یک کنترل کننده منوی زمینه در آن بنویسیم mygui. متر.

    لیست 14.

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

    mygui.m:

    تابع cmLineBlue_Callback (hObject، داده‌های رویداد، دسته‌ها)

    set(handles.pmColor، "Value"، 1)

    تغییر رنگ (دسته ها)

    تابع cmLineRed_Callback (hObject، داده‌های رویداد، دسته‌ها)

    set(handles.pmColor، "Value"، 2)

    تغییر رنگ (دسته ها)

    تابع cmLineGreen_Callback (hObject، داده‌های رویداد، دسته‌ها)

    set(handles.pmColor، "Value"، 3)

    تغییر رنگ (دسته ها)

    ایجاد تغییرات در ساخت.

    ترسیم پلات. متر

    set(newPlot، "UIContextMenu"، handles.cmLine)

    3.5.7 وارد کردن یک تابع سفارشی

    یک قسمت متن جدید به فرم اضافه کنیدویرایش کنیدمتنبا برچسب userFunctionو کتیبه "ورودی کاربر". با استفاده از این فیلد، کاربر می تواند یک تابع را از صفحه کلید وارد کند و در صورت درست نبودن ورودی، باید پیغام خطا نمایش داده شود. errordlg. بیایید عملکرد را تغییر دهیم plotDialog. متر.

    لیست 15.

    افزودن ورودی کاربر

    plotDialog. متر

    تابع plotDialog (hObject، handles)

    default = "پیش فرض";

    fromFile = "از فایل";

    errorMessage = "فرمت فایل داده ناشناخته";

    errorCaption = "خطا!";

    dialogCaption = "منبع داده";

    if strcmp (نتیجه، fromFile)

    تلاش كردن

    mymatrix = load("data.txt");

    گرفتن

    errordlg (پیام خطا، errorCaption)

    پایان

    sMatrix = اندازه (mymatrix);

    if (sMatrix(2) ~= 2 | ndims(mymatrix)~=2 | ~isnumeric(mymatrix))

    errordlg (پیام خطا، errorCaption)

    پایان

    x = mymatrix(:,1);

    y = mymatrix(:,2);

    پایان

    if strcmp (نتیجه، userInput)

    تلاش كردن

    x=-2.5:0.6:2;

    y = زیر (y);

    گرفتن

    پایان

    پایان

    if strcmp (نتیجه، پیش فرض)

    x=-2.5:0.6:2;

    y = exp(-x.^2);

    پایان

    drawPlot (x, y, handles)

    4. تکلیف برای کارهای آزمایشگاهی

    هدف این آزمایشگاه به کارگیری مهارت های ایجاد اپلیکیشن در محیط GUIDE بسته متلب می باشد.

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

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

    5. نتیجه

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

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

    کتابشناسی - فهرست کتب

    1. Anufriev I.E. آموزش Matlab 5.3/6.x / I.E. آنوفریف. سن پترزبورگ: BHV-Peterburg, 2003. 736 p.

    2. دیاکونوف وی.پی. MATLAB 6.5 SPI/7 + Simulink 5/6 در ریاضیات و مدل سازی / V.P. دیاکونوف. M.: SOLONPress, 2005. 576 p. (مجموعه "کتابخانه حرفه ای").

    کاربرد

    فهرست کد منبع تابع

    mygui. متر

    تابع varargout = mygui (varargin)

    gui_Singleton = 1;

    gui_State = struct("gui_Name", mfilename,...

    "gui_Singleton"، gui_Singleton،...

    "gui_OpeningFcn"، @mygui_OpeningFcn،...

    "gui_OutputFcn"، @mygui_OutputFcn،...

    "gui_LayoutFcn"،،...

    "gui_Callback", );

    if nargin && ischar(varargin(1))

    gui_State.gui_Callback = str2func(varargin(1));

    پایان

    اگر نارگوت

    = gui_mainfcn(gui_State، varargin(:));

    دیگر

    gui_mainfcn(gui_State, varargin(:));

    پایان

    تابع mygui_OpeningFcn (hObject، داده‌های رویداد، دسته‌ها، varargin)

    handles.output = hObject;

    guidata (hObject، handles)؛

    optionsList = [ handles.rbMarkNone handles.rbMarkSq handles.rbMarkCirc ];

    optionsValues ​​= [ "n" "s" "o" ];

    setappdata (hObject، "optionsList"، optionsList);

    setappdata (hObject، "optionsValues"، optionsValues);

    color = ["b"، "r"، "g"];

    setappdata (hObject، "رنگ ها"، رنگ ها)؛

    handles.output = hObject;

    guidata (hObject، handles)؛

    تابع varargout = mygui_OutputFcn (hObject، داده‌های رویداد، دسته‌ها)

    varargout(1) = handles.output;

    تابع btnPlot_Callback (hObject، داده‌های رویداد، دسته‌ها)

    set(hObject، "Enable"، "off");

    set(handles.btnClear، "Enable"، "on");

    plotDialog (hObject، handles)

    تابع btnClear_Callback (hObject، داده‌های رویداد، دسته‌ها)

    plotClearDialog (hObject، handles)؛

    تابع chbxGridX_Callback (hObject، داده‌های رویداد، دسته‌ها)

    set(handles.axMain، "XGrid"، mapValue(hObject، "Value"));

    تابع chbxGridY_Callback (hObject، داده‌های رویداد، دسته‌ها)

    set(handles.axMain، "YGrid"، mapValue(hObject، "Value"));

    تابع MarkGroup_SelectionChangeFcn (Hobject، داده‌های رویداد، دسته‌ها)

    تغییر نشانگر (دسته ها)

    تابع pmColor_Callback (hObject، داده‌های رویداد، دسته‌ها)

    تغییر رنگ (دسته ها)

    set(hObject"BackgroundColor"،"سفید");

    پایان

    تابع scrWidth_Callback (hObject، داده‌های رویداد، دسته‌ها)

    تلاش كردن

    thePlot = getappdata(handles.axMain، "Plot");

    set(thePlot، "LineWidth"، round(get(hObject، "value")))

    گرفتن

    پایان؛

    تابع scrWidth_CreateFcn (hObject، داده‌های رویداد، دسته‌ها)

    اگر برابر است(get(hObject"BackgroundColor")، get(0,"defaultUicontrolBackgroundColor"))

    set(hObject,BackgroundColor,[.9.9.9]);

    پایان

    تابع editTitle_Callback (Hobject، داده‌های رویداد، دسته‌ها)

    عنوان (get(hObject، "String"))

    تابع editTitle_CreateFcn (hObject، داده‌های رویداد، دسته‌ها)

    اگر ispc

    set(hObject"BackgroundColor"،"سفید");

    دیگر

    set(hObject"BackgroundColor",get(0,"defaultUicontrolBackgroundColor"));

    پایان

    اگر ispc && برابر است (get(hObject"BackgroundColor")، get(0"defaultUicontrolBackgroundColor"))

    set(hObject"BackgroundColor"،"سفید");

    پایان

    تابع mnGraphPlot_Callback (hObject، داده‌های رویداد، دسته‌ها)

    plotDialog (hObject، handles)

    set(handles.mnGraphPlot,"Enable", "off");

    set(handles.mnGraphClear,"Enable", "on");

    set(handles.btnPlot,"Enable", "off");

    set(handles.btnClear"Enable","on");

    تابع mnGraphClear_Callback (hObject، داده‌های رویداد، دسته‌ها)

    plotClearDialog (hObject، handles)

    اگر ispc && برابر است (get(hObject"BackgroundColor")، get(0"defaultUicontrolBackgroundColor"))

    set(hObject"BackgroundColor"،"سفید");

    پایان

    تغییر رنگ

    تغییر رنگ تابع (دسته ها)

    تلاش كردن

    thePlot = getappdata(handles.axMain، "Plot");

    Colors = getappdata(handles.figure1, "colors");

    set(thePlot، "Color"، colors(get(handles.pmColor، "value")))

    گرفتن

    ;

    پایان

    changeMarker.m

    نشانگر تغییر تابع (دسته ها)

    تلاش كردن

    thePlot = getappdata(handles.axMain,"plot");

    نشانگر = getappdata(handles.figure1,"optionsValues");

    set(thePlot، "Marker"، نشانگرها (getMarkerValue(دسته ها)))

    گرفتن

    ;

    پایان

    drawPlot.m

    تابع drawPlot (xVector، yVector، handle)

    newPlot = plot(xVector, yVector);

    setappdata(handles.axMain، "Plot"، newPlot);

    تغییر نشانگر (دسته ها)

    تغییر رنگ (دسته ها)

    set(handles.axMain، "XGrid"، mapValue(handles.chbxGridX، "Value"));

    set(handles.axMain، "YGrid"، mapValue(handles.chbxGridY، "Value"));

    set(newPlot، "LineWidth"، round(get(handles.scrWidth، "value")))

    عنوان (get(handles.editTitle، "String"))

    getMarkerValue.m

    تابع markerValue = getMarkerValue(دسته ها)

    markerValue = getSelectedOption(getappdata(handles.figure1, "optionsList"));

    getSelectedOption.m

    شاخص تابع = getSelectedOption(hObjectList)

    شاخص = 1;

    برای شمارنده = (1: طول (hObjectList))

    اگر get(hObjectList(counter)، "value") == 1

    شاخص = شمارنده;

    برگشت

    پایان

    پایان

    mapValue.m

    تابع retval = mapValue (hObject، ویژگی)

    if get (hObject، ویژگی)

    retval="on";

    دیگر

    retval="خاموش";

    پایان

    plotClearDialog.m

    تابع plotClearDialog (hObject، handles)

    yesButton = "بله";

    noButton = "نه";

    message = "پاک کردن نمودار";

    button = questdlg (پیام، "mygui"، yesButton، noButton، noButton);

    if strcmp (دکمه، دکمه بله)

    cla

    set(handles.axMain، "YGrid"، mapValue(handles.chbxGridY، "Value"))

    set(handles.axMain، "XGrid"، mapValue(handles.chbxGridX، "Value"))

    set(handles.btnClear"Enable", "off");

    set(handles.btnPlot,"Enable", "on");

    set(handles.mnGraphPlot,"Enable", "on");

    set(handles.mnGraphClear"Enable", "off");

    پایان

    plotDialog.m

    تابع plotDialog (hObject، handles)

    default = "پیش فرض";

    fromFile = "از فایل";

    userInput = "ورودی کاربر";

    errorMessage = "فرمت فایل داده ناشناخته";

    errorCaption = "خطا!";

    dialogCaption = "منبع داده";

    result = questdlg(dialogCaption، "mygui"، پیش‌فرض، fromFile، userInput، پیش‌فرض);

    if strcmp (نتیجه، fromFile)

    تلاش كردن

    mymatrix = load("data.txt");

    گرفتن

    errordlg (پیام خطا، errorCaption)

    پایان

    sMatrix = اندازه (mymatrix);

    if (sMatrix(2) ~= 2 | ndims(mymatrix)~=2 | ~isnumeric(mymatrix))

    errordlg (پیام خطا، errorCaption)

    پایان

    x = mymatrix(:,1);

    y = mymatrix(:,2);

    پایان

    if strcmp (نتیجه، userInput)

    تلاش كردن

    x=-2.5:0.6:2;

    y = sym(get(handles.userFunction، "String"));

    y = زیر (y);

    گرفتن

    errordlg ("خطا در تجزیه تابع سفارشی"، errorCaption)

    پایان

    پایان

    if strcmp (نتیجه، پیش فرض)

    x=-2.5:0.6:2;

    y = exp(-x.^2);

    پایان

    drawPlot (x, y, handles)

    میزبانی شده در Allbest.ru

    اسناد مشابه

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

      تست، اضافه شده در 2011/12/25

      مبنای ریاضی محاسبات موازی. ویژگی های جعبه ابزار محاسبات موازی توسعه برنامه های کاربردی موازی در Matlab. نمونه هایی از کارهای موازی برنامه نویسی محاسبه انتگرال معین ضرب سریال و موازی.

      مقاله ترم، اضافه شده 12/15/2010

      ویژگی های عمومیو مشخصات سیستم متلب - پکیج برنامه های کاربردیبرای حل مشکلات محاسبات فنی. توسعه یک مدل ریاضی در یک محیط معین، برنامه‌ریزی توابع برای تأثیر استاد. طراحی رابط کاربری گرافیکی

      مقاله ترم، اضافه شده در 2013/05/23

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

      مقاله ترم، اضافه شده در 2014/09/27

      انتخاب پارامترها و ساختار مدار. برنامه نویسی یک اسکریپت (m-file) برای تنظیم پارامترهای اولیه. محاسبه پارامترهای کنترلر، طراحی تابع S آن. برنامه نویسی رابط کاربری گرافیکی: توسعه ظاهرو طراحی هندلرها

      مقاله ترم، اضافه شده در 2013/05/18

      ویژگی های کار در حالت خط فرماندر سیستم Matlab متغیرها و تخصیص مقادیر به آنها. اعداد مختلط و محاسبات در سیستم Matlab. محاسبات با استفاده از تابع sqrt. استفاده نادرست از توابع با آرگومان های پیچیده.

      پایان نامه، اضافه شده در 2015/07/30

      تحقیق خطی مدل های پویادر نرم افزار پکیج متلبو آشنایی با زمان و ویژگی های فرکانسسیستم های کنترل خودکار. جستجوی قطب و صفر تابع انتقالبا استفاده از دستورات pole, zero در Matlab.

      کارهای آزمایشگاهی، اضافه شده در 2012/03/11

      Matlab - آزمایشگاه ماتریس - سیستم برنامه نویسی محاسبات علمی و فنی. ویژگی های ورودی بردارها ماتریس های خاص، دستورات ساده. مثال های ساده ای که کارایی Matlab را نشان می دهد. روش گرافیکیحل معادلات

      چکیده، اضافه شده در 2010/01/05

      ایجاد برنامه: نوار پیشرفت، محاسبه با فرمول، آرایه دو بعدی، ماشین حساب، پخش کننده رسانه، آرایه 1 بعدی، فهرست، ویرایشگر متن. ایجاد کنترل کننده رویدادهای مختلف توسعه یک صفحه نمایش اسپلش، یک پنجره ورود رمز عبور و فرم اصلی.

      کارهای آزمایشگاهی، اضافه شده در 1394/01/22

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

    ساخت یک رابط گرافیکی در سیستم متلب


    معرفی

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

    ریاضیات و محاسبات؛

    توسعه الگوریتم ها؛

    · آزمایش محاسباتی، مدل سازی شبیه سازی، نمونه سازی.

    تجزیه و تحلیل داده ها، تحقیق و تجسم نتایج؛

    علمی و گرافیک مهندسی;

    · توسعه برنامه های کاربردی، از جمله رابط کاربری گرافیکی.

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

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


    سی ردا سیستم های متلب

    محیط سیستم متلبمجموعه ای از واسط هایی است که کاربر از طریق آن با این سیستم ارتباط برقرار می کند. اینها عبارتند از: گفتگو از طریق خط فرمان یا رابط گرافیکی، مرور فضای کاری، ویرایشگر و دیباگر فایل های M، کار با فایل ها و پوسته DOS، صادرات و واردات داده ها، دسترسی تعاملی به اطلاعات پس زمینه، تعامل پویا با سیستم های خارجی مایکروسافت کلمه , مایکروسافت برتری داشتناین رابط ها از طریق پنجره فرمان، نوار ابزار، فضای کاری و سیستم های مشاهده مسیر دسترسی، ویرایشگر/اشکال زدای فایل M، منوهای ویژه پیاده سازی می شوند.

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

    دو نوع فایل m در سیستم Matlab وجود دارد:

    اسکریپت ها - نشان دهنده دنباله ای از دستورات (نماینده رویه ها).

    تابع - توابعی با آرگومان های ورودی و پارامترهای خروجی (مقادیر تابع) هستند.

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

    تمام این مشکلات و سایر مشکلات را می توان با استفاده از یک رابط کاربری گرافیکی حل کرد. (GUI – GraphicalUserInterface)

    اصول اولیه ساخت یک رابط گرافیکی

    استفاده از یک رابط گرافیکی به کاربر این امکان را می دهد که برنامه را متنوع تر کند.

    مانند هر فرآیند طراحی، فرآیند ساخت یک رابط کاربری گرافیکی را می توان به مراحل زیر تقسیم کرد:

    1. بیان مشکل،

    2. ایجاد فرم رابط و ایجاد کنترل بر روی آن.

    3. نوشتن کد برنامه و کد مدیریت رویداد.

    مراحل ساخت رابط کاربری گرافیکی

    1. در مرحله اول، تجزیه و تحلیل کار انجام می شود و تعداد و ترکیب عناصر کنترلی لازم برای حل مشکل تعیین می شود.

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

    می‌توانید با توصیف ویژگی‌های آن‌ها به صورت دستی، مکان را تنظیم کنید و عناصر را تراز کنید، اما برای راحتی و سرعت، از ویرایشگر تراز شی (TheAlignmentTool) و ویرایشگر ویژگی (ThePropertyEditor) استفاده کنید.

    دو راه برای ایجاد فرم و کنترل ها و تنظیم یا تغییر خصوصیات آنها وجود دارد:

    با استفاده از دستور WORKSPACE (یعنی استفاده از دستور محیط عملیاتی MATLAB).

    استفاده از ابزارهای نوار ابزار - مجموعه ای از ابزارها برای ایجاد سریع یک رابط کاربری گرافیکی (TheControlPanel).

    هنگام ساختن کنترل ها به روش اول، استفاده از یک فایل اسکریپت راحت است که در آن با استفاده از دستورات WARKSPACE، ایجاد کنترل ها به صورت متوالی توضیح داده شده و ویژگی های آنها تنظیم می شود.

    این دستورات را می توان هم برای نوشتن کدی که یک رابط کاربری گرافیکی ایجاد می کند و هم برای کنترل ویژگی های کنترل ها از بدنه فایل های m استفاده کرد. به لطف آن می توانیم تصویری از روند محاسبه خود داشته باشیم.

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

    3. در مرحله سوم ایجاد رابط کاربری گرافیکی (GUI)، کد برنامه محاسباتی اصلی و کد مدیریت رویداد نوشته می شود.

    کد برنامه محاسباتی اصلی به زبان برنامه نویسی محیط عملیاتی Matlab در قالب فایل m نوشته شده است. فایل های m ایجاد شده به رویداد کنترل یا فرمی پیوست می شوند.

    هنگام توصیف ویژگی های کنترل ها، رویدادها در یک فایل m شرح داده می شوند:

    الف) یا هنگام ایجاد هر کنترل، ویژگی های آن را توصیف می کنیم و بلافاصله اقدام رویداد را توصیف می کنیم.

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

    شروع مراحل ایجاد رابط کاربری گرافیکی

    ویرایشگر GUIDE (دستی) با دستور راهنما از پنجره فرمان یا با اجرای زنجیره ای از دستورات از منوی اصلی File (File) - New (New) - GUI (Graphical Interface) فراخوانی می شود.

    دو صفحه موجود در صفحه شروع (شکل 1) به شما امکان می دهد طراحی یک رابط جدید را شروع کنید (برگه - CreateNewGUI، (ایجاد یک رابط جدید)) یا از یک رابط ایجاد شده قبلی استفاده کنید (برگه - OpenExistingGUI (باز کردن یک رابط موجود)) . واقعیت این است که شرح فرم درخواست به همراه اجزای رابط قرار گرفته بر روی آن را می توان در یک فایل با پسوند fig ذخیره کرد. اگر چیزی شبیه به برنامه آینده ما روی دیسک ذخیره شود، می توان از فایل موجود برای صرفه جویی در زمان استفاده کرد.

    Initial GUI Builder (GUIDE) (شکل 1)

    از من خواسته شد تا برنامه‌ای را در نظر بگیرم که بسته به خط انتخابی منوی کشویی، نمودار یکی از پنج تابع را ارائه می‌کند.

    پنجره ویرایش فرم (شکل 2)


    پنجره ویرایش فرم m-code (شکل 3)

    این کدی است که رفتار فرمی را که ذخیره کرده ایم توصیف می کند. این شامل رویه ها و عملکردهایی است که فرم را قابل اجرا می کند.


    پنجره برنامه راه اندازی شده برای اجرا (شکل 4)

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

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

    الگوریتم ایجاد رابط

    1. با کنترل پنل تماس بگیرید.

    1) یک فرم رابط جدید ایجاد کنید یا یک فرم موجود را بارگیری کنید.

    2) به حالت ویرایش فرم بروید.

    3) کنترل های لازم را روی فرم بکشید.

    2. با ویرایشگر اموال تماس بگیرید.

    2) خاصیت مورد نظر را انتخاب کرده و تغییر دهید.

    3. با ویرایشگر رویداد تماس بگیرید.

    1) یک عنصر کنترل را انتخاب کنید.

    2) کد مدیریت رویداد را بنویسید.

    4. ویرایشگر تراز شی را فراخوانی کنید.

    1) یک عنصر کنترل یا گروهی از عناصر را انتخاب کنید.

    2) روش تراز را انتخاب کنید.

    5. به پنجره کنترل پنل بروید و رابط را فعال کنید.

    ادبیات

    1. دیاکونوف، V.P. MATLAB 6.5 SP1/7 + Simulink 5/6 در ریاضیات و مدل سازی / V.P. دیاکونوف. - M.: SOLON-Press, 2005. - 576 p.

    2. دیاکونوف، وی.پی. MATLAB 6.5 SP1/7 + Simulink 5/6. مبانی کاربرد / V.P. Dyakonov - M.: SOLON-Press، 2005. - 800 p.

    3. دیاکونوف، وی.پی. MATLAB 6.5 SP1/7 + Simulink 5/6. کار با تصاویر و جریان های ویدئویی / V.P. دیاکونوف. - M.: SOLON-Press, 2005. - 400 p.

    4. Ermachkova Yu.A. طراحی رابط در محیط GUIDEMATLAB / Yu.A. Ermachkova // فناوری اطلاعات مدرن در اقتصاد، مدیریت و آموزش. مجموعه مطالب کنفرانس علمی و عملی بین دانشگاهی که به 175 سالگرد همکاری مصرف کنندگان در روسیه و پنجمین سالگرد تاسیس شعبه اختصاص دارد. - M .: مرکز اطلاعات و پیاده سازی "بازاریابی"، 2006. - ص 35-37.


    کاربرد

    تابع varargout = kursovaya(varargin)

    % KURSOVAYA M-فایل برای kursovaya.fig

    % KURSOVAYA به خودی خود یک KURSOVAYA جدید ایجاد می کند یا موجود را بالا می برد

    % H = KURSOVAYA دسته را به KURSOVAYA جدید یا دسته به را برمی گرداند

    % تک تن موجود*.

    % KURSOVAYA ("CALLBACK"، hObject، eventData، handles،...) محلی را فراخوانی می کند.

    تابع % به نام CALLBACK در KURSOVAYA.M با آرگومان های ورودی داده شده.

    % KURSOVAYA ("Property"، "Value"...) یک KURSOVAYA جدید ایجاد می کند یا باعث افزایش

    % تک تن موجود*. با شروع از سمت چپ، جفت ارزش دارایی هستند

    ساخت رابط کاربری گرافیکی در Matlab


    معرفی

    متلب یک سیستم محاسباتی مهندسی و علمی است. این محاسبات ریاضی، تجسم گرافیک علمی، برنامه‌نویسی و مدل‌سازی فرآیندها را با استفاده از محیطی بصری فراهم می‌کند، زمانی که مسائل و راه‌حل‌های آنها را می‌توان در نمادی نزدیک به ریاضی نشان داد. معروف ترین زمینه های کاربرد سیستم Matlab:

    ریاضیات و محاسبات؛

    توسعه الگوریتم ها؛

    · آزمایش محاسباتی، مدل سازی شبیه سازی، نمونه سازی.

    تجزیه و تحلیل داده ها، تحقیق و تجسم نتایج؛

    گرافیک علمی و مهندسی;

    · توسعه برنامه های کاربردی، از جمله رابط کاربری گرافیکی.

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

    سیستم Matlab هم یک محیط عملیاتی و هم یک زبان برنامه نویسی است. کاربر می تواند توابع و برنامه های تخصصی را بنویسد که به صورت M-فایل هستند. با افزایش تعداد برنامه های ایجاد شده، مشکلاتی در طبقه بندی آنها ایجاد می شود و سپس می توانید سعی کنید توابع مرتبط را در پوشه های خاص جمع آوری کنید. این منجر به مفهوم بسته های کاربردی می شود که مجموعه ای از فایل های M برای حل یک کار یا مشکل خاص هستند.


    محیط سیستم Matlab

    محیط سیستم متلب مجموعه ای از واسط است که کاربر از طریق آن با این سیستم ارتباط برقرار می کند. اینها عبارتند از: گفتگو از طریق خط فرمان یا رابط گرافیکی، مرور فضای کاری، ویرایشگر و دیباگر فایل های M، کار با فایل ها و پوسته DOS، صادرات و واردات داده ها، دسترسی تعاملی به اطلاعات کمکی، تعامل پویا با سیستم های Microsoft Word خارجی، مایکروسافت اکسلاین رابط ها از طریق پنجره فرمان، نوار ابزار، فضای کاری و سیستم های مشاهده مسیر دسترسی، ویرایشگر/اشکال زدای فایل M، منوهای ویژه پیاده سازی می شوند.

    رابط کاربری کاربر پسند است و بر اساس اصول ثابت نرم افزار توسعه یافته برای سیستم عامل ویندوز ساخته شده است.

    دو نوع فایل m در سیستم Matlab وجود دارد:

    اسکریپت ها - نشان دهنده دنباله ای از دستورات (نماینده رویه ها).

    تابع - توابعی با آرگومان های ورودی و پارامترهای خروجی (مقادیر تابع) هستند.

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

    تمام این مشکلات و سایر مشکلات را می توان با استفاده از یک رابط کاربری گرافیکی حل کرد. (GUI - رابط کاربری گرافیکی)

    اصول اولیه ساخت یک رابط گرافیکی

    استفاده از یک رابط گرافیکی به کاربر این امکان را می دهد که برنامه را متنوع تر کند.

    مانند هر فرآیند طراحی، فرآیند ساخت یک رابط کاربری گرافیکی را می توان به مراحل زیر تقسیم کرد:

    1. بیان مشکل،

    2. ایجاد فرم رابط و ایجاد کنترل بر روی آن.

    3. نوشتن کد برنامه و کد مدیریت رویداد.

    مراحل ساخت رابط کاربری گرافیکی

    1. در مرحله اول، تجزیه و تحلیل کار انجام می شود و تعداد و ترکیب عناصر کنترلی لازم برای حل مشکل تعیین می شود.

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

    می توانید مکان را تنظیم کنید و عناصر را در فرم تراز کنید، می توانید ویژگی های آنها را به صورت "دستی" توصیف کنید، اما برای راحتی و سرعت، از Alignment Tool و The Property Editor استفاده کنید.

    دو راه برای ایجاد فرم و کنترل ها و تنظیم یا تغییر خصوصیات آنها وجود دارد:

    با استفاده از دستور WORKSPACE (یعنی استفاده از دستور محیط عملیاتی MATLAB).

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

    هنگام ساختن کنترل ها به روش اول، استفاده از یک فایل اسکریپت راحت است که در آن با استفاده از دستورات WARKSPACE، ایجاد کنترل ها به صورت متوالی توضیح داده شده و ویژگی های آنها تنظیم می شود.

    این دستورات را می توان هم برای نوشتن کدی که یک رابط کاربری گرافیکی ایجاد می کند و هم برای کنترل ویژگی های کنترل ها از بدنه فایل های m استفاده کرد. به لطف آن می توانیم تصویری از روند محاسبه خود داشته باشیم.

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


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

    نقطه ویرگول; برای علامت گذاری انتهای هر خط، کل لیست عناصر را احاطه کنید براکت های مربع، . برای ورود به ماتریس دورر، به سادگی بنویسید: A = MATLAB ماتریسی را که ما وارد کرده ایم نمایش می دهد، A = 16 3 2 13 5 10 11 8 9 6 7 12 4 15 14 1 اگر ماتریسی را وارد کردیم، آنگاه به طور خودکار توسط ما به خاطر سپرده می شود. محیط متلب و ما به راحتی می توانیم ...

    آژانس فدرال آموزش

    موسسه آموزشی دولتی آموزش عالی حرفه ای

    دانشگاه فنی هوانوردی دولتی اوفا

    دپارتمان ابزار دقیق هوانوردی

    رابط سیستم متلب

    رهنمودها

    به کارهای آزمایشگاهی روی رشته ها

    "مبانی کنترل خودکار"

    و "پردازش سیگنال دیجیتال"

    اوفا 2006

    گردآوری شده توسط: V.I. پتونین

    UDC 004.45 (07)

    BBC 32.973.26-018.2 (ya7)

    رابط سیستم MATLAB: دستورالعمل های کار آزمایشگاهی در رشته های "مبانی کنترل خودکار" و "پردازش سیگنال دیجیتال" / Ufimsk. حالت هواپیمایی فن آوری un-t; Comp. در و. پتونین. - اوفا، 2006. - 29 ص.

    دستورالعمل ها شرحی از کار آزمایشگاهی را ارائه می دهند که طی آن دانش آموزان با اصول ساخت و ویژگی های عملکرد سیستم MatLab آشنا می شوند. کاربرد این سیستم برای مدل سازی سیستم های دینامیکی خطی و غیرخطی (Control System Toolbox و بسته های SimuLink) و پردازش سیگنال دیجیتال (پکیج Signal Processing Toolbox) در نظر گرفته شده است.

    طراحی شده برای دانشجویانی که در راستای آموزش فارغ التحصیلان 200100 "مهندسی ابزار" و تخصص 200103 "ابزار هوانوردی و سیستم های اندازه گیری و محاسباتی" هستند.

    Tab. 0. بیمار 7. کتابشناسی: 8 عنوان.

    داوران: Dr. tech. علوم، پروفسور واسیلیف V.I.

    شمرده فن آوری علوم، دانشیار. یولداشبایف ش.آ.

    © ایالت اوفا

    دانشگاه فنی هوانوردی، ۱۳۸۵

    1. هدف کار 4

    2. بخش نظری 4

    2.1. مقدمه 4

    2.2. رابط MatLab 6

    2.3. مطالعه سیستم های ثابت خطی (جعبه ابزار سیستم کنترل) 12

    2.4. مدل سازی سیستم های غیرخطی (بسته سیمولینک) 16

    2.5. پردازش سیگنال دیجیتال (جعبه ابزار پردازش سیگنال) 21

    3. وظیفه 23

    4. شرح تنظیمات آزمایشگاه 24

    5. ترتیب کار 24

    6. الزامات گزارش 24

    7. سوالات امنیتی 25

    مراجع 25

    پیوست 27

    کار آزمایشگاهی

    رابط سیستممتلب

    1. هدف کار

    هدف از این کار:

    1. مطالعه هدف، ترکیب و رابط سیستم MatLAB نسخه 5.X.

    2. آشنایی با نمونه های نمایشی از سیستم MatLAB.

    3. مطالعه بسته های Control و SimuLink (شبیه سازی سیستم های دینامیکی خطی و غیرخطی).

    4. مطالعه بسته سیگنال (پردازش سیگنال دیجیتال).

    2. بخش نظری

    2.1. معرفی

    سیستم MatLAB (مخفف MATrix Laboratory - MATRIX LABORATORY) توسط The MathWorks, Inc. (ایالات متحده آمریکا، نایتیک، ماساچوست) در اواخر دهه 70 قرن بیستم و یک سیستم تعاملی برای انجام محاسبات مهندسی و علمی است که بر روی کار با آرایه های داده متمرکز شده است. این سیستم از یک پردازنده کمکی ریاضی استفاده می کند و امکان دسترسی به برنامه های نوشته شده در آن را فراهم می کند زبان های FORTRAN، C و C++.

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

    هدف اصلی سیستم MatLAB یک آرایه مستطیل شکل است که اجازه می دهد عناصر پیچیده و ورودی ماتریس ها را بدون تعیین صریح اندازه آنها وارد کند. این سیستم به شما این امکان را می دهد که بسیاری از مسائل محاسباتی را در زمان بسیار کمتری از آنچه برای نوشتن برنامه های مربوطه در FORTRAN، BASIC و C لازم است، حل کنید.

    سیستم MatLAB زبان برنامه نویسی خاص خود را دارد که یادآور بیسیک است. برنامه های ضبط سنتی است و بنابراین برای اکثر کاربران رایانه شخصی آشنا است. علاوه بر این، این سیستم امکان ویرایش برنامه ها را با استفاده از هر ویرایشگر متنی آشنا برای کاربر فراهم می کند.

    کار در محیط MatLAB را می توان در دو حالت انجام داد:

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

      با فراخوانی یک برنامه کامپایل شده و ضبط شده بر روی دیسک به زبان MatLAB که شامل تمام دستورات لازم برای ورود داده ها، سازماندهی محاسبات و نمایش نتایج بر روی صفحه نمایش (حالت برنامه) است.

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

    اصلی ترین ویژگی متمایز سیستم، سهولت اصلاح و انطباق آن با وظایف خاص کاربر است. کاربر می تواند هر دستور، اپراتور یا تابع جدیدی را وارد سیستم کند و سپس از آنها به سادگی استفاده از عملگرها و توابع داخلی استفاده کند. در این صورت نیازی به شرح مقدماتی آنها نیست. برنامه ها، توابع و رویه های جدید در سیستم MatLAB به عنوان فایل با پسوند .m ذخیره می شوند. این باعث می شود مجموعه ای از عملگرها و عملکردها تقریباً نامحدود باشد.

    بیش از صد M-فایل با سیستم MatLAB ارائه می شود که شامل نمونه های نمایشی و تعاریف عملگرها و توابع است. این کتابخانه که تمامی فایل های آن کامنت شده اند گنجینه ای واقعی از نمونه های عالی برنامه نویسی به زبان سیستم است. مطالعه این نمونه ها و امکان کار در حالت محاسبات مستقیم، آشنایی با سیستم را برای کاربران علاقه مند به استفاده از محاسبات ریاضی تسهیل می کند.

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