This script will dynamically create a test harness in Simulink for a bus object of arbitrary nesting structure. To use the script just update the first two lines of the Initialization section to use the name of your main bus object.
The script works by starting with the top level bus object and looping through its elements. For any elements that are not bus objects, it will add a Constant block to the model and copy over the data type and signal size. For elements that are nested bus objects, it adds a Bus Creator block, sets it to use the bus object as a nonvirtual bus, and increments a counter to loop back through the new bus's elements. Each new block is connected to the Bus Creator above it in the hierarchy when it is added to the model. The blocks are then repositioned for visual clarity. Finally the model is updated to check if there were any problems with the setup.
A mat file with a sample set of nested bus objects is included. Load the mat file into the workspace then run the script to see it work with the sample bus objects.
Adam Filion (2024). Dynamically create a bus testing harness in Simulink (https://www.mathworks.com/matlabcentral/fileexchange/37232-dynamically-create-a-bus-testing-harness-in-simulink), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform CompatibilityWindows macOS Linux
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!Start Hunting!