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

Leftfield's 2DOF plus traction loss project

Discussion in 'DIY Motion Simulator Projects' started by Leftfield27, Jan 11, 2023.

  1. Leftfield27

    Leftfield27 New Member

    Joined:
    Nov 19, 2022
    Messages:
    9
    Occupation:
    Trainee Carpenter
    Location:
    France
    Balance:
    87Coins
    Ratings:
    +5 / 0 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino, Motion platform
    I tried a simkit 3dof simulator in project cars in VR at the geekfest salon in Lyon in 2022 and it was just amazing. I just wanted to make one myself. Limited on time money and knowledge but I wanna do this anyway. I've been heavily influenced by the Dmax Youtube videos so I'm planning on following his roadmap.

    In december 2022 I started to source some basic equipment in order to get started over the Christmas holidays.

    The plan is 2DOF with Traction Loss, I will start in the cheapest way that I can to do a poof of concept (to prove that I myself am capable of making something work, then add to it as time and money allow!

    I sourced three old Server PSU's (Dell A870-oo) from PC sistem on ebay, cost me 60 euros for three 870W supplies postage included (great deal!)

    Then three second hand windscreen wiper motors on "le bon coin" (craigs list/gumtree for France) for 65 euros total.

    The rest was Amazon, an Arduino (25 euros) and three IBT2 motor controller (13euros each), a five pack of 10kOhm potentiometers for 8 euros, 30 euros for some thick 10AWG cable for the motors (future proofing) and some 20AWG wire for the electronics. I have one breadboard, and a few cables, I got a big pack of breadboard cables to complete this. I have a bit of wood and some tools plus a multimeter at home, so I was good to go.

    My current rig is made of wood and an old ford focus seat, and runs off my MSI gaming laptop with an RTX 2070 and an oculus rift s (it runs better than the quest 2 which I also have), the image quality in VR is adequate but I would love to get a dedicated graphics card for my desktop PC at some point.

    To race I have a logitech G29 plus pedals (stiffened using the eraser inside the spring trick) and gearstick, and a basic handbrake which I got for Christmas. My pedals got updated to fanatec CSL with loadcell at Christmas, but they malfunctioned and are being repaired by fanatec, havent raced with them yet! And maybe for Christmas next year, if I'm a really good boy I'll ask for a direct drive wheel ;)

    I'm not a great sim racer, but I do enjoy it and am often in iracing with a mazda or skip barber, or assetto corsa.

    The plan is to make a prototype on the cheap to prove to myself that the electronics would work. Then go for bigger motors, and get a basic flux welding setup in order to create a more rigid rig that will do 2DOF plus traction loss for my sim racing kit and me.

    The forum is amazing, I have learned so much already and having this knowledgebase has given me the confidence to start.

    The journey has begun...

    (PS This post is designed for total beginners like me, I am putting in the simple stuff that I am just starting to learn, and maybe I can help a few people who are also just starting, as well as documenting my journey and a place to ask others for help occasionally! I hope that someone finds it useful)
    • Like Like x 1
    Last edited: Jan 25, 2023
  2. Leftfield27

    Leftfield27 New Member

    Joined:
    Nov 19, 2022
    Messages:
    9
    Occupation:
    Trainee Carpenter
    Location:
    France
    Balance:
    87Coins
    Ratings:
    +5 / 0 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino, Motion platform
    I got da power

    So I got a good deal on three Dell A870-00 server power supplies, 870 watts each (that should deal with any power spikes) plugged them in, little green light but no 12v, no fan.

    This is normal, I needed to find the pskill and fan pins and ground them in order to turn this thing on. After a few hours trawling the net, and a lot of Radio Control forums, I found some tips, a quick guide, and a pinout posted by someone (precious stuff!). And the post on Xsimulatot about modifying server PSU's.

    Basically, I just attached C6 and A6 to ground using some breadboard jumper wires and everything was hunky dory, multimeter reading 12,3V. I used a 300ohm resistor via a breadboard when I first tested things out as people suggest that it decreases the risk of a catastrophique failure if you connect the wrong pins together, but removed this later.

    The soldering was messy, some people solder all three power connectors together, i did this on the first PSU, but decided just to solder the middle pin on the other supplies to my 10awg cable as it was difficult to solder properly du to the large size (and me worrying about overheating some delicate component and frying my supply.

    I have been messing around with my setup for a few weeks now as I try and get things working, and these supplies are excellent. I accidentally shorted one for a second which sparked and the led went yellow instead of green. After 10 minutes rest I plugged it back in and the led was green again.

    After getting the server power supplies working (very quick and easy in the end) I tested my three motors (car windscreen wiper motors, no technical details available for power and torque, but they are very very difficult to turn by hand so I guess they have a fairly high gear ratio) and all three rotated fine and quickly. Tested with a wattmeter, they draw around 125W when connected directly to 12V.

    IMG_3870.JPG IMG_3871.jpg IMG_3872.JPG IMG_3873.JPG

    I made a wooden case to house my PSU's, motors and electronics in order to keep things a little neater, and tidy it up/protect it while I tried to get the electronics to work.

    Oh, and the supplies are very quiet, although they havent had any serious load yet.

    Attached Files:

    • Informative Informative x 1
    Last edited: Jan 24, 2023
  3. Leftfield27

    Leftfield27 New Member

    Joined:
    Nov 19, 2022
    Messages:
    9
    Occupation:
    Trainee Carpenter
    Location:
    France
    Balance:
    87Coins
    Ratings:
    +5 / 0 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino, Motion platform
    upload_2023-1-24_21-32-16.png

    Thanks MattMillman.com

    Attached Files:

    • Informative Informative x 1
  4. noorbeast

    noorbeast VR Tassie Devil Staff Member Moderator Race Director

    Joined:
    Jul 13, 2014
    Messages:
    20,570
    Occupation:
    Innovative tech specialist for NGOs
    Location:
    St Helens, Tasmania, Australia
    Balance:
    145,292Coins
    Ratings:
    +10,785 / 52 / -2
    My Motion Simulator:
    3DOF, DC motor, JRK
    Thanks for sharing that useful mod, it hs been added to the server PSU mod section of the FAQs, with credit to yourself: https://www.xsimulator.net/communit...ver-power-supplies-as-cheap-powerful-psus.54/
  5. Leftfield27

    Leftfield27 New Member

    Joined:
    Nov 19, 2022
    Messages:
    9
    Occupation:
    Trainee Carpenter
    Location:
    France
    Balance:
    87Coins
    Ratings:
    +5 / 0 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino, Motion platform
    Un-ground the motors

    Next step was quite easy, following Dmax/Holloween2go and others advice, the 12V windscreen wipers need to be ungrounded. Took me a while to understand why, but it's quite simple.

    In a car, everything is wired to the hot red positive pole of the battery, the current then runs to ground, which is basically the whole chassis of the car which is connected to the negative pole of the battery. This works great in a car.

    In a motion sim however, the current reverses all the time, positive becomes negative and vice versa in order to reverse the direction of the motor. Because the negative wire of the motor is connected to the metal casing around the motor, when the current is reversed, the casing would become postive. If another motor's casing is negative and this one is positive, any connection between them (via a metal sim rig for example!) would cause a short circuit! So with a windscreen wiper motor, you need to remove the connection from the negative pole of the motor to the grounded metal casing (this is not the case for a regular 12v hobbyist motor).

    What I had to do was open up the motor, and using my multimeter on the continuity setting touch the casing and the negative wire, in order to confirm electrical continuity between these. Then look at the circuit board/carbon brush connections/internals of the motor, and find which bits connected to the casing (ie a multimeter probe now on the casing, and the other touching various bits in order to see where the ground connection came from, confirmation of the culprit via a continuity beep from my meter!

    In all three motors, there was a single copper braid coming from one of the carbon brush housings to a part of the circuit board which was screwd to the motor housing. I simply cut this and electrical continuity from the negative wire to the motor casing was gone. Easy peasy in the end, took me less than an hour to do all three.
    • Informative Informative x 1
  6. Leftfield27

    Leftfield27 New Member

    Joined:
    Nov 19, 2022
    Messages:
    9
    Occupation:
    Trainee Carpenter
    Location:
    France
    Balance:
    87Coins
    Ratings:
    +5 / 0 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino, Motion platform
    The Electronics

    I have power, I have motors...

    I also have three IBT2 motor controllers, one arduino, a bunch of breadboard wires and one breadboard, and a five pack of cheap potentiometers...phew, Dmax and Xsimulator, if I ever needed you, it was now.

    This is for me the big bit, will this stuff actually work? The answer is yes, and it wasn't that difficult after all.

    So I first found the thread on Xsimulator

    Tutorial SMC3 Arduino 3DOF Motor Driver and Windows Utilities

    https://www.xsimulator.net/communit...3dof-motor-driver-and-windows-utilities.4957/

    and all the essential information is there.

    I spent a bit of time reading up about Arduinos, it's the first time that I ever used one.

    It runs fine on a USB cable from your PC which gives 5v in order to power everything, no need for a separate power cable. I found a great video on youtube which explained the pinouts, that some are analogue and some digital, and what PWM is.

    This video was really useful:



    The wiring is actually very simple and I understand it better in words than in pictures (although the pictures confirm)

    One circuit is the 12V electrics: power supply to motor controller (IBT2) to motor, all at 12v with decent thickness cable to carry the large current. The motor controller will listen to the Arduino and decide when and how much to turn the current on, or if it needs to be reversed.

    The next circuit (the electronics) runs at 5V from the Arduino, which gets its power from the PC via USB. It contains the Arduino, potentiometers (which sense the motor position) and motor drivers (In my case IBT2 controllers).In this circuit, everything needs to be connected to +5V and 0V/ground.

    The next bit is the only complicated bit. The two or three potentiometers have a middle wire, which connects to the analogue inputs on the Arduino with a variable voltage depending on their physical position (ie the position of the motor shaft to which they are mechanically connected.) This tells the Arduino the actual motor position at any one moment.

    The Arduino will receive information from the game that you are playing via simtools, which will tell the Arduino in what position the motor should be. The Arduino knows where the motor is (via the pot) and knows where it should be (via simtools) and will tell the motor controllers to adjust the voltage supplied to the motors in order to achieve this position.

    The inputs on the IBT2 motor controllers are connected to the outputs of the Arduino. The Arduino tells the motor controllers what current/voltage to apply to the motors (using PWM/Pulse Width Modulation). In other words how hard to drive the motor and in which direction, and can eventually brake the motor by reversing the current until the motor stops. So I just faithfully applied this bit of the wiring diagram posted on the xsimulator site with this basic understanding of what was happening.

    And when I tested it, the bloody thing just worked first time! For me, this was like magic. It actually worked!

    Practically speaking, I used a breadboard in order to connect all the 5V electronics to the Arduino, using a pack of cheap jumper cables that I got on amazon, I think that there were 40 male-male, 40 female-female, and 40 male-female wires and I paid around 12 euros. I also got 7 different coloured rolls of 20AWG wire to attach the pots, I soldered them with my 7 year old Daphné who held the wires in place as I couldn't find my third hand, thanks Daph!

    The motors I connected using 10AWG tinned copper wire. It's bloody thick stuff. It was expensive too, but I didn't want to be a fire hazard, so I checked to see what wire gauge was adapted for a 300W motor at 12V (my wiper motors draw 125W at maw output, but I will eventually get better motors). Anyway, 10AWG was recommended for 25-30amps. But this stuff was so thick that it wouldn't fit in any of the connectors, so I had to thin the wire ends for the connectors. Just really annoying. The IBT2s are supposed to handle a maximum current of 43amps. But the screw-down connectors can't handle the cable size adapted for that! I know that the norms are conservative for cable thickness, but... I still don't understand the mismatch. Anyway, when a week later I needed to extend my wires in order to connect an actual chair, I bought 14AWG wire which is fine for my lower-powered wiper motors, and I will revisit this topic of wire size another day.

    Anyway, I built the circuit.

    SMC3Pinout.JPG Wiring-2-Motors.jpg



    Edit the SMC3 code for Mode 2 like this.

    Arduino to H-Bridge (Chinese 43A)

    ENA ----> IN1/RPWM
    ENB --+-> EN1/R_EN
    +-> EN2/L_EN (ie connect ENB to both R_EN and L_EN)
    PWM ----> IN2/L_PWM
    n.c. ----> IS1/R_IS
    n.c. ----> IS2/L_IS
    +5V ----> VCC
    GND ----> GND

    This last bit was a tad confusing, here is a crappy quality ibt2 pinout

    ibt2 pinout.jpg Just connect it as shown, the R_EN and L_EN wires should be joined together.

    Next comes the software, and as I said, spoiler alert, the damn thing just worked first time!

    (These images are just copied and pasted from the aforementioned post, thanks xsimulator!)

    Attached Files:

    • Like Like x 1
    Last edited: Jan 26, 2023