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

Son of OpenSimwheel - An Experiment

Discussion in 'DIY peripherals' started by RufusDufus, Sep 28, 2015.

  1. RufusDufus

    RufusDufus Well-Known Member

    Joined:
    Jul 21, 2013
    Messages:
    681
    Location:
    Adelaide Australia
    Balance:
    15,602Coins
    Ratings:
    +1,008 / 8 / -1
    Hi All, I’ve been following all the interest in direct drive sim wheels for some time now and have always wanted one for myself although the price is more than I’m willing to pay. I truly believe they are worth the quality and fidelity they deliver, it’s just way beyond what I need.

    So I started to wonder if it was possible to build a budget version that gives some of the benefits of a direct drive wheel, perhaps with some loss in fidelity, yet outperforms the current consumer grade wheels such as the G27, TRS500, CSW, etc. One goal being to get at least 10Nm of torque out of the wheel feedback.

    ** SO FOR THOSE WHO MISSED MY POINT – I DON’T EXPECT THIS SIMWHEEL TO MATCH THE FIDELITY OF THE SERVO DRIVEN OPEN SIM WHEEL AND EQUIVALENTS **

    Hence my experiments begin…

    The closest ‘budget’ motor to a servo motor is a stepper motor. They have some of the highest torque per mass ratios of any motor and are common enough to be available at low prices. I had 3Nm NEMA24 stepper I bought for another project (AU$50) that never progressed so that seemed like a good proof of concept motor. If all goes well I’ll most likely move up to a 13Nm NEMA34 stepper for AU$170.

    The encoder was next. A good quality encoder can easily set you back $300-500. Seemed a bit much for a budget wheel. Some searching lead me to a cheapo (AU$17) Chinese encoder from ebay. It has 600p/r or 2400cpr, not brilliant but hopefully good enough.

    Now the stepper motor driver. Ideally I should probably just design my own controller but I’m lazy so I found a super cheap (AU$16) Chinese TB6600 stepper driver on ebay. Let’s see what it can do. Unfortunately these (and most) stepper drivers are open loop and don’t react well when you apply more torque than they are setup for – they start losing steps and get very jerky.

    To overcome this I will use an Arduino Uno to implement a closed loop torque control loop and hack into the TB6600 driver to make it work. Another cheap clone version for AU$10. So this requires the TB6600 to be opened, tracks cut, and components soldered inside and wired to the Arduino.

    Finally the interface to the PC. I will be aiming to use the excellent MMOs firmware. No point reinventing the wheel … oh wait I am… no point reinventing a brilliant PC wheel interface. The MMOs PC wheel interface can be found here: http://forum.virtualracing.org/showthread.php/92420-DIY-USB-Force-Feedback-Controller and is the one used in the open sim wheel projects.

    I have used my 3D printer to make a few parts to connect the encoder to the motor and the wheel to the motor. These could be fabricated in other ways but was easy for me to do it this way. These are the bright green parts in the photos.

    photo 2a.JPG photo 3.JPG photo 4.JPG photo 5.JPG

    Progress so far… I now have a basic torque control loop working. The cheap encoder is not as precise as expected however its positional accuracy is repeatable so I was able to compensate for the inaccuracy. It means the wheel will need to calibrate every power up though.



    I get over 3Nm out of this motor which puts it on par with a G27. There is more cogging than I expected at high torque. I think my torque control loop needs some more tuning. It may also be that I need a driver with more than 1/16 microsteps. At low torque it feels much like a G27 with only slight cogging noticeable.



    Still plenty more work, I'll keep you posted when any progress is made. :thumbs
    • Like Like x 17
    • Winner Winner x 6
    • Creative Creative x 2
    • Useful Useful x 1
  2. 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
    Great project! I wish you'll have the success you're awaiting!

    Could you please tell us more on this hack to convert "open loop" to "closed loop"?

    Here a link to calculate the maximal speed of a stepper motor http://www.daycounter.com/Calculators/Stepper-Motor-Calculator.phtml

    Here a french topic on your subject
    • Like Like x 1
  3. Blame73

    Blame73 Well-Known Member

    Joined:
    Nov 6, 2014
    Messages:
    1,210
    Location:
    Italy
    Balance:
    8,255Coins
    Ratings:
    +1,103 / 2 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino, Motion platform
    Really interesting project, looking forward to seeing wheel in action!

    Enjoy us with some video too! :popcorn
  4. RufusDufus

    RufusDufus Well-Known Member

    Joined:
    Jul 21, 2013
    Messages:
    681
    Location:
    Adelaide Australia
    Balance:
    15,602Coins
    Ratings:
    +1,008 / 8 / -1
    Thanks for the links @RacingMat. Unfortunately google translate doesn't do a real good job of French translations - especially when they get technical. It is interesting to see others experimenting with steppers though.
  5. fzxj520

    fzxj520 Active Member

    Joined:
    May 14, 2015
    Messages:
    176
    Location:
    SimTools is a generic Motion Simulator
    Balance:
    1,341Coins
    Ratings:
    +87 / 1 / -0
    My Motion Simulator:
    2DOF
    Great :thumbs This is what I expected
  6. sikjar

    sikjar Xiao Nie

    Joined:
    Nov 10, 2014
    Messages:
    30
    Occupation:
    Translator
    Location:
    China
    Balance:
    812Coins
    Ratings:
    +38 / 0 / -0
    My Motion Simulator:
    Arduino
  7. Kirk

    Kirk Member

    Joined:
    May 19, 2014
    Messages:
    91
    Occupation:
    Sr Software Engineer
    Location:
    Texas
    Balance:
    15,087Coins
    Ratings:
    +114 / 2 / -0
    My Motion Simulator:
    2DOF, DC motor
    I have a whole bunch of those encoders, they are awesome for how cheap they are. It never occurred to me that they could be used for a wheel. I'm following this thread with great interest.

    While I already have a budget wheel (Logitech G27), but I'd LOVE to build a Tron bike sim someday, with force feedback on the handlebars. Being able to rig something up from parts found at a thrift store (broken bicycle) and a little PVC / fiberglass, well, that'd be quite awesome.
    • Like Like x 1
    • Agree Agree x 1
  8. jaco73

    jaco73

    Balance:
    Coins
    Ratings:
    +0 / 0 / -0
    interesting !! I continue to see as just: Thumbs
  9. 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
    sorry for the short off topic
    I'm sure Kirk will open a dedicated thread if needed;)


    • Like Like x 1
  10. RufusDufus

    RufusDufus Well-Known Member

    Joined:
    Jul 21, 2013
    Messages:
    681
    Location:
    Adelaide Australia
    Balance:
    15,602Coins
    Ratings:
    +1,008 / 8 / -1
    Just a quick update. Testing is progressing slowly and looking promising. I have as yet not been able to eliminate the "notchy" sensation at high torque. I have tested alot of the individual components and am starting to believe it is coming from the cheap TB6600 stepper driver I am using.

    I will look into this further and let you know the results.
    • Like Like x 2
  11. Archie

    Archie Eternal tinkerer

    Joined:
    Dec 31, 2014
    Messages:
    1,081
    Location:
    Wollongong, NSW, AU
    Balance:
    3,795Coins
    Ratings:
    +1,379 / 4 / -0
    My Motion Simulator:
    2DOF, DC motor, JRK
  12. 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
    Great!

    Are you talking about motor cogging?
  13. RufusDufus

    RufusDufus Well-Known Member

    Joined:
    Jul 21, 2013
    Messages:
    681
    Location:
    Adelaide Australia
    Balance:
    15,602Coins
    Ratings:
    +1,008 / 8 / -1
    That is what it feels like, however I don't believe that is the cause. At the moment I think it is either my torque control loop or the stepper driver. Leaning more toward the stepper driver.
  14. sikjar

    sikjar Xiao Nie

    Joined:
    Nov 10, 2014
    Messages:
    30
    Occupation:
    Translator
    Location:
    China
    Balance:
    812Coins
    Ratings:
    +38 / 0 / -0
    My Motion Simulator:
    Arduino
    Thank you for the update, following with interest :thumbs
  15. Evad

    Evad New Member

    Joined:
    Nov 23, 2015
    Messages:
    5
    Location:
    Netherlands
    Balance:
    33Coins
    Ratings:
    +2 / 1 / -0
    My Motion Simulator:
    2DOF, Arduino
    Following with interest.:) Would you be willing to share your arduino code?
    • Informative Informative x 1
  16. Anders Nolberger

    Anders Nolberger New Member

    Joined:
    Dec 14, 2015
    Messages:
    1
    Location:
    Sweden
    Balance:
    402Coins
    Ratings:
    +0 / 0 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
    I am also interested in any feedback on this. Is this driver any good for this purpose?
  17. RufusDufus

    RufusDufus Well-Known Member

    Joined:
    Jul 21, 2013
    Messages:
    681
    Location:
    Adelaide Australia
    Balance:
    15,602Coins
    Ratings:
    +1,008 / 8 / -1
    The project has been on the shelf for a while. Hope to get back to it over Christmas.

    I can't comment on that controller as I don't read Chinese. As this is still in experimental phase I haven't yet worked out exactly what is needed for a properly working wheel.

    When I make progress I will be happy to post the details for anyone interested. :grin
  18. Evad

    Evad New Member

    Joined:
    Nov 23, 2015
    Messages:
    5
    Location:
    Netherlands
    Balance:
    33Coins
    Ratings:
    +2 / 1 / -0
    My Motion Simulator:
    2DOF, Arduino
    Hi Rufusdufus. I managed to get the encoder to work with the Mmos, as long as i pull the encoder signals high with the help of the arduino.

    Did You had to do that also or did you find an other way to get it to work
    • Agree Agree x 1
  19. RufusDufus

    RufusDufus Well-Known Member

    Joined:
    Jul 21, 2013
    Messages:
    681
    Location:
    Adelaide Australia
    Balance:
    15,602Coins
    Ratings:
    +1,008 / 8 / -1
    Sounds like you have progressed further than me, all my testing has just been with the arduino so far... but yes I used pullups with the encoder shown in earlier posts. I found a teardown of it on web... http://wemakethings.net/2014/05/26/rotary-encoder-teardown/

    What size stepper are you using?
    • Informative Informative x 2
  20. Evad

    Evad New Member

    Joined:
    Nov 23, 2015
    Messages:
    5
    Location:
    Netherlands
    Balance:
    33Coins
    Ratings:
    +2 / 1 / -0
    My Motion Simulator:
    2DOF, Arduino
    Ha RufusDufus. Thanks for the link. That helped a lot. Im using a 34 zise stepper. Next goal is to make sense of the dir en pwm signal coming from the mmos.