Syntax error in a Simulink Fcn block
1 次查看(过去 30 天)
显示 更早的评论
I am getting a syntax error message for the expression "FiringOrder(u)" (no quotes) in a Fcn block. "FiringOrder" is a 1 x 6 row vector in the base workspace. (I have also tried it with "FiringOrder" defined as a row vector in the model workspace, with the same result--syntax error.) The input is a single value that I'm trying to use to index into the array, outputting the value at the "u'th" column in the row vector.
The help documentation for the Fcn block says that Simulink searches for function names in the expression, and then looks in the MATLAB base workspace, so it should be finding the row vector FiringOrder. I've tried adding the vector as a parameter in the model workspace, and that doesn't work either. This expression is so simple that I can't believe I'm getting a syntax error, but I am. What am I doing wrong??
Thanks.
2 个评论
采纳的回答
Yu Jiang
2014-8-7
Since FiringOrder is an array in your workspace, it would not be recognized as a function in MATLAB.
To achieve your objective, try replacing the Fcn block with the block "1-D Look up Table" (See Documentation).
Set the Table Data as FiringOrder and the breakpoints as 1:6.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Simulink Functions 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!