Time for an Upgrade
The Kelly KLS72601 controller burned up while pulling out of my driveway, something done successfully hundreds of times previously. It was about several years old with a few thousand miles on it.
This was the trigger to move to a new controller, which has cascaded a series of changes.
New Controller: Sevcon Gen 4 Size 4 80v unit Part #634A83207 (420A RMS motor current (10s), 350A (2 min), 140A (continuous))
The installation of the new controller required a rewire of most of the motor controls since Sevcon is not an isolated controller and handles pre-charge/startup and sensors differently. This meant adding another contactor to control the battery voltage from the normal key switch. Also, the reverse and forward switches are independent, so a relay was needed to support the SPST reverse switch on the dash.
Driving in 3rd gear is reasonable and very similar to the performance of the Kelly controller, though quieter, the Canbus is reliable and does not drop out, and the regenerative braking is super smooth. However, 2nd gear performs much better with quicker acceleration. With field-weakening, the motor easily his 4,000 RPM (or about 40 MPH) under load, something the Kelly controller could not do. The Kelly would top out at around 35 MPH.
With the help of several versions of wiring diagrams and a lot of trial and error, this is the current setup.
1) UVW wiring (5V UVW encoder and phase connections): See Schematic
A few Sevcon settings to tweak the operations.
2) Disable sequence (startup) checking of the forward switch, since the default mode is forward for the reverse-relay. The controller will set an error if the powered-on with the reverse switch on and it will not energize the motor, until the reverse switch is put into forward.
3) Throttle and Brake sensor settings - 5V power & response curves. Braking torque turned up to 70% and will generate in excess of 5KW when braking. This is considerably higher than the Kelly and smooth already down to a full stop.
DCF Configuration
It took several days to land on reasonable Sevcon Gen 4 settings using the DVT software from Thunderstruck The last one that was limiting iQ Max was the temperature cutback. Here is what I learned:
0) Sevcon firmware version: 0705_gen4_IMPM_7050013.dld - Sevcon support sent this to me.
1) Gains
2) Motor Parameters
Contactor:
3) Cutbacks and Limits - still tuning voltage, torque, and temp curves
4) Footbrake settings based on the output from the inline brake pressure sensor. Getting 3-4 KW of regen at low speeds with light brake pedal pressure.
Digital Dashboard and Canbus Interface
The Teensy 4.1 is speaking with the Sevcon controller very well. The Sevcon sends 5 TPDO packets out every 20 milliseconds which is more than fast enough. With the screen updates, the Teensy is unable to keep up but the FIFO canbus buffer just rolls over so there is no negative impact. Did add 4 reads per update loop to make sure a reasonable number of packets are processed every cycle. The RPM display is updating more than quick enough. A new Canbus screen is also available with a touch of the touch-screen.
What I've learned
1) PI Controller - Sevcon is inconsistent with naming conventions.
Both Current (Q-Axis. torque) and Speed proportional gains are used in Torque/Speed mode. Setting speed & current (Q & D) Ki integral gains to zero causes strange behavior. D-Axis (Field Weakening, FW) Kp and Ki are important since controller driving id to zero will throw-off iq currents. This best explanation of the iQ & iD relationships I can draw:
Target iq determined by target torque (throttle and limits (battery, temperature)), motor inductance, iq-max, current limits (motor) and Target id. The gains are used to adjust the voltages being applied in an effort to get actual iQ and iD to approach the Target iQ and Target iD.
Small changes in the Kp gains can have large changes (runaway and oscillations). Ki values seem to force convergence over time, especially the speed Ki integral gain.
2) Key equations
Max iQ - dependent on cutbacks (voltage & temperature) - when all is correct, this should match 420a (RMS), the controller's limit. Cutback values shown on Motor Status page.
Motor Inductance LS - This changes the maximum flux current, which appears to be a limiter for iD, which may have its biggest impact on field weakening which I have not really tested. The controller is reporting a measured LS of 54 microhenries which is less than the datasheet value of 100-200 µH (.1 or .2 mH). More testing is needed.
Ke also impact impact Max Flux Current but changes cause problems with the PI control loop, so I could not experiment too much with changes to this value.