Compact yet powerful motion simulator platform utilizing 6 AC servo motors. High presicion planetary gears used to multiply the torque. Custom PCB using a ESP32 microcontroller to process the platform position.
This platform is scalable, and most dimensions are changeable within reason. Certain general design rules will need to be followed, in order for the platform to function correctly. This should not be considered a tutorial, but more of a general guide and conceptual starting point for this platform design
This is a DANGEROUS project, and if absolute care is not taken you will be injured or killed.
These are the components of the project that are included in this repository
This is an ESP32 Arduino project. This interfaces with the PC through software like simtools, after correctly configuring. You will need the custom MCP23S17 library in order to compile the project. This project utilizes both ESP32 cores in order to maximize refresh rates to 1000Hz, or 1ms interval.
A Custom MCP23S17 library, modified so the outputs of all 6 motors can be set at one time instead of setting them individually, this saves time and allows for more pulses per second. This increase allows for higher movement precision on the rotational arm.
Schematic of the current Controller PCB
Gerber files for ordering current PCB
.Net Application for testing position limits and speed of platform. Allows for manual setting of each DOF / Axis. As well works with XBOX360 controller through the PC USB wireless adapter.
These are some key parts I used, others can be used in their place, but variations of the AC Servo motor may not be compadible with the PCB, and may require a modified PCB schematic.
Main components on the PCB
- ESP32 Dev board - ESP32 Dev kit
- MCP23S17 -
- 3.3V to 5V TTL Shifter Module -
- NJK-5002C NPN NO(Normally Open)Hall Effect Sensor Switch -
- Steel plate ½ inch thick 31” diameter
- 6 - Coupler https://amzn.to/2slOiIa
- 6 - 750w AC servo Motors
- 6 - 50:1 Planetary Gears *Note ensure planetary gear input diameter matches up to both the motor as well with the coupler output diameter when ordering from Aliexpress
- 12 - 1/2 X 1/2-20 Economy Panhard Bar Kit with Bung .065, Rod End, Heim Joint
- 12 - 1/2-3/8 High Misalignment Spacers, Rod End Spacers
- 6 - 24" long 1" OD X .870 ID X .065 Wall Steel tubing
- 6 - 8" long 1" OD X .870 ID X .065 Wall Steel tubing
- 6 - 3/8"-16 Long Coped Steel Bungs
- LG 34" Ultrawide
- Thrustmaster T16000M FCS
- Wind Generator Fan
- Wind Generator PWM Control
- Wind Generator 90 Degree angle 3"-> 2" Reducer
- Wire Wrap
These are my settings on the Servo Driver aasd-15a these both enable specific modes as well define the time it should take to accelerate and decelerate the platform before it hits max speed. This is useful for when you want to protect the platform from self destruction due to the fast movements. Make them to large and the platform will feel slugish.
- pn002 - Control Mode - "002"
- pn003 - Servo enable - "001"
- pn098 - Gear - "80"
- pn109 - Position command deceleration mode- "002"
- pn110 - Position command a filtering time constant - "050"
- pn111 - S-shaped filtering time constant Ta position instruction - "300"
- pn112 - position instruction Ts S-shaped filtering time constant Ts - "150"