# Tag Info

9

These concepts are similar in the sense that they require multiple robots that communicate/cooperate. Apart from that, their application, and thus their design and implementation differ. Swarm Robots Swarm robots are designed after ants, bees and such creatures. The idea therefore is not just about multiple robots cooperating, but it's about many robots, ...

5

In short answer: yes Kalman filter is a special case of an $H_2$ observer Yes Yes ... LQG is just Kalman filter + LQR controller, which are both special cases of $H_2$ Depends on the use case. $H_2$ minimizes error function 2-norm while $H_{\infty}$ minimizes maximum error Very complicated The somewhat longer answer: $H_2$ and $H_{\infty}$ control are both ...

5

Welcome to Robotics, PaoloH! This is a fantastic question for Robotics - It has some Matlab/Simulink, some control theory, some spatial (quaternion) representations, etc. Robotics is the place to come when your question spans multiple fields! In looking at your question, the thing that I noticed is that your reference quaternion is $[0; 1; 0; 1]$. It is not ...

4

4

just use matlab or and python with a set of fixed features in space represented as points. Don't do any vision processing. At this point any vision processing would be overkill. you are making this way too complex. the measurements for your slam can be angles to features. create a set of 30 features randomly populating a 20m by 20m square. make your view ...

4

The author appears to be writting in a self promotional style, where the details listed about other work are simplified or ignored so that their claim, that their approach is better, can be established. I suspect the author is making the statement 'for good reasons' because they don't really know. I would ignore their claims and go read their calculations ...

4

I'm a product manager from the AWS RoboMaker team. We have a tutorial that can help you get started with the service: Projects on AWS: How to Train a Robot Using Reinforcement Learning with AWS RoboMaker If you have any questions or feedback for the service, please reach out to me and I would love to help and take your feedback to improve our service.

4

The velocity smoother part of the code is this: if target_speed > control_speed: control_speed = min( target_speed, control_speed + 0.02 ) elif target_speed < control_speed: control_speed = max( target_speed, control_speed - 0.02 ) else: control_speed = target_speed as you can see, regardless of how ...

3

Matlab has a package called Simscape that you can use for modeling physical systems in general. I would just caution you up front that Simscape is almost more like a plugin manager in that it enables other modules and doesn't offer a terrific amount of content on its own. This means you get to buy Simscape, then buy whatever other toolboxes you want that ...

3

I use CAD software to generate 3D models, convert those 3D models to an STL format, then load those STL files to Matlab with the following script: function [points,success] = LoadSTL(path) % LoadSTL loads an ASCII STL file with units in [mm]. % The output is a structure array where each element in the array is % a vertex. % % [points , success] = LoadSTL(...

3

What you are referring to is plotting the estimate with the uncertainty bounds - in particular the $3\sigma$ ($\pm3$ standard deviations) bounds which corresponds to 99.7% probability that the true state is within this region. The uncertainty bounds can be extracted from the state covariance matrix. I think what you are plotting is the residuals of some ...

3

This is really simple. First of all, you need to understand how the sensor works. In other words, you need understand whether the measurements is coming from linear or nonlinear model. Second, what is the type of the sensor's noise? CASE STUDY: Let's say you want to simulate DC Voltemeter to measure a battery's voltage of 5 Volt. In an ideal case, the ...

3

The dynamics of robotic arms are fairly complex, especially when there are more than three joints to consider. The problem is that the movement of each joint moves all the links beyond it, which can induce torques at other joints. You have to consider how the movement of all links affects each individual joint. There is software that can automatically ...

3

I feel like I'm having to do a lot of work to understand this question. You are trying to simulate two vehicles, and... what's the issue? You are trying to simulate them in Gazebo, right? Have you seen this answer on the ROS website that shows launching two robots in one simulation? As I mention, it's very difficult to read your post, which may explain why ...

3

Robust control is used for when you know that parameters are going to fall within particular bounds. For example, for a mass-produced robot arm, the arm masses fall between X and Y, the moments of inertia between I and J, etc. You don't know exactly what they are, but you can analyze the boundary conditions (i.e., root locus analysis) and ensure stability ...

3

I changed the code and now it works properly. rob.Xtree{1} = rotx(1.57) * xlt([0 0 0]); rob.Xtree{2} = roty(1.57) * xlt([0.15,0,0]); rob.Xtree{3} = xlt([0.34 0 0]);

3

There are quite a lot options for this, each with different features, strengths and weaknesses. A few examples: Gazebo (as mentioned by edwinem): very well known in the robotics community, some would say it's a little bit dated Microsoft Airsim (also mentioned by edwinem): originally developed for autonomous drones and autonomous driving, uses the unreal ...

3

As Ben noticed, you may want to elaborate on your question, but in general data collection in ROS is performed using tools from the rosbag package. As you'll find when you read the documentation, data (either from a simulation or the real world) can be recorded during a session, but not after it has already finished. Recorded data can be replayed or ...

3

The best way to debug geometry related applications is by using plots. First of all, plot the initial configuration, with robot TCP, cube initial position, cube final position. As these are all input values all should be ok. After this, plot the generated trajectory. Is this what you are expecting it to be? does it link the start end end points exactly? You ...

3

If I understand correctly you are not looking for a control scheme, you are tryin to solve the (inverse) kinematics problem. In robotics, kinematics is preoccupied with motions, disregarding forces. The simplest kinematic problem, which applies in your case is the forward kinematics problem, which can be formulated as: How to calculate the position and ...

3

Thank you,Now I have found odio_urdf library that can generate urdf by programming in python like you code in urdf file.

2

There's a lot of questions here, so I expect pushback from the peanut gallery, but I'll answer what I can. First off, a wall is an obstacle, right? There's no difference there other than what words you use to describe "a place a robot cannot go". So now, we just need a way to store the locations of obstacles so that we know where the robot can go. This is ...

2

Unless I misunderstood what you're trying to show on this plot, you want to essentially plot your estimate (or, in this case, the estimation error) with its 3 standard deviation bounds. What you have shown appears to be the bounds computed simply as 0 +/- 3sigma, but what you really want to plot is error +/- 3*sigma. That is to say, the uncertainty of the ...

2

I am not sure if this is what you are looking for but the simplest odometry equations for ackermann steering go as follows: //basic velocity inputs propel = 0.0; //m/s from rear wheels steer_angle = a; //radians delta_t = 0.03; //seconds //compute odometry values from joint angles //first get the theta update delta_th = (propel/L)*std::tan(steer_angle); //...

2

Matlab Simulink has a blockset called Simmechanics. It is very well suited for robotic simulation (it is ment for multibody mechanics simulations). It is a bit tricky to set it up for mobile robots (get the force reaction from the ground) but you can find demos and examples to do that. Like this. Compliance is however more tricky. If you want to simulate ...

2

In addition to @Shahbaz According to this book Multiple Mobile Robot Systems is main topic and swarm robotics is a sub topic both of them motivated from the task complexity is too high for a single robot to accomplish the task is inherently distributed building several resource-bounded robots is much easier than having a single powerful robot multiple ...

2

For visualization and kinematics, Gazebo works fine. You can use C++ or Python to work with it. There is lots of integration with ROS as well if you like that sort of thing. If you want a clean and simple rigid body dynamics library, I really like RBDL, but you'll need to add your own integrator for simulation and graphics for visualization. odeint works ...

2

Kuka robots have the axis positive and negative side clearly marked on them. Use these to define the orientations of the Z-axes assigned to the joints. With other words, try to reverse engineer the DH parameters used by Kuka. Only this way can you corelate your DH table with the kuka axis orientations. If the axis moves in the wrong direction it means that ...

2

As I understand, you do not actually need the force, you just want that your simulation to behave somewhat realistically. Instead of complicating everything with dynamics, I suggest you remain at kinematic models (will be much much faster, considering you will evaluate your models probably millions of times, if I undertand you goals corretly, in the ...

2

I think you may be going about this problem wrong. If you find a simulator that reports joint torques, then what? Are you going to iterate through every possible start and end location? You should only need to evaluate the worst-case motion. Worst case static torque would be with the arm straight out carrying maximum load, and worst case dynamic torque ...

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