How can I have the To File block use the file name from a workspace variable in Simulink 6.5 (R2006b)?
18 views (last 30 days)
I have a To File block in my model and I want to use a workspace variable containing a string to specify the file name for this block. The To File block does not accept the name of a workspace variable like the Gain block does.
The To File block does not have the ability to evaluate a workspace variable to get the file name. In this case you can mask the block and call the SET_PARAM function from the mask's initialization callback function. Here are the steps:
1. Select the To File block in your model
2. In the Command Window enter
3. Right-click the block and choose "Edit mask" from the context menu.
4. On the Parameters pane in the Mask Editor add a parameter to store the file name entered by the user
5. On the Initialization pane add a call to SET_PARAM to set the To File block's filename property:
6. You can now enter the filename as string into the block mask or you can enter the name of a variable which is then evaluated
Please find attached an example model. The steps mentioned above could also be used for the following blocks:
- To Workspace
- From Workspace
- To File
- From File
More Answers (1)
Marc Compere on 18 Jan 2015
Nice. Using a mask to evaluate the filename is clever.
mask_example.mdl worked correctly with no modifications in R2014a.
I've attached a modified version that sets the filename to the computer's current date and time. This creates a (probably) unique filename each time the simulink model is started. As long as you don't press start more than once a second it'll create a filename with DD.MMM.YYYY.HH.MM.SS in the filename. This is handy for collecting data during testing.
I would upload the .slx directly but the uploader won't accept it. zipfile attached.