How to input values from workspace to PV array Block?

7 visualizaciones (últimos 30 días)
Jack Danby
Jack Danby el 3 de Sept. de 2019
Comentada: adham osama el 6 de Feb. de 2021
I have currently created a simple model containing the PV array block from library location - Simscape / Electrical / Specialized Power Systems / Renewables / Solar, I am trying to input the specifications of the module data for the 'Voc' using a variable (ie. Volt_oc) from the Workspace. But when i do so i am getting this error:error.JPG
or if i use the 'set_param' command in script i am getting this error also:
error2.JPG
It works perfectly fine if i was to input a number into the PV array block, but as i have a loop containing multiple values to simulate, i would like to use a variable from the workspace to minise human interaction.
  2 comentarios
Fangjun Jiang
Fangjun Jiang el 3 de Sept. de 2019
What number did you put in that makes it work fine?
What variable and what its value did you try to put in?
Jack Danby
Jack Danby el 6 de Sept. de 2019
If i were to place any number it will work, or if i place anything in there that is not a number, i have tried multiple variables and nothing is accepted, i am getting this error when i press apply

Iniciar sesión para comentar.

Respuestas (1)

Naveen Venkata Krishnan
Naveen Venkata Krishnan el 7 de Oct. de 2019
Hello Jack ,
From the question I understood that you are changing the "Module" in the "Module data" of the PV array to unser defined thereby you can define a new PV module and assuming that you might be using MATLAB 2019a
Module data -> Module -> user defined.
The PV array module that you are using is a masked block, it has it's own workspace hence directly giving varible values from Base work space.
In order to read the data from the base workspace follow these steps :
1 . In the field where the value has to be accessed from workspace ( here open circuit voltage )
step-1.png
2 . Then click on "Voc: Create..." which will lead you to this
step-2.png
Enter the value( < expression > , here I have given it an intial value of 40 ) you want to assign to the variable in workspace "Voc" and then press create
3 . This will create a variable Voc in work space as shown
step-3.png
This variable can now be called from SIMULINK as any other MATLAB variable
  1 comentario
adham osama
adham osama el 6 de Feb. de 2021
The problem is the need to use variables directly from matlab base workspace which has been initialized in an m-file, for example.
Example: these variables are defined in an m-file
I_sc = 4.37; % [A]
V_oc = 42.93; % [V]
using a variable name for Ncell generates another error : Matrix dimensions must agree
Btw, same error occurs when using your method and tring to click "apply".

Iniciar sesión para comentar.

Productos

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by