29

I'm posting this as an answer because it is the answer. You can't. As @BendingUnit22 mentions, you are attempting "open loop" control. Noise and variations will mean that your robot will never drive a perfectly straight line. The motors could have different winding resistances (different drive currents/torque), the wheels could be different sizes, the ...


20

The best option will depend on the type of terrain you expect to cover. You want the correct balance of several factors: ground pressure traction suspension steering Ground pressure from tracks is less than ground pressure than wheels, so they're more suited to soft surfaces. Larger tires can help, but there are limits -- they may not work in something ...


16

Well, you generally use wheels when: You want speed. Treads need a lot more torque to power, thus you generally use low-rpm/high torque motors. You want maneuverability: Treads are a big pain to turn with. Differential steering is very ineffective (the bot skids to steer, which may not work if you have really grippy treads) But, treads are better when: ...


14

Assuming it is a rigid robot, then the only weight properties of interest is: the total mass the centre of mass In terms of tipping over, the robot is more stable if the angle required before tipping over is maximized. This is achieved by having a low centre of mass, and a centre of mass as far away from the edges of the support polygon as possible. ...


10

How Servos Work Based on these details of your question: I just got a kit [...] continuous servos [...] plugged it into the microcontroller Combined with your "Arduino" tag, I'm betting that you are working with hobby (RC) servos modified for continuous rotation. Standard servos work by receiving a pulsed signal with a 20ms period (50Hz). Regular ...


10

I was looking for something similar, and I found Mars Rover Rocker-Bogie Differential to be really helpful. With my level of understanding it took me a while. But the link my professor provided me with really helped me, it has decent animations to help understanding the concept. Okay so here's my understanding of the mechanism. The differential system ...


9

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=\begin{bmatrix} x \\ y \\ \theta \\ \end{bmatrix} $$ For a robot moving in a 2D plane to be holonomic, it must have the ability to change any state ...


8

Optical avoidance of people in an every-day (like) environment would be difficult, your best bet would be with sensing the range of things from the robot, rather than if it is a person or not. An Xbox Kinect could do the job if mounted in the right place. Alternatively you could use range finders, either the light or acoustic variety. I have used Ultrasonic ...


7

The math involved for controlling a holonomic robot is really not too bad. It is basically just high-school trigonometry and knowing how to set up the problem. First, lets start with the joystick. I think the easiest way to deal with joysticks is to convert it's cartesian $(x,y)$ readings into polar $(r,\phi)$ coordinates. This will allow us to control ...


7

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 never reach the commanded value. A higher P will give a snappier response, ideally with the steering turning rapidly and smoothly to follow commanded heading ...


6

I think this is a very relevant question for robotics, as you can spent a lot of time fixing your system if something went wrong in this area. Here are a few things to look out for: Insulation: Ideally you don't want any high voltages to reach your equipment in the first place. So one of the most important rules we apply to our electronics is insulate. Try ...


6

Since the open-closed loop issue is already mentioned, I will give a comment to the "I once tried to run a dc-motor without a load". Yes you might damage your motor with this but you can also damage or destroy your motor with a load. The destruction is coming from the current and the resulting temperature. If there is no smoke and some obvious smell coming ...


6

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 begin to move around a circle with a particular radius of curvature. This means you also begin to experience centrifugal force. $$ F_c = mv^2/r $$ where $F_c$ ...


6

No, but you do need to calculate the P/I/D terms correctly. You have: I = I + previous_I; followed by: previous_I = I; With I = 0; previous_I = 0; declared at the start. So your I term will always be zero here. What it should be is: error = reference - feedback; P_error = error; I_error = I + (error*timeStep); D_error = (error - previous_error)/...


5

The short answer is, frustratingly, "it depends". Nearly every established language can be used to program one robot platform or another. In my short career as a roboticist I have already used Python, Java and C++ to program different robots. There are even tools to program the Lego NXT in Ada, would you believe that? So whatever programming language you ...


5

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 half H circuits, which are only capable of driving a motor in one direction. You even speculate in your post, Either the L293D's chip is broken (but then ...


5

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 (principal investigator) proposes a high-risk scientific mission like this, they always frame the goals of the project such that their project is viewed ...


4

No, the number of wheels does not affect its strafing. Strafing is affected only by the angle of the rollers relative to the wheels, and you shouldn't need to worry about that for standard mecanums. The reason for this is that as your robot moves (let's assume constant velocity), the wheels spin; as they spin, the same velocity is on a different part of the ...


4

I'm not aware of any technical name for the alignment of the wheels except -- literally -- "steering". Spot turns in theory are no different than any other turn. You simply align the axis of each wheel with the radial lines coming from a single pivot point. If that point is underneath the vehicle, you will be doing a spot turn (a.k.a. point turn, a.k.a. ...


4

Looks like wikipedia calls it Active Four-Wheel Steering. Although, what you're talking about is the left and right side steering opposite of each, whereas Active Four-Wheel Steering in automobile usually refers to the front and rear steering opposite of each other, I still think your case can still be considered Active Four-Wheel Steering the way it is ...


4

Whether a single 3-way, 2-position pneumatic valve (typically with a work port, an input port, and an exhaust port ‒ see page 3 of nationalpneumatic.com's pdf about valves) will suffice depends on information not given in the question. For example, if you can turn the compressor on or off at will, and if it will hold pressure when off, you can attach the ...


4

How fast are you driving the car and are you allowing slip during turning? From this powerpoint, the turning radius is given by: $$ R = \frac{L}{\delta} $$ where $R$ is the turning radius, $L$ is the wheelbase length, and $\delta$ is the steering angle. Note that the equation is for low speed driving. Given this equation, you can generate a circle around ...


4

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 my car's dashboard I could include: suspension displacement, brake pad wear, tire wear, etc. - these are all measurable properties that are critical to ...


4

They are modeling the probability as a normal distribution with the given mean and variance.


3

Your calculation is correct in magnitude but incorrect in sign, because gear B rotates oppositely to A (when the axis of D is fixed and D is not locked). If D is locked (ie, the gear is not free to rotate in its plane) then A and B are locked together and rotate identically. If the body V to which the axis of D is fixed rotates during rotation of A, then ...


3

There is at least two modalities along which servos (continuous or otherwise) usually fail: gear problems and motor breakdown. When the gear fails (broken tooth, hard point, etc.), the servo may get stuck, free moving or any combination. When the motor breaks (usually the brushes inside the DC motor are the culprit), the servo stops working altogether (as ...


3

I run a rep-rap (Mendel Max) 3d printer ~ $1500AUD (built from scratch). I can't really comment on the print quality of other printers, but my statements about materials will hold for other printers. I have printed usable gears down to about 1/2 inch diameter. PLA has a melting point of about 150 Celsius and starts softening at about 60 Celsius, you ...


3

This is an old question but I see it repeated without a real answer. Sticking with a kinematic model only, here's what I would do: The linear velocity of the robot is $\upsilon$ and the angular velocity of the robot is $\omega$. The distance to the ICR (not shown in the diagram) is $$ \frac{\upsilon}{\omega} $$ The velocity of the wheel about the ICR is $...


3

If there is no differential between the front and rear wheels, you will be skid-steering. You will just treat it like a simple 2-wheeled differential drive robot: Calculate position of differential drive robot It shouldn't change much, but if you really wanted to you could find the robot's center of rotation (e.g. following this question) and consider a ...


3

There are many possible ways to approach this problem, and they all depend on the material available and the expertise of the robot builder. In short, the criteria is that: The robot must get from point A to B following a pre-defined path. The path taken must not follow a line visible to the human eye. Depending on the length of the path, using encoders ...


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