# Development and Validation of a System for Game Control Based on a Force Plate
## 3 Mathematical Model of the System  
### Force Plate  
When the player is standing firmly on the base, while moving his or her body, the CoM changes. It is not possible to measure a player's CoM, and thus an assessment of the player's CoM is made using their CoP. A change in the player's CoM causes a change in the CoP in the transverse plane [15; 16]. This is how changing the position of a player's CoM can generate analog or digital signals that are equivalent to the signals generated by a keyboard or mouse for the purpose of controlling a game. In this paper, for the purposes of calculating the position of the human body's CoP, a force plate is used that measures the reaction of the base and the feet. The geometry of the force plate is shown in Figure 3. The force plate has four load cells used for force measuring. They are located in the corners of the force plate, and they are indicated with LC1, LC2, LC3, and LC4. Two frames are shown in Figure 3: the global frame of the force plate [O] and the local frame of the human body (player) in quiet standing [H]. The parameters for CoP measurement shown in Figure 3 are the following:  
* \(a\): the distance between the load cells along the \(x\) axis;
* \(b\): the distance between the load cells along the \(y\) axis;
* \({}^{\rm O}\)**h**: the position vector of a local frame [H] in the global frame [O];
* \({}^{\rm O}\)**e\({}_{i}\)**: the position vector of the \(i\)th load cell in the global frame [O];
* \({}^{\rm O}\)**CoP**: the position vector of the player's CoP in the global frame [O];
* \({}^{H}\)**CoP**: the position vector of the player's CoP in the global frame [H]. The position vector \({}^{O}\)**e\({}_{i}\)** (\(i=1,2,3,4\)) of each individual load cell in the global frame [O] can be expressed as follows:  
\[{}^{O}\)**e\({}_{1}=\left[ \begin{array}{c}-\frac{g}{2}\\ \frac{b}{2}\end{array} \right]\),\({}^{O}\)**e\({}_{2}=\left[ \begin{array}{c}\frac{g}{2}\\ \frac{b}{2}\end{array} \right]\),\({}^{O}\)**e\({}_{3}=\left[ \begin{array}{c}-\frac{g}{2}\\ -\frac{b}{2}\end{array} \right]\)**,**\({}^{O}\)**e\({}_{4}=\left[ \begin{array}{c}\frac{g}{2}\\ -\frac{b}{2}\end{array} \right]\)**  
In the global frame [O], the position vector of the player's CoP can be calculated according to the following relation [6; 9]:  
\[{}^{\rm O}\)**CoP** = \(\left[ \begin{array}{c}x_{{}^{\rm CoP}}\\ y_{{}^{\rm CoP}}\end{array} \right]=\frac{1}{\sum\limits_{i=1}^{4}F_{i}}\sum \limits_{i=1}^{4}{\bf e}_{i}F_{i}\), (2)  
Figure 3: Geometry of the force plate. where \(F_{i}\) (\(i=1,2,3,4\)) are the forces measured by the \(i\)th load cell. The sum of the \(F_{i}\) (\(i=1,2,3,4\)) forces represents the ground reaction force, which can be calculated as follows:  
\[F_{z}=\sum_{i=1}^{4}F_{i} \tag{3}\]  
According to Equations (1)-(3), the coordinates of the player's CoP in the global frame {O} are  
\[x_{CoP}=\frac{a}{2}\frac{-F_{1}+F_{2}-F_{3}+F_{4}}{F_{z}} \tag{4}\]  
\[y_{CoP}=\frac{b}{2}\frac{F_{1}+F_{2}-F_{3}-F_{4}}{F_{z}} \tag{5}\]  
Due to various anthropometric parameters of the human body, it is not realistic to expect that the starting CoP of a player who is standing upright and still on the force plate is also going to be in the origin of frame {O}. Thus, the system needs to be adapted to the various CoP starting positions of an upright and still player on the force plate. Generating reference values for the key press or mouse click simulation via the force plate cannot depend on how the player was originally positioned on the force plate. In order to achieve this, the player's coordinate system needs to be placed in the origin of the {H} frame (i.e., in the original position of the CoP of a player standing upright and quiet on the force plate). In the local frame {H}, the relevant position vector of the player's CoP can be calculated according to the following expression [5; 17]:  
\[{}^{H}\mathbf{CoP}=\left[ \begin{array}{c}{}^{H}x_{CoP}\\ {}^{H}y_{CoP}\end{array} \right]=^{O}\mathbf{CoP}-^{O}\mathbf{h}=\left[ \begin{array}{c}x_{CoP}\\ y_{CoP}\end{array} \right]-\left[