دانلود کامسول comsol

سازنده‌ی اپ / ساخت یک اپ ساختارمند

اپ خود را کاربرپسند نمایید

مدت زمان: 28:26

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

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

شروع می کنیم. از جمله اجزاء اصلی، ما یک form و یک method داریم. هرچند هرچه که شما قابلیت های بیشتری به اپ تان اضافه می نمایید، شما نیاز دارید که اپ تان را سازمان یافته نگه دارید. یک مکان مناسب برای شروع از طریق Main Window می باشد.

در پنجره تنظیمات ، روی menu type تمرکز می نماییم، و ما می توانیم میان Menu bar، که گزینه پیش فرض می باشد و یک file menu ایجاد می نماید، یا ما می توانیم Ribbon را انتخاب نماییم.(که در واقع یک نوار از گزینه ها را در بالای اپلیکیشن ایجاد می نمایید.)

ما Ribbonرا انتخاب می کنیم.اکنون در زیر گره Main Window ، یک گره ribbon داریم. اکنون یک file menu به ribbon اضافه می نماییم.

حال با اضافه نمودن چند گزینه menu که برای کاربر مفید می باشد، ادامه می دهیم .با این کار، کاربر قادر می شود که اپ شبیه سازی را در وضعیت فعلی اش ذخیره سازی نماید. برای انجام این کار می توانیم روی دکمه Item کلیک نماییم ؛ سپس متن را برای انعکاس قابلیت به روز رسانی نماییم، بنابراین ما Save را وارد می نماییم(2). در مرحله بعد در قسمت آیکون می توانیم یک آیکون را که از پیش در کامسول در دسترس است را انتخاب نماییم(3). سپس در Choose Commands to Run زیر GUI Commands و File

Commands ما می توانیم Save application (4)را انتخاب نماییم و روی run(5) کلیک نماییم.

دوباره روی item کلیک نماییم، متن را به Save As به روز رسانی نماییم، و سپس آیکون را انتخاب می کنیم؛ و زیر File Commands ،GUI Commands ما می توانیم روی Save Application As کلیک نماییم و سپس روی Run کلیک نماییم.

در حال حاضر در اپ ما شما می بینید که دکمه ها در داخل form قرار گرفته اند. هرچند برای بیشتر اپ ها در Application Library شما می بینید که دکمه ها در حقیقت در نوار قرار گرفته اند. بنابراین تغییراتی به منظور مشارکت دادن قابلیت هایی که این دکمه ها دارند به ribbon اپ شبیه سازی، ایجاد می نماییم. در ابتدا نیاز داریم که یک زبانه برای ribbon ایجاد نماییم، بنابراین ما می توانیم روی دکمه Ribbon Tab کلیک نماییم و ما می توانیم نام آن را به Dashboard تغییر دهیم .

در ribbon tab ، دو قسمت برای گروه بندی و سازماندهی دکمه ها به قسمت های جداگانه انتخاب می نماییم. برای ایجاد این دو قسمت روی دکمه ی قسمت Ribbon کلیک می نماییم و نام قسمت اول را simulation قرار می دهیم.

برای قسمت دوم هم ، با کلیک مجدد ، نام documentation را انتخاب می کنیم

در قسمت simulation می خواهیم ،قابلیت به روز رسانی هندسه و Compute مدل را اضافه نماییم. برای اینکار در ابتدا ما simulation را انتخاب می نماییم و سپس یک item به آن اضافه می نماییم. متن را برای Choose تغییر داده ، آیکون را به آیکون هندسه تغییر داده و سپس در قسمت Update Geometry Commands to Run ما می توانیم به قسمت Model Component برویم، گره هندسه را انتخاب نماییم و روی Plots کلیک نماییم.

می خواهیم اطمینان حاصل نماییم که هندسه در پنجره گرافیکی در form ما ترسیم می شود. بنابراین می توانیم آرگمان های edit Box را انتخاب نماییم. در پنجره باز شده،در زیر graphics1، form1 را انتخاب می کنیم.

و اگر ما روی دکمه ی Update Geometry کلیک نماییم ، در پنجره سمت راست، می ببینیم که قابلیت اضافه شده است.

اکنون برای دکمه ی Compute مراحل را تکرار می کنیم. بنابراین دوباره در زیر قسمت simulation، Ribbon یک item را اضافه می نماییم. متن را به Compute تغییر داده و آیکون متناظر را وارد می نماییم؛ سپس در زیر Methods، ما می توانیم ما می توانیم 1 method را انتخاب نماییم؛ و سپس روی Run

کلیک نماییم. (این متد در آموزش قبل ایجاد شده است.)

در آخر در قسمت documentation ، می خواهیم یک item اضافه نماییم تا report ایجاد نماییم.برای اینکار ، یک item دیگر اضافه می نماییم و text را بهCreate Report تغییر می دهیم. آیکون را به results 32 report تغییر داده و سپس در Model Component می رویم و گره Results و سپس reports را توسعه داده و 1 Report را انتخاب می نماییم و در نهایت روی Run کلیک می نماییم

در بسیاری از اپ های Application Library معمولاً یک دکمه برای باز کردن یک سند PDF که شامل راهنمایی های مفید یا دستور العمل های چگونگی استفاده از اپ می باشد، وجود دارد. اکنون سع می کنیم که این مورد را در شبیه سازیمان اضافه نماییم، در ابتدا یک جداکننده اضافه می نماییم و سپس یک item دیگر اضافه می نماییم. اجازه دهید که نام این item را App Manual قرار دهیم. و برای آیکون ما می توانیم از آیکون PDF استفاده نماییم.

قبل از ادامه این قسمت نیاز داریم فرمان اجرایی را تعیین نماییم. در ابتدا نیاز داریم که PDF شامل مدل و دستورالعمل App را به کتابخانه یمان اضافه گردانیم. شما تنها نیاز دارید که به فولدر مناسب راهبری نمایید، تا PDF را انتخاب نمایید و آن را به کتابخانه اضافه نمایید.(فایل pdf مورد نظر را انتخاب کنید)

در اینجا ما می توانیم به App Manual بازگردیم و زیر open file ، GUI Commands را انتخاب می نمایید، run را کلیلک کرده و سپس برای arguments ، فایل PDF که ما اضافه نموده ایم را انتخاب می کنیم.

بنابراین زمانی که یک کاربر روی دکمه ی App Manual در نوار کلیک می نماید، فایل PDF باز می گردد. در ما همه دکمه ها را در نوار تعریف کرده ایم ، پس می توانیم از اینجا حذف نماییم.

اکنون اگر اپلیکیشن را تست نمایید می بینید که همه ی قابلیت ها در زبانه داشبورد Ribbon قرار گرفته است:

اکنون تمام کار های گذشته را انجام دهیم؛ می توانیم هندسه را به روز رسانی نماییم، مدل را Compute نماییم، یک گزارش ایجاد نماییم و دستورالعمل های شبیه سازی اپ را باز کنیم. در گزینه جدید(PDF)، اگر روی آن کلیک نماییم ، یک فایل Help(که از قبل تعریف کرده بودیم)، به صورت PDF باز می شود.

توجه نمایید که اگر سعی کنیم که اندازه اپ شبیه سازی را تنظیم نماییم، می بینیم که تنظیم نمی شود.( نسبت به تغییر اندازه ، اجزا ثابت هستند.)

می توانیم از برخی ویژگی ها برای رفع این مشکل استفاده نماییم. قابلیت ها و قیدهایی وجود دارند که به اپ ما ساختار می دهند و هندسه را منظم می کنند. ما دو گزینه برای این داریم، حالت Sketch و حالت gride. حالت Sketch برای زمانی که شما می خواهید form های مختلفی داشته باشید.همچنین می توانیم از خطوط شبکه(show Grid lines) استفاده نماییم و اطمینان حاصل نماییم که المان ها در یک ردیف قرار گرفته اند. همچنین می توانیم باگزینه (form ،)Arrange را در موقعیتی که می خواهیم قرار دهیم. اما اگر می خواهید یک اپ ساختارمند تر ایجاد نمایید و اپ پاسخده باشد ،باید از حالت grid استفاده نماییم.

به منظور آنکه اپ ما پاسخده باشد می توانیم بعضی از این ستون های اضافی را در شبکه مان پاک نماییم(شماره1) و همچنین برخی ستون ها در جهت افقی رشد کنند.(2)(یعنی هنگام تغییر اندازه پنجره آن ها نیز در آن جهت تغییر کنند)

و یا ردیف ها در جهت عمودی رشد کنند

همچنین می توانیم شبکه ای را که انتخاب می کنیم به صورت افقی و عمودی پر شود :

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

در اینجا بدنه ی اپ ما ساختار گرفته است و اندازه ی آن قابل تغییر می باشد. اما تفکیک کردن میان itemها دشوار می باشد. پس سعی می کنم رابط کاربری را در ادامه، منظم تر نماییم. زمانی که form های بیشتر و بیشتری اضافه می نماییم، Subformها نقش مهمی ایفا می نمایند.

در زیر قسمت دکمه insert Objects درقسمت Subforms ما formها، form Collectionها، card stacks و همچنین information card stacks را داریم که در composite grouping قرار دارند.(قابلیت های سود مندی که برای ساخت اپ از ابتدا ، سودمند می باشند.)

اما در عوض ایجاد یک form از پایه(به جای استفاده از گزینه های بالا)، روند زیر را در ادامه می دهیم .می توانیم از کلیدهای control و shift استفاده نماییم، و چند تا شئ مشخص شده را انتخاب نماییم و سپس روی extract subform کلیک کنیم.

و این form دومی در اپ ما ایجاد می نماید. اگر ما به گره 1 form بازگردیم شما می بینید که اکنون که یک form ایجاد گردیده است.

و به محض اینکه ما شروع می کنیم form های دیگر را انجام دهیم نامگذاری مجدد آنها مفید می باشد. (تا با یکدیگر اشتباه نشودند.) بنابراین این که شما روی کدام قسمت کار می کنید واضح می شود. 1 form را به main تغییر نام دهیم چرا که این form اصلی می باشد. و به همین صورت برای main ،name را وارد می نماییم، اما با حرف کوچک m. توجه نمایید انجام این کار ارتباط بعضی از آرگمان های ما را به Commands برای اجرا قطع می نماید. برای مثال اگر ما به Update Geometry ،item بازگردیم شما اینجا می بینید که command زیر 1 form روی Plot geometry قرار شده است. چون که ما نام را تغییر می دهیم ما نیاز داریم که آرگومان را تغییر دهیم و این را به منظور قرار گرفتن زیر main form در پنجره 1 Graphics به روز رسانی می نماییم.( این موضوع دارای اهمیت است ؛ زیرا ممکن است تغییر نام ، ارتباط را بعضی قسمت ها را با یکدیگر ، از بین ببرد.)

ما همچنین می خواهیم method1 را تنها برای آنکه شرح بهتری بدهد، نام گذاری مجدد نماییم بنابراین ما می توانیم نام را از method1 به compute_method تغییر می دهیم.(توجه نمایید بین دو قسمت حتما از “_” استفاده نمایید.)

زمانی که یک اپ را توسعه می دهیم بهترین روند آن است هر چه زودتر formها و subformها را تغییر نام دهیم. این کار از لزوم، به روز رسانی arguments در توالی command و به روز رسانی هر form که ارتباطش قطع می شود جلوگیری می نماید.

در حال حاضر output format ، در رابط کاربری اپ شبیه سازی ما وجود دارد، اما لزوماً در بهترین مکان نیست. چرا که این گزینه تنها زمانی که یک کاربر می خواهد یک گزارش ایجاد نماید نیاز می باشد . برای رفع این قضیه که تنها زمانی که کاربر روی دکمه Create Report کلیک می کند، ظاهر شود ، می توانیم یک جعبه dialogue ایجاد نماییم. برای شروع این فرآیند اجازه دهید به report format باز گردیم . اکنون به حالت sketch تغییر حالت می دهیم (به خاطر داشته باشید که شما تنها به یکی از حالت های sketch یا grid محدود نیستید. شما می توانید از هر دو آنها استفاده نمایید.) . در ابتدا ما می خواهیم یک دکمه برای پنجره محاوره ایجاد نماییم، بنابراین زیر insert object، اجازه دهید روی Button کلیک نماییم، و ما text آن را به OK تغییر می دهیم. و برای Comments to run می توانیم به Model Component برویم،

زیر results، و زیر Report1 ،Reports را انتخاب می نماییم و سپس روی Run کلیک می نماییم.

همچنین برای پنجره محاوره می خواهیم که بسته شود:

اکنون یک دکمه دیگر اضافه می نماییم. این بار text را به Cancel تغییر می دهیم. و تمام آن چیری که ما می خواهیم برای پنجره محاوره ای اتفاق بیفتد این است که بسته شود. بنابراین این کار به خروج کاربران ما اگر آنها به صورت اتفاقی روی دکمه ی generate report کلیک کردند، منجر می شود.

اکنون قبل از آنکه ادامه دهیم و این قسمت را به اتمام برسانیم. یک تنظیم دیگری وجود دارد. می خواهیم در settingd برای این form در قسمت dialog setting ، تنظیمات را در قسمت store changes به immediately to تغییر دهیم.

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

اکنون اجازه دهید به main form باز می گردیم . این قسمت از form (قسمتی که در بالا تنظیمات را انجام می دادیم)را پاک می گردانیم.

در Create Report می خواهیم این command را برای اجرای گزارش حذف نماییم .

در عوض در زیر شاخه ی forms ، می توانیم report_format را انتخاب نماییم، و سپس آن را اضافه نماییم.

اکنون اگر برنامه را اجرا نماییم و create report را انتخاب نمایید، می بینید که جعبه ی محاوره ای ظاهر می گردد و ما می توانیم در آن format را انتخاب نماییم. اگر ما روی Cancel کلیک نماییم جعبه محاوره ای باز بسته می شود و اگر ما روی Microsoft Word کلیک می نمودیم و روی OK کلیک می کردیم، یک گزارش به صورت خودکار ایجاد می گردد.

بنابراین اجازه دهید form های باقیمانده در اپ مان را سازماندهی نماییم و به آنها ساختار بدهیم. شما می توانید ببینید که ما هنوز چندین ورودی و یک خروجی داریم.

می توانیم این form ها و نمایش آنها را با بیرون کشیدنشان به صورت زیرفرم های جداگانه و سپس استفاده از یک form Cllection سازماندهی نماییم. برای اینکار یک subform برای ورودی ها با انتخاب همه ی سلول ها مربوط به ورودی و سپس کلیک روی extract subform ایجاد می نماییم.

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

اکنون ما می توانیم form ،titlt را به inputs تغییر دهیم و همچنین اسم را تغییر دهیم.

اجازه دهید به main form باز گردیم و ما همچنین می توانیم این کار را با خروجی ها انجام دهیم. سلول های خروجی را در شبکهمان انتخاب نماییم، subform را استخراج نماییم.

و ما می توانیم title را به outputs و همچنین نام را تغییر دهیم.

در این اینجا ما می توانیم به main form برویم و formها را حذف نماییم. همچنین از دست ستون ها و ردیف های اضافی خلاص شویم

اکنون form Collection را انتخاب می نماییم:

در پنجره تنظیمات در زیر قسمت panes، ما می توانیم ورودی ها و خروجی ها را به عنوان تکه هایی انتخاب نماییم و سپس نوع نمایش را که می خواهیم به sections تغییر دهیم.

برای آنکه ، برنامه واضح تر باشد ، چند تا عنوان(Title) اضافه می نماییم. در ابتدا، یک ردیف دیگر اضافه می نماییم و در اینجا من بک Lable متنی اضافه می گردانیم؛ ما متن را به Simulation Data تغییر می دهیم؛

همچنین عنوان دیگر اضافه نموده و متن را به Graphics تغییر می دهیم:

می خواهیم ظاهر متن را عوض کنیم؛ یک راه خوبی که در اینجا استفاده می نماییم، این است که هر دو جعبه ی متن را انتخاب می نماییم. سپس color را به custom color تغییر می دهیم و blue را انتخاب می نماییم. همچنین می توانیم فونت را به Vera تغییر داده و اندازه فونت 12 را انتخاب نماییم. و شما می بینید

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

همچنین برخی تغییرات برای قرار دادن فاصله میان متنها و عناصر پایین آنها، ایجاد می نماییم. برای اینکار ،یک ستون میانsimulation Data و Graphics قرار می دهیم و سپس سلول ها را merge(ادغام) می نماییم.

اما اکنون ما نمیتوانیم آن را ببینیم چرا که جهت روی Horizontal قرار گرفته است. بنابراین اجازه دهید این را به Vertical تغییر دهیم و شما میتوانید آن را ببینید.

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

در نهایت اجازه دهید نگاهی به card stock ها خواهیم داشت. همان گونه که پیش از این اشاره شد دو نوع card stock در دسترس میباشد: card stock عادی که انعطاف پذیر است و قابلیت ویژه سازی دارد. و information card stock که ساخت آنها ساده تر میباشد. برای نشان دادن این قابلیت ، میخواهیم به کاربر اطلاع دهیم، آیا شبیه سازی با توجه شرایطی که ما در روش مان تعیین نموده ایم، با موفقیت انجام شده

است یا خیر؟

اگر حداکثر دما زیر 500 کلوین قرار گیرد شبیه سازی موفقیت آمیز بوده و اگر دما از این حد تجاوز کند شکست خورده است. بنابراین قبل از اضافه نمودن یک card stock ما نیاز داریم که یک عکس علامت کنترل در کتابخانه یمان به منظور نشان دادن موفقیت شبیه سازی اضافه نماییم. برای انجام این کار ما میتوانیم به گره images برویم و ما میتوانیم روی Add Files to Library کلیک نماییم و شما میتوانید ببینید که ما تعداد زیادی آیکون و عکس در دسترس داریم. ما از 32_check استفاده می نمایم و آن را به منظور اضافه شدن به open ،Library نمایم.

و اکنون ما میتوانیم به main ،Form باز گردیم ؛ ابتدا یک ردیف دیگر زیر inputs و outputs قرار می دهیم و در این جا یک information card stack اضافه می نماییم .

در اینجا ما چند information card از پیش ساخته شده برای وضعیت حل داریم که شما میتوانید آن را در بیشتر اپ های Application library پیدا نمایید هرچند که الان میخواهیم یک custom card تعریف نماییم. بنابراین روی گزینه + کلیک مینماییم و آیکونی که ما میخواهیم استفاده نماییم موردی است که ما پیش از این اضافه نمودیم، 32_check. و برای text اجازه دهیم وارد نماییم The temperature falls” custom card کلیک مینماییم. همچنین میخواهیم یک OK و روی ” within the 500k threshold دیگر وارد نماییم، این بار مشخص نماییم که چه زمانی شبیه سازی باشکست مواجه میشود. بنابراین میتوانیم از error استفاده نماییم و متن را برای گفتن” The Temperature has exceeded 500 k threshold”تغییر دهیم. در نهایت روی ok نماییم.

و آن برگ اعلانها اضافه گردیدهاند:

اکنون نیاز داریم که میان اعلانها و زمانی که آنها نمایش داده میشوند تفاوت قائل شویم.

در اینجا میخواهیم از Declarationها استفاده نماییم.Declaration ، ابزاری برای اعلان پیام می باشد برای مثال در صورتی که نیاز داشته باشیم که یک منبعی ایجاد نماییم که به information card stack بگوید، شبیه سازی موفقیت آمیز بوده یا خیر؛ این جا، جایی است که Declarationها به کار میآیند.

به خاطر اینکه نوع جواب، یک بله/خیر میباشد ، میتوانیم از scaler استفاده نماییم و یک Boolean اضافه نماییم. در حالت پیشفرض نام bvar ،Boolean میباشد اما میتوانیم نام متغییر را تغییر دهیم تا توصیف بهتری باشد. آن را btemp می نامیم، که b را از اول Boolean گرفته ایم. میتوانیم مقدار اولیه را true

قرار دهیم.(مطابق شکل زیر)

اگر به information card stack بازگردیم میتوانید زیر declarations ببینید ما قادریم متغییر bTemp را وارد و از آن به عنوان sourceمان استفاده نماییم. اکنون میخواهیم مشخص کنیم که کی هر information card ظاهر گردد. بنابراین متن custom1 را به true و custom2 را به false تغییر میدهیم.

اکنون میخواهیم از این در compute methodمان استفاده نماییم. بنابراین در اینجا درجملهی if-else مان میتوانیم به انتهای قسمت if برویم و یک خط وارد نماییم، و اگر پنجره editor tools را باز نماییم میتوانیم در Boolean ،declarations رفته و bTemp را انتخاب نماییم و روی set کلیک نماییم و مقدار را روی پیشفرض True باقی بگذاریم. سپس در قسمت else ، دوباره میتوانیم روی set کلیک نماییم، اما اینبار آن را به false تغییر میدهیم.

خوب ، اکنون ،اگر حداکثر دما زیر 500 کلوین قرار گیرد برگ اعلان، موفقیت نمایش داده میشود، در غیر این حالت ، پیام عدم موفقیت صادر می شود.

اکنون که ما نشان دادیم، چگونه information cardها کار میکنند، در نهایت ببینیم که card stack عادی به چه صورت میباشد. برای اینکار، ابتدا، یک ردیف دیگر زیر information card stackمان اضافه مینماییم. و در اینجا زیر insert object میتوانیم یک card stack عادی را وارد نماییم. این مشابه یک information card stack کار میکند، به جز اینکه، وقتی شما روی Add card کلیک مینمایید این گزینه یک form کاملاً جدید اضافه مینماید. در نهایت روی OK کلیک نموده و سپس آن را edit می نماییم.

شما میبینید که این ما را به یک زبانه form جدید میآورد، و این فرم تنها در داخل card stack موجود میباشد.

بنابراین در card stackهای عادی شما میتوانید به هر تعداد که میخواهید form object اضافه نمایید، در حالیکه در information card stackها شما محدود به نمایش یک عکس همراه متن هستید. اکنون میدانید که چگونه یک اپ ساختارمند و توصیفگر ایجاد نمایید که فهم و منفعت بردن از آن برای کابرانتان آسان باشد.

0 پاسخ

دیدگاه خود را ثبت کنید

تمایل دارید در گفتگوها شرکت کنید؟
در گفتگو ها شرکت کنید.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *