state logic progamming

32
ك ي ن رو ت كا ي م دسة ي ه ة ث ل ا ث ة ث سThird year ث ع ب ل ا عة ام ج7/5/2014

Upload: nabeelasd

Post on 14-Apr-2017

197 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: state logic progamming

ميكاترونيك هندسة ثالثة سنة

Third year

البعث 7/5/2014 جامعة

Page 2: state logic progamming

(:definitionتعريف)عدد على يعتمد دقيق #سلوب أ هو البرمجة في الحاالت أسلوب أن

نكون , سوف المال سحب ألة ألى ذهبنا اذا فمثال العمليات منالعمليات في التتالي أن اختيارهاعلما يجب حذرة حاالت أمام

: ثم المرور كلمة أدخال ثم البطاقة مسح كالتالي غالبا سيكون. أخراجه ثم المال عد يتم ثم المال كمية تحديد

الحالة :STATEتعريف

النظام فيها يكون التي الوضعية أو الهيئة هي الحالة في المقصود أن. به المتحكم

الحالة :State Diagramمخطط

كتابة في المبرمج تساعد رسوميا طريقة هو الحالة مخطط أنللتنفيذ حاالت عدة يتضمن الذي المنطقية برنامجه العالقة وأيجاد

فعلي برنامج ألى بعد فيما لتحويلها بعضها مع الحاالت تربط التيالواقع أرض على التي , يطبق الحالة أن نرى التالي الشكل في

ألى حالة من واألنتقال دائرة داخل تمثل النظام عندها يكونالحاالت من كل بين يربط قوس أو مستقيم بخط يمثل أخرى

.) الدوائر ) الموجودة . لدينا أكثر الفكرة تتضح سوف التالي المثال نظام (1الشكل)في

حالتين STATE1, STATE2 ذو

STATE

1

STATE

2

A

B

ELSEELSE

Page 3: state logic progamming

األولى الحالة في النظام كان حصل Aوالشرط STATE1أذا قدالثانية الحالة ألى ينتقل سوف النظام لم STATE2عنذئذا اذا أما

الشرط ,Aيحصل والكالم األولى الحالة في النظام يبقى سوفالحالة في النظام كان اذا الشرط STATE2يعاد تحقق عند Bحيث

. األولى للحالة النظام سيعوداذا حيث الغرفة بأضاءة التحكم نظام يشبه السابق الشكل أننظام سينتقل عليه ضغط التشغيل مفتاح ان او ما حركة كشفت

التشغيل حالة ألى ألى, ONاألضاءة للعودة شرط وضع ويمكناألطفاء مرة OFFحالة الضغط او الوقت من ساعة مرور مثال

. التشغيل مفتاح على اخرىفي المبينة األسهم الالزم 2الشكل أن بالشرط ملحقة تكون

سيتم محقق الشرط كان فأذا أخرى ألى حالة من لألنتقالحاله على النظام يبقى سوف وأال األنتقال

off_pushbutton

on_pushbutton

Light

OFF

Light

On

Page 4: state logic progamming

الحالة مخطط كتابة :state diagramمهارة

تعريف في هو الحاالت مخطط كتابة في األساسي الشرط لعلوشروطها حالة كل

الحالة مخطط كتابة قبل طرحها يمكن التي األسألة بعض هناك: علينا األمر تسهل والتي

: النظام صفاتالطبيعي؟ .1 النظام تصرف ماهوالشروط .2 تغير أو الظروف بتغير يتغير النظام سلوك هل

بالنظام؟ المحيطة؟ .3 النظام عليه يسير معين تسلسلي تتابع هناك هل

Example

القهوة لتصنيع نقدية ألة ندرس القارئ على األمور لتبسيط. األلة وضعيات وصف هي الدراسة في األولى الخطوة

) النقود ) ادخال بانتظار خطوة هي العمل فراغ حالة البداية حالةكمية ادخال وعند ادخالها تم التي النقود كمية عرض يمكن حيث

يريده الذي الشراب نوع يختار أن للزبون يمكن الكافية النقود

Page 5: state logic progamming

خاطئ أمر حصول وعند القهوة بتصنيع بعملها األلة ستقوم بعدها. البدائية لحالتها األلة ستعود خطأ أو

The Stateالحاالت:

شيئ – .1 والتفعل نقود على التحتوي األلة الفراغ حالةادخاله .2 تم الذي المجموع وعرض النقود ادخال الثانية الحالة3. (- من الكافية الكمية ادخال بعد وذلك للشراب الزبون اختيار

المال(4.) الشراب –) نوع أختيار بعد األلة قبل من الشراب تجهيز5. (- او الكاسات أو القهوة كمية استنفاذ مثال الطوارئ خدمة

) المصمم قبل من يحدد أخر شئمالحظة:

بتصميم .1 يأخذ ان لمصمم يمكن أي ذاتية الحاالت أنللحاالت السابق اخر في درسناه الذي التصميم غير

وتركيبها .2 األلة خصوصية بحسب الحاالت تؤحذبعين .3 المؤخوذة الحاالت بين وفرق تام وضوح هناك

األعتبار

تغذية الخدمة توفير

reset

النقود سحب

الكوب أزاحة

النقود سحب الكمية كوب ادخال اليوجد

اليوجد قهوة

الطوارئ النقود خدمة أدخالالباقي

األلة علىعملفراغ

القهوة الزبون صنع أختيار

نقود قطعة ادخال

األختيار مفتاح ضغط

Page 6: state logic progamming

(3الشكل)

EXAMPLE:

للمايكروويف الحالة مخطط .MICROWIVEأرسم

يمكن مخطط بداية رسم من نتمكن لكي المايكروف عمل ألية مناقشة: مقبول بشكل له الحالة

للطعام طهو بدون أي فراغ على العمل بحالة المايكرويف يكونالمراد المدة تحديد يتم ثم ومن الطعام ويدخل الباب يفتح ثم

بأن البداية بزر أمر الفرن اعطاء يتم ثم ومن بها الطعام طهيانتهاء , وهي شروط بثالث الطهي عن الفرن يقف الطهي يبدأ

بشكل الباب فتح أو األلغاء زر بكبس أو له المخصصة المدةفجائي .

:THE STATESالحاالت

1.) فراغ ) على العمل حالة حالةالبداية2.) ( التوقيت زر على الضغط عن المستخدم قبل من الوقت تعيين حالة3.) األدخال ) زر على بالضغط التوقيت على األستقرار حالة4.. بالطهي البدء حال

Page 7: state logic progamming

(4الشكل )

الحاالت :State tableجدول

رسم في للمساعدة كتقنية الحاالت جدول يستخدم أن يمكنبعض معقد النظام كان حال في عنه والتعبير الحاالت مخطط

: التالي , المثال في ذلك سنوضخ الشئ في مرور أشارة لدينا أنه الطبيعي (5الشكل)باعتبار التتابع أن

ولكن األحمر ويليه األصفر ثم األخضر هو األشارة ألضواءمقدار وليكن زمن واألصفر األخضر الضور بين يفصل

10second واألحمر األصفر الشارعين 4secondوبين وفي. الكالم نفس يطبق

احد من واألصفر األخضر اللون بأن لدينا المفهموم منلتجنب وذلك األخر الشارع في األحمر اللون يقابله الشارعين

السيارات بين اصطدام أي حدوث عندما بحيث للمشاة بزر المرور أشارتي من كال تزويد يتم

الزر على الضغط يمكنه األشارة عند موجود المشاة يكونيقطع أن المشاة يريد الذي بالشارع تتحكم التي األشارة لتصبح

األشارة ستفتح الفترة هذه وخالل بأمان مروره لضمان حمراءالمشاة . بمحاذاة تمشي بأن للسيارات لتسمح المعاكسة

kةkطkنق kايةkدkالب kاkدمkنkع kنkوkيك kنkرkالف kةkلkاkبحkفkاkأيق

kينkيkعkتkتkيkقkوkتkلkا

kاkرkقkتkسkألkا kىkلkع kرkتkيkقkوkلتkا

kيkهkالط زر

األلغاء

Page 8: state logic progamming

(5الشكل )

والخرج الدخل تعريف هو التحكم نظام في األولى الخطوة أنبينما, تتغير سوف والتي النظام متغيرات سنعرف أوال للنظام

. أخرى ألى حالة من ينتقل النظامستشكل بعضها مع المتغيرات بعض هنا المالحظة يرجى

األشارتين أضاء من متغير كل ليس أخر بمعنى واحدة حالة. حالة عن يعبر

لدينا أنه نرى التدقيق و 6عناصر )8في األضواء وهم 2خرج ) ودراسة لتحديد الخرج سنستخدم المشاة أزرار وهما دخل

. النظام حاالت

kتkالkاkحkجkرkخkال

L1 RED N/S YELLOW N/S L2

L3 GREEN N/S RED E/W L4

YELLOW E/W L5 GREEN E/W L6

kلkخkدkالS1 N/S , S2 E/W

Page 9: state logic progamming

الحالة مخطط استخدام الممكن من كان السابق state فيdiagram , سنعرف هنا أما وصفاته النظام حاالت عن للتعبير

الحالة جدول وهي جديدة الدراسة STATE TABLEتقنية لتسهيلأربع ولنأخذ جدول في بانتظام األضواء ترتيب يمكن علينا

لتسهيل الجدول في بأسمها حالة كل عن نعبر أن يمكن حاالتوضع من مايقابلها حالة كل بجانب ونضع األمر

) ب) عنه نعبر يشتغل ضوء كل حيث األضواء كان bit 1الخرج واذايكون :0bitمطفئ عنه. تكلمنا ما يبين التالي الجدول في

األولى :step oneالخطوة: بالترتيب وضعهم ويتم وخرجه النظام حاالت تعريف سيتم

L6 GL5 YL4 RL3 GL2 YL1 RState descripion

100001Green east/west

1

010001Yellow east/ west

2

001100Green north/south

3

001010Yellow north/south

4

الثانية :step 2الخطوة

الحاالت جدول ألى وأضافتهم األنتقال خطوط تعريفstate table.

Page 10: state logic progamming

وذلك الحالة جدول ألى األنتقال شروط أضافة يمكن , الجدول في موضح كما تماما واضحة العملية لتصبح

الحالة من األنتقال حيث المعدل greenالثانيeast/west ألىyellow east/west المشاة بضغط يتمالزر )s1على الشكل في األنتقال( 5والموضح أن أال

مرور بعد أشتغال , 10secondسيتم عند سابقا ذكرنا كماسيمر األصفر الحالة 4secondالضوء ألى بعدها لينتقل

green north/south بالمرور المشاة يستطيع عندهاوستقف سيمرون نفسها الجهة عند والسيارات

الجهة عند التي مجيئ . east/westالسيارات عند األنألى أخرين ألى s2مشاة األنتقال سيتم الزر ويضغطون

الضوء 4secondوبعد yellow north/southالحالة سيرجعالجهة ألى .green east/ westاألخضر

الخطوة نمثل أن يمكن .2وبهذا

L6 G

L5 YL4 RL3 G L2 YL1 RState descripion

100001Green east/west

1

010001Yellow east/ west

2

001100Green north/south

3

001010Yellow north/south

4

S1

4sec

S2

Delay 4sec

Page 11: state logic progamming

: الحالة الحالة مخطط جدول وبمساعدة سبق stateمماtable: التحكم لنظام الحالة مخطط ألى نصل

(6الشكل )

السلمية اللغة ألى التحويلConversion to Ladder Logic

المنطق ألى مباشرة يحول أن يمكن الحالة مخطط أنالمنطقية الكتلة باستخدام التقنية block logicالسلمي هذه أن

بسيطة طريقة تعتبر ولكن كبير برنامج تنتج سوفذلك , . األمر اقتضى ما أذا التصحيح وسهلة للفهم

المنطق في نطبقه لكين المرور أشارة عن السابق مثالنا فيال ladder logicالسلمي في والخرج الدخل تعريف plcسيتمكمايلي:

GREEN E /W

YELLOW E/W

GREEN N/S

YELLOW N/S

Page 12: state logic progamming

ال برنامج من المنطقية الكتلة لدينا البداية ladderفيالشكل ) في ال( 8الموضحة تشغيل الحالة plcعند ستكون

الموضوع للبرنامج األول المسح أن حيث الفعالة هي األولىالكتلة تنفيذ للتنفيذ MCRسيتم بداية كنقطة البرنامج من

ال قيمة تنقلب سوف والقيم B3/1حيث فعالة لتكون. فعالة تكون لن الباقية

MCR S2:1/14

L B3/1

L B3/2

B3/3 U

B3/4

U

MCR

(7الشكل)

statesB3/1 - state 1 - green E/WB3/2 - state 2 - yellow E/WB3/3 - state 3 - green N/SB3/4 - state 4 - yellow N/S

OUTPUTSO/1 - L1O/2 - L2O/3 - L3O/4 - L4O/5 - L5O/6 - L6

INPUTSI/1 - S1I/2 - S2

S2:1/14 - first scan

Page 13: state logic progamming

) التحكم) برنامج لبداية السلمي المنطق

السلمي برنامج من الثاني سيتعامل LADDER LOGICالقسمالخرج , أن مثال المخارج مع األحمر O/1مباشرة اللون هو

حالة, NORTH/SOUTHلألشارة في ستكون في ONالتيSTATE1 وSTATE2 أوB3/1 ثمB3/2 وضع أن التوالي على

ال تعليمة كتلة خارج الطبيعي وذلك MCRالخرج مهم أمر هوالكتلة تفعيل يتم حتى يفعلوا لن الكتلة داخل وجودهم عند

بحالة يكونوا أن على يجبروا سوف . OFFوأال

O/1 B3/1

B3/2

O/2 B3/4

O/3B3/3

O/4B3/3

( ال: تعليمة سنستخدم على( MCRمالحظة المرتكزة البرامج لتنفيذ . أهم أن السلمي البرنامج من جزء بأطفاء لنا يسمح هذا الحاالت

ستعكس التعليمة هذه داخل خرج أي أن هو عليه األنتباه يجب شيءتعليمة . أن وبالعكس مفتوح ألى مغلق من في MCRحالته ستفعل

مفعل يكون معها الموصول الدخل كان ONحال الدخل عندما أماليكون سيجبر التعليمة داخل الخرج جميع فأن .OFFغيرمفعل

MCR A

MCR كان تعليمة A=1اذا داخل MCRفأنسينفذ

كتلة نهاية MCRال

Page 14: state logic progamming

B3/4

O/5B3/2

O/6B3/1

الشكل ) بالمخارج المنطقي (8التحكم

( الشكل في البرنامج في كما تنفيذها تم األولى الحالة أنمفعال( . 7 األولى الحالة كانت تفعيل ONاذا I/1هو S1وتم

األولى الحالى سينهي هاذا الضوء( STATE2 B3/1فأن ذاتالثانية( الحالة تبدأ لكي األصفر ( STATE2األخضر الضوء ذات

B3/2.)

MCRB3/1

U b3/1I/1

L B3/2i/1

MCR

األولى ) بالضغط STATE1الحالة األنتقال تنتظرI/1على )

(9الشكل)

على الضغط S1عندحالة B3/1سينعكس

وهي القديمة حالته منUP الجديدة LOWألى

بحالة يصبح .OFFلكي

Page 15: state logic progamming

الحالة في يكون عنما البرنامج أن البلوك b3/1أي سيتفعلMCR الزر على الضغط عند األنتقال بالمشاة S1ويتم الخاص

العنوان له .I/1والمخصص

تتضمن ألنها الشيء بعض تعقيدا أكثر هي الثانية الحالة أنالحالة فعندما التالي الشكل في مبين كما لألنتقال مؤقت

STATE2 مفعالON القيمة على المزمن المؤخر المؤقت4SECOND الحالة يقلب لكي ألىUP=1من STATE 2سيعمل

LOW=0 ( بعد األصفر الضوء الضوء 4SECفيطفئ ويعمل ) للحالة بالنسبة وبالعكس المقابلة الجهة في أألخضر

STATE3) ,(B3/3. تصفيره يجب لذلك بقيمته بها يحتفظ ذاكرة له المؤقت أن

. جديدة دورة أجل من عمل يعود لكي عمله اداء بعد

MCRB3/2

T4:1

RTO

DEALY4SEC

U b3/2T4:1/DN

L b3/3T4:1/DN

RSTt4:1T4:1/DN

المؤقت سيعكس

b3/2الحالة Lألى uمن

المؤقت تصفير

Page 16: state logic progamming

MCR

(10الشكل)

( والرابعة الثالثة لبرمجة( state1,state2الحالة مشابها برمجتهاالتالي : الشكل في مبين هو كما والثانية األولى الحالتين

على بالضغط األنتقال بانتظار الثالثة I/2الحالة

MB3/3

Ui/2

L i2/2

( MCR(11الشكل

األنتقال) ( بانتظار الرابعة الحالة

Mcr b3/4

Rto t4:2

Dealy 4

B3/4

U t4:2

B3/1

LT4:2

T4:2

Page 17: state logic progamming

RSTT4:2

MCR

(12الشكل)

الحاالت مخطط في الخيارات تعدد مشكلة :A STATE DIAGRAM WITH PRIORITY PROBLEMS

حالة من لألنتقال واحد طريق لدينا كان السابق المثال فيالحاالت بين خيارات هناك يكن لم لذلك أخرى .STATESألى

مشكلة هناك التالي الشكل في الموضح الحالة مخطط فيواحدة حالة من أنتقالين وجود وهي البرنامج لها يتعرض قد

الحالة وهما STBوهي حالتين STCوSTAألىالحالة عند النظام كان بفرض وذلك ستظهر المشكلة هذه

STB( األنتقال النظام( CوAوشرطي سيذهب عندئذ معا حدثاللحالة الحالتين STCأو STAأما كال لتنفيذ يذهب قد ربما أو

ضعيف ) (. بشكل المصممة البرامج في وذلك معا

األنتقاالت هذه أحدى أختيار يجب المشكلة هذه لحلالنظام سيعطي األمر األخر األنتقال على أولوية وأعطائه

التصرف في وضوح

Page 18: state logic progamming

(13الشكل )

الحالة مخططات في لها نتعرض قد التي السابقة المشكلة وصف بعدهو نطرحه أن يمكن الذي السؤال األنتقاالت ألحد األولوية بتحديد وذلك

السلمية اللغة في برمجية المشكلة تلك ستحل LADDER LOGICكيفالشكل في السابق المثال على ذلك تطبيق كيفية على األن 13سنتعرف

لألنتقال األولوية بتحديد من cوذلك النظام سينتقل حصل أن ألى STBالذيSTC حصل لكي Aمع Cوان برمجته وهو عليه برمجته ماتم النظام سيطبق

األنتقال PRIORITIZATIONاألولوية Cيأخذ

ال تطبيق أن الفقرة LADDER LOGICمالحظة في شرح كما سيكونالسابقة .

STB L FIRST SCAN

STA U

STC U

STB

STCSTA

A

مسح بدايةالبرنامج

Page 19: state logic progamming

MCR STA

STA U B

STB

L

MCR

MCRSTB

STBUc

STC L

C

STB UA

STA L

كانت: اذا عندئذ CوAمالحظة بعضها مع .Cفعالة أن أولوية سيأخذمعا . فعالين أنتقالين يكون عندما هما أمر أولوية أعطاء

التي البرنامج كتلةمن بانتقال تتحكم

ألى STAالحالة STB بوجود

Bالشرط

التي المنطقية الكتلةتتحكم

الحالة STBبانتقالحدوث ألى Cبشرط

STCالحالة

األولوية تحديدAو Cبين

Page 20: state logic progamming

MCR

MCR STC

STC

U D

STB L

MCR

) الحاالت ) برمجة في والمستخدم المنطقية الكتل المتبع األسلوب أنألى للمصمم LADDER REPRESENTوتحويلها خاصة معرفة أي يتطلب ال

يمكن األخير والبرنامج الحالة مخطط من مباشرة يكتب أن يمكن والبرنامجوأقل كبيرة هي الطريق بهذه المكتوبة البرامج هذه أن ولكن يعدل أن

فعالية .

الحالة :SATE EQUATIONSمعادالت

الجبر بالشكل معادلة ألى حول أن يمكن الحالة مخطط أن ) السلمية ) البرمجة ألى يحول ثم ومن البولينى المنطقي

LADDER LOGIC كطريقة يستخدم أن يمكن األسلوب هذا أنعند شرحه تم الذي السابق األسلوب عن مختلفة للبرمجة

. المرور أشارات

ال برنامج كتلةLADDER التي

بالنتقال تتحكمالحالة من النظام

STC الحالة ألىSTB بشرط

Dحدوث

Page 21: state logic progamming

المعادلة في مبين كما رئيسية أجزاء ثالث من تتألف الحالة معادالتالتالية:

INFORMAL:State X = (State X + just arrived from another state) and has not left for another state

( الرئيسة األجزاء الثالث كانت لشرح أذا فعالة ستكون الحالةفعالة قبل األنتقال –من شرط أذا فعالة ستصبح أوالحالة

أخرى حالة من تحقق قد غير –أليها ستصبح الحالة أن ولكنغير النظام في أخرى حالة ألى األنتقال تم حال في فعالة

.) المدروسة الحالة. بها خاصة معادلة لها الحاالت مخطط من حالة كل

Formally:

حيث:

يكون عندما القيمة يأخذ متغير حالة stateiهو on= stateiفي

الحالة ألى األنتقاالت statei =nعدد

الحالة خارج األنتقاالت statei=mعدد

الحالة من لألنتقال المنطقي الحالة statejالشرط statei =Tjiألى

الحالة خارج لألنتقال المنطقي statei=Tikالشرط

الشكل ) ذو المخطط على الحالة معادالت تطبيق يمكن (13األنالحالة ألى األولوية أدخال الحالة Aمع بمعادلة وذلك

Page 22: state logic progamming

FS)) FIRST SCAN

الحالة في STAفي باألصل تكون عندما تحصل أو STAسوففي كان النظام تحدث Aوالشرط STBأن ولن حدث قد

في النظام يكون الشرط STAعندما بحدوث منه .Bوخرج

STA = STA + STB ASTA B

الحالةSTB في باألصل تكون عندما ان STBستحصل أوالحاالة في كان الشرطين STCأو STAالنظام BوDوتحقق

في النظام يكون عندما يحدث بخدوث STBولن عنه وخرجC أوA

STB = STB + STA B + STC DSTB A STB C + FS

الحالة الحالة STCأما شرح نفس تم STAشرحها ولكنحدوث عند لفعاليتها األنتقال Aافقادها كسب تم Aوبذلك

الحالة معادالت داخل أولويةSTC = STC + STB C ASTC D .

الحالة معادالت عن تعبر والتي السابقة الثالث المعادالت منال بلغة المطلوب برنامج لكتابة ننطلق الثالث .LADDERللحاالت

STB

STCSTA

A

Page 23: state logic progamming

THE END

معادلة تمثيلالحالة

STAللحالة

معادلة تمثيلالحالة

STBللحالة

معادلة تمثيلالحالة

مع STCللحالة الذي المنطق

األولوية Aيعطي للتطبيق.