2 minute read

Nos adentramos en la decimocuarta semana del blog. Los retos indicados son:

Trastear con D1

Trastear con D1

El principal objetivo de la siguiente semana es observar el funcionamiento de Cannon en el despliegue D1.

Podemos encontrar por separado las físicas básicas que afectan a la gravedad, el rozamiento y los choques y los movimientos autonomos de los robots.

Lectura TFG Natalia

  • Diseño motor de físicas complementario

Se encarga de aplicar fuerzas autónomas al robot, ya que Cannon se encarga del resto (gravedad, colisión, fricción). Existen dos niveles:

Nivel superior

Conecta con el cerebro software del robot. ¿De que fichero se trata?

Existen instrucciones de posición (Se moverá a la velocidad objetivo hasta alcanzar la posición indicada en la instrucción) y velocidad (El movimiento no finaliza). Aunque esta basado en controlador PD que traduce las velocidades en la fuerza que se ha de aplicar al robot para alcanzar la velocidad deseada.

Nivel inferior

Entiende las fuerzas, ya que a través de conocer la masa y el movimiento de inercia las fuerzas pueden traducirse en aceleración. ¿De que fichero se trata?

  • Timing

Permite que el motor sea complementario y no completo.

Motor de físicas Se ejecuta cada 20ms mediante un timeout Cannon Actualiza sus físicas en cada iteración del bucle

Como puedo saber si el motor existente podría funcionar con Ammo sin realizar cambios importantes

Motor de físicas complementario y Cannon

Tras repasar en diversas ocasiones los diferentes ficheros he observado como no hay un fichero en el que se definan las físicas para los robots, sino que parece que al tratarse del motor por defecto no es necesario. Por tanto, ¿cómo puedo guiarme en la implementación de Ammo? Además, el funcionamiento de ammo es correcto en caso de que no existan robots, por tanto, el problema se encuentra en su creación.

Estudio de los diferentes ficheros

  • assets

Contiene ficheros JSON que dan lugar a las escenas. Estos ficheros han de ser analizados para su correcta creación, ya que Aframe originalmente es un fichero HTML.

  • brains

En los ficheros que se encuentran en su interior parece que esta el worker, es decir, permite la comunicación.

  • javascript-editor

Aqui podemos encontrar la página principal (HTML), componentes de la misma y un JS que da lugar a los botones que podemos ver, entre otras cosas.

  • simcore
    • config

    Aquí se encuentrar el analizador que transforma los JSON en escenas.

    • globals
    • robots

    Considero que aquí encontramos todo lo relacionado con los robtos (incluido el motor de físicas complementario), pero ¿cómo puedo estudiarlo? No comprendo el código.

    • simulation
    • utils

    Con las carpetas anteriores me ocurre lo mismo. No se como abordarlas, ya que no comprendo el código (hay demasiados elementos).

Ficheros prescindibles en la carga de las escenas

  • robotAPIWWW
  • teleoperators

El fichero y la carpeta anterior no parecen afectar a la escena, ya que ambos han sido eliminados y no ha habido problemas. ¿Son carpetas muy relevantes?