How much noise is typical on the MAP sensor signal?
#21
That seems reasonable. I am not sure how different it is from the way Mazda wired everything up. In any event, my issue right now is with MAP noise, and the MAP sensor is mounted on the MS PCB.
If it is electical noise, the source of the noise is RPM and MAP dependent. The signal is smooth at idle. It's smooth at 3000 RPM and low MAP. It gets noisy at high MAPs above ~3000 RPM.
If it is electical noise, the source of the noise is RPM and MAP dependent. The signal is smooth at idle. It's smooth at 3000 RPM and low MAP. It gets noisy at high MAPs above ~3000 RPM.
#22
I don't see any evidence of noise like this on any other logged signal. I would expect that noise due to e.g. ground bounce would affect small swing inputs like the IAT sensor (with a full scale range of only a volt or so). MAP is apparently sampled once per ignition event, which is 100 Hz at 3000 RPM. The log samples CLT and IAT at 50 Hz IIRC. That seems like too small of a difference for electrical noise to be present on all signals but only evident on the MAP because it samples faster. It is also surprising that the mapDOT swings so widely but the MAP trace itself does not. Hmm. I need to look at the code to see how mapDOT is calculated.
#24
Looking at the code... (caveat: I have not studied the ms2 code in any detail.)
in ms2_extra_main.c
outpc.mapdot = (781L * (outpc.map - last_map)) / tmp_mapsample_time;
tmp_mapsample_time is the number of ticks since the last ignition event. Ticks are 128 us. 781 is ~100 ms in ticks.
I have the map sample point set to 50%. So tmp_mapsample_time should be approximately (1000 [ms/hz])/(rpm/60 [sec/min]) * 50%. Which is 10ms after the last ignition event at 3000 RPM.
So mapdot at 3000 RPM is
100 ms * (map - last_map) / 10 ms
or 10 times the change in MAP value since the last ignition event. (I am ignoring the map lag value here, which weights the sampled map value and the previous map value to determine the current map value.)
Spikes to 200 in the mapdot trace at 3000 RPM indicate that the MAP is changing 20 units per sample, post lag filtering. Units are kpa*10. So a change of only 2 kPa between samples results in a mapdot of 200.... ? At 1500 RPM 200 mapdot is a change of only 1 kPa between samples. Hmm. Clearly the lag filtering has to be taken into account here.
Interestingly, the code will never sample the MAP more than 100Hz. So above 6000 RPM the MAP is not sampled during every cycle and the point in the cycle when it is sampled moves somewhat.
I am surprised they are not oversampling the MAP and averaging it.
Anyway.... needs more investigation.
in ms2_extra_main.c
outpc.mapdot = (781L * (outpc.map - last_map)) / tmp_mapsample_time;
tmp_mapsample_time is the number of ticks since the last ignition event. Ticks are 128 us. 781 is ~100 ms in ticks.
I have the map sample point set to 50%. So tmp_mapsample_time should be approximately (1000 [ms/hz])/(rpm/60 [sec/min]) * 50%. Which is 10ms after the last ignition event at 3000 RPM.
So mapdot at 3000 RPM is
100 ms * (map - last_map) / 10 ms
or 10 times the change in MAP value since the last ignition event. (I am ignoring the map lag value here, which weights the sampled map value and the previous map value to determine the current map value.)
Spikes to 200 in the mapdot trace at 3000 RPM indicate that the MAP is changing 20 units per sample, post lag filtering. Units are kpa*10. So a change of only 2 kPa between samples results in a mapdot of 200.... ? At 1500 RPM 200 mapdot is a change of only 1 kPa between samples. Hmm. Clearly the lag filtering has to be taken into account here.
Interestingly, the code will never sample the MAP more than 100Hz. So above 6000 RPM the MAP is not sampled during every cycle and the point in the cycle when it is sampled moves somewhat.
I am surprised they are not oversampling the MAP and averaging it.
Anyway.... needs more investigation.
#26
Some more comparison data on this page. Three runs with similar RPM and MAP values with various hose and snubber combinations. The 1/8" hose with the snubber has the least noise on the signal, but it is still higher than desirable, but only in the 3000-4000 RPM range with high MAP. I think the fact that the noisy region is isolated to only some running conditions, and the fact that changing only the pneumatic side has a large effect, rules out electrical noise as the primary issue.
I am going to experiment with different MAP sampling strategies when I have a chance.
I am going to experiment with different MAP sampling strategies when I have a chance.
Thread
Thread Starter
Forum
Replies
Last Post
Zaphod
MEGAsquirt
47
10-26-2018 11:00 PM
StratoBlue1109
Miata parts for sale/trade
21
09-30-2018 01:09 PM