It's been a while since my last post. Over the past year the DIY BMS has held up well. I've made a few additions.
1. There's an inherent cell voltage measurement error. The cell has an internal resistance and there's resistance between the cell and where the cell voltage sense wire is connected (the busbars). Depending on cell current, there's a I*R voltage error. If the cells are charging or discharging, the measured cell voltage will be either too high or too low. The combined resistance at the connecting busbar is about 1m ohm. Along with the measured current the I * R product is removed from the measured voltage.
2. Added a fan to cool the compartment where the battery, alternator dc/dc and BMS are located. The dc/dc and the BMS32 (with wifi activated) can produce some heat. It can get warm in the compartment. The fan extracts the warm air. Currently the fan is turned on/off from my iPad (via wifi). The BMS will eventually control the fan once I understand the interaction between the heating sources and the fan. The data logger stores BMS board and compartment temperatures as well as fan activity.
3. My motor home (the location of the BMS) has an absorption refrigerator. The normal heat source for the fridge is propane gas. The secondary heat source is a 120Vac heating element. While driving, I want to use the alternator (by way of the 40A dc/dc) to power the fridge with ac. I added a 500W inverter that only connects to the fridge. The inverter is turned on and off from my iPad. When on, the fridge switches from propane to ac automatically.
4. One problem with an absorption fridge is that they must be relatively level to operate. If not level, the fluid/gas in the condenser tube may not flow. Heat regulation in the boiler is lost and the heating source will remain on till the fridge gets destroyed, possibly through fire. The fix is to monitor boiler temperature. If boiler temperature starts running away from normal limits (>450 deg.C) then it's time to turn the fridge off. I've added a PT100 temperature sensor to the boiler. The BMS adc currently measures the temp sensor's voltage. There's one slight problem. The cable run between the BMS and fridge is about 25 feet. That's a long run, especially for a temperature voltage signal! In addition I also need a cable to turn the fridge off when a thermal runaway is encountered. There's too many long cables running back and forth.
5. I'm currently developing a can bus. The bus will run between the BMS and the fridge. A ESP32 processor will be added next to the fridge. A cool thing about the ESP32 is that it already contains a can bus controller. All that's needed is a can bus transceiver (SN65HVD230) at both ends to make it work. The BMS will request fridge boiler temperature. The ESP32 at the other end will receive the request via the can bus and send temperature back to the BMS. The BMS will evaluate the temperature and send a command back to the fridge to shut it down if necessary. I've got the can bus operational in my "lab". Communications (commands and data) are sent back and forth on the bus. I'm now waiting for the 10 meters of twisted can bus wire to arrive to install in the motor home. If inclined, I could also monitor temperature inside the refrigerator or measure solar current (the scc is located next to the fridge). The can bus and additional ESP32 next to the fridge makes it simple to add additional functions.
can bus transceiver SN65HVD230.