Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    Accelerometer Usage

    Scheduled Pinned Locked Moved
    Beta Firmware
    25
    191
    20.8k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • dc42undefined
      dc42 administrators @tecno
      last edited by

      @tecno yes, that's the LIS3DSH board that I tested with.

      Duet WiFi hardware designer and firmware engineer
      Please do not ask me for Duet support via PM or email, use the forum
      http://www.escher3d.com, https://miscsolutions.wordpress.com

      tecnoundefined 2 Replies Last reply Reply Quote 0
      • tecnoundefined
        tecno @dc42
        last edited by

        @dc42

        Thanks !

        1 Reply Last reply Reply Quote 0
        • Sotidiiundefined
          Sotidii
          last edited by Sotidii

          G1 X-20 G4 S2 M956 P121.0 S1000 A0 G4 P10 G1 X50 F20000
          

          Error: M956: Accelerometer is already collecting data

          gives an error message

          Duet 3 3.4.0-b2
          DSF
          Tool Board 1.1

          dc42undefined 1 Reply Last reply Reply Quote 0
          • dc42undefined
            dc42 administrators @Sotidii
            last edited by dc42

            @sotidii please send M115 B# where # is the CAN address of the tool board, to verify the tool board firmware version. There was a bug with similar symptoms in unofficial beta builds of the tool board, but it was fixed in the official beta release.

            Duet WiFi hardware designer and firmware engineer
            Please do not ask me for Duet support via PM or email, use the forum
            http://www.escher3d.com, https://miscsolutions.wordpress.com

            Sotidiiundefined 1 Reply Last reply Reply Quote 0
            • Sotidiiundefined
              Sotidii @dc42
              last edited by

              @dc42
              M115 B 121
              FIRMWARE_NAME: RepRapFirmware for Duet 3 MB6HC FIRMWARE_VERSION: 3.4.0beta2 ELECTRONICS: Duet 3 MB6HC v0.6 or 1.0 FIRMWARE_DATE: 2021-08-03 12:42:44

              dc42undefined 1 Reply Last reply Reply Quote 0
              • dc42undefined
                dc42 administrators @Sotidii
                last edited by

                @sotidii said in Accelerometer Usage:

                @dc42
                M115 B 121
                FIRMWARE_NAME: RepRapFirmware for Duet 3 MB6HC FIRMWARE_VERSION: 3.4.0beta2 ELECTRONICS: Duet 3 MB6HC v0.6 or 1.0 FIRMWARE_DATE: 2021-08-03 12:42:44

                Run the command again, but don't put a space between the B and the 121.

                Duet WiFi hardware designer and firmware engineer
                Please do not ask me for Duet support via PM or email, use the forum
                http://www.escher3d.com, https://miscsolutions.wordpress.com

                Sotidiiundefined 1 Reply Last reply Reply Quote 0
                • Sotidiiundefined
                  Sotidii @dc42
                  last edited by

                  @dc42
                  M115 B121
                  Duet TOOL1LC firmware version 3.3RC3 (2021-05-26 12:30:20)

                  dc42undefined 1 Reply Last reply Reply Quote 0
                  • dc42undefined
                    dc42 administrators @Sotidii
                    last edited by

                    @sotidii said in Accelerometer Usage:

                    Duet TOOL1LC firmware version 3.3RC3 (2021-05-26 12:30:20)

                    Please upgrade the tool board firmware to version 3.4beta2.

                    Duet WiFi hardware designer and firmware engineer
                    Please do not ask me for Duet support via PM or email, use the forum
                    http://www.escher3d.com, https://miscsolutions.wordpress.com

                    1 Reply Last reply Reply Quote 0
                    • Sotidiiundefined
                      Sotidii
                      last edited by

                      @dc42 OK!

                      1 Reply Last reply Reply Quote 0
                      • CCS86undefined
                        CCS86 @dc42
                        last edited by CCS86

                        @dc42 said in Accelerometer Usage:

                        @ccs86 said in Accelerometer Usage:

                        @dc42 said in Accelerometer Usage:

                        Reading one less sample doesn't help. I can only assume that communicating with the accelerometer creates an electrical disturbance that slightly affects the reading.

                        If you read only 10 samples at a time, do the peaks appear at that new interval?

                        I didn't try that. I did find that the LIS3DSH has smaller peaks are multiples of 20 samples than the LIS3DH.

                        Is eliminating these false peaks something you plan on pursuing? It seems like they have the ability to skew the analysis.

                        I tried manually removing the peak samples from a copy of one of my logs, for the purpose of comparing the analyzed result. But while the modified log is displayed correctly in DWC, the analysis always shows a blank chart.

                        dc42undefined 1 Reply Last reply Reply Quote 0
                        • dc42undefined
                          dc42 administrators @CCS86
                          last edited by

                          @ccs86 said in Accelerometer Usage:

                          Is eliminating these false peaks something you plan on pursuing? It seems like they have the ability to skew the analysis.

                          I have already looked into it, and come to the conclusion that reading the data is what caused the spurious peaks. Apart from avoiding wires running very close to the accelerometer chip, I don't think much can be done about it, except perhaps randomising the times at which data is read.

                          The spurious peaks I see from my LIS3DH accelerometers are very much lower than in your plot, and even lower for my LIS3DSH accelerometer. Perhaps you have either a bad accelerometer, or a wire running right over the chip or right under the PCB.

                          Duet WiFi hardware designer and firmware engineer
                          Please do not ask me for Duet support via PM or email, use the forum
                          http://www.escher3d.com, https://miscsolutions.wordpress.com

                          CCS86undefined 1 Reply Last reply Reply Quote 0
                          • CCS86undefined
                            CCS86 @dc42
                            last edited by CCS86

                            @dc42 said in Accelerometer Usage:

                            The spurious peaks I see from my LIS3DH accelerometers are very much lower than in your plot, and even lower for my LIS3DSH accelerometer. Perhaps you have either a bad accelerometer, or a wire running right over the chip or right under the PCB.

                            In the graph I posted, the Y axis scale was between 1.15 and 0.85. Your graph was 1.2 to -0.2. That is a vertical compression of 4.66 times, which visually downplays the peaks.

                            Even if yours don't have quite as much amplitude, they are still erroneous data on up to 5% of the samples taken. To me, that surely need to be addressed if you want accurate analysis.

                            dc42undefined 1 Reply Last reply Reply Quote 0
                            • dc42undefined
                              dc42 administrators @CCS86
                              last edited by

                              @ccs86 if you use the Analyse button, I think you will see that the energy in those spurious peaks is much lower than the energy in genuine ringing. Nevertheless, if this proves to be a problem then I will look at randomising the read times somewhat to spread the spectrum out.

                              Duet WiFi hardware designer and firmware engineer
                              Please do not ask me for Duet support via PM or email, use the forum
                              http://www.escher3d.com, https://miscsolutions.wordpress.com

                              1 Reply Last reply Reply Quote 0
                              • mendenmhundefined
                                mendenmh
                                last edited by mendenmh

                                One could apply a statistical hack if one really knows the problem is every 20 samples, and either the first or last sample in a batch. One can just replace the (known) bad point with the average of the point before and after. This doesn't change the power spectrum significantly. This is equivalent to adding a random Dirac comb of small amplitude (the difference between the correct, missing point and the average) to the data, which has only a very weak effect on the spectrum. The noise floor at frequencies which are harmonics of (sampling rate / 40) will be slightly raised.

                                CCS86undefined 1 Reply Last reply Reply Quote 2
                                • tecnoundefined
                                  tecno @dc42
                                  last edited by

                                  @dc42
                                  How critical is the way the board is mounted?

                                  9bef51ba-f0e2-48e7-b888-c960a53d2c5a-image.png

                                  Above picture is a mockup with another accelerometer.

                                  As I am only going to use only X axis in this case does it really matter how it is mounted?

                                  1 Reply Last reply Reply Quote 0
                                  • CCS86undefined
                                    CCS86 @mendenmh
                                    last edited by

                                    @mendenmh said in Accelerometer Usage:

                                    One could apply a statistical hack if one really knows the problem is every 20 samples, and either the first or last sample in a batch. One can just replace the (known) bad point with the average of the point before and after. This doesn't change the power spectrum significantly. This is equivalent to adding a random Dirac comb of small amplitude (the difference between the correct, missing point and the average) to the data, which has only a very weak effect on the spectrum. The noise floor at frequencies which are harmonics of (sampling rate / 40) will be slightly raised.

                                    As a straightforward fix I think that is a great idea.

                                    1 Reply Last reply Reply Quote 0
                                    • CCS86undefined
                                      CCS86
                                      last edited by CCS86

                                      I did some more testing and found something interesting. This makes me think that the erroneous spikes don't have anything to do with wiring.

                                      Running back to back tests, with the only change being the inclusion / omission of the "X" parameter in the M956 call (just X axis, or XYZ):

                                      Just X:
                                      107d3623-53ae-49d2-9b13-bde053b4ef2a-image.png

                                      XYZ:
                                      09f70d2c-2a0f-4b8a-b2f5-fd7734dfc8fb-image.png

                                      Just X still has some spike on the 20 sample intervals, but they appear much worse when logging all 3 axes (~double).

                                      And here are the analyzed results. Not vastly different, but different enough to warrant elimination of that bad data:

                                      a292211c-a637-4c61-b6e5-3e87394e8af7-image.png
                                      5d89c08d-da4a-4f7f-8ee1-0e4904deef63-image.png

                                      1 Reply Last reply Reply Quote 0
                                      • CCS86undefined
                                        CCS86
                                        last edited by

                                        Somewhat off topic, but this is wild. Here is the analysis of X at 5k / 10k / 15k accel. I did not expect such a big difference when increasing accel to 15k. Makes me suspicious:

                                        5k:
                                        53a62047-179d-4ae7-b8ae-e2cb287c2928-image.png

                                        10k:
                                        4f651040-250b-4d50-835c-ca38b144439d-image.png

                                        15k:
                                        013a1699-1a98-43f0-9e8f-a070d51486ea-image.png

                                        dc42undefined 1 Reply Last reply Reply Quote 0
                                        • CCS86undefined
                                          CCS86
                                          last edited by

                                          At this point, I am getting almost no overflows reported, without actually changing anything. Odd.

                                          Is it possible to log at faster than 1344 Hz? The sensor seems to be capable of 5000 Hz, but the "S" parameter doesn't seem to work in the M955 command. I have only ever gotten 1344 Hz and 400 Hz replies in the console.

                                          Also, DWC seems to infer a sampling rate of 1331 Hz, while RRF says 1344 Hz. Only a 1% difference, but I'm guessing it shifts the analysis result slightly. Not sure whether DWC is accurately sensing a 1331 Hz logging rate, on a desired 1344 Hz. Or, if it should be changed to match.

                                          dc42undefined 1 Reply Last reply Reply Quote 0
                                          • dc42undefined
                                            dc42 administrators @CCS86
                                            last edited by dc42

                                            @ccs86 said in Accelerometer Usage:

                                            Somewhat off topic, but this is wild. Here is the analysis of X at 5k / 10k / 15k accel. I did not expect such a big difference when increasing accel to 15k. Makes me suspicious:

                                            If the time taken to accelerate or decelerate is about half the period of ringing, that will tend to suppress the ringing. That is how DAA worked. I suggest you calculate the acceleration/deceleration time, i.e. the feed rate of your test move in mm/sec divided by the acceleration.

                                            Duet WiFi hardware designer and firmware engineer
                                            Please do not ask me for Duet support via PM or email, use the forum
                                            http://www.escher3d.com, https://miscsolutions.wordpress.com

                                            CCS86undefined 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Unless otherwise noted, all forum content is licensed under CC-BY-SA