Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
DYNAMIC BATTERY LOADING FOR ELECTRIC VEHICLES
Document Type and Number:
WIPO Patent Application WO/2017/131988
Kind Code:
A1
Abstract:
A system for dynamic battery loading for electric vehicles includes an electric motor to displace a vehicle. A first battery stores a first electric power charge and a second battery stores a second electric power charge. A controller dynamically loads or couples the first battery or the second battery to deliver the first electric power charge or the second electric power charge, respectively, to the electric motor based at least in part on the power signal, a location of the first battery, or a location of the second battery within the vehicle.

Inventors:
PATANA TERO (US)
Application Number:
PCT/US2017/013629
Publication Date:
August 03, 2017
Filing Date:
January 16, 2017
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
MICROSOFT TECHNOLOGY LICENSING LLC (US)
International Classes:
B60K6/28; B60L11/18; B60L15/20
Domestic Patent References:
WO2009108565A22009-09-03
Foreign References:
EP2562030A22013-02-27
US20150283913A12015-10-08
US7940028B12011-05-10
Other References:
None
Attorney, Agent or Firm:
MINHAS, Sandip et al. (US)
Download PDF:
Claims:
Claims

1. A system, comprising:

an electric motor to displace a vehicle;

a first battery to store a first electric power charge and located at a first location in the vehicle;

a second battery to store a second electric power charge and located at a second location in the vehicle; and

a controller to dynamically load the first battery or the second battery to deliver the first electric power charge or the second electric power charge, respectively, to the electric motor based at least in part on the first location, the second location, a power signal that indicates an electric power needed by the electric motor to displace the vehicle, or a combination thereof.

2. The system of claim 1,

wherein the first location is different from the second location; and

wherein the controller is further configured to dynamically load the first battery to the electric motor based at least in part on a distance from the electric motor to the first location.

3. The system of claim 1,

further comprising a plurality of sensing subsystems configured to generate a corresponding plurality of sensing subsystem control signals;

wherein the controller is further configured to dynamically load the first battery or the second battery to the electric motor based at least in part on at least one of the plurality of sensing subsystem control signals.

4. The system of claim 3,

wherein the plurality of sensing subsystem control signals includes an acceleration signal representative of an acceleration of the vehicle;

wherein the controller is further configured to dynamically load the first battery or the second battery to the electric motor based at least in part on the acceleration signal; and

wherein the controller is further configured to dynamically load the first battery or the second battery when the acceleration signal exceeds a predetermined threshold.

5. The system of claim 4,

wherein the plurality of sensing subsystem control signals includes a first battery state of charge signal representative of a first battery state of charge for the first battery and a second battery state of charge signal representative of a second battery state of charge for the second battery; and

wherein the controller is further configured to dynamically load the first battery or the second battery to the electric motor based at least in part on the first battery state of charge signal or the second battery state of charge signal.

6. The system of claim 3,

wherein the plurality of sensing subsystem control signals includes a temperature signal representative of an ambient temperature; and

wherein the controller is further configured to dynamically load the first battery or the second battery to the electric motor based at least in part on the temperature signal.

7. The system of claim 3,

wherein the plurality of sensing subsystem control signals includes road condition signal representative of a road condition on which the vehicle travels; and

wherein the controller is further configured to dynamically load the first battery or the second battery to the electric motor based at least in part on the road condition signal.

8. A method, comprising:

storing a first electric power charge in a first battery;

storing a second electric power change in a second battery;

receiving a power signal representative of an electric power needed by an electric motor to displace a vehicle; and

selectively loading the first battery or the second battery to deliver the first electric power charge or the second electric power charge, respectively, to the electric motor based at least in part on the power signal.

9. The method of claim 8, further comprising:

identifying a first location of the first battery in the vehicle;

identifying a second location of the second battery in the vehicle; and

selectively loading the first battery or the second battery to deliver the first electric power charge or the second electric power charge, respectively, to the electric motor based at least in part on the first location or the second location.

10. The method of claim 8, further comprising:

determining a first distance from the first location to the motor;

determining a second distance from the second location to the motor; and selectively loading the first battery or the second battery to deliver the first electric power charge or the second electric power charge, respectively, to the electric motor based at least in part on the first distance or the second distance.

11. The method of claim 10,

generating a plurality of sensing subsystem control signals using a corresponding plurality of sensing control subsystems;

selectively loading the first battery or the second battery to the electric motor based at least in part on at least one of the plurality of sensing subsystem control signals;

generating an instantaneous power requirement signal representative of an instantaneous power requirement of the vehicle; and

selectively loading the first battery or the second battery to the electric motor based at least in part on the instantaneous power requirement signal.

12. The method of claim 11,

selectively loading the first battery or the second battery when the instantaneous power requirement signal exceeds a predetermined threshold.

13. The method of claim 12,

generating a first battery state of charge signal representative of a first battery state of charge for the first battery;

generating a second battery state of charge signal representative of a second battery state of charge for the second battery; and

selectively loading the first battery or the second battery to the electric motor based at least in part on the first battery state of charge signal or the second battery state of charge signal.

14. A battery control system for an electric vehicle, comprising:

a plurality of batteries each configured to store a corresponding electric power charge;

a controller to selectively load at least one of the plurality of batteries to deliver the corresponding electric power charge to an electric motor based at least in part on a power signal and at least one of a plurality of battery location signals corresponding to the plurality of batteries;

wherein the power signal is representative of a power requirement of the electric motor to propel the electric vehicle; and

wherein the plurality of battery location signals identifies a location of each of the plurality of batteries.

15. The battery control system of claim 14,

wherein the controller is further configured to receive a plurality of sensing subsystem control signals generated using a corresponding plurality of sensing control subsystems; and

wherein the controller is further configured to selectively load the at least one of the plurality of batteries to the electric motor based at least in part on at least one of the plurality of sensing subsystem control signals.

Description:
DYNAMIC BATTERY LOADING FOR ELECTRIC VEHICLES

Background

[0001] New vehicle designs may be powered, at least part of the time, with electrical energy. These new vehicle designs may include electric vehicles (EVs) that rely solely on electrical energy— typically from batteries— to power electric motors that supply torque to a set of drive wheels. Hybrid electric vehicles (HEVs) may alternately use an electric motor or an internal combustion gasoline engine to propel the vehicle. HEVs may switch between the electric motor and the internal combustion gasoline engine depending on a variety of factors or conditions including desired fuel economy.

[0002] EVs and HEVs include one or more rechargeable high voltage batteries to store and deliver the substantial electrical energy necessary to drive the electric motor that, in turn, drives the vehicle's wheels to displace the vehicle.

Brief Drawings Description

[0003] The present disclosure describes various embodiments that may be understood and fully appreciated in conjunction with the following drawings:

Fig. 1 A diagrams an embodiment of a system to dynamically load or couple a battery to an electric motor according to the present disclosure;

Fig. IB diagrams another embodiment of a system to dynamically load or couple a battery to an electric motor according to the present disclosure;

Fig. 2 diagrams an embodiment of a sensing subsystem according to the present disclosure;

Fig. 3 diagrams an embodiment of a method for dynamically loading or coupling a battery to an electric motor according to the present disclosure; and

Fig. 4 diagrams an embodiment of controller according to the present disclosure.

Detailed Description

[0004] The present disclosure describes embodiments with reference to the drawing figures listed above. Persons of ordinary skill in the art will appreciate that the description and figures illustrate rather than limit the disclosure and that, in general, the figures are not drawn to scale for clarity of presentation. Such skilled persons will also realize that many more embodiments are possible by applying the inventive principles contained herein and that such embodiments fall within the scope of the disclosure which is not to be limited except by the claims. [0005] The present disclosure may interchangeably use the terms "battery," "cell," "battery cell," and "battery pack." The terms "battery," "cell," "battery cell," or "battery pack" may refer to a single battery or to one or more individual batteries that are electrically interconnected to achieve the desired voltage and capacity for a particular application, the individual batteries typically contained within a single piece or multi-piece housing. The present disclosure may interchangeably use the terms "power system" and "battery system" to refer to an electrical energy storage system that has the capability to be charged and discharged such as a battery or battery pack.

[0006] The present disclosure may interchangeably use the terms "load," "couple," and "connect" to indicate an electrical coupling between e.g., a battery and an electrical motor as explained in more detail below.

[0007] Fig. 1A diagrams an embodiment of a system 100 to dynamically load or couple a battery to an electric motor 102 according to the present disclosure. Referring to Fig. 1 A, system 100 may refer to any electric vehicle system including either an all- electric vehicle (EV) or a hybrid electric vehicle (HEV), plug in or otherwise, that uses multiple propulsion sources, e.g., both an electric motor and an internal combustion gasoline engine.

[0008] System 100 may include an electric motor 102 that may convert electrical energy received by at least one of batteries 106 A, 106B, or 106C into mechanical energy to propel wheels 103 of vehicle 101. Electric motor 102 may be any kind of electric motor operating on any known physical principles known to a person of ordinary skill in the art, e.g., magnetic, electrostatic, piezoelectric, or the like.

[0009] System 100 may include a single battery, e.g., battery 106A, or a plurality of batteries, e.g., batteries 106A, 106B, and 106C depending on many factors including cost, ease of manufacturing, ease of access for charging, ease of service, ease of replacement, battery capacity, battery size, vehicle size, vehicle weight, vehicle range, vehicle wiring, and the like. Batteries 106A, 106B, or 106C may each be located at a different location within vehicle 101. For example, in one embodiment, battery 106 A may located at a forward location within vehicle 101 while batteries 106B and 106C may be located at a rear and center location, respectively, within vehicle 101. Battery 106B may be located in close proximity to battery 106C and batteries 106B and 106C may be located relatively distant from battery 106A within vehicle 101. A person of ordinary skill in the art should understand that the location of batteries 106 A, 106B, or 106C within vehicle 101 may depend on many factors including cost, ease of manufacturing, ease of access for charging, ease of service, ease of replacement, battery capacity, battery size, vehicle size, vehicle weight, vehicle range, vehicle wiring, and the like.

[0010] Batteries 106A, 106B, or 106C may provide electrical energy over sustained time periods and may be characterized by their relatively high power-to-weight ratio, energy-to-weight ratio, and energy density. Lighter batteries may reduce the weight of vehicle 101 and generally improve performance in some instances. Batteries 106A, 106B, and 106C may include any battery type known to a person of ordinary skill in the art including lead-acid, nickel metal hydride, sodium, lithium ion, and the like.

[0011] Batteries 106A, 106B, or 106C may include corresponding power modules 105 A, 105B, or 105C that load, couple, connect, or otherwise provide the high current electrical power sourced from the batteries 106 A, 106B, or 106C to electric motor 102 in response to control signals 108 from controller 104. To do so, power modules 105A, 105B, or 105C may include any number or type of relays or switches as is well known to a person of ordinary skill in the art. In an embodiment, power modules 105 A, 105B, or 105C may be part of each battery 106A, 106B, or 106C as shown in Figures 1A and IB. In another embodiment, a centralized single power module (not shown separately from power modules 105 A, 105B, or 105C) may be coupled to batteries 106A, 106B, or 106C and to electric motor 102 to load, couple, connect, or otherwise provide the high current electrical power sourced from the batteries 106A, 106B, or 106C to electric motor 102.

[0012] Batteries 106A, 106B, or 106C may be recharged in any manner known to a person of ordinary skill in the art. In an embodiment, batteries 106A, 106B, or 106C may be recharged using a charging outlet connected to the power grid accessed either at home or at a recharging station for a fee. Batteries 106 A, 106B, or 106C may take a

predetermined amount of time, e.g., several hours, to recharge fully depending on a variety of factors including power delivered to the charging outlet. For example, a household outlet with a 110 volt supply may deliver 1.5 kilowatts while a commercial outlet with a 240 volt supply may deliver 3 kilowatts, which will charge batteries 106 A, 106B, or 106C in substantially less time than it would take to charge batteries 106A, 106B, or 106C using a l lO volt household outlet. Batteries 106A, 106B, or 106C may be recharged using any coupling mechanism known to a person of ordinary skill in the art, e.g., inductive coupling or conductive coupling.

[0013] A controller 104 may dynamically or selectively load or couple at least one of batteries 106 A, 106B, or 106C to electric motor 102 based at least in part on sensing signals 108A, 108B, 108C, or 108D. Sensing subsystems 11 OA, HOB, HOC, or HOD may include sensors and other electronic or logic circuitry to determine a variety of operating conditions for system 100 as explained in more detail below. In an embodiment, controller 104 may dynamically select battery 106 A to deliver electrical energy to electric motor 102 based on receiving a sensing signal 108 A that represents certain operating conditions, e.g., a first level of vehicle acceleration. Controller 104 may then dynamically change the selection of battery 106 A to battery 106B to delivery electrical energy to electric motor 102 based on receiving sensing signal 108 A that represents a change in operating conditions, e.g., a second level of vehicle acceleration. Controller 104 may dynamically or selectively load or couple batteries 106 A, 106B, or 106C to electric motor 102 based on any single sensing signal 108 A, 108B, 108C, or 108D, or any combination of sensing signals 108 A, 108B, 108C, or 108D. In an embodiment, controller 104 may dynamically or selectively load or couple batteries 106 A, 106B, or 106C to electric motor 102 based on signals received directly from electric motor 102.

[0014] In an embodiment, controller 104 may generate control signals 109A, 109B, or 109C and provide control signals control signals 109A, 109B, or 109C to power modules 105 A, 105B, and 105C in batteries 106A, 106B, and 106C, respectively. Doing so may enable power modules 105 A, 105B, or 105C to load or couple electrical energy from corresponding batteries 106A, 106B, or 106C to electric motor 102 based on sensing signals 108 A, 108B, 108C, or 108D.

[0015] Controller 104 may dynamically or selectively load or couple batteries 106A, 106B, or 106C to electric motor 102 to account for near instantaneous changes in operating conditions as reflected in near instantaneous changes to the any of the sensing signals 108 A, 108B, 108C, or 108D. Controller 104 may monitor sensing signals 108 A, 108B, 108C, or 108D to detect operating condition changes in near instantaneous manner, e.g., synchronized to a system clock or other high frequency circuitry, or at predetermined periods.

[0016] Controller 104 may dynamically or selectively load or couple a single one of batteries 106A, 106B, or 106C or any combination of batteries 106A, 106B, or 106C based at least in part on any one or a combination of sensing signals 108 A, 108B, 108C, or 108D.

[0017] Fig. IB diagrams another embodiment of a system 100 to dynamically load or couple a battery to electric motor 102 according to the present embodiment. Like reference numerals refer to like structures or elements in the drawings. Referring to Figs. 1 A and IB, electric motor 102 may drive a front propulsion system 1 12A, a rear propulsion system 112B, or a combination of front and rear propulsion systems 112A and 112B, respectively, depending on a variety of operating conditions for vehicle 101. For example, under certain road conditions, it may be desirable for electric motor 102 to propel vehicle 100 using only front propulsion system 112A. In this case, controller 104 may dynamically or selectively load or couple battery 106A or battery 106C, or both batteries 106 A and 106C to provide electrical energy to electric motor 102 to drive front propulsion system 112A. Under certain other road conditions, it may be desirable for electric motor 102 to propel vehicle 100 using both front propulsion system 112A and rear propulsion system 112B. In this case, controller 104 may dynamically or selectively load or couple battery 106 A or battery 106C, or both batteries 106 A and 106C, to provide electrical energy to electric motor 102 to drive both front propulsion system 112A and rear propulsion system 1 12B. Controller 104 may dynamically or selectively load or couple batteries 106A, 106B, or 106C based at least in part on sensing control signals 108 A, 108B, 108C, or 108D generated by sensing subsystems 11 OA, HOB, HOC, and HOD, respectively.

[0018] Vehicle 101 may include sensing subsystems 110A, HOB, 1 IOC, and 110D to generate sensing control signals 108 A, 108B, 108C, and 108D that are representative of any number or type of operating condition for vehicle 101. Vehicle 101 is shown with four sensing subsystems 110A, HOB, 1 IOC, and HOD but a person of ordinary skill in the art should understand that this is for simplicity only and that any number of sensing subsystems may exist.

[0019] Fig. 2 diagrams an embodiment of a sensing subsystem 200 according to the present disclosure. Referring to Figs. 1 A, IB, and 2, sensing subsystem 200 may include a sensing circuit 204 to sense an operating condition 202 of vehicle 101, e.g., acceleration, and a sensing control system 206 to generate a sensing control signal 208 based at least in part on the operating condition 202. In an embodiment, sensing circuit 204 may include sensors and other circuitry to sense or determine operating condition 202. A person of ordinary skill in the art should recognize that sensing circuit 204 may include any number or type of sensors or other circuitry to determine operation condition 202, including temperature sensors, acceleration sensors, cameras, collision avoidance systems, parking or proximity sensors, global positioning systems, throttle position sensors, battery charge circuitry, tire pressure and wear sensors, fluid level sensors, and the like. A person of ordinary skill in the art should recognize that operating condition 202 of vehicle 101 may include any known operating condition for a vehicle, e.g., speed, acceleration, road conditions— uphill, downhill, level, road surface condition, road material, road slickness, ice, and the like— , and environmental conditions— ambient temperature, humidity, ice, and the like— . Operating condition 202 may additionally refer to location of batteries 106A, 106B, or 106C within vehicle 101, distance of batteries 106A, 106B, or 106C to motor 102, availability of charging stations, charging level of batteries 106 A, 106B, or 106C, and the like. A person of ordinary skill in the art should recognize that operating condition 202 may refer to any condition of any element of vehicle 101, e.g., electric motor 102 and propulsion systems 112A and 112B, as well as any condition on which vehicle 101 may interact including the environment, road conditions and types, and the like.

[0020] Controller 104 may dynamically or selectively determine which of batteries 106A, 106B, or 106C, or which combination of batteries 106A, 106B, or 106C, to load or couple to motor 102 based, at least in part, on having determined the location of batteries 106A, 106B, 106C in vehicle 101. Batteries 106A, 106B, or 106C may transmit or report their location within vehicle 101 to controller 104 using on-battery circuitry (not shown). Alternatively, sensing subsystems 110A, HOB, HOC, or HOD may include sensors or other circuitry to determine the location of batteries 106 A, 106B, 106C, or 106D within vehicle 101. In still another embodiment, controller 104 may access the location of batteries 106 A, 106B, or 106C from a memory device (not shown) in vehicle 101, the location of batteries 106 A, 106B, 106C, or 106D having been stored in the memory device during vehicle's 101 manufacture.

[0021] Controller 104 may dynamically or selectively determine which of batteries 106A, 106B, or 106C, or which combination of batteries 106A, 106B, or 106C, to load or couple to motor 102 based, at least in part, on having determined a battery charge level for each of batteries 106A, 106B, 106C. Batteries 106A, 106B, or 106C may transmit or report their battery charge to controller 104 using on-battery circuitry (not shown).

Alternatively, sensing subsystems 110A, HOB, HOC, or HOD may include sensors or other circuitry to determine charge level of batteries 106A, 106B, 106C, or 106D within vehicle 101.

[0022] Controller 104 may dynamically or selectively determine which of batteries 106A, 106B, or 106C, or which combination of batteries 106A, 106B, or 106C, to load or couple to motor 102 additionally based on other sensing control signals 208, e.g., acceleration, speed, instantaneous power requirements, battery charge, and the like. For example, controller 104 may dynamically or selectively load or couple battery 106 A to motor 102 based on battery 106 A being located closer to motor 102 and based on vehicle

101 operating in a condition that necessitates a large current draw or large instantaneous power, e.g., in situations where vehicle 101 is accelerating as indicated by control signal 208. By doing so, vehicle 101 would avoid heat and energy losses due to the distance between battery 106A and motor 102 to thereby improve operational efficiency.

[0023] For another example, controller 104 may dynamically or selectively load or couple battery 106C to motor 102 based on battery 106C being located farther from motor

102 (at least relative to battery 106 A) and based on vehicle 101 operating in a condition that necessitates a more steady current draw or steady power, e.g., in situations where vehicle 101 is at a complete stop, cruising at a fixed speed, or coasting as indicated by control signal 208. By doing so, vehicle 101 may conserve the charge on closer-located battery 106 A for situations in which heat and energy losses play a larger role in improving operational efficiency, e.g., when vehicle 101 is rapidly accelerating and thus requiring a higher instantaneous power and attendant higher current draw from battery 106 A.

[0024] Vehicle 101 may include a single battery 106A or plural batteries 106A, 106B, and 106C located at various locations. In situations where vehicle 101 includes plural batteries 106 A, 106B, and 106C, controller 104 may map batteries 106 A, 106B, and 106C to certain zones. For example, battery 106A may be in a first zone 120A while batteries 106B and 106C may be in a second zone 120B. A person of ordinary skill in the art should recognize that any number of zones are possible within vehicle 101. Under certain operating conditions, e.g., rapid acceleration, controller 104 may dynamically or selectively load or couple batteries 106B and 106C in second zone 120B to motor 102. Conversely, under certain other operating conditions, e.g., complete stop, cruising at a fixed speed, or coasting, controller 104 may dynamically or selectively load or couple battery 106A in first zone 120A to motor 102.

[0025] In an embodiment, sensing control signal system 206 may generate sensing control signal 208 representative of a power requirement of vehicle 101 in response to determining an acceleration of vehicle 101 using, e.g., a throttle position sensor or a speed sensor within sensing circuit 204. Controller 104 may receive sensing control signal 208 representative of a power requirement of vehicle 101 and may, in turn, dynamically or selectively load or couple battery 106A, 106B, 106C, or some combination thereof, to motor 102. In an embodiment, controller 104 may further dynamically or selectively load or couple battery 106 A, 106B, or 106C to motor 102 additionally based on a location of battery 106A, 106B, or 106C within vehicle 101. For example, sensing control signal system 206 may generate a sensing control signal 208 representative of vehicle 101 operating at a fixed speed (or at a complete stop) as determined by sensing or other circuitry in sensing circuit 204. In this circumstance, controller 104 may dynamically or selectively load or couple battery 106C to motor 102 even though battery 106C may be located farthest from motor 102. This is because vehicle 101 does not have a high instantaneous power requirement when operating at a fixed speed (or at a complete stop) that may counsel controller 104 to load or couple battery 106 A to motor 102 since battery 106A is located closer to motor 102. Such dynamic or selective loading or coupling of batteries 106 A, 106B, or 106C to electric motor 102 may improve operational efficiency of vehicle 101. In similar manner, controller 104 may dynamically or selectively load or couple batteries 106 A, 106B, or 106C to motor 102 based on corresponding charge level, environmental conditions, road conditions, and other like operating conditions.

[0026] Fig. 3 diagrams an embodiment of a method 300 for dynamically or selectively loading or coupling a battery to an electric motor according to the present disclosure. Referring to Fig. 3, at 302, method 300 includes storing a first electric power charge in a first battery and, at 304, storing a second electric power charge in a second battery. At 306, method 300 further includes receiving a control signal representative of an electric power needed to displace a vehicle. At 308, method 300 further includes identifying a first location of a first battery in the vehicle and, at 310, identifying a second location of a second battery in the vehicle. At 312, method 300 further includes dynamically or selectively loading or coupling the first battery or the second battery to an electric motor to deliver the first battery charge or the second battery charge, respectively, to the motor based at least in part on the power signal, first location, the second location, or a combination thereof.

[0027] Fig. 4 diagrams an embodiment of controller 400 according to the present disclosure. Referring now to Fig. 4, a high-level illustration of an exemplary controller 400 that can be used in accordance with the systems and methodologies disclosed herein is illustrated. In particular, controller 400 may exemplify an embodiment of controller 104 shown in Figs. lA and IB.

[0028] Controller 400 may include at least one processor 402 that executes instructions that are stored in a memory 404. The instructions may be, for instance, instructions for implementing functionality described as being carried out by one or more components discussed above or instructions for implementing one or more of the methods described above. Processor 402 may access memory 404 by way of a system bus 406. In addition to storing executable instructions, memory 404 may also store application data, video stream(s), and the like.

[0029] Controller 400 may additionally include a data store 408 that is accessible by processor 402 by way of system bus 406. Data store 408 may include executable instructions, application data, video stream(s), and the like. Controller 400 may also include an input interface 410 that allows external devices to communicate with the controller 400. For instance, input interface 410 may receive instructions from an external computer device, from a user, from other components in system 100 (Figs. 1 A or IB). Controller 400 may also include an output interface 412 that interfaces controller 400 with one or more external devices. For example, controller 400 may display text, images, and the like by way of the output interface 412. In an embodiment, controller 400 may further include a display screen (not shown).

[0030] It is contemplated that the external devices that communicate with controller 400 via input interface 410 and output interface 412 and/or the display screen (not shown) of may be part of an environment that provides substantially any type of user interface with which a user can interact. Examples of user interface types include graphical user interfaces, natural user interfaces, and so forth. For instance, a graphical user interface may accept input from a user employing input device(s) such as a keyboard, mouse, remote control, or the like and provide output on an output device such as a display.

Further, a natural user interface may enable a user to interact with controller 400 in a manner free from constraints imposed by input device such as keyboards, mice, remote controls, and the like. Rather, a natural user interface can rely on speech recognition, touch and stylus recognition, gesture recognition both on screen and adjacent to the screen, air gestures, head and eye tracking, voice and speech, vision, touch, gestures, machine intelligence, and so forth.

[0031] Additionally, while illustrated as a single system, it is to be understood that controller 400 may be a distributed system. Thus, for instance, several devices may be in communication by way of a network connection and may collectively perform tasks described as being performed by controller 400.

[0032] As used herein, the terms "component" and "system" are intended to encompass computer-readable data storage that is configured with computer-executable instructions that cause certain functionality to be performed when executed by a processor. The computer-executable instructions may include a routine, a function, or the like. It is also to be understood that a component or system may be localized on a single device or distributed across several devices.

[0033] Further, as used herein, the term "exemplary" is intended to mean "serving as an illustration or example of something."

[0034] Various functions described herein can be implemented in hardware, software, or any combination thereof. If implemented in software, the functions can be stored on or transmitted over as one or more instructions or code on a computer-readable medium. Computer-readable media includes computer-readable storage media. A computer- readable storage media can be any available storage media that can be accessed by a computer. By way of example, and not limitation, such computer-readable storage media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer. Disk and disc, as used herein, include compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk, and blu-ray disc (BD), where disks usually reproduce data magnetically and discs usually reproduce data optically with lasers. Further, a propagated signal is not included within the scope of computer-readable storage media. Computer-readable media also includes communication media including any medium that facilitates transfer of a computer program from one place to another. A connection, for instance, can be a communication medium. For example, if the software is transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio and microwave are included in the definition of communication medium. Combinations of the above should also be included within the scope of computer-readable media.

[0035] Alternatively, or in addition, the functionally described herein can be performed, at least in part, by one or more hardware logic components. For example, and without limitation, illustrative types of hardware logic components that can be used include Field-programmable Gate Arrays (FPGAs), Program-specific Integrated Circuits (ASICs), Program-specific Standard Products (ASSPs), System-on-a-chip systems (SOCs), Complex Programmable Logic Devices (CPLDs), etc.

[0036] What has been described above includes examples of one or more

embodiments. It is, of course, not possible to describe every conceivable modification and alteration of the above devices or methodologies for purposes of describing the

aforementioned aspects, but one of ordinary skill in the art can recognize that many further modifications and permutations of various aspects are possible. Accordingly, the described aspects are intended to embrace all such alterations, modifications, and variations that fall within the spirit and scope of the appended claims. Furthermore, to the extent that the term "includes" is used in either the details description or the claims, such term is intended to be inclusive in a manner similar to the term "comprising" as

"comprising" is interpreted when employed as a transitional word in a claim.

[0037] It will also be appreciated by persons of ordinary skill in the art that the present disclosure is not limited to what has been particularly shown and described hereinabove. Rather, the scope of the present disclosure includes both combinations and subcombinations of the various features described hereinabove as well as modifications and variations which would occur to such skilled persons upon reading the foregoing description. Thus the disclosure is limited only by the appended claims.