Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature/pull in filters #15

Merged
merged 47 commits into from
Oct 24, 2024
Merged

Feature/pull in filters #15

merged 47 commits into from
Oct 24, 2024

Conversation

rjgriffin42
Copy link
Member

This will require a version bump of commons to compile.

build.gradle.kts Outdated
@@ -21,9 +21,11 @@ dependencies {

api("us.ihmc:ihmc-commons:0.32.0")
api("us.ihmc:euclid-frame:0.21.0")
// api("org.ejml:ejml-ddense:0.39")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ideally we could verify whether or not this is actually required before merge.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I did verify it is not needed and need to delete it, thank you

@rjgriffin42 rjgriffin42 force-pushed the feature/pull-in-filters branch 2 times, most recently from 37fd156 to e6d9b1b Compare October 24, 2024 15:19
Operator Computer and others added 26 commits October 24, 2024 10:22
…s in their respective maven directory structure

Remove ihmc-java-extensions. Move everything into ihmc-commons except for a few things that needed Euclid. Moved those into robotics-toolkit.

Switched to use FrameQuaternion from Euclid.

Changed FrameTuple2D<?, ?> to FrameTuple2DReadOnly where possible.

Reducing usage of FrameTuple3D.

Got rid of YoFrameQuaternion.get(QuaternionBasics).

Got rid of YoFrameQuaternion.get(RotationMatrix).

Switched to euclid 0.7.7.1.

 switched the rate limited yo frame vector to take in frame tuples so it can be used with frame points
made two methods use read only
…llows the use of either parameters or yovariables. Also created a AlphaBasedOnBreakFrequencyProvider
Also changed RateLimitedYoFramePose to use a YoFrameQuaternion instead
of a YoFrameOrientation.

Changed RateLimitedYoFramePose to create less YoVariables.

I'm not really happy about having to duplicate RateLimitedYoFrameVector
to create RateLimitedYoFramePoint. That should be easy to cleanup later
though.

Created AlphaBasedOnBreakFrequencyProvider.

Changed the alpha filter to be compatible with parameter.

Propagated the change to the classes using the AlphaFilteredYoVariable.

Made the same change to the alpha filtered yo frame quaternion.

Forgot to create alpha when not provided.

Updated codebase.
…r parameters.

Cleanup: made alpha filtered yo variable not call getValue() on alpha provider on first update. That way it can be called in the constructor to initialize the filter.

Switched yovariables to DoubleProviders for the rate limiter, allowing to pass in a parameter instead of a yovariable for the ratelimit.
… foot to avoid bouncing if the feet are at the same height.
…uring toe off

create a set and update flag for the rate limited yo frame point 2d

Forgot to create mutable frame rate limited vectors.

Fixed compilation errors.
…isting acceleration limited yo variable to use double providers

completely overhualed the acceleration limited yo frame vector 3D
Started cleanup and documentation of the tools.

Fix frame problem in AccelerationLimitedYoFrameVector3D
Made the reset consistent with other filtering classes
calvertdw and others added 20 commits October 24, 2024 10:30
Simplify from Dex's feedback.

Get filtering with break frequency working.

Add and test reset.

Call reset.
…umns with String arrays

Improved the API

Fixed silly constructor logic error

Fix bug of exception never being thrown

Temporary port of in-progress YoMatrix changes
Inconsistent constructor naming

Make YoMatrix set and get API more general

More correct implementation of AlphaFilteredYoMatrix, more API for setting and solving separately

Fix bug in YoMatrix

Remove underscore seperators from YoMatrix

Refactored the updating of actual robot spatial inertias
…rajectory and its implementations. Hexapod still depends on it.

delete matrix yo variable converter tools

delete some old yo variable tools

delete some unused yo variable tools

delete unused stiction model tools

delete unused alpha to alpha functions

deleted some controller classes, and left others to be reviewed

deprecated some straght line tests, they need to be pushed into the striaght line pose traejctory

removed straight line poisition trajectory from the pose test

removed the straight line independent trajectory generators that werent used

deleted the unused qp code

deleted projection tools

started switching away from random geometry class and the old robotics assert

converted more of the tests to the right format

switched getting all the current crop of moving away from random geometry working

got rid of the custom random matrix generator class

deleted the random geometry class, since its duplicated by other tools

fixed some deletes and removed some provider structure that did nothing

fixed some more deletes

moved the planar landmark to the correct place

deleted many other classes

delete unused code

deleted a whole bunch of stuff from the java toolkit

deleted the simple walking controller
added a to string for the yo matrix

fixed some tests for yo matrix. They failed based on the way that the yo matrix gets initialized, and a change in the implementation of the zero method
… control core

significantly overhauled and set up custom pid parameters for the whole body controller core

moved a lot of the filtered yo variables into a common project that can be moved to commons

moved a bunch of the polynomial classes out after getting things solidified, but need to fix the linear systems tests

cleaned up a lot more of the yo variable types and moved their packages

got more code moved and most of the linear algebra tests fixed

removed unused code

set up wbcc for extraction
prepped the yo variables by moving them into their own packages
set up the euclid update repo, including javadoc and pulling over the tests

moved the mecano packages around

set up a robotics tools project to become its own repo
…vadoc on some of the core classes

did a bunch of testing and javadoc, and cleaned up polynomial3D
⬆️ euclid 0.22.0
@rjgriffin42 rjgriffin42 force-pushed the feature/pull-in-filters branch from e6d9b1b to 2798421 Compare October 24, 2024 15:30
@rjgriffin42 rjgriffin42 merged commit cc97b61 into develop Oct 24, 2024
2 checks passed
@rjgriffin42 rjgriffin42 deleted the feature/pull-in-filters branch October 24, 2024 19:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants