FANUC मल्टीपाथ प्रतीक्षा: वही दो प्रतीक्षा बिंदु उलटे क्रम में हों तो प्रोग्राम आगे क्यों नहीं बढ़ता?
30i/31i/32i-B के प्रतीक्षा फ़ंक्शन से दो सहभागी पाथ की सामान्य प्रतीक्षा का समय निकालें, फिर A और B का क्रम पलटने से बनी चक्रीय प्रतीक्षा से तुलना करें। मशीनिंग समय के अंतर और अगम्य प्रतीक्षा बिंदु अलग समझें।
विषय सूची
दोनों पाथ प्रतीक्षा निर्देश पर रुके हों, तो जरूरी नहीं कि कोई पाथ बहुत धीमी मशीनिंग कर रहा हो। यदि दोनों ऐसे चिह्न की प्रतीक्षा कर रहे हैं जहाँ दूसरा पाथ अपनी वर्तमान प्रतीक्षा पार करने के बाद ही पहुँच सकता है, तो और देर तक रुकने से क्रम का विरोध हल नहीं होगा।
प्रतीक्षा मेल खाते चिह्न की है, किसी भी M फ़ंक्शन के पूरा होने की नहीं
FANUC 30i/31i/32i-MODEL B विवरण मैनुअल B-64482EN/03, §7.5, पृष्ठ 254–255 (निर्माता के मैनुअल की सार्वजनिक प्रति) बताता है कि मल्टीपाथ प्रतीक्षा कॉन्फ़िगर किए हुए प्रतीक्षा M कोड को अन्य सहभागी पाथ से मिलाती है। मेल पूरा होने के बाद ही अगला ब्लॉक चलता है। प्रतीक्षा निर्देश अलग ब्लॉक में होना चाहिए। ये M कोड PMC को आउटपुट नहीं होते, इसलिए इन्हें साधारण सहायक फ़ंक्शन मानकर हर बार M-पूर्णता सिग्नल ढूँढना सही नहीं।
नीचे इस फ़ंक्शन वाले मल्टीपाथ सिस्टम के दो सहभागी पाथ का मॉडल है। प्रतीक्षा सक्रिय है, उसे अनदेखा करने का कोई ऑपरेशन नहीं है और कोई अन्य सहभागी पाथ नहीं है। A और B केवल अवधारणात्मक चिह्न हैं, मशीन में दर्ज करने योग्य M कोड नहीं।
सामान्य क्रम में प्रतीक्षा का समय निकाला जा सकता है
| चरण | पाथ 1 | पाथ 2 | साझा परिणाम |
|---|---|---|---|
| प्रतीक्षा A तक पहुँचने से पहले | 3 s मशीनिंग; t=3 पर A | 5 s मशीनिंग; t=5 पर A | t=5 पर मेल; पाथ 1 की प्रतीक्षा 2 s |
| A के बाद, B से पहले | और 2 s मशीनिंग; t=7 पर B | और 4 s मशीनिंग; t=9 पर B | t=9 पर मेल; पाथ 1 फिर 2 s प्रतीक्षा |
यह स्वनिर्मित समय मॉडल है, जिसमें निर्देश निष्पादन का अतिरिक्त समय छोड़ा गया है। दोनों चरणों का साझा समय max(3,5)+max(2,4)=9 s है, सभी पाथ का मशीनिंग समय जोड़ने वाला 14 s नहीं। पाथ 1 कुल 4 s प्रतीक्षा में है; इसका अर्थ उसकी अपनी मशीनिंग गति में खराबी नहीं है।
केवल एक पाथ का क्रम बदलने पर क्या होगा
अब पाथ 1 A→B और पाथ 2 B→A क्रम में चलता है। पाथ 1 A पर रुककर पाथ 2 के A पर आने की प्रतीक्षा करता है। पाथ 2 B पर रुककर पाथ 1 के B पर आने की प्रतीक्षा करता है। दूसरे को जिस स्थान की जरूरत है, वहाँ पहुँचने के लिए दोनों को पहले अपनी वर्तमान प्रतीक्षा से निकलना होगा। इससे चक्रीय प्रतीक्षा बनती है।
सामान्य उदाहरण के विपरीत, यहाँ ऐसा दूसरा पाथ नहीं है जो “कुछ और सेकंड मशीनिंग करके पहुँच जाएगा”। फ़ीड घटाने या प्रतीक्षा बढ़ाने से चिह्नों का क्रम नहीं बदलता। यह निष्कर्ष दोनों निष्पादन क्रमों की निर्भरता से निकला है; इसमें किसी टाइमआउट अलार्म का निश्चित आना नहीं माना गया है।
दोनों निष्पादन स्थितियाँ साथ देखें
कारण खोजते समय कम से कम वर्तमान प्रतीक्षा चिह्न, सहभागी पाथ, दूसरे पाथ की वर्तमान प्रोग्राम स्थिति और दोनों एक ही मशीनिंग चक्र में हैं या नहीं, यह मिलाएँ। कोई समान चिह्न प्रोग्राम में कहीं मौजूद है, इससे इस चक्र में वहाँ पहुँचना साबित नहीं होता। कंडीशनल शाखा से कोई प्रतीक्षा बिंदु छूटने पर भी मिलान संबंध बदलता है।
यदि एक पाथ अभी सीमित अवधि का मशीनिंग खंड पूरा कर रहा है, तो पहले चक्र समय का विश्लेषण करें। यदि दोनों ऐसे प्रतीक्षा बिंदुओं पर रुक गए हैं जहाँ दूसरा पहुँच नहीं सकता, तो प्रोग्राम क्रम जाँचें। प्रतीक्षा अक्सर साझा मशीनिंग क्षेत्र का समन्वय करती है; मॉडल जाँचने के लिए प्रतीक्षा को जबरन अनदेखा न करें। अन्य प्रोग्राम व्यवहार देखें OPTION अनुभाग।