آموزش زبان STL -دستورات ریاضی و ADDRESS REGISTER
آموزش زبان STL زیمنس؛ دستورات ریاضی، ACCU و Load و Transfer
آموزش STL در PLC زیمنس با مثالهای کاربردی
در این فصل وارد بخش محاسباتی STL میشویم. برای انجام عملیات ریاضی، CPU از رجیسترهای ACCU استفاده میکند. بنابراین درک درست ACCU1 و ACCU2 پیشنیاز کار با دستورات ریاضی است.
وقتی یک مقدار جدید با دستور L وارد میشود، مقدار قبلی ACCU1 به ACCU2 منتقل میشود و مقدار جدید در ACCU1 قرار میگیرد.
یک مثال ساده از ACCU1 و ACCU2
L MW10 L MW12
بعد از دستور اول:
مقدار MW10 داخل ACCU1 قرار گرفته است.
بعد از اجرای دستور دوم:
بنابراین ترتیب نوشتن دستورات L در STL اهمیت زیادی دارد.
جمع Integer
L MW10 L MW12 +I T MW20
اگر MW10 برابر 100 و MW12 برابر 50 باشد، نتیجه 150 در ACCU1 قرار گرفته و سپس در MW20 منتقل میشود.
تفریق Integer
L MW10 L MW12 -I T MW20
اگر MW10 برابر 100 و MW12 برابر 30 باشد، نتیجه برابر 70 خواهد بود.
ضرب Integer
L MW10 L MW12 *I T MW20
تقسیم Integer
L MW10 L MW12 /I T MW20
جمع Double Integer
L MD10 L MD14 +D T MD20
تفریق Double Integer
L MD10 L MD14 -D T MD20
ضرب Double Integer
L MD10 L MD14 *D T MD20
تقسیم Double Integer
L MD10 L MD14 /D T MD20
باقیمانده تقسیم
L 13 L 4 MOD T MD20
Overflow چیست؟
L 30000 L 30000 +I JO OVER
Stored Overflow چیست؟
L MW10 L MW12 +I JOS ERROR
CC0 و CC1
CPU علاوه بر OV و OS، با بیتهای CC0 و CC1 وضعیت نتیجه عملیات ریاضی را مشخص میکند. این وضعیتها برای تشخیص صفر بودن، مثبت بودن یا منفی بودن نتیجه و تصمیمگیری توسط دستورهای Jump اهمیت دارند.
JZ JP JM JPZ JMZ
بنابراین میتوان بعد از یک محاسبه، بر اساس وضعیت نتیجه مسیر اجرای برنامه را تغییر داد.
در این فصل عملیات ریاضی روی اعداد اعشاری یا REAL بررسی میشود. در عملیات دو ورودی REAL نیز ابتدا مقادیر در ACCU1 و ACCU2 قرار میگیرند و سپس عملیات انجام میشود.
جمع REAL
L MD10 L MD14 +R T MD20
تفریق REAL
L MD10 L MD14 -R T MD20
ضرب REAL
L MD10 L MD14 *R T MD20
تقسیم REAL
L MD10 L MD14 /R T MD20
قدر مطلق
L MD10 ABS T MD20
مربع عدد
L MD10 SQR T MD20
جذر
L MD10 SQRT T MD20
تابع نمایی
L MD10 EXP T MD20
لگاریتم طبیعی
L MD10 LN T MD20
سینوس
L MD10 SIN T MD20
کسینوس
L MD10 COS T MD20
تانژانت
L MD10 TAN T MD20
ArcSin
L MD10 ASIN T MD20
ArcCos
L MD10 ACOS T MD20
ArcTan
L MD10 ATAN T MD20
دو دستور بسیار مهم در STL یعنی L و T تقریباً در تمام برنامههای واقعی دیده میشوند.
علاوه بر این دو دستور، در برنامههای پیشرفتهتر با AR1 و AR2 نیز کار میکنیم. Address Registerها برای نگهداری Pointer و انجام آدرسدهی غیرمستقیم کاربرد دارند.
دستور Load
L MW10
خواندن Status Word
L STW T MW20
دستور Transfer
L MW10 T MW20
AR1 و AR2 چیستند؟
AR1 و AR2 دو Address Register در CPU هستند که برای نگهداری Pointer استفاده میشوند. Pointer در اینجا به معنای «آدرس یک داده» است، نه خودِ داده.
به عنوان مثال اگر مقدار معمولی 100 را داشته باشیم، این عدد میتواند یک داده باشد. اما اگر Pointer مربوط به M20.0 را داشته باشیم، معنی آن این است که CPU باید بداند آدرس موردنظر از کجا شروع میشود.
بنابراین یک نکته اساسی را به خاطر بسپارید: AR1 و AR2 برای نگهداری آدرس هستند، نه برای نگهداری مقدار داده.
چرا AR1 و AR2 مهم هستند؟
در برنامههای ساده ممکن است مستقیماً بنویسیم:
L MW10 T MW20
اما فرض کنید بخواهیم روی چندین آدرس پشت سر هم کار کنیم. اگر بخواهیم هر آدرس را جداگانه بنویسیم، برنامه طولانی خواهد شد.
Address Register این امکان را میدهد که یک Pointer را داخل AR1 یا AR2 قرار داده و سپس با استفاده از آدرسدهی غیرمستقیم، به محلهای مختلف حافظه دسترسی پیدا کنیم.
AR1 یا AR2 را میتوان مانند یک «نشانی متحرک» در نظر گرفت. به جای اینکه هر بار آدرس کامل را بنویسیم، Pointer را در Register نگه میداریم و از آن برای دسترسی به داده استفاده میکنیم.
انتقال Pointer به AR1
L P#M20.0 LAR1
یعنی بعد از اجرای LAR1، آدرس Pointer در AR1 ذخیره شده است.
انتقال مستقیم Pointer به AR1
LAR1 MD24
انتقال Pointer به AR2
L P#M40.0 LAR2
انتقال مستقیم Pointer به AR2
LAR2 MD24
انتقال AR2 به AR1
LAR1 AR2
خواندن Pointer از AR1
TAR1 T MD30
ذخیره مستقیم Pointer مربوط به AR1
TAR1 MD24
خواندن Pointer از AR2
TAR2 T MD30
ذخیره مستقیم Pointer مربوط به AR2
TAR2 MD24
جابهجایی AR1 و AR2
CAR
تفاوت دستورات AR1 و AR2
| دستور | عملکرد | مسیر انتقال |
|---|---|---|
LAR1 |
انتقال Pointer از ACCU1 به AR1 | ACCU1 → AR1 |
LAR2 |
انتقال Pointer از ACCU1 به AR2 | ACCU1 → AR2 |
TAR1 |
خواندن Pointer از AR1 در ACCU1 | AR1 → ACCU1 |
TAR2 |
خواندن Pointer از AR2 در ACCU1 | AR2 → ACCU1 |
LAR1 AR2 |
انتقال Pointer از AR2 به AR1 | AR2 → AR1 |
TAR1 AR2 |
انتقال Pointer از AR1 به AR2 | AR1 → AR2 |
CAR |
جابهجایی AR1 و AR2 | AR1 ↔ AR2 |
تفاوت Pointer با Data
یکی از مهمترین نکات Address Register همین تفاوت است:
اگر مثلاً مقدار 250 در MW10 وجود داشته باشد، عدد 250 یک Data است. اما اگر Pointer مربوط به MW10 را داشته باشیم، آن Pointer به CPU میگوید دادهای که میخواهیم به آن دسترسی داشته باشیم در چه آدرسی قرار دارد.
بنابراین AR1 و AR2 بیشتر در برنامههایی کاربرد دارند که آدرسها ثابت نیستند و برنامه باید بتواند به صورت پویا روی بخشهای مختلف حافظه حرکت کند.
مثال ترکیبی Load و Transfer
L MW10 L MW12 +I T MW20
مراحل اجرای این برنامه:
MW10 وارد ACCU1 میشود.
MW12 Load میشود و مقدار قبلی ACCU1 به ACCU2 میرود.
دستور +I دو مقدار را جمع میکند و نتیجه در ACCU1 قرار میگیرد.
با اجرای T MW20، نتیجه ACCU1 در MW20 قرار میگیرد. ACCU1 و ACCU2 در اثر T تغییر نمیکنند.
خرید و تعمیرات تجهیزات زیمنس
برق موشن ارائهدهنده خدمات فروش، مشاوره، راهاندازی و تعمیرات درایوهای زیمنس است. برای خرید تجهیزات زیمنس یا دریافت خدمات تعمیرات درایو زیمنس، بخش موردنظر خود را انتخاب کنید.
خرید، تعمیرات و اجرای پروژه SIEMENS
جهت خرید HMI زیمنس، PLC زیمنس، اینورتر SIEMENS و سایر محصولات اتوماسیون صنعتی یا برای تعمیرات و اجرای پروژههای اتوماسیون صنعتی زیمنس با برق موشن تماس بگیرید.
فروش محصولات SIEMENS 09331234717 تعمیرات تجهیزات SIEMENS 09011234717 اجرای پروژههای اتوماسیون صنعتی 09381234717“` آموزش درایو E دلتا | آموزش تنظیمات و پارامترهای اینورتر Delta E در این بخش آموزش کاربردی درایو E دلتا را مشاهده میکنید. این آموزش برای آشنایی با نحوه تنظیم، راهاندازی و استفاده صحیح از اینورتر Delta E تهیه شده است. اگر به دنبال آموزش درایو E دلتا، تنظیم پارامترهای اینورتر دلتا و آشنایی […]
معرفی ماژول های PLC S7-1200 مشخصات و کاتالوگ PLC S7-1200 زیمنس | ماژول های پی ال سی S7-1200 PLC S7-1200 زیمنس یکی از کنترلرهای پرکاربرد خانواده SIMATIC برای اجرای پروژههای اتوماسیون صنعتی در محدوده عملکرد پایین تا متوسط است. این PLC با طراحی کامپکت، ورودی و خروجیهای یکپارچه، قابلیت توسعه ماژولار و امکانات ارتباطی متنوع، […]
معرفی ماژول EtherCAT اینوت FK1100 ماژول FK1100 اینوت یک کوپلر ارتباطی EtherCAT است که برای ایجاد ارتباط بین شبکه صنعتی و ماژولهای ورودی و خروجی سری Flex اینوت مورد استفاده قرار میگیرد. این ماژول با فراهم کردن ارتباط EtherCAT از طریق دو درگاه RJ45، امکان انتقال داده میان کنترلر و تجهیزات I/O را در یک […]
تنظیمات بوستر پمپ درایو GD270 اینوت؛ راهنمای کامل سیستم دو پمپه تنظیمات بوستر پمپ درایو GD270 اینوت یکی از کاربردهای مهم این درایو در سیستمهای تقویت فشار آب است. در این روش میتوان از یک اینورتر GD270 برای کنترل یک سیستم بوستر پمپ دوپمپه استفاده کرد؛ بهگونهای که یک پمپ بهصورت دورمتغیر توسط درایو کنترل […]
راهنمای فارسی درایو ATV12 راهنمای نصب، تنظیمات، معرفی بردها، کیپد و نکات فنی اینورتر Schneider ATV12 اینورتر اشنایدر ATV12 اینورتر Schneider ATV12 یا Altivar 12 یکی از درایوهای پرکاربرد اشنایدر برای کنترل موتورهای آسنکرون با توان پایین است. این سری با توان تقریبی 0.18 تا 4 کیلووات، ابعاد کوچک، نصب آسان و تنظیمات ساده برای […]
اجرای پروژه های PLC درخواست اجرای پروژه مجموعه برق موشن، صفر تا صد خدمات فروش و اجرای پروژه تجهیزات صنعتی همراه با مشاوره کاملا رایگان ارائه میدهد، برای ثبت درخواست تعمیرات، با شماره تلفن 09381234717 تماس حاصل فرمایید 09381234717 اجرای پروژه PLC | اجرای پروژه پی ال سی در صنایع مختلف توسط برق موشن […]
پارامتر های PID درایو اینوت PID چیست : استفاده از PID درایو اینوت یکی از روشهای کاربردی برای کنترل خودکار فرآیندهای صنعتی است که در آن حفظ یک مقدار مشخص مانند فشار، دبی، سطح، دما یا سرعت اهمیت دارد. PID (Proportional-Integral-Derivative) یک الگوریتم کنترلی است که در PLC، اینورتر و کنترلرهای صنعتی برای حفظ یک […]
درایوهای فانوک یکی از اجزای اصلی در سیستم های کنترل حرکت و ماشین آلات CNC هستند. این تجهیزات وظیفه کنترل دقیق سروو موتور، اسپیندل موتور و محورهای حرکتی دستگاه را بر عهده دارند و مستقیماً روی دقت ماشینکاری، کیفیت سطح، سرعت پاسخ، پایداری حرکت و راندمان کلی دستگاه اثر میگذارند.برخالف درایوهای صنعتی عمومی که بیشتر […]
دانلود منوال و کاتالوگ درایو Bosch Rexroth جایگاه درایوهای بوش رکسروت در اتوماسیون صنعتی شرکت Rexroth Bosch به عنوان یکی از پیشگامان جهان در حوزه فناوری های کنترل حرکت و اتوماسیون صنعتی، با ارائه طیف وسیعی از درایوها و سیستم های کنترل موتور، نقش کلیدی در ارتقای بهره وری و دقت خطوط تولید ایفا میکند. […]
نظری برای این وجود ندارد.