Solution
As the above error message notes, this error is typically caused by either a mismatch between a model's data and specified data of that model in VeriStand, or an issue with global parameters for your project's models having the same name but different dimensions. Below are some steps that can be tried for both scenarios.
- For issues with model data size mismatch:
- In order to ensure that your models are referencing their DLLs correctly, remove the models present in your project, save your project, and re-import the models into your project. Ensure that when you re-import the models, you are specifying to import the models with parameters as shown below.
- If the issue persists after re-importing your models, you should check to ensure that your Vector Port Specification is correct for your imported parameters. This setting controls whether or not inport/outport vectors are imported as a collection of scalar channels or a single vector channel. Scalar channels are easier to connect to other parts of your system, but could result in data mismatches if you try to map a port broken into scalar channels to a model expecting a vector channel - the appropriate implementation will depend on your project. Vector Port Specification is another setting in the "Add Simulation Model" dialog box.
- If your issue still persists, you could run the System Definition vs Model File Compare Tool, which is an open-source tool developed to compare System Definition and Model File parameters to determine mismatches. Correcting issues revealed by the tool should resolve errors dealing with model size mismatches.
- For issues with global parameters:
- If you don't need your global parameters to apply to all of your project's models, the easiest way to resolve dimensional conflicts with your global parameters is to change the scoping for your global parameters from target-scoped to model-scoped. Model-scoped parameters will apply changes to only the parameter in the model which owns it, as opposed to all models who use this parameter. The process to update the scope of parameters in a model can be found in the VeriStand manual under Scoping Global Parameters - before changing your parameter scope, be sure to determine what the scope of your parameters are.
- If you need your parameters to be target-scoped, you will need to reload your System Explorer window and verify the dimensions of parameters loaded in multiple models. This information can be found on the Model Parameter Configuration Page, which can be reached by opening the System Explorer window and selecting one of the parameters for a model. Ensure that the dimensions of parameters used by multiple models match, and match what you're expecting the parameters' dimensions to be.