Project

General

Profile

0309 » History » Version 21

Pierre Narvor, 2018-03-09 17:42

1 5 Pierre Narvor
h1. 03/09 : PoM/Prism Discussion
2 1 Pierre Narvor
3 11 Pierre Narvor
*Participants :* 
4 3 Pierre Narvor
Simon, Ellon, Quentin, Pierre
5 1 Pierre Narvor
6 11 Pierre Narvor
*Goal of the meeting :* Discuss the PoM/Prism architecture (previously InSitu). Prism is the sub-task of PoM which handle the internal transform tree of a robot (RobotBaseFrame to SensorFrame(s)).
7 5 Pierre Narvor
8 11 Pierre Narvor
*Note :* PoM is divided in two part : Prism which handles the pose of sensors relative to the robot and (name undefined, default = MightyLocalizer) MightyLocalizer which handles the pose of the robot frame relative to the World Frame. The meeting is only about Prism.
9 9 Pierre Narvor
10 21 Pierre Narvor
 
11
 
12
13 12 Pierre Narvor
h2. Features of Prism
14 7 Pierre Narvor
15 12 Pierre Narvor
* *Load and maintain the RobotBaseFrame to SensorFrame(s) tree of the robot up to date :* URDF configuration file for initialization. Is a client of moving sensor mounts (arms, platforms...) to update internal transform tree. No memory. Handles transform uncertainty.
16 1 Pierre Narvor
17 10 Pierre Narvor
* *Sensor pose service :* A sensor acquiring data must ask Prism for a time stamp and a sensor pose(= current transform RobotBaseFrame to SensorFrame + uncertainty). The pose and the time are stored by the sensor node alongside the sensor data (this pose will be of use only with this data. Hence no memory is need in Prism).
18
19
* *Send time stamp to mighty-localizer for saving*
20 6 Pierre Narvor
21 21 Pierre Narvor
 
22 1 Pierre Narvor
23 17 Pierre Narvor
h2. Details
24
25 21 Pierre Narvor
 
26
27 1 Pierre Narvor
h3. Loading and maintaining internal tree
28 14 Pierre Narvor
29 1 Pierre Narvor
* *Internal Tree :* all SensorFrames connected to a single RobotBaseFrame through one or several edges. Two types of edges : fixed or moving.
30
31 21 Pierre Narvor
!Prism.png!
32 14 Pierre Narvor
33 19 Pierre Narvor
* *Initialization :* Internal tree building form URDF file. Default values for moving edges to define ?
34 1 Pierre Narvor
35 19 Pierre Narvor
* *Maintaining the tree :* Prism receives poses form all moving sensor mounts. Movable edges in the internal tree are updated right away (no memory). To define : communication between joints and Prism (identification of joints etc...).
36 1 Pierre Narvor
37 21 Pierre Narvor
 
38
 
39 19 Pierre Narvor
40
h3. Sensor pose service
41
42
Acquired sensor data has be associated with a pose of the sensor and a time stamp.
43
44
* *Pose of the sensor relative to the world :* Divided into two parts
45
46 1 Pierre Narvor
The SensorFrame to RobotBaseFrame transform (furnished by Prism) is measured at the time of the acquisition and will NOT be modified later. Hence, no memory is needed in Prism and the SensorFrame to RobotFrame transform is recorded alongside the data outside of Prism. (the RobotBaseFrame to WorldFrame recorded at the time of acquisition will however be modified later by MightyLocalizer).
47
48 20 Pierre Narvor
* *Content of a data structure :* The data is published in a structure alongside the time stamp and pose at the acquisition, and two FrameId (SensorFrameId and RobotBaseFrameId). 
49
50 1 Pierre Narvor
* *Workflow :*
51
52 20 Pierre Narvor
          1) Data acquisition by sensor
53
          2) Sensor node asks Prism for a time stamp and a pose
54
          3) Sensor node publish a complete data struct
55 1 Pierre Narvor
56 21 Pierre Narvor
 
57
 
58 20 Pierre Narvor
59
h3. Send time stamp to mighty-localizer for saving
60
61
The time stamp at time of acquisition must be saved by MightyLocalizer for the case where a localization DFPC needs the RobotBaseFrame to WorldFrame pose at time of data acquisition. 
62 1 Pierre Narvor
63 21 Pierre Narvor
 
64
 
65
 
66 1 Pierre Narvor
67 21 Pierre Narvor
68
!WorkFlow.png!
69 20 Pierre Narvor
!Prism_meeting_board.jpg!