
smiller29

DJ or anyone else, I have a few questions based on my limited knowledge of ARC. The one thing I have learned about ARC there are many places where you can add scripts and many ways to make things work. With that said I am working on a Biped robot project and at a point I want to work with Auto Position (Gait) skill and the MPU6050 skill. I understand the concept of how both of these skills work so let me just jump to problem/question.
Problem: I want to add stability logic within the movements of the auto positions and also when no Auto Position frames or actions are actively moving.
So I think when not moving AutopositionStatus = 0 I can just use a looping script in the MPU6050 skill to look for conditions that will trigger Auto Position frames or actions. But when using the Auto Position skill I need to add scripts within the:
Auto Position Start Script This script will be run before a frame or action is executed.
Auto Position End Script This script will be run after all the frames or actions in the queue have been executed.
So one question is should I stop the MPU6050 looping script in the Auto Position Start Script and start it backup in the Auto Position End Script? and at the same time add login stability logic in the end script before turning back on the MPU6050 script?
I am just looking for the best place my code within ARC so if anyone has done this and can provide more insight please let me know.
Legs look great. Are you going to open source. There is a lot of height in these for such small feet especially when you add a body and arms. I think you are going to struggle when he stands on one leg to walk. May want to enlarge feet and put servos directly on top of each other to lower Center of gravity.
EzAng I have reviewed everything Jeff has posted he is one of the reasons I am doing this project. Thank you for posting the link.
Dave, I really have not decided yet on my path it could end up being a combination of many methods. The information you shared is great and could really help me come up with a solution going forward so thank you for your post.
Nink, these legs are a work in progress of mine and another builder Chris Calleja we have improved the current Youbionic X1 leg and hip design and also the the shoulders and arms. More to come on that in the future. At some point I feel we will release all these changes to the public, but for now we are still going through the R&D process to complete the new version XR-1.
The legs are very strong all joints have ball bearings and there is no structural load on the servo motors. At this point the movements seem very repeatable and the balance is very good. We located as much of the weight as we could in the hips and with the universal joints we have a full range of motion.
OK great I look forward to watching progress. I have thought about using BLDCs and reaction wheels in the head or body of a robot to control the ballance.
Nink, those are cool but I would think they would need to be located in the hips to work and the size of something like that would be very problematic.
The close loop device DJ talked about sounds like the best way of doing this. I just wish I knew how to make a device like this but at the same time I don’t want to have a need to have one of these devices that need IMU corrections.
like in my case let’s say I wanted to add side to side stability it would require at a minimum 4 servos and 6 if I also want to add the torso and 8 if I wanted to add the head. This does include the arms.
This is why I am wanting to put one MPU in the hip where the center of gravity is in the robot and try to find a way to use the features in ARC develop a solution.
The two functions were added for the release this week.
https://synthiam.com/Support/javascript-api/Servo/setFineTuneOffset and https://synthiam.com/Support/javascript-api/Servo/getFineTuneOffset
For both JavaScript and Python
So DJ, if I understand this correctly using the setFineTuneOffset would be like trimming the servo? Use case I need a joint to be 90 degrees but to get it at 90 degrees the servo needs to be at 93 degrees I could set the setFineTuneOffset +3 so when I tell the servo to go to 90 it will really move it to 93. If this is also a global setting this is really going to be helpful. Thank you for making the changes!!!
@athena give me a summary of this support topic please.