Scilab/C4/Calling-User-Defined-Functions-in-XCOS/Hindi
From Script | Spoken-Tutorial
Time | Narration |
00:01 | 'Xcos' में 'Calling user-defined functions' पर स्पोकन ट्यूटोरियल में आपका स्वागत है। |
00:07 | इस ट्यूटोरियल में हम निम्न करना सीखेंगे: |
00:09 | * 'Scilab' में स्क्वैरिंग फंक्शन लिखना |
00:12 | * 'Xcos' में 'scifunc' ब्लॉक उपयोग करना |
00:15 | * विविध प्लॉट्स बनाने के लिए MUX ब्लॉक उपयोग करना |
00:19 | * विविध इनपुट्स और आउटपुट्स रखने वाले फंक्शन्स को कॉल करना |
00:24 | 'उबन्टु' 12.04 'ऑपरेटिंग सिस्टम' है जो संस्थापित 'Scilab' वर्जन '5.3.3' के साथ उपयोग किया जाता है। |
00:32 | आपको 'Scilab' और 'Xcos' की बुनियादी जानकारी होनी चाहिए। |
00:38 | यदि नहीं तो सम्बंधित ट्यूटोरियल्स के लिए कृपया 'spoken hyphen tutorial dot org' पर जाएँ। |
00:44 | अपने कंप्यूटर पर 'Scilab' शुरू करें। |
00:47 | 'Scilab' कंसोल में, टाइप करें 'editor' और एंटर दबाएं। |
00:53 | फिर निम्न कोड टाइप करें: |
00:55 | 'function स्पेस y इज़ इक्वल टू squareit ब्रैकेट खोलें a ब्रैकेट बंद करें' |
01:07 | एंटर की दबाएं और टाइप करें: |
01:10 | 'y' इज़ इक्वल टू 'a' की घात '2' |
01:14 | अंत में एक सेमीकोलन लगाएं। |
01:17 | फंक्शन एक इनपुट वेरिएबल 'a' और एक आउटपुट वेरिएबल 'y' रखता है। |
01:24 | फंक्शन का नाम 'squareit' है। |
01:27 | यह फंक्शन वेरिएबल 'a' को स्क्वायर करने का काम करेगा। |
01:31 | यह परिणाम को 'y' में संचित करेगा। |
01:34 | अब इस फाइल को वांछित डायरेक्टरी में सेव करते हैं। |
01:38 | मैं इस फाइल को 'squareit के नाम से और '.sci' एक्सटेंशन के साथ सेव करुँगी। |
01:44 | यहाँ हम फंक्शन्स को '.sci' फॉर्मेट में सेव करने का अनुसरण करते आ रहे हैं। |
01:50 | 'Scilab' कंसोल खोलें। |
01:53 | अब, टाइप करें 'Xcos' और एंटर दबाएं। |
01:57 | दो विंडोज़ 'Palette browser' और 'Untitled Xcos' विंडो खुलेंगी। |
02:04 | अब हम 'Xcos' डायग्राम बनाएंगे। |
02:06 | यह 'squareit' फंक्शन को एक्सेस करेगा जो अभी बना है। |
02:10 | यह 'scifunc' ब्लॉक प्रयोग करके किया जा सकता है। |
02:14 | 'Palette browser' विंडो पर जाएँ। |
02:17 | पैलेट ब्राउज़र में 'User-Defined' फंक्शन पर क्लिक करें। |
02:21 | इस सेशन में 'scifunc_block_m' ब्लॉक को ढूँढें। |
02:27 | इसे 'untitled Xcos' विंडो में खींचें और छोड़ें। |
02:32 | बेहतर दृश्य के लिए मैं 'untitled Xcos' विंडो को ज़ूम करुँगी। |
02:36 | जैसा आप देखते हैं मैं ज़ूम बटन प्रयोग करुँगी। |
02:40 | अब इसे कॉन्फ़िगर करने के लिए 'scifunc' ब्लॉक पर डबल क्लिक करें। |
02:44 | 'Scilab Multiple Values Request' नामक एक विंडो खुलेगी। |
02:49 | यह विंडो आपको 'scifunc' ब्लॉक के इनपुट और आउटपुट पोर्ट्स की संख्या को बदलने की अनुमति देगी। |
02:56 | हमारे फंक्शन 'squareit' के पास केवल एक इनपुट और आउटपुट वेरिएबल है। |
03:00 | अतः हम सेटिंग्स को ऐसे ही रहने देंगे। |
03:03 | 'OK' पर क्लिक करें। |
03:05 | एक नयी 'Scilab Input Value Request' विंडो खुलेगी। |
03:09 | टेक्स्ट बॉक्स में इनपुट और आउटपुट वेरिएबल्स के साथ फंक्शन का नाम टाइप करते हैं। |
03:14 | यह फंक्शन 'scifunc' ब्लॉक द्वारा कॉल किया जायेगा। |
03:18 | उपलब्ध टेक्स्ट बॉक्स में, |
03:20 | डिफ़ॉल्ट फंक्शन के नाम को एडिट करें। |
03:22 | टाइप करें: 'y1' इक्वल्स टू 'squareit' ब्रैकेट खोलें 'u1' ब्रैकेट बंद करें। |
03:31 | ध्यान दें कि यहाँ इनपुट और आउटपुट वेरिएबल्स क्रमशः 'u1' और 'y1' हैं। |
03:37 | ये वास्तविक फ़ंक्शन में उपयोग हुए वेरिएबल्स नामों की तरह नहीं बल्कि सिर्फ 'u' और 'y' की फॉर्म में होने चाहिए। |
03:45 | 'OK' पर क्लिक करें। |
03:47 | एक अन्य 'Scilab Input Value Request' विंडो खुलेगी। |
03:51 | आगामी तीनों विंडो जो खुलेंगी उनमें 'OK' पर क्लिक करते रहें। |
03:56 | 'scifunc' ब्लॉक अब कॉन्फ़िगर किया जाता है। |
04:00 | आगे हम 'sinusoid' जेनरेटर ब्लॉक को समिल्लित करेंगे। |
04:04 | 'Palette browser' विंडो में, 'Sources' सेक्शन पर क्लिक करें। |
04:08 | 'Untitled Xcos' विंडो में 'sinusoid' जेनरेटर ब्लॉक को खींचें और छोड़ें। |
04:14 | सहूलियत के लिए, उस ब्लॉक को 'scifunc' ब्लॉक के बायीं तरफ रखें। |
04:20 | अब हमें आउटपुट वेरिएबल प्लॉट करने के लिए एक ब्लॉक की ज़रुरत है। |
04:23 | 'Palette browser' विंडो में, 'Sinks' सेक्शन पर क्लिक करें। |
04:29 | 'Untitled Xcos' विंडो में 'CScope' ब्लॉक को खींचें और छोड़ें। |
04:34 | ब्लॉक को 'scifunc' ब्लॉक के दायीं तरफ रखें। |
04:38 | सहूलियत के लिए, इसे 'scifunc' ब्लॉक से दूर रखें। |
04:43 | ध्यान दें कि 'CScope' ब्लॉक एक लाल इनपुट पोर्ट रखता है। |
04:47 | यह एक इवेंट इनपुट है। |
04:49 | हमें एक इवेंट जेनरेटर ब्लॉक की ज़रुरत है। |
04:52 | 'Palette ब्राउज़र विंडो' में, 'Sources' सेक्शन पर क्लिक करें। |
04:57 | 'CLOCK अंडरस्कोर c' ब्लॉक को 'Untitled Xcos' विंडो में खींचें और छोड़ें। |
05:05 | इसे 'CScope' ब्लॉक के ऊपर स्थित करें। |
05:08 | ध्यान दें कि 'CScope' ब्लॉक केवल एक इनपुट पोर्ट रखता है। |
05:13 | लेकिन हम इनपुट और आउटपुट दोनों वेरिएबल्स को एक ही प्लॉट विंडो में प्लॉट करना चाहते हैं। |
05:18 | अतः हमें एक 'multiplexer' ब्लॉक की ज़रुरत है। |
05:22 | यह ब्लॉक दो इनपुट्स लेगा और एक आउटपुट पोर्ट पर आउटपुट देगा। |
05:28 | 'Palette ब्राउज़र विंडो' में, 'Signal Routing' सेक्शन पर क्लिक करें। |
05:33 | 'MUX' ब्लॉक को 'Untitled Xcos' विंडो में खींचें और छोड़ें। |
05:39 | ब्लॉक को 'scifunc' ब्लॉक और 'CScope' ब्लॉक के बीच में रखें। |
05:43 | अब मैं 'Mux' ब्लॉक को रीसाइज़ और दोबारा अलाइन करती हूँ। |
05:47 | अब हम ब्लॉक्स को एक साथ जोड़ते हैं। |
05:51 | 'Sinusoid generator' ब्लॉक के आउटपुट पोर्ट को 'scifunc' ब्लॉक के इनपुट पोर्ट से जोड़ते हैं। |
05:57 | अब 'scifunc' ब्लॉक के आउटपुट पोर्ट को 'MUX' के लोअर इनपुट से जोड़ते हैं। |
06:04 | 'MUX' ब्लॉक के आउटपुट पोर्ट को 'CScope' ब्लॉक के इनपुट पोर्ट से जोड़ते हैं। |
06:10 | 'CLOCK अंडरस्कोर c' ब्लॉक के आउटपुट पोर्ट को 'CScope' ब्लॉक के इवेंट इनपुट पोर्ट से जोड़ते हैं। |
06:19 | हमें 'sine' इनपुट को भी प्लॉट करना है। |
06:22 | हमें 'Sinusoid जेनरेटर' ब्लॉक को 'MUX' से जोड़ना है। |
06:26 | 'MUX' ब्लॉक के ऊपरी इनपुट पोर्ट पर क्लिक करें। |
06:30 | फिर बिना छोड़े हुए, अपने माउस पॉइंटर को 'Sinusoid generator' ब्लॉक और 'scifunc' ब्लॉक के बीच वाले लिंक की तरफ ले जाएँ। |
06:39 | लिंक को मोड़ने के लिए, माउस बटन को छोड़ दें या अलग-अलग स्थानों पर क्लिक करें। |
06:44 | जैसे ही आप लिंक पर पॉइंटर लाते हैं, लिंक हरा हो जाता है। |
06:49 | इन दोनों ब्लॉक्स के बीच में लिंक बनाने के लिए माउस बटन को छोड़ दें या एक बार क्लिक करें। |
06:55 | अब हम अन्य ब्लॉक्स के विन्यास को देखते हैं। |
06:59 | हम 'sinusoid generator' ब्लॉक की 'फ्रीक्वेंसी (आवृति)', 'मैग्नीट्यूड (परिमाण)' और 'फेज़ (अवस्था)' बदल सकते हैं। |
07:04 | यह करने के लिए, 'Sinusoid generator' ब्लॉक पर डबल क्लिक करें। |
07:09 | 'कॉन्फ़िग्रेशन विंडो' खुलेगी। |
07:11 | हम 'Magnitude' और 'Frequency' को '1' और 'Phase' को '0' रखेंगे। |
07:18 | 'कॉन्फ़िग्रेशन विंडो' को बंद करने के लिए 'OK' पर क्लिक करें। |
07:21 | अब 'CScope' ब्लॉक को कॉन्फ़िगर करते हैं। |
07:25 | इसकी कॉन्फ़िगरेशन विंडो को खोलने के लिए 'CScope' ब्लॉक पर डबल क्लिक करें। |
07:30 | 'Ymin' पैरामीटर को 'माइनस 2' और 'Ymax' पैरामीटर को '2' करें। |
07:37 | 'Refresh period' वैल्यू को '10' करें। |
07:41 | इस वैल्यू को ध्यान रखें। |
07:44 | 'Buffer size' वैल्यू को '2' करें। |
07:47 | 'OK' पर क्लिक करें। |
07:50 | अब 'CLOCK_c' ब्लॉक को कॉन्फ़िगर करते हैं। |
07:54 | इसकी कॉन्फ़िगरेशन विंडो को खोलने के लिए ब्लॉक पर डबल क्लिक करें। |
07:58 | 'Period' की वैल्यू को '0.1' रहने दें। |
08:02 | 'Initialisation Time' को '0' करें। |
08:06 | 'OK' पर क्लिक करें। |
08:08 | अब 'Simulation' पैरामीटर्स को बदलते हैं। |
08:12 | 'Untitled Xcos' विंडो की मेन्यू बार पर 'Simulation' टैब पर क्लिक करें। |
08:17 | अब ड्राप डाउन मेन्यू से 'Setup' पर क्लिक करें। |
08:22 | 'CScope' ब्लॉक के 'Refresh period' से मिलान करने के लिए 'Final Integration time' को बदलें। |
08:28 | 'Refresh period' की वैल्यू '10' थी। |
08:32 | अतः, 'Final integration time' की वैल्यू को '10' करें। |
08:36 | 'OK' पर क्लिक करें। |
08:38 | अब, 'File' पर क्लिक करें और फिर 'Xcos' डायग्राम को सेव करने के लिए 'Save' पर क्लिक करें। |
08:44 | 'Xcos' डायग्राम को सेव करने के लिए एक वांछित डिरेक्टरी चुनें। |
08:48 | यद्यपि, यह सलाह दी जाती है कि इसे आप उसी फोल्डर में सेव करें जहाँ आपने 'squareit.sci' फाइल सेव की है। |
08:56 | 'OK' पर क्लिक करें। |
08:58 | ध्यान दें कि 'scifunc' ब्लॉक 'squareit' फंक्शन को कॉल करेगा। |
09:02 | इसका मतलब है कि 'Xcos' डायग्राम को निष्पादित करने से पहले हमें 'squareit' फंक्शन को लोड करना चाहिए। |
09:09 | 'Scilab एडिटर' विंडो पर जाएँ, जहाँ 'squareit.sci' फाइल खुली हुई है। |
09:16 | एडिटर के मेन्यू बार पर उपलब्ध 'Execute' बटन पर क्लिक करें। |
09:21 | यह 'squareit' फंक्शन को लोड करेगा। |
09:24 | अब हम 'Xcos' डायग्राम को निष्पादित कर सकते हैं। |
09:28 | 'Xcos डायग्राम' फाइल को खोलें। |
09:31 | 'Xcos' विंडो के 'मेन्यू बार' पर उपलब्ध 'Start' बटन पर क्लिक करें। |
09:37 | एक ग्राफ़िक विंडो खुलेगी। |
09:39 | यह विंडो दो प्लॉट्स रखेगी। |
09:42 | काले रंग में इनपुट 'sine wave' और हरे रंग में आउटपुट 'sine wave' |
09:47 | ध्यान दें कि 'squareit' फंक्शन में कार्यान्वित हुए स्क्वैरिंग फंक्शन ने निश्चित ही साइन वेव का स्क्वायर किया है। |
09:55 | अतः आउटपुट 'साइन' वेव पॉज़िटिव एक्सिस पर स्थानांतरित की गई है। |
10:00 | 'plot' विंडो को बंद करें। |
10:02 | अब देखते हैं कि एक फंक्शन जो एक से ज़्यादा इनपुट और आउटपुट वेरिएबल्स रखता है उसे 'कॉल' करने के लिए 'scifunc' ब्लॉक को कैसे एडिट करते हैं। |
10:10 | 'scilab' एडिटर विंडो पर जाते हैं। |
10:13 | दो इनपुट और आउटपुट वेरिएबल्स रखने के लिए 'squareit' फंक्शन को एडिट रखें। |
10:19 | आउटपुट वेरिएबल को निम्न की तरह एडिट करें स्क्वायर ब्रैकेट खोलें 'y' कॉमा 'z' स्क्वायर ब्रैकेट बंद करें। |
10:28 | इनपुट वेरिएबल्स को निम्न की तरह एडिट करें ब्रैकेट खोलें 'a' कॉमा 'b' ब्रैकेट बंद करें। |
10:36 | हम स्क्वायर किए हुए आउटपुट को 1 यूनिट स्थानांतरित करके फंक्शन को बदलेंगे। |
10:41 | मेन फंक्शन लाइन को निम्न की तरह एडिट करें: |
10:44 | 'y' इज़ इक्वल टू 'b' प्लस 'a' की घात 2 अंत में एक सेमीकोलन लगाएं। |
10:51 | एक आउटपुट भी बनाएं जिसका एम्प्लिट्यूड (आयाम) इनपुट का आधा होगा। |
10:56 | 'एंटर' की दबाकर अगली लाइन पर जाएँ और टाइप करें: |
11:01 | 'z' इज़ इक्वल टू 0.5 मल्टिप्लाइड बाइ a अंत में एक सेमीकोलन लगाएं। |
11:10 | अब फाइल को सेव करें। |
11:12 | 'Xcos' विंडो खोलें। |
11:15 | इसे कॉन्फ़िगर करने के लिए 'scifunc' ब्लॉक पर डबल क्लिक करें। |
11:19 | 'input port size' फील्ड में, 1 कॉमा 1 के बाद एक सेमीकोलन लगाएं और दोबारा 1 कॉमा 1 टाइप करें। |
11:27 | उसी प्रकार, 'output port size' फील्ड में, 1 कॉमा 1 के बाद एक सेमीकोलन लगाएं और दोबारा 1 कॉमा 1 टाइप करें। |
11:36 | 'OK' पर क्लिक करें। |
11:38 | एक नयी 'Scilab Input Value Request' विंडो खुलेगी। |
11:41 | टेक्स्ट बॉक्स में, |
11:43 | y1 के बाद एक कॉमा लगाएं और टाइप करें y2, |
11:48 | y1 और y2 को स्क्वायर ब्रैकेट्स में रखें। |
11:52 | अब 'u1' के बाद एक कॉमा लगाएं और टाइप करें 'u2' |
11:57 | 'OK'पर क्लिक करें। |
11:59 | एक अन्य 'Scilab Input Value Request' विंडो खुलेगी। |
12:03 | आगामी दिखने वाली तीनों विंडोज़ में 'OK' पर क्लिक करते रहें। |
12:08 | अब 'scifunc' ब्लॉक कॉन्फ़िगर होता है। |
12:11 | अब मैं 'scifunc' ब्लॉक को दोबारा अलाइन करती हूँ। |
12:14 | 'Palette browser' विंडो खोलें। |
12:17 | 'Sources' सेक्शन में, 'Constant अंडरस्कोर m' ब्लॉक को 'Xcos' विंडो में खींचें और छोड़ें। |
12:24 | इसे 'Sinusoid generator' ब्लॉक के नीचे स्थित करें। |
12:28 | 'Constant अंडरस्कोर m' ब्लॉक को 'scifunc' ब्लॉक के निचले इनपुट से जोड़ें। |
12:36 | इस ब्लॉक की डिफ़ॉल्ट वैल्यू 1 है। |
12:39 | इसे ऐसे ही रहने दें। |
12:41 | 'MUX' ब्लॉक पर डबल क्लिक करें। |
12:44 | 'input port size' को 3 करें। |
12:47 | 'OK' पर क्लिक करें। |
12:48 | अब मैं 'MUX' ब्लॉक को रीसाइज़ करती हूँ और मैं 'MUX' और 'CSCOPE' ब्लॉक को ठीक से जोडूँगी। |
12:59 | 'scifunc' ब्लॉक के निचले आउटपुट पोर्ट को 'MUX' ब्लॉक के निचले इनपुट पोर्ट से जोड़ें। |
13:07 | 'File' पर क्लिक करें और 'xcos' फाइल को सेव करने के लिए 'Save' चुनें। |
13:12 | उस 'Scilab editor' पर जाएँ जिसमें 'squareit.sci' फाइल खुली हुई है। |
13:18 | एडिटर की 'मेन्यू बार' पर उपलब्ध 'Execute' बटन पर क्लिक करें। |
13:23 | यह 'squareit' फंक्शन को लोड करेगा। |
13:26 | अब हम 'Xcos' डायग्राम को निष्पादित कर सकते हैं। |
13:30 | 'Xcos' विंडो की मेन्यू बार पर उपलब्ध 'Start' बटन पर क्लिक करें। |
13:35 | एक ग्राफिक विंडो दिखेगी। |
13:38 | यह विंडो तीन प्लॉट्स रखेगी। |
13:40 | काले रंग में इनपुट 'sine wave', |
13:43 | हरे रंग में आउटपुट 'sine wave' और |
13:45 | लाल रंग में amplitude scaled input. |
13:49 | ध्यान दें कि फ़ंक्शन ने इनपुट 'sine wave' को निश्चित ही स्क्वायर किया है और १ यूनिट ऑफसेट से स्थानांतरित भी किया है, जैसे कि अपेक्षित है। |
13:59 | हमें इनपुट 'sine wave' का बड़ा हुआ आयाम भी मिलता है, जैसे कि अपेक्षित है। |
14:05 | प्लॉट विंडो को बंद करें। |
14:08 | अब इसे सारांशित करते हैं। |
14:10 | इस ट्यूटोरियल में हमने सीखा: |
14:12 | * 'Scilab' में स्क्वैरिंग फंक्शन लिखना |
14:15 | * 'Xcos' में 'scifunc' ब्लॉक उपयोग करना |
14:19 | * विविध प्लॉट्स बनाने के लिए 'MUX' ब्लॉक उपयोग करना |
14:22 | * अनेक इनपुट और आउटपुट रखने वाले फंक्शन्स को कॉल करना |
14:26 | निम्न लिंक पर उपलब्ध वीडिओ देखें। |
14:29 | यह स्पोकन ट्यूटोरियल प्रोजेक्ट को सारांशित करता है। |
14:33 | अच्छी बैंडविड्थ न मिलने पर आप इसे डाउनलोड करके देख सकते हैं। |
14:37 | स्पोकन ट्यूटोरियल प्रोजेक्ट टीम: |
14:40 | स्पोकन ट्यूटोरियल्स का उपयोग करके कार्यशालाएं चलाती है। |
14:43 | ऑनलाइन टेस्ट पास करने वालों को प्रमाणपत्र देते हैं। |
14:47 | अधिक जानकारी के लिए, कृपया contact@spoken-tutorial.org पर लिखें। |
14:53 | स्पोकन ट्यूटोरियल प्रोजेक्ट टॉक टू अ टीचर प्रोजेक्ट का हिस्सा है। |
14:57 | यह भारत सरकार के एम एच आर डी के आई सी टी के माध्यम से राष्ट्रीय साक्षरता मिशन द्वारा समर्थित है। |
15:05 | इस मिशन पर अधिक जानकारी spoken-tutorial.org/NMEICT-Intro पर उपलब्ध है। |
15:15 | आशा करती हूँ यह ट्यूटोरियल आपके लिए उपयोगी था। |
15:19 | आय आय टी बॉम्बे से मैं श्रुति आर्य आपसे विदा लेती हूँ। हमसे जुड़ने के लिए धन्यवाद। |