Initialize Global Variable in Simulink
4 views (last 30 days)
Getting the following error in Simulink: "Global declaration not resolved to a Data Store Memory block registered via the Ports and Data Manager."
Background: I am trying to run simple code inside a Matlab function block and require a variable GEAR initialized to 1 only at the beginning of the simulation so the Function Block code can increment/decrement GEAR. I have tried declaring the variable as "global GEAR" and then "GEAR = 1" in Callbacks - InitFcn, as well as placing in a .mat file but but get the error above when the variable GEAR is used within the Matlab Function Block.
I have not been successful (even with Matlap documentation) to use the Data Store. And more to the point think there must be an easier way to do such a basic thing as initialize a global variable than start creating data stores. And what/where is the "Ports and Data Manager" - it doesn't even come up in the help file seach.
Any help appreciated.
Fangjun Jiang on 29 Mar 2022
In your MATLAB Function block editor, click "Edit Data" icon on the tool strip, add "Gear" as a data.
In the Simulink model, add a "Data Store Memory" block and name the "data store name" as "Gear". Resolve any error by setting property values.
see this link