Output 0-20mA from an Arduino

On the basis that you can generate the 0-5volt signal you simply need a load resistance of 250ohms to give you a 0-20ma output. You need to measure the input resistance of the speed indicator. On the basis that it is a 20ma input unit it WILL have a measurable resistance, let's call it Rx. So, in series with this you need to provide a further resistance Rl, the value of which is Rl = 250 - Rx

However, a further complication will be the RC filter you use to convert the PWM output signal to a 0-5 volts. This will have a series resistance Rf and your 20ma load will decrease the filter output since drawing current through Rf will reduce the 5volt PWM level to something less than 5 volts. This being so, the loop resistance will have to be reduced from the original 250ohms - which will further load your RC filter !!

Also the RC filter is a non-linear conversion of PWM duty cycle to smooth analogue output so you may need to build in some linearisation algorithm into your programme.

Are you sure the input is 0-20ma and not 4-20ma (which is an industry standard for analogue current devices).

So, what at first seemed like a fairly simple task will require a degree of bench work to produce an effective system.