====== Avatar DARWIN Tutorial ======
**Author:** Ian Schneweis Email: Schnewei@unlv.nevada.edu
\\
**Date:** Last modified on <06/22/23>
\\
**Keywords:** Tutorial, how to, step-by-step, Avatar, Virtual Reality,
\\
{{0b2a7cad-0499-405d-92a4-1a7586c153ac.jpeg }}
\\
\\
\\
\\
Avatar DARWIN is a platform for testing telepresence which uses a Virtual Reality (VR) set with this DARWIN robot to allow the wearer of the VR set to move the robot as if they were in its place. This guide will show how to plug in and set up Avatar DARWIN for VR control. This tutorial will teach you step by step how to properly plug in DARWIN to be as safe as possible. Then what codes are needed for setting DARWIN’s program up for VR and then how to use the VR Unity Scene. DARWIN is a very important platform for testing out changes regarding VR before they are added to Avatar HUBO.
\\
\\
==== Avatar DARWIN Videos ====
[[https://youtube.com/playlist?list=PLH7HioVzhTbBYceosKelcR9HIH-zh9vGT]]
\\
===== Motivation and Audience =====
This tutorial's motivation is to teach users how to properly turn on and operate Avatar DARWIN. Readers of this tutorial assumes the reader has the following background and interests:
* Know how to use Unity
\\
* Have a basic knowledge of ROS
\\
* Perhaps additional background needed may include using VR equipment
\\
\\
The rest of this tutorial is presented as follows:
* [[avatar_darwin_tutorial#partsListAndSources|Parts List and Sources]]
* [[avatar_darwin_tutorial#Avatar DARWIN Setup|Avatar DARWIN Setup]]
* [[avatar_darwin_tutorial#Terminal Commands|Terminal Commands]]
* [[avatar_darwin_tutorial#Unity Setup|Unity Setup]]
* [[avatar_darwin_tutorial#Shut Down|Shut Down]]
* [[avatar_darwin_tutorial#Debug Section|Debug Section]]
* Final Words
==== Parts List and Sources ====
US-based vendors to obtain material to complete this tutorial include .
\\
\\
To complete this tutorial, you'll need the following items
\\
Here is the [[https://docs.google.com/spreadsheets/d/1BU_-SE7pSdF4kEQ3XFfUyF6qX3GNEQIleZchchNhkdU/edit?usp=sharing | list as a Google XLS document]]
\\
Here is the {{:avatar_darwin_materials_-_sheet1.pdf| list as a PDF file}}
\\
==== Avatar DARWIN Setup ====
This section gives step-by-step instructions along with photos to plug in and turn on DARWIN
\\
\\
**Step 1**
\\ Plug in a USB extension port to the side of DARWIN (circled in red).
\\ (*Make sure to use the 90° degree connector so DARWIN doesn’t accidentally knock it out!)
\\
{{37ad4a09-ee79-44cd-9ca1-103a8e6996dd.jpeg}}
\\
\\
**Step 2**
\\ Plug in a keyboard, a mouse and DARWIN’s Camera.
{{c4e1b779-03d7-43d6-93d1-ae292dcf81f4.jpeg}}
\\ DARWIN’s camera (make sure you have a micro usb to usb connector)
\\
\\
**Step 3**
\\ Plug in the HDMI connector from the Monitor to DARWIN (circled in red).
\\
\\ (*Make sure to use the 90° degree connector so DARWIN doesn’t accidentally knock it out!)
{{c53292c9-ffd7-4946-83d8-696c4d21eeec.jpeg}}
\\
\\
**Step 4**
\\ Plug in the ethernet Cable (circled in red).
{{853d2ef9-4dfd-4580-ba9c-131c8006a576.jpeg}}
\\ Make sure the Ethernet cable is plugged into the server or ROSbridge will not connect!(Circled in red).
{{1ed6dec6-0664-4e88-aa45-70c98492ba6e.jpeg}}
\\
\\
**Step 5**
\\ Plug in the 5V-4A barrel power cord to the computer on DARWIN's side NEVER PLUG IN THE 12V-4A CORD OR IT WILL **FRY THE COMPUTER!** (Circled in red).
{{e67b2812-b8b0-4611-a57b-d4756d9f153d.jpeg}}
\\
\\
**Step 6**
\\ Plug in the 12V-5A barrel power cord to the controller on DARWIN's back (circled in red).
{{3d81c3dd-cad0-412c-97a3-92469c124bae.jpeg}}
{{a5fa7ea6-a589-4f4d-b4db-4925ce1554e1.jpeg}}
\\
\\
**Step 7**
\\ Turn on the controller by flicking the switch on DARWIN's Back.
\\
\\
==== Terminal Commands ====
\\
Once DARWIN is turned on, turn on your monitor and wait for the computer to boot up. Once it is finished, open 4 terminals, In all 4 terminals type-
\\
----
----
\\
The terminal will ask for a password which is (dasl), once that is done for all 4 terminals enter in-
\\
----
----
\\
Once that is done create a 5th terminal, enter in-
\\
----
----
\\
A message will appear looking for the Server address of Darwin; it should be towards the top of the message on the left. (Circled in red)
{{33887d05-758a-4b79-84b0-484cde4eb6a0.jpeg}}
The last three digits are the ones to look out for as they are the most likely to change depending on where the robot is. With the address in mind you can navigate to catkin_ws>src>file_server>launch>ros_sharp_communication.launch look for address value = and enter the server number form ifconfig (circled in red)
{{84fe747c-701c-455c-baf3-d08992033be2.jpeg}}
\\
Once that is done launch DARWIN’s server in the first terminal
\\
----
----
\\
Once the server is launched go to the second terminal and enter
\\
----
----
\\
Then in the same terminal type
\\
----
----
\\
This command will make Darwin's arms move into initial position, make sure to hold them to avoid them hitting or snagging on anything, If there is an error hit CTRL C and try again then in the third terminal type.
\\
----
----
\\
This will open DARWIN’s GUI which will be used to give control over to the unity scene, it should look like this.
{{cb70c4a9-e296-4619-b170-bb959c52df24.jpeg}}
Then in the fourth terminal enter
\\
----
----
This will send image data to unity
\\
==== Unity Setup ====
This section gives step-by-step instructions along with photos to setup the Unity Scene and VR for DARWIN.
\\
\\
**Step 1**
\\ Plug in the VR set to the the computer running Unity there is a USB and Display port. Make sure to plug them into the Graphics card near the bottom of the computer it wont work properly! (red to red, blue to blue)
{{5da05a0b-f152-4441-9a33-4225439a3464.jpeg}}
{{66d8692b-55ca-4ce2-9392-bff45bc365d8.jpeg}}
\\ Turn on the VR controllers the power button is circled in red
{{9eb68a0b-d325-4fca-b33b-8da1241e3688.jpeg}}
\\ Make sure Steam VR is running and the VR set and controllers are connected.
\\
**Step 2**
\\ Open in Unity Hub **__DarwinVR 3.0 - Final (The Best + URDF)__**
\\
**Step 3**
\\ After it is loaded go to Realsenseplane then expand it you should see LeftPlane and RightPlane (circled in red)
{{d560a9fe-a575-4fe2-b0fd-53d383a941c3.jpeg}}
\\
\\ in Rosconnector put DARWIN’s server URL in both LeftPlane and RightPlane’s Ros Bridge Server Url (circled in red)
{{efad4441-f924-4ac6-9e98-bd5ccee5bd31.jpeg}}
{{d8658869-1b62-4a59-98f3-d6ac9d12d988.jpeg}}
\\
**Step 4**
\\ Go to darwinOP_ad_mod expand it and find Arms (circled in red)
{{05777eb1-f21b-4c16-88bb-9f038c4887d5.jpeg}}
\\
**Step 5**
\\ Once the unity scene is set up go to DARWIN's GUI we set up before and click direct_control_module this will transfer control over to the VR set user. (circled in red)
{{4627dc80-99fe-4749-99f0-69ff73726659.jpeg}}
\\
**Step 6**
\\ Once you are done click on none and wait for it to stop moving(circled in red)
{{7918348f-75f3-414c-8768-2f8090b92e5e.jpeg}}
\\
\\ After it stops click Robot init Pose to return darwin to his initial pose (circled in red)
{{6b06d3c2-d553-47c2-bcf2-f8620f911492.jpeg}}
\\
\\ then stop the unity scene.
==== Shut Down ====
This section gives step-by-step instructions along with photos to fully and properly shut down DARWIN.
\\
\\
**Step 1**
\\ To fully shut down DARWIN properly close out of the GUI and for every terminal hit CTRL C (the 4th terminal might require you to hit it a few times) and after the program stops type in exit twice to fully close the terminal repeat this for all the terminals ( 3 should already be exited out once you close the GUI so just type in exit twice)
\\
**Step 2**
\\ After that go to the right hand corner and shut down the computer wait for the blinking lights in DARWIN’s chest to stop
\\
**Step 3**
\\ Turn off the controller on DARWIN’s back and you are done
\\
==== Debug Section ====
==== Final Words ====
Speculating future work derived from this tutorial, includes testing Telepresence and Avatar Programs. In the big picture, the problem of testing changes for Avatar robots can be solved with this tutorial.
\\
\\
For questions, clarifications, etc, Email: