एक्शन
एक्शन स्टेप के दाईं ओर के आयत हैं। वे बताते हैं कि स्टेप सक्रिय रहते हुए, या सक्रिय होने पर, सिस्टम क्या करता है। कोई स्टेप चुनें और एक्शन जोड़ने के लिए A दबाएँ; अगला जोड़ने के लिए किसी एक्शन पर फिर से A दबाएँ। प्रॉपर्टीज़ पैनल के चित्र वाले बटनों से उसका प्रकार चुनें: हर बटन दिखाता है कि आरेख उस प्रकार को कैसे बनाता है।
कंटीन्यूअस एक्शन
सबसे आम प्रकार। टेक्स्ट किसी आउटपुट (या इंटरनल वेरिएबल) का नाम होता है, जैसे Pump। स्टेप सक्रिय रहने तक आउटपुट सत्य रहता है, और जैसे ही कोई सक्रिय स्टेप उसे नहीं चलाता, असत्य हो जाता है।
कंडीशन (एक असाइनमेंट कंडीशन) जोड़ने के लिए कंडीशनल प्रकार चुनें: उसका फ़ील्ड प्रकार बटनों के नीचे दिखाई देता है, और आउटपुट तब तक सत्य रहता है जब तक स्टेप सक्रिय है और कंडीशन सत्य है। इसे बॉक्स के ऊपर एक छोटी लाइन पर बनाया जाता है।
कंडीशन में टाइमर दूसरे नोटेशन के डिलेड और टाइम-लिमिटेड एक्शन देते हैं:
5s/X4— डिलेड: स्टेप 4 सक्रिय होने के 5 s बाद आउटपुट चालू होता है।/(5s/X4)— टाइम-लिमिटेड: केवल स्टेप 4 के पहले 5 s के दौरान चालू।
ध्यान दें: क्षणिक विकास के दौरान पार किए गए स्टेप (देखें GRAFCET की मूल बातें) अपने कंटीन्यूअस एक्शन नहीं चलाते।
स्टोर्ड एक्शन
स्टोर्ड एक्शन किसी मान को एक बार बदलता है, और वह मान तब तक बना रहता है जब तक कोई दूसरा एक्शन उसे न बदले। इसका टेक्स्ट एक असाइनमेंट होता है: C := C + 1, Motor := 0, Speed := 2.5। किसी BOOL वेरिएबल को TRUE करने के लिए केवल उसका नाम काफ़ी है: Motor का अर्थ है Motor := 1।
- एक्टिवेशन पर — स्टेप सक्रिय होने पर चलता है। बॉक्स के ऊपर ↑ तीर के साथ बनाया जाता है।
- डीएक्टिवेशन पर — स्टेप निष्क्रिय होने पर चलता है। बॉक्स के नीचे ↓ तीर के साथ बनाया जाता है।
- इवेंट पर — स्टेप सक्रिय रहते हुए हर बार इवेंट होने पर चलता है, जैसे
↑reset। ऊपर दाईं ओर इवेंट के बगल में एक फ़्लैग के साथ बनाया जाता है। इवेंट प्रॉपर्टीज़ पैनल में दर्ज करें; बिना इवेंट वाला इवेंट पर स्टोर्ड एक्शन कभी नहीं चलता और समस्या के रूप में दिखाया जाता है।
एक्टिवेशन और डीएक्टिवेशन एक्शन की भी कंडीशन हो सकती है: वे तभी चलते हैं जब उस क्षण कंडीशन सत्य हो।
स्टोर्ड एक्शन उन स्टेप द्वारा भी चलाए जाते हैं जो क्षणिक विकास के दौरान केवल पार किए जाते हैं। इनका उपयोग गिनने, किसी मान को लैच करने (एक स्टेप में Motor := 1, दूसरे में Motor := 0) या यह याद रखने के लिए करें कि कुछ हुआ था।
फ़ोर्सिंग ऑर्डर
फ़ोर्सिंग ऑर्डर अपना स्टेप सक्रिय रहते हुए किसी दूसरे आंशिक grafcet पर एक स्थिति लागू करता है: G2{8} grafcet G2 का केवल स्टेप 8 सक्रिय करता है, G2{*} G2 को उसकी वर्तमान स्थिति में फ़्रीज़ करता है, G2{} उसके सभी स्टेप निष्क्रिय करता है और G2{INIT} उसे उसकी प्रारंभिक स्थिति में वापस लाता है। इसे डबल फ़्रेम के साथ बनाया जाता है। देखें मैक्रो-स्टेप, एनक्लोज़िंग स्टेप और फ़ोर्सिंग।
बिना स्टेप के एक्शन
एक्शन का किसी स्टेप से जुड़ा होना ज़रूरी नहीं है। कुछ भी न चुना हो, तब A दबाएँ (या एक्शन टूल चुनें) और खाली कैनवास पर क्लिक करें: एक्शन अकेले, बिना लिंक के बनाया जाता है, और वह हमेशा सक्रिय रहता है।
- बिना स्टेप का कंटीन्यूअस एक्शन अपना आउटपुट तब सेट करता है जब भी उसकी असाइनमेंट कंडीशन सत्य हो, स्टेप चाहे जो हों: कंडीशन
a * bवालाLampलॉजिकLamp = a · bहै। बिना कंडीशन के आउटपुट हमेशा सत्य रहता है। - इवेंट पर स्टोर्ड एक्शन हर बार इवेंट होने पर चलता है, जैसे
↑pulseपरC := C + 1पल्स गिनता है। एक्टिवेशन पर वह सिम्युलेशन शुरू होने पर एक बार चलता है। डीएक्टिवेशन पर वह कभी नहीं चलता, क्योंकि एक्शन कभी डीएक्टिवेट नहीं होता।
किसी भी एक्शन को खिसकाने के लिए उसे खींचें: किसी स्टेप पर, ताकि वह वहाँ जुड़ जाए (स्टेप हाइलाइट होता है और एक निशान स्टेप के एक्शन के बीच उसकी जगह दिखाता है), या खाली कैनवास पर, ताकि वह बिना स्टेप के रहे।
कई एक्शन
किसी स्टेप के कितने भी एक्शन हो सकते हैं; वे अगल-बगल बनाए जाते हैं। उनका क्रम बदलने के लिए किसी एक को पंक्ति में खींचें, या प्रॉपर्टीज़ पैनल में एक्शन बाएँ खिसकाएँ / एक्शन दाएँ खिसकाएँ का उपयोग करें, जहाँ चुना हुआ स्टेप अपने एक्शन को छोटी पंक्तियों के रूप में दिखाता है (खोलने के लिए किसी एक पर क्लिक करें)। Del से एक्शन हटाएँ।
सावधान: जब दो स्टेप जो एक साथ सक्रिय हो सकते हैं, दोनों एक ही आउटपुट को कंटीन्यूअस एक्शन से चलाते हैं, तो परिणाम समझना मुश्किल होता है। GrafcetMaker इसके बारे में चेतावनी देता है।