Hot answers tagged

11

To answer your first question: if you really want to find the true kinematic equations for differential drive, I wouldn't start approximating by assuming that each wheel has moved in a straight line. Instead, find the turning radius, calculate the center point of the arc, and then calculate the robot's next point. The turning radius would be infinite if the ...


9

If this is true linear motion (non-rotational) then you will need some sort of a pivoting linkage in between the two units to transfer one motion to the other. Something like this would probably work: As the lower link moves vertically, it rotates the red gear which in turn pushes the second link horizontally. However, given that your image shows more of a ...


8

This is a standard dynamics problem. Let's use this figure I drew: Some definitions: $$ \begin{align} m & \mbox{, the mass of the vehicle in kg.} \\ \mu_{\mbox{rolling}} & \mbox{, the rolling friction coefficient of your tires.} \\ \theta & \mbox{, the incline of the plane in radians.}\\ g & \mbox{, the gravitational constant, 9.81 } m/s^2 \...


6

In that context, SE means "Special Euclidean" group, e.g. SE(3)* which is shorthand for "the special Euclidean group of rigid body displacements in three-dimensions". *Planning Algorithms, Steven M LaValle 2012-04-20


5

I think a more compact and reliable solution would be to use a third shaft that is perpendicular to the other two (on the Z-axis) Given the shaft moving up/down is moving on the Y-axis and the shaft moving left/right is moving on the X-axis. This crude diagram should explain things better. As the motor turns Shaft A upwards it then turns Shaft C. Shaft C ...


5

The mechanism suggested in the previous answer is a form of four-bar linkage. A bell crank is a slightly simpler form of basically the same thing. You could push on one side of a bell crank with the end of the motor shaft, and use a spring return for the other direction if it is difficult to attach to the shaft. (The shaft apparently rotates, but the ...


4

Scott-Russell type mechanism. For weeks I was trying to come up with a solution for that exact problem for a engineering project mine. Look it up.


4

I can't think of a reason why a velocity model (based on control commands) would be superior to an odometry model (which uses the actual wheel speeds). The lecture notes from Freiburg on motion models imply the same: Odometry-based models are used when systems are equipped with wheel encoders. Velocity-based models have to be applied when no ...


4

It is a mathematical concept call the "Special Euclidean" group. Roughly, it is a combination of a rotation and translation. You'll also frequently see SO3, which is the special orthogonal group which means rotations.


4

Many articles reference algorithms such as A*, PRM or RRT based planners to motion planning algorithms which seems unreasonable since it is still necessary to parametrize found path with time.I wonder, why? First of all, RRT, for example, can be used to plan trajectories directly. When the robot in question has $n$ DOFs, such a planning problem happens in a ...


4

The author expects a background that includes a course in physics or mechanics where this equation is taught. When that is the case, this equation gives you instantaneous velocity of a particle (point) moving on a circular path. The $\times$ in $\dot{p} = \omega \times p$ is the cross product. (This may already be obvious to you, it's hard to tell from the ...


4

The S-Curve profile can have several divisions along the time axis 7 divisions as per this image. This example has a constant positive jerk zone, a constant acceleration zone, a constant negative jerk zone, a zero acceleration zone and then the vice-versa. This is the S-Curve in its most general form 5 divisions if there exists no constant acceleration ...


3

Wrapping your head around unit conversions in controllers is a pretty common problem, so don't think you're alone. If you're implementing your PID controller using floating point math, then you really don't have to worry: the gains that you assign for the proportional, integral, and derivative action will take care of the differing ranges for the inputs and ...


3

If I understand your question, you are asking whether a vehicle balancing on two wheels (or two wheels and one caster) will be able to move straight, or at least predictably, if both wheels were driven from the same motor and used a differential. The answer is yes, but only if you have a way to equalize the forces of friction affecting each wheel. For ...


3

There are several traps you might have stepped into, but it is difficult to tell without more information. The first issues that came to my mind: The equations you wrote down are for sampling from the velocity motion model. But then you write about the Kalman Gain approaching singularity, which only makes sense of you apply a Gaussian filter (EKF or UKF). ...


3

All theory aside, circumferences and actual distances travelled will vary with your wheel geometry since your wheels aren't perfectly tangential to their direction of travel while turning. While Ian gives some good math I think I would run tests and assign a pseudo-circumference. I think I would just measure what the odometers read for a full 360 turn-...


3

You need the transformation from the car to the IMU. You can get this by recording the IMU published attitude with the car in known orientations. You should be able to construct the IMU to car transformation by grabbing the IMU orientation while the car is flat, pitched up a bit (30 deg would should enough), and rolled (again, 30 deg should be enough). ...


3

To come up with a mathematical expression of the position reference $x\left(t\right)$ as a function of time $t$, we can inspect the profile of the acceleration $a\left(t\right)$. It is piece-wise linear and defined as follows: $ a\left(t\right)=\begin{cases} \Delta \cdot t, & t \in \left[0,0.025\right] \\ 2000 - \Delta \cdot \left(t-0....


3

I think this is not really difficult trigonometry. Suppose we want the robot to move in a forward direction? We need to use the two front motors. (I tried to sketch this out in the pictures, I will now explain all this scribble). Due to the fact that the motors are not at right angles to the axis we need, therefore, we need to feed the motors a little higher ...


2

For a repeated calculation, it doesn't matter whether you find $\Delta\theta$ before or after you apply $\theta$ to the $\Delta{x}, \Delta{y}$ calculation. You will always be alternating between a position and an orientation calculation. In a practical sense, it might be better to calculate $\Delta\theta$ after you calculate $\Delta{x}, \Delta{y}$, since ...


2

This should have probably been a comment to @RobertEnglish answer ... but comments don't seem to allow pictures Bavel gears. Plastic ones should be rather inexpensive.


2

It's called a slip ring. http://en.wikipedia.org/wiki/Slip_ring The Wikipedia page has several alternate names for it. Be careful when using these devices, a cheap or damaged one with poor brushes will destroy a high-speed digital signal (and even worse, it will get damaged after you build a working prototype.)


2

I agree that the motion models in Probabilistic Robotics are badly suited for omnidirectional robots. I always interpreted the models presented there as examples only that should enable you to devise a custom model for your own robot. First of all you need to model and solve the forward kinematics for this kind of omnidirectional drive. I guess you already ...


2

The majority of the noise you're hearing is not from the motor itself but from gearing, which both servo motors and drills have a lot of. However, if you don't have a gearbox then when power is cut the torque exherted by the motor will become zero and your arm will fall. I would reccomend a standard brushed DC motor with an encoder for precise control, ...


2

Assuming you need only to eject the drawer automatically and can close it back manually, I would suggest using compressed spring which would push out the drawer if there is no resistance. A hook or similar mechanism holds the spring when the drawer is pushed back in. This mechanism would save you use of motors, and thus you won't use electricity. The ...


2

Through my reading of this book "Probabilistic Robotics" chapter 5 pp. 120,121. It seems what you thought is right. And this is the reason the authors mentioned. Many commercial mobile robots (e.g. differential drive, synchro drive) are actuated by independent transnational and rotational velocities, or are best thought of being actuated in this way. ...


2

Tim Wescot is one of the most experienced experts ever in this forum especially in the PID controllers field. I recommend you to read his brilliant article here. We used discrete PID for our quadrotor control system. We are building a quadrotor right now and tested both continuous PID controller(What you are usually find in wikipedia or web searches) and ...


2

I guess you want to find a cubic polynomial for the end effector. You have 3 coordinates for your points A and B, from your question is not clear if they are $x,y,z$ or $x,y,\theta$. Anyway, I'll show here the procedure for $x$, and you can repeat it for the other two coordinates. Given the cubic parametric form $x = a_0+a_1 t + a_2 t^2 + a_3 t^3$ ($*$), ...


2

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 \\ \dot{\theta} &= \omega \end{eqnarray} where $v = 1/2(v_1+v_2)$ and $\omega = 1/b(v_2-v_1)$ are the controls of the robot. The method that you have mentioned ...


2

$SE(3)$ is the representation for both translation and rotation in 3D space, whereas $SO(3)$ is only the representation for rotations. $\mathbb{R}^3$ is for translations in 3D space. If you only consider 2-dimentional space, then you can simply change 3 to 2, i.e., $SE(2)$, $SO(2)$, $\mathbb{R}^2$. I wouldn't worry too much about it. You can just consider ...


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