*3.1.3 Massive MIMO CPA*

The geometry structure of a circular planar array is very similar to a HPA, except from the fact that the hexagonal ring is replaced by a circular ring. As assumed for the HPA, we can consider the widespread configuration having 6*m* antenna elements uniformly placed around the circular edge of the *m*th radius.

**Figure 6** illustrates the CPA configuration that consists of a certain number of circular rings having same center but different radius with the antenna elements placed on the circumference of each ring. Because a CPA is a particular case of the hexagonal structure, the array factor equation is quite similar to the HPA expression. In case of isotropic elements, the array factor could be expressed by the following [25, 26]:

$$AF\_{\rm UCPA} = \mathbf{1} + \sum\_{m=1}^{M} \sum\_{n=1}^{\xi m} e^{-j \left( \pi m \sin \theta \cos(\phi \cdot \phi\_n) \cdot \beta\_M \right)} \tag{11}$$

$$\Phi\_n = \begin{array}{c c c} \frac{2\pi n}{6m} \end{array} = \begin{array}{c c} \frac{\pi n}{3m}; \quad \beta\_M = -\sin\Theta\_0 \cos\{\phi\_0 - \phi\_n\} \end{array} \tag{12}$$

**95**

**Figure 7.**

*PhasedArray main parameters class definition.*

*Smart Antenna Systems Model Simulation Design for 5G Wireless Network Systems*

Equation (11) considers the possibility to scan the beam through the use of the term *βM*, which is a function of the steering elevation *ϕ0*. The *M* and *θ0* terms are already defined in the previous subsection. From the theory, it is also known that the steering vector and the array factor are closely related to the number of antenna elements, the array configuration, and the antenna elements excitation (which in this case is unitary in amplitude). It is easy to conclude that the maximum achievable gain is the same of the HPA and URPA case. However, as verified for the HPA, the total number of elements is usually an odd number and depends on the number

Omnet++ [27] is a discrete event simulation environment that provides component architecture for models. Components (modules) are programmed in C++, and then assembled into larger components and models using a high-level language (NED). There are several reasons for using Omnet++ for implementing a SAS or a Massive MIMO. Firstly, it is an open source instrument allowing the reusability of models for free. Yet, it provides a full set of features and protocols especially relating to wireless network; hence, the end user developer can create new modules or extend the default models quite comfortably. Nevertheless, it provides an extremely intuitive user interface for both in developing and simulations. Unfortunately, by default, Omnet++ does not support asymmetrical communication between nodes. For enabling the simulator to support directional communications and so the SAS, some modifications on the original source code are required. Let us suppose that we aim to implement the most simple SAS technology, that is the switched beam, the first step needed is to design the module. For example, a phased array system could be implemented. In our case, we created a new directive antenna model and the relative module called *PhasedArray* that implements all features of a phased array system [28]. The main definition of the class could be synthetized as follows (**Figure 7**). The function *initialize* initializes the module in the simulation setup. Basically, the function *computeGain*, as the name suggests, computes the antenna gain; in the omnidirectional case, this function simply returns 1. This function could be modified by implementing the expression defined by Eq. (2). The second step concerns the modifications related to the mobile node module used in Omnet, that is, the

**Figure 8** illustrates the typical *StandardHost* structure which consists of submodules organized according to the TCP/IP layer stack. In this regard, several modifications in the physical layer are required. The physical layer defines the functions relating to channel model propagation, power management, and modulation. More specifically, the *ScalarAnalogModelBase* class implements the channel propagation

*DOI: http://dx.doi.org/10.5772/intechopen.79933*

of circular ring in the structure.

*StandardHost* module.

**4. SAS design and implementation on Omnet++**

*Smart Antenna Systems Model Simulation Design for 5G Wireless Network Systems DOI: http://dx.doi.org/10.5772/intechopen.79933*

Equation (11) considers the possibility to scan the beam through the use of the term *βM*, which is a function of the steering elevation *ϕ0*. The *M* and *θ0* terms are already defined in the previous subsection. From the theory, it is also known that the steering vector and the array factor are closely related to the number of antenna elements, the array configuration, and the antenna elements excitation (which in this case is unitary in amplitude). It is easy to conclude that the maximum achievable gain is the same of the HPA and URPA case. However, as verified for the HPA, the total number of elements is usually an odd number and depends on the number of circular ring in the structure.
