Go Down

Topic: Arduino Uno, ULN2803, Relay, and 24VDC Pump (Read 5727 times) previous topic - next topic

dlloyd

#30
Aug 29, 2016, 04:22 am Last Edit: Aug 29, 2016, 03:09 pm by dlloyd
The diode(s) at the pump is OK. The distance (2m) is good.
Note: The relay coil should have its own separate diode.

Regarding the relay contacts:

How are you switching the pump on ... is 24V power switched to the pump's positive terminal, or is the pump's negative terminal switched to the 24V supply ground?

EDIT: Here's an opto isolation circuit I was thinking of ... it would require using a relay with 24VDC coil.


GoForSmoke

The ULN2803 is not driving the motor. It is driving the relay that controls the motor. The relay draws only 78mA (12VDC/155ohms).
An inductive load and the IIRC protection diodes which was the point. Does it have adequate protection built-in?

1) http://gammon.com.au/blink  <-- tasking Arduino 1-2-3
2) http://gammon.com.au/serial <-- techniques howto
3) http://gammon.com.au/interrupts
Your sketch can sense ongoing process events in time.
Your sketch can make events to control it over time.

adwsystems

The diode(s) at the pump is OK. The distance (2m) is good.
Note: The relay coil should have its own separate diode.

Regarding the relay contacts:

How are you switching the pump on ... is 24V power switched to the pump's positive terminal, or is the pump's negative terminal switched to the 24V supply ground?
EDIT: Here's an opto isolation circuit I was thinking of ... it would require using a relay with 24VDC coil.


The pump power is switched on the high side (24V switched). I don't have any 24VDC relays. The only relays with enough contact current have 12V coils.

The opto circuit vs the ULN2803 circuit assumes the 12V relay/coil is causing the problem. Otherwise swapping out the ULN2803 for the opto will have no effect.

dlloyd

#33
Aug 29, 2016, 01:45 pm Last Edit: Aug 29, 2016, 11:04 pm by dlloyd
Quote
The only relays with enough contact current have 12V coils.
Here's a custom search at Digi-Key (24VDC coil voltage, non-latching, non-automotive type, 10A and higher contact rating @ 24VDC and higher).

Quote
The opto circuit vs the ULN2803 circuit assumes the 12V relay/coil is causing the problem. Otherwise swapping out the ULN2803 for the opto will have no effect.
Yes, adding opto isolation adds relay coil / coil driver and also power rail isolation. However, it also greatly increases isolation from the contact side by adding a new isolation barrier. This improves noise immunity to contact arcing and resulting RF/EMI emissive energy. It also makes it much easier to separate the 5V circuit from all the rest.

Firstly, with your existing circuit, I would suggest adding a 0.1µF capacitor across the relay contacts and a diode reverse connected across the 24VDC supply 1µF capacitor across the motor to see if that would resolve the problem. Also, if you have unused pins on the Arduino, I would configure all of them with INPUT_PULLUP so they don't remain floating.

EDITED (to fix capacitor location and add capacitor across motor):


adwsystems

I don't have any on hand. That is my point, ordering any would take days to arrive. Furthermore I do not have any proto area to wire the opto, I will have to have a board fabricated.

What I was trying to say is that if I use an opto and a 12V relay there is no difference compared to a ULN2803 and a 12V relay.

I will try adding the cap and diode. It was also suggested that I add some small caps to the 5V and 12V lines where they attach to the arduino as well.

P.S. I'm not sure what the capacitor is supposed to do in your new drawing. It only connects to 24V and never discharges.

dlloyd

#35
Aug 29, 2016, 03:29 pm Last Edit: Aug 29, 2016, 11:16 pm by dlloyd
Quote
What I was trying to say is that if I use an opto and a 12V relay there is no difference compared to a ULN2803 and a 12V relay.
Yes, because of the common 12V/5V supply.

Quote
It was also suggested that I add some small caps to the 5V and 12V lines where they attach to the arduino as well.
Yes, a good suggestion.
Could also try a ferrite core with the 5V/12V/GND lines wrapped through it a few turns.

Quote
P.S. I'm not sure what the capacitor is supposed to do in your new drawing. It only connects to 24V and never discharges.
Oops...I've updated the image.

EDIT: Added 1µF capacitor across motor.

  • Diode across motor: inductive kickback suppression.
  • Capacitor across relay contacts: contact arc suppression.
  • Capacitor across motor: motor noise suppression.
  • Diode across relay coil: flyback voltage spike suppression.

Go Up