View Single Post
  #11   Spotlight this post!  
Unread 19-08-2013, 03:48
techhelpbb's Avatar
techhelpbb techhelpbb is offline
Registered User
FRC #0011 (MORT - Team 11)
Team Role: Mentor
 
Join Date: Nov 2010
Rookie Year: 1997
Location: New Jersey
Posts: 1,624
techhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond repute
Re: Stepper Driver to CIM

Quote:
Originally Posted by daniel_dsouza View Post
So say that you do decide to use CIMS...

What would your electronics setup look like. Do you have a specific set of encoders in mind? What board will interface between the motors and PC CAM software?
At the moment I would start by seeing if I can get a Victor, Talon or Jaguar to act as the servo driver. In brake mode I should be able to make the CIM stop it's momentum quicker considering that if it's turning a lead screw it will be geared down pretty hard to start. Otherwise if the linear motion is provided by belts or rack and pinion the electronic braking might be helpful getting the axis to rest at the right position.
If none of the FIRST controls will do what I want it is no issue for me to retrofit my Parallax Propeller based motor control I already created.
I never sent it for FIRST approval but FIRST has nothing to do with approving this.

I would use a bank of yard tractor lead-acid batteries for the power supply to those motors.
It would not only provide adequate current on demand but I have built plenty of UPS from scratch and I can charge those batteries while they supply the load.
These batteries are relatively cheap and readily available just about everywhere.
I have 4 sitting on charge right now because I use a string of 4 occasionally as a 48V power source.
I have used them with FIRST motor and motor controls before.
These batteries also solve the underlying power supply issue that the FIRST motors create.
Normally CNC motors would increase in voltage not current.
Increasing the voltage makes the driver and power supply lighter from a standard American wall socket.
In the case of FIRST those little modules are current hungry not voltage hungry.
They will need the low internal resistance of a battery to operate predictably or something like a automotive grade size roll-around car battery charger / starter.
I think the batteries are more realistic. Plus power interruptions on long jobs are then reduced by the battery.
It's not like FIRST teams also don't have access to batteries themselves.

Plus FIRST robots come equipped with a PDB which is already setup to protect the motors and power source from the typical currents involved in this project. So that can be reused.

I am awaiting a part or so for the 600ppr encoders from China that I am testing in the other topic. If they work properly I may as well use them as the quadrature will produce 2,400ppr.

I am already setting up Mesa Electronics Anything I/O board with a 400k FPGA for a more portable gantry mill I am assembling right now. If that gives me headaches I will revert to the Gecko stepper driver I used for a customer project recently. That will be used with EMC2 in Linux on an old computer as the CNC controller. That mill will start with Vexta bipolar NEMA 23 steppers I have right now. I have those steppers in both 0.9 degree and 1.8 degree models. I have adequate LiniSteppers (and 28V switching power supplies) on hand for those steppers as well as some cheap stepper drivers rated around 4A I have a pile of. Those Vexta steppers are between 180 oz-in and 270 oz-in. As a starting point that is workable. I believe that I can use the Mesa Electronics module with slight modification to produce adequate PWM to drive a FIRST motor control but I will test that to be sure. I should be able to service the encoders with that module. If modification from the default is required it is something I can do.

It *might* be possible to use a cRIO for this purpose even with the FIRST firmware still in it. I would really have to tinker with it and at least for EMC2 I suspect the odds are pretty high a custom driver would be required. Information does exist for that purpose but for now there are enough challenges. A working CIM driving an axis under power and load will eliminate the first issue which is to remove the doubts that it can be done.

I am working with someone, I hope, to start work on a CIM based module that will bolt onto those NEMA 23 mounts. A NEMA 23 stepper output shaft is around 1/4" but of course the direct shaft coupler at that attachment point can probably be sized up to accept larger or even differently shaped shafting.

Ultimately I hope to make the end product literally as compatible with upstream software like BobCAD, Rhinoceros and SolidWorks as any other CNC machine. Using the CIMs in place of the steppers should be a transparent change beyond the controller. Though as a closed loop the CIMs will likely require calibration but that issue exists for all closed loop servo drives. Someone will always have to calibrate the PID loop that the servo and encoder form. Just a fact of life.

If your typical stepper has a full step of about 1.8 degrees.
That means that it will give you at least 200 discrete steps per revolution.
If you drive that into a 10tpi lead screw.
For each revolution at the end of the screw the linear motion will be 0.1".
So with 200 discrete locations per revolution the maximum full step revolution is 2,000 per inch.
With microstepping you can get repeatedly down to 10x the resolution at 70% or so power.
So in theory the upper end resolution on a 1.8 degree stepper with a 10tpi lead screw is 20,000th of an inch.
With a very repeatable 2,000 of an inch resolution.

To replicate this with a brush motor let's assume we could power our way into 2 positions - 4 positions per revolution.
The 1.8 degree stepper output resolution as our model at 200 discrete locations per revolution.
So if you had gearing that could get you 100:1 or 200:1 you'd have something that was similar resolution.
At say 2500RPM (where the CIMs put out max power) that means you could get between 25 and 12.5 revolutions per minute.
Keeping in mind CIMs are intermittent duty.
In practice these ratios would be generous or fivalous depending on the goal in mind.
Of course these would drive the same 10tpi lead screw.
So if you used a 100:1 ratio you could move 2.5" per minute.
So in the end you end up with similar resolution but think the CIMs move a 150 pound robot.
Force in the tons is possible at the output axis hence why a CIM can lift a trailer.
We will loose some of that power because of the way we are controlling the CIMs but who really cares?
When I use the existing NEMA 23 steppers I have I will loose some of the power they offer because I will at time travel at higher speeds than they put out maximum power at. So between the 2 we trade off.
So with the steppers we'd have to go slower to maintain the power.
With the CIMs we would have power to even go faster.
In the end both would likely produce similar amounts of power just at different points in operation.

In this example situation:
At 2.5" per minute the stepper is loosing power quite significantly.
At 2.5" per minute the CIM is nearing peak power.
On the other end. When moving slowly:
When the CIM is moving at lower speed it's putting out less power.
When the stepper is near stall speed it is putting out maximum power at full step (less power at microstep).

Normally it would make no financial sense to start with the servos initially.
Between the drivers and the steppers it's maybe $100 an axis.
Between a $25 CIM, a $50 motor control, an encoder at $20-$40 and the gear boxes.
Plus the CIMs draw lots of current compared to more typical CNC motors so the wire is heavier, the batteries and the current safety.
Why do it? Cause FIRST is going to make you do it anyway
You are driving around with many of the same requirements on your robots now.
Plus FIRST teams usually get an 80/20 discount.

Besides nothing stops you from hybriding the drive (use both steppers and servos). Think about it.
Look at a AndyMark dual CIM gearbox. What if you opened the circuit to one motor or the other?
What if one motor is a stepper and the other is a CIM?
It would merely spin like an unloaded generator while the other motor does the work.
You could exploit the advantages of both motors.

I really and quite seriously doubt:
That so many teams would sneeze at the lower resolution we could target at higher feeds either.
However equivalent resolution to the steppers are possible with the CIMs.
When so many teams can't get in range of a CNC machine at all without impacting their build budgets...
Certainly not servo CNC...
This would let them roll their previous build budgets forward.
Just a bit more repeatable than a hand drill in the pits. Just a bit.

Besides if the speed of the unloaded rapids is an issue FIRST has already shown you how to fix that.
You switch gears.

The inability of the CIM to be indexed to smaller increments can also be changed mechanically.
If you put a wheel on the output of the CIM separate from the gearing.
Give it adequate diameter to ride another wheel against it.
Cut rounded dents into the perimeter of the wheel in which the idle wheel can interlock.
Support the idle wheel on a spring assembly.
When the CIM turns the idle wheel will roll over the perimeter of the larger wheel.
With the dents at even increments at low speed, where the CIM has the least power, the CIM will tend to index the dents.
At higher speed the CIM will tend to just make the idle wheel kick right out because of the increasing power.
This will mechanically tend to make incremental rotation for the CIM much more dependable.
Regardless of the brush locations or even the encoder.

Last edited by techhelpbb : 19-08-2013 at 12:20.