Two Wheeled Self-balancing Scooter: A Multi-disciplinary Design Approach

Personal transporters powered by electric motors have become very popular in the last two decades. Different types of personal transporters are in the market for short distance commute needs, ranging from skateboards, two wheeled scooters like Segway, bicycles – most of them powered by electric motors. The fun aspect is equally important as function when purchasing decisions are considered. Range, stability, ease of control, feel, and safety features play a factor as well.

Our colleagues in Altair Japan created a generic 2 wheeled self-balancing scooter with a rider to demonstrate a multi-disciplinary design approach applying control systems, electromagnetics, and multibody analysis at a system level evaluation. The scooter design focuses on closed loop control system development for stabilizing the rider and powering the wheels while accelerating, turning, and braking during different maneuvers. The complete demonstration was developed in HyperWorks and solidThinking suite of products. Scooter, road profile, tires, and the rider (robot) were modeled and analyzed with MotionView and MotionSolve, the multi-body solution. The motors were designed in Flux, the general purpose electromagnetic tool. Control system for motors and stabilizing the system are all done in Activate, an intuitive block diagram environment to support model based development. Finally a photorealistic rendering of the animation as shown in the video below is done with Evolve.


Activate contains a canvas for building block diagrams representing real physical systems, a library of blocks and numerical integrators to perform simulations. The multibody model in MotionSolve is included in the system model of Activate through a Functional Mock-up Interface (FMI). The FMI protocol allows inclusion of blocks representing entire multibody simulation as a Function Mock-up Unit (FMU). In addition, a special Flux block in Activate is used to couple the detailed electromagnetic models of the motor.

The system diagram corresponding to the above sketch is shown below. It can be easily created and simulated in Activate.

The various subsystems are explained next.

The Robot Model

The robot and scooter structure is modeled as an inverted pendulum. The physical system is modeled in MotionView and state matrices are generated. The state matrices are used in the Activate model. The system is inherently unstable, so feedback is used to stabilize it. The gain for the feedback is computed using a Linear Quadratic Regulator. A servo system is added on top so that the multibody system in Activate will follow target signal.

This process is shown in the figure below.

The Two-Wheeled Scooter Model In MotionSolve

The scooter is modeled in MotionSolve as follows:

  • The multibody system consists of (a) A main body, (b) An axle, (c) The left wheel, and, (d) The right hand wheel. The system has 9 degrees of freedom.
  • Motor torques are input separately to the left and right wheels.
  • The tires are modeled using Pacejka’s Magic Formula. The commercially available Delft MF-Tyre model is used.
  • The ground is modeled as being flat and rigid.

This is shown in the figure below.

The Stabilizing Control Model

There are two stabilizing controllers in the model: (a) Pitch controller and (b) Cornering controller.

The Pitch Controller

The gain in the inverted pendulum is used to control the pitch of the robot. This is explained earlier.

The Cornering Controller

Cornering control is achieved by changing the torque to the left and right wheels by an amount proportional to the left-right weight shift of the occupant. The weight shift is measured by the angle between the vertical and an axis along the “backbone” of the robot. This is shown in the figure below.

The Electrical Motor Model

An Interior Permanent Magnet (IPM) motor is used to drive each wheel independently. An IPM motor was chosen for four reasons:

  • It has high torque and high efficiency that is achieved by using reluctance torque in addition to magnetic torque
  • It consumes 30% less energy compared to a conventional Surface mounted Permanent Magnet (SPM) motor
  • It can respond to high-speed motor rotation using vector control, and,
  • It is safer than SPM motors since the magnet is embedded in the rotor and will not detach easily.

The IPM motor was modeled in Flux. Its construction is as follows:

  • Permanent magnets are embedded in the steel rotor
  • The stator carries windings
  • The windings with AC current input generate a rotating magnetic field and the rotor rotates

This is shown in the figure below.

IPM Motor Controller

When a three-phase AC voltage or current is applied to an IPM motor with embedded permanent magnets at its rotor, attraction/repelling force rises between the permanent magnets in the rotor and the revolving magnetic field generated by the three-phase AC.

In order to rotate the rotor smoothly, attraction/repelling force between permanent magnets and the stator must be applied to the direction where the rotor rotates to. If the revolving magnetic field is generated without consideration of the permanent magnet positions in the rotor, the revolving magnetic field may not be applied properly, leading to jerky motion. This is called loss of synchronism. A motor controller is used to avoid this condition.

The motor controller detects the rotor position and inputs the current as a function of rotor position. Increasing or decreasing the current magnitude or adjusting the angle between the current and the magnet field, Gamma, controls the output torque. With this simple strategy, the magnetic pole position in the rotor and the revolving magnetic field are always controlled to provide the desired motor output torque.

A simple motor controller, as shown below, is implemented for this model.

System Model

The electric motor and its controller are instantiated as FMUs in Activate and connected to the scooter model to create the system model. Although IPM motor has a cogging torque (torque at no current), the two-wheeled scooter can be stably driven by current control provided by the motor controller.


Interested in learning more? Check out the on-demand webinars on Model Based Development series


Sridhar Ravikoti
Sridhar Ravikoti

About Sridhar Ravikoti

Sridhar Ravikoti is the Technical Director of Global Partner Programs at Altair. He has been with Altair since 2000, gaining experience in engineering product development and software program management. In his current role as a technical lead for the Altair Partner Alliance, Sridhar drives a synergetic relationship between Altair offering and its Partners. He holds a Bachelor’s degree from Osmania University in India, and a Master’s degree from the University of Nebraska-Lincoln, with a major in Mechanical Engineering and a minor degree in Applied Mechanics.