The values of desired_speed and desired_trq are 1 & 99, the typedef is PERCENTAGE which of integer type,but while simulating it is showing fraction values, Is this something to do with the "PERCENTAGE " typedef ?
2 views (last 30 days)
Show older comments
Manjunath Bhimalli
on 3 Jan 2019
Commented: Mark McBroom
on 8 Jan 2019
typdef definition of PERCENTAGE in .m :
PERCENTAGE.WordType = 'uint16';
PERCENTAGE.DataTypeMode = 'Fixed-point: slope and bias scaling';
PERCENTAGE.Signed = 0;
PERCENTAGE.WordLength = 16;
PERCENTAGE.ScalingMethod = 'gain/offset';
PERCENTAGE.Gain = 2^15/100;
PERCENTAGE.DisplayMin = 0;
PERCENTAGE.DisplayMax = 199.9;
PERCENTAGE.DisplayPrecision = 8;
PERCENTAGE.Description = 'This is the percentage datatype';
PERCENTAGE.DisplayUnits = 'percent';
0 Comments
Accepted Answer
Mark McBroom
on 5 Jan 2019
You have specified PERCENTABE to used fixed point data type. Simulink is showing you the floating point equivalent of the integer value after applying the specified slope and bias scaling.
4 Comments
Mark McBroom
on 8 Jan 2019
With the gain you have selected, it is not possible to represent 1.000000
The LSB of the integer representation is bit = (1/2^15) * 100
327* bit = .9979
328*bit = 1.0010
You will need to select a different scale factor if you need to represent exactly 1.0000000
More Answers (0)
See Also
Categories
Find more on Test Model Components in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!