Difference between revisions of "Scilab/C4/Calling-User-Defined-Functions-in-XCOS/Gujarati"
From Script | Spoken-Tutorial
Jyotisolanki (Talk | contribs) |
Jyotisolanki (Talk | contribs) |
||
| Line 215: | Line 215: | ||
|03:09 | |03:09 | ||
| − | | | + | | ટેક્સ બોક્સમાં ઈનપુટ અને આઉટપુત વેરીએબલસ ના સાથે ફંક્શન નું નામ ટાઈપ કરો. |
|- | |- | ||
| 03:14 | | 03:14 | ||
| − | | | + | | આ ફંક્શન '''scifunc''' બ્લોકથી કોલ કરવામાં આવશે. |
|- | |- | ||
| Line 226: | Line 226: | ||
| 03:18 | | 03:18 | ||
| − | | | + | | ઉપલબ્ધ એક્સ બોક્સમાં, |
|- | |- | ||
| Line 232: | Line 232: | ||
| 03:20 | | 03:20 | ||
| − | | | + | | ડીફોલ્ટ ફંક્શન ના નામ ને એડિટ કરો. |
|- | |- | ||
| Line 238: | Line 238: | ||
| 03:22 | | 03:22 | ||
| − | | | + | |ટાઈપ કરો '''y1''' equal to '''squareit''' ખુલ્લો કૌંસ '''u1''' બંદ કૌંસ. |
|- | |- | ||
| Line 244: | Line 244: | ||
| 03:31 | | 03:31 | ||
| − | | | + | | નોંધ લો કે અહી ઈનપુટ અને આઉટપુત વેરીએબલસ ક્રમશ: '''u1''' અને '''y1''' છે. |
|- | |- | ||
| Line 250: | Line 250: | ||
| 03:37 | | 03:37 | ||
| − | | | + | | આ અચૂક રીતે '''u''' અને '''y''' ફોર્મમાં રહેવું જોઈએ અને આમાં જે વેરીએબલ નેમ આપણે ઉપયોગ કર્યો છે તે માં નહી રહેવું જોઈએ. |
|- | |- | ||
| Line 256: | Line 256: | ||
| 03:45 | | 03:45 | ||
| − | | | + | | '''OK.''' પર ક્લિક કરો. |
|- | |- | ||
| Line 262: | Line 262: | ||
| 03:47 | | 03:47 | ||
| − | | | + | | અન્ય '''Scilab Input Value Request''' વિન્ડો ખુલશે. |
|- | |- | ||
| Line 268: | Line 268: | ||
| 03:51 | | 03:51 | ||
| − | | | + | |પછીની જે ત્રણ વિન્ડો ખુલશે તેમાં '''OK''' પર ક્લિક કરતા રહો. |
|- | |- | ||
| Line 274: | Line 274: | ||
|03:56 | |03:56 | ||
| − | | | + | |હવે '''scifunc''' બોલ્ક કોન્ફીગર છે. |
|- | |- | ||
| Line 280: | Line 280: | ||
| 04:00 | | 04:00 | ||
| − | | | + | | આગળ આપણે '''sinusoid''' જનરેટ બ્લોકને સમાવેશ કરીશું. |
|- | |- | ||
| Line 286: | Line 286: | ||
| 04:04 | | 04:04 | ||
| − | | | + | | '''Palette browser''' વિન્ડો માં '''Sources''' સેક્શન પર ક્લિક કરો. |
| + | |||
|- | |- | ||
| Line 292: | Line 293: | ||
| 04:08 | | 04:08 | ||
| − | | | + | | '''Untitled Xcos''' વિન્ડોમાં '''Sinusoid generator''' બોલ્કને ડ્રેગ અને ડ્રોપ કરો. |
|- | |- | ||
| Line 298: | Line 299: | ||
| 04:14 | | 04:14 | ||
| − | | | + | | અનુકૂળતા માટે તે બ્લોકને '''scifunc''' બ્લોકથી ડાબી બાજુએ સ્થિત કરો. |
|- | |- | ||
| 04:20 | | 04:20 | ||
| − | | | + | | હવે આપણને આઉટપુટ વેરીએબલ પ્લોટ કરવા માટે એક બ્લોકની જુરીયાત છે. |
|- | |- | ||
| 04:23 | | 04:23 | ||
| − | | | + | | '''Palette browser''' વિન્ડોમાં , '''Sinks''' સેક્શન પર ક્લિક કરો. |
|- | |- | ||
| 04:29 | | 04:29 | ||
| − | | | + | | '''Untitled Xcos''' વિન્ડો માં '''CScope''' બ્લોકને ડ્રેગ ને ડ્રોપ કરો. |
|- | |- | ||
| Line 317: | Line 318: | ||
| 04:34 | | 04:34 | ||
| − | | Place the block towards the right of the '''scifunc''' | + | | Place the block towards the right of the '''scifunc''' બ્લોક . આ બ્લોકને '''scifunc''' બ્લોક ના जमनी |
|- | |- | ||
Revision as of 12:50, 6 January 2016
| Time | Narration |
| 00:01 | Calling user-defined functions in Xcos પરના આ સ્પોકન ટ્યુટોરિયલમાં તમારું સ્વાગત છે. |
| 00:07 | Iઆ ટ્યુટોરીયલના માં આપણે શીખીશું: |
| 00:09 | * સાઈલેબમાં squaring function લખતા. |
| 00:12 | * To use theblock in Xcos માં scifunc બોલ્ક ઉપયોગ કરતા. |
| 00:15 | * વિવિધ પ્લોટ્સ બનાવવા માટે MUX block નો ઉપયોગ કરરતા. |
| 00:19 | * વિવિધ ઈનપુટ અને આઉટ પુટસ ધરાવતા ફંક્શન ને કોલ કરતા. |
| 00:24 | installed. હું Ubuntu 12.04 ઓપરેટીંગ સીસ્ટમ અને Scilab 5.3.3 ઉપયોગ કરી રહી છું. |
| 00:32 | આ ટ્યુટોરિયલના અભ્યાસ માટે તમને સાઈલેબઅને Xcos નું સમાન્ય જ્ઞાનની જરૂરિયાત છે.
|
| 00:38 | જો નથી તો સાઈલેબ માટે સ્પોકન ટ્યુટોરિયલ વેબ સાઈટ પર ઉપલબ્ધ સંબંધિત ટ્યુટોરિયલ જુઓ. |
| 00:44 | તમારા કમ્પ્યુટર પર સાઈલેબને શરુ કરો. |
| 00:47 | સાઈલેબ કંસોલ પર ટાઈપ કરો editor અને એન્ટર દબાવો. |
| 00:53 | પછી આપેલ કોડ ટાઈપ કરો: |
| 00:55 | function space y is equal to squareit ખુલ્લો કૌંસ બંદ કૌંસ . |
| 01:07 | Enter દબાવો અને ટાઈપ કરો : |
| 01:10 | y is equal to a raise to 2 |
| 01:14 | અંતમાં સેમીકોલન ઉમેરો. |
| 01:17 | ફંક્શન એક ઈનપુટ વેરીએબલ a અને એક આઉટપુટ વેરીએબલ y ધરાવે છે. |
| 01:24 | ફંક્શન નું નામ squareit છે. |
| 01:27 | આ ફંક્શન વેરીએબલ a. ને વર્ગ કરવાનું કામ કરશે. |
| 01:31 | y. હું પરિણામને y. માં સંગ્રહિત કરીશ. |
| 01:34 | હવે આ ફાઈલને ઇચ્છિત ડિરેક્ટરીમાં સેવ કરીએ. |
| 01:38 | હું આ ફાઈલને squareit નામ અને .sci એક્સ્ટેંશન સાથે સેવ કરીશ. |
| 01:44 | અહી આપણે ફંક્શનસ ને .sci ફોરમેટમાં સેવ કરવાની પરંપરા નું અનુસરણ કરી રહ્યા છીએ. |
| 01:50 | સીલેબ કંસોલ પર જઈએ. |
| 01:53 | હવે ટીપ કરો Xcos અને એન્ટર દબાવો. |
| 01:57 | બે વિન્ડો Palette browser અને Untitled Xcos વિન્ડો ખુલશે.
|
| 02:04 | હવે આપણે Xcos નું ડાઈગ્રામ બનાવીશું. |
| 02:06 | આ squareit ફંક્શન ને એક્સેસ કરશે જે હમણાં બનાવ્યું છે. |
| 02:10 | આ scifunc બ્લોક નો ઉપયોગ કરીને કરી શકાય છે. |
| 02:14 | Palette browser વિન્ડો પર જઈએ. |
| 02:17 | pallet browser પર 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 | Our function squareit has only one input and output variable. આપણું ફંક્શન squareit પાસે ફક્ત ઈનપુટ અને આઉટપુટ વેરીએબલ છે. |
| 03:00 | માટે આપણે સેટિંગને જેમ છે તેમ રહેવા દઈએ છીએ. |
| 03:03 | OK પર ક્લિક કરો. |
| 03:05 | એક નવું Scilab Input Value Request વિન્ડો ખુલશે . |
| 03:09 | ટેક્સ બોક્સમાં ઈનપુટ અને આઉટપુત વેરીએબલસ ના સાથે ફંક્શન નું નામ ટાઈપ કરો. |
| 03:14 | આ ફંક્શન scifunc બ્લોકથી કોલ કરવામાં આવશે. |
| 03:18 | ઉપલબ્ધ એક્સ બોક્સમાં, |
| 03:20 | ડીફોલ્ટ ફંક્શન ના નામ ને એડિટ કરો. |
| 03:22 | ટાઈપ કરો y1 equal to 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 generator બોલ્કને ડ્રેગ અને ડ્રોપ કરો. |
| 04:14 | અનુકૂળતા માટે તે બ્લોકને scifunc બ્લોકથી ડાબી બાજુએ સ્થિત કરો. |
| 04:20 | હવે આપણને આઉટપુટ વેરીએબલ પ્લોટ કરવા માટે એક બ્લોકની જુરીયાત છે. |
| 04:23 | Palette browser વિન્ડોમાં , Sinks સેક્શન પર ક્લિક કરો. |
| 04:29 | Untitled Xcos વિન્ડો માં CScope બ્લોકને ડ્રેગ ને ડ્રોપ કરો. |
| 04:34 | Place the block towards the right of the scifunc બ્લોક . આ બ્લોકને scifunc બ્લોક ના जमनी |
| 04:38 | Place it away from scifunc block, for convenience. |
| 04:43 | Notice that the CScope block has a red input port. |
| 04:47 | This is an event input. |
| 04:49 | we need an event generator block. |
| 04:52 | In the Palette browser window, click on Sources section. |
| 04:57 | Drag and drop the CLOCK underscore c block in the Untitled Xcos window. |
| 05:05 | Place it above the CScope block. |
| 05:08 | Notice that the CScope block has only one input port. |
| 05:13 | But we want to plot both the input and output variables in a single plot window. |
| 05:18 | Hence, we need a multiplexer block. |
| 05:22 | This block will multiplex two inputs and generate output on one output port. |
| 05:28 | In the Palette browser window, click on Signal Routing section. |
| 05:33 | Drag and drop the MUX block in the Untitled Xcos window. |
| 05:39 | Place the block between the scifunc block and CScope block. |
| 05:43 | Let me resize and realign the Mux block. |
| 05:47 | Now, let us connect the blocks together. |
| 05:51 | Connect the output port of Sinusoid generator block to the input port of scifunc block. |
| 05:57 | Now connect the output port of scifunc block to the lower input port of the MUX. |
| 06:04 | Connect the output port of MUX block to the input port of CScope block. |
| 06:10 | Connect the output port of CLOCK underscore c block to the event input port of CScope block. |
| 06:19 | We also have to plot the sine input. |
| 06:22 | We have to connect the Sinusoid generator block to the MUX. |
| 06:26 | Click on the upper input port of the MUX block. |
| 06:30 | Then without releasing, move your mouse pointer towards the link between the Sinusoid generator block and scifunc block. |
| 06:39 | To bend the link, release the mouse button or click at places. |
| 06:44 | As you bring the pointer on the link, the link turns green. |
| 06:49 | Release the mouse button or click once to create a link between these two blocks. |
| 06:55 | Now let us see the configuration of other blocks. |
| 06:59 | We can change the frequency, magnitude and phase of the sinusoid generator block. |
| 07:04 | To do this, double click on the Sinusoid generator block. |
| 07:09 | The configuration window will open. |
| 07:11 | We will keep the Magnitude and Frequency as 1 and Phase as 0. |
| 07:18 | Click on OK to close the configuration window. |
| 07:21 | Now let us configure the CScope block. |
| 07:25 | Double click on the CScope block to open its configuration window. |
| 07:30 | Change the Ymin parameter to minus 2 and Ymax parameter to 2. |
| 07:37 | Change the Refresh period value to 10. |
| 07:41 | Make a mental note of this value. |
| 07:44 | Change the Buffer size value to 2 . |
| 07:47 | click on OK. |
| 07:50 | Now let us configure the CLOCK_c block. |
| 07:54 | Double click on the block to open its configuration window. |
| 07:58 | Keep the value of Period as 0.1. |
| 08:02 | Change the Initialisation Time to be 0. |
| 08:06 | Click on OK. |
| 08:08 | Now let us change the Simulation parameters. |
| 08:12 | On the menu bar of the Untitled Xcos window click on the Simulation tab. |
| 08:17 | Now click on Setup from the drop down menu. |
| 08:22 | Change the Final Integration time to match the Refresh period of CScope block. |
| 08:28 | The value of Refresh period was 10. |
| 08:32 | Hence, put the value of Final integration time as 10. |
| 08:36 | Click on OK. |
| 08:38 | Now, click on File and then click on Save to save the Xcos diagram. |
| 08:44 | Choose a desired directory to save the Xcos diagram. |
| 08:48 | However, it is advised to save it in the folder where you have saved the squareit.sci file. |
| 08:56 | Click on OK. |
| 08:58 | Note that the scifunc block will call the squareit function. |
| 09:02 | This means that we should first load the squareit function before we execute the Xcos diagram. |
| 09:09 | Switch to the Scilab editor window, which has the squareit.sci file open. |
| 09:16 | Click on the Execute button available on the menu bar of the editor. |
| 09:21 | This will load the squareit function. |
| 09:24 | Now we can execute the Xcos diagram. |
| 09:28 | Open the Xcos diagram file. |
| 09:31 | Click on the Start button available on the menu bar of Xcos window. |
| 09:37 | A graphic window will appear. |
| 09:39 | This window will have two plots. |
| 09:42 | Input sine wave in black color and output sine wave in green color. |
| 09:47 | Notice that the squaring function implemented in the squareit function, has indeed squared the input sine wave. |
| 09:55 | Hence, the output sine wave has been shifted to the positive axis. |
| 10:00 | Close the plot window. |
| 10:02 | Now, let us see how to edit the scifunc block to call a function which has more than one input and output variables. |
| 10:10 | Switch to scilab editor window. |
| 10:13 | Edit the squareit function to have two input and output variables. |
| 10:19 | Edit the output variable as open square bracket y comma z close the square bracket . |
| 10:28 | Edit the input variables as open bracket a comma b close bracket. |
| 10:36 | We will change the function to shift the squared output by 1 unit. |
| 10:41 | Edit the main function line as: |
| 10:44 | y is equal to b plus a raise to two put a semicolon in the end. |
| 10:51 | Also generate an output whose amplitude will be half of the input. |
| 10:56 | Go to next line by pressing Enter key and type: |
| 11:01 | z is equal to 0.5 multiplied by a put a semicolon in the end. |
| 11:10 | Now save the file. |
| 11:12 | Switch to the Xcos window. |
| 11:15 | Double click on the scifunc block to configure it. |
| 11:19 | In the input port size field, put a semi colon after 1 comma 1 and type 1 comma one again. |
| 11:27 | Similarly, in the output port size field, put a semi colon after 1 comma 1 and type 1 comma 1 again. |
| 11:36 | Click on OK. |
| 11:38 | A new Scilab Input Value Request window will open. |
| 11:41 | In the text box, |
| 11:43 | put a comma after y1 and type y2, |
| 11:48 | put y1 and y2 in square brackets, |
| 11:52 | now put a comma after u1 and type u2. |
| 11:57 | Click on OK. |
| 11:59 | Another Scilab Input Value Request window will open. |
| 12:03 | Keep clicking on OK in the subsequent 3 windows that will appear. |
| 12:08 | The scifunc block is now configured. |
| 12:11 | Let me realign the scifunc block. |
| 12:14 | Switch to the Palette browser window. |
| 12:17 | In the Sources section, drag and drop the Constant underscore m block in the Xcos window. |
| 12:24 | Place it below the Sinusoid generator block. |
| 12:28 | Connect the Constant underscore m block to the lower input of the scifunc block. |
| 12:36 | The default value of this block is 1. |
| 12:39 | Keep it unchanged. |
| 12:41 | Double click on the MUX block. |
| 12:44 | Change the input port size to 3. |
| 12:47 | Click on OK. |
| 12:48 | Let me resize the MUX block and I will connect MUX and CSCOPE block properly. |
| 12:59 | Connect the lower output port of the scifunc block to the lower input port of MUX block. |
| 13:07 | Click on File and choose Save to save the xcos file. |
| 13:12 | Switch to the Scilab editor which has the squareit.sci file open. |
| 13:18 | Click on the Execute button available on the menu bar of the editor. |
| 13:23 | This will load the squareit function. |
| 13:26 | Now we can execute the Xcos diagram. |
| 13:30 | Click on the Start button available on the menu bar of the Xcos window. |
| 13:35 | A graphic window will appear. |
| 13:38 | This window will have three plots. |
| 13:40 | Input sine wave in black color, |
| 13:43 | output sine wave in green color and |
| 13:45 | amplitude scaled input in red colour. |
| 13:49 | Notice that the function has indeed squared the input sine wave and also shifted it by an offset of 1 unit, which is as expected. |
| 13:59 | We also get the amplitude scaled of the input sine wave, as expected. |
| 14:05 | Close the plot window. |
| 14:08 | Now let us summarize. |
| 14:10 | In this tutorial we learnt: |
| 14:12 | * To write a squaring function in Scilab |
| 14:15 | * To use the scifunc block in Xcos |
| 14:19 | * To use MUX block to draw multiple plots |
| 14:22 | * To call functions having multiple input and output. |
| 14:26 | Watch the video available at the following link. |
| 14:29 | It summarizes the Spoken Tutorial project. |
| 14:33 | If you do not have good bandwidth, you can download and watch it. |
| 14:37 | The spoken tutorial project Team: |
| 14:40 | Conducts workshops using spoken tutorials. |
| 14:43 | Gives certificates for those who pass an online test. |
| 14:47 | For more details, please write to contact@spoken-tutorial.org |
| 14:53 | Spoken Tutorial Project is a part of Talk to a Teacher project. |
| 14:57 | It is supported by the National Mission on Eduction through ICT, MHRD, Government of India. |
| 15:05 | More information on this mission is available at spoken-tutorial.org/NMEICT-Intro. |
| 15:15 | Thank you for joining. Hope you found this tutorial useful. |
| 15:19 | This is Anuradha Amruthkar from IIT Bombay, signing off. |