\section{VR Wheelchair Simulator}\label{environment}

An immersive Virtual Reality (VR) electric powered wheelchair simulator, serving a two-fold purpose of providing a safe environment for wheelchair-driving training as well as for the development of intelligent wheelchair controllers, has been developed in the Neurophysiology Lab at the University of Strathclyde (Grychtol, 2010). This environment is particularly useful in research related to BCI-operated wheelchairs since its use requires extended training and moreover, the safety of the drivers will not be compromised by classification errors. 

This section and the next (\hyperref[statecontrol]{Section 3.2}) review the main features of the VR wheelchair simulator and its control, developed by Dr. Bartlomiej Grychtol (2010), which provide the foundation for development of shared control methods in this project. The modifications made to the existing framework for providing shared control of the VR wheelchair simulator are discussed in the final section of this chapter (\hyperref[sharedmod]{Section 3.3}).

The VR simulator wheelchair was developed with the help of USARSim, a robot simulator that runs on a commercial game engine, Unreal Engine 2.0 and  using the game, Unreal Tournament 2004 (UT2004). The user inputs are translated into wheelchair driving commands by a controller that is explained in the next section (\hyperref[statecontrol]{Section 3.2}). These components, as well as the library for display rendering, are integrated into a single Visual C++ application using Microsoft Foundation Class Library (MFC). It was developed in Microsoft® Visual Studio® 2005 following object-oriented programming. UT2004 communicates with the main application via a TCP/IP channel creating a client-server type architecture, wherein the former acts as the server. A graphical user interface (GUI) allows selection of the required parameters (such as map selection), spawning the wheelchair and controlling it using a suitable access device (keypad or joystick).

For this project, the access device of interest is the keypad as it can simulate the discrete commands issued in the Strathclyde BCI. Hence it can be substituted for the actual BCI to enable development of shared control strategies in a more efficient manner, with respect to both time, and error in input signals from the BCI classifier. \hyperref[fig:VRsimulator]{Figure 3.1} illustrates the environmental set-up. A dome-shaped screen (2m diameter), providing a 160° view, helps in producing an immersive effect. A volunteer controlling the wheelchair in this environment with the help of a keypad is shown. The four arrow keys of the keypad, 8, 6, 2, 4 correspond to the commands \textquoteleft{Forward}', \textquoteleft{Right}', \textquoteleft{Reverse}', \textquoteleft{Left}' and the centre key 5 for \textquoteleft{Stop}'. Control of the wheelchair using this access device is explained in the next section (\hyperref[statecontrol]{Section 3.2}).

\begin{figure}[t]
\centering
\subfloat[Volunteer driving the wheelchair]{\label{fig:volunteer}\includegraphics[width=0.8\textwidth]{volunteer}}
\subfloat[Keypad]{\label{fig:keypad}\includegraphics[width=0.2\textwidth]{keypad}}
\caption[Virtual reality wheelchair simulator]{A volunteer driving the wheelchair in the VR simulator environment using a keypad as the access device. \textit{Adapted from Grychtol (2010)}}
\label{fig:VRsimulator}
\end{figure}
