9

There are a number of things to consider for your project. Since you are asking for the learning algorithms, I asume your hardware is or will be up and running. When getting your robot to learn, you should differentiate between on-line and off-line learning. Further, there is on-system and off-sytem learning, which can be combined with the previous category. ...


7

There is not a specific set of learning algorithms that you will need to implement. Genetic algorithms (GA), neural networks (GA), and reinforcement learning (RL) have all successfully been applied to the problem of gait generation. I can also conceive of ways to use unsupervised learning methods to approach this problem but I can't say for certain whether ...


7

These are just terms to describe the "layers" of control on the robot. The "joint level" means the position of each actuator (leg), and the "task level" means the current goal of the robot (like go forward, go east, go to location X, etc). This paragraph is about sensing. There are (apparently) position sensors in all of the leg joints, so the robot is ...


5

Here's a paper that seems relevant: Policy Gradient Reinforcement Learning for Fast Quadrupedal Locomotion. Abstract: This paper presents a machine learning approach to optimizing a quadrupedal trot gait for forward speed. Given a parameterized walk designed for a specific robot, we propose using a form of policy gradient reinforcement learning to ...


5

I'm not sure I agree that bipedal walking is so much harder that airplane control. It depends on how you look at it. Many robots can walk (bipedal walking) and many airplanes are difficult to control because of their flight characteristics or the flight conditions. It is easier for robots to walk in nice conditions. There are many weather conditions too ...


4

In McGeer's 1990 work on Passive Dynamic Walking, the angular momentum equation that you have posted is the angular momentum of the system just before the impact of the swing foot, about the impending impact point. It consists of two parts: the angular momentum due to the velocity of the center of mass about the impact point, given by $\cos(2\alpha_0) ml^2 ...


4

I agree with @Greenonline 's recommendation regarding LiPo batteries along with his warnings on battery care. It seems you will need a fairly small battery, considering your current requirements (about a 1000-2000mAh 2S LiPo). However, you also need to add 2 5V BECs (5V regulators in RC lingo) to power your circuits; The 7.4 or 11.1V provided by the battery ...


3

As the wikipedia page of Occupancy grid mapping explains, the result of the mapping process is a binary 1 or 0, occupied or not, the decision itself may be based on noisy data, which involves the probabilistic assessment of prior information to infer the posterior probability of the occupancy.


3

You got the second picture by physically manipulating the robot to get the center of mass above the rotated foot. What you need to do is to get the robot to shift its own center of mass in a similar fashion. You should do some research into support polygons. The center of mass of the robot is not above the polygon made by the contact area between the foot ...


3

It sounds like you have 6 legs with some number of PID-controlled joints on each leg. You would like to move 3 legs at a time, while the other 3 legs stand in a stable tripod configuration. Instead of figuring out how to move each set of 3 legs as one unit, you should be treating them as individual legs. You will send a leg a set of desired joint ...


2

I have built a lot of walking robots, in my experience if you can't get it to walk by programming a gait you are not going to get it to learn because you don't know what it is supposed to do and the search space is too large. Using an Arduino you may be able to get it to fine tune some movements iff you can define good movements.


2

A simplified method for learning would be to make the robot into one random position and then another and tweak the second position until it moves forward. Using this position as a start do the process again n times and then you will have n positions to move through that make the robot move forward.


2

I believe that your set #2 works better because you're already applying feedback to it, in the form of counting transitions of your encoder. My knee-jerk method to do this control would be to first use quadrature encoders on each motor, to make sure that I was capturing any backwards motion that might mess me up. Then I would store a time vs. position ...


2

Regarding the battery requirements, LiPo batteries are probably the way to go, but they do require looking after in order to prevent any nasty accidents from occurring. I looked into this a few months back, you might want to take a quick look at Service, Please! and Power Up!. Isolating the power supplies, as you suggest, is probably also a good idea. ...


2

Cause of the intrinsic noise in sensory data, we have to consider a probabilistic model (mostly Gaussian) for the sensor measurements. As a matter of fact, the description and definition of the mapping problem will be probabilistic. The goal is to compute the most likely map given the sensor data and commands given to the robot: In occupancy grid mapping as ...


2

You might be able to use the the opposite foot to begin the rotation of your chassis, but it will be dependent on your chassis and foot geometry. Using your photos for reference, the left foot would push up beginning the chassis rotation, while the right foot would rotate simultaneously. At some point the center-of-gravity (CoG) would shift enough so that ...


2

From my side I can provide two remarks. First the human have elastic actuators (muscles) with a lots of sensors for balance. Whereas robots have mostly rigid actuators with a few dampers here and there to avoid breaking the motors on collision, and then they have far less sensing capabilities to maintain balance. So the two are not really comparable. Another ...


2

Humanoid robots balance and motion planning are not trivial tasks. I believe you will learn a lot if you read about Zero Moment Point (ZMP). Basically, it is a specific point of contact between the robot's planar foot and the ground. What makes this point special is that the reaction forces at it produce zero torque on the robot body. If there is no reaction ...


2

“Better” is ambiguous. A walking robot could certainly get to some places that a wheeled robot could not - steps are a good example. But it would have challenges getting low enough to go under some objects. You should consider the entire requirements of a vacuuming robot, though. Access and navigation are just some of the requirements. What about ...


1

Actually since a Jacobian maps joint velocities to workspace velocities (linear and angular) of a point of interest (for example, the robot's center of gravity), in this case, your Jacobian will have the dimension of $3 \times 4$, where 3 is the number of your workspace degrees-of-freedom (2 translation axes + 1 rotation axis) and 4 is the number of joints. ...


1

If you know all the joint angles, to fill in all the world frame information, all you need to know is the pose of something in the world frame. You first ask how to find the feet position given the pose of the body and the joint angles. I'll explain that and then I'll explain how to find the body pose from a foot pose (and therefore the poses of all the ...


1

A bipedal robot is essentially unstable - a little knock will cause it to fall over. A commercial aircraft is essentially stable - a little gust of wind might move it off course, but it will keep flying the right way up and not simply fall out the sky. Although aircraft with relaxed stability do exist, but for relaxed stability it is only recently that ...


1

That should be enough power, although I would regulate the 8 volts to 6. You could get slightly better life out of the batteries on a single go if you pull some power out using a Polulu adjustable boost regulator. This will regulate the current to 6v and give you the ability to drop below 6v on the batteries and still have the 6v output to the servos (...


1

There are some fundamental problems with your questions. First, $\alpha_0$ and $r_{gyr}$ are fixed parameters that depend on the passive walker. Second, the equation $$H^-=I*\omega=(cos(2 \alpha_0)+r_{gyr}^2)m l^2 \Omega$$ implies that $$I=(cos(2 \alpha_0)+r_{gyr}^2)m l^2 \neq m l^2.$$ Lastly, I'm not sure that $\alpha_0=\pi/2$ makes sense physically ...


1

The short answer is "yes". Accelerometers can be used to improve stability by measuring slight changes in movement. But most importantly, they can tell a walking robot which direction is down.


1

You need both: gyroscopes react quickly to fast changes in orientation, but lose accuracy in the long run. Accelerometers are better in the long run, but are too sensitive to short term. Combining them both using a "complimentary filter" gives a much better result than using only one or the other.


1

If you are not on the budget, go for the digital with metal gears. Basically, higher the torque better your bot will be. For the legged bots speed of the servo is not an issue but torque is. To be sure that servo will have enough torque, you will need to roughly calculate the mass of the bot, divide it by number of legs - 2. As during the walk two legs will ...


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