This project is about a neuro-fuzzy controlled turtlebot, which has been upgraded with super trouper ultra sound sensors.
The idea of our control system is really simple. We send the required positions a.k.a. XY to the bot, after that, the bot calucates the route and tries to get to that required position without getting in trouble e.g. hitting any obstacle, running through a fireplace or breaking any walls.
Neuro-fuzzy controller has 4 inputs to the neural network
Four-layer perceptron. The output layer has a single neuron, which produces the steering angle to control the direction of movement
Sigmoid activation function. Error back propagation method
Inputs to the fuzzy controller are the distances of obstacles from three different angles and the value of the initial steering angle
The final outputs from the fuzzy controller are the velocities for left and right wheel
Terms such as near, medium and far are used for left, right and front obstacle
Terms such as positive, zero and negative are defined for initial-steering-angle
Terms such as fast, medium and slow, are defined for left and right wheel velocity
See source code and documentation