US20170300439A1 - Serial communication safety controller - Google Patents
Serial communication safety controller Download PDFInfo
- Publication number
- US20170300439A1 US20170300439A1 US15/430,396 US201715430396A US2017300439A1 US 20170300439 A1 US20170300439 A1 US 20170300439A1 US 201715430396 A US201715430396 A US 201715430396A US 2017300439 A1 US2017300439 A1 US 2017300439A1
- Authority
- US
- United States
- Prior art keywords
- main controller
- data
- subsidiary unit
- controller
- safety
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/362—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
- G06F13/364—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using independent requests or grants, e.g. using separated request and grant lines
-
- B60L11/1851—
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60L—PROPULSION OF ELECTRICALLY-PROPELLED VEHICLES; SUPPLYING ELECTRIC POWER FOR AUXILIARY EQUIPMENT OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRODYNAMIC BRAKE SYSTEMS FOR VEHICLES IN GENERAL; MAGNETIC SUSPENSION OR LEVITATION FOR VEHICLES; MONITORING OPERATING VARIABLES OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRIC SAFETY DEVICES FOR ELECTRICALLY-PROPELLED VEHICLES
- B60L3/00—Electric devices on electrically-propelled vehicles for safety purposes; Monitoring operating variables, e.g. speed, deceleration or energy consumption
- B60L3/0092—Electric devices on electrically-propelled vehicles for safety purposes; Monitoring operating variables, e.g. speed, deceleration or energy consumption with use of redundant elements for safety purposes
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60L—PROPULSION OF ELECTRICALLY-PROPELLED VEHICLES; SUPPLYING ELECTRIC POWER FOR AUXILIARY EQUIPMENT OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRODYNAMIC BRAKE SYSTEMS FOR VEHICLES IN GENERAL; MAGNETIC SUSPENSION OR LEVITATION FOR VEHICLES; MONITORING OPERATING VARIABLES OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRIC SAFETY DEVICES FOR ELECTRICALLY-PROPELLED VEHICLES
- B60L3/00—Electric devices on electrically-propelled vehicles for safety purposes; Monitoring operating variables, e.g. speed, deceleration or energy consumption
- B60L3/12—Recording operating variables ; Monitoring of operating variables
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60L—PROPULSION OF ELECTRICALLY-PROPELLED VEHICLES; SUPPLYING ELECTRIC POWER FOR AUXILIARY EQUIPMENT OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRODYNAMIC BRAKE SYSTEMS FOR VEHICLES IN GENERAL; MAGNETIC SUSPENSION OR LEVITATION FOR VEHICLES; MONITORING OPERATING VARIABLES OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRIC SAFETY DEVICES FOR ELECTRICALLY-PROPELLED VEHICLES
- B60L58/00—Methods or circuit arrangements for monitoring or controlling batteries or fuel cells, specially adapted for electric vehicles
- B60L58/10—Methods or circuit arrangements for monitoring or controlling batteries or fuel cells, specially adapted for electric vehicles for monitoring or controlling batteries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
- G06F13/404—Coupling between buses using bus bridges with address mapping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/60—Other road transportation technologies with climate change mitigation effect
- Y02T10/70—Energy storage systems for electromobility, e.g. batteries
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T90/00—Enabling technologies or technologies with a potential or indirect contribution to GHG emissions mitigation
- Y02T90/10—Technologies relating to charging of electric vehicles
- Y02T90/16—Information or communication technologies improving the operation of electric vehicles
Definitions
- the described technology generally relates to electronics, more specifically, to serial communication in electronics.
- Serial communication or other similar point-to-point communication can be useful in controlling or managing various electronics.
- serially communicated electronics manage certain high risk systems or operations, such as high voltage battery packs for electronic vehicles, reducing error can be critical.
- managing a power source in an automobile, such as an electric vehicle can be challenging as balancing the appropriate level of power, efficiency, cost, reliability, and redundancy can be difficult.
- a communication apparatus comprises a main controller and a subsidiary unit connected to the main controller through a data bus.
- the main controller is configured to communicate with the subsidiary unit through the data bus.
- a safety controller is connected to the data bus and is configured to monitor one or more communications between the main controller and the subsidiary unit through the data bus, evaluate one or more communications between the main controller and the subsidiary unit through the data bus for evidence of a fault condition, and output a safety signal that is based at least in part on the results of the evaluating to an output connection separate from the data bus.
- an electric vehicle comprises a motor coupled to one or more wheels of the electric vehicle, an inverter coupled to the motor, at least a first power bus coupled to the inverter, at least a first battery string comprising a plurality of battery modules, wherein the first battery string has an output that is coupled to the first power bus through a switch. Also provided is at least a first battery string controller coupled to the first battery string, a plurality of battery module monitors coupled to respective ones of the plurality of battery modules and in communication with the first battery string controller, and at least a first safety controller associated with the battery string controller configured to evaluate communications between the first battery string controller and the first battery module monitor.
- a method of detecting fault conditions in a circuit comprises receiving data and/or commands communicated from a main controller to at least a first subsidiary unit through a data bus, receiving data communicated from the first subsidiary unit to the main controller through the data bus, comparing the received data and/or commands from the main controller to the first subsidiary unit with expected data and/or commands from the main controller to the subsidiary unit, comparing the received data from the first subsidiary unit to the main controller with expected data from the first subsidiary unit to the main controller, and outputting a safety signal through a connection separate from the data bus.
- FIG. 1 is a block diagram of an example electric vehicle drive system according to one embodiment.
- FIG. 2 is a block diagram of an example voltage source and battery management system according to one embodiment.
- FIG. 3 is another block diagram of an example voltage source and battery management system according to one embodiment.
- FIG. 4 is a block diagram of an example battery management communication verification system according to one embodiment.
- FIG. 5 is a flowchart of a communication verification process according to one embodiment.
- a multi-part system such as a battery management system can include distributed or subsidiary components for determining status of various parts of the system with the components in serial or point-to-point communication with a collective main controller.
- a safety controller can be implemented to be passively coupled to the serial or point-to-point communication between the main controller and the subsidiary units. The safety controller can monitor and evaluate communications between the main controller and the subsidiary unit(s) and send a safety signal or verification indicator over another line of communication separate from the communication bus between the main controller and the subsidiary units.
- FIG. 1 depicts a block diagram of an example electric vehicle drive system 100 including a battery management system 160 as described herein.
- the electric vehicle drive system 100 includes the battery or voltage source 110 , an inverter 120 coupled to the battery 110 , a current controller 130 , a motor 140 , and load 150 , and the battery management system 160 .
- the battery 110 can be a single phase direct current (DC) source.
- the battery 110 can be a rechargeable electric vehicle battery or traction battery used to power the propulsion of an electric vehicle including the drive system 100 .
- the battery 110 is illustrated as a single element in FIG. 1 , the battery 110 depicted in FIG. 1 is only representational, and further details of the battery 110 are discussed below in connection with FIG. 2 .
- the inverter 120 includes power inputs which are connected to conductors of the battery 110 to receive, for example, DC power, single-phase electrical current, or multi-phase electrical current. Additionally, the inverter 120 includes an input which is coupled to an output of the current controller 130 , described further below. The inverter 120 also includes three outputs representing three phases with currents that can be separated by 120 electrical degrees, with each phase provided on a conductor coupled to the motor 140 . It should be noted that in other embodiments inverter 120 may produce greater or fewer than three phases.
- the motor 140 is fed from voltage source inverter 120 controlled by the current controller 130 .
- the inputs of the motor 140 are coupled to respective windings distributed about a stator.
- the motor 140 can be coupled to a mechanical output, for example a mechanical coupling between the motor 140 and mechanical load 150 .
- Mechanical load 150 may represent one or more wheels of the electric vehicle.
- Controller 130 can be used to generate gate signals for the inverter 120 . Accordingly, control of vehicle speed is performed by regulating the voltage or the flow of current from the inverter 120 through the stator of the motor 140 . There are many control schemes that can be used in the electric vehicle drive system 100 including current control, voltage control, and direct torque control. Selection of the characteristics of inverter 120 and selection of the control technique of the controller 130 can determine efficacy of the drive system 100 .
- the battery management system 160 can receive data from the battery 110 and generate control signals to manage the battery 110 . Further details of the battery management system 160 are discussed in connection with FIGS. 2-3 below.
- the electric vehicle drive system 100 can include one or more position sensors for determining position of the rotor of the motor 140 and providing this information to the controller 130 .
- the motor 140 can include a signal output that can transmit a position of a rotor assembly of the motor 140 with respect to the stator assembly motor 140 .
- the position sensor can be, for example, a Hall-effect sensor, a magnetoresistive sensor, potentiometer, linear variable differential transformer, optical encoder, or position resolver.
- the saliency exhibited by the motor 140 can also allow for sensorless control applications.
- the electric vehicle drive system 100 can include one or more current sensors for determining phase currents of the stator windings and providing this information to the controller 130 .
- the current sensor can be, for example, a Hall-effect current sensor, a sense resistor connected to an amplifier, or a current clamp.
- the motor 140 is described as an electrical machine that can receive electrical power to produce mechanical power, it can also be used such that it receives mechanical power and thereby converts that to electrical power.
- the inverter 120 can be utilized to excite the winding using a proper control and thereafter extract electrical power from the motor 140 while the motor 140 is receiving mechanical power.
- FIG. 2 is a block diagram of an example voltage source according to one embodiment.
- the voltage source 110 can include a plurality of battery strings 206 a , 206 b , . . . 206 n , . . . , individually or collectively referred to herein as the battery string(s) 206 , and a plurality of current sensors 208 a , 208 b , . . . , 208 n , . . . , individually or collectively referred to herein as the current sensor(s) 208 .
- the battery strings 206 can be individually connected to or disconnected from a positive or high power bus 202 and a negative or low power bus 204 through a plurality of switches 210 a , 210 b , . . . , 210 n , . . . , and 212 a , 212 b , . . . , 212 n , . . . , individually or collectively called the switches 210 and 212 .
- the switches 210 and 212 can be controlled by control signals from a battery management system 160 .
- the battery management system 160 can receive, among others, voltages, V_a, V_b, . . . , V_n, . . .
- the battery management system 160 can also receive currents, I_a, I_b, . . . , I_n, . . . , which are currents from the respective battery strings 206 a , 206 b , . . . , 206 n , . . . , measured by the respective current sensors 208 a , 208 b , . . . , 208 n , . . . .
- the battery management system 160 also can receive temperature measurements, temp_a, temp_b, . . . , temp_n, . . . , which are one or more of temperature measurements from the respective battery strings 206 a , 206 b , . . . 206 n , . . . . , measured by one or more temperature sensors (not shown) accompanying the battery strings. Based at least in part on the voltages, V_a, V_b, . . . , V_n, . . . , currents, I_a, I_b, . . . , I_n, . . . , and/or temperatures, temp_a, temp_b, . . .
- the battery management system 160 can generate control signals 214 a , 214 b , . . . , 214 n , . . . , individually or collectively referred to herein as the control signal(s) 214 , for controlling the respective switches 210 and 212 .
- the battery management system 160 may receive respective voltage, current, and/or temperature data of subsets or parts, such as modules and/or cells, of each of the battery strings 206 . Further details of the battery management system 160 are discussed below in connection with FIG. 3 .
- the battery strings 206 can include a plurality of modules, each of which in turn can include a plurality of cells. Within each battery string 206 , the constituent modules and cells can be connected in series as symbolically depicted in FIG. 2 .
- the voltage source 110 can include six battery strings 206 that can be connected to or disconnected from the power buses 202 , 204 .
- the battery strings 206 can be implemented with various different types of rechargeable batteries made of various materials, such as lead acid, nickel cadmium, lithium ion, or other suitable materials.
- each of the battery strings can output about 375 V to 400 V if charged about 80% or more.
- the current sensors 208 can be connected in series with the respective battery strings 206 between the high and low power buses 202 , 204 . As shown in FIG. 2 the current sensor 208 can be connected to the positive side of the respective battery strings 206 to measure the current discharged from the battery strings 206 . In other embodiments, the current sensors 208 can be connected to the battery strings 206 otherwise to measure the current flow due to discharging of the battery strings 206 .
- the switches 210 and 212 can be contactors configured to connect the battery strings 206 to the power buses 202 , 204 or disconnect the battery strings 206 from the power buses 202 , 204 in response to the respective control signals 214 .
- the switches 210 can be implemented with any suitable contactors capable of handling the level of current and voltage as needed in connection with, for example, the battery strings 206 , the power buses 202 , 204 , and the load 150 ( FIG. 1 ) within the electric vehicle drive system 100 ( FIG. 1 ).
- the switches 210 and 212 can be implemented with mechanical contactors with solenoid inside.
- the switches 210 can be powered by one or more drivers in the battery management system 160 .
- the switches 210 e.g., 210 n
- the switches 212 e.g., 212 n
- the switches 210 can be controlled by respective positive bus connect control signals while the switches 212 (e.g., 212 n ) can be controlled by respective negative bus connect control signals.
- the battery management system 160 can include a plurality of passive and/or active circuit elements, signal processing components, such as analog-to-digital converters (ADCs), amplifiers, buffers, drivers, regulators, or other suitable components.
- the battery management system 160 can also include one or more processors to process incoming data to generate outputs, such as the control signals 214 .
- the battery management system 160 can also include one or more components for communicating and sending and receiving data within the battery management system 160 and/or with other components or circuitries in the electric vehicle.
- the various components and circuits within the system 100 can be in communication with one another using protocols or interfaces such as a controller area network (CAN) bus, serial peripheral interface (SPI), or other suitable protocols or interfaces.
- protocols or interfaces such as a controller area network (CAN) bus, serial peripheral interface (SPI), or other suitable protocols or interfaces.
- the processing of incoming data can be at least in part performed by other components not in the battery management system 160 within the electric vehicle as the battery management system 160 communicates with other components.
- FIG. 3 is another block diagram of example voltage source and battery management system according to one embodiment.
- one exemplary battery string 206 n of the plurality of battery strings 206 of FIG. 2 is illustrated, and accordingly, the corresponding current sensor 208 n , switches 210 n , 212 n , and connect control signal 214 n are illustrated.
- a fuse 310 n corresponding to the battery string 206 n
- the battery strings 206 a , 206 b , . . . , 206 n , . . . in FIG. 2 may each also have corresponding fuse 310 a , 310 b , . . . , 310 n , . .
- the battery string 206 n includes a plurality of battery modules 308 n _ 1 , 308 n _ 2 , . . . , 308 n _k (individually or collectively referred to herein as the battery modules 308 n for the battery string 206 n ), each sending battery module telemetry data to respective module monitors 306 n _ 1 , 306 n _ 2 , . . . , 306 n _k (individually or collectively referred to herein as the module monitors 306 n for the battery string 206 n ) of the battery management system 160 .
- the battery management system 160 includes a string control unit 304 n for the battery string 206 n in communication with the battery modules 308 n _ 1 , 308 n _ 2 , . . . , 308 n _ k for the battery string 206 n .
- the string control unit 304 n includes a safety controller 303 n , a main controller 305 n , and a switch control circuit 309 n .
- the safety controller 303 n can be configured to monitor the communication between the module monitors 306 n and the main controller 305 n for the battery string 206 n . Further details of the communication among the module monitors 306 n , safety controller 303 n , and the main controller 305 n are discussed in connection with FIG. 4 below.
- the battery management system 160 also may include respective string control units 304 a , 304 b , . . . , 304 n , . . . for the plurality of battery strings 206 a , 206 b , . . . , 206 n , . . . illustrated in FIG. 2 .
- the battery management system 160 also includes a battery pack controller 312 , which controls a switch driver 314 and is in communication with the plurality of string control units 304 .
- the battery management system 160 can also include an analog-to-digital converter (ADC) internal or external to one or more controllers, such as the main controller 305 n and the battery back controller 312 , for processing analog data.
- ADC analog-to-digital converter
- the nth battery string 206 n has k number of battery modules 308 n and k number of module monitors 306 n _ 1 , 306 n _ 2 , . . . , 306 n _ k .
- one battery string 206 may include, for example 6 battery modules 308 in series.
- one battery module 308 may include, for example, 16 battery bricks in series, and a battery brick may include 13 battery cells in parallel.
- the voltage source 110 ( FIG. 1 ) of the electric vehicle drive system 100 ( FIG. 1 ) can include one battery pack, which includes, for example 6 battery strings 206 .
- a battery cell can be, for example, a Li-ion cell, and the battery pack for the electric vehicle drive system 100 can provide power greater than, for example, 500 kW.
- Each of the battery modules 308 may be assembled with sensors and an interface that are configured to gather various battery module telemetry data such as voltage, current, charge, temperature, etc., which are communicated to the module monitors 306 .
- the module monitors 306 n _ 1 , 306 n _ 2 , . . . , 306 n _ k communicate with the main controller 305 n of the string control unit 304 n using a communication protocol, such as isolated serial peripheral interface (isoSPI).
- the module monitors 306 n can gather, for example, temperature and voltage data of the respective modules 308 n and communicate them to main controller 305 n of the string control unit 304 n .
- each of the module monitors 306 n can include signal processing units, such as an ADC for processing analog inputs from the battery modules 308 n regarding their respective temperature and/or voltage.
- the module monitors 306 n can be individually and directly in communication with the main controller 304 n as illustrated, and in other embodiments, the module monitors 306 n can be collectively and/or indirectly in communication with the main controller 305 n through a communication bus or in a daisy chained configuration.
- the string control unit 304 n includes components responsible for controlling the entire battery string 206 n , controlling functions such as opening or closing of the switches 210 n , 212 n for electric vehicle operations or emergency procedures based on, for example, various status data of the battery string 206 n .
- the string control unit 304 n includes the main controller 305 n , which can be implemented with a microprocessor capable of communicating with other components with one or more communication protocols or interfaces, such as SPI, isoSPI, CAN bus, universal synchronous asynchronous receiver transmitter (USART), universal asynchronous receiver transmitter (UART), etc.
- the string control unit 304 n can be configured to receive and process data regarding temperature, current, and voltage data of the individual battery modules 308 n and/or the entire battery string 206 n .
- the string control unit 304 n can be in communication with the current sensor 208 n and receive, for example, the current reading I_n of the battery string 206 n .
- the string control unit 304 n can include signal processing units, such as an ADC either within or separate from the main controller 305 n , for processing analog signals from the battery string 206 n .
- the string control unit 304 n can receive and process voltage measurements across the battery string 206 n disconnected from the positive and negative power buses 202 , 204 and voltage measurements across the positive and negative power buses 202 , 204 with the battery string 206 n connected to the power buses 202 , 204 (i.e., with the switches 212 n , 214 n closed).
- the string control unit 304 n can also perform additional tests and monitoring, such as performing isolation tests and executing battery management algorithms.
- the module monitors 306 n are configured to monitor status of the battery modules 308 n and the battery string 206 n by gathering data regarding voltage and temperature of the battery modules 308 n .
- the module monitors 306 n are in serial or point-to-point communication with the main controller 305 n of the string control unit 304 n .
- the module monitors 306 n can communicate with the main controller 305 n using a communication protocol such as isoSPI, and each the module monitors 306 n can incorporate communication capabilities of an isoSPI slave or subsidiary device.
- the multiple subsidiary units i.e., the module monitors 306 n
- the safety controller 303 n can be configured to monitor, observe, or listen to the data communication between the subsidiary units, such as the module monitors 306 n , and the main controller 305 n in order to evaluate the communication, e.g. determine if there is evidence of the existence of a fault condition, especially a fault condition in the electronics of the module monitor and/or the main controller. While the communication between the module monitors 306 n and the main controller 305 n can be bidirectional through a communication bus, the safety controller 303 n may only be coupled to the communication bus in a manner configured to passively monitor or receive data communicated between the module monitors 306 n and the main controller 305 n without transmitting any signals onto the bus itself.
- the safety controller 303 n can be implemented with a microprocessor capable of communicating with other components with various communication protocols or interfaces, such as SPI, isoSPI, CAN bus, universal synchronous asynchronous receiver transmitter (USART), universal asynchronous receiver transmitter (UART), etc. Further details of the safety controller 303 n are discussed in connection with FIG. 4 below.
- Safety action circuitry can also be coupled to the safety controller 303 n and/or the main controller 305 n to implement specific desired safety actions in the event a fault condition is suspected.
- a switch control circuit 309 n can generate the control signal 214 n for controlling one or both of the switches 210 n and 212 n of the battery string 206 n based on signals received from the safety controller 303 n and the main controller 305 n .
- the switch control circuit 309 n can implement a logic function, such as an AND gate. Further details of the switch control circuit 309 n are discussed in connection with FIG. 4 below. It is to be noted that respective switch control circuits 309 a , 309 b , . . .
- FIG. 2 can perform the same functions for the respective battery strings 206 so that the battery management system 160 as a whole outputs the control signals 214 a , 214 b , . . . , 214 n , . . . from the respective switch control circuits 309 a , 309 b , . . . 309 n , . . .
- main controller 305 the safety controller 303 , and the switch control circuit 309 are discussed in connection with FIGS. 4-5 below.
- the battery pack controller 312 in the illustrated embodiment can be in communication with the plurality of main controllers 305 a , 305 b , . . . , 305 n , . . . of the plurality of string control units 304 a , 304 b , . . . , 304 n , . . . .
- various data from the one or more of the battery strings can be communicated using CAN bus and the battery management system 160 may include a plurality of CAN bus transceivers (not show n ).
- the battery pack controller 312 can be in further communication with other devices, components, or modules of the electric vehicle. In certain instances, the battery pack controller 312 can communicate to components such as a switch driver, to cut power and disconnect all the switches 210 and 212 , for example, in case of an air bag deployment.
- components such as a switch driver, to cut power and disconnect all the switches 210 and 212 , for example, in case of an air bag deployment.
- FIG. 4 is a block diagram of an example battery management communication verification system according to one embodiment.
- the system illustrated in FIG. 4 includes the main controller 305 in serial or point-to-point communication with the module monitor 306 , the safety controller 303 receiving and verifying data communicated between the main controller 305 and the module monitor 306 , and the switch control circuit 309 configured to control the switches 210 , 212 .
- FIG. 4 also illustrates one exemplary battery string 206 , which is associated with the module monitor 306 , the main controller 305 , the safety controller 303 , and the switch control circuit 309 .
- the battery string 206 illustrated in FIG. 4 can be one of the plurality of battery strings 206 discussed in connection with FIG. 2 above and that the battery string 206 in FIG.
- the main controller 305 can be in serial or point-to-point communication with a plurality of module monitors 306 as discussed above in connection with FIG. 3 in accordance with the same advantages and principles illustrated and described in connection with FIG. 4 .
- the main controller 305 can be in serial or point-to-point communication with one or more of subsidiary units, such as the module monitor 306 .
- the main controller 305 is in communication with the module monitor 306 through an SPI interface.
- a communication bus between the main controller 305 and the module monitor 306 can be implemented with an isoSPI interface and may include additional interface devices not illustrated in FIG. 4 .
- the main controller 305 can receive subsidiary-to-main or master-in-slave-out (MISO) data from the module monitor 306 , and the main controller 305 can send main-to-subsidiary or master-out-slave-in (MOSI) data to the module monitor 306 .
- MISO subsidiary-to-main or master-in-slave-out
- MOSI master-out-slave-in
- the data communication through the SPI interface is clocked to the clock signal (SCLK) from the main controller 305 .
- SCLK clock signal
- the main controller 305 can control which subsidiary units to communicate with using the chip select ( ⁇ CS) signal.
- the subsidiary units such as the module monitor(s) 306 can be allocated in various parts or subsystems to gather various data.
- the main controller 305 can be responsible for a collection of parts or subsystems communicating with the subsidiary units to inquire status, request more data, or provide commands.
- the MISO data can include data regarding status, telemetry, performance, or operations of the parts or subsystems assigned to respective module monitors 306 .
- MOSI data can include instructions regarding data gathering, operation, or performance.
- the communication system disclosed herein can be applied in a battery management system (e.g., 160 of FIG. 3 ) in an automobile, such as an electric vehicle.
- the module monitor 306 can include data gathering components, such as voltage measurement component 404 and temperature measurement component 406 .
- the voltage measurement component 404 can receive voltage measurements, V, from the battery module 308 ( FIG. 3 ) to which the module monitor 306 is coupled within the battery string 206 .
- the temperature measurement component 406 can receive temperature measurements, temp, from the battery module 308 ( FIG. 3 ) to which the module monitor 306 is coupled within the battery string 206 .
- additional components such as an ADC can be included in the module monitor 306 for processing received data.
- the module monitor 306 includes a communication interface 402 , which receives voltage and temperature data from the voltage measurement component 404 and the temperature measurement component 406 .
- the communication interface 402 then communicates the voltage and temperature data of the corresponding battery module 308 to the main controller 305 through the SPI interface.
- the MISO data from the module monitor 306 to the main controller 305 includes voltage and temperature data of the battery module 308 ( FIG. 3 ).
- the main controller 305 can be configured to receive various data and measurements of or within the battery string 206 , such as voltage and temperature data of individual battery modules 308 ( FIG. 3 ) and voltage and current data of the battery string 206 . Also, the main controller 305 can be configured to send requests to the module monitor 306 when data regarding the corresponding battery module 308 is to be collected. In some instances, the communication between the main controller 305 and the module monitor 306 can be based on inquiries from the main controller 305 to the module monitor 306 that the module monitor 306 responds to with the requested data. In other instances, the communication between the main controller 305 and the module monitor 306 can be based on regular default reports from the module monitor 306 to the main controller 305 . In yet another instances, the communication between the main controller 305 and the module monitor 306 can be a mixture of varying degrees of combination of the two abovementioned cases.
- the safety controller 303 can be configured to monitor and verify the communication between the main controller 305 and subsidiary units, such as the module monitor 306 .
- the safety controller 303 can be coupled to the communication bus between the main controller 305 and the subsidiary units as a passive listen-only component.
- the safety controller 303 can receive the MISO data communicated from the module monitor 306 to the main controller 305 and receive the MOSI data communicated from the main controller 305 to the module monitor 306 .
- the safety controller 303 can also receive the additional serial communication control signals such as ⁇ CS and SCLK.
- the safety controller 303 can be implemented with a microprocessor capable of at least listening in the serial or point-to-point communication between the main controller 305 and the subsidiary units, such as the module monitor 306 .
- the safety controller 303 can be a microcontroller having at least two ports of SPI so that the safety controller 303 can receive the MISO data from the subsidiary unit at its MOSI pin of one of its SPI ports and receive the MOSI data from the main controller 305 at its MOSI pin of another one of its SPI ports.
- the safety controller 303 can also be configured to store or be capable of accessing certain information regarding communication data monitoring and verification.
- the safety controller 303 may have predetermined acceptable ranges of voltage or temperature values stored or accessible as needed.
- the safety controller 303 may include internal memory for storing certain voltage or temperature parameters, or in other instances, the safety controller 303 can receive voltage or temperature parameters from an external memory (not shown) or from the main controller 305 if, for example, the parameters are updated.
- the safety controller 303 may be provided with expected types of inquiries, sequences of commands, or other communication routines that should be communicated from the main controller 305 to the module monitor 306 .
- the safety controller 303 may be configured to store or access various communication verification metrics in the forms of SPI data protocol.
- the safety controller 303 may also be implemented with capabilities to communicate a safety signal or verification indicator to the main controller 305 and/or other components to allow further action to be taken based on the safety signal or verification indicator.
- the safety controller 303 is in bidirectional communication with the main controller 305 through a transmit (TX) and receive (RX) channel.
- TX and RX can be implemented with interfaces such as UART.
- the TX/RX communication between the safety controller 303 and the main controller 305 can be implemented with another SPI separate from the SPI bus that the safety controller 303 is monitoring and that is between the main controller 305 and subsidiary units, such as the module monitor 306 .
- the safety controller 303 and the main controller 305 may be in communication using input output (I/O) pins such as general purpose input output (GPIO) pins, in which case the communication may or may not be bidirectional.
- I/O input output
- GPIO general purpose input output
- the safety controller 303 can be in communication with the main controller 305 to indicate that the data between the main controller 305 and the module monitor 306 are valid and as expected.
- the safety controller 303 can also be in communication with the switch control circuit 309 to allow the switch control circuit 309 to control the switches 210 , 212 , for example.
- the safety controller 303 can provide an added layer of data verification to monitor the voltage and temperature of the battery modules 308 ( FIG. 3 ).
- the MISO data may include serial data indicating that the battery module (e.g., 308 in FIG. 3 ) coupled to the module monitor 306 is measured to be at a particular temperature and has a particular measured voltage across the battery module.
- the safety controller 303 can have stored therein appropriate temperature and voltage ranges for a battery module. If the temperature is not within the valid range in this example, the safety controller 303 may output a safety signal that could trigger disconnecting the battery string 206 that includes the overheated battery module.
- the temperature of the battery module may be approaching the limits of the acceptable range.
- the communication between the main controller 305 and the module monitor 306 can include expected inquiry and response routine of the main controller 305 asking for additional temperature data in such instances.
- the safety controller 303 monitoring the high temperature data communicated from the module monitor 306 to the main controller 305 can observe whether the main controller 305 sends the expected additional inquiry to the module monitor 306 .
- the safety controller 303 will be comparing expected data sequence of the main-to-subsidiary data and determine whether an error has occurred. If the main controller 305 fails to recognize certain alarming situations, such as rising temperature in this example, and fails to communicate expected commands, the safety controller 303 may indicate an error to trigger disconnecting the battery string 206 to which the main controller 305 is coupled.
- a safety controller can be advantageous to implement a safety controller collectively verifying a serial or point-to-point data communication as disclosed herein. Redundant verification often involves fully duplicative redundancy, and in battery management systems, for example, individual constituent components (e.g., multiple module monitors 306 and the main controller 305 ) of the serial or point-to-point communication system may include respective redundant verification components or circuits.
- Serial communication safety verification system disclosed herein allows collective verification of subcomponents of the communication system and can reduce cost and complexity while allowing robust and redundant safety control. As implemented in a battery management system, the disclosed herein allows one safety controller 303 to monitor and verify safety of the multiple battery modules 308 within the battery string 206 .
- the communication system disclosed herein is implemented in a battery management system (e.g., 160 of FIG. 3 ) of an electric vehicle.
- the safety indicator or command from the safety controller 303 can be applied to controlling the switches 210 , 212 to connect the battery string 206 to and from the power buses 202 , 204 .
- the switch control circuit 309 can be configured to receive a verification indicator from the safety controller 303 and a switch command from the main controller 305 , and based on the signals from the safety controller 303 and the main controller 305 , the switch control circuit 309 can send signals to control the switches 210 , 212 .
- the switch control circuit 309 can be implemented with a logic gates or circuits, such as an AND gate, which allows the battery string 206 to connect to the power buses 202 , 204 only when the both the safety controller 303 and the main controller 305 indicate the battery string 206 should or could be connected. Based on the selection of the signal polarity of the safe and switch signals, the switch control circuit 309 can be implemented with other logic gates or circuits.
- the disclosed herein can be applied in a different system other than the battery management system illustrated here where the multiple constituent components of the system are in serial or point-to-point communication with one another and a redundant yet collective verification of the serial or point-to-point communication can be used to control safety of the system.
- FIG. 5 is a flowchart of a communication verification process according to one embodiment.
- the illustrated process 500 can be performed in part by and/or in conjunction with one or more components in the string control unit 304 ( FIG. 3 ), such as the safety controller 303 ( FIG. 3 ) or any other components in communication with the safety controller 303 .
- all or parts of steps 502 , 504 , 506 , 508 , 510 , 512 , 514 , 516 , and 518 may be concurrently, continuously, periodically, intermittently, repeatedly, or iteratively performed, and the illustrated process 500 in FIG. 5 is only one example embodiment of inventive features disclosed herein.
- the safety control process can be initialized, and the safety controller 303 , for example, can be ready to receive the MOSI data communicated from the main controller 305 to the module monitor 306 and/or the MISO data communicated from the module monitor 306 to the main controller 305 .
- step 504 whether the MOSI data is received by the safety controller (e.g., 303 ) is determined. If the MOSI data is received, the process 500 can proceed to step 508 . If the MOSI data is not received, the process 500 can remain in standby.
- the safety controller e.g., 303
- the validity of the MOSI data received is determined.
- the MOSI data may include commands or inquiries from the main controller 305 to the module monitor 306 . If, for example, invalid or unintelligible serial data is communicated from the main controller 305 to the module monitor 306 , the safety controller 303 may determine that an error may be occurring in or around the main controller 305 . If the MOSI data from the main controller 305 to the module monitor 306 is valid, the process 500 proceeds to step 508 . If the MOSI data from the main controller 305 to the module monitor is not valid, the process 500 proceeds to step 512 .
- an error is flagged.
- the safety controller 303 can send a signal indicating a MOSI data communication error has occurred to the main controller 305 .
- the safety controller 303 can send signals to other components such as the switch control circuit 309 to allow further safety action to take place, such as disconnecting the battery string 206 from the power buses 202 , 204 , for example.
- the MOSI data may include commands or inquiries from the main controller 305 to the module monitor 306 , and such commands or inquiries may take a certain expected form and/or sequence.
- the main controller 305 may be expected to ask for routine temperature and voltage data of the battery modules 308 in regular situations while it may be expected to ask specific targeted or more frequent temperature or voltage data in a more urgent situation (e.g., rising temperature still within an acceptable range).
- the safety controller 303 implemented as disclosed herein can be provided with what is expected of the main controller 309 to communicate to the module monitor 306 , and the safety controller 303 may compare whether the MOSI data communicated from the main controller 305 to the module monitor 306 matches the expected sequence. If the MOSI data matches the expected sequence, the process 500 goes back to the initial standby mode ready to receive the MOSI and MISO data. If the MOSI data does not match the expected sequence, the process 500 goes to step 512 to flag an error.
- step 506 whether the MISO data is received by the safety controller (e.g., 303 ) is determined. If the MISO data is received, the process 500 can proceed to step 510 . If the MISO data is not received, the process 500 can remain in standby.
- the safety controller e.g., 303
- the validity of the MISO data received is determined.
- the MISO data may include temperature and voltage data regarding the respective battery modules 308 ( FIG. 3 ).
- the validity of the MISO data can be determined in various ways.
- the content of the MISO data such as the module voltage and temperature level, can be outside of the acceptable range, which can render the MISO data invalid.
- the form of the MISO data can be invalid or unintelligible.
- the data validity regarding the form and substance can be determined based on, for example, stored and/or accessible information by the safety controller 303 . If the MISO data from the module monitor 306 to the main controller 305 are valid, the process 500 proceeds to step 518 . If the MISO data from the module monitor 306 to the main controller 305 are not valid, the process 500 proceeds to step 514 .
- an error is flagged.
- the safety controller 303 can send a signal indicating a MISO data communication error has occurred to the main controller 305 . Also, the safety controller 303 can send signals to other components such as the switch control circuit 309 to allow further safety action to take place, such as disconnecting the battery string 206 from the power buses 202 , 204 , for example.
- step 518 whether the MISO data received matches expected data is determined.
- the module monitor 306 and the main controller 305 can be in serial or point-to-point communication with each other based on certain routines and protocols.
- the main controller 305 can request the module monitor 306 to send certain data of the battery module 308 to which it is coupled, and the module monitor 306 is expected to respond accordingly.
- the safety controller 303 may compare the actual MISO data and the expected MISO data to determine whether the actual data matches the expected sequence. If the MISO data matches the expected sequence, the process 500 goes back to the initial standby mode ready to receive the MOSI and MISO data. If the MISO data does not match the expected sequence, the process 500 proceeds to step 514 .
- the main-to-subsidiary data verification i.e., the series of steps 504 , 508 , 512 , 516
- the subsidiary-to-main data verification i.e., the series of steps 506 , 510 , 514 , 518
- the steps 508 , 516 , 510 , and 518 can be performed in different orders or can be performed in one step depending on specific implementations or applications of the disclosed herein.
- determining encompasses a wide variety of actions. For example, “determining” may include calculating, computing, processing, deriving, investigating, looking up (e.g., looking up in a table, a database or another data structure), ascertaining and the like. Also, “determining” may include receiving (e.g., receiving information), accessing (e.g., accessing data in a memory) and the like. Also, “determining” may include resolving, selecting, choosing, establishing and the like. Further, a “channel width” as used herein may encompass or may also be referred to as a bandwidth in certain aspects.
- any suitable means capable of performing the operations such as various hardware and/or software component(s), circuits, and/or module(s).
- any operations illustrated in the Figures may be performed by corresponding functional means capable of performing the operations.
- DSP digital signal processor
- ASIC application specific integrated circuit
- FPGA field programmable gate array signal
- PLD programmable logic device
- a general purpose processor may be a microprocessor, but in the alternative, the processor may be any commercially available processor, controller, microcontroller or state machine.
- a processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.
- the methods disclosed herein comprise one or more steps or actions for achieving the described method.
- the method steps and/or actions may be interchanged with one another without departing from the scope of the claims.
- the order and/or use of specific steps and/or actions may be modified without departing from the scope of the claims.
Abstract
Description
- This application is a divisional of U.S. patent application Ser. No. 15/157,258, filed May 17, 2016, and titled “SERIAL COMMUNICATION SAFETY CONTROLLER,” and claims the benefit under 35 U.S.C. §119(e) of U.S. Provisional Application No. 62/249,136, filed Oct. 30, 2015, and titled “ELECTRIC VEHICLE WITH PARALLEL BATTERY STRINGS,” U.S. Provisional Application No. 62/261,229, filed Nov. 30, 2015, and titled “ELECTRIC VEHICLE WITH PARALLEL BATTERY STRINGS,” and U.S. Provisional Application No. 62/298,316, filed Feb. 22, 2016, and titled “SERIAL COMMUNICATION SAFETY CONTROLLER,” the entirety of which is hereby incorporated by reference.
- The described technology generally relates to electronics, more specifically, to serial communication in electronics.
- Serial communication or other similar point-to-point communication can be useful in controlling or managing various electronics. When serially communicated electronics manage certain high risk systems or operations, such as high voltage battery packs for electronic vehicles, reducing error can be critical. For example, managing a power source in an automobile, such as an electric vehicle, can be challenging as balancing the appropriate level of power, efficiency, cost, reliability, and redundancy can be difficult.
- The methods and devices of the described technology each have several aspects, no single one of which is solely responsible for its desirable attributes.
- In one implementation, a communication apparatus comprises a main controller and a subsidiary unit connected to the main controller through a data bus. The main controller is configured to communicate with the subsidiary unit through the data bus. A safety controller is connected to the data bus and is configured to monitor one or more communications between the main controller and the subsidiary unit through the data bus, evaluate one or more communications between the main controller and the subsidiary unit through the data bus for evidence of a fault condition, and output a safety signal that is based at least in part on the results of the evaluating to an output connection separate from the data bus.
- In another implementation, an electric vehicle comprises a motor coupled to one or more wheels of the electric vehicle, an inverter coupled to the motor, at least a first power bus coupled to the inverter, at least a first battery string comprising a plurality of battery modules, wherein the first battery string has an output that is coupled to the first power bus through a switch. Also provided is at least a first battery string controller coupled to the first battery string, a plurality of battery module monitors coupled to respective ones of the plurality of battery modules and in communication with the first battery string controller, and at least a first safety controller associated with the battery string controller configured to evaluate communications between the first battery string controller and the first battery module monitor.
- In another implementation, a method of detecting fault conditions in a circuit comprises receiving data and/or commands communicated from a main controller to at least a first subsidiary unit through a data bus, receiving data communicated from the first subsidiary unit to the main controller through the data bus, comparing the received data and/or commands from the main controller to the first subsidiary unit with expected data and/or commands from the main controller to the subsidiary unit, comparing the received data from the first subsidiary unit to the main controller with expected data from the first subsidiary unit to the main controller, and outputting a safety signal through a connection separate from the data bus.
- These drawings and the associated description herein are provided to illustrate specific embodiments of the invention and are not intended to be limiting.
-
FIG. 1 is a block diagram of an example electric vehicle drive system according to one embodiment. -
FIG. 2 is a block diagram of an example voltage source and battery management system according to one embodiment. -
FIG. 3 is another block diagram of an example voltage source and battery management system according to one embodiment. -
FIG. 4 is a block diagram of an example battery management communication verification system according to one embodiment. -
FIG. 5 is a flowchart of a communication verification process according to one embodiment. - Various aspects of the novel systems, apparatuses, and methods are described more fully hereinafter with reference to the accompanying drawings. Aspects of this disclosure may, however, be embodied in many different forms and should not be construed as limited to any specific structure or function presented throughout this disclosure. Rather, these aspects are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art. Based on the teachings herein, one skilled in the art should appreciate that the scope of the disclosure is intended to cover any aspect of the novel systems, apparatuses, and methods disclosed herein, whether implemented independently of or combined with any other aspect. For example, an apparatus may be implemented or a method may be practiced using any number of the aspects set forth herein. In addition, the scope is intended to encompass such an apparatus or method which is practiced using other structure, functionality, or structure and functionality in addition to or other than the various aspects set forth herein. It should be understood that any aspect disclosed herein may be embodied by one or more elements of a claim.
- Although particular aspects are described herein, many variations and permutations of these aspects fall within the scope of the disclosure. Although some benefits and advantages of the preferred aspects are mentioned, the scope of the disclosure is not intended to be limited to particular benefits, uses, or objectives. Rather, aspects of the disclosure are intended to be broadly applicable to automotive systems and/or different wired and wireless technologies, system configurations, networks, including optical networks, hard disks, and transmission protocols, some of which are illustrated by way of example in the figures and in the following description of the preferred aspects. The detailed description and drawings are merely illustrative of the disclosure rather than limiting, the scope of the disclosure being defined by the appended claims and equivalents thereof.
- Serial communication verification and safety control is disclosed. A multi-part system such as a battery management system can include distributed or subsidiary components for determining status of various parts of the system with the components in serial or point-to-point communication with a collective main controller. A safety controller can be implemented to be passively coupled to the serial or point-to-point communication between the main controller and the subsidiary units. The safety controller can monitor and evaluate communications between the main controller and the subsidiary unit(s) and send a safety signal or verification indicator over another line of communication separate from the communication bus between the main controller and the subsidiary units.
-
FIG. 1 depicts a block diagram of an example electricvehicle drive system 100 including abattery management system 160 as described herein. The electricvehicle drive system 100 includes the battery orvoltage source 110, aninverter 120 coupled to thebattery 110, acurrent controller 130, amotor 140, andload 150, and thebattery management system 160. Thebattery 110 can be a single phase direct current (DC) source. In some embodiments, thebattery 110 can be a rechargeable electric vehicle battery or traction battery used to power the propulsion of an electric vehicle including thedrive system 100. Although thebattery 110 is illustrated as a single element inFIG. 1 , thebattery 110 depicted inFIG. 1 is only representational, and further details of thebattery 110 are discussed below in connection withFIG. 2 . - The
inverter 120 includes power inputs which are connected to conductors of thebattery 110 to receive, for example, DC power, single-phase electrical current, or multi-phase electrical current. Additionally, theinverter 120 includes an input which is coupled to an output of thecurrent controller 130, described further below. Theinverter 120 also includes three outputs representing three phases with currents that can be separated by 120 electrical degrees, with each phase provided on a conductor coupled to themotor 140. It should be noted that in other embodiments inverter 120 may produce greater or fewer than three phases. - The
motor 140 is fed fromvoltage source inverter 120 controlled by thecurrent controller 130. The inputs of themotor 140 are coupled to respective windings distributed about a stator. Themotor 140 can be coupled to a mechanical output, for example a mechanical coupling between themotor 140 andmechanical load 150.Mechanical load 150 may represent one or more wheels of the electric vehicle. -
Controller 130 can be used to generate gate signals for theinverter 120. Accordingly, control of vehicle speed is performed by regulating the voltage or the flow of current from theinverter 120 through the stator of themotor 140. There are many control schemes that can be used in the electricvehicle drive system 100 including current control, voltage control, and direct torque control. Selection of the characteristics ofinverter 120 and selection of the control technique of thecontroller 130 can determine efficacy of thedrive system 100. - The
battery management system 160 can receive data from thebattery 110 and generate control signals to manage thebattery 110. Further details of thebattery management system 160 are discussed in connection withFIGS. 2-3 below. - Although not illustrated, the electric
vehicle drive system 100 can include one or more position sensors for determining position of the rotor of themotor 140 and providing this information to thecontroller 130. For example, themotor 140 can include a signal output that can transmit a position of a rotor assembly of themotor 140 with respect to thestator assembly motor 140. The position sensor can be, for example, a Hall-effect sensor, a magnetoresistive sensor, potentiometer, linear variable differential transformer, optical encoder, or position resolver. In other embodiments, the saliency exhibited by themotor 140 can also allow for sensorless control applications. Although not illustrated, the electricvehicle drive system 100 can include one or more current sensors for determining phase currents of the stator windings and providing this information to thecontroller 130. The current sensor can be, for example, a Hall-effect current sensor, a sense resistor connected to an amplifier, or a current clamp. - It should be appreciated that while the
motor 140 is described as an electrical machine that can receive electrical power to produce mechanical power, it can also be used such that it receives mechanical power and thereby converts that to electrical power. In such a configuration, theinverter 120 can be utilized to excite the winding using a proper control and thereafter extract electrical power from themotor 140 while themotor 140 is receiving mechanical power. -
FIG. 2 is a block diagram of an example voltage source according to one embodiment. Thevoltage source 110 can include a plurality ofbattery strings current sensors high power bus 202 and a negative orlow power bus 204 through a plurality ofswitches switches switches battery management system 160. Thebattery management system 160 can receive, among others, voltages, V_a, V_b, . . . , V_n, . . . , which can be output voltages across therespective battery strings battery management system 160 can also receive currents, I_a, I_b, . . . , I_n, . . . , which are currents from therespective battery strings current sensors battery management system 160 also can receive temperature measurements, temp_a, temp_b, . . . , temp_n, . . . , which are one or more of temperature measurements from therespective battery strings respective battery strings 206, thebattery management system 160 can generatecontrol signals respective switches battery management system 160 may receive respective voltage, current, and/or temperature data of subsets or parts, such as modules and/or cells, of each of the battery strings 206. Further details of thebattery management system 160 are discussed below in connection withFIG. 3 . - The battery strings 206 can include a plurality of modules, each of which in turn can include a plurality of cells. Within each
battery string 206, the constituent modules and cells can be connected in series as symbolically depicted inFIG. 2 . In some embodiments, thevoltage source 110 can include sixbattery strings 206 that can be connected to or disconnected from thepower buses - The
current sensors 208 can be connected in series with therespective battery strings 206 between the high andlow power buses FIG. 2 thecurrent sensor 208 can be connected to the positive side of therespective battery strings 206 to measure the current discharged from the battery strings 206. In other embodiments, thecurrent sensors 208 can be connected to the battery strings 206 otherwise to measure the current flow due to discharging of the battery strings 206. - The
switches power buses power buses switches 210 can be implemented with any suitable contactors capable of handling the level of current and voltage as needed in connection with, for example, the battery strings 206, thepower buses FIG. 1 ) within the electric vehicle drive system 100 (FIG. 1 ). In some embodiments theswitches switches 210 can be powered by one or more drivers in thebattery management system 160. Although in the illustrated example inFIG. 2 , the switches 210 (e.g., 210 n) and the switches 212 (e.g., 212 n) are controlled by the same respective control signals 214 (e.g., 214 n), in other embodiments, the switches 210 (e.g., 210 n) can be controlled by respective positive bus connect control signals while the switches 212 (e.g., 212 n) can be controlled by respective negative bus connect control signals. - The
battery management system 160 can include a plurality of passive and/or active circuit elements, signal processing components, such as analog-to-digital converters (ADCs), amplifiers, buffers, drivers, regulators, or other suitable components. In some embodiments, thebattery management system 160 can also include one or more processors to process incoming data to generate outputs, such as the control signals 214. In some embodiments, thebattery management system 160 can also include one or more components for communicating and sending and receiving data within thebattery management system 160 and/or with other components or circuitries in the electric vehicle. For example, the various components and circuits within thesystem 100, including components in thebattery management system 160 can be in communication with one another using protocols or interfaces such as a controller area network (CAN) bus, serial peripheral interface (SPI), or other suitable protocols or interfaces. And in some embodiments, the processing of incoming data can be at least in part performed by other components not in thebattery management system 160 within the electric vehicle as thebattery management system 160 communicates with other components. -
FIG. 3 is another block diagram of example voltage source and battery management system according to one embodiment. InFIG. 3 , oneexemplary battery string 206 n of the plurality ofbattery strings 206 ofFIG. 2 is illustrated, and accordingly, the correspondingcurrent sensor 208 n, switches 210 n, 212 n, and connect control signal 214 n are illustrated. Also illustrated is afuse 310 n corresponding to thebattery string 206 n, and although not illustrated, the battery strings 206 a, 206 b, . . . , 206 n, . . . inFIG. 2 may each also have corresponding fuse 310 a, 310 b, . . . , 310 n, . . . . Thebattery string 206 n includes a plurality of battery modules 308 n_1, 308 n_2, . . . , 308 n _k (individually or collectively referred to herein as thebattery modules 308 n for thebattery string 206 n), each sending battery module telemetry data to respective module monitors 306 n_1, 306 n_2, . . . , 306 n _k (individually or collectively referred to herein as the module monitors 306 n for thebattery string 206 n) of thebattery management system 160. Thebattery management system 160 includes astring control unit 304 n for thebattery string 206 n in communication with the battery modules 308 n_1, 308 n_2, . . . , 308 n_k for thebattery string 206 n. Thestring control unit 304 n includes asafety controller 303 n, amain controller 305 n, and aswitch control circuit 309 n. As illustrated thesafety controller 303 n can be configured to monitor the communication between the module monitors 306 n and themain controller 305 n for thebattery string 206 n. Further details of the communication among the module monitors 306 n,safety controller 303 n, and themain controller 305 n are discussed in connection withFIG. 4 below. - Although not illustrated, the
battery management system 160 also may include respective string control units 304 a, 304 b, . . . , 304 n, . . . for the plurality ofbattery strings FIG. 2 . Thebattery management system 160 also includes abattery pack controller 312, which controls a switch driver 314 and is in communication with the plurality of string control units 304. In some embodiments, thebattery management system 160 can also include an analog-to-digital converter (ADC) internal or external to one or more controllers, such as themain controller 305 n and the battery backcontroller 312, for processing analog data. - In the illustrated embodiment, the
nth battery string 206 n has k number ofbattery modules 308 n and k number of module monitors 306 n_1, 306 n_2, . . . , 306 n_k. In some embodiments, onebattery string 206 may include, for example 6 battery modules 308 in series. In some embodiments, one battery module 308 may include, for example, 16 battery bricks in series, and a battery brick may include 13 battery cells in parallel. Also, in some embodiments the voltage source 110 (FIG. 1 ) of the electric vehicle drive system 100 (FIG. 1 ) can include one battery pack, which includes, for example 6 battery strings 206. A battery cell can be, for example, a Li-ion cell, and the battery pack for the electricvehicle drive system 100 can provide power greater than, for example, 500 kW. - Each of the battery modules 308 may be assembled with sensors and an interface that are configured to gather various battery module telemetry data such as voltage, current, charge, temperature, etc., which are communicated to the module monitors 306. In the illustrated embodiment, the module monitors 306 n_1, 306 n_2, . . . , 306 n_k communicate with the
main controller 305 n of thestring control unit 304 n using a communication protocol, such as isolated serial peripheral interface (isoSPI). In the illustrated embodiment, the module monitors 306 n can gather, for example, temperature and voltage data of therespective modules 308 n and communicate them tomain controller 305 n of thestring control unit 304 n. In some embodiments, each of the module monitors 306 n can include signal processing units, such as an ADC for processing analog inputs from thebattery modules 308 n regarding their respective temperature and/or voltage. In some embodiments, the module monitors 306 n can be individually and directly in communication with themain controller 304 n as illustrated, and in other embodiments, the module monitors 306 n can be collectively and/or indirectly in communication with themain controller 305 n through a communication bus or in a daisy chained configuration. - The
string control unit 304 n includes components responsible for controlling theentire battery string 206 n, controlling functions such as opening or closing of theswitches battery string 206 n. In some embodiments thestring control unit 304 n includes themain controller 305 n, which can be implemented with a microprocessor capable of communicating with other components with one or more communication protocols or interfaces, such as SPI, isoSPI, CAN bus, universal synchronous asynchronous receiver transmitter (USART), universal asynchronous receiver transmitter (UART), etc. Thestring control unit 304 n can be configured to receive and process data regarding temperature, current, and voltage data of theindividual battery modules 308 n and/or theentire battery string 206 n. In the illustrated embodiment, thestring control unit 304 n can be in communication with thecurrent sensor 208 n and receive, for example, the current reading I_n of thebattery string 206 n. Also in some embodiments, thestring control unit 304 n can include signal processing units, such as an ADC either within or separate from themain controller 305 n, for processing analog signals from thebattery string 206 n. For example, thestring control unit 304 n can receive and process voltage measurements across thebattery string 206 n disconnected from the positive andnegative power buses negative power buses battery string 206 n connected to thepower buses 202, 204 (i.e., with theswitches string control unit 304 n can also perform additional tests and monitoring, such as performing isolation tests and executing battery management algorithms. - The module monitors 306 n are configured to monitor status of the
battery modules 308 n and thebattery string 206 n by gathering data regarding voltage and temperature of thebattery modules 308 n. In the illustrated embodiment, the module monitors 306 n are in serial or point-to-point communication with themain controller 305 n of thestring control unit 304 n. In some embodiments, the module monitors 306 n can communicate with themain controller 305 n using a communication protocol such as isoSPI, and each the module monitors 306 n can incorporate communication capabilities of an isoSPI slave or subsidiary device. In other embodiments, the multiple subsidiary units (i.e., the module monitors 306 n) can be in communication with themain controller 305 n in a daisy chained manner. - The
safety controller 303 n can be configured to monitor, observe, or listen to the data communication between the subsidiary units, such as the module monitors 306 n, and themain controller 305 n in order to evaluate the communication, e.g. determine if there is evidence of the existence of a fault condition, especially a fault condition in the electronics of the module monitor and/or the main controller. While the communication between the module monitors 306 n and themain controller 305 n can be bidirectional through a communication bus, thesafety controller 303 n may only be coupled to the communication bus in a manner configured to passively monitor or receive data communicated between the module monitors 306 n and themain controller 305 n without transmitting any signals onto the bus itself. In some embodiments, thesafety controller 303 n can be implemented with a microprocessor capable of communicating with other components with various communication protocols or interfaces, such as SPI, isoSPI, CAN bus, universal synchronous asynchronous receiver transmitter (USART), universal asynchronous receiver transmitter (UART), etc. Further details of thesafety controller 303 n are discussed in connection withFIG. 4 below. - Safety action circuitry can also be coupled to the
safety controller 303 n and/or themain controller 305 n to implement specific desired safety actions in the event a fault condition is suspected. For example, aswitch control circuit 309 n can generate thecontrol signal 214 n for controlling one or both of theswitches battery string 206 n based on signals received from thesafety controller 303 n and themain controller 305 n. In some embodiments, theswitch control circuit 309 n can implement a logic function, such as an AND gate. Further details of theswitch control circuit 309 n are discussed in connection withFIG. 4 below. It is to be noted that respective switch control circuits 309 a, 309 b, . . . 309 n, . . . in the string control units 304 a, 304 b, . . . , 304 n, . . . for the battery strings 206 a, 206 b, . . . , 206 n, . . . (FIG. 2 ) can perform the same functions for therespective battery strings 206 so that thebattery management system 160 as a whole outputs the control signals 214 a, 214 b, . . . , 214 n, . . . from the respective switch control circuits 309 a, 309 b, . . . 309 n, . . . to the correspondingswitches - Further details of the
main controller 305, thesafety controller 303, and the switch control circuit 309 are discussed in connection withFIGS. 4-5 below. - The
battery pack controller 312 in the illustrated embodiment can be in communication with the plurality of main controllers 305 a, 305 b, . . . , 305 n, . . . of the plurality of string control units 304 a, 304 b, . . . , 304 n, . . . . In some embodiments, various data from the one or more of the battery strings (e.g., string_a, string_b, . . . , string_n, . . .) can be communicated using CAN bus and thebattery management system 160 may include a plurality of CAN bus transceivers (not shown). Thebattery pack controller 312 can be in further communication with other devices, components, or modules of the electric vehicle. In certain instances, thebattery pack controller 312 can communicate to components such as a switch driver, to cut power and disconnect all theswitches -
FIG. 4 is a block diagram of an example battery management communication verification system according to one embodiment. The system illustrated inFIG. 4 includes themain controller 305 in serial or point-to-point communication with themodule monitor 306, thesafety controller 303 receiving and verifying data communicated between themain controller 305 and themodule monitor 306, and the switch control circuit 309 configured to control theswitches FIG. 4 also illustrates oneexemplary battery string 206, which is associated with themodule monitor 306, themain controller 305, thesafety controller 303, and the switch control circuit 309. It is to be noted that thebattery string 206 illustrated inFIG. 4 can be one of the plurality ofbattery strings 206 discussed in connection withFIG. 2 above and that thebattery string 206 inFIG. 4 can also include a plurality of modules 308, each in communication with respective plurality of module monitors 306, as discussed in connection withFIG. 3 above. As such, themain controller 305 can be in serial or point-to-point communication with a plurality of module monitors 306 as discussed above in connection withFIG. 3 in accordance with the same advantages and principles illustrated and described in connection withFIG. 4 . - The
main controller 305 can be in serial or point-to-point communication with one or more of subsidiary units, such as themodule monitor 306. In the example illustrated inFIG. 4 , themain controller 305 is in communication with the module monitor 306 through an SPI interface. In some embodiments, a communication bus between themain controller 305 and the module monitor 306 can be implemented with an isoSPI interface and may include additional interface devices not illustrated inFIG. 4 . Themain controller 305 can receive subsidiary-to-main or master-in-slave-out (MISO) data from themodule monitor 306, and themain controller 305 can send main-to-subsidiary or master-out-slave-in (MOSI) data to themodule monitor 306. The data communication through the SPI interface is clocked to the clock signal (SCLK) from themain controller 305. It is to be noted that although only onemodule monitor 306 is illustrated inFIG. 4 , the same principles and advantages are applicable to a communication system using multiple module monitors 306 as illustrated inFIG. 3 above. As such, themain controller 305 can control which subsidiary units to communicate with using the chip select (˜CS) signal. In some embodiments, the subsidiary units such as the module monitor(s) 306 can be allocated in various parts or subsystems to gather various data. Also in some embodiments, themain controller 305 can be responsible for a collection of parts or subsystems communicating with the subsidiary units to inquire status, request more data, or provide commands. As such, the MISO data can include data regarding status, telemetry, performance, or operations of the parts or subsystems assigned to respective module monitors 306. And, MOSI data can include instructions regarding data gathering, operation, or performance. - For example, the communication system disclosed herein can be applied in a battery management system (e.g., 160 of
FIG. 3 ) in an automobile, such as an electric vehicle. In such applications the module monitor 306 can include data gathering components, such asvoltage measurement component 404 andtemperature measurement component 406. In this example, thevoltage measurement component 404 can receive voltage measurements, V, from the battery module 308 (FIG. 3 ) to which themodule monitor 306 is coupled within thebattery string 206. Similarly, thetemperature measurement component 406 can receive temperature measurements, temp, from the battery module 308 (FIG. 3 ) to which themodule monitor 306 is coupled within thebattery string 206. It is to be noted that additional components such as an ADC can be included in the module monitor 306 for processing received data. In this example, themodule monitor 306 includes acommunication interface 402, which receives voltage and temperature data from thevoltage measurement component 404 and thetemperature measurement component 406. Thecommunication interface 402 then communicates the voltage and temperature data of the corresponding battery module 308 to themain controller 305 through the SPI interface. In this example, the MISO data from the module monitor 306 to themain controller 305 includes voltage and temperature data of the battery module 308 (FIG. 3 ). - Also in this example, the
main controller 305 can be configured to receive various data and measurements of or within thebattery string 206, such as voltage and temperature data of individual battery modules 308 (FIG. 3 ) and voltage and current data of thebattery string 206. Also, themain controller 305 can be configured to send requests to the module monitor 306 when data regarding the corresponding battery module 308 is to be collected. In some instances, the communication between themain controller 305 and the module monitor 306 can be based on inquiries from themain controller 305 to the module monitor 306 that themodule monitor 306 responds to with the requested data. In other instances, the communication between themain controller 305 and the module monitor 306 can be based on regular default reports from the module monitor 306 to themain controller 305. In yet another instances, the communication between themain controller 305 and the module monitor 306 can be a mixture of varying degrees of combination of the two abovementioned cases. - The
safety controller 303 can be configured to monitor and verify the communication between themain controller 305 and subsidiary units, such as themodule monitor 306. In some embodiments, thesafety controller 303 can be coupled to the communication bus between themain controller 305 and the subsidiary units as a passive listen-only component. In the illustrated example, thesafety controller 303 can receive the MISO data communicated from the module monitor 306 to themain controller 305 and receive the MOSI data communicated from themain controller 305 to themodule monitor 306. Thesafety controller 303 can also receive the additional serial communication control signals such as ˜CS and SCLK. In some embodiments, thesafety controller 303 can be implemented with a microprocessor capable of at least listening in the serial or point-to-point communication between themain controller 305 and the subsidiary units, such as themodule monitor 306. In embodiments using SPI, thesafety controller 303 can be a microcontroller having at least two ports of SPI so that thesafety controller 303 can receive the MISO data from the subsidiary unit at its MOSI pin of one of its SPI ports and receive the MOSI data from themain controller 305 at its MOSI pin of another one of its SPI ports. - The
safety controller 303 can also be configured to store or be capable of accessing certain information regarding communication data monitoring and verification. For example, in the battery management system example discussed above, thesafety controller 303 may have predetermined acceptable ranges of voltage or temperature values stored or accessible as needed. For instance, thesafety controller 303 may include internal memory for storing certain voltage or temperature parameters, or in other instances, thesafety controller 303 can receive voltage or temperature parameters from an external memory (not shown) or from themain controller 305 if, for example, the parameters are updated. Also in this example, thesafety controller 303 may be provided with expected types of inquiries, sequences of commands, or other communication routines that should be communicated from themain controller 305 to themodule monitor 306. In embodiments using SPI, thesafety controller 303 may be configured to store or access various communication verification metrics in the forms of SPI data protocol. - The
safety controller 303 may also be implemented with capabilities to communicate a safety signal or verification indicator to themain controller 305 and/or other components to allow further action to be taken based on the safety signal or verification indicator. In the illustrated example inFIG. 4 , thesafety controller 303 is in bidirectional communication with themain controller 305 through a transmit (TX) and receive (RX) channel. In some embodiments the TX and RX can be implemented with interfaces such as UART. In other embodiments, the TX/RX communication between thesafety controller 303 and themain controller 305 can be implemented with another SPI separate from the SPI bus that thesafety controller 303 is monitoring and that is between themain controller 305 and subsidiary units, such as themodule monitor 306. In other embodiments thesafety controller 303 and themain controller 305 may be in communication using input output (I/O) pins such as general purpose input output (GPIO) pins, in which case the communication may or may not be bidirectional. For thesafety controller 303 implemented in a battery management system as in the abovementioned examples, thesafety controller 303 can be in communication with themain controller 305 to indicate that the data between themain controller 305 and the module monitor 306 are valid and as expected. In this example, thesafety controller 303 can also be in communication with the switch control circuit 309 to allow the switch control circuit 309 to control theswitches - When the principles disclosed herein are implemented in a battery management system of an electric vehicle, the
safety controller 303 can provide an added layer of data verification to monitor the voltage and temperature of the battery modules 308 (FIG. 3 ). For instance, in the example illustrated inFIG. 4 , the MISO data may include serial data indicating that the battery module (e.g., 308 inFIG. 3 ) coupled to themodule monitor 306 is measured to be at a particular temperature and has a particular measured voltage across the battery module. In this example, thesafety controller 303 can have stored therein appropriate temperature and voltage ranges for a battery module. If the temperature is not within the valid range in this example, thesafety controller 303 may output a safety signal that could trigger disconnecting thebattery string 206 that includes the overheated battery module. In other instances, the temperature of the battery module may be approaching the limits of the acceptable range. In some embodiments, the communication between themain controller 305 and the module monitor 306 can include expected inquiry and response routine of themain controller 305 asking for additional temperature data in such instances. Thesafety controller 303 monitoring the high temperature data communicated from the module monitor 306 to themain controller 305 can observe whether themain controller 305 sends the expected additional inquiry to themodule monitor 306. In this example, thesafety controller 303 will be comparing expected data sequence of the main-to-subsidiary data and determine whether an error has occurred. If themain controller 305 fails to recognize certain alarming situations, such as rising temperature in this example, and fails to communicate expected commands, thesafety controller 303 may indicate an error to trigger disconnecting thebattery string 206 to which themain controller 305 is coupled. - It can be advantageous to implement a safety controller collectively verifying a serial or point-to-point data communication as disclosed herein. Redundant verification often involves fully duplicative redundancy, and in battery management systems, for example, individual constituent components (e.g., multiple module monitors 306 and the main controller 305) of the serial or point-to-point communication system may include respective redundant verification components or circuits. Serial communication safety verification system disclosed herein allows collective verification of subcomponents of the communication system and can reduce cost and complexity while allowing robust and redundant safety control. As implemented in a battery management system, the disclosed herein allows one
safety controller 303 to monitor and verify safety of the multiple battery modules 308 within thebattery string 206. - In the illustrated example, the communication system disclosed herein is implemented in a battery management system (e.g., 160 of
FIG. 3 ) of an electric vehicle. In this example, the safety indicator or command from thesafety controller 303 can be applied to controlling theswitches battery string 206 to and from thepower buses safety controller 303 and a switch command from themain controller 305, and based on the signals from thesafety controller 303 and themain controller 305, the switch control circuit 309 can send signals to control theswitches safety controller 303 to control the battery string switches 210, 212 is only one example application of the disclosed herein. In some embodiments, the switch control circuit 309 can be implemented with a logic gates or circuits, such as an AND gate, which allows thebattery string 206 to connect to thepower buses safety controller 303 and themain controller 305 indicate thebattery string 206 should or could be connected. Based on the selection of the signal polarity of the safe and switch signals, the switch control circuit 309 can be implemented with other logic gates or circuits. The disclosed herein can be applied in a different system other than the battery management system illustrated here where the multiple constituent components of the system are in serial or point-to-point communication with one another and a redundant yet collective verification of the serial or point-to-point communication can be used to control safety of the system. -
FIG. 5 is a flowchart of a communication verification process according to one embodiment. The illustratedprocess 500 can be performed in part by and/or in conjunction with one or more components in the string control unit 304 (FIG. 3 ), such as the safety controller 303 (FIG. 3 ) or any other components in communication with thesafety controller 303. It is to be noted that all or parts ofsteps process 500 inFIG. 5 is only one example embodiment of inventive features disclosed herein. - In
step 502, the safety control process can be initialized, and thesafety controller 303, for example, can be ready to receive the MOSI data communicated from themain controller 305 to themodule monitor 306 and/or the MISO data communicated from the module monitor 306 to themain controller 305. - In
step 504, whether the MOSI data is received by the safety controller (e.g., 303) is determined. If the MOSI data is received, theprocess 500 can proceed to step 508. If the MOSI data is not received, theprocess 500 can remain in standby. - In
step 508, the validity of the MOSI data received is determined. In the battery management system example discussed above, the MOSI data may include commands or inquiries from themain controller 305 to themodule monitor 306. If, for example, invalid or unintelligible serial data is communicated from themain controller 305 to themodule monitor 306, thesafety controller 303 may determine that an error may be occurring in or around themain controller 305. If the MOSI data from themain controller 305 to themodule monitor 306 is valid, theprocess 500 proceeds to step 508. If the MOSI data from themain controller 305 to the module monitor is not valid, theprocess 500 proceeds to step 512. - In
step 512, an error is flagged. In some examples, thesafety controller 303 can send a signal indicating a MOSI data communication error has occurred to themain controller 305. Also, thesafety controller 303 can send signals to other components such as the switch control circuit 309 to allow further safety action to take place, such as disconnecting thebattery string 206 from thepower buses - In
step 516, whether the MOSI data received matches expected data is determined. In the battery management system example discussed above, the MOSI data may include commands or inquiries from themain controller 305 to themodule monitor 306, and such commands or inquiries may take a certain expected form and/or sequence. In some embodiments, themain controller 305 may be expected to ask for routine temperature and voltage data of the battery modules 308 in regular situations while it may be expected to ask specific targeted or more frequent temperature or voltage data in a more urgent situation (e.g., rising temperature still within an acceptable range). Thesafety controller 303 implemented as disclosed herein can be provided with what is expected of the main controller 309 to communicate to themodule monitor 306, and thesafety controller 303 may compare whether the MOSI data communicated from themain controller 305 to the module monitor 306 matches the expected sequence. If the MOSI data matches the expected sequence, theprocess 500 goes back to the initial standby mode ready to receive the MOSI and MISO data. If the MOSI data does not match the expected sequence, theprocess 500 goes to step 512 to flag an error. - In
step 506, whether the MISO data is received by the safety controller (e.g., 303) is determined. If the MISO data is received, theprocess 500 can proceed to step 510. If the MISO data is not received, theprocess 500 can remain in standby. - In
step 510, the validity of the MISO data received is determined. In the battery management system example discussed above, the MISO data may include temperature and voltage data regarding the respective battery modules 308 (FIG. 3 ). The validity of the MISO data can be determined in various ways. For example, the content of the MISO data, such as the module voltage and temperature level, can be outside of the acceptable range, which can render the MISO data invalid. In another example the form of the MISO data can be invalid or unintelligible. Depending on various implementations of the disclosed herein the data validity regarding the form and substance can be determined based on, for example, stored and/or accessible information by thesafety controller 303. If the MISO data from the module monitor 306 to themain controller 305 are valid, theprocess 500 proceeds to step 518. If the MISO data from the module monitor 306 to themain controller 305 are not valid, theprocess 500 proceeds to step 514. - In
step 514, an error is flagged. In some examples, thesafety controller 303 can send a signal indicating a MISO data communication error has occurred to themain controller 305. Also, thesafety controller 303 can send signals to other components such as the switch control circuit 309 to allow further safety action to take place, such as disconnecting thebattery string 206 from thepower buses - In
step 518, whether the MISO data received matches expected data is determined. In the battery management system example discussed above, themodule monitor 306 and themain controller 305 can be in serial or point-to-point communication with each other based on certain routines and protocols. In some instances, themain controller 305 can request the module monitor 306 to send certain data of the battery module 308 to which it is coupled, and themodule monitor 306 is expected to respond accordingly. If, for example, themodule monitor 306 responds to temperature data inquiry from themain controller 305 with valid yet unrelated data, thesafety controller 303 may compare the actual MISO data and the expected MISO data to determine whether the actual data matches the expected sequence. If the MISO data matches the expected sequence, theprocess 500 goes back to the initial standby mode ready to receive the MOSI and MISO data. If the MISO data does not match the expected sequence, theprocess 500 proceeds to step 514. - In some embodiments, the main-to-subsidiary data verification (i.e., the series of
steps steps steps - The foregoing description and claims may refer to elements or features as being “connected” or “coupled” together. As used herein, unless expressly stated otherwise, “connected” means that one element/feature is directly or indirectly connected to another element/feature, and not necessarily mechanically. Likewise, unless expressly stated otherwise, “coupled” means that one element/feature is directly or indirectly coupled to another element/feature, and not necessarily mechanically. Thus, although the various schematics shown in the Figures depict example arrangements of elements and components, additional intervening elements, devices, features, or components may be present in an actual embodiment (assuming that the functionality of the depicted circuits is not adversely affected).
- As used herein, the term “determining” encompasses a wide variety of actions. For example, “determining” may include calculating, computing, processing, deriving, investigating, looking up (e.g., looking up in a table, a database or another data structure), ascertaining and the like. Also, “determining” may include receiving (e.g., receiving information), accessing (e.g., accessing data in a memory) and the like. Also, “determining” may include resolving, selecting, choosing, establishing and the like. Further, a “channel width” as used herein may encompass or may also be referred to as a bandwidth in certain aspects.
- The various operations of methods described above may be performed by any suitable means capable of performing the operations, such as various hardware and/or software component(s), circuits, and/or module(s). Generally, any operations illustrated in the Figures may be performed by corresponding functional means capable of performing the operations.
- The various illustrative logical blocks, modules, and circuits described in connection with the present disclosure may be implemented or performed with a general purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array signal (FPGA) or other programmable logic device (PLD), discrete gate or transistor logic, discrete hardware components or any combination thereof designed to perform the functions described herein. A general purpose processor may be a microprocessor, but in the alternative, the processor may be any commercially available processor, controller, microcontroller or state machine. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.
- The methods disclosed herein comprise one or more steps or actions for achieving the described method. The method steps and/or actions may be interchanged with one another without departing from the scope of the claims. In other words, unless a specific order of steps or actions is specified, the order and/or use of specific steps and/or actions may be modified without departing from the scope of the claims.
- It is to be understood that the implementations are not limited to the precise configuration and components illustrated above. Various modifications, changes and variations may be made in the arrangement, operation and details of the methods and apparatus described above without departing from the scope of the implementations.
- Although this invention has been described in terms of certain embodiments, other embodiments that are apparent to those of ordinary skill in the art, including embodiments that do not provide all of the features and advantages set forth herein, are also within the scope of this invention. Moreover, the various embodiments described above can be combined to provide further embodiments. In addition, certain features shown in the context of one embodiment can be incorporated into other embodiments as well.
Claims (12)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/430,396 US10585828B2 (en) | 2015-10-30 | 2017-02-10 | Serial communication safety controller |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562249136P | 2015-10-30 | 2015-10-30 | |
US201562261229P | 2015-11-30 | 2015-11-30 | |
US201662298316P | 2016-02-22 | 2016-02-22 | |
US15/157,258 US9592738B1 (en) | 2015-10-30 | 2016-05-17 | Serial communication safety controller |
US15/430,396 US10585828B2 (en) | 2015-10-30 | 2017-02-10 | Serial communication safety controller |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/157,258 Division US9592738B1 (en) | 2015-10-30 | 2016-05-17 | Serial communication safety controller |
Publications (2)
Publication Number | Publication Date |
---|---|
US20170300439A1 true US20170300439A1 (en) | 2017-10-19 |
US10585828B2 US10585828B2 (en) | 2020-03-10 |
Family
ID=58227665
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/157,258 Active US9592738B1 (en) | 2015-10-30 | 2016-05-17 | Serial communication safety controller |
US15/430,396 Active 2037-03-16 US10585828B2 (en) | 2015-10-30 | 2017-02-10 | Serial communication safety controller |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/157,258 Active US9592738B1 (en) | 2015-10-30 | 2016-05-17 | Serial communication safety controller |
Country Status (3)
Country | Link |
---|---|
US (2) | US9592738B1 (en) |
CN (1) | CN108476156B (en) |
WO (1) | WO2017074783A1 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200254900A1 (en) * | 2019-02-11 | 2020-08-13 | Ge Global Sourcing Llc | Vehicle electric supply system |
DE102019209072A1 (en) * | 2019-06-24 | 2020-12-24 | Volkswagen Aktiengesellschaft | Battery control arrangement and method for operating a battery control arrangement |
CN113173102A (en) * | 2020-01-27 | 2021-07-27 | 通用汽车环球科技运作有限责任公司 | Two-stage method for thermal runaway detection |
US20220348110A1 (en) * | 2021-04-28 | 2022-11-03 | Infineon Technologies Ag | Monitoring device for a battery module, battery system and method for battery system |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107870846B (en) * | 2016-09-23 | 2021-04-02 | 伊姆西Ip控股有限责任公司 | Fault element indication method, device and system |
CN107128191B (en) * | 2017-05-05 | 2019-06-18 | 郑州轻工业学院 | A kind of electric car lithium-ion-power cell group voltage synchronous Acquisition Circuit and its control method |
CN107554453B (en) * | 2017-09-21 | 2019-02-12 | 南京瑞贻电子科技有限公司 | A kind of automobilism circuit start and stop integrated controller and monitoring and managing method |
US10730402B2 (en) * | 2017-11-16 | 2020-08-04 | Lg Chem, Ltd. | Electrical control system |
US10811869B2 (en) | 2018-04-17 | 2020-10-20 | Proterra, Inc. | Overcurrent protection for battery systems |
US10826782B2 (en) * | 2018-10-30 | 2020-11-03 | Ge Aviation Systems Limited | Method and apparatus for initializing a controller module |
CN109308799A (en) * | 2018-11-13 | 2019-02-05 | 延锋伟世通电子科技(上海)有限公司 | The wired and wireless compatible means of communication and device for battery core monitoring device |
CN115833192A (en) * | 2021-09-16 | 2023-03-21 | 台达电子企业管理(上海)有限公司 | Energy storage system |
US20230350840A1 (en) * | 2022-04-28 | 2023-11-02 | Stmicroelectronics S.R.I. | High speed data transmission in battery management systems with isolated spi interface |
US11949080B2 (en) | 2022-09-06 | 2024-04-02 | Harbinger Motors Inc. | Battery packs with safety features and methods of installing such packs on truck frames |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5726541A (en) * | 1992-04-28 | 1998-03-10 | Dynamic Controls Limited | Failure detection and communication system for electrically driven vehicles |
US20110221392A1 (en) * | 2010-03-11 | 2011-09-15 | Ford Global Technologies, Llc | Vehicle and method of diagnosing battery condition of same |
US20120235613A1 (en) * | 2010-03-15 | 2012-09-20 | Fengtai Huang | Backup power for overvoltage protection for electric vehicle |
US20130022191A1 (en) * | 2011-07-20 | 2013-01-24 | Zvi Or-Bach | Systems and methods for visual presentation and selection of ivr menu |
US20150027688A1 (en) * | 2007-10-23 | 2015-01-29 | Weatherford/Lamb, Inc. | Interlocking low profile rotating control device |
US20150168477A1 (en) * | 2012-05-07 | 2015-06-18 | Tesla Motors, Inc. | Wire break detection in redundant communications |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20070103897A (en) * | 2006-04-20 | 2007-10-25 | 넥스콘 테크놀러지 주식회사 | A li-ion or li-polymer battery management system for a hybrid electric vehicle |
JP5127383B2 (en) * | 2007-09-28 | 2013-01-23 | 株式会社日立製作所 | Battery integrated circuit and vehicle power supply system using the battery integrated circuit |
US20090123814A1 (en) * | 2007-10-09 | 2009-05-14 | Mason Cabot | Power source and method of managing a power source |
DE102008052986A1 (en) * | 2008-10-23 | 2010-04-29 | Li-Tec Battery Gmbh | Battery management system for an operating according to galvanic principles electrical device, such as a lithium-ion cell |
US8089248B2 (en) * | 2009-04-09 | 2012-01-03 | Ford Global Technologies, Llc | Battery monitoring and control system and method of use including redundant secondary communication interface |
US9577443B2 (en) * | 2010-06-03 | 2017-02-21 | C&C Power, Inc. | Battery system and management method |
EP2612395B1 (en) * | 2010-09-02 | 2020-04-01 | Proterra Inc. | System and methods for battery management |
US10365332B2 (en) * | 2012-11-02 | 2019-07-30 | Analog Devices Global Unlimited Company | System and method to reduce data handling on lithium ion battery monitors |
US10788539B2 (en) * | 2013-04-26 | 2020-09-29 | Hitachi Automotive Systems, Ltd. | Battery monitoring device and battery system using same |
US9140759B2 (en) * | 2013-11-12 | 2015-09-22 | Ford Global Technologies, Llc | Electric vehicle battery pack voltage monitoring |
US9625530B2 (en) * | 2014-03-26 | 2017-04-18 | Ford Global Technologies, Llc | Resistance based method and system to assess vehicle component integrity |
US20160276854A1 (en) * | 2015-03-16 | 2016-09-22 | Thunder Power Hong Kong Ltd. | Battery pack and connecting circuits of battery modules |
CN104882931B (en) * | 2015-05-27 | 2017-01-25 | 沈阳航空航天大学 | Aviation power supply battery management system and method |
-
2016
- 2016-05-17 US US15/157,258 patent/US9592738B1/en active Active
- 2016-10-20 CN CN201680076491.5A patent/CN108476156B/en active Active
- 2016-10-20 WO PCT/US2016/057861 patent/WO2017074783A1/en active Application Filing
-
2017
- 2017-02-10 US US15/430,396 patent/US10585828B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5726541A (en) * | 1992-04-28 | 1998-03-10 | Dynamic Controls Limited | Failure detection and communication system for electrically driven vehicles |
US20150027688A1 (en) * | 2007-10-23 | 2015-01-29 | Weatherford/Lamb, Inc. | Interlocking low profile rotating control device |
US20110221392A1 (en) * | 2010-03-11 | 2011-09-15 | Ford Global Technologies, Llc | Vehicle and method of diagnosing battery condition of same |
US20120235613A1 (en) * | 2010-03-15 | 2012-09-20 | Fengtai Huang | Backup power for overvoltage protection for electric vehicle |
US20130022191A1 (en) * | 2011-07-20 | 2013-01-24 | Zvi Or-Bach | Systems and methods for visual presentation and selection of ivr menu |
US20150168477A1 (en) * | 2012-05-07 | 2015-06-18 | Tesla Motors, Inc. | Wire break detection in redundant communications |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200254900A1 (en) * | 2019-02-11 | 2020-08-13 | Ge Global Sourcing Llc | Vehicle electric supply system |
DE102019209072A1 (en) * | 2019-06-24 | 2020-12-24 | Volkswagen Aktiengesellschaft | Battery control arrangement and method for operating a battery control arrangement |
CN113173102A (en) * | 2020-01-27 | 2021-07-27 | 通用汽车环球科技运作有限责任公司 | Two-stage method for thermal runaway detection |
US20210234209A1 (en) * | 2020-01-27 | 2021-07-29 | GM Global Technology Operations LLC | Two-level method for thermal runaway detection |
US11830990B2 (en) * | 2020-01-27 | 2023-11-28 | GM Global Technology Operations LLC | Two-level method for thermal runaway detection |
US20220348110A1 (en) * | 2021-04-28 | 2022-11-03 | Infineon Technologies Ag | Monitoring device for a battery module, battery system and method for battery system |
Also Published As
Publication number | Publication date |
---|---|
US9592738B1 (en) | 2017-03-14 |
US10585828B2 (en) | 2020-03-10 |
CN108476156A (en) | 2018-08-31 |
CN108476156B (en) | 2021-11-19 |
WO2017074783A1 (en) | 2017-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10585828B2 (en) | Serial communication safety controller | |
US10538170B2 (en) | Battery module communication link connection with improved sealing | |
JP5503924B2 (en) | Multi-battery battery status monitoring unit | |
JP7249129B2 (en) | Communication method between master controller and slave controller, slave controller therefor, and battery management system using same | |
US9728993B2 (en) | Battery management system and battery system | |
US10421367B2 (en) | Electric vehicle battery test | |
US10259337B2 (en) | Electric vehicle battery charge and discharge management | |
EP3557687A1 (en) | Battery management unit and battery pack including same | |
JP5133926B2 (en) | Battery system for vehicles | |
WO2014045666A1 (en) | Battery pack and electric vehicle | |
US9840157B2 (en) | Battery management system and battery system | |
EP2221942A2 (en) | Battery management system | |
JP2016197115A (en) | Battery system and battery monitoring device | |
US10882403B2 (en) | Vehicle high/low voltage systems isolation testing | |
CN106536261A (en) | Battery system and method for operating same | |
US10070202B2 (en) | Electromechanical adapter for communicating between interfaces | |
CN106053975B (en) | Isolation testing of vehicle high voltage systems | |
JP2017070024A (en) | Battery monitoring device | |
JP2015156793A (en) | Battery system and battery monitoring device | |
US11201378B2 (en) | Battery monitor protection | |
CN111600343B (en) | Method for controlling cell balance and battery management system | |
US10466307B2 (en) | Method and apparatus for measuring voltage of battery pack | |
US20230204683A1 (en) | Battery management system and power supply device | |
CN205753458U (en) | Electronic cell Sensors & Application are in the electric energy management system of vehicle | |
JP2020021637A (en) | Battery system monitoring device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
AS | Assignment |
Owner name: SEASON SMART LIMITED, VIRGIN ISLANDS, BRITISH Free format text: SECURITY INTEREST;ASSIGNOR:FARADAY&FUTURE INC.;REEL/FRAME:044969/0023 Effective date: 20171201 |
|
AS | Assignment |
Owner name: FARADAY&FUTURE INC., CALIFORNIA Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:SEASON SMART LIMITED;REEL/FRAME:048069/0704 Effective date: 20181231 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
AS | Assignment |
Owner name: BIRCH LAKE FUND MANAGEMENT, LP, ILLINOIS Free format text: SECURITY INTEREST;ASSIGNORS:CITY OF SKY LIMITED;EAGLE PROP HOLDCO LLC;FARADAY FUTURE LLC;AND OTHERS;REEL/FRAME:050234/0069 Effective date: 20190429 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT RECEIVED |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
AS | Assignment |
Owner name: ROYOD LLC, AS SUCCESSOR AGENT, CALIFORNIA Free format text: ACKNOWLEDGEMENT OF SUCCESSOR COLLATERAL AGENT UNDER INTELLECTUAL PROPERTY SECURITY AGREEMENT;ASSIGNOR:BIRCH LAKE FUND MANAGEMENT, LP, AS RETIRING AGENT;REEL/FRAME:052102/0452 Effective date: 20200227 |
|
AS | Assignment |
Owner name: BIRCH LAKE FUND MANAGEMENT, LP, ILLINOIS Free format text: SECURITY INTEREST;ASSIGNOR:ROYOD LLC;REEL/FRAME:054076/0157 Effective date: 20201009 |
|
AS | Assignment |
Owner name: ARES CAPITAL CORPORATION, AS SUCCESSOR AGENT, NEW YORK Free format text: ACKNOWLEDGEMENT OF SUCCESSOR COLLATERAL AGENT UNDER INTELLECTUAL PROPERTY SECURITY AGREEMENT;ASSIGNOR:BIRCH LAKE FUND MANAGEMENT, LP, AS RETIRING AGENT;REEL/FRAME:057019/0140 Effective date: 20210721 |
|
AS | Assignment |
Owner name: FARADAY SPE, LLC, CALIFORNIA Free format text: RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 050234/0069;ASSIGNOR:ARES CAPITAL CORPORATION, AS SUCCESSOR COLLATERAL AGENT;REEL/FRAME:060314/0263 Effective date: 20220607 Owner name: SMART TECHNOLOGY HOLDINGS LTD., CALIFORNIA Free format text: RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 050234/0069;ASSIGNOR:ARES CAPITAL CORPORATION, AS SUCCESSOR COLLATERAL AGENT;REEL/FRAME:060314/0263 Effective date: 20220607 Owner name: SMART KING LTD., CALIFORNIA Free format text: RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 050234/0069;ASSIGNOR:ARES CAPITAL CORPORATION, AS SUCCESSOR COLLATERAL AGENT;REEL/FRAME:060314/0263 Effective date: 20220607 Owner name: ROBIN PROP HOLDCO LLC, CALIFORNIA Free format text: RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 050234/0069;ASSIGNOR:ARES CAPITAL CORPORATION, AS SUCCESSOR COLLATERAL AGENT;REEL/FRAME:060314/0263 Effective date: 20220607 Owner name: FF MANUFACTURING LLC, CALIFORNIA Free format text: RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 050234/0069;ASSIGNOR:ARES CAPITAL CORPORATION, AS SUCCESSOR COLLATERAL AGENT;REEL/FRAME:060314/0263 Effective date: 20220607 Owner name: FF INC., CALIFORNIA Free format text: RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 050234/0069;ASSIGNOR:ARES CAPITAL CORPORATION, AS SUCCESSOR COLLATERAL AGENT;REEL/FRAME:060314/0263 Effective date: 20220607 Owner name: FF HONG KONG HOLDING LIMITED, CALIFORNIA Free format text: RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 050234/0069;ASSIGNOR:ARES CAPITAL CORPORATION, AS SUCCESSOR COLLATERAL AGENT;REEL/FRAME:060314/0263 Effective date: 20220607 Owner name: FF EQUIPMENT LLC, CALIFORNIA Free format text: RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 050234/0069;ASSIGNOR:ARES CAPITAL CORPORATION, AS SUCCESSOR COLLATERAL AGENT;REEL/FRAME:060314/0263 Effective date: 20220607 Owner name: FARADAY FUTURE LLC, CALIFORNIA Free format text: RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 050234/0069;ASSIGNOR:ARES CAPITAL CORPORATION, AS SUCCESSOR COLLATERAL AGENT;REEL/FRAME:060314/0263 Effective date: 20220607 Owner name: FARADAY & FUTURE INC., CALIFORNIA Free format text: RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 050234/0069;ASSIGNOR:ARES CAPITAL CORPORATION, AS SUCCESSOR COLLATERAL AGENT;REEL/FRAME:060314/0263 Effective date: 20220607 Owner name: EAGLE PROP HOLDCO LLC, CALIFORNIA Free format text: RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 050234/0069;ASSIGNOR:ARES CAPITAL CORPORATION, AS SUCCESSOR COLLATERAL AGENT;REEL/FRAME:060314/0263 Effective date: 20220607 Owner name: CITY OF SKY LIMITED, CALIFORNIA Free format text: RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 050234/0069;ASSIGNOR:ARES CAPITAL CORPORATION, AS SUCCESSOR COLLATERAL AGENT;REEL/FRAME:060314/0263 Effective date: 20220607 |
|
AS | Assignment |
Owner name: FF SIMPLICY VENTURES LLC, NEW YORK Free format text: SECURITY INTEREST;ASSIGNOR:FARADAY&FUTURE INC.;REEL/FRAME:061176/0756 Effective date: 20220814 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |