A simple and robust hierarchical control architecture for a walking robot Richard Kennaway School of Computing Sciences University of East Anglia
Control William Powers “Behavior : The Control of Perception” (1973) “Making Sense of Behavior: The Meaning of Control” (1999) Hierarchical Perceptual Control Theory (HPCT) 1. Living organisms act as control systems: their behaviours are chosen so as to produce intended perceptions. 2. The control systems in an organism are arranged in a hierarchy. Only the controllers at the bottom level send outputs to the physical actuators. All higher level controllers send their outputs to controllers at the next level down.
Control The inverted pendulum x cos + l = g sin + ( f cos )/ m.. x ( M + m ) + m l cos = F + f + m l 2 sin ... F x m mass M l rbrb f b
Control Physics Control system Controlling the inverted pendulum rbrb b rbrb bb. o = b - x rbrb bb. rbrb o. roro x. rbrb bb. rbrb o. roro x. rxrx x... rbrb bb. rbrb b. F x cos + l = g sin + ( f cos )/ m.. x ( M + m ) + m l cos = F + f + m l 2 sin ...
Control Two-level system rxrx x x. rxrx f = mx... k k’ r x = k ( r x - x ). mx = k’ ( r x - x ).... m x + k’ x + k k’ x = k k’ r x....
Control Two-level system m x + k' x + k k' x = k k' r x.... ½ k ± Roots of characteristic equation: where = ( k ' / m )/ k k kk k kk kk = 4 0
Control Backhoe excavator
Control Control system bucket perceptions Physics heightreachslope joint 1joint 0joint 2 inputs: joint angle velocities outputs: joint torques Backhoe excavator control hierarchy
Control Control system bucket perceptions Physics heightreachslope joint 1joint 0joint 2 inputs: joint angle velocities outputs: joint torques Backhoe excavator control hierarchy joint 3
Control joint backhoe
Control eq perception Control system bucket perceptions Physics heightreachslope joint 1joint 0joint 2 inputs: joint angle velocities outputs: joint torques Backhoe excavator control hierarchy joint 3
Control Multivariable two-level system rxrx x y. ryry y... h k r y = L h ( r x - x ). y = k ( r y - y ).... x + k x + h k G L x = h k G L r x... L x = G y + A.
Control Two-legged two d.o.f. robot h = ( x + y )/2 p = ( x + y )/ l h = ( f x + f y )/ m.. p = ( f y f x ) l / I..
Control k hk h k pk p k yk y k xk x Two-legged two d.o.f. robot control 11 1 11 rhrh rprp hxpyfxfx fyfy.. ryry.. rxrx. r x = k h h + k p p. r y = k h h k p p f x = k x ( r x - x ).. f y = k y ( r y - y ).. h = ( x + y )/2 p = ( x + y )/2 h = f x + f y.. p = f y f x.. Take k h = k p = 1, k x = k y = k.
Control Two-legged two d.o.f. robot control h + 2 k h + 2 k h = 0... p + 2 k p + 2 k p = 0... h p
Control kk Coupling between height and pitch 1 1 11 rhrh rprp hxpyfxfx fyfy.. ryry.. rxrx. r x = h + p. r y = h p f x = k ( r x - x ).. f y = k ( r y - y ).. h = ( x + y )/2 p = ( x + y )/2 h = f x + f y.. p = f y f x.. h + 2 k h + k ( +1) h = 0... p + 2 k p + 2 k p = k ( 1) h...
Control h + 2 k h + k ( +1) h = 0... p + 2 k p + 2 k p = k ( 1) h... 0.5 0.8 1.1 1 0.5 0 1.5 2 Coupling between height and pitch
Control Control system body perceptions Physics Four-legged robot control architecture ht. l-r sway f-b sway pitchrollyaw leg L1 leg R1 leg L0 sh. yaw leg L0 sh. pitch leg L0 knee leg R0 sh. p. leg R0 sh. y. leg R0 knee inputs: joint angle velocities outputs: joint torques
Control Control system body perceptions Physics Four-legged robot control architecture ht. l-r sway f-b sway pitchrollyaw leg L1 leg R1 leg L0 sh. yaw leg L0 sh. pitch leg L0 knee leg R0 sh. p. leg R0 sh. y. leg R0 knee inputs: joint angle velocities outputs: joint torques
Control Limitations of the simulation Massless legs Unlimited friction between feet and ground Not important for standing up, a little important for walking. Allows more rapid walking than is truly feasible. Suppresses uncontrolled modes -- splay forces between feet.
Control A better physical simulation Vortex physics library ( Real-time 3D articulated bodies, with collision detection, friction, and rendering.
Control Eliminating foot splay forces Two approaches: Add extra controllers to control splay forces at zero. Have the top-level controllers demand contact forces between the feet and the ground, and calculate the actuator forces necessary to achieve these.
Control L0 foot height L0 foot outward L0 foot forward Control system perceptions Physics Control of foot position ht, l-r, f-b, pitch, roll, sway leg L0 sh. yaw leg L0 sh. pitch leg L0 knee inputs: joint angle velocities outputs: joint torques
Control L0 foot height L0 foot outward L0 foot forward Control system perceptions Physics Control of foot position ht, l-r, f-b, pitch, roll, sway leg L0 sh. yaw leg L0 sh. pitch leg L0 knee inputs: joint angle velocities outputs: joint torques
Control Walking For a leg in the air, turn off the linkage to the body position/orientation controllers, and turn on a linkage to foot position controllers. Gait cycle: Set reference foot position for alternate legs to a position forwards and raised from the ground. Set reference foot positions for those feet to below ground level. Wait for all feet to hit the ground. Stand for a period of time. Repeat for the other legs.
Control Turning Same as walking, except for different foot reference positions. To turn left, front feet step to the left, rear feet to the right.
Control Navigation Sense distance and direction of landmark. Vary walk and turn amplitude accordingly.