UMich-BipedLab / Cassie_StateEstimation

Code for various extended Kalman filter state estimation methods for Cassie.
BSD 3-Clause "New" or "Revised" License
39 stars 13 forks source link

Missing angles package #2

Closed ayush-agrawal closed 5 years ago

ayush-agrawal commented 5 years ago

Hi! There seems to be a missing class/function Angles and I get the following error when using the lib_StateEstimation.slx library:

`=== Simulation (Elapsed: 3 sec) === Error:Simulink does not have enough information to determine output sizes for this block. If you think the errors below are inaccurate, try specifying types for the block inputs and/or sizes for the block outputs. Error:Undefined function or variable 'Angles'.

Function 'State Estimator/Parse_Outputs1' (#269.196.202), line 9, column 7:
"Angles"
Launch diagnostic report.
Error:Undefined function or variable 'Angles'.

Function 'State Estimator/Parse_Outputs1' (#269.374.380), line 14, column 27:
"Angles"
Launch diagnostic report.
Error:Undefined function or variable 'v'. The first assignment to a local variable determines its class.

Function 'State Estimator/Parse_Outputs1' (#269.446.447), line 18, column 7:
"v"
Launch diagnostic report.
Error:Errors occurred during parsing of MATLAB function 'State Estimator/Parse_Outputs1'
Error:Simulink cannot determine sizes and/or types of the outputs for block 'State Estimator/Parse_Outputs1' due to errors in the block body, or limitations of the underlying analysis. The errors might be inaccurate. Fix the indicated errors, or explicitly specify sizes and/or types for all block outputs.
Error:Simulink cannot determine sizes and/or types of the outputs for block 'State Estimator/Parse_Outputs1' due to errors in the block body, or limitations of the underlying analysis. The errors might be inaccurate. Fix the indicated errors, or explicitly specify sizes and/or types for all block outputs.
Error:Error occurred in 'RIEKF/State Estimator/Parse_Outputs1'.

`

RossHartley commented 5 years ago

Check out the most recent commit. I included the Angles package, and updated the filter to use the analytical state transition matrix instead of an approximated one. Please let me know if this works for you.

ayush-agrawal commented 5 years ago

Thanks Ross. I got the following error when trying to run the latest update, but I think it is probably got to do with the fact that the mex files were compiled in Linux? I ran the estimator again with the mex files that were compiled in Windows (I'm running this on a Windows machine) and it runs without any errors.

An error occurred while running the simulation and the simulation was terminated Caused by: MATLAB System block 'NullSimulator/Right Invariant Extended Kalman Filter/Right Invariant EKF' error occurred when invoking 'stepImpl' method of 'RightInvariantEKF'. The error was thrown from ' 'D:\research\hybrid-robotics-git\cassie\Cassie_StateEstimation\gen\kin\slrt\m\p_VectorNav_to_LeftToeBottom.m' at line 3 'D:\research\hybrid-robotics-git\cassie\Cassie_StateEstimation\Estimators\RightInvariant_EKF\RightInvariantEKF.m' at line 162'. Undefined function 'p_VectorNav_to_LeftToeBottom_mex' for input arguments of type 'double'.

RossHartley commented 5 years ago

Yes, they were compiled on Linux. I just pushed a new commit with the windows files.