Stepper Motor Rotary Inverted Pendulum Using Deep Reinforcement Learning

Goal:

Training a neural network using deep reinforcement learning to control a stepper motor for swinging up a pendulum and keeping it erected.

How ?

  • Building the rotary inverted pendulum, using a stepper motor and incremental optical encoder for measuring the pole angle.
  • Adding a stepper motor driver, which going to be controlled by the Arduino board to actuate the stepper motor
  • Adding the Arduino board, which will take motion actions from the PC and control the stepper driver accordingly, and sends the current pole and stepper motor angle to the PC upon request.
  • Develop a Simulink model which is going to simulate the rotary inverted pendulum, and use it for testing the neural network.
  • Develop a software which is responsible for creating the neural network, training it, and test it in simulation, and real time mode.

Code:

https://github.com/hobby-robotics

Work:

https://hobby-robotics.com/category/stepper-motor-rotary-inverted-pendulum-using-deep-reinforcement-learning/