Linuxcnc with Mesa 7i76e and Delta ASDA-B2 Servo Drives
- P1-Engineering
- Offline
- Junior Member
- Posts: 30
- Thank you received: 8
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.
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.
Please Log in or Create an account to join the conversation.
- P1-Engineering
- Offline
- Junior Member
- Posts: 30
- Thank you received: 8
Now it's a matter of basically resting for 8-12 weeks with some kind of cage around my head.
Thanks, I might actually have a Rasmi filter for the Omron VFD!. Seems like they have specific ones for servodrives, Yaskawa in this case but that shouldn't make a hugh difference I suppose. I will contact them to make sure.
rasmi.com/product/rs-1004-sg/
After reading more and more it slowly starts to become more clear. Also found some example configurations which are very close to how I would like to set it up.
For the encoders, I have the 7i85 card to connect them.
The Delta A2-L drives can take a glass scale directly, for this you need the L version specifically. It's very difficult to find information about it though. Also from Delta themselves I can't get a lot of info. But I want to try it atleast. When I have it working I want to document it for anyone else, future use.
And then you use the output of the drives back to the 7i85 card to feed Linux with the actual position, but only as information I guess and maybe setting a maximum deviation. But that will need some testing when I'm at that point.
Please Log in or Create an account to join the conversation.
The Delta A2-L drives can take a glass scale directly, for this you need the L version specifically. It's very difficult to find information about it though.
In that case it might be best to leave the drives as a velocity-mode step=dir drive and close the position loop in LinuxCNC using the scales. (You could also experiment with position-position mode too, where the LinuxCNC PID is almost 100% FF0 and has just a hint of I-gain to pull in the last few microns.
Please Log in or Create an account to join the conversation.
- P1-Engineering
- Offline
- Junior Member
- Posts: 30
- Thank you received: 8
Highly appreciated Andy!
Please Log in or Create an account to join the conversation.
Please Log in or Create an account to join the conversation.
- P1-Engineering
- Offline
- Junior Member
- Posts: 30
- Thank you received: 8
Also found the login details to Delta's FTP server which has all the needed support documents.
Currently busy getting everything ready for testing on one of those small CNC1419 toy machines I bought just to check all the functions and macros before I convert the production machine. Getting the homing to index to work has been a challenge thus far.
Please Log in or Create an account to join the conversation.
What in LinuxCNC/HAL did you map the SRDY (servo is powered on, no alarm) signal to?
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)
Please Log in or Create an account to join the conversation.
What in LinuxCNC/HAL did you map the SRDY (servo is powered on, no alarm) signal to?
linuxcnc.org/docs/stable/html/man/man9/motion.9.html
joint.N.amp-fault-in IN BIT -Should be driven TRUE if an external fault is detected with the amplifier for this joint
This looks like a good choice, though it might need to be inverted in HAL.
Please Log in or Create an account to join the conversation.
The Delta B3 servo drives have both a servo ready signal and an alarm signal. I'm trying to figure out how to best use the two them.
I figured the joint.N.amp-fault-in would be best used with alarm signal.
But for the ready signal I haven't been able to find a matching hal input. Maybe it would be best to write a short hal code snippet that AND checks the ready signal from all drives and prevents the enabling of the machine if not all drives are ready.
I'm rookie when it comes this stuff so any feedback is very welcome.
Please Log in or Create an account to join the conversation.