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

Calibration procedure/widget update #195

Closed
madhephaestus opened this issue Apr 29, 2020 · 3 comments
Closed

Calibration procedure/widget update #195

madhephaestus opened this issue Apr 29, 2020 · 3 comments

Comments

@madhephaestus
Copy link
Member

Installed Version

All

OS type and version number

All

Expected behavior

Calibration should be easy

Actual Behavior

calibration is hard

Steps to reproduce the behavior

calibrate a robots limb

First: in the setup for the DH parameters we should have a section for configuring the limb motion. This is where I would set the limb boundaries. How much off of the 0 degree home value you want the leg to be able to move. This would be indicated by the pi shapes as blue and green like they already are. Ideally at this point it would be nice to run the simulation without the hardware part just to see how the model moves with the given restraints. Once you are happy with the home values then you can calibrate the servo. This would be in the hardware section. This interface would ask for the servo range in degrees (will have to measure to make sure its right) and then overlay that range onto the model again preferably in orange. Idk why orange I just think it should be orange. The zero value of this should be in line with the link and by using a trim button you would shift that servo till it was in line and at the same time would shift the servo range to compensate. At the point you would just need to make sure your given boundaries fall within the servos range. And you should be able to have all the data in the backend from those numbers to convert the device center points and upper and lower boundaries while keeping it a little simpler to understand. See the attached Paint walk through. I think if you add an advanced tab we could put the more complex method in as well just to have both. Hopefully this makes sense and also actually works. Its late and I’m tired so I might have missed something but I think this should simply the process quite a bit.

Additional Ideas:

-I think we need a second control panel for robot roll and yaw. We don’t really have that right now and in my mind for a class, after you do your IK for a leg you should do the IK for the body and be able to control it moving up down side to side and roll in all while the feet are in the same place. All the stuff I was doing in Matlab cause I couldn’t in bowler.

-Fix the IK

-Isolate just the leg when calibrating in the window viewer and fix the camera so that it doesn’t always focus on one limb and cause the window screen to have a seizure.

@xaveagle

Bowler UI

madhephaestus added a commit to NeuronRobotics/java-bowler that referenced this issue Apr 29, 2020
Links with different ranges can override these methods

see CommonWealthRobotics/BowlerStudio#195
madhephaestus added a commit to CommonWealthRobotics/bowler-script-kernel that referenced this issue Apr 29, 2020
madhephaestus added a commit to NeuronRobotics/java-bowler that referenced this issue Apr 29, 2020
madhephaestus added a commit to CommonWealthRobotics/bowler-script-kernel that referenced this issue Apr 29, 2020
madhephaestus added a commit that referenced this issue Apr 29, 2020
As you move the zero value around, the limits should move as well.
@madhephaestus
Copy link
Member Author

so first things first, bounds are not part of D-H parameters, so that all belongs somewhere else.

@Octogonapus
Copy link
Member

You need to be able to set link and servo bounds, yes. But then you also need the tool to validate that your link bounds are feasible, since they are contrained by the servo bounds.

Representing these bounds graphically (maybe even in the 3D window) is a neat party trick but not really necessary.

@madhephaestus
Copy link
Member Author

@xaveagle please check out 1.5.17 for this feature

madhephaestus added a commit that referenced this issue May 1, 2020
Adding engineering units setters for bounds.
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

No branches or pull requests

2 participants