من فضلك ادعم الموقع على جوجل بالضغط على علامة g+1

الأحد، 29 أكتوبر 2017

شرح العمليات الحسابية فى Siemens PLC

الكاتب elec engineer   بتاريخ   9:23 م   statement list

نكمل كورس شرح Siemens PLC S7 300

و موعدنا مع الدرس 12
شرح العمليات الحسابية Mathematical Operations
تنقسم العمليات الحسابية داخل Simatic Manager الى نوعين اساسيين
Integer Functions : اى تتعامل مع الارقام الصحيحة فقط و لا يجوز استخدام ارقام عشرية معها
Floating Point Functions : و هى التى تتعامل مع الارقام العشرية 

شرح Integer Functions

و جميعها تقبل الارقام الموجبة او السالبة
تنقسم الى نوعين حسب حجم البيانات المدخلة و المخرجة
عمليات حسابية بحجم integer : و يتم استخدامها عند التاكد من ان البيانات المدخلة و الخارجة من العملية الحسابية لا تتعدى الذاكرة word اى لا تتعدى 32767 او 32768-
عمليات حسابية بحجم double integer : و تستخدم عندما نحتاج عمليات حسابية لارقام اكثر من 32767 او 32768- حتى حجم ذاكرة double word

العمليات الحسابية integer و double integer


نلاحظ وجود عمليات جمع و طرح و ضرب و قسمة لكلا النوعين integer و double integer


مثال على عملية جمع من النوع integer

EN : عند اعطاء اشارة على EN يتم تشغيل عملية الجمع
ENO : يتم تفعيل ENO عندما تتم العملية الحسابية بدون مشكلة
IN 1 و هى IN 2 الارقام المراد جمعها 


المثال السابق بلغة statement list

تم استدعاء MW 20 على Accu 1
ثم استدعاء MW 22 على Accu 1 و ترحيل MW 20 على Accu 2
ثم عمل عملية الجمع عن طريق الكود +I
هنا + تعنى ان العملية جمع ( طرح تعنى - و قسمة تعنى / و ضرب يعنى * )
علامة I تعنى integer اى ان العملية الحسابية من النوع integer
نلاحظ هنا ان عملية الجمع تتم بدون وجود الشرط EN اى لا تؤثر حالة I 0.0 على العملية
و لاضافة شرط يجب فهم امر Jump اولا و سوف يتم شرحه فى درس اخر و اعادة كتابة امر العملية الحسابية بعد اضافة الشرط EN


مثال على عملية قسمة من النوع double integer

هنا تم استخدام قيمة متغير من Data Block 4 بحجم double word فى IN 1
تم استخدام عدد صحيح يساوى 20 داخل IN 2 و يجب كتابته على الصيغة L#20 ( لايضاح ان الرقم بذاكرة double word )
و تم قسمة الرقم المخزن على DB4.DBD20 على 20 و حفظ الناتج على MD 40
فى حالة القسمة يجب التأكد ان الخرج سيكون رقم صحيح ايضا مثله مثل الدخل
لانه اذا كان الخرج عدد غير صحيح سيعطى CPU رسالة خطا error
لذلك انا كان هناك اى شك ان الخرج سيصبح رقم غير صحيح او ان الدخل سيتم تخزين رقم غير صحيح عليه ,, يجب استخدام عمليات حسابية من النوع floating point functions كما سنرى


المثال السابق بلغة statement list

لاحظ انه تم تحميل DB4.DBD20 على ACCU 2
و تحميل 20 على ACCU 1
ثم قسمة ACCU 2 على ACCU 1
و ارسال الناتج الى MD 40
الرمز / يعنى ان العملية عملية قسمة
الرمز D تعنى ان العملية الحسابية من النوع double integer


العملية الحسابية return fraction double integer

و هذه العملية الحسابية توجد فقط فى double integer

هنا يتم قسمة MD 4 على 6 و يتم حفظ المتبقى من القسمة على DB6.DBD8
مثلا : اذا تم قسمة 10 على 3 تكون الناتج 1 ( و هو المتبقى من 10 بعد قسمة 9 على 3 )


سيتم شرح العمليات الحسابية من النوع Floating Point فى الدرس القادم
شكرا للمتابعة


معلومات كاتب الموضوع

مهندس كهرباء مصرى متخصص فى مجال التحكم الالى
شاهد جميع موضوعاتي: مهندس مصرى

navright

متابعى الموقع

Back to top ↑
كن على تواصل واتصال معنا

احذر.. الموقع محمى بحقوق الملكية الفكرية

© 2013 موقع الهندسة الكهربية . WP Mythemeshop Converted by Bloggertheme9
Blogger templates . Proudly Powered by Blogger .