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

MMOS controller with cheap servo drive and motor

Discussion in 'Direct Drive Wheels' started by sikjar, May 22, 2017.

  1. Gadget999

    Gadget999 Well-Known Member

    Joined:
    Dec 27, 2015
    Messages:
    1,886
    Location:
    London
    Balance:
    11,543Coins
    Ratings:
    +453 / 9 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino, 6DOF
    i suggest you use a DC motor and a IBT-2 motordriver - you can use a arduino leonardo or a STM324f Discovery to control the Motor
  2. MegamanAT

    MegamanAT New Member

    Joined:
    Feb 13, 2017
    Messages:
    23
    Location:
    Austria
    Balance:
    157Coins
    Ratings:
    +8 / 1 / -0
    they are accepting digtal pulse and direction and analog (position mode) and -10 +10v analog (torque mode)
  3. MegamanAT

    MegamanAT New Member

    Joined:
    Feb 13, 2017
    Messages:
    23
    Location:
    Austria
    Balance:
    157Coins
    Ratings:
    +8 / 1 / -0
    yes, probably the only way for a cheap solution.
  4. MegamanAT

    MegamanAT New Member

    Joined:
    Feb 13, 2017
    Messages:
    23
    Location:
    Austria
    Balance:
    157Coins
    Ratings:
    +8 / 1 / -0
    But I realy don't see the benefit of a 5-6nm dd-whell. That's about the level of a T500RS... A 12nm stepper or 20nm servo would be much better in my opinion.
  5. Gadget999

    Gadget999 Well-Known Member

    Joined:
    Dec 27, 2015
    Messages:
    1,886
    Location:
    London
    Balance:
    11,543Coins
    Ratings:
    +453 / 9 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino, 6DOF
    if you find time - there is a video of a guy who is a racing driver and he tries out the osw

    first thing he does it reduce the ffb strength so the wheel feels more realistic

    i think it was reduced to approx 30%

    I have a dc motor from a winch - it looks like it would dislocate my arms !

    starter motors are several kw iirc
  6. wsx820919

    wsx820919 New Member

    Joined:
    Nov 29, 2017
    Messages:
    2
    Location:
    american
    Balance:
    182Coins
    Ratings:
    +0 / 0 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
    In fact,in the "Son of OpenSimwheel - An Experiment" page 1 videos It has been given to everyone Enough clues about design stepper wheel,People who have used stepper should know,when the stepper motor running but locked the rotor,the rotor must be Happen torque impact,This is a need to overcome,but,how do this,The rotation of the magnetic field is the key,when the stepper motor running but locked the rotor,but The motor controller is still continuing to input PWM,The magnetic field is still spinning,the rotor will be between have torque or have no torque cycle ,therefore used the encoder,encoder followed the position of the rotor,then controller KeepThe magnetic field of the first or next shot in the direction of rotation at any time,And then according to the duty cycle by stm32f4discovery PE9(MMOS),Real time change of current,This is probably the idea of development,I'm trying to do something about it。。。


    PS:Please forgive my bad English.....
  7. henrique fernandes

    henrique fernandes New Member

    Joined:
    Feb 19, 2018
    Messages:
    6
    Location:
    melbourne vic
    Balance:
    188Coins
    Ratings:
    +11 / 0 / -0
    is this project dead? I`m also thinking about using these Chinese cheap drivers+stepper because the budget is a strong limitation for me LOL.My idea is to buy a NEMA 34 of 8.5NM and driver, which I found for 180 aud on ebay, but I don't have any hardware yet
    I read the whole topic and a possible issue that you guys have found made me think about a different technique to control the torque. One was thinking that the power supply was too weak, and because of this, the motor had no torque. Don't you think this can be the solution?
    what if we use this PWM out of the DISCOVERY to control the voltage supply on the "cheap driver"?
    my idea is to use the PWM direction on the driver to set the correct direction and the PWM signal we could reduce the voltage on the power supply pins of the Driver.This way for a low-intensity effect the voltage would be low, consequently the Direct drive weak, and for a strong effect the voltage would be close to the nominal, and then we would have the maximum torque of the motor. This way all the setting of the interface would keep working normally, and we would be able to set up stronger or weaker effects.
    Does anyone think this idea can work? and have the hardware to test?
    Suggestions?
    Possible side effects?
    so far I believe this can work, my only concern is about the minimum voltage of the Driver, that maybe we would need to respect in order to avoid damage. test.png
  8. sikjar

    sikjar Xiao Nie

    Joined:
    Nov 10, 2014
    Messages:
    30
    Occupation:
    Translator
    Location:
    China
    Balance:
    812Coins
    Ratings:
    +38 / 0 / -0
    My Motion Simulator:
    Arduino
    I am not developing on this project any more, and I don't visit this forum very often, so most questions don't get any reply, sorry about that.
    As for your suggestion regarding about regulating the voltage, as far as I remember, the manual for the driver says that voltage only affects the motors speed (RPM), and not the torque.
    The torque is mainly influenced by the current (amperes) that the power supply can deliver.
    I tried hooking the driver up to a variable power supply, and it doesn't seem to make any difference to the torque whether it gets 24 volt or 80 volt.
  9. henrique fernandes

    henrique fernandes New Member

    Joined:
    Feb 19, 2018
    Messages:
    6
    Location:
    melbourne vic
    Balance:
    188Coins
    Ratings:
    +11 / 0 / -0
    You're right, controlling this voltage the torque doesn't change, I would need to control the current of the coil to change the torque.
    I don't know if there is anyone still interested in building something like this, but I will spend some minutes to share what I took hours find out.
    Basic fact - to control the torque we need to control the current(not the voltage as I thought).
    Following this thinking, I made a lot of research and I found that the most of the "Chinese cheap drivers" have current control by chopping the current. The problem then was that the mode of we set this current control is mostly through switches, so we couldn't control it by Arduino.
    Searching a bit more about chopper stepper drivers I found some circuits DIY based on the chip Toshiba tb6600, which can drive steppers using 10 to 42VDC up to 4.5A, and the mode of control of this circuit is via 10K pot, so the plan is to use one of this driver ( I found for 10 aud from China), and replace this pot by a X9C103 Digital potentiometer, so we can control it via Arduino

    PS: As the intention is to build the steering wheel not the driver I'll jump this part and buy one of this,(if someone is interested just let me know that I can share the project of this driver and some more information that I found about Chinese drivers, because I am convicted that we can use this "mod" in any driver)
    Cheap Driver Alternative.png I will copy the main idea of this post, use an Arduino to convert the PWM coming drom the DISCOVERY board into a percentage of torque( or percentage of Amps applied to the coils), controling this way the toque
    the direction signal I will use to set direction and a constant speed, sending pulses to the driver ( I'm not sure about using a constant speed, but it looks like this is the way the commercial FFB wheels work, constant speed and variable torque depending on the effect)
    I would like to listen to a second opinion about this crazy plan. Do you guys think this would work? any suggestion about the circuit or the mode of control?
    • Like Like x 1
  10. gefa

    gefa New Member

    Joined:
    Apr 23, 2018
    Messages:
    2
    Location:
    Lithuania
    Balance:
    216Coins
    Ratings:
    +0 / 0 / -0
    My Motion Simulator:
    3DOF
    Hello, I am really interested in Your project, Did it succeed and is it working? I would really appreciate if You send an answer to my e. gefa96(etta)gmail,com
  11. henrique fernandes

    henrique fernandes New Member

    Joined:
    Feb 19, 2018
    Messages:
    6
    Location:
    melbourne vic
    Balance:
    188Coins
    Ratings:
    +11 / 0 / -0
    Hey mate. I'm still waiting for some stuff from China. I got my discovery board and made it work with my arduino. I'm using a Chinese clone of mega2560 and I made a program to read the pwm from the DISCO and depending on the duty circle control the digital potentiometer and send pulses to the driver to rotate the stepper.
    To proceed I need my stepper that is coming from China to test the current modulation but I believe it's gonna work
    On the next couple of weeks I may have more progress to post here
  12. Carlo_Labati

    Carlo_Labati New Member

    Joined:
    Jan 10, 2018
    Messages:
    18
    Location:
    italy
    Balance:
    213Coins
    Ratings:
    +3 / 0 / -0
    hy mate , did you know if exist or nothing "dead zone" ?
  13. sedesa tatasa

    sedesa tatasa Member

    Joined:
    Jun 16, 2018
    Messages:
    60
    Balance:
    497Coins
    Ratings:
    +15 / 0 / -0
    Mmos have h-bridge mode.
    Two Photocouplers convert the signal to +-signal.
    And simple low pass filter make it +-analog signal.
    Photocoupler must be totem-pole output type.
    I use TLP2366.
    Low pass filter is configurated with two 1000Ω and 1uf.
    0%→90% 4ms
    About 1% min force is need at MMosForceFeedback2014.
    Maybe better two order low pass filter.500Ω×2 and 1uf×2.
    This is work well.but my motor is only 1.3 Nm max3.9 Nm(300%).
    I do not know if it works well with a big motor.
    lpf.jpg 2.jpg U.jpg
    • Like Like x 2
  14. Nonorfs

    Nonorfs New Member

    Joined:
    Feb 29, 2016
    Messages:
    4
    Location:
    fre
    Balance:
    197Coins
    Ratings:
    +0 / 0 / -0
    My Motion Simulator:
    2DOF, Arduino
    Hi all

    First of all, what an amazing project ! Great work.
    I start to make one.
    I earn all the most important part ( waiting for the case, fan, dc converter for fan, ... ).
    I have a problem with the encoder.
    I don't know how to plug it on the driver.
    I have some basics on electrical.
    My encoder is the Omron E6C2 CWZ6C
    I think that output A has to be plug with EA+ /// output B with EB+ ( Is that right ? )
    But how i can plug the Z output ??? on the leadshine HBS86H.

    This motor is the Nema 34, fix to my desk with an home made 3d print part.
    The encoder mount is also an home made 3d print part.

    Thx for your help.

    P_20180718_110518_vHDR_On.jpg P_20180718_105730_vHDR_On.jpg P_20180718_110528_vHDR_On.jpg P_20180718_110543_vHDR_On.jpg
  15. Pilgreem

    Pilgreem New Member

    Joined:
    Apr 18, 2016
    Messages:
    13
    Location:
    France
    Balance:
    327Coins
    Ratings:
    +7 / 1 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
    P_20180827_103245_vHDR_On.jpg
    • Old Old x 1
  16. Pilgreem

    Pilgreem New Member

    Joined:
    Apr 18, 2016
    Messages:
    13
    Location:
    France
    Balance:
    327Coins
    Ratings:
    +7 / 1 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
    Here is some news.
    The casing is finish.
    The FFB is recognized by all cars game ( pcars2 , dirt 4 , ... )
    It can turn wheels when ffb is off.
    I have some trouble when ffb is ON.
    I think i found the problem and try to solve it as fast as possible.
    Just for information when the ffb is ON, it will be very hard to turn it by hand ( i think ffb is at max due to bad wiring of my encoder ), maybe at 13Nm ( the max of the stepper motor ).

    I left another feedback asap.
  17. danove_b

    danove_b Active Member

    Joined:
    Nov 11, 2017
    Messages:
    209
    Location:
    Sweden
    Balance:
    1,792Coins
    Ratings:
    +79 / 3 / -0
    Kind of interested of how you guys have succeeded with your projects. Have any of you considered trying to find the PWM signal inside driver (HBS86H) that controlling the current flow/torque? Shouldn't be that that hard to find by follow backwards from the MOSFET drivers using a oscilloscope. Hopefully there is a common PWM for both winding that are gated with other outputs from the CPU. If so, you could replace the signal directly with the PWM signal from the MMOS. (Running the MMOS in PMW/Dir setup)
  18. Lebois

    Lebois (maybe I am wrong, but who knows...)

    Joined:
    Dec 10, 2018
    Messages:
    350
    Occupation:
    Math teacher
    Location:
    France
    Balance:
    2,544Coins
    Ratings:
    +206 / 2 / -0
    My Motion Simulator:
    2DOF
    I guess this is the way RufusDufus gone in "Son of OpenSimwheel", but it's quite hard and risky...

    An other solution is to try IonI Pro driver that is compatible with Stepper motors. It costs around 350€...

    I am waiting for the RJ45 cable and will try Sikjar solution with my Nema 34 and ACT-motor HBS86h driver.
  19. danove_b

    danove_b Active Member

    Joined:
    Nov 11, 2017
    Messages:
    209
    Location:
    Sweden
    Balance:
    1,792Coins
    Ratings:
    +79 / 3 / -0
  20. Ultrawipf

    Ultrawipf New Member

    Joined:
    Jan 12, 2019
    Messages:
    12
    Balance:
    123Coins
    Ratings:
    +16 / 0 / -0
    @Pilgreem @Nonorfs
    Sorry for the reply in the old thread but this is very relevant to me.
    I also took a look at the HBS86H for a new ffb project but as mentioned the drive force for small position errors must be reduced for steppers to act like servos.
    This driver has a serial port and a software to configure it.
    From the manual it seems that you can decrease the error gain and drive strength and also increase the alarm tolerance to position errors.

    Could someone with this driver try the software configuration and report if this is a valid way to control the drive strength depending on the position error?