A 2-wheel self-balancing robot

This project involves the development of a microcontroller based controller for a 2-wheel self-balancing robot, where the digital feedback control is based on a Linear Quadratic Regulator (LQR) algorithm using a state-space representation to model the dynamics of the system. The initial process...

Full description

Saved in:
Bibliographic Details
Main Author: Alfred Setiadi
Other Authors: Vun Chan Hua, Nicholas
Format: Final Year Project
Language:English
Published: 2015
Subjects:
Online Access:http://hdl.handle.net/10356/62713
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Nanyang Technological University
Language: English
id sg-ntu-dr.10356-62713
record_format dspace
spelling sg-ntu-dr.10356-627132023-03-03T20:28:36Z A 2-wheel self-balancing robot Alfred Setiadi Vun Chan Hua, Nicholas School of Computer Engineering DRNTU::Engineering::Computer science and engineering::Hardware::Control structures and microprogramming This project involves the development of a microcontroller based controller for a 2-wheel self-balancing robot, where the digital feedback control is based on a Linear Quadratic Regulator (LQR) algorithm using a state-space representation to model the dynamics of the system. The initial process begins with the study of the robot designs and the components that make up the robots. Schematics of the robot are then created for references. Understanding of each component used in the design is then used to determine the parameters to be used in the state-space representation. The flow of the report is as follows. It first discusses the procedure used to obtain the measurements of the (four) state variables that are crucial for the implementation of the robot. Simulations of the system dynamic using Matlab are then presented. These simulations are used to determine the appropriate feedback gain level required for the robot to balance itself. Implementation of the digital control loop, in the form of pseudo-code, is then described, which provide an overview of how the controller is designed. Test results indicate that the model used is still not very accurate. The main causes include reasons like assumptions made, and parts not performing at the level specified in the data sheet. In order to overcome the imperfect model, fine-tuning method was used although it is time-consuming and is a tedious process. Several improvements were made to the control algorithm, mainly to address problems due to steady-state error and dead-zone level of the motors. The end result of the project is that the robot is able to perform at a satisfactory level, including the ability to withstand minor nudge applied and remained in balance. This demonstrates that the implementation of LQR algorithm is largely successful although it was improved using a fine-tuning method. In conclusion this project has provided a good exposure to using formal modelling technique for control system design, and is also an interesting experience in exploring the feasibility of using adaptive control during the course of this project. Bachelor of Engineering (Computer Science) 2015-04-28T02:19:32Z 2015-04-28T02:19:32Z 2015 2015 Final Year Project (FYP) http://hdl.handle.net/10356/62713 en Nanyang Technological University 43 p. application/pdf
institution Nanyang Technological University
building NTU Library
continent Asia
country Singapore
Singapore
content_provider NTU Library
collection DR-NTU
language English
topic DRNTU::Engineering::Computer science and engineering::Hardware::Control structures and microprogramming
spellingShingle DRNTU::Engineering::Computer science and engineering::Hardware::Control structures and microprogramming
Alfred Setiadi
A 2-wheel self-balancing robot
description This project involves the development of a microcontroller based controller for a 2-wheel self-balancing robot, where the digital feedback control is based on a Linear Quadratic Regulator (LQR) algorithm using a state-space representation to model the dynamics of the system. The initial process begins with the study of the robot designs and the components that make up the robots. Schematics of the robot are then created for references. Understanding of each component used in the design is then used to determine the parameters to be used in the state-space representation. The flow of the report is as follows. It first discusses the procedure used to obtain the measurements of the (four) state variables that are crucial for the implementation of the robot. Simulations of the system dynamic using Matlab are then presented. These simulations are used to determine the appropriate feedback gain level required for the robot to balance itself. Implementation of the digital control loop, in the form of pseudo-code, is then described, which provide an overview of how the controller is designed. Test results indicate that the model used is still not very accurate. The main causes include reasons like assumptions made, and parts not performing at the level specified in the data sheet. In order to overcome the imperfect model, fine-tuning method was used although it is time-consuming and is a tedious process. Several improvements were made to the control algorithm, mainly to address problems due to steady-state error and dead-zone level of the motors. The end result of the project is that the robot is able to perform at a satisfactory level, including the ability to withstand minor nudge applied and remained in balance. This demonstrates that the implementation of LQR algorithm is largely successful although it was improved using a fine-tuning method. In conclusion this project has provided a good exposure to using formal modelling technique for control system design, and is also an interesting experience in exploring the feasibility of using adaptive control during the course of this project.
author2 Vun Chan Hua, Nicholas
author_facet Vun Chan Hua, Nicholas
Alfred Setiadi
format Final Year Project
author Alfred Setiadi
author_sort Alfred Setiadi
title A 2-wheel self-balancing robot
title_short A 2-wheel self-balancing robot
title_full A 2-wheel self-balancing robot
title_fullStr A 2-wheel self-balancing robot
title_full_unstemmed A 2-wheel self-balancing robot
title_sort 2-wheel self-balancing robot
publishDate 2015
url http://hdl.handle.net/10356/62713
_version_ 1759856215166287872