Editing Sci cosim
Jump to navigation
Jump to search
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 5: | Line 5: | ||
== Installation == | == Installation == | ||
1. Install Octave | 1. Install Octave version 4.0.0 or higher and Scilab v.5.5.2 or higher | ||
2. Install | 2. Install sockets package in Octave by executing | ||
''pkg install -forge sockets'' | ''pkg install -forge -auto sockets'' | ||
3. Download | 3. Download sci_cosim package from https://github.com/amromanov/sci_cosim | ||
4. Install | 4. Install sci_cosim package in Octave by executing | ||
''pkg install sci_cosim_0.1.3.tar.gz'' | ''pkg install -auto sci_cosim_0.1.3.tar.gz'' | ||
5. Start | 5. Start Scilab GUI and install Toolbox Backdoor by pressing in main menu Applications → Module manager - ATOMS → Technical → Backdoor → Install | ||
6. Restart Scilab. If every thing was done | 6. Restart Scilab. If every thing was done correct, after restart there will message in command window "BackDoor: listening to connections on TCP port" | ||
== Running demo == | == Running demo == | ||
1. Download demo from https://github.com/amromanov/sci_cosim | 1. Download demo from https://github.com/amromanov/sci_cosim/demo.tar.gz | ||
2. Extract it to any folder, where your user has read/write rights | 2. Extract it to any folder, where your user has read/write rights | ||
Line 33: | Line 31: | ||
4. Run Octave and change folder to the one, where you have extracted demo | 4. Run Octave and change folder to the one, where you have extracted demo | ||
5 | 5. Run sci_sim_example.m | ||
== Function description == | == Function description == | ||
Line 53: | Line 49: | ||
== Usage cases == | == Usage cases == | ||
In all usage case, described below, user doesn't need to have any knowledge about using Scilab interface and in the most cases | In all usage case, described below, user doesn't need to have any knowledge about using Scilab interface and in the most cases he doesn't have to know Scilab scripting language. You can use only Xcos and do the rest of things in Octave. | ||
1. Simple dynamic systems rapid prototyping. | 1. Simple dynamic systems rapid prototyping. | ||
Line 92: | Line 88: | ||
== How to Run and Change an Xcos diagram == | == How to Run and Change an Xcos diagram == | ||
1) After installing Scilab and and the sci_cosim package and getting the | 1) After installing Scilab and and the sci_cosim package and getting the "backdoor" to work, then you can try this help section. | ||
2) Get these 2 files from Dropbox and put them in your PWD. | |||
https://www.dropbox.com/sh/ab3w067d5g04ald/AACIY8ymH9fuWk8Yc1K4-EKaa?dl=0 | |||
3)Click in the zcos file to start Scilab and Xcos You should see a diagram of the control system. | |||
4) Open the .m file in your octave editor. | |||
You should see a plot that has the output of the plant | 5) Run the .m file | ||
You should see a plot that has the output of the plant | |||
with no feedback, and the output of the plant in the feedback loop | |||
and the control action signal that has been clipped at 5 volts. | |||
6) You can then play with the PID parameters in the M file and see how they affect the output. | 6) You can then play with the PID parameters in the M file and see how they affect the output. | ||
Line 109: | Line 105: | ||
7) In the loop diagram in Xcos click in the "SATURATION"(clipper) box and change the clipping to be 10 Volts | 7) In the loop diagram in Xcos click in the "SATURATION"(clipper) box and change the clipping to be 10 Volts | ||
8) Rerun the | 8) Rerun the m file and retune the PID. | ||
If you just click on the plant and try and do this, Xcos might complain that it doesn't know what k is, if this happens you have to first go to the Scilab main window and put k=1 there. k will be changed | 9) Now for a little harder problem. | ||
Lets change the plant parameters to (s+1)*(s+5) | |||
If you just click on the plant and try and do this, Xcos might | |||
complain that it doesn't know what k is, if this happens | |||
you have to first go to the Scilab main window and put k=1 there. k will be changed | |||
from your m file later. Now you will be able to change the plant in both locations. | |||
10) In the | 10) In the m file set k=5 and run the new system | ||
11) Now lets add a time delay in the feedback part of the loop. | 11) Now lets add a time delay in the feedback part of the loop. | ||
Line 130: | Line 129: | ||
11.6) The input and outputs are on the wrong side, so we will mirror it. | 11.6) The input and outputs are on the wrong side, so we will mirror it. | ||
Right click on the box and the select" format" and "Mirror" | |||
Right click on the box and the select" format" and "Mirror" | |||
11.7) Move the box to a convenient place to rewire it in the feedback loop, | 11.7) Move the box to a convenient place to rewire it in the feedback loop, | ||
11.8) Now rewire it: | 11.8) Now rewire it: | ||
On the left side of the delay box is an output black arrow point, | |||
On the left side of the delay box is an output black arrow point, click on this and drag the mouse to the left until you are to the left of the summing junction box. | click on this and drag the mouse to the left until you are to the left of the summing junction box. | ||
Now let go of the left button and move the mouse pointer up to the height of the input pin of the summing box. | |||
Now let go of the left button and move the mouse pointer up to the height of the input pin of the summing box. | Click the left button to place a corner in the wire. | ||
Now move to the input pin until you get a green box around the input pin. | |||
Click the left button to place a corner in the wire. | Click the left mouse button again to make the connection. | ||
Now move to the input pin until you get a green box around the input pin. | |||
Click the left mouse button again to make the connection. | |||
11.9) We now have to join a wire to an existing wire. | 11.9) We now have to join a wire to an existing wire. | ||
Place the mouse pointer on the wire from the output of the plant. | |||
Place the mouse pointer on the wire from the output of the plant. | The wire should be highlighted but not selected. | ||
Hold the left mouse button down and start drawing a wire. | |||
The wire should be highlighted but not selected. | Join it to the input of the delay | ||
Hold the left mouse button down and start drawing a wire. | |||
Join it to the input of the delay | |||
12) Double click on the delay box and change the delay to be .1 seconds. | 12) Double click on the delay box and change the delay to be .1 seconds. | ||
Line 162: | Line 152: | ||
14) In the M file change the line: | 14) In the M file change the line: | ||
sci_sim(' | sci_sim('sci_ap_model3.zcos'); %Running xcos simulation | ||
to | to | ||
sci_sim('newname.zcos'); %Running xcos simulation | |||
15) Rerun the M file and have fun tuning the PID. | 15) Rerun the M file and have fun tuning the PID. | ||
== Author and Licensing == | == Author and Licensing == | ||
Line 174: | Line 165: | ||
Distributed under the New BSD License | Distributed under the New BSD License | ||