آموزش زبان STL -دستورات کانتر و دیتابلاک
آموزش زبان STL زیمنس؛ Counter، Data Block و Logic Control
آموزش STL در PLC زیمنس با مثالهای کاربردی
Counter یا شمارنده در PLC برای شمارش رویدادها استفاده میشود؛ برای مثال شمارش تعداد قطعات تولیدشده، تعداد دفعات عبور قطعه از سنسور، تعداد سیکلهای دستگاه یا تعداد دفعات اجرای یک فرآیند.
مقدار Counter مستقیماً داخل ACCU قرار ندارد. هر Counter ناحیه حافظه مخصوص خودش را دارد. بنابراین وقتی از عبارتی مثل C10 استفاده میکنیم، منظور Counter شماره 10 است، نه اینکه مقدار Counter برابر 10 باشد.
برای مثال C10 یعنی شمارنده شماره 10 و ممکن است مقدار فعلی آن 0، 5، 25 یا هر مقدار دیگری در محدوده مجاز Counter باشد.
اگر بخواهیم مقدار فعلی C10 را بخوانیم، از دستور L C10 استفاده میکنیم. در این حالت مقدار Counter شماره 10 از ناحیه Counter خوانده شده و در ACCU1 قرار میگیرد.
دستور فعالسازی Counter
A I0.0 FR C10
در این مثال C10 یعنی Counter شماره 10 و با لبه مثبت سیگنال I0.0 فعال میشود.
خواندن مقدار Counter
L C10 T MW20
مقدار فعلی Counter شماره 10 در MW20 ذخیره میشود.
خواندن مقدار Counter به صورت BCD
LC C10 T MW20
Reset کردن Counter
A I0.1 R C10
با فعال شدن I0.1، Counter شماره 10 صفر میشود.
قرار دادن مقدار اولیه Counter
L C#20 A I0.0 S C10
با برقرار شدن شرط I0.0، مقدار اولیه Counter شماره 10 برابر 20 قرار میگیرد.
شمارش افزایشی
A I0.0 CU C10
اگر Counter شماره 10 در ابتدا مقدار 5 داشته باشد، با یک لبه مثبت مقدار آن به 6 تبدیل میشود.
شمارش کاهشی
A I0.0 CD C10
اگر C10 مقدار 5 داشته باشد، یک لبه مثبت باعث میشود مقدار آن به 4 برسد.
مثال کاربردی شمارش قطعات
A I0.0 CU C1 A I0.1 R C1
در این مثال با هر پالس سنسور روی I0.0، Counter شماره 1 یک واحد افزایش پیدا میکند. ورودی I0.1 نیز به عنوان فرمان Reset استفاده شده است.
Data Block یا DB برای ذخیره اطلاعات موردنیاز برنامه PLC استفاده میشود. در پروژههای صنعتی معمولاً اطلاعات مربوط به یک ماشین، تنظیمات، پارامترها و مقادیر فرآیند داخل DB نگهداری میشوند.
در STEP 7 با دو مفهوم مهم روبهرو هستیم: Shared Data Block و Instance Data Block.
Shared DB میتواند توسط بخشهای مختلف برنامه استفاده شود، در حالی که Instance DB به یک FB مربوط میشود و دادههای همان FB را نگهداری میکند.
باز کردن Data Block
OPN DB10 L DBW0 T MW20
ابتدا DB10 باز میشود، سپس مقدار DBW0 خوانده شده و در MW20 قرار میگیرد.
جابهجایی Shared DB و Instance DB
OPN DB10 OPN DI20 CDB
دریافت طول Shared DB
OPN DB10 L DBLG T MW10
دریافت شماره Shared DB
OPN DB10 L DBNO T MW10
دریافت طول Instance DB
OPN DI10 L DILG T MW10
دریافت شماره Instance DB
OPN DI10 L DINO T MW10
مثال کاربردی Data Block
OPN DB10 L DBW0 T MW20 L DBW2 T MW22
در این مثال DB10 باز میشود و اطلاعات موجود در DBW0 و DBW2 به Markerهای MW20 و MW22 منتقل میشوند.
در STL برنامه معمولاً از بالا به پایین اجرا میشود، اما با استفاده از دستورات Jump میتوان مسیر اجرای برنامه را تغییر داد.
به کمک Jump میتوان بر اساس وضعیت ورودیها، نتیجه محاسبات، Overflow یا وضعیت BR تصمیم گرفت که کدام بخش برنامه اجرا شود.
Label چیست؟
Label یک نام برای مشخص کردن مقصد پرش است. مثلاً:
NEXT:
در این مثال NEXT نام Label است و هر دستور Jump میتواند برنامه را به این نقطه منتقل کند.
پرش بدون شرط
JU NEXT L 10 T MW10 NEXT: L 20 T MW10
بخش بین JU NEXT و NEXT اجرا نمیشود و برنامه مستقیماً به NEXT میرود.
پرش بر اساس مقدار ACCU
L 1 JL SELECT JU SEG0 JU SEG1 JU SEG2 SEG0: L 10 JU END SEG1: L 20 JU END SEG2: L 30 END: T MW10
پرش در صورت RLO برابر یک
A I0.0 JC RUN JU STOP RUN: L 1 T MW10 STOP: NOP 0
پرش در صورت RLO برابر صفر
A I0.0 JCN OFF L 100 T MW10 OFF: NOP 0
پرش با ذخیره RLO در BR
A I0.0 JCB RUN L 0 T MW10 RUN: L 1 T MW10
پرش در صورت RLO صفر با BR
A I0.0 JNB OFF L 100 T MW10 OFF: NOP 0
پرش در صورت BR برابر یک
A I0.0 SAVE JBI RUN L 0 T MW10 RUN: L 1 T MW10
پرش در صورت BR برابر صفر
A I0.0 SAVE JNBI STOP L 1 T MW10 STOP: NOP 0
تفاوت OV و OS
تفاوت اصلی این است که OV وضعیت Overflow جاری را نشان میدهد، در حالی که OS نتیجه Overflow را به صورت ذخیرهشده نگه میدارد. به همین دلیل ممکن است OV در ادامه یک دستور تغییر کند، اما OS برای نگهداشتن اطلاعات Overflow قبلی مورد استفاده قرار گیرد.
پرش در صورت Overflow
L MW0 L 3 *I JO OVER T MW10 JU END OVER: L 0 T MW10 END: NOP 0
پرش بر اساس Overflow ذخیرهشده
L MW0 L 3 *I JOS OVER T MW10 OVER: NOP 0
پرش در صورت صفر بودن نتیجه
L MW0 L MW2 -I JZ ZERO ZERO: L 0 T MW10
پرش در صورت صفر نبودن نتیجه
L MW0 L 0 -I JN NOTZERO NOTZERO: L 1 T MW10
پرش در صورت مثبت بودن نتیجه
L MW0 L 10 -I JP POSITIVE POSITIVE: L 1 T MW10
پرش در صورت منفی بودن نتیجه
L MW0 L 10 -I JM NEGATIVE NEGATIVE: L 1 T MW10
پرش در صورت مثبت یا صفر
L MW0 L 10 -I JPZ OK L 0 T MW10 OK: L 1 T MW10
پرش در صورت منفی یا صفر
L MW0 L 10 -I JMZ LOW L 1 T MW10 LOW: L 0 T MW10
پرش در شرایط Unordered
L MD10 L 0 /D JUO ERROR T MD14 ERROR: L 0 T MD14
ایجاد حلقه تکرار
L 10 NEXT: L MW10 L 1 +I T MW10 LOOP NEXT
مقدار 10 ابتدا در ACCU-LL قرار میگیرد.
بعد از هر اجرای LOOP، یک واحد از ACCU-LL کم میشود.
تا زمانی که ACCU-LL صفر نشده باشد، برنامه دوباره به Label یعنی NEXT برمیگردد.
بنابراین در این مثال حلقه 10 بار اجرا میشود.
مثال ترکیبی از Jump
L MW10 L 50 -I JM LOW L MW10 L 50 -I JP HIGH JU NORMAL LOW: L 1 T MW20 JU END NORMAL: L 2 T MW20 JU END HIGH: L 3 T MW20 END: NOP 0
در این مثال مقدار MW10 با عدد 50 مقایسه میشود. اگر نتیجه منفی باشد، مسیر LOW اجرا میشود. اگر نتیجه مثبت باشد، مسیر HIGH اجرا میشود. و در صورت صفر بودن نتیجه، برنامه وارد مسیر NORMAL خواهد شد.
خرید و تعمیرات تجهیزات زیمنس
برق موشن ارائهدهنده خدمات فروش، مشاوره، راهاندازی و تعمیرات درایوهای زیمنس است. برای خرید تجهیزات زیمنس یا دریافت خدمات تعمیرات درایو زیمنس، بخش موردنظر خود را انتخاب کنید.
خرید، تعمیرات و اجرای پروژه SIEMENS
جهت خرید HMI زیمنس، PLC زیمنس، اینورتر SIEMENS و سایر محصولات اتوماسیون صنعتی یا برای تعمیرات و اجرای پروژههای اتوماسیون صنعتی زیمنس با برق موشن تماس بگیرید.
فروش محصولات SIEMENS 09331234717 تعمیرات تجهیزات SIEMENS 09011234717 اجرای پروژههای اتوماسیون صنعتی 09381234717HMI BASIC زیمنس چیست؟ معرفی کامل SIMATIC HMI Basic، مدلها، مشخصات و کاربردها HMI BASIC زیمنس یکی از محصولات پرکاربرد خانواده SIMATIC HMI برای ایجاد رابط کاربری بین اپراتور و سیستم کنترل صنعتی است. پنلهای Basic زیمنس برای پروژههایی طراحی شدهاند که به یک رابط کاربری صنعتی، قابل اعتماد و اقتصادی برای کنترل و مانیتورینگ […]
منوال فارسی و کاتالوگ اینورتر INVT GD200A معرفی مشخصات، قابلیتها، ترمینالها و پارامترهای مهم اینورتر GD200A معرفی اینورتر INVT GD200A INVT GD200A یکی از اینورترهای عمومی و پرکاربرد شرکت INVT است که برای کنترل موتورهای القایی طراحی شده است. این درایو به دلیل امکانات مناسب، قابلیت اطمینان، ساختار کنترلی کاربردی و قیمت مناسب در پروژههای […]
ورودی و خروجی دیجیتال و آنالوگ اینورتر INVT GD20 معرفی ترمینالها، پارامترهای P05 و P06 و نحوه استفاده از ورودیها و خروجیهای GD20 ورودی و خروجیهای اینورتر INVT GD20 اینورتر INVT GD20 برای اتصال به تجهیزات کنترلی مانند PLC، سنسورها، شستیها، پتانسیومتر و تجهیزات اندازهگیری دارای ورودیها و خروجیهای دیجیتال و آنالوگ است. در GD20 […]
منوال فارسی و تنظیم INVT GD20 آموزش تنظیم پارامترها، Multi Speed و مشخصات فنی اینورتر INVT GD20 مشخصات فنی اینورتر INVT GD20 اینورتر INVT GD20 یک درایو کنترل دور موتور AC با قابلیت کنترل V/F و کنترل برداری بدون سنسور Sensorless Vector Control است که برای کاربردهای عمومی صنعتی طراحی شده است. این سری در […]
HMI اینوت INVT چیست؟ معرفی کامل سریها، مدلها، مشخصات و کاربردها HMI اینوت INVT یکی از تجهیزات مهم در اتوماسیون صنعتی است که برای ارتباط بین اپراتور، PLC، درایو و ماشینآلات صنعتی مورد استفاده قرار میگیرد. HMI اینوت با فراهم کردن یک رابط گرافیکی به اپراتور اجازه میدهد وضعیت ماشین را مشاهده کرده، پارامترهای فرآیند […]
آموزش آدرسدهی غیرمستقیم در STL زیمنس آدرسدهی غیرمستقیم یا Indirect Addressing یکی از قابلیتهای مهم زبان برنامهنویسی STL در PLCهای زیمنس است. در این روش، بهجای اینکه همیشه آدرس موردنظر را مستقیماً داخل دستور بنویسیم، آدرس یا شماره موردنظر را از یک Pointer، Memory Word یا Register آدرس دریافت میکنیم. آدرسدهی غیرمستقیم در برنامههای پیچیده، […]
نصب درایو های صنعتی درخواست اجرای پروژه مجموعه برق موشن، صفر تا صد خدمات فروش و اجرای پروژه تجهیزات صنعتی همراه با مشاوره کاملا رایگان ارائه میدهد، برای ثبت درخواست تعمیرات، با شماره تلفن 09381234717 تماس حاصل فرمایید 09381234717 نصب اینورتر و نصب درایو صنعتی توسط برق موشن امروزه نصب اینورتر و نصب درایو یکی […]
درایو(اینورتر) چیست؟ در دنیای مدرن اتوماسیون صنعتی، اگر PLC را “مغز” سیستم بدانیم، درایو (Drive)یا همان اینورتر، بدون شک »عضلات هوشمند« این پیکره است. امروز دیگر صرفاً چرخیدن یک موتور اهمیت ندارد؛ بلکه چگونه چرخیدن، با چه سرعتی حرکت کردن و چقدر انرژی مصرف کردن است که تفاوت میان یک کارخانه سنتی و یک واحد […]
l BOP درایو G120 چیست؟ راهنمای کامل BOP-2 زیمنس، دکمهها، قابلیتها و تنظیمات BOP درایو G120 یکی از تجهیزات مهم برای راهاندازی، تنظیم و مانیتورینگ درایوهای سری SINAMICS G120 زیمنس است. BOP که مخفف Basic Operator Panel است، یک پنل اپراتوری است که امکان دسترسی مستقیم به بسیاری از تنظیمات و اطلاعات درایو را فراهم […]
نظری برای این وجود ندارد.