diff --git a/main.c b/main.c
index 22dbe1d45c98412e59f0238437ca0a33972c7977..5683dca1c9a1d7fd0e47be2e24c4d07504724615 100644
--- a/main.c
+++ b/main.c
@@ -20,6 +20,24 @@ double menorDistancia (int xa, int ya, int xb,int yb){
   return (sqrt((xb-xa)*(xb-xa) + (yb-ya)*(yb-ya)));
 }
 
+// Retorna o ângulo em relação a origem (0,0)
+double angleFromOrigin(int x, int y) {
+    /**
+     * Y
+     * ^
+     * |--*
+     * | /|
+     * |/ |
+     * +----------> X
+     * |
+     * 1. Sabendo os valores de x e y, calculamos a hipotenusa
+     * 2. Com o valor de X e da Hip, temos o seno do ângulo formado entre a hipotenusa e o eixo X
+     * 3. Fazemos a função arco seno para pegar o valor do ângulo (em radianos)
+     */
+    double hip = x*x + y*y;
+    return asin(x/hip);
+}
+
 int main(int argc, char const *argv[]) {
   int t_size;
   Tuple *tuplas;
@@ -41,10 +59,10 @@ int main(int argc, char const *argv[]) {
       scanf("%d %d %d", &tuplas[i].x, &tuplas[i].y, &tuplas[i].t);
   }
 
-  // calcular velocidade das rodas entre cada coordenada
   for(int i=0; i < t_size; ++i) {
-      // pega o ângulo entre a posição do robô e o próximo ponto
-      // gira o robô
+      // Pega o ângulo entre a posição do robô e o próximo ponto
+      double turnAngle = angleFromOrigin(tuplas[i].x, tuplas[i].y) - r.theta;
+      // Gira o robô
       // calcula a velocidade para as rodas
   }
   // gerar tabela e grafico