-
-
Notifications
You must be signed in to change notification settings - Fork 17
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
Manif refactor #648
Manif refactor #648
Conversation
…ms, normalize some vars before so3d ctor
SO3 q = SO3{delta.y(), R3::UnitY()} * mCameraInWorld.rotation() * SO3{-delta.x(), R3::UnitZ()}; | ||
mCameraInWorld = SE3{p, q}; | ||
// TODO: Is there a way to combine this with the above? | ||
mCameraInWorld.asSO3() = worldRelativeAngularVelocity + mCameraInWorld.asSO3(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yeah I tried this too, you cant apply the world relative rotation as a twist (in se3) because it considers it to be rotating at the origin not the rover position. you can fix it if you write out this annoying formula for your position component of the twist (instead of 0) to basically counteract the offset, but this is cleaner imo
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah. Kind of annoying.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
so fire
SO3 q = SO3{delta.y(), R3::UnitY()} * mCameraInWorld.rotation() * SO3{-delta.x(), R3::UnitZ()}; | ||
mCameraInWorld = SE3{p, q}; | ||
// TODO: Is there a way to combine this with the above? | ||
mCameraInWorld.asSO3() = worldRelativeAngularVelocity + mCameraInWorld.asSO3(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah. Kind of annoying.
* read messages from base station * sending RTCMs over ros * launch file with both GPSs, RTCMs successfully transmitted * port change * output screen * added gps driver for rover gps and merged master into rtk * edited rtk launch and esw.yaml * used pyubx reader instead of serial getline() * added preliminary dual gnss file * add notes * graph vectors for heading calculations * calc heading and bearing * driver testing; not fully working 👽 * plots for heading calculations * added get_heading_vector function * add tests for vector heading method * working as intended furing testing * add tests to determine optimal amt of sig figs for gps coordinates * added more message parsing * started adding gps to gazebo * finished adding new gps and links * edited links * added links * try to debug plugins and make test subscriber file * added left and right gps using groups * gps creation and subscribers * add tests for moving gps and subscribed * started editing gps linearization * gps now put in sim * edited test subscriber * added pose calculation using heading * tests for both gps distance * changes for testing with convert lat long to cartesian to see offset better * tests for offset * offset is 10? * chanegd offset to 1 and modified testing code * Add requirements * updated linearlization * debug linearization function and try to debug sim * fixed reference points and removed z component for better rviz experience * made a temporary GPS sim * fixed pose publishing offset temporarily * Add starter work for gps * cartesian to geodetic conversion * Finish off gps and add imu * Yo workingin the new sim * Submodule update for dawn * added rviz to launch file, misc cleanup * refactored utils and tag detector, crashes when it sees a tag * debugging * Init * Work on encoders * Update * Breh * Use bgra instead of i420 * partially fixed script * fixed macos std::for_each error * more factoring test * refactored SE3 util functions back into lie library * refactored most of sim * more debugging * Add manif as submodule, find out some disgustig things about transforms, normalize some vars before so3d ctor * refactored camera controls using tangent elements * pr cleanup * more cleanup * more cleanup * Remove unrelated stuff, clean up some stuff, remove old lie stuff * Rename to lie.hpp * Refactor look controls * Comments * Manif refactor (#648) * Fix collider rendering with new se3 * slight refactoring of simulated sensors, added untested noise * changed some type names, added rviz to launch file, separate roll pitch yaw noises * fixed type names and ctors * slightly reduced noise and moved waypoint * Restream * Update * Fix format * Stream that can be reused * Naming --------- Co-authored-by: Riley Bridges <[email protected]> Co-authored-by: nehakankanala <[email protected]> Co-authored-by: Pearl Lin <[email protected]> Co-authored-by: dllliu <[email protected]> Co-authored-by: Rahul <[email protected]> Co-authored-by: umroverPerception <[email protected]> Co-authored-by: Riley Bridges <[email protected]>
Summary
Closes #439
What features did you add, bugs did you fix, etc?
Added the manif library as a git submodule and refactored all C++ code to use the
manif::SE3d
type instead of our previous customSE3
type. Same for SO3.Did you add documentation to the wiki?
No
How was this code tested?
I ran the auton mission in the sim and tested all the sim features, zed wrapper changes need to be tested on hardware at some point
Did you test this in sim?
Yes
Did you test this on the rover?
No
Did you add unit tests?
No