Main Content

Esta página se ha traducido mediante traducción automática. Haga clic aquí para ver la última versión en inglés.

linaccel

Aceleración lineal a partir de la lectura del acelerómetro

Desde R2023b

Descripción

acc = linaccel(orientations,accReadings) devuelve las aceleraciones lineales del acelerómetro en el marco de referencia noreste hacia abajo (NED) en función de las lecturas del acelerómetro y sus orientaciones.

ejemplo

acc = linaccel(___,RF) especifica el marco de referencia como la referencia "NED" (noreste-abajo) o "ENU" (este-norte-arriba) marco.

Ejemplos

contraer todo

Suponga que el marco de medición del acelerómetro está exactamente alineado con el marco NED local y defina su orientación en cuaterniones.

quat0 = ones(1,"quaternion")
quat0 = quaternion
     1 + 0i + 0j + 0k

Obtenga la aceleración lineal usando la función linaccel la lectura de aceleración de 0. Como era de esperar, el vector de aceleración lineal contiene sólo la aceleración gravitacional.

acc0 = linaccel(quat0,zeros(1,3));
disp(acc0)
         0         0    9.8100

A continuación, obtenga la aceleración lineal con la lectura de [1 1 1]m/s2.

acc1 = linaccel(quat0,ones(1,3));
disp(acc1)
   -1.0000   -1.0000    8.8100

Finalmente, cree un vector de cuaterniones aleatorios y algunas lecturas aleatorias del acelerómetro. Obtenga las aceleraciones lineales correspondientes.

rng(2023) % For repeatable results
quats = randrot(10,1);
accReadings = randn(10,3);
linearAccs = linaccel(quats,accReadings)
linearAccs = 10×3

   -1.1666    1.3727   10.5044
   -0.6536    0.8999    9.6202
   -0.1499   -1.2073   11.3756
    1.7606   -0.1023    8.4418
   -0.4588   -0.2137   10.0868
    0.5909   -0.4882    9.5781
   -1.8862    0.7566   10.3921
   -0.8211   -0.1111   10.3667
   -1.4470    1.7535    8.9106
   -0.6821   -1.0202    9.4492

Argumentos de entrada

contraer todo

Orientaciones del acelerómetro con respecto al marco de referencia, especificadas como un N-por-1 vector de quaternion objetos o un arreglo de matrices de rotación de 3 por 3 por N. N es el número total de orientaciones.

Lecturas del acelerómetro, especificadas como una matriz de valor real N-por 3 en m/s2. El número de lecturas N debe ser igual al número de orientaciones en orientations.

Sugerencia

La función supone que las lecturas del acelerómetro no contienen la aceleración gravitacional.

Marco de referencia, especificado como "NED" para el marco noreste abajo o "ENU" para el marco este-norte arriba.

Tipos de datos: string | char

Argumentos de salida

contraer todo

Aceleraciones lineales, devueltas como una matriz de valor real N-por-3. N es el número total de lecturas del acelerómetro especificadas en accReadings. Cada fila de la matriz es un vector de aceleración lineal.

Capacidades ampliadas

Generación de código C/C++
Genere código C y C++ mediante MATLAB® Coder™.

Historial de versiones

Introducido en R2023b

Consulte también

| |