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

Tutorial SMC3 Arduino 3DOF Motor Driver and Windows Utilities

Discussion in 'SimTools compatible interfaces' started by RufusDufus, Dec 1, 2013.

  1. George Amemiya

    George Amemiya New Member

    Joined:
    May 23, 2019
    Messages:
    26
    Balance:
    294Coins
    Ratings:
    +7 / 0 / -0
    My Motion Simulator:
    6DOF
    Pictures always help ... (the very basics ...)
    20191008_143715.jpg

    SMC3-Image01.png
    • Like Like x 1
  2. George Amemiya

    George Amemiya New Member

    Joined:
    May 23, 2019
    Messages:
    26
    Balance:
    294Coins
    Ratings:
    +7 / 0 / -0
    My Motion Simulator:
    6DOF
    Hi Juan Pablo ! That happened to me as well, and it was either up or down. What I did was to turn the pot manually until the green line was in the middle, then turn ON the motor. I think that the program itself shuts down the motor when the values are off chart if that make any sense :) Hope it helps !! Good luck !
    • Like Like x 1
  3. Juan Pablo

    Juan Pablo New Member

    Joined:
    May 24, 2018
    Messages:
    8
    Occupation:
    Computer engineer
    Location:
    Argentina
    Balance:
    33Coins
    Ratings:
    +6 / 0 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino, Motion platform
    Thank you for your help! It works!!!
    • Like Like x 2
  4. Juan Pablo

    Juan Pablo New Member

    Joined:
    May 24, 2018
    Messages:
    8
    Occupation:
    Computer engineer
    Location:
    Argentina
    Balance:
    33Coins
    Ratings:
    +6 / 0 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino, Motion platform
    Hi everyone, I got the motors work. I'm moving them with a jostick because CCD does not provide telemetry. I need to smooth some moves of one of the motors.

    upload_2019-10-11_14-39-1.png
    upload_2019-10-11_14-44-32.png

    I think the chart is not bad, I’ve placed a safety stop as you can see so the pot base won’t break. That’s why the feedback do not reach the minimum values.

    IMG_20191011_144211733.jpg

    But that’s not the problem. When the motor goes up there are some vibrations instead of a flowing movement. probably a structural problem of the simulator.

    I don’t know what parameter can soften motion.

    I’d appreciate your help.
  5. BlazinH

    BlazinH Well-Known Member

    Joined:
    Oct 19, 2013
    Messages:
    2,145
    Location:
    Oklahoma City, USA
    Balance:
    16,568Coins
    Ratings:
    +1,831 / 32 / -1
    Increasing Ki will give a motor some boost in reaching the target position and may decrease the vibrations. But worm gear motors have a lot of friction and sometimes the only thing you can do to minimize vibrations is to lessen the weight on them with a counter weight mechanism.
    • Like Like x 1
  6. noorbeast

    noorbeast VR Tassie Devil Staff Member Moderator Race Director

    Joined:
    Jul 13, 2014
    Messages:
    20,460
    Occupation:
    Innovative tech specialist for NGOs
    Location:
    St Helens, Tasmania, Australia
    Balance:
    144,596Coins
    Ratings:
    +10,741 / 52 / -2
    My Motion Simulator:
    3DOF, DC motor, JRK
    When pushing the motors, as @BlazinH suggests, you may reach a point where you need to monitor how hot they get and might need to consider some form of cooling.
    • Like Like x 1
  7. li sun

    li sun New Member

    Joined:
    Oct 29, 2018
    Messages:
    2
    Balance:
    - 54Coins
    Ratings:
    +0 / 0 / -0
    My Motion Simulator:
    2DOF, 3DOF, 4DOF, 6DOF
    hi @RufusDufus , I want to do some changes for the need of utils, is it possible I can have your source code of SMC3Utils? Thank you for the great work!
  8. noorbeast

    noorbeast VR Tassie Devil Staff Member Moderator Race Director

    Joined:
    Jul 13, 2014
    Messages:
    20,460
    Occupation:
    Innovative tech specialist for NGOs
    Location:
    St Helens, Tasmania, Australia
    Balance:
    144,596Coins
    Ratings:
    +10,741 / 52 / -2
    My Motion Simulator:
    3DOF, DC motor, JRK
    I could be wrong but I recall that buried somewhere was a comment that the source was lost on some old computer.
  9. li sun

    li sun New Member

    Joined:
    Oct 29, 2018
    Messages:
    2
    Balance:
    - 54Coins
    Ratings:
    +0 / 0 / -0
    My Motion Simulator:
    2DOF, 3DOF, 4DOF, 6DOF
  10. GruntyPig

    GruntyPig New Member Gold Contributor

    Joined:
    Apr 14, 2010
    Messages:
    14
    Occupation:
    Ice Cream QC Engineer
    Location:
    Aberdeen, Scotland
    Balance:
    - 121Coins
    Ratings:
    +8 / 0 / -0
    My Motion Simulator:
    Arduino, Motion platform, 6DOF
    Hello Everybody. I've been using the SMC3 code with Simtools and my 2DOF sim for a while now and it works great.

    I am building a 6DOF Stewart platform and I'm planning to use SMC3 with 3 arduino UNOs to control 6 BLDC-8015A drivers with 6 linear actuators with feedback pots for position. The actuators are built, tested and working ok.

    I have a question about manually adjusting the starting position of the 6DOF actuators, to make the actuators sit in a lower position instead of sitting mid-stroke (to make it easier to get in and out of the sim).

    I was thinking about modifying the SMC3 code and adding a switch to one of the spare pins on the arduino to make the SMC code go to a different (lower) starting point when the switch is engaged instead of the normal mid position of 512 on the feedback pots. The actuators would then go back to the mid position once the switch is disengaged.

    I was just wondering if this would be the right way to make some sort of temporary adjustment to the middle position of the actuators - or is there a better way to do achieve what i am trying to do?
  11. MarcoMade

    MarcoMade Active Member

    Joined:
    Jan 3, 2018
    Messages:
    150
    Occupation:
    Tecnico pc hardware/software MadeFix
    Location:
    italy
    Balance:
    157Coins
    Ratings:
    +62 / 0 / -0
    My Motion Simulator:
    2DOF, 3DOF, DC motor, Arduino
    hello try to use electric power steering motors, for example those of opel corsa model B.
    they are extremely fast and powerful, nothing to do with the small and poor wipers.
    but you have to build Hall effect and bracket support to move the simulator.
    engines moved perfectly from smc3 and ibt2.
    my station also moves 150kg effortlessly, with a 30A psu 12v
    • Informative Informative x 1
  12. BlazinH

    BlazinH Well-Known Member

    Joined:
    Oct 19, 2013
    Messages:
    2,145
    Location:
    Oklahoma City, USA
    Balance:
    16,568Coins
    Ratings:
    +1,831 / 32 / -1
    That would suffice but you will also need to limit the maximum speed in some way also to keep it from going from zero to full speed instantly. At minimum you should set a maximum speed when going down and another for going up if it takes considerably more power to go upwards.
  13. GruntyPig

    GruntyPig New Member Gold Contributor

    Joined:
    Apr 14, 2010
    Messages:
    14
    Occupation:
    Ice Cream QC Engineer
    Location:
    Aberdeen, Scotland
    Balance:
    - 121Coins
    Ratings:
    +8 / 0 / -0
    My Motion Simulator:
    Arduino, Motion platform, 6DOF
    Thanks for that BlazinH, much appreciated. Yes, I was looking at your soft start code and thinking the same thing. The gravity weight of the platform is balanced with a pair of airsprings on each side of the actuators, so the up/down speed should be roughly equal, but only when the driver is actually in the seat. The Airsprings give about 25kg of vertical force per actuator at 60psi, so the modified SMC code will need to pull the platform down to the required height against the force of the airsprings to allow the driver to get into the seat. So, in my case, with no driver in the seat, it will need more power on the way down, but you are right that I will need to think about speed control carefully no matter which direction it is moving.

    I was thinking of modifying the potscaling function and fitting a pot onto pin A5 to adjust either the Target1 & Target2 variables or the CenterOffset1 & CenterOffset2 (but i dont see CenterOffset being used in the code, although it is declared at the start?). Having a Pot would allow the speed to be controlled manually, gradually turning the pot to lower the sim until low enough to climb up.

    Ideally, what i want to be able to do is boot up the PC, turn on the power for the actuators, let the actuators "home" to the normal center position as per the SMC3 code, and then either press a button or turn a pot to slowly lower the actuators to a position just above the CutOffLimitMin. Once the driver is in the seat, the switch or pot can then be switched off and the actuators return to their original center position. The startup / stop string in the serial interface of Simtools or FlyPT's Mover software might work, but i would like to be able to control the height before I startup Simtools or Mover.

    I'll continue to look at the code and give it some more thought. Thanks again.
  14. Martin.Berger

    Martin.Berger Member

    Joined:
    May 6, 2014
    Messages:
    71
    Balance:
    214Coins
    Ratings:
    +3 / 0 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
    Hi@all.
    After a long time i am Back again.
    New motirdrivers: ibt4.
    Code changed to Mode 2
    Motors Ground isolatet.
    Powersupply: ho dps800
    At 70 pwm Motors start Tübingen VERY slowly.
    At 100 pwm Motors shaking arround and Stutter.
    Yelow lines are shaking wildly
    Pics come tomorrow.
    Any ideas?
    Thanks martin
  15. BlazinH

    BlazinH Well-Known Member

    Joined:
    Oct 19, 2013
    Messages:
    2,145
    Location:
    Oklahoma City, USA
    Balance:
    16,568Coins
    Ratings:
    +1,831 / 32 / -1
    Ibt-4 is not supported. The supported Ibt-2 is driven thru the EN pins which are missing on the Ibt-4.
  16. Martin.Berger

    Martin.Berger Member

    Joined:
    May 6, 2014
    Messages:
    71
    Balance:
    214Coins
    Ratings:
    +3 / 0 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
    Hi.
    That was a mistake. I use ibt2 such as in the picture posted in the beginning of this thread. I also use this wiring.
    Any ideas why my pwm(yellow Line?!) is doing strange things going Up to lets das 100 pwmMax
    Thanks
    Martin
  17. Martin.Berger

    Martin.Berger Member

    Joined:
    May 6, 2014
    Messages:
    71
    Balance:
    214Coins
    Ratings:
    +3 / 0 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
    Here are some pics:

    Attached Files:

  18. XaviAlonso

    XaviAlonso New Member

    Joined:
    Dec 10, 2015
    Messages:
    21
    Location:
    España
    Balance:
    49Coins
    Ratings:
    +7 / 0 / -0
    My Motion Simulator:
    2DOF
    Hi guys, hello again, i have trouble to made work the 2 dof motors.
    I start use the arduino uno and put the code, i use the smc3 for check and all works fine.
    I use the motormonsters and pods.
    But in the xsimtools i cant make in the output to send the second dof for the second motor.

    i select surge for the first motor in the Axisa1
    And heave for the second dof.

    i try to select in the same dof and selec surge for axisa1 and heave axisa2
    And try in separate dof

    and in the output write
    [A<axis1a>][A<axis2a>]

    but in the output test
    I cant control the second motor.( heave)

    any suggestion ?
    Thanks guys for your times.
    Xavi
  19. noorbeast

    noorbeast VR Tassie Devil Staff Member Moderator Race Director

    Joined:
    Jul 13, 2014
    Messages:
    20,460
    Occupation:
    Innovative tech specialist for NGOs
    Location:
    St Helens, Tasmania, Australia
    Balance:
    144,596Coins
    Ratings:
    +10,741 / 52 / -2
    My Motion Simulator:
    3DOF, DC motor, JRK
    Can you please post pictures of all of your settings.

    If you are using clone MMs then you need to test them, as they are often faulty: https://www.xsimulator.net/community/faq/reputable-monster-moto-suppliers-testing-before-use.158/
  20. XaviAlonso

    XaviAlonso New Member

    Joined:
    Dec 10, 2015
    Messages:
    21
    Location:
    España
    Balance:
    49Coins
    Ratings:
    +7 / 0 / -0
    My Motion Simulator:
    2DOF

    Attached Files: