طابور أوردرات بأولوية الوصول (FIFO) — برنامج PLC جاهز
10 أوردرات بتوصل في أوقات مش منتظمة (طلب الأوردر من 4.01 لـ 4.10) وبتتنفذ واحد واحد بأولوية الوصول: كل أوردر ياخد رقم دور زي طابور البنك، وإشارة التشغيل بتاعته (من 100.01) تشتغل لما ييجي دوره، ولمبة البيان (من 101.01) ثابتة وهو شغال وبتفلاش وهو مستني، وإشارة الخلاص (من 5.01 لـ 5.10) بتنقل الدور للي بعده.
بتشتغل إزاي
- (D محفوظة بعد قطع الكهربا في أومرون، فلازم تتصفّر هنا)
- [أوردر 1] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني)
- [أوردر 1] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني
- [أوردر 1] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي
- [أوردر 1] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده
- [أوردر 1] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره
- [أوردر 2] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني)
- [أوردر 2] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني
- [أوردر 2] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي
- [أوردر 2] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده
- [أوردر 2] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره
- [أوردر 3] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني)
- [أوردر 3] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني
- [أوردر 3] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي
- [أوردر 3] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده
- [أوردر 3] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره
- [أوردر 4] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني)
- [أوردر 4] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني
- [أوردر 4] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي
- [أوردر 4] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده
- [أوردر 4] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره
- [أوردر 5] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني)
- [أوردر 5] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني
- [أوردر 5] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي
- [أوردر 5] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده
- [أوردر 5] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره
- [أوردر 6] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني)
- [أوردر 6] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني
- [أوردر 6] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي
- [أوردر 6] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده
- [أوردر 6] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره
- [أوردر 7] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني)
- [أوردر 7] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني
- [أوردر 7] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي
- [أوردر 7] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده
- [أوردر 7] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره
- [أوردر 8] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني)
- [أوردر 8] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني
- [أوردر 8] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي
- [أوردر 8] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده
- [أوردر 8] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره
- [أوردر 9] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني)
- [أوردر 9] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني
- [أوردر 9] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي
- [أوردر 9] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده
- [أوردر 9] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره
- [أوردر 10] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني)
- [أوردر 10] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني
- [أوردر 10] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي
- [أوردر 10] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده
- [أوردر 10] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره
المداخل والمخارج
الستوب والطوارئ والأوفرلود بيتوصّلوا NC (Fail-Safe): لو السلك اتقطع الماكينة تقف.
| العنوان | الاسم | الوصف | التوصيل |
|---|---|---|---|
| 4.01 | Order1_Request | طلب الأوردر 1 | NO |
| 4.02 | Order2_Request | طلب الأوردر 2 | NO |
| 4.03 | Order3_Request | طلب الأوردر 3 | NO |
| 4.04 | Order4_Request | طلب الأوردر 4 | NO |
| 4.05 | Order5_Request | طلب الأوردر 5 | NO |
| 4.06 | Order6_Request | طلب الأوردر 6 | NO |
| 4.07 | Order7_Request | طلب الأوردر 7 | NO |
| 4.08 | Order8_Request | طلب الأوردر 8 | NO |
| 4.09 | Order9_Request | طلب الأوردر 9 | NO |
| 4.10 | Order10_Request | طلب الأوردر 10 | NO |
| 5.01 | Order1_Done | الأوردر 1 خلص | NO |
| 5.02 | Order2_Done | الأوردر 2 خلص | NO |
| 5.03 | Order3_Done | الأوردر 3 خلص | NO |
| 5.04 | Order4_Done | الأوردر 4 خلص | NO |
| 5.05 | Order5_Done | الأوردر 5 خلص | NO |
| 5.06 | Order6_Done | الأوردر 6 خلص | NO |
| 5.07 | Order7_Done | الأوردر 7 خلص | NO |
| 5.08 | Order8_Done | الأوردر 8 خلص | NO |
| 5.09 | Order9_Done | الأوردر 9 خلص | NO |
| 5.10 | Order10_Done | الأوردر 10 خلص | NO |
| 100.01 | Order1_Run | تشغيل الأوردر 1 | — |
| 100.02 | Order2_Run | تشغيل الأوردر 2 | — |
| 100.03 | Order3_Run | تشغيل الأوردر 3 | — |
| 100.04 | Order4_Run | تشغيل الأوردر 4 | — |
| 100.05 | Order5_Run | تشغيل الأوردر 5 | — |
| 100.06 | Order6_Run | تشغيل الأوردر 6 | — |
| 100.07 | Order7_Run | تشغيل الأوردر 7 | — |
| 100.08 | Order8_Run | تشغيل الأوردر 8 | — |
| 100.09 | Order9_Run | تشغيل الأوردر 9 | — |
| 100.10 | Order10_Run | تشغيل الأوردر 10 | — |
| 101.01 | Order1_Lamp | لمبة بيان الأوردر 1 | — |
| 101.02 | Order2_Lamp | لمبة بيان الأوردر 2 | — |
| 101.03 | Order3_Lamp | لمبة بيان الأوردر 3 | — |
| 101.04 | Order4_Lamp | لمبة بيان الأوردر 4 | — |
| 101.05 | Order5_Lamp | لمبة بيان الأوردر 5 | — |
| 101.06 | Order6_Lamp | لمبة بيان الأوردر 6 | — |
| 101.07 | Order7_Lamp | لمبة بيان الأوردر 7 | — |
| 101.08 | Order8_Lamp | لمبة بيان الأوردر 8 | — |
| 101.09 | Order9_Lamp | لمبة بيان الأوردر 9 | — |
| 101.10 | Order10_Lamp | لمبة بيان الأوردر 10 | — |
| W10.01 | Order1_Pulse | نبضة طلب الأوردر 1 | — |
| W10.02 | Order2_Pulse | نبضة طلب الأوردر 2 | — |
| W10.03 | Order3_Pulse | نبضة طلب الأوردر 3 | — |
| W10.04 | Order4_Pulse | نبضة طلب الأوردر 4 | — |
| W10.05 | Order5_Pulse | نبضة طلب الأوردر 5 | — |
| W10.06 | Order6_Pulse | نبضة طلب الأوردر 6 | — |
| W10.07 | Order7_Pulse | نبضة طلب الأوردر 7 | — |
| W10.08 | Order8_Pulse | نبضة طلب الأوردر 8 | — |
| W10.09 | Order9_Pulse | نبضة طلب الأوردر 9 | — |
| W10.10 | Order10_Pulse | نبضة طلب الأوردر 10 | — |
| W11.01 | Order1_Waiting | الأوردر 1 مستني | — |
| W11.02 | Order2_Waiting | الأوردر 2 مستني | — |
| W11.03 | Order3_Waiting | الأوردر 3 مستني | — |
| W11.04 | Order4_Waiting | الأوردر 4 مستني | — |
| W11.05 | Order5_Waiting | الأوردر 5 مستني | — |
| W11.06 | Order6_Waiting | الأوردر 6 مستني | — |
| W11.07 | Order7_Waiting | الأوردر 7 مستني | — |
| W11.08 | Order8_Waiting | الأوردر 8 مستني | — |
| W11.09 | Order9_Waiting | الأوردر 9 مستني | — |
| W11.10 | Order10_Waiting | الأوردر 10 مستني | — |
| D0 | Last_Ticket | آخر رقم دور اتصرف | — |
| D1 | Now_Serving | رقم الدور اللي عليه التنفيذ | — |
| D11 | Order1_Ticket | رقم دور الأوردر 1 | — |
| D12 | Order2_Ticket | رقم دور الأوردر 2 | — |
| D13 | Order3_Ticket | رقم دور الأوردر 3 | — |
| D14 | Order4_Ticket | رقم دور الأوردر 4 | — |
| D15 | Order5_Ticket | رقم دور الأوردر 5 | — |
| D16 | Order6_Ticket | رقم دور الأوردر 6 | — |
| D17 | Order7_Ticket | رقم دور الأوردر 7 | — |
| D18 | Order8_Ticket | رقم دور الأوردر 8 | — |
| D19 | Order9_Ticket | رقم دور الأوردر 9 | — |
| D20 | Order10_Ticket | رقم دور الأوردر 10 | — |
مخطط اللادر
; (D محفوظة بعد قطع الكهربا في أومرون، فلازم تتصفّر هنا)
│ P_First_Cycle ┌──────────┐ │
0001 ├──────┤ ├─────────────────────────────────────┬─┤ MOV(021) ├──┬─┤
│ │ │ &0 │ │ │
│ │ │ D0 │ │ │
│ │ └──────────┘ │ │
│ │ ┌──────────┐ │ │
│ ├─┤ MOV(021) ├──┤ │
│ │ │ &1 │ │ │
│ │ │ D1 │ │ │
│ │ └──────────┘ │ │
│ │ ┌───────────┐ │ │
│ └─┤ BSET(071) ├─┘ │
│ │ &0 │ │
│ │ D11 │ │
│ │ D20 │ │
│ └───────────┘ │
│
; [أوردر 1] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني)
│ Order1_Request │
│ 4.01 ┌───────────┐ │
0002 ├──────┤ ├─────────────────────────────────────────┤ DIFU(013) ├─┤
│ │ W10.01 │ │
│ └───────────┘ │
│
; [أوردر 1] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني
│ Order1_Pulse Order1_Waiting Order1_Run │
│ W10.01 W11.01 100.01 ┌─────────┐ │
0003 ├─────┤ ├────────────┤/├───────────┤/├────────┬─┤ ++(590) ├────┬─┤
│ │ │ D0 │ │ │
│ │ └─────────┘ │ │
│ │ ┌──────────┐ │ │
│ ├─┤ MOV(021) ├───┤ │
│ │ │ D0 │ │ │
│ │ │ D11 │ │ │
│ │ └──────────┘ │ │
│ │ Order1_Waiting │ │
│ │ W11.01 │ │
│ └──────(S)───────┘ │
│
; [أوردر 1] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي
│ Order1_Waiting Order1_Run │
│ W11.01 ┌───────────┐ 100.01 │
0004 ├──────┤ ├────────┤ AND=(300) ├───────────────┬────(S)─────────┬─┤
│ │ D11 D1 │ │ Order1_Waiting │ │
│ └───────────┘ │ W11.01 │ │
│ └──────(R)───────┘ │
│
; [أوردر 1] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده
│ Order1_Done Order1_Run Order1_Run │
│ 5.01 100.01 100.01 │
0005 ├─────┤ ├─────────┤ ├───────────────────────────┬────(R)───────┬─┤
│ │ ┌──────────┐ │ │
│ ├─┤ MOV(021) ├─┤ │
│ │ │ &0 │ │ │
│ │ │ D11 │ │ │
│ │ └──────────┘ │ │
│ │ ┌─────────┐ │ │
│ └─┤ ++(590) ├──┘ │
│ │ D1 │ │
│ └─────────┘ │
│
; [أوردر 1] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره
│ Order1_Run Order1_Lamp │
│ 100.01 101.01 │
0006 ├─┬────┤ ├────────────────┬──────────────────────────────( )─────┤
│ │ Order1_Waiting │ │
│ │ W11.01 P_1s │ │
│ └──────┤ ├─────────┤ ├──┘ │
│
; [أوردر 2] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني)
│ Order2_Request │
│ 4.02 ┌───────────┐ │
0007 ├──────┤ ├─────────────────────────────────────────┤ DIFU(013) ├─┤
│ │ W10.02 │ │
│ └───────────┘ │
│
; [أوردر 2] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني
│ Order2_Pulse Order2_Waiting Order2_Run │
│ W10.02 W11.02 100.02 ┌─────────┐ │
0008 ├─────┤ ├────────────┤/├───────────┤/├────────┬─┤ ++(590) ├────┬─┤
│ │ │ D0 │ │ │
│ │ └─────────┘ │ │
│ │ ┌──────────┐ │ │
│ ├─┤ MOV(021) ├───┤ │
│ │ │ D0 │ │ │
│ │ │ D12 │ │ │
│ │ └──────────┘ │ │
│ │ Order2_Waiting │ │
│ │ W11.02 │ │
│ └──────(S)───────┘ │
│
; [أوردر 2] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي
│ Order2_Waiting Order2_Run │
│ W11.02 ┌───────────┐ 100.02 │
0009 ├──────┤ ├────────┤ AND=(300) ├───────────────┬────(S)─────────┬─┤
│ │ D12 D1 │ │ Order2_Waiting │ │
│ └───────────┘ │ W11.02 │ │
│ └──────(R)───────┘ │
│
; [أوردر 2] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده
│ Order2_Done Order2_Run Order2_Run │
│ 5.02 100.02 100.02 │
0010 ├─────┤ ├─────────┤ ├───────────────────────────┬────(R)───────┬─┤
│ │ ┌──────────┐ │ │
│ ├─┤ MOV(021) ├─┤ │
│ │ │ &0 │ │ │
│ │ │ D12 │ │ │
│ │ └──────────┘ │ │
│ │ ┌─────────┐ │ │
│ └─┤ ++(590) ├──┘ │
│ │ D1 │ │
│ └─────────┘ │
│
; [أوردر 2] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره
│ Order2_Run Order2_Lamp │
│ 100.02 101.02 │
0011 ├─┬────┤ ├────────────────┬──────────────────────────────( )─────┤
│ │ Order2_Waiting │ │
│ │ W11.02 P_1s │ │
│ └──────┤ ├─────────┤ ├──┘ │
│
; [أوردر 3] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني)
│ Order3_Request │
│ 4.03 ┌───────────┐ │
0012 ├──────┤ ├─────────────────────────────────────────┤ DIFU(013) ├─┤
│ │ W10.03 │ │
│ └───────────┘ │
│
; [أوردر 3] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني
│ Order3_Pulse Order3_Waiting Order3_Run │
│ W10.03 W11.03 100.03 ┌─────────┐ │
0013 ├─────┤ ├────────────┤/├───────────┤/├────────┬─┤ ++(590) ├────┬─┤
│ │ │ D0 │ │ │
│ │ └─────────┘ │ │
│ │ ┌──────────┐ │ │
│ ├─┤ MOV(021) ├───┤ │
│ │ │ D0 │ │ │
│ │ │ D13 │ │ │
│ │ └──────────┘ │ │
│ │ Order3_Waiting │ │
│ │ W11.03 │ │
│ └──────(S)───────┘ │
│
; [أوردر 3] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي
│ Order3_Waiting Order3_Run │
│ W11.03 ┌───────────┐ 100.03 │
0014 ├──────┤ ├────────┤ AND=(300) ├───────────────┬────(S)─────────┬─┤
│ │ D13 D1 │ │ Order3_Waiting │ │
│ └───────────┘ │ W11.03 │ │
│ └──────(R)───────┘ │
│
; [أوردر 3] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده
│ Order3_Done Order3_Run Order3_Run │
│ 5.03 100.03 100.03 │
0015 ├─────┤ ├─────────┤ ├───────────────────────────┬────(R)───────┬─┤
│ │ ┌──────────┐ │ │
│ ├─┤ MOV(021) ├─┤ │
│ │ │ &0 │ │ │
│ │ │ D13 │ │ │
│ │ └──────────┘ │ │
│ │ ┌─────────┐ │ │
│ └─┤ ++(590) ├──┘ │
│ │ D1 │ │
│ └─────────┘ │
│
; [أوردر 3] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره
│ Order3_Run Order3_Lamp │
│ 100.03 101.03 │
0016 ├─┬────┤ ├────────────────┬──────────────────────────────( )─────┤
│ │ Order3_Waiting │ │
│ │ W11.03 P_1s │ │
│ └──────┤ ├─────────┤ ├──┘ │
│
; [أوردر 4] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني)
│ Order4_Request │
│ 4.04 ┌───────────┐ │
0017 ├──────┤ ├─────────────────────────────────────────┤ DIFU(013) ├─┤
│ │ W10.04 │ │
│ └───────────┘ │
│
; [أوردر 4] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني
│ Order4_Pulse Order4_Waiting Order4_Run │
│ W10.04 W11.04 100.04 ┌─────────┐ │
0018 ├─────┤ ├────────────┤/├───────────┤/├────────┬─┤ ++(590) ├────┬─┤
│ │ │ D0 │ │ │
│ │ └─────────┘ │ │
│ │ ┌──────────┐ │ │
│ ├─┤ MOV(021) ├───┤ │
│ │ │ D0 │ │ │
│ │ │ D14 │ │ │
│ │ └──────────┘ │ │
│ │ Order4_Waiting │ │
│ │ W11.04 │ │
│ └──────(S)───────┘ │
│
; [أوردر 4] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي
│ Order4_Waiting Order4_Run │
│ W11.04 ┌───────────┐ 100.04 │
0019 ├──────┤ ├────────┤ AND=(300) ├───────────────┬────(S)─────────┬─┤
│ │ D14 D1 │ │ Order4_Waiting │ │
│ └───────────┘ │ W11.04 │ │
│ └──────(R)───────┘ │
│
; [أوردر 4] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده
│ Order4_Done Order4_Run Order4_Run │
│ 5.04 100.04 100.04 │
0020 ├─────┤ ├─────────┤ ├───────────────────────────┬────(R)───────┬─┤
│ │ ┌──────────┐ │ │
│ ├─┤ MOV(021) ├─┤ │
│ │ │ &0 │ │ │
│ │ │ D14 │ │ │
│ │ └──────────┘ │ │
│ │ ┌─────────┐ │ │
│ └─┤ ++(590) ├──┘ │
│ │ D1 │ │
│ └─────────┘ │
│
; [أوردر 4] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره
│ Order4_Run Order4_Lamp │
│ 100.04 101.04 │
0021 ├─┬────┤ ├────────────────┬──────────────────────────────( )─────┤
│ │ Order4_Waiting │ │
│ │ W11.04 P_1s │ │
│ └──────┤ ├─────────┤ ├──┘ │
│
; [أوردر 5] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني)
│ Order5_Request │
│ 4.05 ┌───────────┐ │
0022 ├──────┤ ├─────────────────────────────────────────┤ DIFU(013) ├─┤
│ │ W10.05 │ │
│ └───────────┘ │
│
; [أوردر 5] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني
│ Order5_Pulse Order5_Waiting Order5_Run │
│ W10.05 W11.05 100.05 ┌─────────┐ │
0023 ├─────┤ ├────────────┤/├───────────┤/├────────┬─┤ ++(590) ├────┬─┤
│ │ │ D0 │ │ │
│ │ └─────────┘ │ │
│ │ ┌──────────┐ │ │
│ ├─┤ MOV(021) ├───┤ │
│ │ │ D0 │ │ │
│ │ │ D15 │ │ │
│ │ └──────────┘ │ │
│ │ Order5_Waiting │ │
│ │ W11.05 │ │
│ └──────(S)───────┘ │
│
; [أوردر 5] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي
│ Order5_Waiting Order5_Run │
│ W11.05 ┌───────────┐ 100.05 │
0024 ├──────┤ ├────────┤ AND=(300) ├───────────────┬────(S)─────────┬─┤
│ │ D15 D1 │ │ Order5_Waiting │ │
│ └───────────┘ │ W11.05 │ │
│ └──────(R)───────┘ │
│
; [أوردر 5] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده
│ Order5_Done Order5_Run Order5_Run │
│ 5.05 100.05 100.05 │
0025 ├─────┤ ├─────────┤ ├───────────────────────────┬────(R)───────┬─┤
│ │ ┌──────────┐ │ │
│ ├─┤ MOV(021) ├─┤ │
│ │ │ &0 │ │ │
│ │ │ D15 │ │ │
│ │ └──────────┘ │ │
│ │ ┌─────────┐ │ │
│ └─┤ ++(590) ├──┘ │
│ │ D1 │ │
│ └─────────┘ │
│
; [أوردر 5] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره
│ Order5_Run Order5_Lamp │
│ 100.05 101.05 │
0026 ├─┬────┤ ├────────────────┬──────────────────────────────( )─────┤
│ │ Order5_Waiting │ │
│ │ W11.05 P_1s │ │
│ └──────┤ ├─────────┤ ├──┘ │
│
; [أوردر 6] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني)
│ Order6_Request │
│ 4.06 ┌───────────┐ │
0027 ├──────┤ ├─────────────────────────────────────────┤ DIFU(013) ├─┤
│ │ W10.06 │ │
│ └───────────┘ │
│
; [أوردر 6] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني
│ Order6_Pulse Order6_Waiting Order6_Run │
│ W10.06 W11.06 100.06 ┌─────────┐ │
0028 ├─────┤ ├────────────┤/├───────────┤/├────────┬─┤ ++(590) ├────┬─┤
│ │ │ D0 │ │ │
│ │ └─────────┘ │ │
│ │ ┌──────────┐ │ │
│ ├─┤ MOV(021) ├───┤ │
│ │ │ D0 │ │ │
│ │ │ D16 │ │ │
│ │ └──────────┘ │ │
│ │ Order6_Waiting │ │
│ │ W11.06 │ │
│ └──────(S)───────┘ │
│
; [أوردر 6] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي
│ Order6_Waiting Order6_Run │
│ W11.06 ┌───────────┐ 100.06 │
0029 ├──────┤ ├────────┤ AND=(300) ├───────────────┬────(S)─────────┬─┤
│ │ D16 D1 │ │ Order6_Waiting │ │
│ └───────────┘ │ W11.06 │ │
│ └──────(R)───────┘ │
│
; [أوردر 6] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده
│ Order6_Done Order6_Run Order6_Run │
│ 5.06 100.06 100.06 │
0030 ├─────┤ ├─────────┤ ├───────────────────────────┬────(R)───────┬─┤
│ │ ┌──────────┐ │ │
│ ├─┤ MOV(021) ├─┤ │
│ │ │ &0 │ │ │
│ │ │ D16 │ │ │
│ │ └──────────┘ │ │
│ │ ┌─────────┐ │ │
│ └─┤ ++(590) ├──┘ │
│ │ D1 │ │
│ └─────────┘ │
│
; [أوردر 6] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره
│ Order6_Run Order6_Lamp │
│ 100.06 101.06 │
0031 ├─┬────┤ ├────────────────┬──────────────────────────────( )─────┤
│ │ Order6_Waiting │ │
│ │ W11.06 P_1s │ │
│ └──────┤ ├─────────┤ ├──┘ │
│
; [أوردر 7] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني)
│ Order7_Request │
│ 4.07 ┌───────────┐ │
0032 ├──────┤ ├─────────────────────────────────────────┤ DIFU(013) ├─┤
│ │ W10.07 │ │
│ └───────────┘ │
│
; [أوردر 7] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني
│ Order7_Pulse Order7_Waiting Order7_Run │
│ W10.07 W11.07 100.07 ┌─────────┐ │
0033 ├─────┤ ├────────────┤/├───────────┤/├────────┬─┤ ++(590) ├────┬─┤
│ │ │ D0 │ │ │
│ │ └─────────┘ │ │
│ │ ┌──────────┐ │ │
│ ├─┤ MOV(021) ├───┤ │
│ │ │ D0 │ │ │
│ │ │ D17 │ │ │
│ │ └──────────┘ │ │
│ │ Order7_Waiting │ │
│ │ W11.07 │ │
│ └──────(S)───────┘ │
│
; [أوردر 7] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي
│ Order7_Waiting Order7_Run │
│ W11.07 ┌───────────┐ 100.07 │
0034 ├──────┤ ├────────┤ AND=(300) ├───────────────┬────(S)─────────┬─┤
│ │ D17 D1 │ │ Order7_Waiting │ │
│ └───────────┘ │ W11.07 │ │
│ └──────(R)───────┘ │
│
; [أوردر 7] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده
│ Order7_Done Order7_Run Order7_Run │
│ 5.07 100.07 100.07 │
0035 ├─────┤ ├─────────┤ ├───────────────────────────┬────(R)───────┬─┤
│ │ ┌──────────┐ │ │
│ ├─┤ MOV(021) ├─┤ │
│ │ │ &0 │ │ │
│ │ │ D17 │ │ │
│ │ └──────────┘ │ │
│ │ ┌─────────┐ │ │
│ └─┤ ++(590) ├──┘ │
│ │ D1 │ │
│ └─────────┘ │
│
; [أوردر 7] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره
│ Order7_Run Order7_Lamp │
│ 100.07 101.07 │
0036 ├─┬────┤ ├────────────────┬──────────────────────────────( )─────┤
│ │ Order7_Waiting │ │
│ │ W11.07 P_1s │ │
│ └──────┤ ├─────────┤ ├──┘ │
│
; [أوردر 8] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني)
│ Order8_Request │
│ 4.08 ┌───────────┐ │
0037 ├──────┤ ├─────────────────────────────────────────┤ DIFU(013) ├─┤
│ │ W10.08 │ │
│ └───────────┘ │
│
; [أوردر 8] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني
│ Order8_Pulse Order8_Waiting Order8_Run │
│ W10.08 W11.08 100.08 ┌─────────┐ │
0038 ├─────┤ ├────────────┤/├───────────┤/├────────┬─┤ ++(590) ├────┬─┤
│ │ │ D0 │ │ │
│ │ └─────────┘ │ │
│ │ ┌──────────┐ │ │
│ ├─┤ MOV(021) ├───┤ │
│ │ │ D0 │ │ │
│ │ │ D18 │ │ │
│ │ └──────────┘ │ │
│ │ Order8_Waiting │ │
│ │ W11.08 │ │
│ └──────(S)───────┘ │
│
; [أوردر 8] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي
│ Order8_Waiting Order8_Run │
│ W11.08 ┌───────────┐ 100.08 │
0039 ├──────┤ ├────────┤ AND=(300) ├───────────────┬────(S)─────────┬─┤
│ │ D18 D1 │ │ Order8_Waiting │ │
│ └───────────┘ │ W11.08 │ │
│ └──────(R)───────┘ │
│
; [أوردر 8] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده
│ Order8_Done Order8_Run Order8_Run │
│ 5.08 100.08 100.08 │
0040 ├─────┤ ├─────────┤ ├───────────────────────────┬────(R)───────┬─┤
│ │ ┌──────────┐ │ │
│ ├─┤ MOV(021) ├─┤ │
│ │ │ &0 │ │ │
│ │ │ D18 │ │ │
│ │ └──────────┘ │ │
│ │ ┌─────────┐ │ │
│ └─┤ ++(590) ├──┘ │
│ │ D1 │ │
│ └─────────┘ │
│
; [أوردر 8] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره
│ Order8_Run Order8_Lamp │
│ 100.08 101.08 │
0041 ├─┬────┤ ├────────────────┬──────────────────────────────( )─────┤
│ │ Order8_Waiting │ │
│ │ W11.08 P_1s │ │
│ └──────┤ ├─────────┤ ├──┘ │
│
; [أوردر 9] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني)
│ Order9_Request │
│ 4.09 ┌───────────┐ │
0042 ├──────┤ ├─────────────────────────────────────────┤ DIFU(013) ├─┤
│ │ W10.09 │ │
│ └───────────┘ │
│
; [أوردر 9] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني
│ Order9_Pulse Order9_Waiting Order9_Run │
│ W10.09 W11.09 100.09 ┌─────────┐ │
0043 ├─────┤ ├────────────┤/├───────────┤/├────────┬─┤ ++(590) ├────┬─┤
│ │ │ D0 │ │ │
│ │ └─────────┘ │ │
│ │ ┌──────────┐ │ │
│ ├─┤ MOV(021) ├───┤ │
│ │ │ D0 │ │ │
│ │ │ D19 │ │ │
│ │ └──────────┘ │ │
│ │ Order9_Waiting │ │
│ │ W11.09 │ │
│ └──────(S)───────┘ │
│
; [أوردر 9] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي
│ Order9_Waiting Order9_Run │
│ W11.09 ┌───────────┐ 100.09 │
0044 ├──────┤ ├────────┤ AND=(300) ├───────────────┬────(S)─────────┬─┤
│ │ D19 D1 │ │ Order9_Waiting │ │
│ └───────────┘ │ W11.09 │ │
│ └──────(R)───────┘ │
│
; [أوردر 9] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده
│ Order9_Done Order9_Run Order9_Run │
│ 5.09 100.09 100.09 │
0045 ├─────┤ ├─────────┤ ├───────────────────────────┬────(R)───────┬─┤
│ │ ┌──────────┐ │ │
│ ├─┤ MOV(021) ├─┤ │
│ │ │ &0 │ │ │
│ │ │ D19 │ │ │
│ │ └──────────┘ │ │
│ │ ┌─────────┐ │ │
│ └─┤ ++(590) ├──┘ │
│ │ D1 │ │
│ └─────────┘ │
│
; [أوردر 9] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره
│ Order9_Run Order9_Lamp │
│ 100.09 101.09 │
0046 ├─┬────┤ ├────────────────┬──────────────────────────────( )─────┤
│ │ Order9_Waiting │ │
│ │ W11.09 P_1s │ │
│ └──────┤ ├─────────┤ ├──┘ │
│
; [أوردر 10] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني)
│ Order10_Request │
│ 4.10 ┌───────────┐ │
0047 ├───────┤ ├────────────────────────────────────────┤ DIFU(013) ├─┤
│ │ W10.10 │ │
│ └───────────┘ │
│
; [أوردر 10] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني
│ Order10_Pulse Order10_Waiting Order10_Run │
│ W10.10 W11.10 100.10 ┌─────────┐ │
0048 ├──────┤ ├─────────────┤/├────────────┤/├────────┬─┤ ++(590) ├─────┬─┤
│ │ │ D0 │ │ │
│ │ └─────────┘ │ │
│ │ ┌──────────┐ │ │
│ ├─┤ MOV(021) ├────┤ │
│ │ │ D0 │ │ │
│ │ │ D20 │ │ │
│ │ └──────────┘ │ │
│ │ Order10_Waiting │ │
│ │ W11.10 │ │
│ └───────(S)───────┘ │
│
; [أوردر 10] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي
│ Order10_Waiting Order10_Run │
│ W11.10 ┌───────────┐ 100.10 │
0049 ├───────┤ ├────────┤ AND=(300) ├─────────────┬─────(S)─────────┬─┤
│ │ D20 D1 │ │ Order10_Waiting │ │
│ └───────────┘ │ W11.10 │ │
│ └───────(R)───────┘ │
│
; [أوردر 10] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده
│ Order10_Done Order10_Run Order10_Run │
│ 5.10 100.10 100.10 │
0050 ├─────┤ ├───────────┤ ├─────────────────────────┬─────(R)──────┬─┤
│ │ ┌──────────┐ │ │
│ ├─┤ MOV(021) ├─┤ │
│ │ │ &0 │ │ │
│ │ │ D20 │ │ │
│ │ └──────────┘ │ │
│ │ ┌─────────┐ │ │
│ └─┤ ++(590) ├──┘ │
│ │ D1 │ │
│ └─────────┘ │
│
; [أوردر 10] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره
│ Order10_Run Order10_Lamp │
│ 100.10 101.10 │
0051 ├─┬─────┤ ├────────────────┬────────────────────────────( )──────┤
│ │ Order10_Waiting │ │
│ │ W11.10 P_1s │ │
│ └───────┤ ├─────────┤ ├──┘ │
│
END ├───────────────────────────────────────────────────────────────[END]┤الكود (Instruction List — Omron CP1L (CPU-M))
'(D محفوظة بعد قطع الكهربا في أومرون، فلازم تتصفّر هنا) LD P_First_Cycle MOV(021) &0 D0 MOV(021) &1 D1 BSET(071) &0 D11 D20 '[أوردر 1] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني) LD 4.01 DIFU(013) W10.01 '[أوردر 1] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني LD W10.01 ANDNOT W11.01 ANDNOT 100.01 ++(590) D0 MOV(021) D0 D11 SET W11.01 '[أوردر 1] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي LD W11.01 AND=(300) D11 D1 SET 100.01 RSET W11.01 '[أوردر 1] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده LD 5.01 AND 100.01 RSET 100.01 MOV(021) &0 D11 ++(590) D1 '[أوردر 1] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره LD 100.01 LD W11.01 AND P_1s ORLD OUT 101.01 '[أوردر 2] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني) LD 4.02 DIFU(013) W10.02 '[أوردر 2] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني LD W10.02 ANDNOT W11.02 ANDNOT 100.02 ++(590) D0 MOV(021) D0 D12 SET W11.02 '[أوردر 2] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي LD W11.02 AND=(300) D12 D1 SET 100.02 RSET W11.02 '[أوردر 2] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده LD 5.02 AND 100.02 RSET 100.02 MOV(021) &0 D12 ++(590) D1 '[أوردر 2] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره LD 100.02 LD W11.02 AND P_1s ORLD OUT 101.02 '[أوردر 3] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني) LD 4.03 DIFU(013) W10.03 '[أوردر 3] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني LD W10.03 ANDNOT W11.03 ANDNOT 100.03 ++(590) D0 MOV(021) D0 D13 SET W11.03 '[أوردر 3] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي LD W11.03 AND=(300) D13 D1 SET 100.03 RSET W11.03 '[أوردر 3] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده LD 5.03 AND 100.03 RSET 100.03 MOV(021) &0 D13 ++(590) D1 '[أوردر 3] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره LD 100.03 LD W11.03 AND P_1s ORLD OUT 101.03 '[أوردر 4] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني) LD 4.04 DIFU(013) W10.04 '[أوردر 4] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني LD W10.04 ANDNOT W11.04 ANDNOT 100.04 ++(590) D0 MOV(021) D0 D14 SET W11.04 '[أوردر 4] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي LD W11.04 AND=(300) D14 D1 SET 100.04 RSET W11.04 '[أوردر 4] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده LD 5.04 AND 100.04 RSET 100.04 MOV(021) &0 D14 ++(590) D1 '[أوردر 4] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره LD 100.04 LD W11.04 AND P_1s ORLD OUT 101.04 '[أوردر 5] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني) LD 4.05 DIFU(013) W10.05 '[أوردر 5] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني LD W10.05 ANDNOT W11.05 ANDNOT 100.05 ++(590) D0 MOV(021) D0 D15 SET W11.05 '[أوردر 5] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي LD W11.05 AND=(300) D15 D1 SET 100.05 RSET W11.05 '[أوردر 5] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده LD 5.05 AND 100.05 RSET 100.05 MOV(021) &0 D15 ++(590) D1 '[أوردر 5] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره LD 100.05 LD W11.05 AND P_1s ORLD OUT 101.05 '[أوردر 6] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني) LD 4.06 DIFU(013) W10.06 '[أوردر 6] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني LD W10.06 ANDNOT W11.06 ANDNOT 100.06 ++(590) D0 MOV(021) D0 D16 SET W11.06 '[أوردر 6] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي LD W11.06 AND=(300) D16 D1 SET 100.06 RSET W11.06 '[أوردر 6] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده LD 5.06 AND 100.06 RSET 100.06 MOV(021) &0 D16 ++(590) D1 '[أوردر 6] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره LD 100.06 LD W11.06 AND P_1s ORLD OUT 101.06 '[أوردر 7] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني) LD 4.07 DIFU(013) W10.07 '[أوردر 7] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني LD W10.07 ANDNOT W11.07 ANDNOT 100.07 ++(590) D0 MOV(021) D0 D17 SET W11.07 '[أوردر 7] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي LD W11.07 AND=(300) D17 D1 SET 100.07 RSET W11.07 '[أوردر 7] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده LD 5.07 AND 100.07 RSET 100.07 MOV(021) &0 D17 ++(590) D1 '[أوردر 7] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره LD 100.07 LD W11.07 AND P_1s ORLD OUT 101.07 '[أوردر 8] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني) LD 4.08 DIFU(013) W10.08 '[أوردر 8] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني LD W10.08 ANDNOT W11.08 ANDNOT 100.08 ++(590) D0 MOV(021) D0 D18 SET W11.08 '[أوردر 8] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي LD W11.08 AND=(300) D18 D1 SET 100.08 RSET W11.08 '[أوردر 8] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده LD 5.08 AND 100.08 RSET 100.08 MOV(021) &0 D18 ++(590) D1 '[أوردر 8] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره LD 100.08 LD W11.08 AND P_1s ORLD OUT 101.08 '[أوردر 9] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني) LD 4.09 DIFU(013) W10.09 '[أوردر 9] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني LD W10.09 ANDNOT W11.09 ANDNOT 100.09 ++(590) D0 MOV(021) D0 D19 SET W11.09 '[أوردر 9] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي LD W11.09 AND=(300) D19 D1 SET 100.09 RSET W11.09 '[أوردر 9] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده LD 5.09 AND 100.09 RSET 100.09 MOV(021) &0 D19 ++(590) D1 '[أوردر 9] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره LD 100.09 LD W11.09 AND P_1s ORLD OUT 101.09 '[أوردر 10] نبضة واحدة لما طلب الأوردر يوصل (ولو الإشارة فضلت شغالة ماتتحسبش تاني) LD 4.10 DIFU(013) W10.10 '[أوردر 10] ياخد رقم دور: الرقم اللي بعد آخر رقم اتصرف، ويتعلّم إنه مستني LD W10.10 ANDNOT W11.10 ANDNOT 100.10 ++(590) D0 MOV(021) D0 D20 SET W11.10 '[أوردر 10] يبدأ لما ييجي دوره: مستني ورقمه = رقم الدور الحالي LD W11.10 AND=(300) D20 D1 SET 100.10 RSET W11.10 '[أوردر 10] لما يخلص: يقف، ويتمسح رقمه، والدور يروح للرقم اللي بعده LD 5.10 AND 100.10 RSET 100.10 MOV(021) &0 D20 ++(590) D1 '[أوردر 10] لمبة البيان: ثابتة وهو شغال، وبتفلاش كل ثانية وهو مستني دوره LD 100.10 LD W11.10 AND P_1s ORLD OUT 101.10
عايزها بطريقتك؟
اكتب وصف ماكينتك بالعربي، وAutoLadder يكتبلك البرنامج بأسماء كل النقط، وتجرّبه على المحاكي، وتصدّره لملف يفتح في برنامج الشركة.
جرّب ببلاش
AutoLadder Studio