bipedal locomotion - oberseminar tams · servo control hardware bipedal locomotion i...

21
MIN Faculty Department of Informatics Bipedal Locomotion Oberseminar TAMS Marc Bestmann University of Hamburg Faculty of Mathematics, Informatics and Natural Sciences Department of Informatics Technical Aspects of Multimodal Systems 07. Januar 2020

Upload: others

Post on 25-Aug-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Bipedal Locomotion - Oberseminar TAMS · Servo Control Hardware Bipedal Locomotion I FurtherworkontheQUADDXLapproache,presentedlastyear I UsingasingleUSB-to-Serial-Chiptohavefourbussystems

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

Page 2: Bipedal Locomotion - Oberseminar TAMS · Servo Control Hardware Bipedal Locomotion I FurtherworkontheQUADDXLapproache,presentedlastyear I UsingasingleUSB-to-Serial-Chiptohavefourbussystems

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

Page 3: Bipedal Locomotion - Oberseminar TAMS · Servo Control Hardware Bipedal Locomotion I FurtherworkontheQUADDXLapproache,presentedlastyear I UsingasingleUSB-to-Serial-Chiptohavefourbussystems

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

Page 4: Bipedal Locomotion - Oberseminar TAMS · Servo Control Hardware Bipedal Locomotion I FurtherworkontheQUADDXLapproache,presentedlastyear I UsingasingleUSB-to-Serial-Chiptohavefourbussystems

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

Page 5: Bipedal Locomotion - Oberseminar TAMS · Servo Control Hardware Bipedal Locomotion I FurtherworkontheQUADDXLapproache,presentedlastyear I UsingasingleUSB-to-Serial-Chiptohavefourbussystems

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

Page 6: Bipedal Locomotion - Oberseminar TAMS · Servo Control Hardware Bipedal Locomotion I FurtherworkontheQUADDXLapproache,presentedlastyear I UsingasingleUSB-to-Serial-Chiptohavefourbussystems

Servo ControlHardware Bipedal Locomotion

Marc Bestmann 6 / 21

Page 7: Bipedal Locomotion - Oberseminar TAMS · Servo Control Hardware Bipedal Locomotion I FurtherworkontheQUADDXLapproache,presentedlastyear I UsingasingleUSB-to-Serial-Chiptohavefourbussystems

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

Page 8: Bipedal Locomotion - Oberseminar TAMS · Servo Control Hardware Bipedal Locomotion I FurtherworkontheQUADDXLapproache,presentedlastyear I UsingasingleUSB-to-Serial-Chiptohavefourbussystems

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

Page 9: Bipedal Locomotion - Oberseminar TAMS · Servo Control Hardware Bipedal Locomotion I FurtherworkontheQUADDXLapproache,presentedlastyear I UsingasingleUSB-to-Serial-Chiptohavefourbussystems

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

Page 10: Bipedal Locomotion - Oberseminar TAMS · Servo Control Hardware Bipedal Locomotion I FurtherworkontheQUADDXLapproache,presentedlastyear I UsingasingleUSB-to-Serial-Chiptohavefourbussystems

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

Page 11: Bipedal Locomotion - Oberseminar TAMS · Servo Control Hardware Bipedal Locomotion I FurtherworkontheQUADDXLapproache,presentedlastyear I UsingasingleUSB-to-Serial-Chiptohavefourbussystems

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

Page 12: Bipedal Locomotion - Oberseminar TAMS · Servo Control Hardware Bipedal Locomotion I FurtherworkontheQUADDXLapproache,presentedlastyear I UsingasingleUSB-to-Serial-Chiptohavefourbussystems

VideoQuintic Walk Bipedal Locomotion

Video

Marc Bestmann 12 / 21

Page 13: Bipedal Locomotion - Oberseminar TAMS · Servo Control Hardware Bipedal Locomotion I FurtherworkontheQUADDXLapproache,presentedlastyear I UsingasingleUSB-to-Serial-Chiptohavefourbussystems

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

Page 14: Bipedal Locomotion - Oberseminar TAMS · Servo Control Hardware Bipedal Locomotion I FurtherworkontheQUADDXLapproache,presentedlastyear I UsingasingleUSB-to-Serial-Chiptohavefourbussystems

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

Page 15: Bipedal Locomotion - Oberseminar TAMS · Servo Control Hardware Bipedal Locomotion I FurtherworkontheQUADDXLapproache,presentedlastyear I UsingasingleUSB-to-Serial-Chiptohavefourbussystems

Live DemoQuintic Walk - Path Planning Bipedal Locomotion

RViz live demo

Marc Bestmann 15 / 21

Page 16: Bipedal Locomotion - Oberseminar TAMS · Servo Control Hardware Bipedal Locomotion I FurtherworkontheQUADDXLapproache,presentedlastyear I UsingasingleUSB-to-Serial-Chiptohavefourbussystems

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

Page 17: Bipedal Locomotion - Oberseminar TAMS · Servo Control Hardware Bipedal Locomotion I FurtherworkontheQUADDXLapproache,presentedlastyear I UsingasingleUSB-to-Serial-Chiptohavefourbussystems

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

Page 18: Bipedal Locomotion - Oberseminar TAMS · Servo Control Hardware Bipedal Locomotion I FurtherworkontheQUADDXLapproache,presentedlastyear I UsingasingleUSB-to-Serial-Chiptohavefourbussystems

Live DemoDeep Quintic Bipedal Locomotion

PyBullet environment demo

Marc Bestmann 18 / 21

Page 19: Bipedal Locomotion - Oberseminar TAMS · Servo Control Hardware Bipedal Locomotion I FurtherworkontheQUADDXLapproache,presentedlastyear I UsingasingleUSB-to-Serial-Chiptohavefourbussystems

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

Page 20: Bipedal Locomotion - Oberseminar TAMS · Servo Control Hardware Bipedal Locomotion I FurtherworkontheQUADDXLapproache,presentedlastyear I UsingasingleUSB-to-Serial-Chiptohavefourbussystems

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

Page 21: Bipedal Locomotion - Oberseminar TAMS · Servo Control Hardware Bipedal Locomotion I FurtherworkontheQUADDXLapproache,presentedlastyear I UsingasingleUSB-to-Serial-Chiptohavefourbussystems

QuestionsFurther Paper Bipedal Locomotion

Questions?

Marc Bestmann 21 / 21