CS148 - Building Intelligent Robots Lecture 3: Sensors...

44
Jenkins CS148 Building Intelligent Robots Lecture 3 – Sensors and Actuators – Slide 1 CS148 - Building Intelligent Robots Lecture 3: Sensors, Actuators, and Kinematics Instructor: Chad Jenkins (cjenkins)

Transcript of CS148 - Building Intelligent Robots Lecture 3: Sensors...

Page 1: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 1

CS148 - Building Intelligent RobotsLecture 3: Sensors, Actuators, and Kinematics

Instructor: Chad Jenkins (cjenkins)

Page 2: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 5

A robot is made up of three basic types ofcomponents?

???

Page 3: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 6

A robot is made up of four basic types ofcomponents?

Links, Actuators, Sensors, and Controllers

???

Page 4: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 7

What comprises a robot?

• Links– typically rigid bodies

C. Atkeson/Sarcos

ActivMedia Pioneer

Pino

Page 5: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 8

What comprises a robot?

• Links– typically rigid bodies

• Actuators– connect and move links

C. Atkeson/Sarcos

ActivMedia Pioneer

Pino

Page 6: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 9

What comprises a robot?

• Links– typically rigid bodies

• Actuators– connect and move links

• Sensors– perceiving the world

C. Atkeson/Sarcos

ActivMedia Pioneer

Pino

Page 7: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 10

What comprises a robot?

• Links– typically rigid bodies

• Actuators– connect and move links

• Sensors– perceiving the world

• Other– endeffectors, communication, etc.

• Does perfect sensing and perfectactuation imply a perfect robot?

C. Atkeson/Sarcos

ActivMedia Pioneer

Pino

Page 8: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 11

What comprises a robot?

• Links– typically rigid bodies

• Actuators– connect and move links

• Sensors– perceiving the world

• Other– endeffectors, communication, etc.

• Does perfect sensing and perfectactuation imply a perfect robot?– No, control must still be addressed

C. Atkeson/Sarcos

ActivMedia Pioneer

Pino

Page 9: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 12

Constructing physical robots• Constructing robots can be

complicated• Why?

Segwaynaut/NASA

Wabian/Waseda U.

Mars Rover/JPL

Page 10: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 13

Constructing physical robots• Constructing robots can be

complicated• Why?

– Physical limitations• Sensor technology• Actuator technology• Power consumption

– Design issues• General structure

– mobile, underwater, aerial, full-body, torso, single arm

• Interaction modality– facial expression, endeffector type

• Level of articulation

• Controllers try to push the limits

Segwaynaut/NASA

Wabian/Waseda U.

Mars Rover/JPL

Page 11: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 14

Sensor options

Page 12: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 15

Proprioception

• The unconscious perception of movement and spatialorientation arising from stimuli within the body itself.– Sensing internal to the robot

• Opposed by exteroception:– sensitivity to stimuli originating outside of the body

• Exteroception is more prone to noise and hidden state

• Sensor choices for proprioception and exteroception

Page 13: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 16

Rotation sensing

• Potentiometers– variable resistors

• optical encoders

Alciatore,Histand/Colorado St.

Page 14: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 18

Contact sensingFlex Sensor/Kronos Robotics

Force sensors on skin

Roomba/iRobot.

Page 15: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 19

Passive optical sensing

• Light sensor• single camera (robot color blob)• stereo vision

Page 16: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 20

Stereo example from Mars RoverCamera calibration

Image processing

Stereo correspondence

Elevation map

Obstacle detection

Camera images

Page 17: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 21

Time of flight ranging

• Active emission of– infrared– ultrasonic– light arrays– laser

• Measure distance toclosest obstacle bytime for emisson toreflect and return tosensor

Crunch/jormungand.net

Swiss Ranger/CSEM

Planar laser ranging

Page 18: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 22

Sonar v. Laser

Howard/USC

Crunch/jormungand.net

Howard/USC

Howard/USC

Howard/USC

Page 19: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 23

Inertial measurement

• Gyroscopes– angular velocity

• Accelerometers– gravitational vector

• Magnetometers/compass– magnetic field vector

– Crunch is equipped with an ADXRS150MEMS rate gyro; gyro drift is zeroed byan ADXL202 MEMS accelerometer.Together they continuously provide anaccurate measurement of the robot'spitch. Crunch/jormungand.net

Page 20: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 25

Actuator Options

• Electro-magnetic• Hydraulic• Pneumatic• Shape memory alloys• Piezoelectric• Photoreactive• Chemical reactive

– polymer actuators

Pino/ZMP

For more details, refer to “A Surveyof Micro-Actuators Technologies forFuture Spacecraft Missions” by R.Gilbertson and J. Busch

Page 21: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 27

Gear boxes

• Advantages– small torque -> large torque– high speed -> low speed– light motors and gear boxes

• Disadvantages– amplification of rotor inertia– friction– backlash– back-drivability (stiff)

Page 22: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 29

Actuator Options

• Electro-magnetic• Hydraulic• Pneumatic• Shape memory alloys• Piezoelectric• Photoreactive• Chemical reactive

C. Atkeson/Sarcos

For more details, refer to “A Surveyof Micro-Actuators Technologies forFuture Spacecraft Missions” by R.Gilbertson and J. Busch

Page 23: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 30

Actuator Options

• Electro-magnetic• Hydraulic• Pneumatic• Shape memory alloys• Piezoelectric• Photoreactive• Chemical reactive

ISAC/VanderbiltFor more details, refer to “A Surveyof Micro-Actuators Technologies forFuture Spacecraft Missions” by R.Gilbertson and J. Busch

BioRobotics Lab/U. Washington

Page 24: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 31

Actuator Options

• Electro-magnetic• Hydraulic• Pneumatic• Shape memory alloys• Piezoelectric• Photoreactive• Chemical reactive

Nanomuscle

For more details, refer to “A Surveyof Micro-Actuators Technologies forFuture Spacecraft Missions” by R.Gilbertson and J. Busch

Page 25: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 32

Actuator Options

• Electro-magnetic• Hydraulic• Pneumatic• Shape memory alloys• Piezoelectric• Photoreactive• Chemical reactive• Polymer actuatorsFor more details, refer to “A Surveyof Micro-Actuators Technologies forFuture Spacecraft Missions” by R.Gilbertson and J. Busch

Page 26: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 33

Kinematics and Physical Dynamics

• Kinematics– The branch of mechanics that studies the motion of a body or a

system of bodies without consideration given to its mass or theforces acting on it

– how a robot structure moves without considering physics

• Dynamics– The branch of mechanics that is concerned with the effects of

forces on the motion of a body or system of bodies, especiallyof forces that do not originate within the system itself

– how a robot structure moves with respect to physics

Page 27: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 34

Kinematics

• How could youcommunicate the pose ofyour body in a vector?

• How do you specify theconfiguration of a robot?

Page 28: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 35

Kinematics

• How could youcommunicate the pose ofyour body in a vector?

• How do you specify theconfiguration of a robot?

• Rigid body transformation– translations and rotations

• Hierarchically– directed acyclic (tree) structure Stolen from nsp

Page 29: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 36

Local coordinates andRigid body transformation• Each link and parent joint form

their own local coordinate system– assuming rigid links

• Coordinate transformation– frame change, change of basis– relates coordinates of different local

frames

• 2 relevant transforms– translation

y

x

z

x’

z’y’

T

T1,2

F2F1

– rotation

Page 30: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 37

Homogenious coordinates

• Rotation, translation, and other transforms can beperformed through matrix multiplication– do I need to explain matrix multiplication?– translation requires homogenious coordinates

• A 2D point in homogenious coordinates:

• Matrices for 2D translation and rotation

Page 31: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 38

3D transformations

• Translation (D)

• Rotation about x (Rx), y (Ry), and z (Rz) axes

Page 32: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 39

Composing transformations

• Transformations can be combined throughmultiplication

• A three axis rotation can be formed through individualrotations about each axis– R = RxRyRz

• A change in coordinate systems is performed through arotation followed by a translation– T = DR

Page 33: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 41

Articulated kinematics

• Given 3D transforms, we know how to relate two localcoordinate frames

• How do we use these transforms to build articulatedkinematic systems?

• Types of joints– Revolute: rotational– Prismatic: translational

Page 34: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 42

Hierarchical kinematics

• Globalcoodinates– absolute

root

x

y

zO

Tglobal,root

Page 35: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 43

Hierarchical kinematics

• Globalcoodinates– absolute

root• Body root

x

y

zO

Tglobal,root

Page 36: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 44

Hierarchical kinematics

• Globalcoodinates– absolute

root• Body root• 1st level

children

x

y

zO

Tglobal,root

Troot,child

Page 37: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 45

Hierarchical kinematics

• Globalcoodinates– absolute

root• Body root• 1st level

children• Nth level

children

x

y

zO

Tglobal,root

Troot,child

Tparent,child

Page 38: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 46

Hierarchical kinematics

• Globalcoodinates– absolute

root• Body root• 1st level

children• Nth level

children• Leaf

bodies x

y

zO

Tglobal,root

Troot,child

Tparent,child

Tparent,leaf

Page 39: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 47

Hierarchical kinematic representations

• Hierarchical kinematic representations define theconfiguration space of the robot– a robot configuration is specified by a vector containing all of

the robot’s degrees-of-freedom (DOFs)– think of a D-dimensional space where each DOF is an axis

• Recursive notations for hierarchical kinematics– Matrix stack– Denavit-Hartenberg notation

Page 40: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 48

Kinematic matrix stack

• Maintain global transformation into current localcoordinates at the top of a stack

• Push transformation onto stack when entering a localframe

• Pop transformation from stack when leaving a localframe Tglobal,hip

Thip,torso* Tglobal,hipTglobal,hip

Trleg2,rleg1* Thip,torso* Tglobal,hipThip,rleg1* Tglobal,hip

Tglobal,hip

Page 41: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 49

Denavit-Hartenberg notation

Zhang/CMU

Page 42: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 51

Denavit-Hartenberg notation(hierarchical view)

Page 43: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 52

Forward and inverse kinematics

• Forward kinematics– computing

endeffector position(x) from robotconfiguration (Theta)

• Inverse kinematics– computing robot

configuration (Theta)from endeffectorposition (x)

– no unique solution– heuristics

Page 44: CS148 - Building Intelligent Robots Lecture 3: Sensors ...cs.brown.edu/courses/cs148/old/2004fall/lecture_slides/cs148_3.pdf · Jenkins – CS148 Building Intelligent Robots Lecture

Jenkins – CS148 Building Intelligent RobotsLecture 3 – Sensors and Actuators – Slide 54

Additional References

• Fu, Gonzales, and Lee “Robotics-Control, Sensing,Vision and Intelligence”

• R. Gilbertson, J. Busch, “A Survey of Micro-ActuatorsTechnologies for Future Spacecraft Missions”

• P. I. Corke, “Robotics Toolbox for Matlab”• S. Schaal’s robotics notes

– http://www-clmc.usc.edu/• A. Requicha’s computational geometry notes

– http://www-pal.usc.edu/~requicha/book.html• A. Watt, M. Watt “Advanced Animation and Rendering

Techniques - Theory and Practice"