-
Notifications
You must be signed in to change notification settings - Fork 0
Testing
Testing your newly soldered board:
- Connect the 3 current sensors.
- Jumper together J2/J3/J14, J7/J8/J15, and J11/J12/J4 (this disables the desaturation detection circuit, to allow the PWM to get through for testing)
- Connect an AVRISP MKii (or some other avr programmer) to J41.
- Attach +24v to J38, and the 24v ground to J39.
Attach PICKit3.
Optional Extra step if you have MPLab installed, and can compile the AC controller software
uncomment the line "#define DEBUG_MODE" in ACController.h.
Compile and program (in release mode) the dsPIC30F4011. Measure the voltage from 0v to each of "GATE" across the top of the board. You should get around 3v each time.
Now, comment out the line "define DEBUG_MODE", so it looks like this:
// #define DEBUG_MODE
rather than
#define DEBUG_MODE
And then recompile the code and program the chip. You are done!
End of optional extra step
Program the dsPIC30F4011 with the provided .hex file. It will be called something like ACController.hex. Put the negative probe of the volt meter on any of the test points across the top labeled 0v. They are all connected right now because of the jumper wires you added. With the positive lead of the volt meter, measure all the test points labeled "GATE". It should alternate -8v & 15v as you go left to right, measuring "GATE" of all 6 isolated supplies.
With nothing else connected (throttle, Battery pack, contactors) apply 12V from a battery or a power supply to the DC/DC converter. This supplies 24V to the controller board and the IGBT drivers. I have a 5A fuse on the 24V output of the DC/DC converter and a 10A self-resetting breaker on the 12V input to the DC/DC converter.
When you power up the 12V, you should hear a click from the pre-charge relay. About 5 seconds later the main contactor relay should click on and the pre-charge relay should click off.
This is your first milestone.
Connect the 3 current sensors.
Jumper together J2/J3/J14, J7/J8/J15, and J11/J12/J4 (this disables the desaturation detection circuit, to allow the PWM to get through for testing)
Connect an AVRISP MKii (or some other avr programmer) to J41.
Attach +24v to J38, and the 24v ground to J39.
Program the ATTiny25 with DC-DC-Converter.hex. You will need Atmel Studio, which is free, and something like an AVR isp mkii, or some other AVR programmer.
With power still attached, measure the voltage between each pair of back metal tabs of Q3/Q4, Q5/Q6, Q7/Q8, Q9/Q10, Q11/Q12, Q13/Q14.
You should get around 24v (+/-) for each measurement. If you don't, check your soldering! Disconnect 24v power. Remove the AVRISP MKii.
Attach PICKit3.
**Optional Extra step iTesting your newly soldered board:
Connect the 3 current sensors.
Jumper together J2/J3/J14, J7/J8/J15, and J11/J12/J4 (this disables the desaturation detection circuit, to allow the PWM to get through for testing)
Connect an AVRISP MKii (or some other avr programmer) to J41.
Attach +24v to J38, and the 24v ground to J39.
Program the ATTiny25 with DC-DC-Converter.hex. You will need Atmel Studio, which is free, and something like an AVR isp mkii, or some other AVR programmer.
With power still attached, measure the voltage between each pair of back metal tabs of Q3/Q4, Q5/Q6, Q7/Q8, Q9/Q10, Q11/Q12, Q13/Q14.
You should get around 24v (+/-) for each measurement. If you don't, check your soldering!
Disconnect 24v power. Remove the AVRISP MKii.
Attach PICKit3.
If you have MPLab installed, and can compile the AC controller software
- uncomment the line "#define DEBUG_MODE" in ACController.h.
- Compile and program (in release mode) the dsPIC30F4011. Measure the voltage from 0v to each of "GATE" across the top of the board. You should get around 3v each time.
- Now, comment out the line
define DEBUG_MODE, so it looks like this:
// #define DEBUG_MODE
rather than
#define DEBUG_MODE
And then recompile the code and program the chip. You are done! End of optional extra step
Program the dsPIC30F4011 with the provided .hex file. It will be called something like ACController.hex. Put the negative probe of the volt meter on any of the test points across the top labeled 0v. They are all connected right now because of the jumper wires you added.
With the positive lead of the volt meter, measure all the test points labeled "GATE". It should alternate -8v & 15v as you go left to right, measuring "GATE" of all 6 isolated supplies.
Now we connect your battery pack. It needs to be at least 24V DC, even for testing. It can be up to 400V DC. The IGBTs are rated for 600V, but there are fast voltage changes that use up that extra voltage. It is best to keep the battery voltage at 400V or below.
We don't need to connect the motor yet.
You should be using a pre-charge contactor with a resistor that charges up the big capacitor within a couple of seconds and a main contactor that does not use any resistor at all. The basics are shown below. But you can add extra fusing, contactors, etc as you wish.
Set your throttle to minimum and power up the controller. You are familiar with what you will see and hear by now.
Connect your voltmeter between U and V terminals, with the setting for AC voltage and as high as your battery pack is - say 200VAC.
Press the throttle and you should see the voltage rise from 0V to some other number. It does not continue to rise since you have no encoder signal. It will only try to run the motor for a short time without an encoder signal. Some versions of the firmware will continue to run at a very slow speed with no encoder signal to show that the controller is working, but the encoder has failed.
This is your fourth milestone. The controller is putting out power signals.
If you have trouble getting any voltage output, check the appendix for troubleshooting.