1
00:00:00,900 --> 00:00:06,450
In this lecture, we will learn about visualization tools we can use with ROS to the tools and features

2
00:00:06,450 --> 00:00:09,480
I'm going to show are also available in Ross one.

3
00:00:11,160 --> 00:00:16,170
The first tool we will use is called Orvis, which is a3d visualization tool to run it.

4
00:00:16,170 --> 00:00:20,400
Let's open a new terminal and run our VIZ two.

5
00:00:22,110 --> 00:00:26,400
It opens and we can see a series of panels, so go ahead and maximize the window.

6
00:00:26,640 --> 00:00:31,440
This main dark colored section is actually a3d view window.

7
00:00:31,440 --> 00:00:37,680
If we had any sensor, data, localization data or robot transform data, we would be able to see it

8
00:00:37,680 --> 00:00:38,280
here.

9
00:00:38,460 --> 00:00:44,190
One of the things I like to use it in the past was for visualizing three D LiDAR data, which is a point

10
00:00:44,190 --> 00:00:47,970
cloud showing the distance surfaces are from the lidar.

11
00:00:48,210 --> 00:00:53,720
The left pane is where we can add and manage our sensors and other visualization parameters.

12
00:00:53,730 --> 00:00:54,900
So click on the add button.

13
00:00:54,900 --> 00:01:00,990
We'll open up this dialog window where we can either add a sensor by type or a corresponding topic name.

14
00:01:02,070 --> 00:01:06,630
Now, I know this doesn't seem like much now, but we will utilize this tool more once we start working

15
00:01:06,630 --> 00:01:12,330
with the simulation and have more 3D data to process within this viewport window.

16
00:01:12,660 --> 00:01:16,470
So I'll go ahead and close this and I will close without saving.

17
00:01:17,250 --> 00:01:23,340
And the next visualization tool we're going to go over is called our q T, where our stands for ROS

18
00:01:23,340 --> 00:01:24,120
and Q.

19
00:01:24,120 --> 00:01:27,210
RT is a popular user interface framework.

20
00:01:27,210 --> 00:01:32,340
So in essence, this tool is meant for helping users interact and visualize ROS data.

21
00:01:32,910 --> 00:01:38,580
So it opens up and it's just a blank window and it just says RCT is a gooey framework that is able to

22
00:01:38,580 --> 00:01:39,600
load various plug ins.

23
00:01:39,600 --> 00:01:45,360
So in order to use this tool to the best, you would go into the plugins tab and here you'll have various

24
00:01:45,360 --> 00:01:51,140
plug ins which you can utilize depending on what functionality you're looking for to interact with your

25
00:01:51,140 --> 00:01:53,250
RAS systems to help showcase the features.

26
00:01:53,250 --> 00:01:58,350
In this tool, I will use a back file to playback sensor data from a robot, so I'll go ahead and open

27
00:01:58,350 --> 00:02:03,930
up our terminal, put a new terminal tab This is the same file from the previous lecture, so if you

28
00:02:03,930 --> 00:02:06,360
have it downloaded already, no need to redownload it.

29
00:02:06,720 --> 00:02:09,090
So I'll go ahead into my downloads folder.

30
00:02:09,870 --> 00:02:16,260
So we see the back file, so I'll just go ahead and do Ros to bag play dash L to loop it and marine

31
00:02:16,260 --> 00:02:17,940
surface vehicle bay.

32
00:02:18,510 --> 00:02:18,870
All right.

33
00:02:18,870 --> 00:02:19,590
The bag is playing.

34
00:02:19,590 --> 00:02:24,210
Now, if we go back to our RCT window, I can go ahead and open up some plug in.

35
00:02:24,210 --> 00:02:28,950
So the first plug in we're going to go over is the topic monitor plug in.

36
00:02:31,940 --> 00:02:34,160
So we see a series of topics.

37
00:02:34,160 --> 00:02:39,500
If I want to see the data coming over a topic, I can click on the dropdown arrow and then select the

38
00:02:39,500 --> 00:02:42,320
checkbox to start subscribing to the data coming in.

39
00:02:42,350 --> 00:02:47,510
So here we can see things like the latitude and longitude coming in the same way we would do it from

40
00:02:47,510 --> 00:02:52,910
the terminal, but now in this user interface and we can do this for multiple topics at the same time.

41
00:02:56,690 --> 00:03:02,660
So here now we're subscribed to the fixed topic as well as the IMU data, and we can see it updating

42
00:03:02,660 --> 00:03:03,170
like so on.

43
00:03:03,170 --> 00:03:05,810
If you ever want to just stop subscribing, you can uncheck it.

44
00:03:05,810 --> 00:03:08,480
And now you're no longer subscribed to that information.

45
00:03:08,960 --> 00:03:09,910
It says not monitored.

46
00:03:09,920 --> 00:03:11,630
So go ahead and collapse that.

47
00:03:11,630 --> 00:03:17,300
So as you can see, this plugin is an interactive way of doing ROS to topic lists and ros Su topic echo

48
00:03:17,300 --> 00:03:20,630
through a user interface in the actions Project Walkthrough video.

49
00:03:20,630 --> 00:03:26,570
You saw me utilize this RCT tool to create a publisher in order to publish my robots coordinates.

50
00:03:26,570 --> 00:03:30,050
I did that with the message publisher plugin.

51
00:03:30,720 --> 00:03:35,910
So whenever you open multiple plug ins, it'll open in a separate window and you can feel free to rearrange

52
00:03:35,910 --> 00:03:39,390
the windows to match your configuration that you want.

53
00:03:40,660 --> 00:03:42,660
I'll go ahead and put this back down here.

54
00:03:46,110 --> 00:03:52,290
And so as you saw me use it in the previous lectures, you could create a topic name such as test topic.

55
00:03:53,520 --> 00:03:55,190
Give it a particular message type.

56
00:03:55,200 --> 00:03:56,420
So I'll just grade float.

57
00:03:56,430 --> 00:03:58,200
Add it to our list of existing topics.

58
00:03:58,200 --> 00:04:00,300
So these ones were here from previous lectures.

59
00:04:00,450 --> 00:04:03,030
If you want to remove them, you can just hit the minus sign.

60
00:04:04,730 --> 00:04:07,740
And then if I wanted to echo this topic right now it's 0.0.

61
00:04:07,740 --> 00:04:09,670
Let's change to something like 1.5.

62
00:04:09,680 --> 00:04:13,190
And then if I want to publish this, I can go ahead and hit it like that.

63
00:04:13,190 --> 00:04:18,920
We see it up here in our topic monitor, and if I go ahead and subscribe to it, we see it says 1.5

64
00:04:18,920 --> 00:04:24,440
and I can publish different values like 3.0 and we see it changes in the topic.

65
00:04:24,440 --> 00:04:29,720
Monitor Again, this all corresponds with our standard RAR two commands that we can use in terminal.

66
00:04:29,720 --> 00:04:34,100
So the same ROS two topic echo slash test topic.

67
00:04:35,740 --> 00:04:37,460
And we see that 3.0 value.

68
00:04:37,510 --> 00:04:39,940
So again, I can change it one more time just to show.

69
00:04:40,780 --> 00:04:41,110
All right.

70
00:04:41,110 --> 00:04:45,880
4.5 and we get the 4.5 when echoing the data in terminal.

71
00:04:49,230 --> 00:04:49,530
All right.

72
00:04:49,530 --> 00:04:54,450
I'll go ahead and stop publishing that and I'll go ahead and close this plugin for right now.

73
00:04:55,350 --> 00:05:00,420
Another useful feature for checking interactions between nodes is the Node graph plugin.

74
00:05:02,350 --> 00:05:02,890
All right.

75
00:05:02,890 --> 00:05:07,390
So I'll go ahead and slide this over and we can zoom in using the scroll wheel.

76
00:05:07,390 --> 00:05:09,850
And right now we only are showing nodes.

77
00:05:10,850 --> 00:05:17,270
So we see the ROS bag to player node, but I can actually go ahead and do notes topic and I'll just

78
00:05:17,270 --> 00:05:18,470
choose the active ones.

79
00:05:18,470 --> 00:05:24,560
And here we see the Rosberg player is publishing to fix, and that's because here in our topic Monitor

80
00:05:24,560 --> 00:05:25,580
we're subscribing to it.

81
00:05:25,850 --> 00:05:28,430
So I can go ahead and try this out in terminal one more time.

82
00:05:35,160 --> 00:05:41,490
So now I'm echoing the IMU data, and if I refresh the node graph, we now see node graph where the

83
00:05:41,490 --> 00:05:47,430
node raw player is publishing to IMU, IMU data topic, which is being subscribed to and it's currently

84
00:05:47,430 --> 00:05:48,090
active.

85
00:05:49,200 --> 00:05:49,470
All right.

86
00:05:49,470 --> 00:05:51,840
So I'll go ahead and stop that echoing.

87
00:05:52,050 --> 00:05:53,100
Close this terminal.

88
00:05:53,580 --> 00:05:56,070
And again, if I refresh it, it'll update as such.

89
00:05:56,490 --> 00:06:01,920
So besides the node graph, there's actually a topic graph in which we can actually visualize information

90
00:06:01,920 --> 00:06:03,570
as it's coming in on a plot.

91
00:06:03,720 --> 00:06:05,430
So I'll go ahead and open that.

92
00:06:06,770 --> 00:06:09,860
Go ahead and unsubscribe from my fixed topic right now.

93
00:06:10,460 --> 00:06:17,810
Give a little bit more room to the plot, and the topic I'm interested in will be the IMU data and we'll

94
00:06:17,810 --> 00:06:21,350
take a look at the linear acceleration.

95
00:06:23,690 --> 00:06:29,780
So when you utilize a valid topic, name or subtopic type in which it can graph, you'll see the plus

96
00:06:29,780 --> 00:06:31,600
arrow be available to click.

97
00:06:31,610 --> 00:06:35,840
So here it says three plausible fields in IMU data, linear acceleration, and that's for the x, Y

98
00:06:35,840 --> 00:06:40,910
and Z, which we will go ahead and see if I go ahead and hit the plus and we see it plotting in real

99
00:06:40,910 --> 00:06:41,210
time.

100
00:06:41,210 --> 00:06:44,990
So naturally we see the Z is a lot higher because of the way the IMU is mounted.

101
00:06:44,990 --> 00:06:51,110
It's getting that 9.8 meters a second squared of acceleration from gravity.

102
00:06:51,320 --> 00:06:52,790
And so right now it's auto scrolling.

103
00:06:52,790 --> 00:06:54,130
You can always turn that off.

104
00:06:54,140 --> 00:06:58,850
And once we reach the end of the bag file and it loops, you'll actually notice the graph stops producing

105
00:06:58,850 --> 00:07:02,840
and you just go ahead and clear the plot and it'll go ahead and restart from the beginning.

106
00:07:02,840 --> 00:07:07,670
That's only because we technically went back in time as part of the bag file looping.

107
00:07:08,210 --> 00:07:12,830
If you ever want to stop this, you just go ahead and hit the minus sign and remove the particular topics

108
00:07:12,830 --> 00:07:14,780
you want to stop graphing or all of them.

109
00:07:15,410 --> 00:07:19,910
And last but not least, one of the greatest plug ins of interest that my students like to use is heading

110
00:07:19,910 --> 00:07:23,090
over to the visualization and the image view.

111
00:07:23,090 --> 00:07:23,360
All right.

112
00:07:23,360 --> 00:07:25,220
So if I go ahead and expand this a bit.

113
00:07:26,200 --> 00:07:28,480
I'll actually go ahead and close our topic monitor for right now.

114
00:07:28,720 --> 00:07:31,080
We are greeted with this gradient screen.

115
00:07:31,090 --> 00:07:33,490
This is where the images will show based off the topic we select.

116
00:07:33,490 --> 00:07:38,350
So if we hit the refresh button, we can actually see a list of available topics which has image streams

117
00:07:38,350 --> 00:07:38,980
available to us.

118
00:07:38,980 --> 00:07:43,480
So in this case we have a USB camera with compressed images going through.

119
00:07:43,480 --> 00:07:48,220
So if I go ahead and click on that, we can actually see the front camera of this autonomous surface

120
00:07:48,220 --> 00:07:51,850
vehicle that was being used in this bag file.

121
00:07:53,650 --> 00:07:54,040
All right.

122
00:07:54,040 --> 00:07:56,740
I hope that was a good introduction to the RCT tool.

123
00:07:56,860 --> 00:08:01,510
Feel free to check out the plug ins and see how they can be helpful to interact with your system.

124
00:08:01,990 --> 00:08:06,970
Basically, whenever you want to visualize three D data or localization information about a robot,

125
00:08:06,970 --> 00:08:09,210
you would most likely be using RVs.

126
00:08:09,220 --> 00:08:14,410
While our TX acts like a dashboard to help you view and interact with your Ross data.

127
00:08:15,140 --> 00:08:17,810
With that, let's get to working on simulations.
