1. 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 Download Package Now!
  2. 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
  3. 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 here. Do not following these rules will lead to permanent exclusion from this website: Read the forum rules.

Tutorial From AtoZ : 2DOF arduino wiper playseat

Discussion in 'DIY Motion Simulator Projects' started by RacingMat, Aug 8, 2013.

  1. RacingMat

    RacingMat Well-Known Member Gold Contributor

    Joined:
    Feb 22, 2013
    Messages:
    1,923
    Location:
    Marseille - FRANCE
    Balance:
    17,721Coins
    Ratings:
    +1,827 / 16 / -2
    My Motion Simulator:
    2DOF, DC motor, Arduino
    Please refer to the DIY tutorial: it's up to date. http://www.xsimulator.net/2dof-motion-simulator-truck-wiper-motor-playseat/

    This post was about Xsim before Simtools release.

    And post your messages in these topic here !
    ______________________________

    Among many designs, I finally choose to follow the building instructions of Lipide512 in his great tutorialhttp://www.gamoover.net/Forums/index.php?topic=25907.0,
    - thanks to him for his help !
    - and thanks to Xsim software, I have now the joy to drive my own DIY dynamic 2DOF simulator !!! 8)



    Here the link to my original post in french automatically translated by google into english http://translate.google.fr/translate?sl=fr&tl=en&prev=_t&hl=fr&ie=UTF-8&u=http://www.gamoover.net/Forums/index.php?topic=27617.0&act=url

    [​IMG]

    The concept:
    A dynamic simulator which integrates the driver, the seat, pedals and steering wheel (but not the screens !)
    The two axes (2DOF: Two Degrees of Freedom) are : roll and pitch (roulis and tangage).

    [​IMG]

    The principle is inspired by the commercial model from Frex http://www.frex.com/gp/motion/motionpage1.html
    but with gearmotors (wiper motor + rod) replacing the electric linear actuators.

    A glogal overview of the electrical stuff:
    [​IMG]

    [*]This simulator uses the essential software Xsim to extract games telemetry data and send the data to the motors.

    [*]Two computers :
    Pc #1 (graphic card 7970 lightning, Windows 7) :

    - The car games (Dirt3, rFactorLite and Richard Burns Rally)
    - Xsim Sender

    PC #2 (Recycling) connected via a crossover cable RJ45 to PC #1

    - Xsim Profiler
    [*]Electronic cards : Arduino + Motomonster
    An Arduino card linked to computer #2 with a USB cable.
    The Arduino controls the MotoMonster shield motor driver board.


    The power board Sparkfun MotoMonster drives the two motors (12V 47A = 575W) according to the instructions of the Arduino (5V 5mA = 25 mW).

    For simplicity, the motor driver board is equivalent to 4 relays:

    driving the right motor forward <-> this means mounting the right side,
    driving the right motor in the other direction <-> this means lowering the right side,
    driving the left motor forward <-> this means mounting the left side,
    driving the left motor in the other direction <-> this means lowering the left side,


    An arduino program (C language)

    This program interprets the data sent by serial port xsim (instructions) and sends it to the motor control board.
    It performs a feedback control by reading the values of the potentiometer coupled to the motors :
    -> The actual position is compared to the setpoint, and this will create a new updated order sent to the MotoMonster card.

    This feedback loop is performed every 80 ms.

    A punchy 12V Power Supply Unit about 30A.

    Electric Motors :

    2 Truck Wiper Motors for actuating the movable platform, with their positioning potentiometer (for feedback).

    Structure in rectangular steel tube:

    - the frame
    the frame rests on the ground and supports the movable platform via a motor drive shaft (U joint).

    - the moving part: the cockpit

    - A true racing bucket seat (tubular). The fiber seats are lighter but more expensive.
    - A harness! important to feel the seat movements and for realism of immersion
    - Force Feedback steering wheel and pedals


    The dimensions
    Here are the quotations to give you an idea :

    [​IMG]

    [​IMG]

    wiring.gif
    • Like Like x 6
    • Old Old x 1
    Last edited: Jul 26, 2017
  2. RacingMat

    RacingMat Well-Known Member Gold Contributor

    Joined:
    Feb 22, 2013
    Messages:
    1,923
    Location:
    Marseille - FRANCE
    Balance:
    17,721Coins
    Ratings:
    +1,827 / 16 / -2
    My Motion Simulator:
    2DOF, DC motor, Arduino
    The step-by-step pictures:

    Structure

    It was very convenient to have the bucket seat's mounting plate: I drilled the structure easily!
    [​IMG]


    Power Drill and a conical tool to adjust the hole to good diameter
    Take care to ensure the shaft 's squareness : it has to be vertical !
    http://gamoovernet.pixhotel.fr/pics_gam ... sis-3-.JPG

    Then I crossed the bars at 45 ° to triangulate my frame :
    [​IMG]

    The gimbal (U joint) is blocked in rotation along the yaw axis.
    [​IMG]
    [​IMG]

    the gimbal assembly:
    [​IMG]
    [​IMG]

    which gives this :)
    [​IMG]
    [​IMG]
    and this
    [​IMG]



    Theignition key, of course = :))
    a plate on the side of the wheel holder:
    [​IMG]

    and here is a starter / emergency stop key §
    [​IMG]

    The pedal support
    [​IMG]

    [​IMG]
    the right bracket must be folded down!

    Dirlling of the pedals and support plate at the same time
    Two-components glue bonding and 4 screws M5x16
    take the opportunity to remove the unnecessary ballast which adds to the inertia of the system :)

    after painting (and shorter legs):
    [​IMG]

    and perspective view
    [​IMG]

    The bottom
    To finish the structure, a wooden bottom on which I can put my electric stuff
    [​IMG]

    Drilling diameter 4, threading M5 and screw
    [​IMG]

    The rubber feet
    Essential accessory: small rubber feet to absorb vibrations and provide stability on the ground.
    Here are some hard plastic and adjustable feet
    [​IMG]

    Width of the frame, I aimed a compact size to begin with
    Edit: The first tests have shown that ... it was not wide enough!
    then I added + 11 cm on each side (it must go through the door ^ -) for a total of 68 cm
    [​IMG]

    The Center of Gravity cdg
    I determined it with precision with an assistant:
    on a tubular steel rod, roll frame until you find the balance
    with the driver in it!
    (the rod has to be perpendicular to the plateform !)
    [​IMG]
  3. RacingMat

    RacingMat Well-Known Member Gold Contributor

    Joined:
    Feb 22, 2013
    Messages:
    1,923
    Location:
    Marseille - FRANCE
    Balance:
    17,721Coins
    Ratings:
    +1,827 / 16 / -2
    My Motion Simulator:
    2DOF, DC motor, Arduino
    The 4-point harness
    In fact, it is a 6 points but it's too much ! and not comfortable : 4 is fine.
    [​IMG]

    welding a small bolt
    [​IMG]

    the clip can be mounted and removed
    [​IMG]

    side view:
    [​IMG]

    Overview:
    [​IMG]
    conclusion: the harness is great!
    - For the look :cool:
    - For immersion: it feels like being in a rally car!
    - For sensations: I think we fight less against movements playseat, it is more inclusive

    but it requires a keyboard support!



    Mechanical part:

    In Frex system, the seat is operated by electric actuators.
    Xsim users recommand the use of SCN5 actuators. The Xsim application has a dedicated setting window.
    But the cost was too expansive for me: € 320 each (the only retailer here (https://miraiintertech.com/e-store/products/SCN5.html))

    So, the actuators are advantageously replaced by wiper motors and a system of rods (just 10 times less expensive).

    Wiper motors

    Edit : finally, this bracket is too short : I couldn't mount the 2 motors symmetrically .
    If you can, make a DIY bracket with custom height.
    [​IMG]

    Mounting with 3 screws M6 x 16 and washers
    [​IMG]

    A steering rod (15 €):
    [​IMG]

    A connecting rod:
    - Center distance 65 mm (finally)
    - 5 mm thick
    [​IMG]

    With a file, try to file a 18° cone down : it has to go well on the motor shaft.
    Tighten hard !

    Overview
    [​IMG]

    motors and rods final mounting
    sanding the edges to remove the zinc coating of the bracket for a good welding
    [​IMG]

    I checked the alignment of the motors with the platform (= I conterbalanced a small angular error during the welding of the platform)
    [​IMG]

    Edit: the engine brackets are not stiff enough! they move under the constraints.
    solution :
    [​IMG]

    and I checked the rod could rotate freely at 360°
    do not hesitate to do the same (one full turn may arrive more quickly than you think :)
    [​IMG]

    here the assembly of the connecting rod with the movable platform :
    [​IMG]

    Fixing rods on the platform:

    we notice the hexagonal hollow: handy to tighten nylstop nut for example :)
    it works well for top seat side.
    [​IMG]

    On the other end, I shortened the length of the threaded rod so that it can rotate 360 ° without stumbling. There is a problem : the spindle mounted on ball, turns on itself when i tighten the nylstop nut : '(
    So I made a hacksaw deep enough to insert a screwdriver while I clamped the nut.
    [​IMG]
    • Like Like x 1
  4. RacingMat

    RacingMat Well-Known Member Gold Contributor

    Joined:
    Feb 22, 2013
    Messages:
    1,923
    Location:
    Marseille - FRANCE
    Balance:
    17,721Coins
    Ratings:
    +1,827 / 16 / -2
    My Motion Simulator:
    2DOF, DC motor, Arduino
    Mounting potentiometers
    wiper motor's preparation = fixing the pot at the back of the engine

    1 / tapping of the smooth hole of the engine
    2 / a M4 threaded rod
    3/ a 6mm diameter (like pot) spacer and M4 tapped

    [​IMG]

    assembled with loctite:
    [​IMG]

    then the parts for making a rotational connection adjustable to adjust the potentiometer
    (The brass piece is ... a 380V connecting block course!)
    [​IMG]

    This solution is rather excellent!
    it is tight enough to but if it goes too far: the pot is not damaged, it slips.
    Overview!
    [​IMG]

    Making a light and flexible bracket for the pot: it should mainly prevent its rotation and absorb a bit of eccentricity.

    thickness: 0.8 mm for soft and flexible
    Overall un-folded dimensions: 50mm x 129 mm

    the first bracket and the second waiting!
    [​IMG]

    overview !
    [​IMG]

    Engine and rods mounting :

    - Make sure the platform is horizontal (spirit level)
    - the 2 rods has to be perpendicular (red square on picture)
    [​IMG]



    For the electronic part:
    The 12V power supply 47A
    [album]1558[/album]
    eBay, the DPS-600bp model (http://www.ebay.fr/sch/i.html?_from=R40 ... pb&_sop=15) is 30 € with shipping: 575W
    The mod is very light! https://sites.google.com/site/tjinguytech/my-projects/HP47A ad here http://www.worldwidedx.com/general-...243-server-power-supply-conversion-cheap.html
    There is not need to open the block and therefore no risk of electric shock.


    Cards: Arduino and MotoMonster:
    here, the wiring diagram drawn by Lipide512
    9640

    [​IMG]

    I choose not to stack the two cards although it is expected to:
    - I wanted to keep me a chance to reallocate the outputs of the Arduino
    - I wanted better cooling system (so I raised the motomonster)

    Arduino /..Motomonster
    ......GND <-> GND pin
    ........5V <-> 5V
    .....pin 4 <-> pin 4
    .....pin 5 <-> pin 5
    .....pin 6 <-> pin 6
    .....pin 7 <-> pin 7
    .....pin 8 <-> pin 8
    .....pin 9 <-> pin 9

    pin 13 is not needed

    2DOF arduino and 1 motomonster.png

    a video to show the amplitudes of movement of the cockpit and the moving speed.
    The position commands are typed by hand in the arduino serial monitor (RF7LF7 then RAELFF etc ...)


    Heat sinker had to be cut in half in order to have a good contact with the 2 chips (uneven)
    [​IMG]

    go for the thermal paste
    [​IMG]

    spreading the paste:
    [​IMG]

    Protection for cables :
    -> electrical conduit
    -> A notch
    [​IMG]

    -> And insert in the hole!
    [​IMG]

    the cover of the electronic cards with his fan
    a grid that prevents the wires to be worn against the blades.
    [​IMG]

    overview:
    [​IMG]

    [​IMG]
    • Like Like x 5
    Last edited: Jul 26, 2017
  5. RacingMat

    RacingMat Well-Known Member Gold Contributor

    Joined:
    Feb 22, 2013
    Messages:
    1,923
    Location:
    Marseille - FRANCE
    Balance:
    17,721Coins
    Ratings:
    +1,827 / 16 / -2
    My Motion Simulator:
    2DOF, DC motor, Arduino
    Arduino configuration :

    */ Arduino :
    http://arduino.cc/en/Guide/Windows
    install manually the drivers (see the Arduino's documentation for Windows Seven installation).
    After complete installation, find in the Windows system on which COM Port it has been installed : you will need to put this information in Xsim Profiler.

    [​IMG]

    Double clic on Arduino's line and adjust the default speed :
    [​IMG]

    In the Arduino plateform, put the right COM Port : if not, you won't be able to upload your program into the Arduino...
    [​IMG]

    If you need to lead some communication tests, use the Serial Monitor (magnifying lens on top right ).
    [​IMG]


    Adjust here as well the same default speed :
    [​IMG]

    Arduino 2DOF code and Simtools screenshots
    for Arduino code here
    and more details on Simtools settings : go the tutorial http://www.xsimulator.net/simtools-quickstart/


    Items to buy
    - motors 12N.m 24V irreversible
    cost 2x35€ + 16€ shipping
    SWF VALEO NIDEC ITT 404.458 motoréducteur 24V DC http://www.smolka-berlin.de/onlines...cteur_24V_DC__Offre_sp%E9ciale%21%21%21_/4398
    beware to choose irreversible gearmotors...

    - Arduino board : 25€ + shipping http://store.arduino.cc/eu/index.php

    - MotoMonster board (16V max) :
    70€ @ Sparkfun https://www.sparkfun.com/products/10182
    27$ @ DX http://dx.com/p/monster-moto-shield-for-arduino-red-161274

    - server PSU 12V 47A (575W) DSP600 : 35€ on eBay

    - 2x potentiometers : 2x7€ + shipping
    you can buy any cermet potentiometer : cermet means Ceramic Metal.
    It guarantees you that it's the strongest design compared to plastic-carbon low cost pot.
    - cermet
    - linear (not logarithmic)
    - 10 kOhm

    The Anolog Digital Converter behind the analog pins of the Arduino is optimized for 10Kohm pots
    I bought mine at http://www.gotronic.fr/art-potentiometr ... -11293.htm
    you can find here many other electronic distributors : http://codelab.fr/177

    Weight
    + my plateform structure weight 8,6 kg
    tube 30x20x1,5 (1,1 kg/m) 5,4m : 5,9 kg
    tube 16x16x1,5 (0,7 kg/m) 4,1m : 2,7 kg
    + rally tube seat : 9 kg
    + rally harness : 1 kg
    + logitech MOMO wheel and pedals : 4,5 kg
    + buttkicker 1 kg
    subtotal : 25 kg

    + driver !
    grand total : 100 kg which is heavy and has great inertia in mouvements !
    -> so keep in mind to build light

    Electrical power consumption

    I measured the power with this wattmeter : [album]1961[/album]

    PC Games : 80 to 100W
    Dolby 5.1 : 15W
    Power supply PSU : in IA mode rfactor which sakes a lot ! between 170W and 220W (depending on the parameters in Arduino code : max speed and amplitude)
    the PSU efficientcy is 81%, hence it gives 180W to the motors.

    -> 90W per motor -> 7,5 A in 12V DC
    • Like Like x 5
    Last edited: Jul 26, 2017
  6. bsft

    bsft

    Balance:
    Coins
    Ratings:
    +0 / 0 / -0
    nice post.
    Please note, we use simtools, no x-sim, so please do not refer to x-sim here anymore. If you must post links, make sure they are worded correctly.
    Last edited by a moderator: Sep 25, 2013
  7. RacingMat

    RacingMat Well-Known Member Gold Contributor

    Joined:
    Feb 22, 2013
    Messages:
    1,923
    Location:
    Marseille - FRANCE
    Balance:
    17,721Coins
    Ratings:
    +1,827 / 16 / -2
    My Motion Simulator:
    2DOF, DC motor, Arduino
    In august the 8th, I was still using Xsim and that was my first step into dynamic playseat :) : i'm thankful for that.

    Since mid-august, I'm beta testing Simtools... with great pleasure!
    To me, it's simplier to use and performant! :cheers
    At the moment, I'm only missing buttkicker support and maybe ODB2 feature which is simply great for "standard" dashboarding even on tablet!
    Yours
    • Like Like x 1
  8. RaceRay

    RaceRay Administrator Staff Member SimAxe Beta Tester SimTools 2.0 Beta Tester

    Joined:
    Nov 8, 2006
    Messages:
    4,605
    Occupation:
    Self-employed | Web and application development
    Location:
    Hamburg, Germany
    Balance:
    24,456Coins
    Ratings:
    +1,080 / 9 / -0
    My Motion Simulator:
    2DOF, DC motor, SimAxe, SimforceGT
    The post will be much more suitable when you describe how to use SimTools with your Simulator;) Otherwise very good description of the assembly
    • Agree Agree x 1
  9. RaceRay

    RaceRay Administrator Staff Member SimAxe Beta Tester SimTools 2.0 Beta Tester

    Joined:
    Nov 8, 2006
    Messages:
    4,605
    Occupation:
    Self-employed | Web and application development
    Location:
    Hamburg, Germany
    Balance:
    24,456Coins
    Ratings:
    +1,080 / 9 / -0
    My Motion Simulator:
    2DOF, DC motor, SimAxe, SimforceGT
    Thanks for bringing some light into it @RacingMat :cheers
  10. eaorobbie

    eaorobbie Well-Known Member Staff Member SimTools Developer Gold Contributor SimTools 2.0 Beta Tester

    Joined:
    May 26, 2009
    Messages:
    2,593
    Occupation:
    CAD Detailer
    Location:
    Ellenbrook, Western Australia
    Balance:
    19,330Coins
    Ratings:
    +1,618 / 22 / -2
    My Motion Simulator:
    2DOF, DC motor, JRK, SimforceGT, 6DOF
    Would like to see game motion coming out of sim tools , in test vid she's a bit slow, but I'm sure that's the done for safety reasons so not to destroy anything.
    • Like Like x 1
  11. RacingMat

    RacingMat Well-Known Member Gold Contributor

    Joined:
    Feb 22, 2013
    Messages:
    1,923
    Location:
    Marseille - FRANCE
    Balance:
    17,721Coins
    Ratings:
    +1,827 / 16 / -2
    My Motion Simulator:
    2DOF, DC motor, Arduino
    Yes, it's not full speed !
    Because at full speed, i'm too shooked up :-/

    But I intend to test it with 24V !! to see if any difference... and I'll make a video with Simtools as well!
    • Like Like x 2
  12. Historiker

    Historiker Dramamine Adict Staff Member Moderator Gold Contributor SimTools 2.0 Beta Tester

    Joined:
    Dec 16, 2010
    Messages:
    1,742
    Occupation:
    Teacher/Cabinet Maker
    Location:
    Michigan USA
    Balance:
    8,981Coins
    Ratings:
    +1,576 / 11 / -1
    My Motion Simulator:
    DC motor, Arduino, Motion platform, 6DOF
    Did you ever test those Chinese boards with full power? I am thinking of repairing mine but do not want to bother if they are bound to fail again.
  13. RacingMat

    RacingMat Well-Known Member Gold Contributor

    Joined:
    Feb 22, 2013
    Messages:
    1,923
    Location:
    Marseille - FRANCE
    Balance:
    17,721Coins
    Ratings:
    +1,827 / 16 / -2
    My Motion Simulator:
    2DOF, DC motor, Arduino
    Not yet! I'm too busy
    I'll tell you... as soon as I do it.
    • Like Like x 1
  14. Historiker

    Historiker Dramamine Adict Staff Member Moderator Gold Contributor SimTools 2.0 Beta Tester

    Joined:
    Dec 16, 2010
    Messages:
    1,742
    Occupation:
    Teacher/Cabinet Maker
    Location:
    Michigan USA
    Balance:
    8,981Coins
    Ratings:
    +1,576 / 11 / -1
    My Motion Simulator:
    DC motor, Arduino, Motion platform, 6DOF
    No worries, keep up the good work!
  15. trust928

    trust928 Member

    Joined:
    Sep 19, 2013
    Messages:
    153
    Location:
    brazil
    Balance:
    344Coins
    Ratings:
    +6 / 0 / -0
    My Motion Simulator:
    2DOF, Arduino
    well.. im making a copy of yours, not exatly the same, im making it bigger and with 3 monitor on it.. but the idea is the same
    but im having a problem..

    u know the motor are behind connected to the chassis... the problem is one side of the motor i can rotate with my hands, as to the other side i cant,,,,,, both motors a like that (wipers motors) so.... if i left it alone the chassis drops down because the motors cant hold the chassis in center so it rotates. and the front of the chassis goes down...

    how can i solve that? only for one side i can rotate with hands.. but the other side i cant rotate with hands... im gonna try to fix it tomorrow
    i hope u can help me thanks
  16. bsft

    bsft

    Balance:
    Coins
    Ratings:
    +0 / 0 / -0
    if you are running wiper motors, they are stiff to turn by hand. even the same brand and type. even with the big worm gear motors, they have no holding when power is turned off. So even if you stay with wipers, you need to expect some slack in motors when power is turned off.
    Ive had wipers in the past that were either easy to turn by hand or impossible to turn by hand with power off.
    • Old Old x 1
  17. RacingMat

    RacingMat Well-Known Member Gold Contributor

    Joined:
    Feb 22, 2013
    Messages:
    1,923
    Location:
    Marseille - FRANCE
    Balance:
    17,721Coins
    Ratings:
    +1,827 / 16 / -2
    My Motion Simulator:
    2DOF, DC motor, Arduino
    @trust928: in fact, gearmotors can be irreversible or not. It depends on gear ratio (and angle of teeth in the gears).
    If they are irreversible, it's better because you don't need to have a break to block the motor when power is cut.

    As bsft said, some does and some doesn't... The motor reference I gave in my post, is irreversible...

    Maybe you can shorten the lever length to reduce the force applyied... until it appears as irreversible.
  18. eaorobbie

    eaorobbie Well-Known Member Staff Member SimTools Developer Gold Contributor SimTools 2.0 Beta Tester

    Joined:
    May 26, 2009
    Messages:
    2,593
    Occupation:
    CAD Detailer
    Location:
    Ellenbrook, Western Australia
    Balance:
    19,330Coins
    Ratings:
    +1,618 / 22 / -2
    My Motion Simulator:
    2DOF, DC motor, JRK, SimforceGT, 6DOF
    Or source some newer wipers or worm gear drives.
    Under power they should hold your rig steady, or is the system not getting enough amps, as in bigger psu or battery might be needed, or sometimes I have found 2 different pids , one for each motor may need to be worked out, no two motors are really exactly the same, try rising the P or D on the pid of the motor that seems to be weak.
    Or find some better motors some times paying a little more means quality, sometime not too.LOL
  19. hlidio

    hlidio New Member

    Joined:
    May 22, 2012
    Messages:
    4
    Balance:
    - 18Coins
    Ratings:
    +1 / 0 / -0
    ohhh, yesss.... good work!
    • Like Like x 1
  20. bsft

    bsft

    Balance:
    Coins
    Ratings:
    +0 / 0 / -0
    wipers are slower than big worm gear motors.
    wipers 50 -60 rpm,
    big worm gears about 140 rpm.
    Wiper gearing tends to chew out, big worm gear motors dont, well, the ones I use dont.