Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

Ballbot Concept

Status
Not open for further replies.

Mosaic

Well-Known Member
Hi All:
I have been considering a project to embed all electronics/power and drives INSIDE of a ball. Ball size to be determined.

It's a bit of challenge, so I thought I'd ask for some help with the approach.

The robot can be a simple maze navigator etc, as evidence of the functional design. Because its a ball, i think bump contact would be enough to educate the MCU as to the maze, a ball cannot really get stuck as it's very maneuverable.
 
I think two difficult issues are how the robot knows which direction it's going and how to detect the direction of the bump since I don't see how you could hardwire sensors to the spinning shell.

It'd give you a nice CMU or POB Camera type project though.
 
The drive would most likely be a 3 axis friction system. Have a look at how the old roller mice ball operated , but in reverse. You can figure the direction based on the PWM for each drive motor or from an encoder off each drive wheel. Thus the direction of the bump is known. If it glances off an obstacle and kkeeps going, I don't see that as an issue. Although the mapping system should log a possible obstacle.
 
Sorry, I'm not sure what you mean by 3-axis friction system. You meet a sort of "spider" suspending itself by pushing against the inside of the ball with driven friction wheels?

That'd work I guess...rather complex though. The normal way I know if is to suspend a mass (ie. the innards of the robot) from an axle spanning the diameter of the ball and is rigidly attached to the ball at each end.

A motor is able to rotate the mass around the shaft thereby moving of the COG of the ball forward or back causing theh ball to roll. Steering is done by having servo to swing the mass left/right as it is suspended on the axle to shift the COG left or right.
 
Last edited:
Just getting everything in purfect balance before it went into the ball would be a nightmare, but still doable. An idea would be to use 4 off solenoids pointing in each compass direction. Then by energizing one solenoid the off weigh balance would make the ball move in that direction. By using small tactile switches with a soft membrane strong enough to withstand rolling but not a collision would give the indication the ball had hit an obstacle. For detecting the position the LPR510AL dual axis pitch and roll sensor would fit the bill.( soldering the LGA chip will be fun).

So one could make a ball bot and after all the time taken making it and debugging it just to get it to work, turn ya back and the kids are playing cricket with your prize ball bot.

It is all really worth it ?????????
 
I do not see the impossible problems others do.

Ball size to be determined.
With enough time and money most anything can be scaled down.

Place a differential drive vehicle inside a ball suited to its size. Shape the wheels so the follow the curve of the ball. Make the vehicle heavy enough to drive the ball. Place a non driven wheel above the car to keep the drive wheels on the balls inside surface.

EDIT: The programming will be fun. Tilt sensors, accelerometers, gyros sort of thing. Yup the software makes it work. Sort of like the B2.
 
Last edited:
It doesn't need to be balanced in fact it needs to be exactly the opposite, it needs to have an extremely heavy floating weight somehow attached to X and Y axis motors. When the X motor was actuated the torque would try to lift the weight causing the ball to fall in the direction it was moved, and you'd need some pretty good control loops to let the thing go anywhere in a controlled fashion, breaking would be difficult as well because if you try to stop too fast the weight will flip over and the entire system will lose orientation. You would need to know the X and Y position of the floating weight and have an independant X/Y/Z accelerometer floating inside the electronics package for feedback. I've had the same idea in my head for several years, and I'm sure I'm not the first person to think of it but I've not the resources right now to even try basic experiments right now. The larger the ball the easier the prototyping and stability would be, you could start with a gerbil ball for prototyping, it's all sealed up and has an access port just waiting for you to put moving bits, best thing is you can SEE what's going on inside.
 
Last edited:
Gerbil ball sounds good. So does the multiple solenoid off balance inducer. Actually, I can visualise perhaps a perpendicular pair of rings bearing perhaps 6 solenoids at 60 deg offsets each. Both rings direct mounted to the internal ball surface sharing a common COG with the ball. By firing the solenoids in sequence u can create a phased balance offset and thus directionally drive the ball along the x,y ground plane. I think an ultrasonic range finder tuned to discount the ball material can be an option for collision avoidance. The key thing is for the software to know which way is up....maybe a weighted free spinning encoder wheel pair, also mounted to the solenoid rings will keep track of the vertical.

The nice thing about the "solenoid drive" or perhaps "caterpillar drive" is a better term is that with pwm control...u can make the ball stop moving and balance it even if everything is not in perfect balance.
 
Last edited:
If the control system and actuators can keep up, you're forgetting something though, the only thing that can make this ball move is WEIGHT. If you don't have a single massive center of gravity and instead distribute the weights to the various solenoids the whole ball will be balanced, which means it will roll ANY way that it wants to. It needs to look round on the outside, it needs to look as far as gravity goes like a massive weight as low and centered in the ball as possible with a central pivot point in the middle of the ball where the motors will apply torque to the weight.

With good X/Y control, a single weighted ball would be able to hold it's position on a slant up to the limit of the coefficient of friction of the materials and the weight the main X/Y drive had available.

This is a basic concept of such things as walking. We don't actually draw ourselves forward, we fall forward and use our legs to keep ourselves sort of upright in the process. The exact same thing can work from inside the ball if the center of gravity is appropriate.

You could use a linear mechanism to pull the weight to the center of the ball if you want it balanced, but it's optimal position for movement would be as far away from the center of the ball as possible.
 
Last edited:
I would think you would need a gyro stabilized platform with accelerometers in each direction. Mount the whole thing in a set of gimbals with the outermost solid to act as the ball’s surface. To move, just rotate the appropriate shafts. Locate a position detector at each shaft so the guidance platform knows which shaft to turn to move in which real world direction.
 
Sceadwain is correct regarding weight. F=MA tells us that we need more mass/weight to increase the force. With the gerbil ball we also have a mechanical connection between the drive motors and the ball. As long as we do not overdrive the ball by moving faster inside it, drive unit does a loop, then it is moving the connection may provide an advantage. (not sure)

A differential drive unit and its battery pack can be placed inside the ball as near the surface as possible. The ball will always settle with it down.

Tilt sensors on the drive can be used to keep the drive from going past 90 degree of tilt. Moving the drive away from the center of gravity would move the ball in that direction. To slow a moving ball move the drive to the trailing wall. Turning is easy.

It should not be too hard to build this "gerbil ball". Where would one find the sphere ? Like the robots that balance on two wheels the code will make it work.
 
Last edited:
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top