Upload
zander
View
42
Download
9
Embed Size (px)
DESCRIPTION
کارگاه آموزشي: مدلسازي تجهيزات فرآيندي در صنعت نفت، گاز و پتروشيمي توسط کدهاي متن باز. به نام خدا عرض سلام و تشکر از حضور دانشجويان و اساتيد محترم. رضا افضلان هستم، متولد 1356 کارشناس ارشد مکانيک از دانشگاه چمران کارشناس از دانشگاه صنعتي اصفهان - PowerPoint PPT Presentation
Citation preview
1
مدلسازي تجهيزات فرآيندي در کارگاه آموزشي: صنعت نفت، گاز و پتروشيمي توسط کدهاي متن باز
متولد • هستم، افضالن 1356رضاچمران • دانشگاه از مکانيک ارشد کارشناساصفهان • صنعتي دانشگاه از کارشناساز • آموزش بخش در پتروشيمي 1383کارمندمدرک • (LPIداراي لينوکس ) اي حرفهآوران • ره مرکز و دانشگاه در تدريس سابقهمکانيک • دپارتمان مسئولو • افزارها نرم توسعه کارگروه سرپرست
آوران ره در دور راه از آموزش
رزومه خالصه
به نام خداعرض سالم و تشکر از حضور دانشجويان و
اساتيد محترم
.i.... مدلسازي پروژه توسعه اهميت.ii افزار نرم اجزاء
.iii مناسب مدلسازي روش انتخاب
.iv کد کنترل ابزار با آشنايي.v مناسب نويسي برنامه زبان انتخاب
.vi کاريم؟ از اي مرحله چه در.vii با است juliaمدلسازی چگونه
فهرست
Dana Laboratory: An Interview for ISME2014
Dana Laboratory: An Interview for ISME2014
2
جايگHHHHHاه نHرم افHزار مدلسHHHاز در فرآينHد مجموعHHه نHHHHHHHHHرم افزارهHاي
CAPE
Dana Laboratory: An Interview for ISME2014
3
نرم افزارهاي شبيه ساز فرآيند در صنعت بزرگ نفت از جمله نرم افزارهاي بنيادي و زير بنايي به شمار ميآيند، يکی از کاربردهای
طچنين نرم افزارهای توليد سيموالتورهای آموزشی استراحي فرآيند
بهينه سازی فرآيند
سيمولاترهای آموزشی
مونيتورينگ فرآيند
کنتر
ل فرآيند
- کمک به آموزشهاي پايه در مراکز آموزشي و دانشگاهها
- کمک به آموزشهاي اختصاصي
سيموالتورهای آموزشی می توانند کاربردهای گوناگون داشته :باشند
Dana Laboratory: An Interview for ISME2014
4
منظور از سيموالتور آموزشي چيست؟
بHر • عالوه افزارهHا نHرم اين توانHاييH شHبيه HسHازي فرآينHد، اHمکانHاHت ويHژه اي جهت کمHک طHي دانHشHجو مHرHبي HHو HهHب
س فرآهHم مي آورند. Hکالمدلهاي آموزشHي ويHژه جهت •
مفHHاهيم بعHضHHي آمHوزشHHي نHرم اHيHن در HلHبHق اHز خHاHص
اHفHزارHها HتعHريف HشدHه اHسHت.اين نHرم افزارهHا ممکن اسHت •
بHاH اسHتفHادHهH از واسHط کHاHربري يHک HنHرم مشHاHبHه نمادهHاي HاHب
خHاص، HمحيHطي DCSاHفHزاHر مشHابه نHرHم HافHزHار موHنيتورينHگ فHرآHينHد HيHک شHرکت و HکنHترل نمHHايش خHHاصHH Hرا HرکتHHش
دهند.
Dana Laboratory: An Interview for ISME2014
5
کارکرد هاي شبيه سازي در کمک به آموزشهاي پايه در مراکز آموزشي و دانشگاهها
مراکHز آموزشHي ميتواننHد •سHHازي HHيHHک HبيهHHش از ماHننHHد تHجهHHيزHH HفرآينHHدHي H H،رارتيHHHHHحHHHHH دلHHHHHبHم
جهت .H.. و کمHپرسHHوHر ،HردHعملک HوهHنح HشHوزHآمروش H،اکمHHحHH ادالتHHمعمدHلسHازHي يHا ارائHه مثHال کHالس در عHHHHدHدي
استفاده نمايند.مراکHز آموزشHي ميتواننHد •
شHHبHيه مHحيHHط يHHک از سHازHي شHده جهHت ارائHه آHموزشHهاي از Hراه دور يHا بهHره آموزهHا تهيHه HخHود
H.برند
Dana Laboratory: An Interview for ISME2014
6
کارکرد هاي شبيه سازي در کمک به آموزشهاي اختصاصي
جهت • ميتواننHد هHا شرکت بHHا خHHود پرسHHنل HناييHHآششHHبيه از ،HدHHواحHH دHHينHفرآH اHب مطHابق سHازي HفرآينHد،
خHود HعHمجتمH اصHخ HدHرآينHفH.ايندHده نمHاستفا
ميتHوان اثHر تغيHير يHک پHارامتر •رHا بHر عملکHرد يHکH تجهHيز يHا محيHط در HيHک رHا فرآيHنHد بررHسHي شHبيه سHازHي شHده
کرد.يHک • عيب يHک اثHر ميتHوان
تجهHيزH بHر عHملکHرHد فرآينHد را در مHحيHط شHبيهH سHازي شHده نتHايج از و بررسHي HنمHوHد حHاصHل جHهت آمHوزش نحHوه تجهHHHيزات HابيHHHيHHH عيب
اسHتفاده کHرد.
7
1-Achieve valuable experience for being a part of a big community.2-Learning new and useful tools, languages and standards.3-Good resume as a contributor in a live software.4-Learn how to write maintainable codes.
If we work together, with a clear strategy,
we can develop useful engineering softwares.
اساتيد ميتوانند فعاليت هاي علمي و پژوهشي گسترده
تري داشته باشند و صنعت نيز .از حاصل تالشها بهره برد
دانشجويان عالقمند به برنامه نويسی ميتوانند، بهره
بيشتري از تالشهاي خود .برند
Dana Laboratory: An Interview for ISME2014
مشارکت صنعت و دانشگاه در پروژه هاي متن باز ميتواند مزاياي قابل توجهي در توسعه علمي دانشگاهها و توليد نرم افزارهای کاربردی داشته باشد.
Dana Laboratory: An Interview for ISME2014
8
توسHعه نHرم افHزاري بHا عنHوان کلي "شHبيه سHاز فرآينHد" اعتق;اد دارم:ماننHHد فرآينHHدي )بخشHHهاي نفت صHHنعت بHHراي مشHHترکي منHHافع
پااليشگاهها و مجتمع هاي پتروشيمي( و دانشگاه دارد.بررسHي اين منHافع مشHترک بتوانHد منجHر بHه تعريHف پHروژه امي;دوارم:
بتHوانيم جهت و افHزاري گHردد نHرم توسHعه چHنين اي مشHترک جهت مديريت پروژه آدرس و نام مشخص اختصاص دهيم.
ميکنم: حضHوري تالش بHا جلسHاتي پHروژه پيشHرفت بHا متناسHب عالقHه منHدان و مشHارکت کننHدگان تHرتيب داده شHود تHا فعHاليت هHا تنهHا محHدود بHه محيHط اينHترنت نگHردد. بعالوه جهت معHرفي پHروژه و جلب حمHايت حضHور در سHمينارها و همHايش هHا در سHطح دانشHگاه و صHنعت
نفت الزامي مي باشد.
Dana Laboratory: An Interview for ISME2014
9
اجزاء نرم افزار شبيه ساز براساس معادالت
Solver
Server
Client Interfaces
Flow sheet
Models for process equipments
Models for process fluidsData Base of thermo
physical constants
solvesbuildfrom
using
reads
Dana Laboratory: An Interview for ISME2014
10
مدلسHازي چيسHت؟ منظHور از مدلسHازي شHرح عملکHرد يHک تجهHيز يHا يHک فرآينHد بHه زبHان اسHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHت. رياضHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHي
( و Sequentialدو روش اصHلي در مدلسHازي فرآينHد شHامل روشHهاي مرحلHه اي يHا پيوسHته )ميباشHHHHHHند. معHHHHHHادالت اسHHHHHHاس بHHHHHHر مدلسHHHHHHازي روش
Dana Laboratory: An Interview for ISME2014
11
مدلسHازي چيسHت؟ منظHور از مدلسHازي شHرح عملکHرد يHک تجهHيز يHا يHک فرآينHد بHه زبHان اسHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHت. رياضHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHي
( و Sequentialدو روش اصHلي در مدلسHازي فرآينHد شHامل روشHهاي مرحلHه اي يHا پيوسHته )ميباشHHHHHHند. معHHHHHHادالت اسHHHHHHاس بHHHHHHر مدلسHHHHHHازي روش
Dana Laboratory: An Interview for ISME2014
12
...مدلسازي براساس معادالتيک مHدل از مجموعHه اي از •
و متغييرهHHHا پارامترهHHHا، شHHده تشHHکيل معHHادالت
است.هHHاي • ويHHژگي پارامترهHHا،
ثHابت يHک تجهHيز يHا فرآينHد را بHا يعHني ميکننHد. تعريHف پHارامتر، يHک مقHدار تغيHير ميکنHد، تغيHير مHدل مHاهيت بHه عنHوان مثHال تعHداد لولHه از مبHHدل ابعHHاد و هHHا پارامترهHاي مبHدل محسHوب ميگردنHد و نHوع سHيال جHزء پارامترهاي فرآيند ميباشد.
هHHاي • ويHHژگي هHHا متغيHHير کHاري مHدل را بيHان ميکننHد مHدل يHک در ميتواننHد و تغيHير زمHان بHا دينHاميکي زاويHه دريچHه نماينHد، ماننHد
يا دماي سيال
Modeling in EMSO
Dana Laboratory: An Interview for ISME2014
13
...مدلسازي براساس معادالت...مHHدل • رياضHHي معHHادالت
و پارامترهHHا بين ارتبHHاط متغييرها را تعريف ميکنند.
روابHط • اشHيائ بين ميتHوان کHHه نمHHود پيHHدا مختلفي روابHط اين تعريHف امکHان در مدلسHازي بHاعث تسHهيل بHHه ميگHHردد. تعريHHف در عنHوان مثHال يHک انHواعي از پمپ هHا وجHود دارد کHه همHه مشHHترکي هHHاي ويHHژگي و پHHدر )رابطHHه دارنHHد از پکيج يHک يHا فرزنHدي( )رابطHHه سHHري مبHHدلهاي
استفاده(
Dana Laboratory: An Interview for ISME2014
14
مدلسازي براساس معادالت ...معHادالت رياضHي مHدل •
بلکHه نميباشHند ثHابت تغيHير بHا دارد امکHان يHک پارامترهHا بعضHي جHHHايگزين معادلHHHه معادلHه ديگHر گHردد. بHه عنHوان مثHال معHادالت ضHHHHريب مقHHHHدار جريHHان در اصHHتکاک مغشHHHوش و آرام
متفاوت است.بايHد • مدلسHازي زبHان
انHواع تعريHف توانHايي پارامترهHHا متغييرهHHا، فلHHو فشHHار، )دمHHا، و ...( بHا آحHاد مناسHب
را داشته باشد.
Dana Laboratory: An Interview for ISME2014
15
GitHubچيست؟ - بزرگترين سايت به اشتراک گذاري کد ميباشد.1 که يک برنامه متن باز جهت کنترل کدهاي سيستم عامل لينوکس ميباشد، Git- اين سايت بر اساس دستور 2
بنا شده است لذا کليه ويژگي هاي اين نرم افزار را دارد.، امکانات متنوعي در اختيار برنامه نويسان جهت مديريت پروژه،Git- اين سايت عالوه بر ارائه خدمات مبتني بر 3
گزارش عيوب، ويرايش برخط و توليد صفحات اينترنتي جهت معرفي پروژه ميدهد.
GitHubنحوه استفاده از - ايجاد يک حساب کاربري1( به حساب کاربريRepository- افزودن بانک کد )2 ( در پروژه جهت صدور مجوز نوشتن )خواندن آزاد است(Collaborators- تعريف مشارکت کنندگان )3 محلي Git در ابزار Remote به عنوان GitHub- تعريف بانک کد 4local جهت به روز رساني بانک کد از بانک Git- استفاده ازابزار 5
Dana Laboratory: An Interview for ISME2014
16
Git در يک نگاه: در هر گام يک نسخه از کل پروژه برداشته ميشود )نه فقط تغييرات(...
Dana Laboratory: An Interview for ISME2014
17
Git در يک نگاه: ...سه وضعيت متفاوت براي اطالعات تعريف ميشود
Dana Laboratory: An Interview for ISME2014
18
GitHubپيشرفت پروژه در Person A• Setup project & repo• push code onto
github
• edit/commit• edit/commit• pull/push
PersonB
• clone code from github
• edit/commit/push• edit…• edit… commit• pull/push
Dana Laboratory: An Interview for ISME2014
19
... Gitچند فعاليت متداول در • git clone https://github.com/CyndiRader/JavaDemos.git • Create your local repo
– git init– git commit –m “Initial commit”
• Add a “shortname” for your github repository– git remote add [shortname] [url]– git remote add origin https://github.com:[user name]/[repository name].git– Ex: git remote add origin https://github.com:CyndiRader/JavaDemos.git– Hint: You can copy/paste the repo url from github
• Push your code onto github– git push –u [remote-name] [branch-name]. – Ex: git push –u origin master
نسخه برداري از يک بانک کد به ميزباني
GitHub ايجاد يک بانک کد.(Local rep )محلي
ارتباط بانک محلي با يک بانک به ميزباني GitHub (Remote rep.)
به روز رساني بانک Remote
Dana Laboratory: An Interview for ISME2014
20
Git... چند فعاليت متداول در )ادامه(
• To fetch any new files that have been updated since you cloned:– git fetch [remote-name]– git fetch origin
• If you have a “tracked” remote branch, you can get the files and merge in one step:– git pull
• Forking – If you want to contribute to a project but don’t have push access, you
can do a fork… create your own copy. – Main project can pull in those changes later by adding them as
remotes and merging in the code from the fork.
دريافت آخرين Remoteتغييرات از
به روز رساني بانکLocal
در برداري نسخهGitHub
Dana Laboratory: An Interview for ISME2014
21
پس از بررسي اجمالي روشهاي مختلف مدلسازي ميتوان چند ويژگي مهم براي يک زبان مطلوب
مدلسازي را برشمرد.
بايHد تHا حHد امکHان سHاده و نزديHک بHه زبHان انسHان باشHد، بHه طHوري کHه خواننHده بHا •بتوانHد مHدل را تحليHل نمايHد و بHدون تسHلط بHه هHر زبHان برنامHه حHداقل آمHوزش
نويسي توانايي تغيير و اصالح مدل را داشته باشد.داراي دستورات شرطي جهت انتخاب معادالت مناسب در شرايط مختلف.•
نياز است. جهت شرح مدلتعريفي به يک زبان •
شHيء اين زبHان بايHد داري ويHژگي هHاي •مHدلهاي گHرا بين ارتبHاط تعريHف در
مختلف.
Dana Laboratory: An Interview for ISME2014
22
ويژگي هاي مثبت يک زبان برنامه نويسي جهت تحليل مدل ها، انجام محاسبات الزم و توزيع
نتايج روي شبکهسرعت باال، توانايي پردازش موازي•توانمند در تعريف توابع•داراي توانايي سطح باال در محاسبات عددي•روابHط • تحليHل در بHاال سHطح توانHايي داراي
رياضيداراي توانايي سطح باال در کار با رشته ها•تنوع در ساختارهاي داده، بردارها و ماتريسها•کHHHد • توليHHHد در بHHHاال توانHHHايي داراي
(MetaProgramming ايHHHه تحليHHHل و )سيمبوليک
تHرغيب • جهت نHوآوري و جHذابيت سادگي، دانشجويان و پژوهشگران به استفاده
متن باز بون•توانايي توليد اطالعات بر شبکه•
Dana Laboratory: An Interview for ISME2014
23
ويژگي هاي زبان مناسب جهت طراحي واسط کاربري
توانمندي هاي گرافيکي متنوع•بHر • کHار در مناسHب هHاي قابليت
هHHاي عامHHل سيسHHتم و شHHبکه متفاوت
منابع اطالعاتي در دسترس•جهت • الزم مجوزهHHHاي داراي
استفادهمتن باز•متنHHوع • ابزارهHHاي و هHHا کتابخانHHه
ترسيمي
Dana Laboratory: An Interview for ISME2014
24
در چه مرحله اي از کاريم؟روش متن باز جهت توسعه نرم افزار انتخاب شده است.1. جهت به اشتراک گذاري کد ها در نظر گرفته شده است.GitHubسايت 2. نامگذاري شده است.dana-laboratoryپروژه به نام 3. ميباشد.www.dana-laboratory.github.ioسايت پروژه 4. انتخHاب شHده و بانHک مHدلها توسHط يHک EMSO Modeling LanguageزبHان مدلسHازي نزديHک بHه 5.
برگردانده شده است.Juliaبرنامه مترجم به زبان در حHال تکميHل و تسHت IdealGas و Peng-Robinsonجهت مدلسHازي ترموديناميHک مHواد مHدل 6.
ميباشد. انجام شده و در حال تست ميباشد.PRمحاسبات خواص مخلوط ها در مدل 7. استخراج شده است.Perryاطالعات پايه خواص مواد از آخرين اطالعات مندرج در هندبوک 8. اسHتخراج DWSIMبعضHي ثHابت هHاي الزم جهت محاسHبات در مHدلهاي مختلHف از نHرم افHزار 9.
شده و در نرم افزار گنجانده شده است.. يک واسط کاربري جهت تست نحوه اتصال به سرور و انتقال اطالعات طراحي شده است.10 بHراي تحليHل مجموعHه اي از روابHط جHبري خطي و سHاده سHازي معHادالت تسHت Solver. بخش 11
شده است.
Dana Laboratory: An Interview for ISME2014
25
در چه مرحله اي از کاريم؟....آدرس 11 .http://dana-laboratory.github.io/dana-laboratory.jl وانHعن بHه طHور بHه
و افHزودن توضHيحات juliaسHايت اطالع رسHانی سHرور بHا امکانHات مناسHب در نمHایش کHدهای فارسی در نظر گرفته شده.
. تفHاهم نامHه بین شHرکت ره آوران و آزمایشHگاه انHرژی دانشHگاه چمHران جهت حمHایت از پHروژه 12دانا منعقد شده.
و 13 اسHاتيد بHا ماهشHهر، آزاد دانشHگاه مهندسHی شHيمی دانشHکده بHا نامHه تفHاهم . جهت عقHد مديريت اين گروه مذاکره گرديد.
و پروژه دانا تهيه شد julia. دو جزوه آموزشی جهت آشنايی سريع با زبان 14
Dana Laboratory: An Interview for ISME2014
26
دارد به دليل اينکه يک زبان شيئ گرا محسوب juliaبا وجود امتيازاتی که زبان نميگردد برای بارگذاری مدلهای تعريف شده بايد تغييرات مهمی در ساختار
آنها ايجاد نمود:
فاقد نوع داده معادل جهت تعريف مدل ميباشد
مدلها به داده ها و توابع •تقسيم شدند
معادل با هر مدل يک ماژول •ساخته شد
ساختارهای داده در
جوليا مشتق پذير نيستند
با استفاده از انواع انتزاعی داده ها •تنوع در نوع داده ها پياده سازی شد
ارتباط فرزندی در مدلها به نوع •خاص استفاده ای تبديل شده
مدلسازی تجهيزات فرآيندی با سهولت انجام ميشود
يک ابزار مترجم جهت تبديل مدلهای تعريف
julia به EMLشده از پياده سازی شد
EMLکليه مدلهای برگردانده juliaبه
و بارگذاری شد
Julia يکزبان شيئ گرا نيست