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

Bumpy Motion in SMC3

Discussion in 'DIY Motion Simulator Building Q&A / FAQ' started by Tim Herschbach, Jan 15, 2024.

  1. Tim Herschbach

    Tim Herschbach Member Gold Contributor

    Joined:
    Oct 23, 2023
    Messages:
    46
    Balance:
    246Coins
    Ratings:
    +14 / 0 / -0
    The only thing holding me back right now is the motion of my motors are "rough" or "bumpy" feeling when the motion should be smooth. This happens whether I'm sitting on the chair or not. I've been tweaking settings while running sine motion in smc3 and I've been able to improve it, but going too far creates other problems which makes me think I'm not looking in the right place.

    Decreasing Kp improves it, but if I go below around 250, then the large scale motion starts to fail.
    Decreasing PWMmin improves it, but same thing starts to happen.... large scale motion falls apart below around 15.
    Kd/Ks don't seem to have an effect.

    I'm pretty confident my pots are rock solid. If anything there might be some play at the bottom and top, but there shouldn't be an variation mid-stroke. I'm not sure what else to try. The SMC3 screenshot is where I'm at now and it's the best I can get it. Hopefully someone will have some ideas of things to try or check.

    24v, 250w, 75rpm wheelchair motors
    IBT-2's
    360° hall pots
    2x 24v, 600W PSUs

    Thanks in advance.

    Attached Files:

  2. Gadget999

    Gadget999 Well-Known Member

    Joined:
    Dec 27, 2015
    Messages:
    1,911
    Location:
    London
    Balance:
    11,694Coins
    Ratings:
    +460 / 9 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino, 6DOF
    set pwm min to zero
    set pwmmax and maxrev to 255

    reduce clip and limits to much smaller numbers

    show us a video of the problem
  3. Tim Herschbach

    Tim Herschbach Member Gold Contributor

    Joined:
    Oct 23, 2023
    Messages:
    46
    Balance:
    246Coins
    Ratings:
    +14 / 0 / -0
    PWMmin to zero does smooth out the motion on the way up and down significantly, but then the levers get delayed when switching direction. They stall a bit at the bottom and top. Notice the flat spots after the peaks and troughs when pwmmin is 0. 30 smooths those out completely. I think 10 to 15 is a good balance between the smoothness of the straight line motion and the stop-to-start motion. In flight with the butt kicker and all the axes active, it's imperceptible.

    Attached Files:

  4. noorbeast

    noorbeast VR Tassie Devil Staff Member Moderator Race Director

    Joined:
    Jul 13, 2014
    Messages:
    20,675
    Occupation:
    Innovative tech specialist for NGOs
    Location:
    St Helens, Tasmania, Australia
    Balance:
    145,912Coins
    Ratings:
    +10,806 / 52 / -2
    My Motion Simulator:
    3DOF, DC motor, JRK
    Try increasing the kp.
    • Like Like x 1
  5. Tim Herschbach

    Tim Herschbach Member Gold Contributor

    Joined:
    Oct 23, 2023
    Messages:
    46
    Balance:
    246Coins
    Ratings:
    +14 / 0 / -0
    This makes it worse. I just found that if I lower Kp to 150, it's quite smooth, but then it has trouble staying on target. (attached)

    Attached Files:

  6. Tim Herschbach

    Tim Herschbach Member Gold Contributor

    Joined:
    Oct 23, 2023
    Messages:
    46
    Balance:
    246Coins
    Ratings:
    +14 / 0 / -0
    I'm wondering if it's a problem with the PSU or the IBT-2's? Both axes are behaving with the same sensation... I wonder if the PSU's are putting out enough power? If I put SMC3 output to square mode or shake the rig quickly with manual mode, the PSU's actually sound like they lose power during the violent motions.. the fan sounds like it turns off for a moment during the motion.
  7. Josh_Possa

    Josh_Possa Active Member

    Joined:
    Jan 25, 2021
    Messages:
    109
    Location:
    Catalunya
    Balance:
    498Coins
    Ratings:
    +31 / 0 / -0
    My Motion Simulator:
    2DOF, 3DOF, DC motor, Motion platform
    Hey Tim, how did you manage with the noise problem? I'm in the same boat for months and nothing I'm trying to solve the problem worked.

    Thanks!
  8. Tim Herschbach

    Tim Herschbach Member Gold Contributor

    Joined:
    Oct 23, 2023
    Messages:
    46
    Balance:
    246Coins
    Ratings:
    +14 / 0 / -0
    I have not. I haven't been flying much actually since I completed the chair. It's just a huge pain to set everything up and get going, it isn't really worth it anymore. I hate to say it but it kinda killed my interest in flight simming for the time being at least. And I can't fly without the chair because all of my peripherals are attached.

    I would love to have a solution, but at this point I'm not too interested in working on a solution. Hopefully the interest will return. I'm still glad I built the thing, I learned a ton and it feels like quite an accomplishment for me.
    • Like Like x 1
  9. Josh_Possa

    Josh_Possa Active Member

    Joined:
    Jan 25, 2021
    Messages:
    109
    Location:
    Catalunya
    Balance:
    498Coins
    Ratings:
    +31 / 0 / -0
    My Motion Simulator:
    2DOF, 3DOF, DC motor, Motion platform
    What Arduino code are you using? Try to reduce the communication speed between the PC and the Arduino. I'm using the SPS code for the Sabertooth controllers and the key is put a jumper from the 8 pin to GND and left the jumper connected. If you are using the "regular" code I think you can configure it manually from the Arduino IDE and then in adjust it in Simtools/FlyPT interface.

    Reduce the speed from 500000 to 115000 reduce that behavior and the motors temperatura significantly. Before that solution my motors got very very hot after a few minutes of work, now the motors are cold after more than an hour of work.

    I know how frustrating it is and I hope you find a solution man, really.
  10. Tim Herschbach

    Tim Herschbach Member Gold Contributor

    Joined:
    Oct 23, 2023
    Messages:
    46
    Balance:
    246Coins
    Ratings:
    +14 / 0 / -0
    Thanks for the input. I'm using SMC3. When I get a chance, I'll look into it. I have no idea how to reduce the speed, but I'll look into it for sure when I get a chance.
  11. m50b20

    m50b20 Member

    Joined:
    Jan 4, 2024
    Messages:
    70
    Balance:
    80Coins
    Ratings:
    +54 / 1 / -0
    What is your lever length ? Try to reduce it. I thought your motors are too weak (
    Or PSU
  12. Josh_Possa

    Josh_Possa Active Member

    Joined:
    Jan 25, 2021
    Messages:
    109
    Location:
    Catalunya
    Balance:
    498Coins
    Ratings:
    +31 / 0 / -0
    My Motion Simulator:
    2DOF, 3DOF, DC motor, Motion platform
    I don't think so, I built a 2DOF rig similar to the OP and with more or less the same motors and PSU specs and it was powerfull enough for a 2 DOF if it is well balanced.

    Can you move manually the hall sensor while it is connected to the motor? I installed an elastic belt (instead of a toothed belt) that makes me able to move the hall and make the motor moving without any command from the PC. By this way the arduino will correct the position of the motor by they own. Try it (be careful manipulating the motors and sensors manually) and notice if the movements are smooth or what. If the movements are good, I'm sure the problem is in the communications between the PC and the Arduino. That way is the way I use to isloate the problem (then I discovered by chance about the jumper I mentioned)
  13. Tim Herschbach

    Tim Herschbach Member Gold Contributor

    Joined:
    Oct 23, 2023
    Messages:
    46
    Balance:
    246Coins
    Ratings:
    +14 / 0 / -0
    I would think that as well except it behaves this way whether I'm sitting on it or not. I can put my hand on the lifter rods and feel it when I'm not on the chair. It doesn't seem to change at all as I apply load.

    CTC is 65mm.

    I have toothed belts, so no. That would be a good way to take the sensor out of the equation (not to mention it would be much easier to level the levers). I could just disconnect the lifter arms and remove the belts and let them spin freely while I try to assess whether or not it is still misbehaving. It might be tricky though with such a short lever to try to assess motion smoothness, but I think it could be done.

    Fwiw, I don't think it is a malfunctioning component as both motors exhibit this "lumpy" motion. But maybe the halls don't have a high enough resolution or something? They are the 360° kind as I didn't want to take a chance with breaking them. IIRC, they're geared 3:1 so I'm getting almost 270° of travel from top to bottom.

    One thing I have noticed that may or may not be related... if I use the SMC3 utility to make an abrupt motion change using manual mode, or if I set the output pattern to square wave to get hard/violent direction changes, the PSU's sound like they power down for a moment during that violent direction change. The fans spin down, etc... like they're not getting enough juice. This type of violent action doesn't occur during a normal flight, even during a wreck, as it is extremely jarring and could break something, but it is something to note.
    Last edited: Jun 5, 2024
  14. Josh_Possa

    Josh_Possa Active Member

    Joined:
    Jan 25, 2021
    Messages:
    109
    Location:
    Catalunya
    Balance:
    498Coins
    Ratings:
    +31 / 0 / -0
    My Motion Simulator:
    2DOF, 3DOF, DC motor, Motion platform

    Your Hall effect sensors are perfect, I used that kind of sensors with my 2DOF rig and now with my 3DOF and they just work perfect.

    The problem with the PS when violent movements is totally normal, keep in mind the controllers are surging lot of current from the PS and when the motors stops a regenerative current come back to the controllers and PS and they will clip in the best cases, I burnt a few (cheap) PS because of that.

    I had exactly the same lumpy motion with my motors till the PC and Arduino speeds match at 115000.

    PD: I see in the SMC code at the first of the Setup() function (line 360 in the SMC v1.7a) the serial port starts at 500000, try to change it to 115200. Change the interface (if in Simtools) or the (serial) Output (if in FlyPT) to 115200 too to match speeds and try again.

    Hope it helps
    Last edited: Jun 7, 2024
  15. luu trung

    luu trung Member

    Joined:
    Apr 4, 2022
    Messages:
    71
    Balance:
    156Coins
    Ratings:
    +7 / 0 / -0
    My Motion Simulator:
    3DOF
    try setting 20khz and Fpid/9 in smc3
    • Like Like x 1
  16. Sebastian2

    Sebastian2 Member Gold Contributor

    Joined:
    Dec 17, 2023
    Messages:
    52
    Balance:
    138Coins
    Ratings:
    +35 / 0 / -0
    Hi Josh, interesting stuff! I wanted to give it a try. I changed the bit rate to 115200 in Arduino and successfully uploaded the code. However, SMC3Utils does not seem to work with this setting. I guess it expects SMC3 to run at 500000 bits per second. I also see no option to change that in SMC3Utils.ini. Did you also encounter this problem and if so, do you have a solution for this issue?
  17. Josh_Possa

    Josh_Possa Active Member

    Joined:
    Jan 25, 2021
    Messages:
    109
    Location:
    Catalunya
    Balance:
    498Coins
    Ratings:
    +31 / 0 / -0
    My Motion Simulator:
    2DOF, 3DOF, DC motor, Motion platform
    Oh yes, in fact with the SPS code (a SMC3 modified code) if I put the jumper that configure it to 115200 SMC3utils does not work so the workaround is disconnect the jumper to acces SMC3utils, I don't mind that it can happen with the regular SMC3 arduino code. My though in your case the way is maybe configure the PID manually in the code and upload it to arduino directly (it maybe add a complexity layer of course)
  18. Sebastian2

    Sebastian2 Member Gold Contributor

    Joined:
    Dec 17, 2023
    Messages:
    52
    Balance:
    138Coins
    Ratings:
    +35 / 0 / -0
    Ooof. I don't want to without a way to check the pot signal and to manually control the motors. So losing SMC3utils doesnt sound attractive to me.