Nomenclature
- $ a$
-
Sphere radius ( $ \mu m$ )
- $ {\textrm{U}}_{i{\kern1pt}j}$
-
Distance between centers of sphere $ i\;$ and sphere $ j,$ $ i,j=1,\,2,\,3.$ ( $ {\mu}\textrm{m}$ )
- $$\mu $$
-
Fluid viscosity ( $ \textrm{k}\textrm{g}.{\textrm{m}}^{-1}.{\textrm{s}}^{-1}$ )
- $ \textbf{v}$
-
Fluid velocity ( $ m.\,{s}^{-1}$ )
- p
-
Fluid pressure ( $ Pa$ )
- $ {\textbf{f}}_{j}$ , $ {\textbf{v}}_{i}$
-
Force acting on sphere i ( $ N$ ), velocity of sphere i ( $ m.\,{s}^{-1}$ )
- $ {\textbf{H}}_{i{\kern1pt}j}$
-
Hydrodynamic Oseen tensor ( $ m.\,{s}^{-1}.{N}^{-1}$ )
- $ {\textbf{r}}_{i}$ , $ {\textbf{r}}_{i{\kern1pt}j}$
-
Position vector of sphere center i ( $ {\mu }\textrm{m}$ ), position vector of sphere center i relative to sphere center $ j$ ( $ {\mu }\textrm{m}$ )
- $ \textbf{I}$
-
Identity matrix (-)
- $ {x}_{i}$ , $ {y}_{i}$ , $ {z}_{i}$
-
$ x$ , $ y$ , and $ z$ positions of sphere $ i$ in three-dimensional Cartesian coordinate system ( $ {\mu }\textrm{m}$ )
- $$\theta $$
-
Angle between arm connecting spheres 1 and 2 and $ x$ axis (radians)
- $ {\left({x}_{1}\right)}_{d}$ , $ {\left({y}_{1}\right)}_{d}$
-
Desired $ x$ and $ y$ positions of sphere 1 ( $$\mu {\rm{m}}$$ )
- $${\left( \theta \right)_d}$$
-
Desired $$\theta $$ (radians)
- $ {k}_{p1}$ , $ {k}_{p2}$ , $ {k}_{p3}$
-
Proportional control coefficients ( $ {\textrm{s}}^{-1}$ )
- $ \Delta \textrm{t}$
-
Simulation time step ( $ s$ )
- $ J$
-
Optimization objective function
- $ \textrm{L}$
-
Lagrange function
1. Introduction
New advances in science and technology have opened the fields of microrobotics and microsystems for research. As a result, microrobots have become of great importance, with a variety of applications in different fields [Reference Gao, Yan, He, Xu and Wang1]. Some of the most important and significant of these applications can be found in the field of medicine, where microrobots can help in advancing modern and revolutionary medical techniques [Reference Nelson, Kaliakatsos and Abbott2]. Inspired from nature, different mechanisms have been proposed for microrobots [Reference Kortschack, Shirinov, Trüper and Fatikow3].
Microrobots play an important role in efforts toward developing targeted drug delivery methods. The small scale of microrobotic swimmers enables them to carry and deliver doses of high concentration drug in a small target region, minimalizing the side effects on other organs [Reference Ezzat, Amin, Shedeed and Tolba4,Reference Jang, Jeong, Song and Chung5]. In addition, small scale means that microrobots can potentially be used for various noninvasive surgical procedures and material removal within the body [Reference Kortschack, Shirinov, Trüper and Fatikow3]. Microsystems can also be used for probing regions of the body for assessing patients’ health and searching for tumors within the body [Reference Ciuti, Caliò, Camboni, Neri, Bianchi, Arezzo, Koulaouzidis, Schostek, Stoyanov, Oddo, Magnani, Menciassi, Morino, Schurr and Dario6]. Artificial fertilization using microrobots has also been proposed. In this case, swimming microrobots are usually used for carrying sperm cells and driving them inside the egg cell for insemination [Reference Medina-Sánchez, Schwarz, Meyer, Hebenstreit and Schmidt7].
Much work has been conducted on the underlying physics of swimming microorganisms and the modeling of their motion [Reference Cicconofri and DeSimone8]. The physics governing micro swimmer motion is the same for artificial and biological swimmers, and many microrobotic designs are drawn from inspirations from nature. Therefore, methods developed for modeling biological microswimmers can also be used for modeling the motion of artificial microswimmers. Furthermore, designs for the swimming mechanisms of microrobots can be based on biological swimming mechanisms in microorganisms, and artificial microswimmers are usually inspired by natural swimmers [Reference Palagi and Fischer9,Reference Ning, Zhang, Zhu, Ingham, Huang, Mei and Solovev10]. Similarly, materials and methods have been proposed to imitate biological swimming mechanisms in artificial microswimmers [Reference Coyle, Majidi, LeDuc and Hsia11].
Bacteria are among the most common microorganisms that have inspired models for microrobots. Based on their motion, helical microrobots have been proposed and analyzed which use a rotating helical flagellum as a means of propulsion [Reference Gong, Cai, Celi, Feng, Jiang and Zhang12,Reference Liu, Xu, Guan, Yan, Ye and Wu13]. The models based on bacterium motion have also been expanded to consider the motion of microswimmers consisting of two or more flagella [Reference Shum14,Reference Lushi, Kantsler and Goldstein15]. A mechanism has also been proposed that consists of two parallel flagella rotating around one axis [Reference Sayyaadi and Bahmanyar16]. In this mechanism, the rotation of the outer flagellum mainly produces propulsion, while the inner flagellum is responsible for controlling forward velocity.
In addition, models based on microorganisms other than bacteria, such as ciliates, have been proposed [Reference Nematollahisarvestani and Shamloo17,Reference Sarvestani, Shamloo and Ahmadian18]. Difficulties in fabricating structures at microscale have also led some researchers to propose micro-bio-robots, which are propelled using microorganisms [Reference Khalil, Magdanz, Sanchez, Schmidt and Misra19,Reference Edwards, Carlsen, Zhuang and Sitti20]. All of the aforementioned models require an understanding of the basics of swimming motion at microscale where the Reynolds number is small. Purcell [Reference Purcell21] showed that microswimmer motion creates low-Reynolds number flow, which can be described using the linear, time-independent Stokes equation. He demonstrated that microswimmers cannot move using a reciprocal mechanism and must employ nonreciprocal means of applying force on the fluid. (This behavior is known as the scallop theorem [Reference Purcell21].) Based on this theorem, several microswimmers have been proposed during recent years [Reference Nasouri, Khot and Elfring22–Reference Khalesi, Pishkenari and Vossoughi26]. To name but a few, Rizvi et al. [Reference Rizvi, Farutin and Misbah24] introduced a triangular three-bead microswimmer where three identical springs connect the beads. A triangular mechanism for planar motion has been proposed by Ebrahimian et al. [Reference Ebrahimian, Yekehzare and Ejtehadi25]. Khalesi et al. [Reference Khalesi, Pishkenari and Vossoughi26] have proposed an innovative magnetic microswimmer. Esfandbod et al. [Reference Esfandbod, Pishkenari and Meghdari27] introduced a three-dimensional microswimmer capable of high maneuverability.
Although a significant progress has been made in the design and dynamic modeling of microswimmers, development of control strategies for such microrobots has not been addressed in a satisfactory manner. Here, we aim to design some control strategies for the microswimmer proposed by Ebrahimian et al. [Reference Ebrahimian, Yekehzare and Ejtehadi25], which can be extended to other similar microswimmers too. The microswimmer proposed by Ebrahimian et al. has been referred to as the low-Reynolds number predator and consists of three spheres of radius $ a=1\;{\mu }\textrm{m},$ attached together by three arms in a triangular formation. This mechanism is illustrated in Fig. 1. Ebrahimian et al. have also proposed a cycle of strokes, which results in translational and rotational motion.
The dynamics of these models have been fully analyzed and simulated using the linear equations governing low-Reynolds number flows. However, in most cases, controlling the motion of these swimmers has not been considered by the researchers that have proposed these models, because the motivation for coming up with these models and analyzing them has usually been to analyze and simulate the motion of biological microswimmers and better understand their movement.
In this paper, we have used the triangular model proposed by Ebrahimian et al. as a model for a swimming microrobot which is tasked with successfully tracking down a desired path. In doing so, we have also bridged a gap in research by proposing a number of strategies for controlling the motion of this swimmer. The proposed control schemes are a simple nonoptimal controller, an optimal controller without considering constraints on the robot arm length, an optimal controller considering the constraints on arm lengths. The control parameters are the swimmer’s arm lengths, and the objective of the control strategies is to ensure that microrobot is able to track its desired path. In this case, the microrobot and the ideal path can also be viewed in a predator-prey paradigm, where the predator (microrobot) needs to track down and hunt its prey (ideal path). Efficiency and minimization of energy consumption and path tracking with arm length constraints have been key factors in proposing novel techniques for optimal control of the predator’s position.
This paper has been organized in the following order: first, in Section 2, the dynamical equations of the predator have been obtained. Next, at the end of Section 2, the dynamical motion of the predator has been simulated according to the strokes proposed in [Reference Ebrahimian, Yekehzare and Ejtehadi25]. After the results of dynamical simulation have been verified with [Reference Ebrahimian, Yekehzare and Ejtehadi25], the motion of the swimming predator has been controlled under various control strategies. First, in Section 3, the motion of one sphere and orientation angle of one arm has been controlled to follow the desired path of a prey. Then, in Section 4, optimal control and path tracking of one sphere has been analyzed. After that, in Section 5, optimal control of one sphere along with arm length constraints has been discussed. Ultimately, results and simulations from various control strategies have been discussed and compared.
2. Governing Equations
The small scale of microswimmers results in a low-Reynolds flow regime. As a result, the Navier–Stokes equations reduce to the linear, time-independent Stokes equation. Therefore, fluid flow resulting from a swimming microrobot is governed by the Stokes and continuity equations [Reference Datt, Nasouri and Elfring23]. For an incompressible Newtonian fluid, the equations are as follows [Reference Happel, Brenner and Moreau28]:
where $ \textbf{v}$ denotes the fluid velocity vector, p is the fluid pressure, and $ {\mu }$ is the fluid viscosity. In modeling the microrobot, dynamic interactions between the arms and the fluid are neglected, mainly because of their relative slenderness. Therefore, Eq. (1) need to be solved subject to no-slip conditions relative to the spheres and $ \textbf{v}=0$ at infinity. It is also assumed that forces acting on each sphere pass through its center.
The relation between each sphere’s velocity and the forces acting on each sphere can be presented as follows [Reference Ebrahimian, Yekehzare and Ejtehadi25]:
where $ {\textbf{v}}_{i}$ is the velocity of sphere i, $ {\textbf{f}}_{j}$ is the force acting on sphere j, and $ {\textbf{H}}_{i{\kern1pt}j}$ is the symmetric Oseen tensor, which depends on the geometry of the system. For a system of linked spherical swimmers, $ {\textbf{H}}_{i{\kern1pt}j}$ can be written as follows [Reference Alexander, Pooley and Yeomans29]:
where $ {\textbf{r}}_{i{\kern1pt}j}={\textbf{r}}_{i}-{\textbf{r}}_{j},$ and $ {\textbf{r}}_{i}$ is the position vector of sphere i. Here $ \textbf{I}$ is the identity matrix of size 3. Along with Eq. (3), the microswimmer’s motion is also subject to the conservation of linear and angular momentum [Reference Ebrahimian, Yekehzare and Ejtehadi25]:
The set of equations in (2) and (4) forms the dynamic equations of the swimming predator.
2.1 Derivation of Oseen tensor
In order to use Eq. (2), we derive the explicit form of the hydrodynamic Oseen tensor presented in relation (3). The center of each sphere is presented in a three-dimensional Cartesian coordinate system, where $ {x}_{i},$ $ {y}_{i}$ , and $ {z}_{i}$ represent the coordinates of sphere i. The relative distances are shown in the following order:
Accordingly, for $ i\ne j,$ $ {\textbf{H}}_{i{\kern1pt}j}$ can be obtained in the following order:
In the case where $ i=j:$
In the case where a microswimmer’s motion is two-dimensional, Eqs. (7) and (8) can be simplified for two-dimensional motion:
Eq. (9) yields the Oseen tensor for a two-dimensional, three-sphere microsystem.
2.2 Derivation of the Governing Equations of Motion
The explicit form of the low-Reynolds predator’s equations of motion can be obtained by expanding Eqs. (2) and (4) in terms of the hydrodynamic Oseen tensor in (9). First, Eq. (2) needs to be expanded. To this end, distances between spheres i and j are represented by $ {\textrm{U}}_{i{\kern1pt}j},$ and forces exerted on sphere i are shown by $\left( \begin{matrix} {{{\rm{f}}_{xi}}} \\ {{{\rm{f}}_{yi}}} \end{matrix} \right).$ The position of each sphere center is represented according to Eqs. (5) and (6).
Merging Eqs. (2) and (9) results in the following matrix equation:
Here, ${\bf\dot{x}} = {[\begin{matrix} {{{\dot x}_1}}\;\;\;\;\; & {{{\dot y}_1}}\;\;\;\;\; & {{{\dot x}_2}}\;\;\;\;\; & {{{\dot y}_2}}\;\;\;\;\; & {{{\dot x}_3}}\;\;\;\;\; & {{{\dot y}_3}} \end{matrix} ]^{\rm{T}}}$ and ${\bf{f}} = {[\begin{matrix} {{{\rm{f}}_{x1}}}\;\;\;\;\; & {{{\rm{f}}_{y1}}}\;\;\;\;\; & {{{\rm{f}}_{x2}}}\;\;\;\;\; & {{{\rm{f}}_{y2}}}\;\;\;\;\; & {{{\rm{f}}_{x3}}}\;\;\;\;\; & {{{\rm{f}}_{y3}}} \end{matrix} ]^{\rm{T}}}.$ $ \textbf{G}$ is a $ 6\times 6$ matrix which depends on the relative position of each sphere’s center:
Eq. (10) can alternatively be written as
The motion of this microswimmer is controlled by changing the length of each arm using prismatic actuators. Therefore, we are interested in writing the force vector in terms of a combination of velocity and time derivatives of the length of each arm. This can be achieved by deriving the relation between the following two sets of variables:
where $\dot{\textbf{z}} = {\left[ \begin{matrix} {{{\dot x}_1}}\;\;\;\;\; & {{{\dot y}_1}}\;\;\;\;\; & {{{\dot{\theta } }_{12}}}\;\;\;\;\; & {{{{{\dot{\textrm{U}}}}}_{12}}}\;\;\;\;\; & {{{{{\dot{\textrm{U}}}}}_{23}}}\;\;\;\;\; & {{{{{\dot{\textrm{U}}}}}_{31}}} \end{matrix} \right]^{\rm{T}}}.$ Matrix $ \textbf{D}$ in relation (13) can be determined by obtaining time derivatives of geometric relations presented in Fig. 2. Using relationship between spheres coordinates and after some mathematical manipulation, we can obtain:
where $ \textbf{E}={\textbf{A}}^{-1}\textbf{B}\textbf{C}\textbf{},$ $$\matrix{ {{\bf{A}} = \left[ {\matrix{ {{x_{12}}\;\;\;\;\;{{\rm{y}}_{12}}} \cr {{x_{23}}\;\;\;\;\;{{\rm{y}}_{23}}} \cr } } \right],{\bf{B}} = \left[ {\matrix{ {{x_{12}}} & {{{\rm{y}}_{12}}} & 0 & 0 & { - {{\rm{U}}_{12}}} & 0 \cr 0 & 0 & {{x_{23}}} & {{{\rm{y}}_{23}}} & 0 & {{{\rm{U}}_{23}}} \cr } } \right],} \hfill \cr } $$ and ${\bf{C}} = \left[ \begin{matrix} 1\;\;\;\;\; & 0\;\;\;\;\; & 0\;\;\;\;\; & 0\;\;\;\;\; & 0\;\;\;\;\; & 0\;\;\;\;\; \\ 0\;\;\;\;\; & 1\;\;\;\;\; & 0\;\;\;\;\; & 0\;\;\;\;\; & 0\;\;\;\;\; & 0\;\;\;\;\; \\ 1\;\;\;\;\; & 0\;\;\;\;\; & { - {y_{31}}}\;\;\;\;\; & 0\;\;\;\;\; & 0\;\;\;\;\; & {{{{x_{31}}} \over {{{\rm{U}}_{31}}}}} \\ 0\;\;\;\;\; & 1\;\;\;\;\; & {{x_{31}}}\;\;\;\;\; & 0\;\;\;\;\; & 0\;\;\;\;\; & {{{{y_{31}}} \over {{{\rm{U}}_{31}}}}} \\ 0\;\;\;\;\; & 0\;\;\;\;\; & 0\;\;\;\;\; & 1\;\;\;\;\; & 0\;\;\;\;\; & 0 \\ 0\;\;\;\;\; & 0\;\;\;\;\; & 0\;\;\;\;\; & 0 \;\;\;\;\; & 1\;\;\;\;\; & 0 \end{matrix} \right]$ . Here $ {\textrm{E}}_{i{\kern1pt}j}$ are the elements of matrix $ \textbf{E}.$ Hence, Eq. (12) can be written in the following form:
where $ \textbf{M}={\textbf{G}}^{-1}\textbf{D}.$ Now using Eqs. (4) and (15) we can obtain:
where $${{\bf{M}}_1} = \left[ {\matrix{ {1\;\;\;0\;\;\;1\;\;\;0\;\;\;1\;\;\;0} \cr } } \right]{\bf{M}},$$ $${{\bf{M}}_2} = \left[ {\matrix{ {0\;\;\;1\;\;\;0\;\;\;1\;\;\;0\;\;\;1} \cr } } \right]{\bf{M}}$$ , and $${{\bf{M}}_3} = \left[ { - {y_1}\;\;\;{x_1}\;\;\; - {y_2}\;\;\;{x_2}\;\;\; - {y_3}} \right.$$ $$\left. {{x_3}} \right]{\bf{M}}.$$ Relation (16), which consists of three equations and six variables, describes the dynamic properties of the microrobot. It can be used alongside Eq. (13) to determine the position of each sphere’s center.
2.3 Dynamic simulation and validation
If at each point in time, the length of each arm is known, Eq. (16) yields a system of three equations and three variables, which can be solved in each time step. Here, we have simulated an ordered motion consisting of six steps and two cycles. In the first cycle, each arm shrinks from $ \textrm{L}$ to $ {\textrm{L}}^{*}=\left(1-\epsilon\right)\textrm{L},$ with a constant rate. In the next cycle, each arm, in turn, returns to its initial length with the same rate. In the end, the swimmer has returned to its initial configuration. The order of steps is presented in Fig. 3.
After these six steps, the predator experiences a net center of mass displacement along with a net rotation. The displacement and rotation after a full cycle have been presented in Fig. 4, as a function of $ \epsilon$ .
To validate our dynamic model, results from Ebrahimian et al. have also been illustrated in Fig. 4, which demonstrates that the results that have been obtained and presented in this paper are completely coincident with results from [Reference Ebrahimian, Yekehzare and Ejtehadi25]. In the proceeding sections, we will present control strategies for controlling the motion of the low-Reynolds predator.
3. Predator Position and Heading Control
In this section, our aim is to determine the control inputs in a way that the microswimmer’s position and orientation track the desired trajectories. Eq. (16) consists of three equations and six variables. The lengths of each arm are the variables used to control the predator’s motion. Consequently, one control strategy can involve controlling three variables such as $ {x}_{1},$ $ {y}_{1}$ , and $ \theta ,$ where these variables, respectively, are the first sphere x and y positions and the first arm orientation. In this case, the first sphere is essentially the predator and must be able to successfully hunt down the prey. These three variables are controlled to follow desired paths $ {x}_{1d},$ $ {y}_{1d}$ , and $ {\theta }_{d}$ using proportional control with feed forward terms. $ {x}_{1d}$ and $ {y}_{1d}$ are the prey’s x and y positions:
As a result, $ {\dot{x}}_{1}$ , $ {\dot{y}}_{1}$ , and $ \dot{\theta }$ are determined in each time step, and Eq. (16) can be merged with Eqs. (17) to (19) to produce the following system of equations:
.
Here, we have a system of six equations and six unknowns, which can be solved in each time step. Solving for $ {\dot{\textrm{U}}}_{12},$ $ {\dot{\textrm{U}}}_{23}$ , and $ {\dot{\textrm{U}}}_{31}$ yields:
The schematic of the employed control method and the details of controller block are shown in Fig. 5.
After variables $ {\dot{x}}_{1},$ $ {\dot{y}}_{1}$ , $ \dot{\theta }$ , $ {\dot{\textrm{U}}}_{12}$ , $ {\dot{\textrm{U}}}_{23}$ , and $ {\dot{\textrm{U}}}_{31}$ are determined from, the velocity of each sphere (variables $ {\dot{x}}_{1},$ $ {\dot{y}}_{1}$ , $ {\dot{x}}_{2}$ , $ {\dot{y}}_{2}$ , $ {\dot{x}}_{3}$ , and $ {\dot{y}}_{3})$ can be determined using Eq. (13). Integrating the velocity of each sphere in each time step, results in the position vector of the next time step:
For simulation, a time step of $ \Delta \textrm{t}=0.01\textrm{s}$ has been considered, which leads to convergent results over a simulation time span of 10 s. The following desired paths have been considered:
Control coefficients $ {k}_{p1}$ and $ {k}_{p2}$ are set equal to 1, $ {k}_{p3}$ is set at 0.5, initial values for $ {x}_{1},$ $ {y}_{1}$ , and $ \theta $ are assumed to be zero, and the initial arm lengths are $ 10\;{\mu }\textrm{m}.$ The results are presented in the following figures.
Fig. 6 shows that the predator has been able to successfully hunt down its prey according to Eqs. (22), (23), and (24), and the position and angle errors have reduced to zero. The x and y positions have settled after almost 4 s, whereas the angle has taken almost 8 s to settle. This is due to the fact that the control coefficient for angle $ {\theta }$ has been set at half that of $ {x}_{1}$ and $ {y}_{1}.$ According to Eqs. (22), (23), and (24), the desired prey path for the predator lies on a curved line. This path, along with the predator’s path, has been presented in Fig. 7, which shows their convergence.
The necessary arm length inputs have also been presented in Fig. 8. These results demonstrate that the arm length connecting spheres 1 and 3 has increased to almost $ 30\;{\mu }\textrm{m}.$ While these results satisfy our control goals, it is desirable to decrease the amount and change of arm lengths in order to lower the swimmer’s energy consumption. This can be achieved using optimal control strategies.
4. Optimal Control
An alternative control strategy is optimal control of the microswimmer position. Accordingly, variables $ {x}_{1}$ and $ {y}_{1},$ which are the predator’s x and y positions, are controlled to follow reference paths $ {\left({x}_{1}\right)}_{d}$ and $ {\left({y}_{1}\right)}_{d},$ which are the prey’s x and y positions, according to Eqs. (17) and (18), while minimizing an objective function $ J$ in each time step. Therefore, in each time step, variables $ {\theta }_{k+1},$ $ {\textrm{U}}_{{12}_{k+1}}$ , $ {\textrm{U}}_{{23}_{k+1}}$ , and $ {\textrm{U}}_{{31}_{k+1}}$ must be determined such that they minimize function $ J$ while satisfying dynamical equations in relation (16). As a result, the Lagrange function to find minima of the objective function $ J,$ subject to the equality constraints (16), is the following:
Here parameters $ {\gamma }_{i}$ are the Lagrange multipliers. The equations for optimal control in each time step are the following:
Relations (26) to (28) consist of 9 equations that are used to find $ {x}_{{1}_{k+1}},$ $ {y}_{{1}_{k+1}}$ , $ {\theta }_{k+1}$ , $ {\textrm{U}}_{{12}_{k+1}}$ , $ {\textrm{U}}_{{23}_{k+1}}$ , $ {\textrm{U}}_{{31}_{k+1}}$ , $ {\gamma }_{1}$ , $ {\gamma }_{2}$ , and $ {\gamma }_{3}.$ After that, positions of other spheres of the microswimmer can be found according to Eqs. (13) and (21).
If the objective in each time step is to minimize fluctuations in the control efforts which are the swimmer arm lengths, the following objective function should be used:
If it is desired to minimize arm lengths in the next time step, the following objective function is suitable:
Reference arm length b should not be set too low; otherwise, the swimmer’s arm lengths might decrease below $ 2\;{\mu }\textrm{m},$ resulting in collision between its spheres. Implementing $ {\textrm{J}}_{2}$ results in undesirable shocks and impulses in the beginning of motion. In order to reduce the intensity of these shocks, a linear combination of $ {\textrm{J}}_{1}$ and $ {\textrm{J}}_{2}$ is used instead:
The constant $ \alpha $ shoud be small in order to avoid large impulses.
The swimmer’s motion has been simulated for objective function $ {\textrm{J}}_{1}$ and the following prey paths (22) and (23). Control coefficients $ {k}_{p1}$ and $ {k}_{p2}$ are set equal to 1, and initial values are similar to the previous simulation. The results are presented in the following figures:
The x and y positions of the first sphere are the same as the previous simulation in Fig. 6(a) and (b). Therefore, the predator has again been able to achieve the goal of tracking its prey, and both x and y positions of the first sphere (predator) have settled by $ t=4s.$ In this case, however, the changes in arm lengths have decreased and the maximum arm length has been lowered by $ 5\;{\mu }\textrm{m},$ which can be seen in Fig. 9. The predator and prey paths for this simulation are the same as the previous simulation presented in Fig. 7.
The swimmer’s motion has also been simulated for objective function $ {\textrm{J}}_{3}$ and desired paths (22) and (23). Control coefficients $ {k}_{p1}$ and $ {k}_{p2}$ are set equal to 1, and initial conditions are the same as the previous simulations. In Eq. (31), the constant $ \alpha $ is set at 0.1, and reference arm length b is set at $ 7\;{\mu }\textrm{m}.$ The results are presented in the following figure:
As before, the predator, which is the swimmer’s first sphere, has been able to successfully hunt down the prey. The x and y positions of the first sphere are similar to previous simulations. Figure 10 illustrates the arm length inputs for the swimmer’s motion. In this case, the arm length between spheres 2 and 3 has decreased quickly near to $ 5\;{\mu }\textrm{m},$ while peak arm length has only slightly increased compared to the previous simulation. The desired and actual paths for the predator and prey are similar to previous simulations.
5. Optimal Control with Constraints on the Arm Lengths
The optimal control strategies presented thus far do not place any constraints on the variations in arm lengths. In order to avoid spheres colliding with each other, or to limit the maximum increase of arm lengths, constraints must be considered for the minimum and maximum admissible values of the arm lengths. Controlling variables $ {x}_{1}$ and $ {y}_{1}$ to follow reference prey paths $ {x}_{1d}$ and $ {y}_{1d},$ while minimizing objective function J with arm length constraints in each time step, is possible with quadratic programming. In order to use the quadratic programming technique, objective function J, system equations, and constraint inequalities can be written in matrix formulation [Reference Tonon, Aronna and Kalise30]:
In Eq. (32), $ \,\textbf{x}$ represents the vector containing variables that need to be determined. The term $ \frac{1}{2}{\textbf{x}}^{T}\textbf{Hx}+{\textbf{f}}^{T}\textbf{x}$ is the quadratic objective or cost function which has been written in matrix formulation. The goal of quadratic programming is to minimize the objective function with constraints $ {\textbf{A}}_{eq}\textbf{x}={\textbf{b}}_{eq}$ and $ \textbf{lb}\le \textbf{x}\le \textbf{ub}.$ The term $ {\textbf{A}}_{eq}\textbf{x}={\textbf{b}}_{eq}$ is the equality constraints of the system written in matrix formulation, and $ \textbf{lb}$ and $ \textbf{ub}$ are the lower and upper bounds of the variables.
Here, we have presented the objective function for minimizing arm length change, $ {\textrm{J}}_{1}$ , in matrix form. $ {\textrm{J}}_{1}$ can be expanded in the following form:
In Eq. (33), constant terms have been eliminated in the expansion of $ {\textrm{J}}_{1}.$ Therefore, $ \textbf{}\textbf{x}$ , $ \textbf{H}$ , and $ \textbf{f}$ are in the following order:
The dynamic equations for the system are Eqs. (16), (17), and (18), which if merged together, can be written in the following form:
Eq. (35) can be rewritten as the following expression:
where $${\bf{R}} = \left[ {\matrix{ 1 & 0 & 0 & 0 & 0 & 0 \cr 0 & 1 & 0 & 0 & 0 & 0 \cr {{{\bf{M}}_1}\left( 1 \right)} & {{{\bf{M}}_1}\left( 2 \right)} & {{{\bf{M}}_1}\left( 3 \right)} & {{{\bf{M}}_1}\left( 4 \right)} & {{{\bf{M}}_1}\left( 5 \right)} & {{{\bf{M}}_1}\left( 6 \right)} \cr {{{\bf{M}}_2}\left( 1 \right)} & {{{\bf{M}}_2}\left( 2 \right)} & {{{\bf{M}}_2}\left( 3 \right)} & {{{\bf{M}}_2}\left( 4 \right)} & {{{\bf{M}}_2}\left( 5 \right)} & {{{\bf{M}}_2}\left( 6 \right)} \cr {{{\bf{M}}_3}\left( 1 \right)} & {{{\bf{M}}_3}\left( 2 \right)} & {{{\bf{M}}_3}\left( 3 \right)} & {{{\bf{M}}_3}\left( 4 \right)} & {{{\bf{M}}_3}\left( 5 \right)} & {{{\bf{M}}_3}\left( 6 \right)} \cr } } \right].$$ As a result, $ \textbf{A}_{eq}$ and $ \textbf{b}_{eq}$ are the following:
For simulation, the constraints for arm lengths are set between $ 8$ and $ 25\;{\mu }\textrm{m}.$ Therefore, the upper and lower bounds in (32) are the following:
After $ {x}_{{1}_{k+1}},$ $ {y}_{{1}_{k+1}}$ , $ {\theta }_{k+1}$ , $ {\textrm{U}}_{{12}_{k+1}}$ , $ {\textrm{U}}_{{23}_{k+1}}$ , and $ {\textrm{U}}_{{31}_{k+1}}$ are determined in each time step from quadratic programming, the position vector of sphere centers, in the next time step, is determined using Eq. (13).
The swimmer’s motion has been simulated for objective function $ {\textrm{J}}_{1}$ and desired paths (22) and (23), with constraints according to (38). Control coefficients $ {K}_{p1}$ and $ {K}_{p2}$ are set equal to 1, and initial conditions are the same as the previous simulations. The results are presented in the Fig. 11. This figure presents arm length variations for this simulation. The results from Fig. 11 show that arm lengths have remained within their defined boundaries. However, as a result, overall arm length change has slightly increased, which, in turn, means more energy consumption. The predator and prey paths are similar to previous simulations.
The results from various proposed methods have been compared in Table I. According to this table, the last control strategy, optimal control with constraints on the arm lengths, not only minimizes the microswimmer length changes but also maintains the arms lengths in the desired interval.
6. Conclusion
In this paper, the dynamics and control of a triangular swimming microrobot were examined. Because of swimming at low Reynolds-number flow, the inertia forces are significantly smaller than viscous ones, and subsequently, Stokes equations are governed on the microrobot motion. After derivation of the dynamic equations governing on the motion, the position and orientation angle of the microswimmer were controlled to track desired time trajectories using proportional control with feed forward terms. The simulation results show that by changing its arm lengths, the robot was able to successfully track the desired trajectories. In order to reduce energy consumption and decrease arm length changes, optimal control was also proposed. In the end, optimal control of microswimmer, with constraints on arm lengths, was proposed. The results demonstrated that each arm length had remained within the permitted boundary and the desired trajectory had also been followed.
Acknowledgment
This work is financially supported by Iranian National Science Foundation (INSF).
Competing interests
The authors declare none.