Friday, April 19, 2013

Bought some items.. no way back !

Even though I get a very good sponsoring by Brusa, I was facing some huge investments and to be honest, I'd gotten a bit afraid of the whole thing. Especially as I have to use CAN messages to control the motor inverter and somehow pick-up a throttle signal for that. All that was advised against by Jack Rickard. He had gotten into a lot of trouble to make his Cadillac Escalade's ECU believe the ICE motor is running more or less normally. I think I'm facing even more challenges as:
  1. I can't put a 0-5V signal into the inverter as throttle signal. I have to query the ECU for the nominal position, convert the numbers and send a CAN message to the inverter.
  2. My motor won't be idling on a stop light because I have a manual transmission. So I fear the ECU might not be happy with that. It might even open the throttle to keep the motor idling at 700rpm.
  3. The original ICE has a low-pressure turbo. This means potentially more inputs to fake.
These are all points one should avoid in a first conversion, I know... oh well. It's gonna be just a bit a longer road of solving small problems.

But back to my shopping day. Today I bought some things:
  1. Payed the Brusa bill for the motor, inverter, charger and DC-DC converter. Sure some fine pieces of engineering but still my biggest financial commitment besides the batteries. So this is as real as it gets. No stepping back anymore - only one way to go: forward!
  2. Bought a used car-lift on ricardo - although I'm not entirely sure yet that it can be safely mounted on a wooden floor in my wood shed. It's a two column, 4 finger lift. So the underside of the car will be easily accessible.
  3. Bought an Arduino Due board, an ehternet shield, a 2 row LCD display and a prototyping shield.
  4. I also ordered the stickers that go to the side of the car as part of the sponsoring agreement.
Why an Arduino Due and not a Macchina which would be better suited for cars? Well, the Due is significantly faster. But the main reason is that it's possible to build a shield with two CAN buses. That's a good thing as I prefer to keep the Volvo's high speed bus and the bus with the Brusa components separated - even tough both operate at 500kbps. I will use the Arduino to query the ECU for the throttle position and control the electric motor.
Another advantage of the Due is that it offers two DAC outputs (analog audio). So it's possible to playback .wav files. My (somewhat crazy) idea is to simulate the output of the crankshaft wheel sensor this way. The sensor generates 58 pulses and two missing pulses per revolution. If it's not possible to simulate this behavior with a PWM (pulse width modulated) output, it might be possible to playback a square-wave sound at different speeds to simulate the crankshaft wheel for the ECU. This way I don't need to transfer the wheel to the electric motor and I could solve the idling problem. If the rpm of the electric motor drops below 700rpm, the Arduino could just keep faking the 700rpm.
If the engine speed of the ICE is between 600rpm and 9000rpm, the following would apply:
600rpm means 10 revolutions per second. With 60 dents (incl. 2 missing) this would mean a square wave at 600Hz (and 9kHz at 9000rpm). It would have to be switched off precisely from 10 times per second (@600rpm) to about 150 times per second (@9000rpm) and back on after 3ms (@600rpm) to only 0.2ms (@9000rpm). I'm not sure if the 0.2ms are within reach of the Arduino due PWM output. So as a fallback, I might use the approach via the audio output.

So although not everything is proven to work, I'm quite confident to have a valid approach. Sure, there will be many pitfalls. But with some luck and some help from a very supportive community, I might get this heavy luxury car running some day this or next year.

Thanks for reading and stay tuned! There's more to come: I'm planning a video tutorial on CAN sniffing to find the throttle signal.

No comments:

Post a Comment