Dari keempat kriteria tersebut, merupakan fungsi dari $\zeta$ dan $\omega_n$.
Berikut adalah rumus dari keempat kriteria tersebut.
\begin{itemize}
\item$T_s$ adalah rumus pendekatan untuk mengetahui waktu respon sistem
mulai dari kondisi inisial sampai sistem mencapai 2\% dari set poin yang terakhir.
\begin{align}
T_s = \frac{4}{\zeta\omega_n}
\end{align}
\item$P.O$ adalah prosentase \textit{overshoot} dari sistem.
Arti dari \textit{overshoot} pada sistem adalah respon sistem yang melebihi dari nilai set poin.
\begin{align}
P.O. = 100e^{-\zeta\pi/\sqrt{1-\zeta^2}}
\end{align}
\item$T_p$ adalah waktu dimana respon sistem mengalami \textit{overshoot} dimulai dari kondisi inisial.
\begin{align}
T_p = \frac{\pi}{\omega_n \sqrt{1-\zeta^2}}
\end{align}
\item$T_{r1}$ adalah pendekatan nilai waktu respon sistem dimulai dari respon 10\% menuju ke 90\% set poin.
Akurasi dari rumus ini adalah $0.3\leq\zeta\leq0.8$.
\begin{align}
T_{r1} = \frac{2.16\zeta + 0.6}{\omega_n}
\end{align}
\end{itemize}
Apabila menggunakan $\zeta=0.9$ dan $\omega_n =9.1$, akan diperoleh kriteria $T_s=0.48$, $T_p=14.75$, $P.O.=0.15$, dan $T_{r1}=0.27$. Grafik step response dapat diperhatiakn pada gamabar~\ref{fig:stepResGref}.
Setelah mendapatkan konstanta $K_s$, sistem sudah dalam keadaan stabil.
Akan tetapi sistem tidak mencapai set poin yang diinginkan.
Maka permasalahan tersebut dapat diselesaikan dengan \textit{input refrence}.
Dimana refrence tersebut akan dikalikan dengan konstanta $N$.
Berikut adalah persamaan \textit{input refrence} sebagai penambah dari \textit{state feedback}.
\begin{align}
u(t) = -Kx(t)+Nr
\end{align}
Sehingga persamaan \textit{state space} menjadi berikut.
\begin{align}
\dot{x}&= (A-BK_s)x + BNr\\
y &= Cx
\end{align}
Untuk mendapatkan nilai $N$ maka dapat diasumsikan bahwa sistem dalam keadaan \textit{steady state}, yaitu $\dot{x}=0$, sehingga persamaan state space menjadi berikut.
\begin{align}
x &= -(A-BK_s)^{-1}BNr
\end{align}
Dalam keadaan \textit{steady state}, harapannya adalah nilai refrence sama dengan nilai keluaran, $y=r$.
Sehingga dapat diperoleh persamaan $N$.
\begin{align}
N &= -[C(A-BK_s)^{-1}B]^{-1}
\end{align}
Berikut adalah hasil kalkulasi dari rumus $N$ menggunakan matriks pada persamaan~\eqref{eq:ssx},\eqref{eq:ssy}, dan \eqref{eq:ssthe}.
Sebelum $\alpha[k+1]$ digunakan, jarak $d_a[k+1]$ dan $d_a[k]$ berpengaruh dalam penentuan koordinat.
Sehingga diperlukan sedikit algoritma
\begin{align}
\alpha_i=
\begin{cases}
\alpha[k+1]& ,d_a[k+1] > d_a[k] \\
180-\alpha[k+1]& ,d_a[k+1] < d_a[k]
\end{cases}.\label{eq:init_relatif_koordinat}
\end{align}
Strategi pada gambar~\ref{fig:strategiPenentuanKoordinat} hanya berlaku apabila target ukur berhenti. Apabila dinotasikan koordinat $x_B^A$ adalah koordinat relatif robot $B$ terhadap $A$,
maka $\dot{x}_B^A$ adalah notasi kecepatan koordinat dari robot B.
Dengan menggunakan persamaan~\eqref{eq:kinematika_robot} untuk menyelesaikan koordinat dalam
keadaan robot $B$ bergerak, yaitu mengirimkan informasi kecepatan koordinatnya
ke robot $A$. Lalu robot $A$ dapat mengkalkulasi koordinat relatif dengan persamaan berikut
\caption{(a)Grafik Hardware-in-the-loop (\kutip{Jim1999}). (b) HIL Kendali Multi-Robot. }
\end{figure}
\textit{Hardware-in-the-loop} (HIL) adalah metode untuk pengembangan prangkat kendali dengan memanfaatkan model sebagai objek kendalinya. Seperti pada gambar~\ref{fig:hil_graph},
bahwa HIL terdiri dari dua prangkat, yaitu prangkat untuk menjalankan objek kendali atau dapat
disebut sebagai model/plant dan prangkat sistem kontrolnya, dalam kasus ini sistem kontrol menggunakan sistem tertanam (\textit{embedded system}).
Metode HIL, banyak digunakan oleh peneliti dalam proses pengembangan dengan pertimbangan efisiensi terhadap berbagai hal.
Seperti yang digunakan oleh~\kutip{Irwanto2018}, mengembangkan kendali UAV menggunakan HIL;
dan \kutip{QUESADA2019275}, mengembangkan prangkat pankreas buatan yang digunakan untuk mengendalikan kadar gula pada pengidap diabetes.
Pada penelitian ini akan digunakan \textit{microcontroller}(MCU) STM32F466 sebagai prangkat kendalinya.
MCU tersebut ber-arsitektur ARM Cortex-M4 dengan clock 180MHz, menampung ukuran program sampai 256K didalam memori Flash, serta fitur komunikasi standart MCU dengan lengkap.
\textit{Platform Library} yang digunakan dalam pembuatan aplikasi didalamnya adalah \textit{Mbed},
yang menyediakan berbagai banyak fungsi yang lengkap dan mudah untuk berinteraksi dengan fitur-fitur MCU. \textit{Mbed} juga menyediakan fungsi untuk mengaplikasikan RTOS (Real-time Operating System) dengan mudah dan terdokumentasi secara jelas didalam lamannya.
Pada prangkat PC akan dikembangkan program berbasis \textit{Python} yang akan
menjalankan simulasi model dan berkomunikasi dengan MCU secara \textit{real-time}.
Program \textit{Python} akan menjalankan model pada persamaan~\eqref{eq:ss1}-\eqref{eq:ss2}
dengan metode yang dijabarkan pada sub bab~\ref{bab:solusi_ODE}.
Dapat diperhatikan pada gambar~\ref{fig:hil_graph_1}, pada HIL untuk kendali multi robot akan
menggunakan tiga kendali untuk mempresentasikan tiga robot.
Setiap prangkat pengendali akan saling terhubung satu sama lain dan semua prangkat pengendali terhubung dengan prangkat PC.
Komunikasi antar prangkat pengendali akan digunakan untuk pertukaran informasi.
Sedangkan komunikasi dengan PC akan mempresentasikan aktuator dan sensor untuk setiap prangkat
kendali. PC akan merekam setiap keluaran dari model dan masukan dari setiap prangkat kendali
sebagai tampilan pergerakan robotnya.
\subsection{Kestabilan Model}
Pada persamaan~\eqref{eq:disstab} apabila model dikalkulasi akan bergantung dengan besarnya \textit{step size}, $h$.
Oleh karena itu, setelah persamaan~\eqref{eq:ss1}-\eqref{eq:ss2} dilakukan parameterisasi harus dilakukan penentuan \textit{step size} agar model tersebut stabil dalam mensimulasikan modelnya.
Penentuan \textit{step size} harus berdasarkan kriteria kestabilan pada gamabar~\ref{fig:explicit_euler}.
Apabila didefinisi ulang \textit{state} pada persamaan~\eqref{eq:ss1}-\eqref{eq:ss2} dengan
Pengali $sgn(.)$ bersifat penambah dari sistem, maka dalam penentuan kestabilan ini akan dianggap penambah dari matriks sistem.
\begin{align}
x[k+1] & = (I + (A+K).h).x[k] + B.h.u[k]. \\
\end{align}
Kriteria kestabilan akan bergantung dari hasil penentuan $h$ pada $I+(A+K)h~=~\Lambda$.
Untuk semua nilai $\lambda$ pada matriks $\Lambda$ harus memenuhi kriteris $\lambda\leq1$.
Dimungkinkan akan mengalami kebingungan ketika menentukan besar $h$,
akan tetapi nantinya persamaan ini akan diterapkan dan diselesaikan oleh komputer.
Alangkah baiknya apabila diidentifikasi terlebih dahulu konsumsi waktu yang dibutuhkan untuk menyelesaikan
satu iterasi dari persamaan tersebut.
Setelah dilakukan identifikasi, waktu yang dibutuhkan untuk satu kali iterasi berkisar $0.001$ ms (Pembulatan).
Sehingga penentuan \textit{step size} sebesar $0.1$ ms sangat dimungkinkan, dengan pertimbangan
sisa dari waktu yang digunakan kalkulasi dapat digunakan untuk waktu \textit{idle} dan menjalankan program yang lain. Berikut adalah matriks $\Lambda$ setelah dikalkulasi menggunakan $h=0.1$
\begin{align*}
\Lambda = \begin{bmatrix}
0.18367 & 0.00000 & 0.00000 \\
0.00000 & 0.22900 & 0.00000 \\
0.00000 & 0.00000 & 0.58920 \\
\end{bmatrix}.
\end{align*}
Terbukti bahwa semua nilai item didalam matriks kurang dari sama dengan satu.
Sehingga menggunakan algoritma \textit{Expilicit Euler} sudah cukup untuk menjalankan model robot \textit{omni 3-wheel} sebagai model \textit{holonomic} yang akan digunakan untuk percobaan kendali multi robot.
Hasil plot dari simulasi model dapat dilihat pada gambar~\ref{fig:sim_model}.