I'm designing a PCB for my caving robot, which mainly consists of a STM32F723ZE and 16 motor controllers, with current measurement.
My question is: can I route the PWM signals going to the motor controllers just next to the analog voltage from the current measurement? Or will I get "significant" cross-talk?
In detail:
track space: 0.15 mm (I could probably increase a little bit if needed, but not much).
the analog track: the H-bridge has a "VpropI" pin with voltage proportional to current (I expect about 0.5 V). I add a RC filter (R = 100 kΩ, C = 10nF): the output of the RC filter goes to the ADC pin of the STM32 (about 6 cm long track). If needed, I can easily change for R = 10 kΩ, C = 100 nF.
the tracks are parallel for 5-6 cm.
the H-bridge supports up to 100 kHz PWM (I haven't chosen the PWM frequency yet, I was planning just to try different frequencies once I get the PCB and attach the motors to it).
let's say that 20 mV of noise are fine (50 mV would still be OK I think with software filtering).
So, do I have to dig into how to compute cross-talk/reduce it, or can I just go ahead like that?
Is there any simple rule of the thumb to know when I can just ignore cross-talk and when it needs further investigation?
EDIT: as suggested by I did a LTspice simulation:
The blue signal is the "middle point" between the 2 capacitors (that in real PCB is connected to ADC). The green signal is a 3.3V PWM signal, with 40 ns period, and 1 ns or 0.1 ns rise/fall times (NB: I plotted 0.5V+V_PWM/1000 (green signal) in order to get it on a similar scale as the noise).
With 1 ns rise/fall time:
@Neil_UK: is this the modelisation you where refering to?
If this is the correct way to model it, then with both capacitive and inductive effects, I get at most 5 mV of noise with 0.1 ns rise/fall time. So as long as the rise/fall time is >0.1 ns, I should be fine (crosstalk<5 mV). Correct?
EDIT 2 : new circuit based on the last comment Neil_UK (L1 in series with L1) :
So with L1 in series with C1 (nb : I know divide the PWM only by 100 for plotting). With rise/fall time of 100 ns
I have to admit I don't undestand why L1 should be in series with C1 and not with C2, but if so, then results are far worse : with 1ns rise, I get several volts of noise ; with 100 ns rise time, I'm still having about 45mV of noise