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

Direct drive stepper motor

Discussion in 'Commercial Simulators and Peripherie' started by Nikiss999, Sep 11, 2020.

  1. Nikiss999

    Nikiss999 Member

    Joined:
    Jun 27, 2020
    Messages:
    42
    Balance:
    418Coins
    Ratings:
    +13 / 0 / -0
    My Motion Simulator:
    DC motor, AC motor
    Finally managed to drive the beast!

    This is another variance of the stepper motor wheel. It works with 12 Volts PC power supply and custom electronics. Motor is nema 34 with 1000ppr / 4000cpr encoder integrated on the back. It's one of those chinese pre built steppers.

    Now let's get to business. I want this project to be as clear and honest as possible. I have no prior experience with direct drive wheels or commercial wheels, belt or gear ones. There is diy dc wheel with mmos and bts and it's used as a reference for developing stepper wheel, but I don't have drills and power tools at the moment so that wheel is waiting for better days.

    My intention was to build a really strong wheel. That holds true for stepper.
    However, there is a lot of notchiness and torque is uneven between steps. As you increase wheel strength it gets more noticeable. However, driving with so much torque makes you forget about steps as the wheel is kicking you around like no tomorrow.
    Another concern is noise. Because torque is uneven on very small steps in rotation there will be a lot of noise. It is also present when wheel is powered off because of permanent magnets and lots of magnetic force.

    Let's talk about force feedback. It is good. It is strong.
    That's not all. Since we are direct drive there is almost zero resistance when moving the wheel. I can't feel any delay. For example when hitting something with wheels it is instant. Going over curbs feels great and the wheel vibrates nicely. Oscillations are still present when going into straight line. This was all tested with Assetto Corsa. I drive rally as well but honestly, right now feedback is more like entertainment than anything else as it's hard for me to use feedback in rally.

    Main problem is 12 Volts power supply. Max rotational speed right now is probably below 60 Rpm. This also means that torque is completely lost when moving the wheel really fast. This happens in rally a lot so it's kind of a meme to drive it. At one time the wheel is kicking you around, you turn the wheel really fast and suddenly there is no resistance until you slow down with rotation.

    There will be a video tomorrow of driving it and all iracing wheelcheck tests. Cycle test and step log test will be there. If you have any suggestions for testing it's more than welcome.

    PS mmos is still being used.
    • Like Like x 1
  2. Nikiss999

    Nikiss999 Member

    Joined:
    Jun 27, 2020
    Messages:
    42
    Balance:
    418Coins
    Ratings:
    +13 / 0 / -0
    My Motion Simulator:
    DC motor, AC motor
    Update:
    Software got optimized and it reduced notchiness. Wheel is not as loud as before and torque ripple is better.

    Here is hackaday page for anyone interested:
    https://hackaday.io/project/173414-custom-stepper-motor-driver-for-ffb-wheels

    And here are wheelcheck tests:




    Step log results: (there are before software improvements so the noise is higher than it should, but the point is in speed limitation for now)

    Wheel that was used is a real wooden steering wheel. It is hefty and weighs a lot.


    15% strength
    step log 15%.PNG

    30%
    step log 30%.PNG

    50%
    step log 50%.PNG

    70%
    step log 70%.PNG

    90%
    step log 90%.PNG
  3. Nikiss999

    Nikiss999 Member

    Joined:
    Jun 27, 2020
    Messages:
    42
    Balance:
    418Coins
    Ratings:
    +13 / 0 / -0
    My Motion Simulator:
    DC motor, AC motor
    Here are some videos of Dirt Rally and Assetto Corsa live driving.





    • Like Like x 2
    Last edited: Sep 13, 2020
  4. Nikiss999

    Nikiss999 Member

    Joined:
    Jun 27, 2020
    Messages:
    42
    Balance:
    418Coins
    Ratings:
    +13 / 0 / -0
    My Motion Simulator:
    DC motor, AC motor
    Here are some actually decent driving videos and ffb can be better seen:

    Audi R8 LMS in Asseto Corsa Nordschleife - no messing with this car



    Peugeot group B in Monte Carlo Dirt Rally - the movements at the beginning are not mine, the wheel is throwing me around :sos




    For anyone interested in the driver. It is a custom driver that uses 2 h bridges. One of them is my diy soldered with irf mosfets and the other one is bts7960. There is an arm m3 processor that's doing the driver stuff and reads pwm from mmos in Pwm + Dir mode (not pwm h bridge).

    I don't have any shifter so rally was driven with automatic gearbox :sos:sos:sos
    • Like Like x 1
  5. Nikiss999

    Nikiss999 Member

    Joined:
    Jun 27, 2020
    Messages:
    42
    Balance:
    418Coins
    Ratings:
    +13 / 0 / -0
    My Motion Simulator:
    DC motor, AC motor
    Did some Nm testing. At 25% strength wheel was able to lift a 2 liter bottle at 12 cm from center of the shaft. That is about 2.4 Nm. Don't have concrete results yet but that should be about 10 Nm at full strength. For now.

    Turns out that bts7960 is not up to the task for closed loop current control. I made another diy bridge and current control now is much better. Current control is still not perfect. But good news is that torque unevenness is much Much better now. Didn't have a lot of time to calibrate it properly. This also solved the problem with fast rotation. Now the strength when steering quickly is not reduced. In fact if I didn't know that the problem existed I'd never notice it.

    Notchiness is still there. However below 50% strength or 5 Nm you can only feel the "tip" as a notch. Everything between steps is butter smooth.

    Driving with now improved wheel was a blast. Everything below 5 Nm is a meme. It is just not strong enough. 5Nm to 7.5 Nm is good. 7.5 Nm to 10 Nm is really strong. At 7.5 you feel road texture and it is the sweet-spot. More than that and you start struggling to make corrections. But it's too much fun to drive at 10 Nm.

    In summary:
    - Notchiness got lowered by let's say 70%
    - Speedy corrections and rally driving is not reducing strength anymore
    - 7.5 Nm is the sweetspot

    Flux weakening will be one of the next research steps. It reduces torque and increases power consumption but greatly increases rotational speed. However I'm still not sure if it affects notchiness between steps. If it breaks FOC which is used right now then there's no other solution but to use power supply with more than 12 Volts.
  6. emjklm452

    emjklm452 New Member

    Joined:
    Jan 3, 2020
    Messages:
    4
    Balance:
    95Coins
    Ratings:
    +1 / 0 / -0
    I want to congrat you for the project that are you starting, you find some of these projects on the hackaday but it seems not promissing as long as the authors doesnt continues because of x personal issues but we cant blame them... im gonna read your posts of the project on the hackaday but, im very curious, what a type of controller are you using? an double H-Bridge?
  7. Nikiss999

    Nikiss999 Member

    Joined:
    Jun 27, 2020
    Messages:
    42
    Balance:
    418Coins
    Ratings:
    +13 / 0 / -0
    My Motion Simulator:
    DC motor, AC motor
    Thanks!

    Exactly, double h bridge. Bts7960 was used first, together with a diy h bridge. But bts was not up to the task. Integrated circuits differ too much between themselves. In the end I had to make another h bridge. I have a problem that my microcontrollers are half faulty, but there are like 10 different ones are coming from china now.
    • Informative Informative x 1
  8. Nikiss999

    Nikiss999 Member

    Joined:
    Jun 27, 2020
    Messages:
    42
    Balance:
    418Coins
    Ratings:
    +13 / 0 / -0
    My Motion Simulator:
    DC motor, AC motor
    Usable force should be about 5 Nm in this moment. Electronics start having a mental breakdown above that level.
    This is the reason why wheel started feeling bad at higher forces. Current control is actually very good until 5 Nm. After that there are huge deviations, we are talking about 20 - 40 % difference in expected output vs reality.
    Notchiness is still there. I won't even try removing it until full 12.5 Nm are extracted from the wheelbase. Strength is the priority :cheers
  9. emjklm452

    emjklm452 New Member

    Joined:
    Jan 3, 2020
    Messages:
    4
    Balance:
    95Coins
    Ratings:
    +1 / 0 / -0
    I see... you made a custom double h-bridge. I´ve been studying to find a solution for it and keeping the eye on projects. The "Gigawipf" of the OpenFFboard get the same problem on his project: the torque control. Looks like the motor that he uses is similar or the same of yours and other projects like this. The solution he found was use a field oriented control microcontroller from Trinamic made for this type of applications but that chip is in early stage of development... did you heard about the simagic M10? looks like it uses a stm32f103 family as a microcontroller, i saw in a video of the "Boosted Media" channel, and 6 transistors, it seems to me a MOSFET type, 2 per power phase, if this info could help that will be great.
  10. emjklm452

    emjklm452 New Member

    Joined:
    Jan 3, 2020
    Messages:
    4
    Balance:
    95Coins
    Ratings:
    +1 / 0 / -0
    I think that i can find more help and ideas. Can i post your project on some brazilian FB groups?
  11. Nikiss999

    Nikiss999 Member

    Joined:
    Jun 27, 2020
    Messages:
    42
    Balance:
    418Coins
    Ratings:
    +13 / 0 / -0
    My Motion Simulator:
    DC motor, AC motor
    Sure, go ahead!

    You can do either 6 or 8 mosfets, or that would be a 3 phase inverter intended for BLDC or double H Bridge - like mine. If memory serves right SmoothStep uses 6 mosfets inverter. Idk about OpenFFB and Tmc. Didn't see the schematic yet.
    You have a limitation when using 6 fets. Basically you get only 50% of available Voltage from your power supply. But I think that it's easier to implement in a basic microcontroller. Also cost is lower.
    Double H Bridge gets you full voltage range.

    The reason why I'm not mentioning anything about selling the boards or anything like that is because you'll get an earbleed from the current electronics XD. That might give you a hint on how the current is being controlled.
  12. Nikiss999

    Nikiss999 Member

    Joined:
    Jun 27, 2020
    Messages:
    42
    Balance:
    418Coins
    Ratings:
    +13 / 0 / -0
    My Motion Simulator:
    DC motor, AC motor
    Oh and my controller also uses Field Oriented Control, for some reason people get excited when they hear these words, so let's all shout FOC
  13. Nikiss999

    Nikiss999 Member

    Joined:
    Jun 27, 2020
    Messages:
    42
    Balance:
    418Coins
    Ratings:
    +13 / 0 / -0
    My Motion Simulator:
    DC motor, AC motor
    New update:

    Totally revamped current control. Noise is reduced and notchiness as well (it's still there don't worry XD).
  14. ERGUN OZYURT

    ERGUN OZYURT erguno

    Joined:
    Nov 29, 2019
    Messages:
    17
    Location:
    Turkey
    Balance:
    - 246Coins
    Ratings:
    +0 / 0 / -0
    My Motion Simulator:
    2DOF, 3DOF
    Very interesting project and thanks for sharing your experiences / results. Do you think sharing driver & code with us?

    Thanks again
  15. Nikiss999

    Nikiss999 Member

    Joined:
    Jun 27, 2020
    Messages:
    42
    Balance:
    418Coins
    Ratings:
    +13 / 0 / -0
    My Motion Simulator:
    DC motor, AC motor
    I don't plan on making this open source. But if the project is completely dead and I don't develop for it anymore or just lose interest in it then I may just share it. No reason for something that I worked on for month/years to go to waste.

    Now more info about the driver. It is a classic H Bridge, and 2 of them, with current sense and closed loop control. My initial plan was to go with BTS7960 and call it a day. That worked but chips were too different between themselves. Current control was also different back then. I really want to make BTS work. If that is possible then I will probably make already soldered and made kits with BTS and a processor as a brain, or just sell the processor board with jumpers for bts or wires that need to be soldered. If that doesn't work then we'll need PCBs from factory, as I don't believe that anyone would like a driver on green or orange perfboard, that has questionable soldering and components sticking out from everywhere. That might happen in the first few batches if anyone wants an early sample. The functionality is 100% there but it's ugly you know.

    Now more info about pricing. I have no idea how much it costs to make a proper pcb. Cost of electronics and additional cost for soldering the boards myself would be, idk, 50$ or more with current electronics and no shipping included. As it take a looooooong time to solder everything and make sure that the thing actually works. I don't plan on charging 200$ for the driver, everything is too expensive in sim racing and that needs to change. There will be no schematics as I don't want people to solder something that will kill the processor or Mosfets because of bad layout, voltage spikes, inductive ringing and all of that stuff. That will only create bad experience like : Hey I soldered and made everything, it worked for 2 minutes and died! This is a bad product!
    It's not as simple as connecting 6 wires like Mmos.

    There will be a video tomorrow where torque is tested with new current control. No idea how hard it kicks but it's strong!
  16. Nikiss999

    Nikiss999 Member

    Joined:
    Jun 27, 2020
    Messages:
    42
    Balance:
    418Coins
    Ratings:
    +13 / 0 / -0
    My Motion Simulator:
    DC motor, AC motor
    Guess what happens when you go to 36 Volts?

    upload_2020-11-14_22-0-30.png

    And for those who are interested in no wheel performance
    upload_2020-11-14_22-1-24.png

    Wheel that is used is from wood and steel and it's pretty heavy. Didn't measure it's weight.

    Forcefeedback is now Much better. Drifting is possible now for sure, bot gotta learn that first :).
    And now it can be considered dangerous. It's rotating really really fast.
    It was run from 150 W 48 V power supply, trimmed down to 37 Volts.

    Videos coming sometime

    12 V result with wheel
    [​IMG]
    (This was run with 1080 degrees in MMOS and 900 degrees in wheelcheck, there are no drastic changes when this error is taken into account, curve might get a little steeper)
  17. Nikiss999

    Nikiss999 Member

    Joined:
    Jun 27, 2020
    Messages:
    42
    Balance:
    418Coins
    Ratings:
    +13 / 0 / -0
    My Motion Simulator:
    DC motor, AC motor
    And the video that should've been made long ago is here, finally :)

    • Like Like x 1
  18. Nikiss999

    Nikiss999 Member

    Joined:
    Jun 27, 2020
    Messages:
    42
    Balance:
    418Coins
    Ratings:
    +13 / 0 / -0
    My Motion Simulator:
    DC motor, AC motor
    Here's another one that was long overdue.

    TORQUE Test

  19. Shadow Nightmares

    Shadow Nightmares New Member

    Joined:
    Jul 8, 2020
    Messages:
    5
    Balance:
    41Coins
    Ratings:
    +1 / 0 / -0
    My Motion Simulator:
    Arduino
    Damn, that's unfortunate that you lost interest in the project, to be honest i was trying to check stepper-based projects (they are less expensive than servomotors and the stuff for DD wheels here), but i am still happy that you tried and made some progress
  20. Nikiss999

    Nikiss999 Member

    Joined:
    Jun 27, 2020
    Messages:
    42
    Balance:
    418Coins
    Ratings:
    +13 / 0 / -0
    My Motion Simulator:
    DC motor, AC motor
    Oi don't write me off as dead
    • Funny Funny x 1