Repository navigation
|
Original question from @AI-FanGe: Thanks for the great project! I have tried to run your project using another motor the STs3215 C049, but encountered some sim2real problems. The main difference I found is that the speed of the motor deployed in the real world is different from the motor speed in Mujoco. And when the robot performs the walking pattern model, it can not balance on the ground and falls directly. I would like to ask three questions below, and I really hope that you can help me. I have wasted a couple of weeks in solving the problem.
Thanks again! |
Replies: 3 comments 2 replies
|
Hi, thanks for detailing your workflow! Tracking down sim-to-real gaps is usually the hard part, but it is definitely fixable. To answer your questions: 1. Is it possible to use STS3215 motors?Yes, I think that building a Microban variant with these motors and successfully bridging the sim-to-real gap is technically possible. It is great that you identified your motor parameters using BAM. However, a major source of this gap often comes from motor and sensor delays. Since you switched hardware, you will likely need to remeasure and update these delays for your specific setup. 2. Motor control and BAM parametersYou mentioned a "walking pattern model", so I want to make sure we are on the same page: are you using Reinforcement Learning (RL) for the walking policy? If you are indeed using RL, you need to train a new ONNX model using the Rhoban/mjlab_microban repository. For this training phase, you will use your updated MJCF file alongside the new BAM actuator model. Crucially, the BAM parameters are only used in simulation during the training phase. On the real robot, BAM is not used for control at all. The trained policy simply takes the observations and directly outputs position targets for the motors. 3. Next stepsTo help you further, I have a few questions: Are you using the RL pipeline for walking? Also, did you perform the BAM identification yourself on your motors, or did you retrieve an existing identification? Let me know, and we can figure this out! |
|
Hi Marc, thanks for your detailed reply. Your help was really, really helpful, and I did more experiments recently and encountered more problems; the most important one is the differnence of moter performance between RL model performance in Mujoco and real motor performance in the real world. ( The RL results show that the robot can walk, but it is not working when I deployed the model in a real robot ) Yes, I am using the RL pipeline. I retrained an ONNX policy using my modified MJCF model and the BAM parameters that I identified for my STS3215 C049 motors. I now understand that BAM is only used during simulation and that the real robot receives position targets. My main problem is that the real motors respond differently from the simulated motors. Their speed, delay and position tracking behavior are noticeably different. This causes a phase mismatch, so the policy works in simulation but the real robot loses balance and falls almost immediately. I have a few key questions:
I also have a more general question about BAM actuator identification. If a motor does not already have a predefined model in BAM, what is the recommended complete procedure for measuring, identifying and validating it?
|
|
Hi again 🙂 Control Pipeline & Sim-to-Real1. ONNX Output Conversion 2. Sim-to-Real Checklist
BAM Actuator IdentificationThe recently updated BAM documentation covers the entire identification procedure in depth. Please refer to it for the full process: BAM Documentation To answer your specific points:
|
Hi, thanks for detailing your workflow! Tracking down sim-to-real gaps is usually the hard part, but it is definitely fixable. To answer your questions:
1. Is it possible to use STS3215 motors?
Yes, I think that building a Microban variant with these motors and successfully bridging the sim-to-real gap is technically possible. It is great that you identified your motor parameters using BAM. However, a major source of this gap often comes from motor and sensor delays. Since you switched hardware, you will likely need to remeasure and update these delays for your specific setup.
2. Motor control and BAM parameters
You mentioned a "walking pattern model", so I want to make sure we are on the…