Linuxcnc with Mesa 7i76e and Delta ASDA-B2 Servo Drives

More
4 years 7 months ago - 4 years 7 months ago #236292 by H2B
I am currently commissioning my first CNC setup with the same 7i76e and 4x Delta B2 drives, (dual driven Y gantry router), and from my tests so far to get everything running, I don't touch the default PID values in LinuxCNC, as they're designed to be used with analog servo drives that feed the encoder signal back into the controller to "close the loop."

Modern servos, like the Delta B2 drives, close the loop at the drive and as far as LinuxCNC is concerned, are simply stepper drivers. You can feed back the ALRM pin from the B2 drive into LinuxCNC to trigger an estop condition if the servos lag behind for any reason, and you can control how granular this encoder feedback threshold using the parameters of the drive itself.

I've personally ended up using the following pins from the 30+ pins offered by the B2 drives (plus the 4 pins for STEP+DIR, of course!).

Drive outputs, which are digital inputs to the Mesa board:
SRDY (servo is powered on, no alarm)
ALRM (servo has tripped an alarm, machine must stop)
BRKR (brake control output from the drive, used to drive a relay controlling the servo break on my Z axis)

Drive inputs, which are digital outputs from the Mesa board:
SON (switch servo on - basically an enable signal to the axis, and not the enable signal from the stepgen commands)
ARST (alarm reset, when estop is lifted, to clear any alarm flags on the drive)
EMGS (send the servo an estop command, which should be common to all axes simultaneously)
NL (reverse inhibit limit - for axes hard limit at min position)
PL (forward inhibit limit - for axes hard limit at max position)

I've also set up my estop using an estop latch, which takes care of lifting the AL-013 when I disable the estop in LinuxCNC (pressing F1), and then lifts the AL-014/015 (for the NL and PL flags) when I enable the machine power (pressing F2). Found this works nicely. Had to invert logic the ALRM output pin from the Mesa card (going to the ALRM input on the drives) such that the drives remain in AL-013 (estop) state if the boards and drives are powered up, but the LinuxCNC software is not loaded yet. That way everything cannot move until control is established on the PC and you're off to the races.

You can also come up with a use for the overload signal (OLW) from the drives to trigger a warning light of some sorts on a custom panel if you'd like, something I would be exploring in the future.

And for the stepper timing diagrams, see page 6-4 of the manual (Section 6.2.1: Position Command in PT Mode) for a breakdown of minimum step sizes. This is configurable based on parameter P1-00 and can go down as low as 150ns for minimum pulse width, but this will depend if you're using the hi speed pulse input (which can run at 500KHz, but most likely you're using the differential input that's capped at 200KHz). I've set mine as low as 800 in LinuxCNC for all 4 relevant values (DIRSETUP, DIRHOLD, STEPLEN, STEPSPACE), but leaving them at 1000-2000 works just fine. This will just set your maximum speed based on your machine.
Last edit: 4 years 7 months ago by H2B.
The following user(s) said Thank You: tommylight, Unlogic

Please Log in or Create an account to join the conversation.

More
4 years 7 months ago #236458 by P1-Engineering
SK1006 like the the German Kohler CNC routers?.

If so I would be very interested in your experiences and which servos you went with.
I'm currently upgrading my SK0704 coming from the JMC servos and Eding CNC.
For more performance I'm going to Linux and Delta servos but also considering the Clearpath's for the ease of tuning from what I can read.

Please Log in or Create an account to join the conversation.

More
4 years 7 months ago #236460 by H2B
I just finished using the ASDA Soft tuning for a dry run. Its quite easy to set up, but until everything is mounted and I break out the gauge blocks and DTI, we'll never know.

I found the Delta's to be great value for money, and I'd recommend looking into the A2 series instead of the B2 series. Slight increase in cost per drive (about 50EUR per drive), but you get a lot of advanced functionality (like the capacity to integrate linear encoders down the line, gantry control, etc.).
The following user(s) said Thank You: P1-Engineering

Please Log in or Create an account to join the conversation.

More
4 years 7 months ago #236611 by P1-Engineering
Thanks for the tip!.
Didn't know that option existed. The difference is a bit more though, around €150 per 400 watt drive set. You need the A2-L drive which seems to add a bit more compared to the standard A2.
Best pricing I could find was €500 per set including cables and such.

Please Log in or Create an account to join the conversation.

More
4 years 4 months ago #245484 by P1-Engineering
A set of A2L drives with servos are currently somewhere in the air to finally upgrade the SK0704 router. image missing /media/kunena/emoticons/cool.png

Unfortunatly I'm currently suffering from a broken neck, got hit by a car while cycling, so for now I try to get all the documentation and parts ready to hopefully have a flying start when I get to do some actual labor again.
Would you be able to help with some questions?.

-What kind of EMF filters did you use for the drives?. Delta recommends a seperate filter for each drive but the one in the manual is impossible to find and also can not find the specs of it to find a proper replacement.
-For configuring the DI's and DO's, how do you tell Linux which has what kind of function?
-Did you feed the encoder signal from the drive back to the Mesa board?. Not sure if this will work or only create issues while running in step/direction mode. 

-Any basic schematics available in terms of wiring?. 

In the future I want to add the glass scales to the drives but for now first focus on getting LinuxCNC + the Delta drives to work. 
Already happy to have LinuxCNC working with the ProbeBasic GUI. Next step I think is to make an function overview and wiring schematic to setup the Mesa config. 

Please Log in or Create an account to join the conversation.

More
4 years 4 months ago #245588 by andypugh
Note: The accursed editor cropped your message at the smiley when I tried to quote it.

Unfortunatly I'm currently suffering from a broken neck, got hit by a car while cycling

It sounds like that went a lot better than it might, all things considered.

-What kind of EMF filters did you use for the drives?.


I have always used RASMI filters from eBay. It's a good search term and they are relatively inexpensive.

-For configuring the DI's and DO's, how do you tell Linux which has what kind of function?


Yes, that is entirely configurable in the HAL layer, including processing and combining signals in various ways.

-Did you feed the encoder signal from the drive back to the Mesa board?. Not sure if this will work or only create issues while running in step/direction mode.


It would be good to do that, but would require an extra breakout board for the 7i76E at the very least. It would help with drive tuning, for example, and following-error detection.
But, initially, you can configure the system open-loop.

In the future I want to add the glass scales to the drives but for now first focus on getting LinuxCNC + the Delta drives to work.


Do the drives accept glass scale input directly? You can certainly add them at the LinuxCNC end, and use them to close the position loop. But, again, would need an additional daughter board for the 7i76E.
The following user(s) said Thank You: P1-Engineering

Please Log in or Create an account to join the conversation.

Time to create page: 0.069 seconds
Powered by Kunena Forum