سلام جناب مهندس فانی
قبلا از برنامه کنترل دما مطابق مثال در ورژن 4 studio استفاده کردم و الان در ورژن 5 میخواهم از RAMP_Gen استفاده کنم چگونگی برنامه رو با مثال توضیح میفرمایید
کنترل دما مطابق جدول کاری
-
- کاربر تازه وارد
- پست: 2
- تاریخ عضویت: 18 ژولای 2023, 13:29
- محل اقامت: کرج
- شغل: behandishanco.com
- mahdi.faani
- مدیر انجمن
- پست: 99
- تاریخ عضویت: 14 می 2023, 14:39
- محل اقامت: Tehran
- تماس:
Re: کنترل دما مطابق جدول کاری
عرض ادب و احترام آقای مهندس
RMP_GEN یکی از فانکشن بلاک هایی هست که برای شما سیگنال مد نظرتون را ایجاد میکنه. در واقع در دسته Signal Generator ها قرار میگیره. این اینستراکشن یک جدول نقاط شامل Time و Setpoint را دریافت میکنه و محاسبات مورد نیاز جهت تولید سیگنال Ramp Soak را انجام میده.
نحوه استفاده ش به این شکل هست :
1- ابتدا باید یک User Data Type (UDT) یا همان استراکچر (Structure) بسازید که داخل این UDT باید یک تگ از جنس REAL و یک تگ از جنس TIME قرار داشته باشد. نام UDT اهمیتی نداره که چی باشه اما حتما یک REAL و یک TIME باید داخلش وجود داشته باشه. علاوه بر این دو شما میتوانید تگ های دیگری برای کاربرد های دیگر به تایپ جدید اضافه کنید. اسامی REAL و TIME باید به ترتیب OUT و TMV باشه. دلیلش این هست که RMP_GEN برای عملکرد خودش این دو تگ را نیاز داره و با این نام ها اون تگ ها را سرچ میکنه. مطابق تصویر زیر من یک یوزر تایپ ساختم و نام PID_PRG را برای این یوزر تایپ انتخاب کردم. به تگ های ساخته شده داخل این یوزر تایپ دقت کنید. پس از طراحی یوزر تایپ باید از تولبار بالای ادیتور دکمه Update Interface را بزنید تا دیتا تایپ جدید ساخته شده به عنوان تایپ های قابل استفاده در محیط برنامه ثبت بشه.
2-در این مرحله باید یک آرایه از این یوزر تایپ بسازید. این آرایه در واقع همان جدول نقاط اجرا شونده هستند. این آرایه را باید به ورودی TMV_OUT_S متصل کنید. یک ورودی دیگر به نام TMV_OUT_N وجود دارد که توسط آن میتوانید تعیین کنید که چند سطر (نقطه) از جدول متصل به RMP_GEN اجرا شود. به تصویر زیر دقت کنید. داخل آرایه برای مثال مقادیر Default Value را به صورت دستی تغییر داده ام. اما طبیعتا از طرق برنامه درون PLC نیز قابل تغییر و ذخیره سازی هستند.
با اجرای اینستراکشن RMP_GEN این مقادیر به صورت زیر در خروجی ظاهر خواهند شد:
طبق تصویر بالا، در واقع شما جدولی از نقاط را با Interpolation به هم متصل میکنید
حین اجرای پروسه شما میتوانید زمان باقیمانده از هر مرحله، زمان باقیمانده کل، زمان سپری شده و درصد پیشرفت هر مرحله را در خروجی های RMP_GEN مشاهده کنید.
شما میتوانید توسط ورودی OP_MOD رفتار RMP_GEN را پس از اتمام جدول زمانی تعیین کنید:
Operation mode. 0 = Single run, 1 = Continue last value, 2 = Repeat all
با استفاده از ورودی HOLD میتوانید خروجی را به مدت دلخواه در هر مرحله ای از اجرای پروسه، فریز کنید. به تصویر زیر دقت فرمایید:
همچنین میتوانید حین اجرای پروسه مقدار دلخواهی در خروجی قرار دهید و با برداشتن آن مقدار از روی خروجی، دوباره به حالت قبلی اجرای برنامه برگردید.
در صورت نیاز به اطلاعات بیشتر بخش 3.16 از سیستم منوال را مطالعه بفرمایید یا در صورت هرگونه ابهام سوالات خودتان را در همین فروم مطرح کنید.
RMP_GEN یکی از فانکشن بلاک هایی هست که برای شما سیگنال مد نظرتون را ایجاد میکنه. در واقع در دسته Signal Generator ها قرار میگیره. این اینستراکشن یک جدول نقاط شامل Time و Setpoint را دریافت میکنه و محاسبات مورد نیاز جهت تولید سیگنال Ramp Soak را انجام میده.
نحوه استفاده ش به این شکل هست :
1- ابتدا باید یک User Data Type (UDT) یا همان استراکچر (Structure) بسازید که داخل این UDT باید یک تگ از جنس REAL و یک تگ از جنس TIME قرار داشته باشد. نام UDT اهمیتی نداره که چی باشه اما حتما یک REAL و یک TIME باید داخلش وجود داشته باشه. علاوه بر این دو شما میتوانید تگ های دیگری برای کاربرد های دیگر به تایپ جدید اضافه کنید. اسامی REAL و TIME باید به ترتیب OUT و TMV باشه. دلیلش این هست که RMP_GEN برای عملکرد خودش این دو تگ را نیاز داره و با این نام ها اون تگ ها را سرچ میکنه. مطابق تصویر زیر من یک یوزر تایپ ساختم و نام PID_PRG را برای این یوزر تایپ انتخاب کردم. به تگ های ساخته شده داخل این یوزر تایپ دقت کنید. پس از طراحی یوزر تایپ باید از تولبار بالای ادیتور دکمه Update Interface را بزنید تا دیتا تایپ جدید ساخته شده به عنوان تایپ های قابل استفاده در محیط برنامه ثبت بشه.
2-در این مرحله باید یک آرایه از این یوزر تایپ بسازید. این آرایه در واقع همان جدول نقاط اجرا شونده هستند. این آرایه را باید به ورودی TMV_OUT_S متصل کنید. یک ورودی دیگر به نام TMV_OUT_N وجود دارد که توسط آن میتوانید تعیین کنید که چند سطر (نقطه) از جدول متصل به RMP_GEN اجرا شود. به تصویر زیر دقت کنید. داخل آرایه برای مثال مقادیر Default Value را به صورت دستی تغییر داده ام. اما طبیعتا از طرق برنامه درون PLC نیز قابل تغییر و ذخیره سازی هستند.
با اجرای اینستراکشن RMP_GEN این مقادیر به صورت زیر در خروجی ظاهر خواهند شد:
- خروجی از مقدار 27 ظرف 60 دقیقه به مقدار 400 خواهد رسید
- پس از رسیدن خروجی به مقدار 400، رمپ جدیدی شروع خواهد شد که خروجی را ظرف 45 دقیقه به 1200 خواهد رساند
- پس از رسیدن خروجی به 1200 به مدت 30 دقیقه در همان مقدار باقی می ماند
- پس از طی شدن 30 دقیقه خروجی ظرف 1 ساعت به 1500 خواهد رسید
- پس از رسیدن خروجی به 1500 ، به مدت 5 ساعت در همان مقدار باقی خواهد ماند و در ادامه اجرای جدول به پایان می رسد
طبق تصویر بالا، در واقع شما جدولی از نقاط را با Interpolation به هم متصل میکنید
حین اجرای پروسه شما میتوانید زمان باقیمانده از هر مرحله، زمان باقیمانده کل، زمان سپری شده و درصد پیشرفت هر مرحله را در خروجی های RMP_GEN مشاهده کنید.
شما میتوانید توسط ورودی OP_MOD رفتار RMP_GEN را پس از اتمام جدول زمانی تعیین کنید:
Operation mode. 0 = Single run, 1 = Continue last value, 2 = Repeat all
با استفاده از ورودی HOLD میتوانید خروجی را به مدت دلخواه در هر مرحله ای از اجرای پروسه، فریز کنید. به تصویر زیر دقت فرمایید:
همچنین میتوانید حین اجرای پروسه مقدار دلخواهی در خروجی قرار دهید و با برداشتن آن مقدار از روی خروجی، دوباره به حالت قبلی اجرای برنامه برگردید.
در صورت نیاز به اطلاعات بیشتر بخش 3.16 از سیستم منوال را مطالعه بفرمایید یا در صورت هرگونه ابهام سوالات خودتان را در همین فروم مطرح کنید.
- پیوستها
-
- Capture.PNG
- (90.01 KiB) هنوز دانلود نشده
-
- Capture.PNG
- (96.07 KiB) هنوز دانلود نشده
-
- Capture.PNG
- (159.4 KiB) هنوز دانلود نشده
-
- Capture.PNG
- (73.93 KiB) هنوز دانلود نشده
-
- Capture.PNG
- (81.41 KiB) هنوز دانلود نشده
-
- Capture.PNG
- (34.92 KiB) هنوز دانلود نشده
-
- Capture.PNG
- (154.57 KiB) هنوز دانلود نشده
-
- کاربر تازه وارد
- پست: 2
- تاریخ عضویت: 18 ژولای 2023, 13:29
- محل اقامت: کرج
- شغل: behandishanco.com
Re: کنترل دما مطابق جدول کاری
خیلی عالی بود ممنون از زحماتتون
- mahdi.faani
- مدیر انجمن
- پست: 99
- تاریخ عضویت: 14 می 2023, 14:39
- محل اقامت: Tehran
- تماس:
Re: کنترل دما مطابق جدول کاری
موفق باشید