Cell voltages fork (SoC)

Dependencies:   CUER_CAN CUER_DS1820 LTC2943 LTC6804 mbed PowerControl

Changes

RevisionDateWhoCommit message
66:c884fba9eaea 2017-09-16 DasSidG Added more flags to the BMU status; Removed some unused functions, re-ordered some functions slightly; Tidied up some bits that were generating warnings default tip
65:95f21910cf9d 2017-09-12 DasSidG Added 'over charge voltage' status flag to BMU status
64:2878a6b3eea8 2017-09-04 DasSidG Changed 'abs' to 'fabs' when applied to the current to allow the offline compiling to work properly (was complaining that 'abs' was defined ambiguously)
63:2b425006e95d 2017-08-28 DasSidG Fixed minor bug in the check_measurements function in that the wrong flag was being set for an overcurrent condition (but was still safe as and it would still cutoff the contactors).
62:c7bc95aa818a 2017-08-28 DasSidG ELECTRICAL SIGNOFF VERSION.; ; Fixed bug in finding max/min cell voltage algorithm ; Changed some of the cutoff limits
61:eb771d27e968 2017-08-26 DasSidG changed weirdness with the CUER CAN library including
60:ba1f45b46f97 2017-08-26 DasSidG Voltage measurement changed in the LTC6804 library
59:e8ac52b71d8d 2017-08-25 DasSidG publish
58:40d318825b0d 2017-08-23 DasSidG Removed LTC2943.cpp and LTC2943.h as no longer necessary.; ; Added more error conditions to the BMU status; ; Fixed IVT-A signed/unsigned Ah measurement error; now works properly.; ; Probably some other stuff.
57:a84af3673c9b 2017-08-19 DasSidG Removed annoying 'PEC error' printout
56:decc4973d272 2017-08-19 DasSidG I'm confused as to why this has changes, publishing in case they are important
55:41c18d898d97 2017-08-19 DasSidG Merged changes between max's temperature code fixes and my LTC2943->IVT-A conversion changes
54:f18d3af300ba 2017-08-19 DasSidG Removed all LTC2943 functionality as no longer working. Replaced it with the equivalent functionality from the IVT-A. Preliminary tests seem to suggests that it all works fine, including robustmess to weird power conditions
53:4277cdcff69b 2017-08-19 maxv008 Fixed Temp Reading;
52:63e84c6a9cfd 2017-08-18 DasSidG Changed it so that it gets temperature from the temperature measurement board rather than doing the measurements itself.; Expanded the temperature thresholding stuff.
51:95a55958904d 2017-07-24 DasSidG Add can_send function which is a wrapper for can.write. can_send uses the CAN transmit callback to wait until the CAN packet has finished sending before moving on. This allows removal of the random 'wait(0.1)' previously required for CAN write.tested
50:89f54b7a4c1b 2017-07-24 DasSidG Finally figured out how to merge the changes
49:419985e0b2b1 2017-07-24 DasSidG Can't remember exactly what was changed in this, probably just the prescaler thing for the LTC2943
48:5c3f42c44036 2017-07-24 maxv008 Added code in interrupt to reset EEPROM whenever the correct ID CAN Message is recieved. Contents of msg determine initital values. Currently it is inside the interrupt which should be fine as it should only happen very rarely.
47:62ba8c071a0f 2017-07-23 DasSidG Removed unnecessary include of SPI_parser from main.cpp
46:ac7065d52d6e 2017-07-23 DasSidG Deleted some unnecessary data structures created during testing.; Fixed an error with the status message (not being initialised correctly).; Uncommented cell voltage readings, and verified that IVT-A and voltages don't interfere with each other.
45:c288d7cbdb4a 2017-07-22 maxv008 Added current measurement via IVTA
44:bab17229a92a 2017-07-22 DasSidG Updated PowerControl library version used in BMU
43:186505895fd6 2017-07-22 DasSidG Switched mbed library revision to 145 for consistency with the rest of the car
42:127824902f3a 2017-07-22 DasSidG Added code to turn off ethernet peripheral (saving power)
41:9183c5616281 2017-07-22 DasSidG Added some power reduction by disabling the ethernet peripheral (which is not used)
40:0753cbb8bc6a 2017-07-22 DasSidG Reverted sleep changes as it doesn't actually seem to reduce the power consumption at all - needs further investigation.
39:34be1b8f46be 2017-07-22 DasSidG Replaced 'wait' with a 'sleep' function at the end of the loop. Not sure how much power this saves; needs more investigation.
38:b1f5bfe38d70 2017-07-22 DasSidG Made it so that temperature measurements don't happen every loop
37:fae62a2773a1 2017-07-22 DasSidG Edited how the battery status is set so that it ignores the last 3 cells of the top CMU.; ; Removed a couple of 'TODO' comments which had been done
36:1b23c0692f54 2017-07-19 DasSidG Moved printfs behind an if(DEBUG)
35:be07fef5db72 2017-07-16 maxv008 Completely working EEPROM storage and recovery of SOC values. Additionally, addresses are now stored with PEC in addition to the SOC values themselves, in case an address gets corrupted.
34:65fd6a72106f 2017-07-16 DasSidG reset_EEPROM now works, just needs some tidying up
33:44b241c7b2c1 2017-07-16 maxv008 Added some EEPROM corrections
32:5b82679b2e6f 2017-07-13 maxv008 Started writing some more EEPROM functions to reset it, not currently working
31:888b2602aab2 2017-07-13 maxv008 All used CAN Packets from BMS in this code tested and working as expected (see comments in CANParserBMU.h
30:d90895e96226 2017-07-10 lcockerton62 Software now writes and reads from 2 memory locations
29:44924d2b1293 2017-07-09 ItsJustZi Working SoC and working voltage measurements
28:f1f882bd1653 2017-07-09 maxv008 SOC working, voltages mysteriously break everything, tune in next week for more.
27:cdc7e4f2f1a9 2017-07-09 maxv008 ???????????????????????
26:514438597f74 2017-07-09 maxv008 third commit where nothing changed fuck mbed
25:1fe8a42f8a6d 2017-07-09 maxv008 Part way through SOC testing
24:66a2dca82e4b 2017-07-09 maxv008 Something changed and I have no idea what, I hate mbed
23:a1af4439c1fc 2017-07-09 maxv008 Added proper handling for CAN of all BMU data types except batteryVI, sending and recieving;
22:2df45c818786 2017-07-06 lcockerton62 Added a pec for the SOC values that are stored in the eeprom
21:d461d58e70fc 2017-07-04 DasSidG Modified code so that temperature 12V is only turned on when necessary (verified that temperature reading still works fine); Removed unnecessary 0.1s delays in CAN sending code
20:a1a1bfc938da 2017-07-02 maxv008 Completely working CAN read and write (currently in write mode for bms) with live voltage/temp data. Form that is usable in final versions
19:683a7daf93ec 2017-07-02 DasSidG Now has working temperature readings
18:521ffdd724f3 2017-07-02 maxv008 Set up voltage and temperature sending and reading with live data and a near final setup for it;
17:94dd9a0d3870 2017-07-02 maxv008 added decoder for voltage messages
16:b2ef68c9a4fd 2017-07-02 DasSidG Cleaned up Dummy data
15:e901aff1f5b3 2017-07-02 DasSidG Added temperature probe initialization
14:e0e88a009f4c 2017-07-02 maxv008 Added a proper unique identification to the temperature CAN. Implemented an interrupt based CAN read setup, currently configured with Dummy data and test code that will be cleaned up in a future commit
13:7b42af989cd1 2017-06-28 maxv008 Added function to create CAN Messages based on temperature readings from individual probes, and a function to parse msg back into readings. Implemented this into the transmit data function.
12:fa9b1a459e47 2017-06-23 DasSidG now works with 33 cells;
11:cf2db05cfa56 2017-06-21 DasSidG Cell voltages transmission tested and working for a single CMU.
10:1079f8e52d65 2017-06-19 maxv008 Includes Can test functions and working (at some point anyways) voltage telemetry sending over CAN
9:82ba050a7e13 2017-02-11 msharma97 nah mate
8:51f0a0f8c975 2017-02-11 maxv008 COMMIT MESSAGE;
7:d00f4433cea9 2017-02-11 maxv008 ffdf