Page 1 of 1

What value pull-down resistor for TTL of UC300ETH?

PostPosted: Sat Aug 27, 2022 2:33 pm
by mmorlan62
Hi there.

I am using the UC300ETH (with a CNC4PC C94 Bob) to drive an Anaheim Automation motor driver. They are connected via a couple parallel cables. My outputs to the machine are working great. Pulse and Direction outputs are working perfectly.

My problem is the UC300ETH/C94 inputs are floating above 0volts, causing their state to flicker. I am using Port 2 Inputs 10,11,12,13,15 for detecting the limit state of my machine. The Anaheim driver is sending limit signals to the C94 as 0-5volt TTL signals.

It is common to add a pull-down resister to chip inputs in order to keep them from floating and false triggering. (Many times a chip has internal pull-down resistors that can be engaged via code.) The value of that resistor depends on the impedance of the UC300 inputs. I couldn't find any specs about the UC300 chip, where one would find the uAmps required to drive the inputs. Without that, I can't calculate the required pull-down resistor value.

Does someone know a good pull-down resistor value for TTL?

Thanks,

Michael

Re: What value pull-down resistor for TTL of UC300ETH?

PostPosted: Mon Aug 29, 2022 1:33 am
by ger21
Ask Arturo from CNC4PC.

Re: What value pull-down resistor for TTL of UC300ETH?

PostPosted: Mon Aug 29, 2022 10:13 am
by Dazp1976
I don't use 5v for limits. A trigger range of 0-5v is too narrow afaic.
There's a reason that most scenarios would opt to use 24v circuits.

Re: What value pull-down resistor for TTL of UC300ETH?

PostPosted: Tue Aug 30, 2022 12:03 pm
by fsli
I don't see an Anaheim driver that incorporates limits of any sort. I'm curious to know the driver model number, to understand how it's signaling a limit condition.

On the C94, there are two sets of input terminals, each with its own common terminal. If you are using pins 10 thru 15, you need to connect the common voltage to one or both of the terminals labelled Com2. If the limits are 5v signals, then you need to connect either +5v (if the limits are active low) or the 5v ground (if the limits are active high). My suspicion is you either did not connect the Com2 terminal, or you connected it to the wrong supply. That is, that the driver and input common do not share a ground reference.

One of the limitations of the C94 is that each group of input terminals have to signal the same voltage level and direction. That is, if you are using +5v active high for one of the inputs on port 2 then all the port 2 inputs must be +5v active high.
So, be sure that you are not mixing voltage levels on the input terminals. Contrast that with the AXBB, where each input is isolated from the the others and can have a different voltage and signal direction.

Re: What value pull-down resistor for TTL of UC300ETH?

PostPosted: Tue Aug 30, 2022 4:12 pm
by mmorlan62
Hi Frank,

The Anaheim Automation DPK72004XDTI is an odd bird. I can't find a manual for it anywhere. It is essentially four BLD72 drivers in one case. Unlike the BLD72, the I/O is on separate DB25 and DB9 connectors. Here are some pics of the setup:

https://drive.google.com/file/d/1yXttcTAhgW_-5aUlMD-ZbfnJKyxL67yg/view?usp=sharing
https://drive.google.com/file/d/1iqxYHYtqyCXebIdgPZiPqlvXDOb-4Igt/view?usp=sharing
https://drive.google.com/file/d/1eW7dj-ntukVew3CCTiKmEDXJXL7CCgKZ/view?usp=sharing
https://drive.google.com/file/d/1f9dPiMMOCZCymSyTrqxFMUAQ8gT2wwLo/view?usp=sharing

Here's the prototyped setup wiring diagram:
https://drive.google.com/file/d/1-n6oVzBL53jBWNlJqVpuftKVEXL5QUkN/view?usp=sharing

The DB25s provide I/O for the computer and DB9s include contact-closure input lines from the machine end-stop buttons. The green tie-down blocks are the 4-phase motor outputs.

So the control path is LIMIT SWITCH -> CONTACT CLOSURE -> ANAHEIM DB9 -> ANAHEIM DB25 -> TTL? -> C94 -> UC300ETH

I did connect the C94 Port 2 COM to ground on the Anaheim and each Port 2 input to their respective pin on the Anaheim.

I came up with a solution that works (although Arturo has offered a better way that I'm going to try.):

I measured the Anaheim DB25 outputs: LOW = 0.2v, HIGH = 2.47v. It seems the 0.2v was floating and "tickling" the C94 inputs enough to flicker and trigger them.

I solved this by adding a 330ohm pull-up from each C94 input to the C94's 5v supply. That makes them HIGH when the Anaheim is LOW (floating) then, when the Anaheim goes HIGH with 2.47v, the C94 goes LOW. Kinda backwards but it works. I switched UCCNC inputs to trigger on LOW and all the limits now work.

Here is what Arturo suggested I try:

"Considering what you are saying, it is very clear that the output in question is +5vdc Open Collector. That means that when it is active, it sends a GND signal and when it is inactive, the signal remains floating. It is OK to wire it like you are doing with the resistor, but you can also wire it without a resistor if you connect the +5vdc into the COM terminal for the bank of inputs you are using, and you feed the output of the driver into the input terminal you are using. This way when active the ground of the output with close the circuit with the +5vdc on COM."

Best,

Michael

Re: What value pull-down resistor for TTL of UC300ETH?

PostPosted: Wed Aug 31, 2022 12:11 am
by fsli
No offense, Michael, but I don't think electronics work is your strongest skill. ;)

Looking at your wiring diagram, I think you've misunderstood how to use the input terminals on the C94. Arturo is partially correct, but I can't blame him based on your other notes.

In the tables on the wiring diagram, you show the DB9s only have connections for 0v supply. Likewise, the DB25s only have a 0v supply. There's no way to send +V to the driver from the C94. It's possible that the Annaheim is sending a TTL voltage back to the limit terminals, or that they are +5v open collector as Arturo guessed, but I find it unlikely. More likely is that the step/dir inputs on the Annaheim are isolated and the 0v is just a reference for them. It's a safer bet that the limit switches are just mechanical switches that connect the 0v supply from the DB25 back to the limit terminals. That is, when the axis is at the high or low limit the corresponding limit terminal is connected directly to the 0v supply, making them simple active-low signals.

I'm somewhat curious about how you connected the voltmeter leads when measuring your LOW and HIGH outputs from the DB25 limit terminals. Not really important.

I would take Arturo's comments as instructions, not a suggestion. Remove the wire that you show in the wiring diagram from the COM2 terminal (top left corner of the C94) to pin 19 of the DB25 breakout board. Remove the resistors. Connect the +5v output wire (currently going to the resistor bank) to the COM2 terminal. Connect both pin 1 and pin 14 of the X/Y breakout board to the Port 2, Pin 15 input on the C94 (this is your X home/limit combined). Connect both pin 16 and pin 17 of the X/Y breakout board to the Port 2, Pin 13 input on the C94 (this is your Y home/limit combined). Connect both pin 1 and pin 14 of the Z/A breakout board to Port 2, Pin 12 on the C94 (this is your Z home/limit combined).

Your current drawing incorrectly shows pin 17 on the Z/A breakout board being connected, but that's the D limit. You have the Z axis step/dir connected to the C terminals, so you should be using the C limits for Z.

Re: What value pull-down resistor for TTL of UC300ETH?

PostPosted: Wed Aug 31, 2022 12:43 pm
by mmorlan62
FSLI, :D

Thanks. I'll review your feedback and try the wiring you suggest.

I'm used to driving Arduino and ESP32 inputs without the benefit of opto-isolators, etc. Still learning...

Cheers,

Michael