594,860 active members*
5,448 visitors online*
Register for free
Login
Results 1 to 15 of 15
  1. #1

    UCCNC retrofit - newbie questions

    Hello CNC Zone,
    Opening a topic deserves an introduction! I often read on the forum as a guest, but until now, I haven't posted anything.
    My name is Rik, and I'm from the Netherlands.

    Besides conventional machines, I also have a Fehlmann Picomax 51CNC. The machine currently has a Heidenhain TNC355 controller, but unfortunately, the spindle drive recently broke down.
    When I bought the machine, I always had in mind to do a retrofit in the future, but unfortunately, these things always come sooner than planned.

    I have some electrical knowledge of household installations and three-phase installations, as well as some experience with frequency drives. However, I don’t have any expertise in electronics or servo drives.

    For retrofitting the machine, I’ve bought the following items:
    • UCCNC UC300eth controller
    • UCCNC UCBB breakout board
    • Delta ASD M-0721-M three-axis servo drive
    • Delta ECMA-C20807RS servo motors (750W)
    • Siemens Somotics 5.5kW spindle motor
    • Siemens Simodrive 611 servo drive for the spindle

    I want to control the servos for the axes in Position mode (PT mode) with a closed feedback signal from the Heidenhain linear encoders in the future. I’d like to control the Siemens servo in analog.

    So far, so good! I’ve set up a test with the UCCNC components and the Delta VFD, and when I control the VFD via ASDA Soft, I can jog the motor in PR mode.

    Unfortunately, jogging via UCCNC isn’t working.
    If I understand the Delta manual correctly and follow the diagram on page 83, I should connect the following inputs:
    + Sign
    - Sign
    + Pulse
    - Pulse
    Servo On
    Should I also assign CCLR, TCM0, TCM1, ARST, and EMGS to a pin?

    Link to the manual: https://filecenter.deltaww.com/Produ...N_20180725.pdf

  2. #2
    Join Date
    Nov 2013
    Posts
    4961

    Re: UCCNC retrofit - newbie questions

    Hi,
    I use 750W Delta B2 servos and drives, which are very similar to your drives....but not identical.

    Why did you select the Delta ASD M-0721-M model, the trailing 'M' means DMCNet does it not? Are you planning to use a net protocol?

    Should I also assign CCLR, TCM0, TCM1, ARST, and EMGS to a pin?
    I am surprised that you do not have a servo alarm. If a servo encounters an overheat fault, over voltage, under voltage, over current or following error fault, do you not want to signal
    the CNC controller that the servo is going to stop? Otherwise, lets say the X axis servo faults and stops, but all the others carry on....CRASH......is that what you want?

    I have programmed my drives with an Alarm output for each servo. Should any servo fault it will signal the CNC controller and stop the whole machine.

    If you do have an alarm how are you going to reset it? That is what the ARST input does. I have one output on my CNC controller that is commoned to all six servos (X,Y,Z,A,B,C).
    When that is pulsed it resets all the servos. Note there are some servo faults which CANNOT be reset, for those faults you have to power cycle the servo.
    So, in my installation I do use ARST.

    Why do you think you might need CCLR?
    TCM0 and TCM1 are for setting torque commands, and yet you are using position mode.....why would you think these signals are relevant?

    EMGS is an EStop pin. I personally don't use it, and in order to get the servo to work at all you'll have to de-program it. When I want a servo, or all servos to stop
    I de-assert the SON pin and do not therefore require a dedicated EMGS pin in each servo. When straight from the factory the EMGS input is programmed active, and thus
    to get the servo to operate you must have an external circuit to de-assert the input, otherwise the servo will be in continuous 'Estop mode'.

    The first thing I do when I get a new servo is to disable the EMGS function because it will prevent me from using the servo, unless of course I dedicate a hardware input......an
    and I said above, I don't need it.

    Parameters P2-9 through P2-15 control the function of the digital inputs (DI's) as per page 8-9 of the manual.
    A description of the numeric code that confers EMGS functionality is on page 8-301. The setting value (the last two digits of it at least) are 0x21.
    You have two choices either change whether its active high or active low so that the input could be left disconnected and yet the servo will operate OR disable it all together,
    which is what I do.

    Thus, on page 8-9 you can see that DI6 (P2-15) is by default set to N021, ie DI6 is configured as an EMGS input. Either, set it to N121, which would reverse its logical sense, or, if you prefer,
    program it to N000 and that would disable the EMGS input altogether.

    Now you should be able to operate the servo normally

    Craig.

  3. #3
    Join Date
    Nov 2013
    Posts
    4961

    Re: UCCNC retrofit - newbie questions

    Hi,
    I see you are planning to use +Sign and -Sign........do you mean differential or single-ended? I assume because your breakout board is single ended that is what you intend?

    Delta servo drives will operate up to 200kHz with single ended signalling and 500kHz with differential signalling.

    My machine can and occasionally does signal at 416.67kHz, and thus I use differential signalling. Really that is their 'sweet spot'.Did you go to all that expense to leave
    all that speed/resolution on the table?


    I presume you are planning to use the NPN single ended signaling scheme of diagram C3-1 of page 3-31?
    Compare that with diagram C4-1 on page 3-33 which is for differential signaling.

    I use Mach4 and an Ethernet SmoothStepper and my own breakout board. It has three ports worth of IO (51 inputs and outputs).

    Craig

  4. #4

    Re: UCCNC retrofit - newbie questions

    You can set this up with the C76 and C34DE-AB
    https://cnc4pc.com/c76-uc300-multifunction-board.html
    https://cnc4pc.com/c34de-ab-driver-t...a-asda-ab.html

    The C76 should be able to drive your spindle VFD.

    Let me know if you have any questions.

    Arturo Duncan
    https://cnc4pc.com

  5. #5

    Re: UCCNC retrofit - newbie questions

    Thanks for the replies, I’m really a bit stuck and I think I’m making some misunderstandings. Hopefully, you guys can help me get on the right track.

    @Joeaverage:
    It’s possible I didn’t get an alarm because the servo has been used before. I got it pretty cheaply—it’s been used for about 90 hours in a small test setup.
    I’ve been looking for where to connect ARST, but I can’t find a clear LED code description in UCCNC for where it should go.
    I’ve disabled the EMGS in the parameters now, thanks for that.

    Connections:
    Since I’m using an external 24V power supply, I’ve used the C3-2 wiring diagram, in NPN mode.
    C3-2 Diagram (page 67):
    35 Pull Hi S to 24V+
    39 Pull Hi P to 24V+
    37 /Sign Digital output Dir pin in UCCNC
    41 /Pulse Digital output Step pin in UCCNC

    Diagram 3.9.1 Standard Wiring (page 83):
    9 DI1 SON to digital output Enable pin in UCCNC
    33 DI5 ARST to digital output ???
    Questions:
    36 Sign should this go to 24V+?
    43 Pulse should this go to 24V+?
    Do I also need to connect the DO1/DO2/DO3 signals back to UCCNC?

  6. #6
    Join Date
    Nov 2013
    Posts
    4961

    Re: UCCNC retrofit - newbie questions

    Hi,
    you program an output to reflect an alarm condition. It would be a DO. I have only the one DO (ALRM) in my installation, but you could program others if you have a mind.

    Why are you using an external power supply? You should in fact use the existing built in 24V supply. But before you start worrying about that you should answer the basic question
    'am I going to use single ended (also called open collector) signaling OR am I going to use differential?'. Answer that first.

    Craig

  7. #7
    Join Date
    Nov 2013
    Posts
    4961

    Re: UCCNC retrofit - newbie questions

    Hi,
    I use Mach4, and Mach4 does not have alarm inputs or an alarm reset as standard either. The advantage of Mach4 is that it is highly customizable.
    I programmed seven LEDs, six for the axes (X,Y,Z,A,B,C) and one for the Spidle monitoring board to reflect if any or all exhibit a fault condition. Note also there is a Reset button, if I press it (with the mouse) it sends
    a pulse to all the servos and that serves to Reset them.

    I presume you can do the same with UCCNC?

    Craig

  8. #8
    Join Date
    Nov 2013
    Posts
    4961

    Re: UCCNC retrofit - newbie questions

    Hi,

    36 Sign should this go to 24V+?
    43 Pulse should this go to 24V+?
    Do I also need to connect the DO1/DO2/DO3 signals back to UCCNC?
    NO...if you are using single ended signaling then leave pins 36 and 43 strictly alone. Note that they power the photodiode via a small (51 Ohm) resistance, were you to connect either 36 or 43 to 24V
    you'd BLOW the photodiode instantly!!!

    SIGN and /SIGN (pins 36 & 37 respectively) and PULSE and /PULSE (pins 43 & 41 respectively) are for use with DIFFERENTIAL signalling, ie 0-5V, where the low value of resistance is correct
    per the differential signalling (recommended) scheme C4-1 page 3-33.

    Craig

  9. #9

    Re: UCCNC retrofit - newbie questions

    The C34 board connects not just the step and direction, but the fault and enable signals. If the servo fautls, it will be detected and e-stop triggered.
    https://cnc4pc.com/c34de-ab-driver-t...a-asda-ab.html
    If you need to use the differential signals, you can add the C74: https://cnc4pc.com/differential-converter.html
    You should not need to use differential unless you need to use a very high resolution, but remember that the UC300ETH is limited to 400khz.

    Arturo Duncan
    https://cnc4pc.com

  10. #10
    Join Date
    Nov 2013
    Posts
    4961

    Re: UCCNC retrofit - newbie questions

    Hi,
    do the calculation....don't guess.

    My servos are direct connected to 5mm pitch ballscrews. I want a resolution of 1um. Note this does not necessarily mean 1um accuracy, but resolution.

    That would mean that with the servos electronic gearing that I would have, in effect, a 5000 count per rev encoder. I also want my servos to be able to spin at their maximum of 5000rpm.
    The calculation:

    5000/60 =83.333 revs/sec @ 5000 counts/rev= 83.333 x 5000 = 416.666kHz

    Clearly I need to use differential signaling...and that's what I did, and to be fair to the servo manufacturers that is largely what they intended.

    If you want to use single ended signaling then you are limited to 200kHz. Lets see what compromises you'd have to make to live within that 'ceiling'.

    Lets assume you want your motor to be able to do 3000rpm or 50 rev/sec then the best resolution you could use is 200k/50=4000 counts/rev.
    Alternately you might want, lets say 7500 counts per rev, in which case your maximum speed is 200k / 7500 = 26.666 revs/sec or 1600rpm.

    The point is that in order to live within the signaling 'ceiling' you need to limit speed or resolution or both.
    As Arturo points out the UC300 is maxed out at 400kHz....but even 400k is still twice the single ended signalling rate of the drives and 80% of the drives max signalling rate with differential signaling.
    My Ethernet SmoothStepper is good to 4Mhz, so the signalling is limited only by the drive comms...not the motion control.

    To OP, this is the decision you must make 1) use single ended signaling and use your existing breakout board, realising that you are not getting full benefit from the servos OR 2) use another breakout board
    or add-ons to your existing breakout board so you can exploit the full speed and resolution of the servos, in your case limited by the UC300.

    Craig

  11. #11

    Re: UCCNC retrofit - newbie questions

    Craig,

    We do not know what the steps per units are and speeds are required. 200khz can give you very decent resolution. YES! The ESS is a monster in terms of specs. It is definitely the way to go if high resolution is a must.

    Arturo Duncan
    https://cnc4pc.com

  12. #12

    Re: UCCNC retrofit - newbie questions

    Sorry for the newbie questions; maybe I thought a retrofit would be easier before I started...
    Since the UCBB breakout board requires a 24V power supply, I initially chose the C3-2 schematic. The UCBB manual states the following:

    “The same 24V power supply used to power the device can be used to power the externally connected devices like the limit and home sensors, e-stop button, etc., and relays and other devices connected to the board for I/O functions.”

    Now that I think about it, I don’t necessarily have to do this. I could use it for relays and such but use the servo drive's own power supply for the servo drive itself.

    If I follow the C3-1 schematic:
    - Connect 17 (VDD) + 35 (Pull Hi_S) + 39 (Pull Hi_P) together
    - Connect 37 (/Sign) to the UCCNC pin for Dir
    - Connect 41 (/Pulse) to the UCCNC pin for Step

    As for the connections in the schematic that are linked to 45 (COM-), which ones are these?

    - Connect 17 (VDD) to 11 (COM+).

    I’m planning on single-ended signaling since UCCNC doesn’t yet support differential signaling if i'm right.

    Regarding speeds, the X and Y axes currently have a max of 7.2 m/min.
    The current motors have a max of 2000 rpm, and the ball screws have a 4 mm pitch.
    The new motors have 3000 rpm and 17-bit encoders.
    If I keep the same speed, I would reach 2000 rpm at 6000 counts/rev.

  13. #13
    Join Date
    Nov 2013
    Posts
    4961

    Re: UCCNC retrofit - newbie questions

    Hi,
    yes, now your talking.

    Now that I think about it, I don’t necessarily have to do this. I could use it for relays and such but use the servo drive's own power supply for the servo drive itself.
    That is correct. A small wire from 17 to 35, and another from 35 to 39 and another from 39 to 17.....in a 'daisy chain' and if you use #24 wire or smaller then it fits within the plug housing,
    too easy!

    The 0V common of your breakout board needs to be tied to the 0V common of each and all servo drives, so a wire from COM of your BoB to each of your servos pin 45.

    I’m planning on single-ended signaling since UCCNC doesn’t yet support differential signaling if i'm right.
    OK, so long as you are aware that you are leaving a little over half the servos potential 'on the table'. The UC300 produces TTL output levels, ie sourcing and sinking 5V,
    25mA . It's the breakout board that determines whether the servo signaling is 24V single ended (open collector, or in the case of your breakout board open drain as it uses a MOSFET
    rather than a BJT). As Arturo has posted he has little PCBs that take the regular single ended output from the CNC controller and turn that into 'differential pairs' suitable for servos.
    So, it would require a little more signal hardware to use differential signaling, but UCCNC and UC300 is not the limitation.

    Given the signal limit is 200kHz, and you have 3000 rpm servos then:

    3000 / 60= 50 revs/sec 200k /50 =4000 thus you could use a maximum of 4000 counts per rev and still use the full rpm of your new servos.
    With 4mm pitch screws that is 1um linear resolution. My experience is that 1um resolution is entirely good enough for a hobby machine.
    Both my new mill and my earlier mini mill use 1um resolution. Note that linear resolution does not mean accuracy per se, but the resolution must be
    at least as 'fine' and preferably several times 'finer' than your target accuracy.

    Overall I would say that the 200kHz signal limit is not in any way compromising your design, and the extra complexity of differential signaling is not required.

    You will need at least one output from the each drive, an alarm. Your servo drives have the possibility of up to three user defined digital outputs (DO's). You need to program
    one of them as an alarm. Note that each of the DO's is an isolated collector/emitter pair of a phototransistor. My recommendation is that you hook the output signal to the collector.
    The emitter of that same phototransistor must be connected to -COM (pin 45). This would make the output active low. Note however that if you made a mistake and applied 24V (from the BoB
    or wherever) to that output, and the output went active low, it will attempt to short that 24V to 0V, and the current spike will destroy the photo transistor instantly. Any mistake on your part
    could wreck that output......be careful. If you are nervous about that potential vulnerability then don't connect the output direct to the collector but through a low value resistor, enough to provide
    some current limitation and thereby protect the photo transistor in the event of 24V being applied directly to it. I'd recommend at least 470 Ohm to 560 Ohm as that would limit the short circuit current to 50mA
    and is yet small enough that it would not interfere with the alarm signal to the BoB.

    Craig

  14. #14
    Join Date
    Nov 2013
    Posts
    4961

    Re: UCCNC retrofit - newbie questions

    Hi,
    if your servos are '17 bit', then that makes them the same as my 750W Delta B2 servos. I don't quite know how they come to the designation of '17 bit' because its not accurate to my way of
    thinking. Anyway the encoders are actually differential of 160,000 count per rev. If you wished to use that encoder (raw) then to spin the servo at 3000rpm then you'd need to signal the drive at
    (3000/60) x 160,000=8MHz!!!!........that's radio frequency, and in no way practical.

    Why would a manufacturer use an encoder that almost guarantees that you could never signal fast enough to get to full speed?

    You may or may not have heard of 'electronic gearing'. Almost all modern AC servos have it, including Delta. The idea is that you choose two integer numbers, a denominator (D) and a numerator (N)
    and they apply to the incoming command and 'match' that command to the actual raw encoder count.

    Lets use your installation as an example. As I posted above if you use a 4000 count per rev encoder, you'll get very nice resolution (1um) AND still be able to do 3000rpm.

    4000 x (N/D) =1600000
    So, N could be 40 while D is 1, OR N could be 80 while D is 2 OR N could be 160 while D is 4.

    You get the idea that N and D are just two numbers and they are not necessarily unique....you just have to decide on a particular pair.
    Your installation is particularly easy, so just as an example of a slightly more complex calculation take my installation where I wanted a 5000 count per rev encoder to match
    my ballscrews:

    5000 x (N/D) =160,000

    N=32 while N=1 OR
    N=64 while D=2 etc.

    Still pretty easy.

    I built a fifth axis rotating platter based on a 4.75:1 servo reducer. This made the calculation of the N and D values a little harder, it was from memory N=51 wile D=27.
    When I get back to work, I'll confirm those numbers, but using electronic gearing made it simple to use, even if the first calculation was a bit harder.

    The bottom line is that with electronic gearing you can adapt the servo to a very wide range of equipment with different ballscrew and/or gear/belt reductions
    to match just about any controller. This means the servo can be used in just about any machine and therefore maximizes the sales for that manufacturer. This is a major, and telling,
    difference to steppers as you may be familiar with.

    Craig

  15. #15
    Join Date
    Nov 2013
    Posts
    4961

    Re: UCCNC retrofit - newbie questions

    Hi,
    I built a fifth axis rotating platter based on a 4.75:1 servo reducer. This made the calculation of the N and D values a little harder, it was from memory N=51 wile D=27.
    When I get back to work, I'll confirm those numbers, but using electronic gearing made it simple to use, even if the first calculation was a bit harder.
    I am at work now and can expand on what I posted earlier.

    It is in fact the fourth axis or trunnion table that offers the greatest insight into the power of electronic gearing. The servo reducer has a reduction of 19.5:1

    I decided that I wanted a step per unit of 3600. For a rotary axis the unit is one degree, so 3600 steps per degree is one arc second per controller step. Seems logical.
    In order for the A axis to do one complete revolution then the number of steps is:

    3600 x 360 =1,296,000 steps per revolution, but the servo must actually do 19.5 revolutions for the A axis to do one.....so:

    1296000 x (N/D) = 160000 x 19.5
    therefore (N/D) = (160000*19.5) / 1296000
    =2.407407407407 (repeating)

    Doing some more calculations N=65 while D=27. Confirm with your calculator that 65/27=2.407407407(repeating)

    Thus by choosing carefully the N and D numbers I have accommodated the gear reduction and the raw encoder count to end with a logical angular resolution of 1 arc second per step.
    Very convenient.

    Lets just do a sanity calculation that proves that this number is sensible. Lets say that I want to spin the servo at its rated 3000rpm. Through a 19.5:1 gearbox that would mean that the
    a axis is rotating at 3000/19.5 = 153.84 revs/min or 2.564 revs/second

    With 1296000 steps per revolution and a max signalling speed or 500kHz (because I use differential signaling) then the A axis can do 1296000/500000=2.592 revs per second at max signaling speed,
    which is just a little more than I actually require (2.564 revs/sec) and thus I am within my signaling limit.

    You can see in order to get this resolution (1 arc second per step) and run the servo at rated rpm I need a high signaling rate, and differential signaling gives me that whereas I would have to compromise
    if I were restricted to 200kHz as conferred by single ended signaling.

    Even if the calculation seems confusing, and believe me it took me hours, days even, before I came to the correct conclusions, is that electronic gearing is exceptionally powerful feature to
    flexibly employ your servo. In some respects this is only the tip of the ice berg too. You may have up to four numerators programmed, that can be selected on the fly. This might mean that you could
    have a four speed gearbox, with each one of the four programmed numerators representing one gear ratio. Very clever and very powerful.

    Craig

Similar Threads

  1. Multicam MG103 with ATC - highly upgraded UCCNC retrofit
    By Parkgrr in forum Multicam Machines
    Replies: 0
    Last Post: 08-15-2024, 04:15 AM
  2. Planning Retrofit Emco pc mill 125 with Uccnc
    By fredd90 in forum EMCO CNC Machines
    Replies: 4
    Last Post: 08-21-2023, 07:22 PM
  3. First job using UCCNC controlled retrofit/refurb Multicam router
    By motogeeking in forum UCCNC Control Software
    Replies: 1
    Last Post: 08-20-2017, 10:52 PM
  4. Multicam Router Retrofit/Rebuild using UCCNC
    By motogeeking in forum UCCNC Control Software
    Replies: 6
    Last Post: 06-27-2017, 03:02 AM

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •