Concept design for line tracker robot QTR+Maestro+Servo

Hello folks!

Here I’m bringing to the table a concept idea for a different robot project. I’ve been researching about the 3pi, then, thanks to Ben I’ve jumped to orangutan till I’ve dicided to stop in order to get my concept back to basics and start from scratch.

I’m seduced by the great movement quality of the 3pi. That’s my starting point. I want to make a strong platform inspired on its amazing line tracking capability. The challenge is that I want it to work with several pounds over it moving a big animatronic figure around the floor.

#1 - Basically I don’t need all those extra features from the 3pi. My only required behaviour is “move forward following the line as smooth as posible”. I’m an industrial designer, electronics is just a basic on my repertory so analizing pros and cons I’ve started to cancel things out of my equation.

#2 - I was focused on the 3pi kind of robot at the begining wich performs the movement by stopping and running 2 individual powered wheels. That works great, but in that particular super small scale. With a tall figure, stop and accelerate continuously could make it to get out of balance or just look really bad.

#3 - The power of the processing board must be independent from the motor regarding it big load.
#4 - Substitute the “tank style” steering for something more continuous and stable.

So, having some clear expectations in mind, here is the first concept on paper.

As you can see, regardless the design, it’s all about to put some concept parts together in order to start talking about.

Comments.

There is 2 parts on this setup. The control or processing unit (individual powered @ 5V) wich controls the servo based on the sensor input; and a 3 wheels set where only one provides movement to the unit (regardless how) it’s just a mechanism to provide motion in only one direction with no other control that a switch. It’s powered up by an independent battery. The small wheel in the back is part of the steering mechanism to control the platform direction.

Here comes the fun. I belive in this “steering” mechanism as a great way to improve the movement to get a really smooth rite. We’ve got the “maestro” wich is a great controller for servos plus its capability to work with an individual power supply (perfect for a big 8kg servo).

The challenge now consist in “communication”. There is an interesting QTR 8RC sensor available here, the thing is, how to interact with maestro? Is it possible to make it to work with 8 IR? Is any other part required?

That’s the first step.

I’m going to pause this post here in order to keep my research and see what else to ad as well as you guys input.

Your comment is very appreciated.
Thanks!

Paul

Hello, paulsba.

The Maestro can not be directly connected to a QTR-8RC sensor because using the sensor requires accurate timing and the ability to change an I/O line from an input to an output (and vice versa) on the fly. The Maestro’s scripting language can not do either of those. You could use a QTR-8A reflectance sensor array instead, which simply outputs an analog voltage. You can connect the 8 outputs of that sensor array directly to 8 input pins on the Maestro and read the voltages that way.

While the Maestro could read the line sensor and control a servo, I don’t think it is a great choice for your robot’s main controller. The scripting language is slower and more limited than what you could achieve with a C program running directly on a microcontroller module such as the Baby Orangutan.

I think that your line sensors are too close to the back of the robot to have provide good feedback. Most line follower designs put the line sensors at the front end of the robot so that the robot can anticipate that it needs to turn before it drives off the line. For example:

The steering mechanism you proposed looks difficult to get right. It looks like you will only power the left wheel, and allow the right wheel to spin on its own. This might work, but when you power the left wheel, your robot would naturally want to spin in a tiny circle clockwise. The only thing that might prevent it from doing that would be friction of the front wheel against the ground, which means there will be weird torques on various parts of the robot.

As Ben said, I think you should start with something easier, like the 3pi. Once you understand how to program that, it’s you should be able to make a bigger, custom robot with a Baby Orangutan or Orangutan SVP as the brain and possibly some external motor drivers/controllers depending on how big your motors are.

The 3pi does not “stop and accelerate continuously”; your code would be in complete control over how smooth the motors’ movements are.

–David

Hi David and thanks for your input!

Let me say that everything is very interesting over here…

Here a couple of quick points in mind to go over after reading you.

I saw your video, that’s a very smart design detail to move the sensors all the way to the front. Just bear in mind that I’m planning to build a “base” of about 30 inches long (my sketch is just that, a sketch). So now I know that I can pull the sensors and discretely install them as much as I can all the way to the front to gave my processor a better response time (thanks!).

Driving wheels. I have to say that all your observations are right! I was just trying to get that part out of the equation to focus on the steering system but here comes the interesting part of your comment. I understud the amazing power behind the 3pi. I’ve placed a post on the 3pi area asking about if it’s possible to replace their motors and give it a try. Ben said basically that makes no sense (and here Iam re-thinking the whole story to get myself another option).

Now I’m having again some of those same questions… Does baby orangutan support 12V and a few amps? I’m guessing not, that’s the first reason to “remove” the driving system from the processing unit. Actually the whole thing is going to move not faster than a foot per second and the trace is not going to have those super tight turns.

The load over this base is going to be big, I’m talking about 80 pounds so, in the prototyping phase, the driving mechanism is coming out of 2 heavy duty battery operated drills (and looking for something more efficient ahead) in fact, the other option comes out of a 200W electric scooter motor and mechanical reduction (2 wheels on same axle driving forward). Or if a better idea why not 2 independent ones…

Going back to the point (I’m sorry) I need a good advice to resolve the logic and get signal to move my steering mechanism. Or even better if it’s possible to “clone” a 3pi but at my scale…

In fact, am I wrong or baby orangutan just control motors…? and not servos.

Thank you for reading!
Paul

Yes, the Baby Orangutan supports 12 V and a few amps (but only 1 A continuous per motor). But if you have an 80 pound load I think you will need a lot more than a few amps. We have separate motor control boards that can provide more current.

Yes, the Baby Orangutan can control servos. Our Pololu AVR C/C++ Library provides functions for sending servo pulses out on any I/O pin. See the library user’s guide for more info:

–David