12 votes

How do the PID parameters (Kp, Ki, and Kd) affect the heading of a differential driving robot when they are increased individually?

Proportional term: this controls how quickly to turn the steering when the heading is not at the set value. A low P will lead to sluggish steering, reacting only slowly to set heading changes. It may ...
Andy's user avatar
  • 1,051
10 votes
Accepted

Holonomics Movement vs Holonomics Constraint

You can look at degrees of freedom as if they were the number of variables that you need to use to describe your system. So, for a robot moving in a 2D plane, its state would be represented by: $$ s=\...
Chi's user avatar
  • 224
7 votes

Do I need to use separate function in PID algorithm to make the bot go LEFT or RIGHT?

No, but you do need to calculate the P/I/D terms correctly. You have: I = I + previous_I; followed by: previous_I = I; ...
Chuck's user avatar
  • 16k
6 votes

Is there any robot stability control equation that describes the relation between velocity of the robot and its orientation?

That's not obvious. If I'm in a tank, going 0.5 km/h, I don't need to slow down at all. If I'm in a bobsled going 100km/h and the track banks, I don't need to slow down at all. When you steer, you ...
Chuck's user avatar
  • 16k
5 votes

How has the Mars Exploration Rover (MER) has been working for 11 years if it was designed for 90 Sol?

There are 2 main reasons why the MER is still operating long after it's 90 Sol planned lifetime. The first is political, strategic, and can be summarized as 'Under promise, over deliver'. When a PI (...
hauptmech's user avatar
  • 4,435
5 votes
Accepted

L293D won't turn motor backwards

The motor driver chip you state you are using, the L293D, is a "quadruple half H driver." This means that, instead of two full H circuits capable of driving a motor forward and reverse, you have four ...
Chuck's user avatar
  • 16k
5 votes

How to control a 4 wheel mechanum wheel robot with PID?

Let's consider first the task you are wanting to accomplish: following some sort of Cartesian space trajectory. So, you are wanting to make sure your robot is only moving in the x-direction. However, ...
domo_arigato's user avatar
4 votes

Choosing the state vector for an EKF

In general, I try to obey the following two rules when selecting states: Only use the states necessary for control, and Choose states to be measurable properties, whenever possible. For example, on ...
Chuck's user avatar
  • 16k
4 votes
Accepted

Meaning of symbol, 'curly N' in the equation of Linear Gaussian system dynamics

They are modeling the probability as a normal distribution with the given mean and variance.
SteveO's user avatar
  • 4,386
4 votes
Accepted

What is the difference between the pose of a robot and the configuration of a robot?

Do "configuration" and "pose" means the same thing? No. One of the most clear definitions of 'pose' that I've heard is in Peter Corke's Robotics, Vision and Control (RVC). It states that: "The ...
sempaiscuba's user avatar
  • 1,064
3 votes

Self balancing robot control system strategies

I can recommend an alternative which has worked for me quite well. I derived the dynamical model of a inverted pendulum, then linearised it around the stable operating point. With this simplified ...
vmatos's user avatar
  • 71
3 votes

Plotting location using wheel encoder data

A few things: I took a look at your data set. Did you make sure you used the time column correctly? The first entry is "1429481388546050050" without the decimal. To make it in seconds, it should be ...
kamek's user avatar
  • 1,000
3 votes

Multi-Rate Sensor Fusion using EKF

Part 1. Use one or the other. Often odometery is used instead of kinematics or dynamics for prediction, at least in my work. Part 2. This is handled by the construction of the measurement equation ...
Josh Vander Hook's user avatar
3 votes
Accepted

Motion planning and robot controlling

The model you have given is called the unicycle model and is widely used n robotics. In general the model is given by \begin{eqnarray} \dot{x} &= v\cos \theta \\ \dot{y} &= v\sin \theta \\ \...
Dhanushka Kularatne's user avatar
3 votes
Accepted

Handling PID DC motor control at low speeds

I came up with a solution in the end. Fire a periodic interrupt at a fixed rate (In my case, I configured the STM32 to fire a systick interrupt every 1ms In the ISR for the 1ms timer, decrement a ...
Dibly's user avatar
  • 91
3 votes
Accepted

TWIP robot - DC gearmotor speed/Encoders

:EDIT: Let me put some numbers on this. Let's say you want to get from any angle to vertical in half a second. Say for now (more on this unrealistic scenario later) that you want to get from "...
Chuck's user avatar
  • 16k
3 votes

Holonomics Movement vs Holonomics Constraint

A holonomic constraint applies to the configuration variables, it is represented by an equation is some or all of the configuration variables. A constraint that applies to the rate of change of the ...
Peter Corke's user avatar
  • 1,702
3 votes
Accepted

How to increase the traction of tyres/wheels

Two seemingly contradictory approaches come to mind. One is to increase the friction between the wheels and the track. You can do this by coating the tires with a soft material, such as a gasket or ...
SteveO's user avatar
  • 4,386
3 votes
Accepted

State space model

Unfortunately, you're trying to apply a linear controller (the L of LQR) to a nonlinear system. In general, this doesn't work. As an approximation, you could linearize the system. If the ...
ryan0270's user avatar
  • 2,804
3 votes

Will there be any interference when distance sensors facing each other?

The amount of interference highly depends on the sensor type and how you use them. One of the worst for this is probably ultrasonic rangers: These are going out of fashion now, but older robots used ...
Ben's user avatar
  • 5,855
3 votes

what exactly is 'observation model' for a robot

An observation model is what relates your measurement to your states. For example, you might have a state that is vehicle speed, but the only thing you can measure is tire RPM. Tire RPM is not vehicle ...
Chuck's user avatar
  • 16k
3 votes

How to deal with asynchronous samples in a kalman filter framework multi-sensor fusion?

The correct way of integrating multi-rate observations in a Kalman framework when the measurements are unavailable is to let the system evolve resorting merely to the prediction steps. Therefore, set ...
Ugo Pattacini's user avatar
2 votes

Multi-Rate Sensor Fusion using EKF

I've performed 2D localization with just odometry and a gyroscope before, and to be honest, depending on (i) how good your encoders are; (ii) what type of environment you're in (is there a chance your ...
kamek's user avatar
  • 1,000
2 votes

L293D won't turn motor backwards

There are a few tests that will help in this sort of situation. Try either of these. Test 1. Get a logic probe (a simple low-cost device that will serve you for many years!) and use it carefully on ...
Andy's user avatar
  • 1,051
2 votes
Accepted

Meaning of 'sign' in Writhe Matrix

Sign is a function that returns +1 whenever the operand is anything positive, -1 if it's anything negative, and 0 if it's zero. I'm not sure if it's mathematically correct for your equation as I'm not ...
Chuck's user avatar
  • 16k
2 votes

How to find Friction or Viscous force b (nmsec) in DC motor

When no other load is on the motor, any torque that the motor is producing is to overcome the friction. If you know how to calculate your friction from the torque needed to overcome it (I don't), then ...
Mark's user avatar
  • 331
2 votes

How do the PID parameters (Kp, Ki, and Kd) affect the heading of a differential driving robot when they are increased individually?

Andy's response is good, and he hits all of the important points but to fully understand PID control in the context of a differential drive robot, it might be useful to take a step back and consider ...
JSycamore's user avatar
  • 926
2 votes

Plotting location using wheel encoder data

Thanks for the update. Now it looks like $x_c$ and $y_c$ denote the origin/starting position, and $\theta$ is positive, measured CCW from the positive x-axis. Now I am even more concerned about the ...
Chuck's user avatar
  • 16k
2 votes
Accepted

Robot positioning using IMU quaternion data?

The quaternion only contains information about the rotation of the vehicle. It will not contain information about the location of you vehicle on a 2-d plane. One method of converting quaternions to ...
holmeski's user avatar
  • 1,853
2 votes
Accepted

Choosing motor to buy after calculations

Since you don't know what assumptions they had in mind when they estimated the motor was good for a robot of a specific weight, I would not trust that. You have established your own requirements and ...
hauptmech's user avatar
  • 4,435

Only top scored, non community-wiki answers of a minimum length are eligible