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

Showroom 2DOF + traction loss using Brushless DC motors

Discussion in 'DIY Motion Simulator Projects' started by John Snell, Sep 16, 2021.

  1. John Snell

    John Snell Member

    Joined:
    May 31, 2021
    Messages:
    63
    Balance:
    190Coins
    Ratings:
    +59 / 1 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
    I tried adding a little pre-load onto the actuators but I didn't really like the feel of it. Probably related to the type of motors, but during lowering of the front actuators I could feel a little jerkiness as the motors tried to limit the rate of decent/fall.

    In the end I went back to my bending spring idea. They are mounted but I haven't fully decided if they work or make enough of an improvement. For now they will stay.
    IMG_4625.jpg
    • Like Like x 1
    Last edited: Nov 2, 2022
  2. Kenshiro27

    Kenshiro27 Active Member

    Joined:
    Apr 16, 2021
    Messages:
    162
    Balance:
    26Coins
    Ratings:
    +66 / 1 / -0
    My Motion Simulator:
    2DOF, Arduino
    Very good idea to place run spring at this place
    • Like Like x 1
  3. John Snell

    John Snell Member

    Joined:
    May 31, 2021
    Messages:
    63
    Balance:
    190Coins
    Ratings:
    +59 / 1 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
    I decided to use leftover parts to build a seat mover for a friend.

    The parts:
    - 2 x wiper motors used in my original proof of concept
    - 1 x universal joint from Nissan car.
    - 1 x Arduino and 2 x H-Bridge drivers
    - 2 x 300w Computer PSUs
    - Some 18x18mm box section steel

    The aim is to fit it to build it to dimensions that replace the seat riser in a GT Omega ART rig, shown below.
    315100262_1225878347992198_3034319512281872451_n.jpg

    Here's my plan so far:
    315312442_803244754105209_969087101341816955_n.png

    In testing, I found that one Power supplies cut out. I've added in diodes to block any reverse current but it didn't help, so next is a some over-current limiting circuitry.

    I also found that one of the motors get's too hot to touch. Yes I know that wiper motors may not be ideal. Here's my attempted solution :)
    317590053_697531021976809_6509441116235261131_n.jpg
    With this, and a small fan blowing directly on it the heat is reduced. I hope it's enough.

    The initial test version is made from wood, strangely using offcuts purchased from a coffin factory that makes low cost coffins. It's very high compared with the final version and is difficult to test for that reason. I have temporarily mounted it on top of my existing rig, and can not reach my peddles so I have mapped buttons for them. The feedback seems quite good though. Here's me crashing into a wall at Phillip island:

    • Like Like x 2
    Last edited: Dec 11, 2022
  4. shakermotion

    shakermotion New Member

    Joined:
    Jun 22, 2017
    Messages:
    3
    Location:
    Amman
    Balance:
    68Coins
    Ratings:
    +0 / 0 / -0
    My Motion Simulator:
    DC motor, Arduino, Motion platform, 6DOF
    Hi
    Can you share the Arduino code? Did you use the SMC3 code without any changes? who did you do the wiring to the ZS-X11H driver? I am tying to Control my new 6 DOF using brushless motors and the ZS-X11H driver.
  5. John Snell

    John Snell Member

    Joined:
    May 31, 2021
    Messages:
    63
    Balance:
    190Coins
    Ratings:
    +59 / 1 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
    Hi @shakermotion

    Wiring of the ZS-X11H driver is shown in this post:
    2DOF + traction loss using Brushless DC motors

    I didn't have much success with the ZS-X11H driver though, and I moved on to other drivers.

    I did have SMC3 code running without changes on the new drivers, but it was noisy and the motion didn't seem quite right at times (may have been my fault). Maybe I gave up on that too early, I'm not sure.

    I also tried modified SMC3 arduino code sent to me by the very helpful @hoyang, and that was slightly better. He will have much more knowledge about SMC3 and BLDC motors than I do.

    I ended up using the ESP32 controllers, drivers, and code in this thread: FlyPT - 6DOF Brushless DIY Actuators

    While I had major issues to overcome with that as well, and still do at times, the result is very quiet and quite smooth at least. Simtools can be used as an input to FLYPT Mover

    Hope that helps
    • Informative Informative x 1
  6. shakermotion

    shakermotion New Member

    Joined:
    Jun 22, 2017
    Messages:
    3
    Location:
    Amman
    Balance:
    68Coins
    Ratings:
    +0 / 0 / -0
    My Motion Simulator:
    DC motor, Arduino, Motion platform, 6DOF
    Hi
    I started an new 6dof project using hoverboard motors. As you those motors are available everywhere and very strong motors. I have in my garage many of them.

    I started with testing how I can run it and Controle it via the SMC3. I used the driver ZS-X11H. I was able run it and switch the direction. However, it was very difficult to Control, motor was following the potentiometer, but it never stopped where it should stop.

    I already burned all my 3 available ZS-X11H ports.
    I even added some modifications to the Arduino code, but it did not help really. As below
    void loop() {
    // Existing initial code...
    // Read the potentiometer, and scale the value according to your setup.
    int potValue = analogRead(PotInputPin);
    // Add a dead zone around the midpoint of the potentiometer to ensure the motor stops.
    int deadZone = 10; // Adjust this value to set the size of the dead zone.
    int scaledPotValue = map(potValue, deadZone, 1023 - deadZone, 0, 1023); // Rescale pot value.
    if (potValue < (512 - deadZone)) {
    scaledPotValue = map(potValue, 0, 512 - deadZone, 0, 512);
    } else if (potValue > (512 + deadZone)) {
    scaledPotValue = map(potValue, 512 + deadZone, 1023, 512, 1023);
    } else {
    scaledPotValue = 512; // Center value to stop the motor.
    }
    // Only update if the change is significant to reduce sensitivity.
    if (LastPotValue == -1 || abs(potValue - LastPotValue) > 10) {
    LastPotValue = potValue; // Update the last pot value.
    Target1 = scaledPotValue; // Update target based on the scaled pot value.
    }
    // Continue with the rest of your loop code...
    // This would include the motor PID calculations and other logic as before.
    }
    I tried to adjust PID Tuning parameters (Kp, Ki, Kd). But nothing changed. And i Believe that was the reason why the ZS-X11H got damaged.

    Anyway,
    Anyone has an idea how to control such a motor in a simple way and get a good result?
    Would be great if anyone has done anything Simmler?
  7. hoyang

    hoyang handyman

    Joined:
    Dec 14, 2017
    Messages:
    91
    Occupation:
    Bricoleur
    Location:
    France
    Balance:
    1,319Coins
    Ratings:
    +86 / 0 / -0
    My Motion Simulator:
    3DOF, AC motor, Arduino, Motion platform
    To be able to control your ZS-X11H with an arduino, you must modify the smc3 code to be able to operate as a dir enable driver and add octocouplers on the DIR and ENABLE pins.
    the ZS-X11H does not support 5v on its pins.
    Here is the code I used at the time.

    ENA>>enable
    ENB>> DIR
    PWM >>PWM

    Attached Files:

    • Like Like x 1
    Last edited: Mar 11, 2024
  8. shakermotion

    shakermotion New Member

    Joined:
    Jun 22, 2017
    Messages:
    3
    Location:
    Amman
    Balance:
    68Coins
    Ratings:
    +0 / 0 / -0
    My Motion Simulator:
    DC motor, Arduino, Motion platform, 6DOF
    Dear Hoyang

    Appreciate your feedback. I understood what you have done it Semms to be very good. I am nearly there to get it run. One point still not clear I am using the Octocoplers PC 817, ist that the correct one to be used? can explain more how to connect it? as I am still not able to change the direction.

    thank you in advance.

    best regards

    Shaker