bipedal locomotion - oberseminar tams · servo control hardware bipedal locomotion i...
TRANSCRIPT
MIN FacultyDepartment of Informatics
Bipedal LocomotionOberseminar TAMS
Marc Bestmann
University of HamburgFaculty of Mathematics, Informatics and Natural SciencesDepartment of InformaticsTechnical Aspects of Multimodal Systems
07. Januar 2020
Today I want to give you an overview of my work in the last year.It is like an update for my talk last year.
Reminder of my thesis topic:I Bipedal walkingI HolonomicI Low Cost hardwareI Integration with
I fallingI stand upI pathplanningI odometry
Marc Bestmann 2 / 21
Table of ContentsBipedal Locomotion
1. Hardware2. Dynamic Stack Decider3. Hardware Control Manager4. Quintic Walk
Inverse KinematicsPath PlanningOdometry
5. Deep Quintic6. Further Paper
Marc Bestmann 3 / 21
HardwareHardware Bipedal Locomotion
I I had most of the necessary hardware for my thesis finishedI This year I mostly worked on improving and publishing
Marc Bestmann 4 / 21
Servo ControlHardware Bipedal Locomotion
I Further work on the QUADDXL approache, presented last yearI Using a single USB-to-Serial-Chip to have four bus systemsI The goal was to reach 1kHz update cycle on the 20 Dynamixel
servosI My prototype reached 1,373 Hz (compared to current best of
ca. 200Hz)I I wrote a paper which I presented at the RoboCup SymposiumI Currently a student (Jasper) is integrating it into the robotI Additional work was done by a student (Tobias) to create a
FPGA versionI Will probably be continued a independent study
Marc Bestmann 5 / 21
Servo ControlHardware Bipedal Locomotion
Marc Bestmann 6 / 21
Foot PressureHardware Bipedal Locomotion
I Worked a bit further on foot pressure sensorsI Able to read them with 700HzI Further improvements will be investigated by students
I Replacing microcontroller for better update rateI 3D printing foot base for nicer integration
Marc Bestmann 7 / 21
Falling ProtectionHardware Bipedal Locomotion
I The robot was often damaged when fallingI Mostly broken gears due to the impactI Flexible 3D printed bumpers were added on the torsoI Flexible 3D printed SEAs were added to the shouldersI Most of the work was done by the RoboCup team
Marc Bestmann 8 / 21
Dynamic Stack Decider - DSDDynamic Stack Decider Bipedal Locomotion
I Lightweight behavior frameworkI Flexible like a behavior tree and simple like a FSMI I already wrote a paper in 2018 for a workshop at IROS which
was canceledI 2019 I co-authored a new paper which is in second phase of
peer review for Journal of Intelligent & Robotic SystemsI Some improvements were made
I Better rqt pluginI Creation by Domain Specific Language
I Currently in use for the master project
Marc Bestmann 9 / 21
Hardware Control Manager - HCMHardware Control Manager Bipedal Locomotion
I Allows to handle bipedal robot like wheeled onesI Seven functions
I Hardware errorI Manual stopI FallingI Standing upI Joint mutexI Semantic state
I This year updated to new DSD versionI I’m currently writing the paperI Probably will submit it in a journal
Marc Bestmann 10 / 21
Quintic WalkQuintic Walk Bipedal Locomotion
I Holonomic bipedal walk engine in cartesian spaceI Parameters influence position of quintic spline pointsI I implemented and presented the first version in 2018
I Was still completely open loopI This year I improved it
I Complete refactoring of the code baseI Common spline engine interface also used in kick and stand upI Faster speed changeI PID torso control to improve pitch stabilityI Stopping when unstableI Phase resetI BioIK balance goal did not work
I Won the push recovery challenge in this years RoboCupI A bit more testing and evaluation for the stability features is
neededI Learning of parameters in simulation would still be necessaryI Paper planed for this years CLAWAR
Marc Bestmann 11 / 21
VideoQuintic Walk Bipedal Locomotion
Video
Marc Bestmann 12 / 21
Inverse KinematicsQuintic Walk - Inverse Kinematics Bipedal Locomotion
I Walk engine computes goals in Cartesian spaceI Need to be transformed into joint space by IKI Currently BioIK (gradient method) is usedI Takes up a lot of computing power
I ca. 1,5 cores at 200Hz control cycleI Since no additional BioIK goals are used, I tried other
approachesI Analytic solution not easy since first three joint axis don’t crossI FastIK does not find a solutionI KDL and TrackIK work in the MoveIt! demo, but not in my
code
Marc Bestmann 13 / 21
Path PlanningQuintic Walk - Path Planning Bipedal Locomotion
I The walk engine takes velocities as inputI To be able to go to a specific location, path planning is
necessaryI Due to the HCM we can handle the robot as if it has wheelsI Therefore I used the standard ROS package move_baseI After some initial problems it worked wellI Biggest problem was the odometry
Marc Bestmann 14 / 21
Live DemoQuintic Walk - Path Planning Bipedal Locomotion
RViz live demo
Marc Bestmann 15 / 21
OdometryQuintic Walk - Odometry Bipedal Locomotion
I Originally I computed the odometry just by using the walkengine
I One transformation tracked where the support foot is in theworldI After each step the goal of the step was added to this vector
I This one was combined with the current goal of the torso inrelation to the support foot to get the odometry
I The error was bigger than expected due to servos in the kneesnot reaching the goal position
I This lead to problems with the path planningI I wrote a new odometry, which uses the actual joint feedbackI The error was largely minimizedI A more in depth evaluation has to be done
Marc Bestmann 16 / 21
Deep QuinticDeep Quintic Bipedal Locomotion
I I want to improve the walking with RLI My idea is to use reward shaping similar to Deep MimicI Normally this is done by using mocap dataI The Wolfgang kinematic is very different from humansI Instead of using mocap, use Quintic Walk dataI Train using PPOI Original my idea was to use RoboSchool
I Deprecated and not longer supportedI Multiple other problems with code base
I DeepMimic code base not usableI Decided on PyBulletI As validation I tried to let the robot learn to stand still
I Active stable standing is actually interesting for push recoveryI Currently not working, I don’t know why
Marc Bestmann 17 / 21
Live DemoDeep Quintic Bipedal Locomotion
PyBullet environment demo
Marc Bestmann 18 / 21
Current StateDeep Quintic Bipedal Locomotion
I Robot XI Robot model XI Train environment (PyBullet) (X)I Learn algorithm (stable baselines PPO2) (X)I Policy network (same as Deep Mimic) (X)I Reward function 7I Real world training / evaluation 7
I Make robot able to withstand many falls XI HCM to stand up automatically XI Celing cam + april tag to get data XI Pathplanning to provide command velocities XI Evaluation script that provides random navigation goals and
records results 7
Marc Bestmann 19 / 21
Further PapersFurther Paper Bipedal Locomotion
I Unrelated to this I co-authored two more papers in 2019I Position Estimation on Image-Based Heat Map Input using
Particle Filters in Cartesian SpaceI Main author NiklasI Published at IEEE MFI
I An Open Source Vision Pipeline Approach for RoboCupHumanoid SoccerI Main author NiklasI Published at RoboCup Symposium
I Ask me about it if you are interested
Marc Bestmann 20 / 21
QuestionsFurther Paper Bipedal Locomotion
Questions?
Marc Bestmann 21 / 21