.. _package-rst-hri: ================= Package rst.hri ================= Human–robot interaction is the study of interactions between humans and robots. It is often referred as HRI by researchers. This package contains data type definitions related to human-robot interaction. .. seealso:: Wikipedia article containing the definition above http://en.wikipedia.org/wiki/Human-robot_interaction Messages ======== .. container:: mess4ge-multi .. container:: mess4ge-graph .. digraph:: message_graph fontname="Arial"; fontsize=11; stylesheet="../_static/graphs.css"; node [fontsize=11,fontname="Arial"] edge [fontsize=11,fontname="Arial"] "10" [label=<
LegsList
Legslist
>,shape=box,style=filled,fillcolor="white"]; "11" [label=<
Legs
FLOAT32angle
FLOAT32angle_variance
FLOAT32distance
FLOAT32distance_variance
BOOLpair
>,shape=box,style=filled,fillcolor="white"]; "7" [label=<
HighlightTarget
ASCII-STRINGtarget_id
Durationduration
Modalitymodality
>,shape=box,style=filled,fillcolor="white"]; "9" [label=<
Modality
GAZE1
GESTURE2
AMBIENT_LIGHT3
SOUND4
SPOT_LIGHT5
>,shape=box,style=filled,fillcolor="white"]; "8" [label=<
Duration
UINT64time
>,shape=box,style=filled,fillcolor="white"]; "1" [label=<
BodyList
Bodyelement
>,shape=box,style=filled,fillcolor="white"]; "2" [label=<
Body
Translationlocation
Rotationorientation
BoundingBox3DFloatshape
>,shape=box,style=filled,fillcolor="white"]; "5" [label=<
BoundingBox3DFloat
Posetransformation
FLOAT32width
FLOAT32depth
FLOAT32height
>,shape=box,style=filled,fillcolor="white"]; "6" [label=<
Pose
Translationtranslation
Rotationrotation
>,shape=box,style=filled,fillcolor="white"]; "4" [label=<
Rotation
FLOAT64qw
FLOAT64qx
FLOAT64qy
FLOAT64qz
ASCII-STRINGframe_id
>,shape=box,style=filled,fillcolor="white"]; "3" [label=<
Translation
FLOAT64x
FLOAT64y
FLOAT64z
ASCII-STRINGframe_id
>,shape=box,style=filled,fillcolor="white"]; "10":list -> "11" []; "7" -> "9" []; "7":modality -> "9" []; "7":duration -> "8" []; "1":element -> "2" []; "2":shape -> "5" []; "2":orientation -> "4" []; "2":location -> "3" []; "5":transformation -> "6" []; "6":rotation -> "4" []; "6":translation -> "3" []; .. container:: mess4ge-list .. container:: messages * :ref:`BodyList ` * :ref:`HighlightTarget ` * :ref:`LegsList ` * :ref:`Legs ` * :ref:`Body ` .. container:: clearer clearer: should be made invisible via css .. _message-rst-hri-bodylist: Message BodyList ---------------- .. container:: message-rst-hri-bodylist-multi .. container:: message-rst-hri-bodylist-documentation .. py:class:: rst.hri.BodyList Collection of :py:class:`Body ` instances. Auto-generated. .. py:attribute:: element :type: array of :py:class:`rst.hri.Body` The individual elements of the collection. Constraints regarding the empty collection, sorting, duplicated entries etc. are use case specific. .. container:: message-rst-hri-bodylist-source :download:`Download this file ` .. literalinclude:: //home/jenkins/workspace/rst-manual-0.15-merge-simulator/upstream/RST-0.15.0-Linux/share/rst0.15/proto/stable/rst/hri/BodyList.proto :lines: 12-22 :language: protobuf :emphasize-lines: 9-9 .. _message-rst-hri-highlighttarget: Message HighlightTarget ----------------------- .. container:: message-rst-hri-highlighttarget-multi .. container:: message-rst-hri-highlighttarget-documentation .. py:class:: rst.hri.HighlightTarget Specifies a target that should be highlighted by an intelligent system, e.g. to elicit attention of a human interaction partner. .. codeauthor:: Patrick Holthaus .. py:attribute:: target_id :type: :py:class:`ASCII-STRING` The target that should be highlighted. .. py:attribute:: duration :type: :py:class:`rst.timing.Duration` How long to highlight the target. .. py:attribute:: modality :type: array of :py:class:`rst.hri.HighlightTarget.Modality` A list of modalities to use for highlighting. .. container:: message-rst-hri-highlighttarget-source :download:`Download this file ` .. literalinclude:: //home/jenkins/workspace/rst-manual-0.15-merge-simulator/upstream/RST-0.15.0-Linux/share/rst0.15/proto/stable/rst/hri/HighlightTarget.proto :lines: 15-65 :language: protobuf :emphasize-lines: 39-39,44-44,49-49 .. _message-rst-hri-highlighttarget-modality: Message Modality ---------------- .. container:: message-rst-hri-highlighttarget-modality-multi .. container:: message-rst-hri-highlighttarget-modality-documentation .. py:class:: rst.hri.HighlightTarget.Modality The modality to use. .. py:attribute:: GAZE = 1 Use gaze to refer to the target that should be highlighted. .. py:attribute:: GESTURE = 2 Use gestures to refer to the target, e.g. pointing. .. py:attribute:: AMBIENT_LIGHT = 3 Use (ambient) light at the target, e.g. leds or surrounding lights. .. py:attribute:: SOUND = 4 Use (ambient) sound at the target, e.g. beeps. .. py:attribute:: SPOT_LIGHT = 5 Use a spot(-light) that points to the target. .. container:: message-rst-hri-highlighttarget-modality-source :download:`Download this file ` .. literalinclude:: //home/jenkins/workspace/rst-manual-0.15-merge-simulator/upstream/RST-0.15.0-Linux/share/rst0.15/proto/stable/rst/hri/HighlightTarget.proto :lines: 20-48 :language: protobuf :emphasize-lines: 6-6,11-11,17-17,22-22,27-27 .. _message-rst-hri-legslist: Message LegsList ---------------- .. container:: message-rst-hri-legslist-multi .. container:: message-rst-hri-legslist-documentation .. py:class:: rst.hri.LegsList A collection of . .. codeauthor:: Phillip Luecking .. py:attribute:: list :type: array of :py:class:`rst.hri.Legs` Empty collection of legs is allowed. The order of leg objects is not significant. .. container:: message-rst-hri-legslist-source :download:`Download this file ` .. literalinclude:: //home/jenkins/workspace/rst-manual-0.15-merge-simulator/upstream/RST-0.15.0-Linux/share/rst0.15/proto/stable/rst/hri/LegsList.proto :lines: 14-22 :language: protobuf :emphasize-lines: 7-7 .. _message-rst-hri-legs: Message Legs ------------ .. container:: message-rst-hri-legs-multi .. container:: message-rst-hri-legs-documentation .. py:class:: rst.hri.Legs A representation of a pair of legs (or a single leg). The :py:attr:`pair ` field indicates whether this object has been merged with another object of the same type into a representation of a pair of legs. The values stored in :py:attr:`angle ` and :py:attr:`distance ` are as perceived from the robot. .. codeauthor:: Phillip Luecking .. py:attribute:: angle :type: :py:class:`FLOAT32` **Unit**: radian The angle of the leg(s) as perceived by the robot's sensor. .. py:attribute:: angle_variance :type: :py:class:`FLOAT32` **Unit**: radian The variance of the :py:attr:`angle `. .. py:attribute:: distance :type: :py:class:`FLOAT32` **Unit**: meter The distance between the robot's sensor and the leg(s). .. py:attribute:: distance_variance :type: :py:class:`FLOAT32` **Unit**: meter The variance of the :py:attr:`distance `. .. py:attribute:: pair :type: :py:class:`BOOL` Indicates whether or not this object consists of two merged Legs. If true, merging is no longer possible. .. container:: message-rst-hri-legs-source :download:`Download this file ` .. literalinclude:: //home/jenkins/workspace/rst-manual-0.15-merge-simulator/upstream/RST-0.15.0-Linux/share/rst0.15/proto/stable/rst/hri/Legs.proto :lines: 19-52 :language: protobuf :emphasize-lines: 7-7,13-13,19-19,25-25,32-32 .. _message-rst-hri-body: Message Body ------------ .. container:: message-rst-hri-body-multi .. container:: message-rst-hri-body-documentation .. py:class:: rst.hri.Body Geometric properties of a person's body (e.g. in a person-tracking system). .. codeauthor:: Leon Ziegler @create_collection(BodyList) .. py:attribute:: location :type: :py:class:`rst.geometry.Translation` Location of the person in 3D space. The location describes the average of the two feet positions on the ground. .. py:attribute:: orientation :type: :py:class:`rst.geometry.Rotation` Orientation of the person. The provided rotation should be passed as a relative rotation from the coordinate frame defined by the orientation description. The axes of the corresponding coordinate system are defined as follows: * x axis: points in the direction of the person's walking direction * y axis: points to the person's right side * z axis: points downwards (along the person's body axis) .. py:attribute:: shape :type: :py:class:`rst.geometry.BoundingBox3DFloat` Bounding box around the whole body. This is not necessarily aligned to location and orientation. Mainly used for tracking purposes. .. container:: message-rst-hri-body-source :download:`Download this file ` .. literalinclude:: //home/jenkins/workspace/rst-manual-0.15-merge-simulator/upstream/RST-0.15.0-Linux/share/rst0.15/proto/stable/rst/hri/Body.proto :lines: 18-50 :language: protobuf :emphasize-lines: 9-9,23-23,31-31