Skip to content
vitsensei edited this page Jun 8, 2019 · 2 revisions


Welcome to the TriOmniwheel Formation Control wiki! This is what I supposed to send my professor but for some reason I'm not feeling so anymore (and he never actually asks about it again). Anyways, I write this with a presentation in mind, so sorry if it feels disconnected sometimes.

This is also my first time writing a wiki, and as an undergrad, I don't really have much experience to write something easy to read.


This project introduces a distributed system that is able to handle multiple agents at once. However, the decisions are also depend on the communication between the individuals, the data through communication includes the coordinates of current positions, and the headings. By integrating these information together, the system will come up with a best solution for current scenario and command the each agent to move to the desired position and create a predefined formation.

System overview

Alt Text

So basically I use my bad ass laptop to control all of the rovers, using TCP/IP protocol. All the rover path is predefined AND NOT DYNAMIC (this is something I want to change in the future).

Alt Text

The algorithm (which is running on the host computer) will take in the desired formation and draw out the path for each of the rover. More about the algorithm will be discuss later on.

Alt Text

The rover finding its position using dead reckoning (and NOT computer vision, don't let those QR code in one of the demo video fools you, we are trying out some stuffs).

Formation control algorithm

Control vector

Alt Text

Alt Text

Control gain

Alt Text

Collision avoidance

Alt Text

Alt Text

Unmanned Ground Vehicle (UGV) platform

Dynamic model

Alt Text

Autonomous navigation

Future work

There's so many things I want to do more with this project, but as finals slowly creeping towards, I have to stop. On top of my head there are 3 main things:

  • Resolve deadlock situations due to collision avoidance algorithm.
  • Increase accuracy for the omniwheels rover by adding an IMU sensor and Kalman filter.
  • Use computer vision and an overhead camera to track the position of each rovers. My supervisor keep telling me to use his expensive camera system but I refused, I like something cheap and more portable.


[1] Fathian, Kaveh & Safaoui, Sleiman & Summers, Tyler & Gans, Nicholas. (2018). Robust Distributed Planar Formation Control for Higher-Order Holonomic and Nonholonomic Agents.

[2] Oliveira, Helder & Sousa, Armando & Moreira, A & Costa, Paulo. (2008). Dynamical Models for Omni-directional Robots with 3 and 4 Wheels. ICINCO 2008 - Proceedings of the 5th International Conference on Informatics in Control, Automation and Robotics. 1.

Clone this wiki locally
You can’t perform that action at this time.