# Sensor Fusion and State Estimation of IoT Enabled Wind Energy Conversion System
## 3 Proposed Communication Framework  
In a wind turbine, different types of sensors are embedded to measure the components of the wind turbine, for example, generated current, voltage, rotor speed, etc. Let \(\mathbf{\mathcal{O}}_{i}(t)\), \(i=1,2,\ldots,N\), be the measured state by the \(i^{th}\) sensor of the wind turbine. We define \(\mathbf{\mathcal{O}}_{i}(t)\) by,  
\[\mathbf{\mathcal{O}}_{i}(t)=\mathbf{C}_{i}\mathbf{X}(t)+\mathbf{\mathcal{N}}_{m_{i}},\]  
where \(\mathbf{C}_{i}\) is the measurement/sensing matrix of sensor \(i\) and \(\mathbf{\mathcal{N}}_{m_{i}}\) is the observed noise during the measurement at sensor \(i\). Similar to the process noise, we model the measurement noise as Gaussian noise with zero-mean and co-variance \(\mathbf{R}_{i}\). The measured state is sent periodically to the control center for the appropriate action to be taken. Due to the remote placement of wind turbines there often is no direct communication link between a wind turbine and the control center. In most cases, a transmitter in the wind turbine communicates with a nearby base station, from where the message is relayed to the control center. We assume that the communication link between the base station and the control center is reliable as it is part of a fixed backbone network. However, due to the wireless communication channel between the wind turbine and the base station it is challenging to maintain reliable data communication, although reliable communication is highly desirable for accurate state estimation and control applications. To achieve reliable communication between the wind turbine and the base station we propose the following communication strategy. We define the observed state as \(\mathbf{\mathcal{O}}_{i}(t)=[o_{i1},o_{i2},\ldots,o_{ip}]\), where \(o_{ij}(t)\) is the \(j^{th}\) component of \(\mathbf{X}\), which is measured by the \(i^{th}\) sensor. Each component of \(\mathbf{\mathcal{O}}_{i}(t)\) is mapped and quantized into \(K\) bits. The bit block corresponding to component \(j\) is represented by \(\mathbf{b}_{ij}(t)\in\{0,1\}^{K}\). A repeat-accumulate code is then applied over \(\mathbf{b}_{ij}(t)\) to generate a code word \(\mathbf{c}_{ij}(t)\in\{0,1\}^{\frac{K}{\eta}}\), where \(\eta\) is the rate of the code. All code words are arranged serially to form \(\mathbf{m}_{i}(t)=[\mathbf{c}_{i1}(t),\mathbf{c}_{i2}(t),\ldots,\mathbf{c}_{ip}(t)]\). After modulating the \(\mathbf{m}_{i}(t)\) onto the wireless carrier signal, the resultant carrier signal \(\mathbf{s}_{i}(t)\) is then transmitted from the wind turbine to the base station. Let \(\widehat{\mathbf{s}}_{i}(t)\) be the received signal at the base station, which is defined by,  
\[\widehat{\mathbf{s}}_{i}(t)=\mathbf{s}_{i}(t)+\mathbf{\mathcal{N}}_{w},\]  
where \(\mathbf{\mathcal{N}}_{w}\) is the additive white Gaussian noise (AWGN) with zero mean and standard deviation \(\sigma_{w}\). Upon receiving \(\widehat{\mathbf{s}}_{i}(t)\), the receiver performs the reverse process (i.e., demodulation, decoding,demapping, etc.) in order to construct the observed state. Let \(\widehat{\mathbf{\mathcal{O}}}_{i}(t)\) be the reconstructed observed state which corresponds to \(\mathbf{\mathcal{O}}_{i}(t)\). The reconstructed observed state \(\widehat{\mathbf{\mathcal{O}}}_{i}(t)\) is then fed to our proposed fusion algorithm (discussed in Section 4) to track the original state of the wind turbine. The overall communication framework is depicted in Figure 2. In the following, we briefly describe the repeat-accumulate code along with its encoding and decoding procedures.