5

There are now some sub and around ~1000USD 3D Lidars available. I wanted to provide an answer for future reference if anyone else comes looking for "cheap" Lidars. LeddarTech M16 ~500 USD on Ebay Range: 110 m FOV: 19x3.0 degrees (up to 8.0 degrees depending on model, with 30 m range at that FoV) Refresh rate: 6.25 Hz https://store.leddartech.com/ BeneWake ...


4

Robotics is a mixture of things like mechanical engineering, electronics engineering and software engineering! Knowing C++ is a big head start in this area! Because I strongly believe that amongst all three engineering categories software is the one thing you will spend the most time on when developing an autonomous robot. So to start, learn computer-aided ...


3

There are a few dimensions to being a roboticist: is knowledge of theory about robot perception (understanding the world through sensors such as cameras, signal processing and machine learning), planning(how the robot should move) and action (how things move in space, kinematics, dynamics, control theory, reinforcement learning etc.). There are a lot of ...


3

You should probably also add information regarding your sensors, for instance what LIDAR are you to use 2D or 3D etc. The nature of SLAM algorithm shall also depend upon what kind of system do you need to use it on specifically what are the rates that you need, do you need the SLAM to be online or offline etc. Further the machine you run your algorithms may ...


2

There are two issues in the question: noise (interference) among the three sensors how to handle the motion with relation to the sensor readings The noise between sensors is most probably a hardware issue (cabling or EMI) or it might be related to the sensors being close to each other. Without more info about the current implementation, this is all I can ...


2

In order to implement the line following function you need to make several design choices which will affect your robot performance and accuracy. Here are some examples: GPS Coordinates: using a GPS receiver the robot can navigate through a set of waypoints represented as coordinates (or elevated coordinates for an UAV) to follow; Compass Heading: using a ...


2

I'm fairly certain you can't control a DC motor solely by plugging it into pins on the Arduino. You could use a diode and a transistor to power the motor, however you cannot control the speed. To control the speed you will need an ESC(electronic speed controller). This can be connected to the Arduino like a servo. Hope this helps!


2

Yes there is. You need to develop or look for the developed equations of velocities that provides the math that transform from the x y theta velocities to the velocities on each of the motors that you have. The equations are for each configuration and depends also on the separation of the wheels, radius of the wheels and orientation of them and also if ...


2

If you are restricted to camera-only SLAM you are on a good track. You mentioned a robot, do you use its odometry? How good is your extrinsic robot-camera calibration? How good is your intrinsic camera calibration? Could you add a better IMU? Could you improve the Odometry by changing the wheels or the floor? Can you add other sensors like a laserscanner?...


2

You can find more info about many kinds competitions here


2

In addition to the manual Ziegler-Nichols method on manual tuning, I wanted to point out that the dynamics of the throttle/brake might not be symmetric. In that case, the set of Kp, Ki, Kd working for throttle (acceleration), might not work for braking (deceleration).


1

Kp, Kd, Ki are called gains of the controller and can be found using manual tuning or via some techniques for example the Ziegler-Nichols method which is more precise. And you can use different software for example MATLAB to achive the desired controller response and can calculate PID gains. For more information on PID gains tuning, I would like to refer a ...


1

So long you have a sensor to read the angle of the steering wheel, you can use the bicycle kinematic model to compute odometry for an Ackermann drive platform, e.g. a car: $$ \begin{align} \\ \dot{x} & = v \; cos(\psi + \beta) \\ \\ \dot{y} & = v \; sin(\psi + \beta) \\ \\ \dot{\psi} & = \frac{v}{l_r} sin(\beta) \\ \\ \beta & = tan^{-1} \...


1

Depending on what you mean by experience...While you have been developing GameAI I assume you gained domain specific and domain independent experience: Theoretical AI knowledge is key to all applications from Game AI to Autonomous Driving, but the knowledge has to be abstract and not domain dependent. Decision making, reinforcement learning, search, ...


1

I am not sure what you mean by 'displacement value which is acceleration independent'. The conversion of relative positioning you're getting from /dev/input/mouse will always depend on the DPI of the mouse. All you'd have to do is figure out the DPI (either from the specs or from measurements, and hence the conversion between reported dx/dy values, and then ...


1

In robotics, a holonomic chassis is one that can move in an arbitrary direction regardless of the robot's facing. Such a robot can move in interesting ways. For example, if you have a fixed camera on a wheeled holonomic robot, the robot could smoothly move, turn, park, etc. without turning the camera. So if the wheel has to change direction before moving in ...


1

What you need is a hierarchical fuzzy controller for crossing detection. The situation, that the black line on the ground has complicated shapes like zigzags and loops is a good opportunity for implementing a program flow which contains of if-then-statements and subfunctions. In contrast, a normal line following robot will need only a simple table, which ...


1

When localizing a robot we usually use the world coordinate frame. Since it's static it is easier to represent the position of the robot. As an example you may use the North and East directions as the x and y axis of the world coordinate frame. But if you are travelling on the robot you can notice that the heading direction always changes. Let's take 2 cases ...


1

Why don't you try to look it au contraire? Given you know the robot's "radius" (a contact free sphere actually with your desired r value) you can enlarge obstacles you find, although this would require the used of some sort of discretaziation of the world in a grid. For 3D this can be done using OctoMap (https://octomap.github.io/). With obstacles enlarged ...


1

In other words, could this difference noticeably impact safety or reliability? -> not at all in my opinion. What important in autonomous car navigation is localization stability rather than the odometry estimation accuracy. Maps for autonomous driving are usually prebuilt and globally optimized before they are used for a navigation. It is never required to ...


1

There is no cheap outdoor 3D LiDAR (as long as the definition of your "cheap" is under USD1000). This might suit your purpose. There are low cost (USD100~500) 2D LiDARs. You may need to combine camera and LiDAR if you need to cope with pattern-less scenes or dark scenes. By the way, a good engineer should not use terms such as "good, cheap, accurate" ...


1

You first need to roslaunch the turtlebot_teleop package with roslaunch turtlebot_teleop keyboard_teleop.launch That fires up the high level teleoperation, which publishes a geometry Twist message on the cmd_vel rostopic. Looking at the launch file, it looks like it will be called cmd_vel_mux/input/teleop An option for the low level code is to create your ...


1

This is not any more a pure potential field type of problem, since you already have a global trjectory which you then alter locally. This is a hybrid approach. A good example for a hybrid approach is the Elastic Bands method, can be found here. It models the path as elastic bands which are deformed by virtual (mechanical) forces (due to the presence of ...


1

I know you said without maps but bear with me :). Would something like the A* algorithm principle, but with a unknown map in which you add obstacles work for you ? You could start with an empty map and use A* to go to the target. Each time you encounter an obstacle you had it to the empty map and recalculate A*. Using you IMU you can get odometry so ...


1

Using the commanded speed in the prediction update of a Kalman filter which estimates speed and higher order states can be entirely reasonable. In situations where the time constant of the controller is slow, you will gain a considerable amount state estimate accuracy by estimating state derivatives using the control loop dynamics. In situations where the ...


1

First Simulators available like Gazebo, Yes there are many simulators, You can check v-rep (free) or whebots or matlab (non-free) for example. What is the difference between a pure software simulation and a real world (say RC) scale model simulation? The pure simulation don't count noise and non-accurate parameters you use For example when you specify ...


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