Forum Replies Created
-
AuthorPosts
-
cmcgrath5035Moderator
I have been at this for a while, don’t necessarily remember all the items I have posted but as you have found, Google can help.
When you say “Arduino and stepper drivers”, do yo mean Arduino Duo or Uno driving external drivers, or the Pololu style mini plug-in modules. While I have no direct hands-on experience, to me they visually do not have adequate thermal dissipation capability.
retrofitting old systems with unknown specifications is at best trial and error, at worst a crap shoot. But think about how much you are learning…
If the original mechanical design really did demand NEMA34 performance, you will be better off with external, more rugged thermal design drivers.You can try interfacing the tinyG logic directly to the external drivers.
The driver inputs for pulse, dir and enable are simply Opto Isolators with some current limiting resistors so the can withstand high voltage interfaces. The FET buffer/level shifters are for the most part just adding robustness to the interfaces.cmcgrath5035ModeratorFor starters read thru this tinyG wiki item
https://github.com/synthetos/TinyG/wiki/TinyG-Using-External-DriversYou may also find this G2 wiki page informative
https://github.com/synthetos/g2/wiki/G2core-on-DUE—External-InterfacesBoth tinyG and G2 hardware are 3.3v logic. Some external drivers are rated for 3.3v I/O, others 5V
cmcgrath5035ModeratorUsing external drivers is non-trivial but successfully implemented by others.
It is not at all plug and play.
I suggest you use your Favorite Search engine to search on “tinyG External Drivers”. Most hits you find will be other items in this forum.
I am on the road for a few days and can’t be a lot of help.cmcgrath5035ModeratorGenerally speaking, if a machine design required NEMA34 class torque to move around and get the job done, the recommendation would be to use external stepper drivers capable of delivering higher current to fully utilize the capability of the NEMA34s
I am referring to something like this
There are numerous solutions in that space, depending on your budget.
Can tinyG make NEMA34’s move? Yes. Energize their full capability? No.
Current output and cooling of the drivers are issues.
With large steppers, running drivers at 40V and above is typical.I don’t have enough info to say that is the right solution for you.
If you are convinced that the machine and lead screws are properly configured, it does sound like more power (torque) is what you need.If making moves at cut speed works, lowering the max speeds might work
if you can tolerate the time required.Did you try reducing the Jerk settings?
cmcgrath5035ModeratorAt all NEMA sizes, there are different winding configurations that require different drive currents to operate properly.
A very general statement would be that motors that have more turns per pole(more copper) will require less current to step properly but will exhibit more inductance and be less responsive.What power supply voltage are you using? More voltage will provide more power into the steppers.
cmcgrath5035Moderatorshielded twisted pair, with shield grounded only at tinyG end.
Not much current flow, 22 or 24 ga would work fine.
Finer gauge( 26 or higher) would work but difficult to work with.cmcgrath5035ModeratorA frequent cause of EEPROM corruption has been attempts to ‘script’ sending parameters to tinyG in bulk.
Enter parameter changes manually via the console, one at a time.cmcgrath5035ModeratorFor whatever reason, you are not getting enough torque from the steppers, or there is too much resistance (e.g. binding) in the leadscrews.
Any chance you are using only half the A and B windings?
(Center tap ID error)What Power supply voltage ?
Try $xjm = $yjm = 50 (same as Z)
cmcgrath5035ModeratorI saw John Lauer’s suggestion to reduce Vmax, a good one.
Reduce 16000 to 1600 or 160, just to see if that helps.Do you have the current pots all the way up?
While I have never seen steppers that did not like to microstep, try setting
$1mi = $2mi = $3mi = 1. If that helps, try = 2 or = 4.cmcgrath5035ModeratorI can’t tell the scope of your project, particularly what sort of real time performance you need to achieve. You might want to look at the Chilipepper and CNC.JS projects as examples of how it has been done. Both of those focus on maximizing Gcode delivery performance while monitoring and displaying the return status channel.
Be aware that the G2core api is optimized for G2core hardware that supppots I/O that is not available in tinyG.cmcgrath5035ModeratorThere is a lot to chew on here, I have limited time at the moment.
Flow control:
Set tiny G to $ex=2 and only check the RTS box in Coolterm.You still have both m3 and m4 mapped to the Z axis.
When tinyG tries to move Z axis, it won’t know which parameters to use.
map m4 to a,b or c for now.set $zsm=0 to turn off that limit switch.
Try jogging your machine at slower speeds,
for example use G01 X10 1000 to request a 10mm move at 1000 mm/min.
G00 X10 attempts to move at max velocity.I’ll be off the air for a couple days.
You might want to disconnect your motors from the leadscrews to get motors moving reliably without load.put a piece of tape on the motor shafts so you can see them rotate.
cmcgrath5035ModeratorVery odd indeed. I am no UGS expert, but looking at the various windows it appears that other numeric values are being returned in status reports.
Difficult to figure out how you might have gotten into this state.A suggestion would be to send a $defa=1 command
This will reset the entire parameter EEPROM, including some hidden stuff that on occasion gets corrupted.
You will have to re-enter any parameters that you might have customizedcmcgrath5035ModeratorA couple parameter comments before you post an updated $$ dump
You have $ex=1, Xon/Xoff. Have you correctly set the CoolTerm end?
Get rid of limit switches for now, set $xsn = 0 and $ysn=0 and $zsm =0.
You have a lot of wiring work to do for the limits – stepper noise can cause false shutdowns.You can get a roughly right $3tr by measuring the distance between 10(not 19 !) thread grooves in that lead screw(in mm) then set $3tr =[measurement]/10
- This reply was modified 3 years, 5 months ago by cmcgrath5035. Reason: Correct error
cmcgrath5035Moderator8TPI lead screws should be set to $_tr=0.125 inch, not 0.25
That would be 0.125 * 25.4 = 3.175 mm
cmcgrath5035ModeratorI did not have access to the parameter set, you have likely already already seen the request from Google.
The “default” assumed machine is a Shapeoko style belt machine, X-Y-Y(r)-Z.
From what I can see, you likely have only three active leadscrews.
A belt machine has typical $_tr values in the 30-40mm range, lead screws will be very different. When I can see all your parameters, we move on from there. -
AuthorPosts