How can i use sign function under a function block in simulink ?
19 views (last 30 days)
Show older comments
Hey guys, i'm new in using simulink. And i have a problem by using "sign(signum)" fucntion, in a fucntion block. When i write my formula inside the function block and run it. I have syntax error. But i'm pretty sure i wrote the formula correct. And when i remove sign function from the formula, it works(but not correctly). So how can i use this "sign" fucntion inside a function block ? Please help me i'm stuck in a project right now. Thank you
2 Comments
Answers (2)
A Jenkins
on 23 Apr 2014
Is that the full equation? Your parentheses don't match. (7 open and only 6 close)
Perhaps should be
(-Kc*u(1)-Bc*u(4)+Kc*u(2)/N-Fc*sign(u(5)+u(9)))/Jcin
2 Comments
A Jenkins
on 23 Apr 2014
Check that all of your parameters, Kc, Bc, etc are defined.
Also check that your input signal u, has a width of at least 9.
Luuk Ladegaard
on 24 Sep 2018
Hey, I don't know whether you're still struggling with this problem, but I discovered that for some reason, you need to use "sgn()" instead of "sign()". I have no idea what's up with that, it's not an existing Matlab function, but it works in Simulink. I guess it's a mistake. :/
1 Comment
Zhe Chen
on 3 Apr 2020
I have the same problem. And your method works.
I dont know either why is that when I changed the sign function to sgn, the syntax error goes away.
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!