I'm assuming from this that you haven't been able to get the PWM control to work as you wanted for partial locking? Are the Arduinos able to do the PWM for the fan eventually? I'm really liking that you are able to turn the fan on with the AC. Also I like that the fan is able to be controlled based off of actual temp sensors and not just the spring in the front like the original idi fan clutches.
One more question, is the Arduino able to control the clutch directly from the board or does the fan clutch pull too much juice and need to be run through a relay?
The Arduino Nano( small version of the uno) has several pwm outputs, I am currently using pwm to control the fan, at 212f it outputs 50%, 220f it outputs 75% and 230f goes 100%. When the AC pressure gets over 260psi on the high side it turns the fan on 100% and the transmission temperature is set to 220f and 100% fan but being a manual trans I haven’t seen it get over 140-150f. I haven’t got the engine hot enough to see if the fan truly ramps up or not with those duty cycle settings, I also don’t know if the fan is linear like that or if full off to full on mite be 20-40% and anything less or more just doesn’t do anything.
The Arduino can not directly power the fan clutch, from some quick testing I did a while back, the fan drew around 2Amps, the Arduino can only do 25mA(0.025Amps) max per output. I used a mosfet transistor to buffer the Arduino and supply the higher current for the fan clutch. You cannot pwm a relay, if you try you will get one of several out comes, if the pwm is too low the relay won’t do anything, somewhere in the middle range and the relay will be switching on and off very fast wearing it out in very short order, and a too high pwm and the relay will just stay on.
Relays are good for simple on/off circuit control like having the high idle solenoid turn on below some temp and turn off over some temp.
If one looks around there is a ton of oem high quality sensors out there that can be had for a low cost or even grabbed from the junkyard and added to the Arduino.
A few sensors I’m using so far are:
Temperature sensor, liquid and air styles
Pressure sensors, oil, fuel, AC, boost...
EGT sensors, the newer PS trucks (6.4L, 6.7L) have egt probes that go up to 1800f and are the thermistor type so no special circuits, wires or plugs needed like with thermocouples.
One could get a newer (I think 6L and up) alternator and control it’s charging voltage also.
These are just some of the things you can do with a small microcontroller like the Arduino or PIC micros.