Author Topic: PCB Review - Actuator Controller with Current Sensor  (Read 1141 times)

0 Members and 1 Guest are viewing this topic.

Offline bizkitsTopic starter

  • Contributor
  • Posts: 30
  • Country: sg
PCB Review - Actuator Controller with Current Sensor
« on: October 22, 2020, 05:18:11 pm »
Hi everyone, recently I have a project whereby I would need to control 24V Actuators.
Using 2 relays, I can control the direction forward and backwards.
Along with the modules INA219, I can measure the current which goes through them.
The microcontroller I am using is the ESP32. Hence I can control it over WiFi.

My PCB may have a maximum of 4 actuators controlled at once hence the 4 current sensor slots which communicates over I2C.

I have attached my schematics and PCB design. Please comment on it so I can improve my design if I made any mistakes.
Thank you!


 

Offline Renate

  • Super Contributor
  • ***
  • Posts: 1460
  • Country: us
Re: PCB Review - Actuator Controller with Current Sensor
« Reply #1 on: October 22, 2020, 11:16:12 pm »
I had to scratch my head a bit.

The signal names on the common legs (pin 5) of the two relays are most confusing!
AGND? VIN-?
How about DRIVE1, DRIVE2 or A, B or CCW, CW or ...

Ah, you're using Adafruit INA219 modules from Adafruit?
You could just roll your own on the PCB.

Do the actuators have their own limit switches?
If not, what will you do when the first one stalls against the end?

Maybe you want to use a H bridge driver instead of relays?
With 4 H bridges you can drive the 4 actuators separately and shut just it off when there is too much current.
You can even use an H bridge with current sensing instead of the INA219s.

Here is one H bridge: https://www.ti.com/lit/gpn/drv8876
 
The following users thanked this post: bizkits

Offline bizkitsTopic starter

  • Contributor
  • Posts: 30
  • Country: sg
Re: PCB Review - Actuator Controller with Current Sensor
« Reply #2 on: October 23, 2020, 03:18:58 pm »
I had to scratch my head a bit.

The signal names on the common legs (pin 5) of the two relays are most confusing!
AGND? VIN-?
How about DRIVE1, DRIVE2 or A, B or CCW, CW or ...

Ah, you're using Adafruit INA219 modules from Adafruit?
You could just roll your own on the PCB.

Do the actuators have their own limit switches?
If not, what will you do when the first one stalls against the end?

Maybe you want to use a H bridge driver instead of relays?
With 4 H bridges you can drive the 4 actuators separately and shut just it off when there is too much current.
You can even use an H bridge with current sensing instead of the INA219s.

Here is one H bridge: https://www.ti.com/lit/gpn/drv8876

Thanks for taking the time to understand my schematic.
I apologize for the confusing naming conventions. With AGND I actually meant the "Actuator's Ground", so when connecting the wires to the board, it will be clearer.
As for VIN- it should be the 24V output for the actuator.

Actually I did consider to use the DRV8876 and did try it (I attached my schematic in this reply).
I did a lot of research trying to find a motor controller with current sensing and was excited with I found one.
I faced some issues actually. I wasn't sure if the resistor values I used was correct as the values which I get from the IPROPI seems a little strange.
Hence due to time constraints and cost issues, I ended up sticking with a simple relay for this project.
Did you manage to use this module in any of your previous projects?

Maybe I should have explained more. In my project all actuators are of the same stroke, they will extract outwards or inwards all at the same time.
Hence there is no need for 4 individual H bridge driver.
However each of the actuator needs to have their current read which is why if I used the DRV8876, I would need 4 of those. Compared to 2 relays and 4 current sensors which is cheaper.

I didn't add the INA219 directly on the board is due to the fact using the breakout board was easier to solder and cheaper.
 

Offline floobydust

  • Super Contributor
  • ***
  • Posts: 7966
  • Country: ca
Re: PCB Review - Actuator Controller with Current Sensor
« Reply #3 on: October 23, 2020, 08:12:32 pm »
The Adafruit INA219 you have on 5V power, that board has 10k I2C pullup resistors to +5V but the ESP32 is a 3.3V MCU.
You could remove the two pullup resistors and move them to +3.3V, or power the INA219 from +3.3V.

I would have fuses - one for each motor and one for the MCU (input to 5V reg U1). Actuators tend to jam or get overloaded.

At rest, it is better to have the motor relay giving GND to each leg, not 24V power. People will mess with wiring and a short to GND would give a surprise. I would swap pins 2, 3 on the relays.

Don't have the pcb ground-pour under the ESP32 antenna. There is advice in the datasheet to back it off I think 1cm.
Your thermal relief spokes are too small and will melt at high current.
 

Offline bookaboo

  • Frequent Contributor
  • **
  • Posts: 772
  • Country: ie
Re: PCB Review - Actuator Controller with Current Sensor
« Reply #4 on: October 23, 2020, 09:03:46 pm »
You could just take the volt free contacts of the Relays to screw terminals, that gives you maximum flexibility on wiring.
I'd avoid routing the 24V volt under the logic, actuators could be noisy.
I'd also change to 12V relays and add an additional regulator in to drive those, that keeps the back emf off your supply line to the ESP.
All that said the H-Bridge suggested is even better.
 

Offline S. Petrukhin

  • Super Contributor
  • ***
  • Posts: 1273
  • Country: ru
Re: PCB Review - Actuator Controller with Current Sensor
« Reply #5 on: October 23, 2020, 10:26:01 pm »
I would add power and on led indicators.
And sorry for my English.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf