<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Chris,</p>
    <p>Are you sure that the yaw error is being caused by the vibration
      of the lidar?  Rather than the magnetic effects of the spinning
      motor and electronics?   I've seen normal servos alter the yaw
      when driven back and forth if they are too close to the IMU.</p>
    <p>David</p>
    <p><br>
    </p>
    <div class="moz-cite-prefix">On 7/22/21 9:20 PM, Chris N via
      DPRGlist wro<br>
    </div>
    <blockquote type="cite"
cite="mid:CA++ApaVhHpQY1GL2=5JfrO4ABitm6qm5LwrRnJoLziP1bGGn9w@mail.gmail.com">
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <div dir="ltr">
        <div class="gmail_default" style="">It looks like I missed a
          great meeting this week!  I watched the recording of course.</div>
        <div class="gmail_default" style=""><br>
        </div>
        <div class="gmail_default" style="">On the topic of how
          vibration (in my case induced by my spinning lidar), impacts
          BNO085 measurements:   it's bad!</div>
        <div class="gmail_default" style=""><br>
        </div>
        <div class="gmail_default" style="">Without the lidar spinning,
          the yaw drifted only by 0.3 degrees over the course of one
          hour.</div>
        <div class="gmail_default" style="">With the lidar spinning, the
          yaw drifted by >1 degree every 30 seconds!</div>
        <div class="gmail_default" style=""><br>
        </div>
        <div class="gmail_default" style="">The robot was stationary in
          this test.</div>
        <div class="gmail_default" style=""><br>
        </div>
        <div class="gmail_default" style="">The BNO085 operating /
          reporting mode I'm using is called "Game Rotation vectors". 
          I'm not 100% sure what degree of sensor fusion - if any - is
          taking place in that mode, because this mode is optimized for
          quick response as I understand it.</div>
        <div class="gmail_default" style=""><br>
        </div>
        <div class="gmail_default" style="">I should probably  also try
          some of the other reporting modes that the BNO085 has.</div>
        <div class="gmail_default" style=""><br>
        </div>
        <div class="gmail_default" style="">I'm also wondering if I can
          address this via my own filtering.  I'm already
          post-processing the yaw output from the BNO085, because it is
          consistently off by about 2 degrees for every 360 degrees
          worth of rotation.  </div>
        <div class="gmail_default" style=""><br>
        </div>
        <div class="gmail_default" style="">So what I'm doing to
          compensate for this strange 2-degrees-per-every-360 error, is
          the following:   I look at the delta between the reported yaw
          from t(now) and the yaw from t(now-1),  multiply that with a
          constant to compensate for error issue, and then I integrate
          the new delta over time to produce my own yaw output.  </div>
        <div class="gmail_default" style=""><br>
        </div>
        <div class="gmail_default" style="">What I was thinking of
          trying is to simply throw out very small delta measurements,
          since they are likely to be due to vibration rather than
          actual robot rotation.    Of course I would be throwing away
          information and hence accuracy.    My guess is what I'll find
          is that this is too simplistic of an approach and I end up
          with an error in yaw over time because I'm throwing out too
          many small measurements.</div>
        <div class="gmail_default" style=""><br>
        </div>
        <div class="gmail_default" style="">Last week I talked about
          using foam etc to dampen the vibration.  The other solution
          that I read about online was to eliminate the source of the
          vibration - which most often is an imbalance with these
          spinning lidars.  Somebody managed - with a lot of trial and
          error apparently - to find the right spot and the right weight
          to attach to the rotating part of the lidar, and the vibration
          was mostly eliminated.  </div>
        <div class="gmail_default" style=""><br>
        </div>
        <div class="gmail_default" style="">Chris</div>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <pre class="moz-quote-pre" wrap="">_______________________________________________
DPRGlist mailing list
<a class="moz-txt-link-abbreviated" href="mailto:DPRGlist@lists.dprg.org">DPRGlist@lists.dprg.org</a>
<a class="moz-txt-link-freetext" href="http://lists.dprg.org/listinfo.cgi/dprglist-dprg.org">http://lists.dprg.org/listinfo.cgi/dprglist-dprg.org</a>
</pre>
    </blockquote>
  </body>
</html>