robotika / osgar

Open Source Garden (Autonomous) Robot
MIT License
13 stars 12 forks source link

CoRo 3x RGBD Pam drone #829

Closed m3d closed 3 years ago

m3d commented 3 years ago

this is older attempt to fly with Kevin's drone ...

m3d commented 3 years ago

Locally I sometimes see

1626206544.348657318, 21.992000000 ERROR /rtabmap/rgbd/rgbd_odometry ros.rtabmap_ros./rtabmap/rgbd/rgbd_odometry: "guess_frame_id" is set, but guess cannot be computed between frames "odom" -> "A100L". Aborting odometry update...
m3d commented 3 years ago

reference docker image ver110pam and sample run in TS2: fa4bfdd6-2a2f-4fa8-8117-f65a2c2f0c90

m3d commented 3 years ago
osgar) md@md-ThinkPad-P50:~/git/osgar/subt/docker$ python -m osgar.logger /data/aws/local/coro_pam-2021-07-13T22.02.08.log 
 k                           name     bytes | count | freq Hz
-------------------------------------------------------------
 0                            sys     92491 |   435 |   1.6Hz
 1       artifact_filter.artf_xyz         0 |     0 |   0.0Hz
 2              reporter.artf_cmd         0 |     0 |   0.0Hz
 3              reporter.artf_all         0 |     0 |   0.0Hz
 4            rosmsg.sim_time_sec        46 |    46 |   0.2Hz
 5               rosmsg.sim_clock       142 |    46 |   0.2Hz
 6                     rosmsg.cmd      5693 |   146 |   0.5Hz
 7                rosmsg.t265_rot         0 |     0 |   0.0Hz
 8                   rosmsg.debug         0 |     0 |   0.0Hz
 9                   rosmsg.radio      4668 |   132 |   0.5Hz
10            rosmsg.base_station         0 |     0 |   0.0Hz
11              rosmsg.joint_name         0 |     0 |   0.0Hz
12          rosmsg.joint_position         0 |     0 |   0.0Hz
13          rosmsg.joint_velocity         0 |     0 |   0.0Hz
14            rosmsg.joint_effort         0 |     0 |   0.0Hz
15                transmitter.raw         0 |     0 |   0.0Hz
16           transmitter.response         0 |     0 |   0.0Hz
17            transmitter.timeout         0 |     0 |   0.0Hz
18         drone.desired_speed_3d    142868 |  2524 |   9.4Hz
19                   receiver.raw       178 |   178 |   0.7Hz
20              receiver.response         0 |     0 |   0.0Hz
21               receiver.timeout         0 |     0 |   0.0Hz
22                  fromrospy.acc     62236 | 10372 |  38.6Hz
23             fromrospy.top_scan     22520 |  2252 |   8.4Hz
24          fromrospy.bottom_scan     22500 |  2250 |   8.4Hz
25               fromrospy.pose3d    139920 |  2120 |   7.9Hz
26        fromrospy.battery_state       414 |    46 |   0.2Hz
27                fromrospy.score       265 |   265 |   1.0Hz
28         fromrospy.gas_detected         1 |     1 |   0.0Hz
29           fromrospy.rgbd_front 656031998 |  1283 |   4.8Hz
30            fromrospy.rgbd_left         0 |     0 |   0.0Hz
31           fromrospy.rgbd_right         0 |     0 |   0.0Hz
32         fromrospy.air_pressure      7623 |   847 |   3.2Hz
33              fromrospy.scan360    247795 |   454 |   1.7Hz
34              fromrospy.octomap         0 |     0 |   0.0Hz
35           fromrospy.robot_name         7 |     1 |   0.0Hz
36              octomap.waypoints         0 |     0 |   0.0Hz
37                octomap.dropped         0 |     0 |   0.0Hz
38              app.desired_speed      3286 |   453 |   1.7Hz
39                     app.pose2d     21044 |  2120 |   7.9Hz
40                     app.stdout       549 |     9 |   0.0Hz
41            app.desired_z_speed         1 |     1 |   0.0Hz
42                    app.flipped         0 |     0 |   0.0Hz
43                 logimage.image  27610697 |   641 |   2.4Hz
44                 logimage.depth 145216693 |   641 |   2.4Hz
45            logimage_left.image         0 |     0 |   0.0Hz
46            logimage_left.depth         0 |     0 |   0.0Hz
47    gas_detector.localized_artf         0 |     0 |   0.0Hz
48                    radio.radio      3650 |   133 |   0.5Hz
49                 radio.artf_xyz         0 |     0 |   0.0Hz
50               radio.breadcrumb         0 |     0 |   0.0Hz
51                radio.robot_xyz      1591 |    43 |   0.2Hz
52               radio.trace_info       500 |    43 |   0.2Hz
53              radio.robot_trace         0 |     0 |   0.0Hz
54               marsupial.detach         0 |     0 |   0.0Hz
55                mtm.robot_trace         0 |     0 |   0.0Hz
56                 mtm.trace_info       500 |    43 |   0.2Hz
57           logimage_right.image         0 |     0 |   0.0Hz
58           logimage_right.depth         0 |     0 |   0.0Hz
59   detector_left.localized_artf         0 |     0 |   0.0Hz
60          detector_left.dropped         1 |     1 |   0.0Hz
61       detector_left.debug_rgbd         0 |     0 |   0.0Hz
62           detector_left.stdout        11 |     1 |   0.0Hz
63     detector_left.debug_result         0 |     0 |   0.0Hz
64  detector_left.debug_cv_result         0 |     0 |   0.0Hz
65        detector.localized_artf         0 |     0 |   0.0Hz
66               detector.dropped        98 |    98 |   0.4Hz
67            detector.debug_rgbd         0 |     0 |   0.0Hz
68                detector.stdout        42 |     2 |   0.0Hz
69          detector.debug_result      2779 |    26 |   0.1Hz
70       detector.debug_cv_result        26 |    26 |   0.1Hz
71  detector_right.localized_artf         0 |     0 |   0.0Hz
72         detector_right.dropped         1 |     1 |   0.0Hz
73      detector_right.debug_rgbd         0 |     0 |   0.0Hz
74          detector_right.stdout        11 |     1 |   0.0Hz
75    detector_right.debug_result         0 |     0 |   0.0Hz
76 detector_right.debug_cv_result         0 |     0 |   0.0Hz

... for some reason left and right RGBD images are not available ... but that is maybe expected now? I would also turn off RGBD logging of front camera.

m3d commented 3 years ago

My guess is that the problem is caused by false detection or self-detection Screenshot from 2021-07-13 22-37-13 :

m3d commented 3 years ago

at the very beginning each RGBD camera generates one fake point: Screenshot from 2021-07-13 22-42-09

m3d commented 3 years ago

[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 100, 101, 100, 100, 99, 98, 98, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6301, 6236, 6176, 6116, 6063, 5930, 5826, 5898, 5787, 5645, 5623, 5466, 5490, 5483, 5642, 5676, 5778, 5810, 5847, 5914, 5947, 5984, 6009, 6057, 6102, 6151, 6193, 6236, 6310, 6365, 104, 104, 104, 104, 105, 105, 104, 104, 7365, 7406, 7424, 7438, 7465, 7410, 6490, 6430, 6327, 6347, 6375, 6417, 6445, 6488, 6537, 6577, 6649, 6713, 6770, 6834, 6878, 6918, 6972, 7042, 7145, 7177, 7292, 7376, 7470, 7568, 7669, 7782, 7872, 7994, 0, 0, 0, 0, 7793, 7639, 7543, 7448, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6174, 6129, 6079, 6037, 5985, 5955, 5908, 6136, 7651, 5937, 5912, 5763, 5739, 5722, 5721, 5677, 5662, 5648, 5640, 100, 99, 99, 100, 100, 101, 102, 5585, 5591, 5594, 5600, 5610, 5615, 5622, 5635, 5663, 5682, 5637, 5718, 5722, 5755, 5781, 5709, 5836, 5856, 5890, 5941, 5973, 6005, 6580, 6310, 6226, 6190, 6242, 6286, 6365, 6418, 6471, 6581, 6641, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

... i.e. the short readings are at 10cm and there are several of them

m3d commented 3 years ago

p.s. I just realized that I did not recompile the C-code ... sorry :(

m3d commented 3 years ago

p.s.2 now it works as expected (enteres tunnel in TS2)

m3d commented 3 years ago

second attempt on CloudSim 456aaa84-34b8-44e2-aa30-e2224c672d09 - locally it scored, but on CloudSim it did not

m3d commented 3 years ago

CloudSim Pam drone did not score because it did not take off ...

cloudsim-pam2 ... it was not quite clear from this picture.

m3d commented 3 years ago

CloudSim data:

 k                           name     bytes | count | freq Hz
-------------------------------------------------------------
 0                            sys     74594 |   147 |   0.2Hz
 1                   receiver.raw      1376 |  1376 |   1.8Hz
 2              receiver.response         0 |     0 |   0.0Hz
 3               receiver.timeout         0 |     0 |   0.0Hz
 4         drone.desired_speed_3d    626575 | 12519 |  16.4Hz
 5                transmitter.raw         0 |     0 |   0.0Hz
 6           transmitter.response         0 |     0 |   0.0Hz
 7            transmitter.timeout         0 |     0 |   0.0Hz
 8                  fromrospy.acc    353659 | 57140 |  74.9Hz
 9             fromrospy.top_scan    114490 | 11449 |  15.0Hz
10          fromrospy.bottom_scan    114470 | 11447 |  15.0Hz
11               fromrospy.pose3d    755106 | 11441 |  15.0Hz
12        fromrospy.battery_state      2079 |   231 |   0.3Hz
13                fromrospy.score       760 |   760 |   1.0Hz
14         fromrospy.gas_detected         1 |     1 |   0.0Hz
15           fromrospy.rgbd_front      6917 |  6917 |   9.1Hz
16            fromrospy.rgbd_left         0 |     0 |   0.0Hz
17           fromrospy.rgbd_right         0 |     0 |   0.0Hz
18         fromrospy.air_pressure     41175 |  4575 |   6.0Hz
19              fromrospy.scan360    859770 |  1398 |   1.8Hz
20              fromrospy.octomap         0 |     0 |   0.0Hz
21           fromrospy.robot_name         7 |     1 |   0.0Hz
22              app.desired_speed      6245 |  1105 |   1.4Hz
23                     app.pose2d     91528 | 11441 |  15.0Hz
24                     app.stdout      1594 |    20 |   0.0Hz
25            app.desired_z_speed      1633 |   185 |   0.2Hz
26                    app.flipped         0 |     0 |   0.0Hz
27              reporter.artf_cmd         0 |     0 |   0.0Hz
28              reporter.artf_all         0 |     0 |   0.0Hz
29       artifact_filter.artf_xyz         0 |     0 |   0.0Hz
30    gas_detector.localized_artf         0 |     0 |   0.0Hz
31                    radio.radio     21143 |   689 |   0.9Hz
32                 radio.artf_xyz         0 |     0 |   0.0Hz
33               radio.breadcrumb         0 |     0 |   0.0Hz
34                radio.robot_xyz      8792 |   228 |   0.3Hz
35               radio.trace_info      6194 |   456 |   0.6Hz
36              radio.robot_trace        78 |     2 |   0.0Hz
37               marsupial.detach         0 |     0 |   0.0Hz
38            rosmsg.sim_time_sec       591 |   231 |   0.3Hz
39               rosmsg.sim_clock      1057 |   231 |   0.3Hz
40                     rosmsg.cmd     29868 |   713 |   0.9Hz
41                rosmsg.t265_rot         0 |     0 |   0.0Hz
42                   rosmsg.debug         0 |     0 |   0.0Hz
43                   rosmsg.radio     41353 |  1144 |   1.5Hz
44            rosmsg.base_station         0 |     0 |   0.0Hz
45              rosmsg.joint_name         0 |     0 |   0.0Hz
46          rosmsg.joint_position         0 |     0 |   0.0Hz
47          rosmsg.joint_velocity         0 |     0 |   0.0Hz
48            rosmsg.joint_effort         0 |     0 |   0.0Hz
49                mtm.robot_trace        39 |     1 |   0.0Hz
50                 mtm.trace_info      3097 |   228 |   0.3Hz
51              octomap.waypoints         0 |     0 |   0.0Hz
52                octomap.dropped         0 |     0 |   0.0Hz
53           logimage_right.image         0 |     0 |   0.0Hz
54           logimage_right.depth         0 |     0 |   0.0Hz
55                 logimage.image 217499112 |  3459 |   4.5Hz
56                 logimage.depth 847681438 |  3459 |   4.5Hz
57            logimage_left.image         0 |     0 |   0.0Hz
58            logimage_left.depth         0 |     0 |   0.0Hz
59        detector.localized_artf         0 |     0 |   0.0Hz
60               detector.dropped      6844 |  6844 |   9.0Hz
61            detector.debug_rgbd         0 |     0 |   0.0Hz
62                detector.stdout        42 |     2 |   0.0Hz
63          detector.debug_result   1308671 |  6843 |   9.0Hz
64       detector.debug_cv_result      6843 |  6843 |   9.0Hz
65   detector_left.localized_artf         0 |     0 |   0.0Hz
66          detector_left.dropped         1 |     1 |   0.0Hz
67       detector_left.debug_rgbd         0 |     0 |   0.0Hz
68           detector_left.stdout        11 |     1 |   0.0Hz
69     detector_left.debug_result         0 |     0 |   0.0Hz
70  detector_left.debug_cv_result         0 |     0 |   0.0Hz
71  detector_right.localized_artf         0 |     0 |   0.0Hz
72         detector_right.dropped         1 |     1 |   0.0Hz
73      detector_right.debug_rgbd         0 |     0 |   0.0Hz
74          detector_right.stdout        11 |     1 |   0.0Hz
75    detector_right.debug_result         0 |     0 |   0.0Hz
76 detector_right.debug_cv_result         0 |     0 |   0.0Hz

Total time 0:12:43.010140

ROS output errors:

155.396000000 ERROR /A100L/local_map [/osgar-ws/src/osgar/subt/ros/proxy/traversability.cc:232(optional<tf::StampedTransform> osgar::Traversability::GetTransform)] [topics: /rosout, /A100L/local_map/output/map, /A100L/local_map/output/scan] Lookup would require extrapolation into the past.  Requested time 155.068000000 but the earliest data is at time 155.152000000, when looking up transform from frame [A100L/base_link/rgbd_front_optical] to frame [odom]
m3d commented 3 years ago

Note, that from 4 runs (same docker image, same TS2 world) drone first time did not take off, second scored 2 points, third stopped 1m(?) above the ground in starting area and finally with longer return time (A200L instead of A100L) it scored 4 points. Analysis is still WIP.

m3d commented 3 years ago

OK, I think that this picture explains the 3rd run, when the drone was 1m above the ground: coro-3rd-run

(i.e. it failed to enter the tunnel and when it did it returned on original trace - enter should be fixed in following PR) @jisa - I would vote for merge, what do you think?

m3d commented 3 years ago

I am going to merge and create new PR as discussed yesterday on call and in e-mail ...