Ground-based rescue robot simulation with 4 operating modes and test scenarios
Jingyi Jia 117463e0e6 fix code structure. add comments | 3 years ago | |
---|---|---|
Hector_v2 | 3 years ago | |
TestResult | 3 years ago | |
Thesis_LaTeX | 3 years ago | |
.DS_Store | 3 years ago | |
README.md | 3 years ago | |
Thesis.md | 3 years ago |
Ground-based rescue robot simulation with 4 operating modes and test scenarios
In theory, you can run the project directly by downloading and setting up SteamVR Input.
For similar pop-up alerts please click:
Set SteamVR bindings under Window>SteamVR Input>Open binding UI
The project uses the NavMesh to allow it to navigate the Scene. Please make sure there is a corresponding Navmesh generated folder in the Scene folder, if the autowalk is not available after running, please re-bake the scene under Window>AI>Navigation
.
The following scenarios need to be set: Simulation, RemoteTest and UITest.
see TestManagement below
The user can control the robot directly by operating the handle
The environment is designed to resemble a real laboratory environment as closely as possible, and is operated by holding the joystick or clicking on buttons with the virtual hand.
The part that involves virtual joystick movement and button effects uses an open source github project VRtwix.
In this mode the user can pick up the tools of operation manually: for example the remote control. Alternatively, the target point can be set directly from the right hand. The robot will automatically run to the set target point.
In this mode the user must use the rays emitted by the handle to manipulate the robot. By clicking on the direction button, the user can control the direction of movement of the robot. In addition to this, the user can also turn on the follow function, in which case the robot will always follow the user's position in the virtual world.
In the test scenario, the user is asked to find as many sufferers as possible within a limited period of time. The test is terminated when the time runs out or when all victims have been found. Throughout the test, the robot's performance, including the total distance travelled, the average speed travelled and the number of collisions, is recorded. In addition to this, the rescue of victims, for example if they are already in view but ignored by the user, is also recorded.
Each object in the scene that will be used for collision detection comes with a suitable collision body.
To simulate the process of a robot using a LiDAR to detect the real environment and synchronise it to Unity, a sphere collision body was set up on the robot.
The order of the tests depends on Latin-Square with size =4.
The TestID (sequential number of this participant) must be set before testing, as well as the path to store the .csv test data.
The .csv file should be closed during the test.
If you want to stop the current test immediately, change the value of Total Time
. When the value of Total Time
is 0, the test will automatically end and the test data will be saved.