1. Do not share user accounts! Any account that is shared by another person will be blocked and closed. This means: we will close not only the account that is shared, but also the main account of the user who uses another person's account. We have the ability to detect account sharing, so please do not try to cheat the system. This action will take place on 04/18/2023. Read all forum rules.
    Dismiss Notice
  2. For downloading SimTools plugins you need a Download Package. Get it with virtual coins that you receive for forum activity or Buy Download Package - We have a zero Spam tolerance so read our forum rules first.

    Buy Now a Download Plan!
  3. Do not try to cheat our system and do not post an unnecessary amount of useless posts only to earn credits here. We have a zero spam tolerance policy and this will cause a ban of your user account. Otherwise we wish you a pleasant stay here! Read the forum rules
  4. We have a few rules which you need to read and accept before posting anything here! Following these rules will keep the forum clean and your stay pleasant. Do not follow these rules can lead to permanent exclusion from this website: Read the forum rules.
    Are you a company? Read our company rules

Question Vernier caliper and linear actuator

Discussion in 'DIY Motion Simulator Building Q&A / FAQ' started by Michael_miass, Jan 16, 2021.

  1. Michael_miass

    Michael_miass West

    Joined:
    Nov 16, 2019
    Messages:
    145
    Location:
    Russia, Miass
    Balance:
    723Coins
    Ratings:
    +169 / 0 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino, 6DOF
    There is such a cheap 300 mm caliper, about 12-14 euros. It has a connector for connecting to a controller (you can use an arduino). I keep thinking of using it on a linear actuator as feedback instead of a belt and a potentiometer. Maybe someone knows and tried to connect it. What is the measurement speed of it? According to the idea, you need at least 250mm / s. Or is the game not worth the candle?
    IMG_20210116_142408.jpg IMG_20210116_142501.jpg
  2. noSaint

    noSaint New Member Gold Contributor

    Joined:
    Jan 9, 2021
    Messages:
    23
    Balance:
    160Coins
    Ratings:
    +13 / 0 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
    reminds me of DRO "digital read out" on cnc an lathe, there are several different dro's out there to buy
    • Winner Winner x 1
  3. RacingMat

    RacingMat Well-Known Member Gold Contributor

    Joined:
    Feb 22, 2013
    Messages:
    2,233
    Location:
    Marseille - FRANCE
    Balance:
    20,875Coins
    Ratings:
    +2,079 / 21 / -2
    My Motion Simulator:
    2DOF, DC motor, Arduino
  4. Michael_miass

    Michael_miass West

    Joined:
    Nov 16, 2019
    Messages:
    145
    Location:
    Russia, Miass
    Balance:
    723Coins
    Ratings:
    +169 / 0 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino, 6DOF
    I found on the Internet a diagram for connecting a caliper to an arduino.
    12.png 13.png
    It doesn't work badly, but the data is refreshed at 3Hz (300ms), which is very little for a linear drive.
    IMG_20210116_142408.jpg IMG_20210116_142501.jpg IMG_20210120_193948.jpg IMG_20210120_194018.jpg IMG_20210120_194616.jpg IMG_20210120_195421.jpg 11.png
    http://www.shumatech.com/support/chinese_scales.htm#Chinese Scale Protocol
    There is a way to switch to fast reading 20ms (50Hz) in this description, but it didn't work for me. Apparently such a caliper.
  5. noSaint

    noSaint New Member Gold Contributor

    Joined:
    Jan 9, 2021
    Messages:
    23
    Balance:
    160Coins
    Ratings:
    +13 / 0 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
  6. RandyT

    RandyT Enginerd

    Joined:
    Feb 18, 2021
    Messages:
    7
    Balance:
    62Coins
    Ratings:
    +3 / 0 / -0
    My Motion Simulator:
    3DOF
    Interesting idea, but I have worn these out just using them by hand. I think I would want something a little more robust. I don't even like the thought of using potentiometers, due to the wear factor and resulting erratic readings.

    I haven't tried this, but if you are handy with electronics, maybe check out the VL53L1X (or similar) carrier boards on Pololu. It's a time-of-flight distance sensor, which in short-range mode can deliver 1mm accuracy at 50hz with a suitable target. There's even some sample Arduino code provided to read them.
  7. Michael_miass

    Michael_miass West

    Joined:
    Nov 16, 2019
    Messages:
    145
    Location:
    Russia, Miass
    Balance:
    723Coins
    Ratings:
    +169 / 0 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino, 6DOF
    I have one similar VL53L1X sensor and I am using it with arduino in another project. It has the disadvantage that it is not really a laser. It measures not with a point, but with infrared radiation with a viewing angle of about 25-27 degrees. At a distance of, for example, 400mm, it will cover an area of 192mm. A foreign object can fall into such a large area and knock off all measurements, which will lead to not very good consequences. VL53L1C FOV27.jpg
  8. RandyT

    RandyT Enginerd

    Joined:
    Feb 18, 2021
    Messages:
    7
    Balance:
    62Coins
    Ratings:
    +3 / 0 / -0
    My Motion Simulator:
    3DOF
    Put it in a tube ;)
  9. Dschadu

    Dschadu Active Member

    Joined:
    Jan 2, 2017
    Messages:
    109
    Location:
    Germany
    Balance:
    1,933Coins
    Ratings:
    +143 / 1 / -0
    Best solution is still a rotary encoder, like a CUL AMT102. It has no wear, is relatively cheap and easy to wire. Only the mounting has to be very precise (max 0.1mm)
    Of course your code has to handle the encoder input
    • Like Like x 1
  10. Michael_miass

    Michael_miass West

    Joined:
    Nov 16, 2019
    Messages:
    145
    Location:
    Russia, Miass
    Balance:
    723Coins
    Ratings:
    +169 / 0 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino, 6DOF
    I took a magnetic encoder AS5600 for the experiment for 1.5 euros. I'll try to make a cheap encoder
    IMG_20210321_203245.jpg
  11. wingert

    wingert Active Member

    Joined:
    Aug 10, 2020
    Messages:
    112
    Balance:
    642Coins
    Ratings:
    +89 / 0 / -0
    My Motion Simulator:
    4DOF
    magnetic sensor uses Thrustmaster too for wheel motor position.
  12. Michael_miass

    Michael_miass West

    Joined:
    Nov 16, 2019
    Messages:
    145
    Location:
    Russia, Miass
    Balance:
    723Coins
    Ratings:
    +169 / 0 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino, 6DOF
    I finally got to the magnetic sensor. The magnet was fixed on the rotating axis, and the sensor itself was screwed. The sensor can be moved slightly in two axes within the screw gap to position it exactly in the middle of the magnet. The magnet on the axle can be moved a little, thereby adjusting the gap between the magnet and the sensor.
    IMG_20210612_115822.jpg IMG_20210612_123732.jpg IMG_20210612_123950.jpg IMG_20210612_123954.jpg IMG_20210612_163322.jpg IMG_20210612_163333.jpg
    As a result, I got the following graph. The graph shows a dead zone when going from 360 to 0 degrees. I don’t know what to do with it and how it will affect the movements. In general, the readings turned out to be the same at several revolutions, without bursts. The price of the issue is 1.5 euros.
    График 2.png
    • Like Like x 2
  13. RandyT

    RandyT Enginerd

    Joined:
    Feb 18, 2021
    Messages:
    7
    Balance:
    62Coins
    Ratings:
    +3 / 0 / -0
    My Motion Simulator:
    3DOF
    The graph seems also to be showing some very repeatable linearity issues. I would suspect some eccentricity in the rotation of the magnet. The magnet needs not only be centered on the sensor, but must also be centered exactly on the axis of the shaft rotation. A 3D printed coupler may not have enough accuracy to do this adequately.
  14. Michael_miass

    Michael_miass West

    Joined:
    Nov 16, 2019
    Messages:
    145
    Location:
    Russia, Miass
    Balance:
    723Coins
    Ratings:
    +169 / 0 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino, 6DOF
    A small summary of the comparison of cheap feedback methods

    1. Potentiometer 10Kohm. The software filter was used: arithmetic mean over 10 values
    IMG_20210223_131813.jpg
    Потенциометр средний 10.png
    We see good linearity, but there is a lot of noise in the form of bursts

    2. Potentiometer 10Kohm. Software filter used: median filter by 9 values
    Потенциометр медианный 9.png
    We see good linearity. The program used a median filter - 9 values were read and one mean was selected. Thus, sharply different values were discarded and did not take part in the calculation.

    3. Hall sensor chip AS5600 of Chinese origin. The filter was not used.
    IMG_20210614_211146.jpg IMG_20210614_211219.jpg IMG_20210614_211306.jpg
    График датчик Холла.png

    Non-linearity depends on the exact centering of the magnet, which is difficult to do on your own.
    How will such a deviation from linearity affect the actual movement on the installation? Who has any thoughts?