Finding a transformation between a positional and an acceleration vectors

The name of the pictureThe name of the pictureThe name of the pictureClash Royale CLAN TAG#URR8PPP











up vote
0
down vote

favorite












I'm trying to solve the following problem. I have two sensors sticked together. The first one gives its positional data (x, y, z) in meters in a custom coordinate system with its a certain origin in a real world. The second sensor is an accelerometer which gives its acceleration data (m/s2) in a North East Down (NED) coordinate system. Now what I need to do is to transform all the incoming data from the accelerometer to the custom coordinate system of the positional data sensor.



I'm not a hundred percent sure if it's even mathematically possible, so that would be the first question. Is it possible? If it is, what would I need to do? What mathematical or algorithmic methods could be usefull here? So far I haven't found anything useful for this particular example.



I was thinking about some kind of a calibration procedure, where a person would move with the whole device. While this the required transformations would be calculated. I wasn't able to think of anything specific, so I hope someone can help me here or direct me to the right course. Any suggestions (for mathematic methods, articles, literature, algorithms etc.) would be appreciated.



(Also I wasn't completely sure about posting the question to this forum, but it's kind of a mathematic problem.)







share|cite|improve this question

























    up vote
    0
    down vote

    favorite












    I'm trying to solve the following problem. I have two sensors sticked together. The first one gives its positional data (x, y, z) in meters in a custom coordinate system with its a certain origin in a real world. The second sensor is an accelerometer which gives its acceleration data (m/s2) in a North East Down (NED) coordinate system. Now what I need to do is to transform all the incoming data from the accelerometer to the custom coordinate system of the positional data sensor.



    I'm not a hundred percent sure if it's even mathematically possible, so that would be the first question. Is it possible? If it is, what would I need to do? What mathematical or algorithmic methods could be usefull here? So far I haven't found anything useful for this particular example.



    I was thinking about some kind of a calibration procedure, where a person would move with the whole device. While this the required transformations would be calculated. I wasn't able to think of anything specific, so I hope someone can help me here or direct me to the right course. Any suggestions (for mathematic methods, articles, literature, algorithms etc.) would be appreciated.



    (Also I wasn't completely sure about posting the question to this forum, but it's kind of a mathematic problem.)







    share|cite|improve this question























      up vote
      0
      down vote

      favorite









      up vote
      0
      down vote

      favorite











      I'm trying to solve the following problem. I have two sensors sticked together. The first one gives its positional data (x, y, z) in meters in a custom coordinate system with its a certain origin in a real world. The second sensor is an accelerometer which gives its acceleration data (m/s2) in a North East Down (NED) coordinate system. Now what I need to do is to transform all the incoming data from the accelerometer to the custom coordinate system of the positional data sensor.



      I'm not a hundred percent sure if it's even mathematically possible, so that would be the first question. Is it possible? If it is, what would I need to do? What mathematical or algorithmic methods could be usefull here? So far I haven't found anything useful for this particular example.



      I was thinking about some kind of a calibration procedure, where a person would move with the whole device. While this the required transformations would be calculated. I wasn't able to think of anything specific, so I hope someone can help me here or direct me to the right course. Any suggestions (for mathematic methods, articles, literature, algorithms etc.) would be appreciated.



      (Also I wasn't completely sure about posting the question to this forum, but it's kind of a mathematic problem.)







      share|cite|improve this question













      I'm trying to solve the following problem. I have two sensors sticked together. The first one gives its positional data (x, y, z) in meters in a custom coordinate system with its a certain origin in a real world. The second sensor is an accelerometer which gives its acceleration data (m/s2) in a North East Down (NED) coordinate system. Now what I need to do is to transform all the incoming data from the accelerometer to the custom coordinate system of the positional data sensor.



      I'm not a hundred percent sure if it's even mathematically possible, so that would be the first question. Is it possible? If it is, what would I need to do? What mathematical or algorithmic methods could be usefull here? So far I haven't found anything useful for this particular example.



      I was thinking about some kind of a calibration procedure, where a person would move with the whole device. While this the required transformations would be calculated. I wasn't able to think of anything specific, so I hope someone can help me here or direct me to the right course. Any suggestions (for mathematic methods, articles, literature, algorithms etc.) would be appreciated.



      (Also I wasn't completely sure about posting the question to this forum, but it's kind of a mathematic problem.)









      share|cite|improve this question












      share|cite|improve this question




      share|cite|improve this question








      edited Jul 31 at 13:32
























      asked Jul 31 at 12:43









      T.Poe

      1205




      1205




















          1 Answer
          1






          active

          oldest

          votes

















          up vote
          0
          down vote













          If I understand you correctly (your description is vague in a number of important aspects), then yes this is possible. Indeed, it is not particularly difficult. However, you do need to know how your custom coordinate system and the NED coordinate system are related. If you do not have that information, then it is impossible.



          In your custom coordinate system, you should have 3 axis vectors, $hat x, hat y, hat z$, that give the directions from the origin to the points $(1, 0, 0), (0, 1, 0), (0, 0, 1)$, respectively. When expressed in terms of your custom coordinates, these three vectors are given by $$hat x = beginbmatrix1\0\0endbmatrix_cc, quad hat y = beginbmatrix0\1\0endbmatrix_cc, quad hat z = beginbmatrix0\0\1endbmatrix_cc$$



          Similarly, the NED coordinate system has 3 axis vectors $$hat n = beginbmatrix1\0\0endbmatrix_NED, quad hat e = beginbmatrix0\1\0endbmatrix_NED, quad hat d = beginbmatrix0\0\1endbmatrix_NED$$
          when expressed in terms of the NED coordinate system.



          So far, this is of no use. But since vectors are magnitudes and directions in space, they exist in both coordinate systems. I.e., it is possible to express $$hat x = x_Nhat n + x_Ehat e + x_Dhat d\hat y = y_Nhat n + y_Ehat e + y_Dhat d\hat z = z_Nhat n + z_Ehat e + z_Dhat d$$
          That is, when expressed in NED coordinates,
          $$hat x = beginbmatrixx_N\x_E\x_Dendbmatrix_NED, quad hat y = beginbmatrixy_N\y_E\y_Dendbmatrix_NED, quad hat z = beginbmatrixz_N\z_E\z_Dendbmatrix_NED$$



          What these values $x_N, ..., z_D$ are depends on how you are defining your two coordinate systems. If you know how they are related, then you can calculate these values. These values tell you how to convert from custom coordinates to NED coordinates and back.



          If $$vec v = beginbmatrixv_x\v_y\v_zendbmatrix_cc$$ in custom coordinates, that means $$beginalignvec v &= v_x,hat x + v_y,hat y + v_z,hat z\&= v_xbeginbmatrixx_N\x_E\x_Dendbmatrix_NED + v_ybeginbmatrixy_N\y_E\y_Dendbmatrix_NED + v_zbeginbmatrixz_N\z_E\z_Dendbmatrix_NED\&=beginbmatrixx_N & y_N & z_N\x_E & y_E & z_E\x_D & y_D & z_Dendbmatrix_NEDbeginbmatrixv_x\v_y\v_zendbmatrixendalign$$
          Thus when expressed in NED coordinates, $$vec v = beginbmatrixv_N\v_E\v_Dendbmatrix_NED = beginbmatrixx_N & y_N & z_N\x_E & y_E & z_E\x_D & y_D & z_Dendbmatrixbeginbmatrixv_x\v_y\v_zendbmatrix_cc$$



          The matrix $$M = beginbmatrixx_N & y_N & z_N\x_E & y_E & z_E\x_D & y_D & z_Dendbmatrix$$
          converts custom coordinate vectors into NED vectors.



          The same principle works the other way. If when expressed in terms of custom coordinates $$hat n = beginbmatrixn_x\n_y\n_zendbmatrix_cc,quad hat e = beginbmatrixe_x\e_y\e_zendbmatrix_cc, quad hat d = beginbmatrixd_x\d_y\d_zendbmatrix_cc$$ then the matrix $$N = beginbmatrixn_x & e_x & d_x\n_y & e_y & d_y\n_z & e_z & d_zendbmatrix$$
          converts NED coordinate vectors into custom coordinate vectors.



          In general $M$ and $N$ have to be inverse matrices. If you convert $vec v$ from custom coordinates to NED coordinates, then back to custom coordinates again, then you should get the exact some coordinates back. So $NM = I$ and similarly $MN = I$. If both the custom coordinates and NED coordinates are orthonormal - i.e. all vectors $hat x, hat y, hat z, hat n, hat e, hat d$ are of length 1, and $hat x, hat y, hat z$ are perpendicular to each other, and $hat n, hat e, hat d$ are also perpendicular to each other - then it turns out that the two matrices $M$ and $N$ are just transposes: $M = N^T$ and $N = M^T$, which makes it particularly easy to find one if you know the other.



          The NED system is orthonormal. Without knowing how your custom coordinate system is defined, I cannot say for sure, but orthonormal coordinate systems are vastly preferred to those that are not, so it is likely to be as well.






          share|cite|improve this answer





















            Your Answer




            StackExchange.ifUsing("editor", function ()
            return StackExchange.using("mathjaxEditing", function ()
            StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix)
            StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
            );
            );
            , "mathjax-editing");

            StackExchange.ready(function()
            var channelOptions =
            tags: "".split(" "),
            id: "69"
            ;
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function()
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled)
            StackExchange.using("snippets", function()
            createEditor();
            );

            else
            createEditor();

            );

            function createEditor()
            StackExchange.prepareEditor(
            heartbeatType: 'answer',
            convertImagesToLinks: true,
            noModals: false,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            bindNavPrevention: true,
            postfix: "",
            noCode: true, onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            );



            );








             

            draft saved


            draft discarded


















            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f2868005%2ffinding-a-transformation-between-a-positional-and-an-acceleration-vectors%23new-answer', 'question_page');

            );

            Post as a guest






























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes








            up vote
            0
            down vote













            If I understand you correctly (your description is vague in a number of important aspects), then yes this is possible. Indeed, it is not particularly difficult. However, you do need to know how your custom coordinate system and the NED coordinate system are related. If you do not have that information, then it is impossible.



            In your custom coordinate system, you should have 3 axis vectors, $hat x, hat y, hat z$, that give the directions from the origin to the points $(1, 0, 0), (0, 1, 0), (0, 0, 1)$, respectively. When expressed in terms of your custom coordinates, these three vectors are given by $$hat x = beginbmatrix1\0\0endbmatrix_cc, quad hat y = beginbmatrix0\1\0endbmatrix_cc, quad hat z = beginbmatrix0\0\1endbmatrix_cc$$



            Similarly, the NED coordinate system has 3 axis vectors $$hat n = beginbmatrix1\0\0endbmatrix_NED, quad hat e = beginbmatrix0\1\0endbmatrix_NED, quad hat d = beginbmatrix0\0\1endbmatrix_NED$$
            when expressed in terms of the NED coordinate system.



            So far, this is of no use. But since vectors are magnitudes and directions in space, they exist in both coordinate systems. I.e., it is possible to express $$hat x = x_Nhat n + x_Ehat e + x_Dhat d\hat y = y_Nhat n + y_Ehat e + y_Dhat d\hat z = z_Nhat n + z_Ehat e + z_Dhat d$$
            That is, when expressed in NED coordinates,
            $$hat x = beginbmatrixx_N\x_E\x_Dendbmatrix_NED, quad hat y = beginbmatrixy_N\y_E\y_Dendbmatrix_NED, quad hat z = beginbmatrixz_N\z_E\z_Dendbmatrix_NED$$



            What these values $x_N, ..., z_D$ are depends on how you are defining your two coordinate systems. If you know how they are related, then you can calculate these values. These values tell you how to convert from custom coordinates to NED coordinates and back.



            If $$vec v = beginbmatrixv_x\v_y\v_zendbmatrix_cc$$ in custom coordinates, that means $$beginalignvec v &= v_x,hat x + v_y,hat y + v_z,hat z\&= v_xbeginbmatrixx_N\x_E\x_Dendbmatrix_NED + v_ybeginbmatrixy_N\y_E\y_Dendbmatrix_NED + v_zbeginbmatrixz_N\z_E\z_Dendbmatrix_NED\&=beginbmatrixx_N & y_N & z_N\x_E & y_E & z_E\x_D & y_D & z_Dendbmatrix_NEDbeginbmatrixv_x\v_y\v_zendbmatrixendalign$$
            Thus when expressed in NED coordinates, $$vec v = beginbmatrixv_N\v_E\v_Dendbmatrix_NED = beginbmatrixx_N & y_N & z_N\x_E & y_E & z_E\x_D & y_D & z_Dendbmatrixbeginbmatrixv_x\v_y\v_zendbmatrix_cc$$



            The matrix $$M = beginbmatrixx_N & y_N & z_N\x_E & y_E & z_E\x_D & y_D & z_Dendbmatrix$$
            converts custom coordinate vectors into NED vectors.



            The same principle works the other way. If when expressed in terms of custom coordinates $$hat n = beginbmatrixn_x\n_y\n_zendbmatrix_cc,quad hat e = beginbmatrixe_x\e_y\e_zendbmatrix_cc, quad hat d = beginbmatrixd_x\d_y\d_zendbmatrix_cc$$ then the matrix $$N = beginbmatrixn_x & e_x & d_x\n_y & e_y & d_y\n_z & e_z & d_zendbmatrix$$
            converts NED coordinate vectors into custom coordinate vectors.



            In general $M$ and $N$ have to be inverse matrices. If you convert $vec v$ from custom coordinates to NED coordinates, then back to custom coordinates again, then you should get the exact some coordinates back. So $NM = I$ and similarly $MN = I$. If both the custom coordinates and NED coordinates are orthonormal - i.e. all vectors $hat x, hat y, hat z, hat n, hat e, hat d$ are of length 1, and $hat x, hat y, hat z$ are perpendicular to each other, and $hat n, hat e, hat d$ are also perpendicular to each other - then it turns out that the two matrices $M$ and $N$ are just transposes: $M = N^T$ and $N = M^T$, which makes it particularly easy to find one if you know the other.



            The NED system is orthonormal. Without knowing how your custom coordinate system is defined, I cannot say for sure, but orthonormal coordinate systems are vastly preferred to those that are not, so it is likely to be as well.






            share|cite|improve this answer

























              up vote
              0
              down vote













              If I understand you correctly (your description is vague in a number of important aspects), then yes this is possible. Indeed, it is not particularly difficult. However, you do need to know how your custom coordinate system and the NED coordinate system are related. If you do not have that information, then it is impossible.



              In your custom coordinate system, you should have 3 axis vectors, $hat x, hat y, hat z$, that give the directions from the origin to the points $(1, 0, 0), (0, 1, 0), (0, 0, 1)$, respectively. When expressed in terms of your custom coordinates, these three vectors are given by $$hat x = beginbmatrix1\0\0endbmatrix_cc, quad hat y = beginbmatrix0\1\0endbmatrix_cc, quad hat z = beginbmatrix0\0\1endbmatrix_cc$$



              Similarly, the NED coordinate system has 3 axis vectors $$hat n = beginbmatrix1\0\0endbmatrix_NED, quad hat e = beginbmatrix0\1\0endbmatrix_NED, quad hat d = beginbmatrix0\0\1endbmatrix_NED$$
              when expressed in terms of the NED coordinate system.



              So far, this is of no use. But since vectors are magnitudes and directions in space, they exist in both coordinate systems. I.e., it is possible to express $$hat x = x_Nhat n + x_Ehat e + x_Dhat d\hat y = y_Nhat n + y_Ehat e + y_Dhat d\hat z = z_Nhat n + z_Ehat e + z_Dhat d$$
              That is, when expressed in NED coordinates,
              $$hat x = beginbmatrixx_N\x_E\x_Dendbmatrix_NED, quad hat y = beginbmatrixy_N\y_E\y_Dendbmatrix_NED, quad hat z = beginbmatrixz_N\z_E\z_Dendbmatrix_NED$$



              What these values $x_N, ..., z_D$ are depends on how you are defining your two coordinate systems. If you know how they are related, then you can calculate these values. These values tell you how to convert from custom coordinates to NED coordinates and back.



              If $$vec v = beginbmatrixv_x\v_y\v_zendbmatrix_cc$$ in custom coordinates, that means $$beginalignvec v &= v_x,hat x + v_y,hat y + v_z,hat z\&= v_xbeginbmatrixx_N\x_E\x_Dendbmatrix_NED + v_ybeginbmatrixy_N\y_E\y_Dendbmatrix_NED + v_zbeginbmatrixz_N\z_E\z_Dendbmatrix_NED\&=beginbmatrixx_N & y_N & z_N\x_E & y_E & z_E\x_D & y_D & z_Dendbmatrix_NEDbeginbmatrixv_x\v_y\v_zendbmatrixendalign$$
              Thus when expressed in NED coordinates, $$vec v = beginbmatrixv_N\v_E\v_Dendbmatrix_NED = beginbmatrixx_N & y_N & z_N\x_E & y_E & z_E\x_D & y_D & z_Dendbmatrixbeginbmatrixv_x\v_y\v_zendbmatrix_cc$$



              The matrix $$M = beginbmatrixx_N & y_N & z_N\x_E & y_E & z_E\x_D & y_D & z_Dendbmatrix$$
              converts custom coordinate vectors into NED vectors.



              The same principle works the other way. If when expressed in terms of custom coordinates $$hat n = beginbmatrixn_x\n_y\n_zendbmatrix_cc,quad hat e = beginbmatrixe_x\e_y\e_zendbmatrix_cc, quad hat d = beginbmatrixd_x\d_y\d_zendbmatrix_cc$$ then the matrix $$N = beginbmatrixn_x & e_x & d_x\n_y & e_y & d_y\n_z & e_z & d_zendbmatrix$$
              converts NED coordinate vectors into custom coordinate vectors.



              In general $M$ and $N$ have to be inverse matrices. If you convert $vec v$ from custom coordinates to NED coordinates, then back to custom coordinates again, then you should get the exact some coordinates back. So $NM = I$ and similarly $MN = I$. If both the custom coordinates and NED coordinates are orthonormal - i.e. all vectors $hat x, hat y, hat z, hat n, hat e, hat d$ are of length 1, and $hat x, hat y, hat z$ are perpendicular to each other, and $hat n, hat e, hat d$ are also perpendicular to each other - then it turns out that the two matrices $M$ and $N$ are just transposes: $M = N^T$ and $N = M^T$, which makes it particularly easy to find one if you know the other.



              The NED system is orthonormal. Without knowing how your custom coordinate system is defined, I cannot say for sure, but orthonormal coordinate systems are vastly preferred to those that are not, so it is likely to be as well.






              share|cite|improve this answer























                up vote
                0
                down vote










                up vote
                0
                down vote









                If I understand you correctly (your description is vague in a number of important aspects), then yes this is possible. Indeed, it is not particularly difficult. However, you do need to know how your custom coordinate system and the NED coordinate system are related. If you do not have that information, then it is impossible.



                In your custom coordinate system, you should have 3 axis vectors, $hat x, hat y, hat z$, that give the directions from the origin to the points $(1, 0, 0), (0, 1, 0), (0, 0, 1)$, respectively. When expressed in terms of your custom coordinates, these three vectors are given by $$hat x = beginbmatrix1\0\0endbmatrix_cc, quad hat y = beginbmatrix0\1\0endbmatrix_cc, quad hat z = beginbmatrix0\0\1endbmatrix_cc$$



                Similarly, the NED coordinate system has 3 axis vectors $$hat n = beginbmatrix1\0\0endbmatrix_NED, quad hat e = beginbmatrix0\1\0endbmatrix_NED, quad hat d = beginbmatrix0\0\1endbmatrix_NED$$
                when expressed in terms of the NED coordinate system.



                So far, this is of no use. But since vectors are magnitudes and directions in space, they exist in both coordinate systems. I.e., it is possible to express $$hat x = x_Nhat n + x_Ehat e + x_Dhat d\hat y = y_Nhat n + y_Ehat e + y_Dhat d\hat z = z_Nhat n + z_Ehat e + z_Dhat d$$
                That is, when expressed in NED coordinates,
                $$hat x = beginbmatrixx_N\x_E\x_Dendbmatrix_NED, quad hat y = beginbmatrixy_N\y_E\y_Dendbmatrix_NED, quad hat z = beginbmatrixz_N\z_E\z_Dendbmatrix_NED$$



                What these values $x_N, ..., z_D$ are depends on how you are defining your two coordinate systems. If you know how they are related, then you can calculate these values. These values tell you how to convert from custom coordinates to NED coordinates and back.



                If $$vec v = beginbmatrixv_x\v_y\v_zendbmatrix_cc$$ in custom coordinates, that means $$beginalignvec v &= v_x,hat x + v_y,hat y + v_z,hat z\&= v_xbeginbmatrixx_N\x_E\x_Dendbmatrix_NED + v_ybeginbmatrixy_N\y_E\y_Dendbmatrix_NED + v_zbeginbmatrixz_N\z_E\z_Dendbmatrix_NED\&=beginbmatrixx_N & y_N & z_N\x_E & y_E & z_E\x_D & y_D & z_Dendbmatrix_NEDbeginbmatrixv_x\v_y\v_zendbmatrixendalign$$
                Thus when expressed in NED coordinates, $$vec v = beginbmatrixv_N\v_E\v_Dendbmatrix_NED = beginbmatrixx_N & y_N & z_N\x_E & y_E & z_E\x_D & y_D & z_Dendbmatrixbeginbmatrixv_x\v_y\v_zendbmatrix_cc$$



                The matrix $$M = beginbmatrixx_N & y_N & z_N\x_E & y_E & z_E\x_D & y_D & z_Dendbmatrix$$
                converts custom coordinate vectors into NED vectors.



                The same principle works the other way. If when expressed in terms of custom coordinates $$hat n = beginbmatrixn_x\n_y\n_zendbmatrix_cc,quad hat e = beginbmatrixe_x\e_y\e_zendbmatrix_cc, quad hat d = beginbmatrixd_x\d_y\d_zendbmatrix_cc$$ then the matrix $$N = beginbmatrixn_x & e_x & d_x\n_y & e_y & d_y\n_z & e_z & d_zendbmatrix$$
                converts NED coordinate vectors into custom coordinate vectors.



                In general $M$ and $N$ have to be inverse matrices. If you convert $vec v$ from custom coordinates to NED coordinates, then back to custom coordinates again, then you should get the exact some coordinates back. So $NM = I$ and similarly $MN = I$. If both the custom coordinates and NED coordinates are orthonormal - i.e. all vectors $hat x, hat y, hat z, hat n, hat e, hat d$ are of length 1, and $hat x, hat y, hat z$ are perpendicular to each other, and $hat n, hat e, hat d$ are also perpendicular to each other - then it turns out that the two matrices $M$ and $N$ are just transposes: $M = N^T$ and $N = M^T$, which makes it particularly easy to find one if you know the other.



                The NED system is orthonormal. Without knowing how your custom coordinate system is defined, I cannot say for sure, but orthonormal coordinate systems are vastly preferred to those that are not, so it is likely to be as well.






                share|cite|improve this answer













                If I understand you correctly (your description is vague in a number of important aspects), then yes this is possible. Indeed, it is not particularly difficult. However, you do need to know how your custom coordinate system and the NED coordinate system are related. If you do not have that information, then it is impossible.



                In your custom coordinate system, you should have 3 axis vectors, $hat x, hat y, hat z$, that give the directions from the origin to the points $(1, 0, 0), (0, 1, 0), (0, 0, 1)$, respectively. When expressed in terms of your custom coordinates, these three vectors are given by $$hat x = beginbmatrix1\0\0endbmatrix_cc, quad hat y = beginbmatrix0\1\0endbmatrix_cc, quad hat z = beginbmatrix0\0\1endbmatrix_cc$$



                Similarly, the NED coordinate system has 3 axis vectors $$hat n = beginbmatrix1\0\0endbmatrix_NED, quad hat e = beginbmatrix0\1\0endbmatrix_NED, quad hat d = beginbmatrix0\0\1endbmatrix_NED$$
                when expressed in terms of the NED coordinate system.



                So far, this is of no use. But since vectors are magnitudes and directions in space, they exist in both coordinate systems. I.e., it is possible to express $$hat x = x_Nhat n + x_Ehat e + x_Dhat d\hat y = y_Nhat n + y_Ehat e + y_Dhat d\hat z = z_Nhat n + z_Ehat e + z_Dhat d$$
                That is, when expressed in NED coordinates,
                $$hat x = beginbmatrixx_N\x_E\x_Dendbmatrix_NED, quad hat y = beginbmatrixy_N\y_E\y_Dendbmatrix_NED, quad hat z = beginbmatrixz_N\z_E\z_Dendbmatrix_NED$$



                What these values $x_N, ..., z_D$ are depends on how you are defining your two coordinate systems. If you know how they are related, then you can calculate these values. These values tell you how to convert from custom coordinates to NED coordinates and back.



                If $$vec v = beginbmatrixv_x\v_y\v_zendbmatrix_cc$$ in custom coordinates, that means $$beginalignvec v &= v_x,hat x + v_y,hat y + v_z,hat z\&= v_xbeginbmatrixx_N\x_E\x_Dendbmatrix_NED + v_ybeginbmatrixy_N\y_E\y_Dendbmatrix_NED + v_zbeginbmatrixz_N\z_E\z_Dendbmatrix_NED\&=beginbmatrixx_N & y_N & z_N\x_E & y_E & z_E\x_D & y_D & z_Dendbmatrix_NEDbeginbmatrixv_x\v_y\v_zendbmatrixendalign$$
                Thus when expressed in NED coordinates, $$vec v = beginbmatrixv_N\v_E\v_Dendbmatrix_NED = beginbmatrixx_N & y_N & z_N\x_E & y_E & z_E\x_D & y_D & z_Dendbmatrixbeginbmatrixv_x\v_y\v_zendbmatrix_cc$$



                The matrix $$M = beginbmatrixx_N & y_N & z_N\x_E & y_E & z_E\x_D & y_D & z_Dendbmatrix$$
                converts custom coordinate vectors into NED vectors.



                The same principle works the other way. If when expressed in terms of custom coordinates $$hat n = beginbmatrixn_x\n_y\n_zendbmatrix_cc,quad hat e = beginbmatrixe_x\e_y\e_zendbmatrix_cc, quad hat d = beginbmatrixd_x\d_y\d_zendbmatrix_cc$$ then the matrix $$N = beginbmatrixn_x & e_x & d_x\n_y & e_y & d_y\n_z & e_z & d_zendbmatrix$$
                converts NED coordinate vectors into custom coordinate vectors.



                In general $M$ and $N$ have to be inverse matrices. If you convert $vec v$ from custom coordinates to NED coordinates, then back to custom coordinates again, then you should get the exact some coordinates back. So $NM = I$ and similarly $MN = I$. If both the custom coordinates and NED coordinates are orthonormal - i.e. all vectors $hat x, hat y, hat z, hat n, hat e, hat d$ are of length 1, and $hat x, hat y, hat z$ are perpendicular to each other, and $hat n, hat e, hat d$ are also perpendicular to each other - then it turns out that the two matrices $M$ and $N$ are just transposes: $M = N^T$ and $N = M^T$, which makes it particularly easy to find one if you know the other.



                The NED system is orthonormal. Without knowing how your custom coordinate system is defined, I cannot say for sure, but orthonormal coordinate systems are vastly preferred to those that are not, so it is likely to be as well.







                share|cite|improve this answer













                share|cite|improve this answer



                share|cite|improve this answer











                answered Aug 1 at 0:38









                Paul Sinclair

                18.6k21439




                18.6k21439






















                     

                    draft saved


                    draft discarded


























                     


                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function ()
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f2868005%2ffinding-a-transformation-between-a-positional-and-an-acceleration-vectors%23new-answer', 'question_page');

                    );

                    Post as a guest













































































                    Comments

                    Popular posts from this blog

                    Relationship between determinant of matrix and determinant of adjoint?

                    Color the edges and diagonals of a regular polygon

                    What is the equation of a 3D cone with generalised tilt?