+ All Categories
Home > Documents > Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... ·...

Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... ·...

Date post: 23-Feb-2020
Category:
Upload: others
View: 2 times
Download: 0 times
Share this document with a friend
73
1 Vlad Estivill-Castro (2016) Robots for People --- A project for intelligent integrated systems
Transcript
Page 1: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

1

Vlad Estivill-Castro (2016)Robots for People

--- A project for intelligent integrated systems

Page 2: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

Locomotion Concepts

Chapter 2 (textbook)

© V. Estivill-Castro 2

Page 3: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

What is the courseabout?

◗ textbook◗ Introduction to Autonomous Mobile

Robots

◗ second editionRoland Siegwart, Illah R. Nourbakhsh, and Davide Scaramuzza

© V. Estivill-Castro 3

Page 4: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

General Control Scheme for Mobile Robot Systems◗ (Roland Siegwart, Illah Nourbakhsh, Davide Scaramuzza )

© V. Estivill-Castro 4

Real WorldEnvironment

Sensing

InformationExtraction

LocalizationMap Building

Perc

eptio

n

CognitionPath Planning

Acting

PathExecution

Mot

or C

ontro

l

Raw data

“position”Global Map

map

Actuator Commands

Environment ModelLocal Map

MissionCommands

KnowledgeData Base

Page 5: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Blackboard architecture

◗ Reduce the number of APIs

(c) Vlad Estivill-Castro 5

Whiteboard/BlackboardMiddleware

Sender ReceiverReceiver

ReceiverReceiverReceiver

Page 6: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Blackboard architecture (example)

◗ Controller on an actuator

(c) Vlad Estivill-Castro 6

Whiteboard/BlackboardMiddleware

Sender ReceiverReceiver

ReceiverReceiverReceiver

CONTROLLER

Page 7: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Blackboard architecture (example)

◗ Information producer

(c) Vlad Estivill-Castro 7

Whiteboard/BlackboardMiddleware

Sender ReceiverReceiver

ReceiverReceiverReceiver

SENSOR

Page 8: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

The main communication service◗ Sender

• add message(msg:T) • which is a non-blocking call

◗ Receiver• subscribe(T,f): The receiver subscribes to messages of a

certain type T (of an implied class) and essentially goes to sleep.• Subscription includes the name f of a function. • The blackboard will notify the receiver of the message msg every time

someone posts for the given class T by invoking f(msg) (usually queued in a type T specific thread).

• This is typically called PUSH technology.• get_message(T): The receiver issues a get message to the

blackboard that supplies the latest msg received so far for the type T .

• This is usually called PULL.

(c) Vlad Estivill-Castro 8

Page 9: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Blackboard architecture (PUSH)

◗ Step 1:

(c) Vlad Estivill-Castro 9

Whiteboard/BlackboardMiddleware

Sender ReceiverReceiver

Receiver

subscribe(T,f)call_back on f

Receiverf(msg)

Page 10: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

A popular trend and a critique◗ PUSH technology

• event driven• Assumptions

• there will be sufficient computational resources to enact all the threads generated and to execute the subscribers’ call-backs.

• events would occur with enough sparsity that call-backs would be completed by the time they are executed again, or alternatively require to handle concurrency issues

• coupling and timing consequences: • sub-scriber modules react or act on the data immediately,

thus data is presumed to be as fresh and as recent as possible.

• leads to more coupling– senders must eventually be slowed down or complex handshaking

protocols have to be deployed in order to raise tolerance to message loss.

(c) Vlad Estivill-Castro 10

Page 11: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Blackboard architecture (PULL)

◗ Receivers work at their own pace

(c) Vlad Estivill-Castro 11

Whiteboard/BlackboardMiddleware

Sender ReceiverReceiver

ReceiverReceiver

get_message(T)

Page 12: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Example 1 (Sphere of control)◗ Reporting/publishing a sensor value to the

middleware• How to generate the proper hardware abstraction?

• who is to say when messages are posted?• Is this defined by the subscriber, by the publisher, or by the

API?◗ The PUSH paradigm puts messages in the sphere

of control of the publisher.• subscriber will need to keep up in order to not lose any

messages, no matter whether that specific update rate is necessary or convenient for the receiver.

• the timing of the subscriber is determined by (or tightly coupled with) the publisher.

(c) Vlad Estivill-Castro 12

Page 13: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Example 2 (Separation of Concerns)◗ a controller that sends a message for an action to

be initiated and then waits for that action to have started (or completed) before continuing (a ROSexample)

(c) Vlad Estivill-Castro 13

#include "ros/ros.h"#include "speed_controller/Speed.h"#include <cstdlib>

int main(int argc, char **argv){ ros::init(argc, argv, "speed_demo"); if (argc != 2) { ROS_INFO("usage: speed_demo desired_speed"); return EXIT_FAILURE; }

ros::NodeHandle n; ros::ServiceClient client = n.serviceClient <speed_controller::Speed>("speed"); speed_controller::Speed srv; srv.request.desiredSpeed = atoi(argv[1]); // set speed if (client.call(srv)) ROS_INFO("Speed: %d", (int)srv.response.reportedSpeed); else { ROS_ERROR("Failed to call service speed_controller"); return EXIT_FAILURE; }

return EXIT_SUCCESS;}

THE CLIENT

Page 14: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Example 2 (Separation of Concerns)◗ a controller that sends a message for an action to

be initiated and then waits for that action to have started (or completed) before continuing (a ROSexample)• structure of the message• we will send the desired speed • and get the actual speed back

(c) Vlad Estivill-Castro 14

int32 desiredSpeed---int32 reportedSpeed

THE MESSAGE

Page 15: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Example 2 (Separation of Concerns)◗ a controller that sends a message for an action to be

initiated and then waits for that action to have started (or completed) before continuing (a ROSexample)• copies the desired speed back, as an acknowledgement

of the speed that it is aiming at • sensor and actuator software modules should be kept

separate

(c) Vlad Estivill-Castro 15

THE SERVER

#include "ros/ros.h"#include "speed_controller/Speed.h"

bool set(speed_controller::Speed::Request &req, speed_controller::Speed::Response &res){ res.reportedSpeed = req.desiredSpeed; // <set actuator to desiredSpeed> // return true;}

int main(int argc, char **argv){ ros::init(argc, argv, "speed_controller_server"); ros::NodeHandle n;

ros::ServiceServer service = n.advertiseService("speed", set); ROS_INFO("Ready to set speed."); ros::spin();

return EXIT_SUCCESS;}

Page 16: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Example 2 (Separation of Concerns)◗ a controller that sends a message for an action to be

initiated and then waits for that action to have started (or completed) before continuing (a ROS example)• assume that the actuator module can easily access sensor

data• reported speed would represent the speed when the

command was issued, not when the actual speed was reached

(c) Vlad Estivill-Castro 16

THE SERVER

#include "ros/ros.h"#include "speed_controller/Speed.h"

bool set(speed_controller::Speed::Request &req, speed_controller::Speed::Response &res){ res.reportedSpeed = req.desiredSpeed; // <set actuator to desiredSpeed> // return true;}

int main(int argc, char **argv){ ros::init(argc, argv, "speed_controller_server"); ros::NodeHandle n;

ros::ServiceServer service = n.advertiseService("speed", set); ROS_INFO("Ready to set speed."); ros::spin();

return EXIT_SUCCESS;}

Page 17: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Example 2 (Separation of Concerns)◗ a controller that sends a message for an action to be

initiated and then waits for that action to have started (or completed) before continuing (a ROSexample)• add further complexity to the actuator module by

making it wait until the desired speed is reached• How long should the actuator wait for the target speed

to be reached?• Do we queue or let other call enter?

(c) Vlad Estivill-Castro 17

THE SERVER

#include "ros/ros.h"#include "speed_controller/Speed.h"

bool set(speed_controller::Speed::Request &req, speed_controller::Speed::Response &res){ res.reportedSpeed = req.desiredSpeed; // <set actuator to desiredSpeed> // return true;}

int main(int argc, char **argv){ ros::init(argc, argv, "speed_controller_server"); ros::NodeHandle n;

ros::ServiceServer service = n.advertiseService("speed", set); ROS_INFO("Ready to set speed."); ros::spin();

return EXIT_SUCCESS;}

Page 18: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

The PULL model is better

◗ asynchronous messages are used, • a Control message for the actuator and• a Status message for the sensor

◗ Both the actuator and the controller components us the PULL paradigm to query their corresponding message slots.

◗ Decoupling the sensors modules from the actuator modules

(c) Vlad Estivill-Castro 18

Page 19: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Blackboard architecture (CONTROL/STATUS)◗ Controller on an actuator

• Control message followed by monitoring status message

(c) Vlad Estivill-Castro 19

Whiteboard/BlackboardMiddleware

Sender ReceiverReceiver

ReceiverReceiverReceiver

CONTROLLER

Page 20: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Blackboard architecture (STATUS)◗ Information producer, regularly

post STATUS

(c) Vlad Estivill-Castro 20

Whiteboard/BlackboardMiddleware

Sender ReceiverReceiver

ReceiverReceiverReceiver

SENSOR

Page 21: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Locomotion◗ The other big avenue of robotics

• as opposed to manipulation

◗ Modern definition of Robot• An autonomous system which exists in the

physical world, can sense its environment and can act on it to achieve goals.

© V. Estivill-Castro 21

Page 22: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Locomotion – as found in natureType of Motion◗ Flow in a channel

◗ Crawl

◗ Sliding

◗ Running

◗ Jumping◗

◗ Walking

Resistance to motion

© V. Estivill-Castro 22

Basic kinematics ofmotion

◗ Hydrodynamic forces

◗ Friction forces

◗ Friction Forces

◗ Loss of kinetic energy

◗ Loss of kinetic energy

◗ Gravitational forces

◗ Eddies

◗ Longitudinal vibration

◗ Transverse vibration

◗ Oscillatory movement of a multilink pendulum

◗ Rolling of a polygon

Page 23: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Flows in nature and mankind◗ gliding

◗ sailing

© V. Estivill-Castro 23

Page 24: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Nature◗ Locomotion adapted to environmental

characteristics• context, size• but does not employ wheels (bipedal walking)

◗ Difficult to imitate technically• technical systems today use wheel on the

ground• stable (the robot, with implications to sensors)

• propellers on fluids• legged motion is still mostly a research topic.

© V. Estivill-Castro 24

Page 25: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Biped walking mechanism◗ Vast diversity of approaches

• not far from rolling, as step is smaller• rotating joint not invented by nature• needs dynamic gait, and work against gravity

© V. Estivill-Castro 25

Page 26: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Walking or rolling?◗ Trade-off

• speed• number of actuators• structural complexity• control expense• energy efficient

• terrain (flat ground, soft grounds, climbing …)• movement of the involved masses

• walking / running includes up and down movement of the Center Of Gravity (COG)

• some extra losses

© V. Estivill-Castro 26

Page 27: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Why do we walk? When do we go on wheels?◗ Walk is very diverse, flexibility of the

environment and the terrain• good complex terrain, • speeds less than 10km/hrs

◗ Travel on wheels is fast• but must be flat, regular• efficient for speeds over 100km/hrs

© V. Estivill-Castro 27

Page 28: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Interaction with the environment◗ interaction forces and the mechanisms

(effectors) and actuators that generate them◗ STABILITY

• number of contact points, center of gravity, static/dynamic stabilization, terrain inclination

◗ CHARACTERISTICS OF CONTACT• contact point vs contact area, angle of contact, friction

◗ TYPE OF ENVIRONMENT• structure, medium (water, air, soft ground vs hard

ground

© V. Estivill-Castro 28

Page 29: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Robots with legs◗ The fewer the legs the bigger the stability

challenge• stability with point of contact

• at least three legs are required for static stability• stability with surface contact

• at least one leg is required

◗ During walking (some --- usually half) of the legs are lifted• reducing (loosing) stability?

◗ For static walking, at least 4 (or 6) legs are required

© V. Estivill-Castro 29

Page 30: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Soft implication◗ Less legs require more sophisticated

controls• bipeds – humans• four legs mammals• four legs reptiles• insects 6 or more legs

◗ What were Grey Walters tortoise?◗ What are Braitenberg’s Vehicles?

© V. Estivill-Castro 30

Page 31: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Number of joints of Each Leg--- Degrees of Freedom (DOF)◗ A minimum of two DOF is required to

move a leg forward• a lift and a swing motion• sliding-free motion in more than one direction

not possible

◗ Leonardo Da Vinci's Lion Robot for the King of France, Year-1515• http://www.youtube.com/watch?v=7jBkwC

Wxaic

© V. Estivill-Castro 31

Page 32: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Legs◗ Three (3) DOF for each

leg in most cases◗ 4th DOF for the ankle

joint• might improve

walking and stability• additional joint

(DOF) increases complexity of the design and locomotion control

© V. Estivill-Castro 32

Page 33: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

GAITS – number of distinct event sequences◗ 4 state of two legs (biped) robot

• both legs down• left up, right down• right up, left down• both up

◗ States of a four legged robot• 16 states

• left front and 3 others up

◗ In general, 2k states, for k legs

© V. Estivill-Castro 33

Page 34: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

GAITS – number of distinct event sequences◗ sequences of two legs (biped) robot

• turning on a right leg◗ How many sequences with 2k objects

where I don’t repeat.• and I take away the symmetries of the robot

◗ At least (2k-1)!• the more legs the more complexity of the

possible gaits!•the less legs the more complexity of the motion

© V. Estivill-Castro 34

Page 35: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Most obvious gaits◗ 6 legs, static, a triangle supports the COG

at all times

© V. Estivill-Castro 35

Page 36: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Illustration

◗ Six-Legged Walking Robot• http://www.youtube.com/watch?v=GyjzBW-

HQrg◗ 4 Legged Walking/Crawler Robot 1

• http://www.youtube.com/watch?v=GayaZQ2i-wc

• Quadruped Robot: sQ1 Trot Gait(Forward)• http://www.youtube.com/watch?v=-ZgkTG-

ZquM© V. Estivill-Castro 36

Page 37: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Robocup Aibo legged league◗ MiPAL goals

• MiPal First Ever Goal• http://www.youtube.com/watch?v=egIOvgqoVE

U&feature=player_embedded

• MiPal Aibo Goals JPN• http://www.youtube.com/watch?v=lWMHzMWU

kJ8&feature=player_embedded

© V. Estivill-Castro 37

Page 38: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Dynamic Walk vs Static walk

Statically stable◗ Bodyweight supported

by at least 3 legs• COG in support area

◗ Even if the joins ‘freeze’instantaneously, the robot will not fall• trade-off prefers safety

over speed

Dynamic walking◗ Robot will fall if not

continuously moving• motor-bike analogy

◗ Less than three legs can be in ground contact

◗ fast, efficient, but demands for actuation and control

© V. Estivill-Castro 38

Page 39: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Dynamic walking with Four Legs

◗ Quadruped• Boston Dynamics Big Dog (new video March

2008)• http://www.youtube.com/watch?v=W1czBcnX1

Ww

© V. Estivill-Castro 39

Page 40: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

The progress in humanoid/ 2-legged walking

© V. Estivill-Castro 40

Page 41: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Stiff robots are dangerous

◗ World's Most Dangerous Robot• http://www.youtube.com/watch?v=6Mq_BTz

A1Hc

◗ Investigate what are compliant robots• Most environments using robots do not allow

human beings nearby

© V. Estivill-Castro 41

Page 42: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Passive Dynamic Walker

◗ Passive Walking Robot Propelled By Its Own Weight http://www.youtube.com/watch?v=rhu2xNIpgDE

© V. Estivill-Castro 42

Page 43: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Contrast of flexible / passive walk◗ Efficiency

• cmt = | mech. energy|/(weight ✕ distance traveled)

◗ Asimov• cmt = 1.6

◗ Bipedal ETH• cmt = 0.31

◗ Passive walker• cmt = 0.055

© V. Estivill-Castro 43

Page 44: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Research for dynamic walking◗ Optimized gaits

• use ‘elasticity’ as a storage for energy• allow locomotion for varying frequencies and

speeds• different gaits gave different elements behave

differently

◗ The energetically most efficient gait is a function of desired speed.

© V. Estivill-Castro 44

Page 45: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Series Elastic Actuator ◗ The best five biped walkers

• http://mindtrans.narod.ru/walkers/walkers.htm

© V. Estivill-Castro 45

Page 46: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Efficient dynamic walking◗ requirements

• back-drivable to allow unimpeded natural dynamics

• able to perform negative work• have a low inertia and gear ratio to keep the

reflected inertia small• have an adjustable actuator compliance• highly efficient

◗ series elastic actuation• requires active energy consumption• not all the benefits of passive dynamics

© V. Estivill-Castro 46

Page 47: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Its is much easier on wheels◗ Three wheels are sufficient to guarantee

stability• More than 3 demands suspension• There are many types of wheels

1. standard wheel• 2 DOF

2. castor wheel• 3 DOF

3. sweetish wheel• 3 DOF

4. ball or spherical wheel• suspension issues

© V. Estivill-Castro 47

Page 48: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Characteristics of robots on wheels◗ Stability of the vehicle guaranteed with 3 wheels

• if the center of gravity is within the triangle which is formed by the ground and the contact point of the wheels

• stability improved with 4 or more wheels• however, the arrangements are hyper-static and

require a flexible suspension system• bigger wheels allow overcome high obstacle• most arrangements are non-holonomic• Combining actuation and steering on one wheel make

the design complex and adds additional errors for odometry

© V. Estivill-Castro 48

Page 49: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Different arrangements of wheels◗ Two wheels

• COG below the wheels◗ Three wheels

• point of contact

© V. Estivill-Castro 49

free wheel

Page 50: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Synchro Drive◗ All wheels operate on synchronous actuator

(one motor)• defines the speed

◗ All wheels are steered synchronously by a second motor• sets the heading of the vehicle

◗ LEGO Mindstorms NXT, HOLO3CYCLE• http://www.youtube.com/watch?v=dqPMegi

zjwk

© V. Estivill-Castro 50

Page 51: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

CMU Uranus. Omnidirectional 4 wheels

◗ Movement in the plane has 3 DOF• only 3 wheels can be independently

controlled• perhaps better just 3 wheels

© V. Estivill-Castro 51

Page 52: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

Other locomotion's

◗ Rovers• ie obstacles

© V. Estivill-Castro 52

Page 53: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

other locomotion

◗ caterpillars• ie surface

© V. Estivill-Castro 53

Page 54: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS

other locomotion

◗ flying

© V. Estivill-Castro 54

Page 55: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS © V. Estivill-Castro 55

Summary• Locomotion is challenging

• Legs are much more versatile for the environment but far more challenging

• Wheels are less versatile, but provide more stability.

• May offer a challenge for non-holonomic robots

Page 56: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

Practical Exercise

Emergent behavior

© V. Estivill-Castro 56

Page 57: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

57

Myth 3:Look at the robot and you can discover what it is doing

Page 58: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS © V. Estivill-Castro 58

Page 59: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS © V. Estivill-Castro 59

Page 60: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS © V. Estivill-Castro 60

Page 61: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS © V. Estivill-Castro 61

Page 62: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS © V. Estivill-Castro 62

Page 63: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS © V. Estivill-Castro 63

Page 64: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS © V. Estivill-Castro 64

Page 65: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS © V. Estivill-Castro 65

Page 66: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS © V. Estivill-Castro 66

Page 67: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS © V. Estivill-Castro 67

Page 68: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

68

What is the team of robots doing?

Page 69: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS © V. Estivill-Castro 69

Page 70: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS © V. Estivill-Castro 70

Page 71: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS © V. Estivill-Castro 71

The behaviour (the program is the same)1. Walk straight2. If obstacle is visible, rotate so obstacle

becomes invisible3. If wall becomes visible, rotate away from

the wall4. Repeat

Page 72: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS © V. Estivill-Castro 72

The hardware is different

◗ Sensor exactly in front

◗ Sensors in an angle that allows an obstacle to be pushed without the robot noticing

• Obstacles are moved until another one is close

Page 73: Vlad Estivill-Castro (2016) - School of ICT, Griffith Universityvlad/teaching/robotics.d/... · 2016-08-26 · 1 Vlad Estivill-Castro (2016) Robots for People--- A project for intelligent

IIIS © V. Estivill-Castro 73


Recommended