METHODS AND SYSTEMS FOR PROGRAMMING AN ELECTRIC MACHINE

A system and method of programming first and second electric motor controllers are described. The system includes a first electric motor having a first electric motor controller, a first programming module configured to be removably coupled to the first electric motor controller, a second electric motor having a second electric motor controller, a second programming module configured to be removably coupled to the second electric motor controller, and a remote host computer device communicatively coupled to the first programming module and to the second programming module. The remote host computer device is configured to simultaneously transmit a first programming signal to the first motor controller via the first programming module and a second programming signal to the second motor controller via the second programming module.

BACKGROUND OF THE INVENTION

The embodiments described herein relate generally to an electric machine, and more specifically, to programming of a motor controller associated with the electric machine.

A motor controller typically includes a memory that stores a program used to control operation of a corresponding electric machine. The motor controller includes a connection port that can be coupled to, for example, a cable, which provides data from a host for programming the motor controller. During the manufacture of the motor controller, the cable is physically coupled to the connection port for programming and testing of the motor controller. Although each motor controller is connected only once to the host during manufacturing, the cable may be coupled and uncoupled from hundreds of motor controllers each day. Repeated coupling and uncoupling of the cable shortens the useful life of the cable.

BRIEF DESCRIPTION OF THE INVENTION

In one aspect, a system is provided that includes a first electric motor having a first electric motor controller, a first programming module configured to be removably coupled to the first electric motor controller, a second electric motor having a second electric motor controller, a second programming module configured to be removably coupled to the second electric motor controller, and a remote host computer device communicatively coupled to the first programming module and to the second programming module. The remote host computer device is configured to simultaneously transmit a first programming signal to the first motor controller via the first programming module and a second programming signal to the second motor controller via the second programming module.

In another aspect, a method for programming a first electric motor controller and a second electric motor controller is provided. The method includes removably coupling a first programming module to the first electric motor controller, removably coupling a second programming module to the second electric motor controller, and communicatively coupling a remote host computer device to the first programming module and to the second programming module. The method also includes simultaneously transmitting, by the remote host computer device, a first programming signal to the first motor controller via the first programming module and a second programming signal to the second motor controller via the second programming module.

DETAILED DESCRIPTION OF THE INVENTION

The methods, systems, and apparatus described herein facilitate programming of a motor controller. An interface described herein provides communication between a remote host and the motor controller and may allow multiple motor controllers to be programmed simultaneously by one remote host. The methods, systems, and apparatus described herein may also facilitate programming the motor controller locally, without a connection to a remote host. Furthermore, the methods, systems, and apparatus described herein reduce wear on a connector used to couple the motor controller to a host.

Technical effects of the methods, systems, and apparatus described herein include at least one of: (a) removably coupling a programming module to a motor controller, wherein the programming module includes a wireless communication device; (b) receiving, at the wireless communication device, a programming signal; (c) conditioning the programming signal for application to the motor controller; and (d) providing the programming signal to the motor controller.

FIG. 1is a side view of an exemplary electric motor10. Although described herein as electric motor10, the methods, systems, and apparatus described herein are also applicable to other electric machines, for example, electric generators. In the exemplary embodiment, electric motor10includes a motor housing16that defines an interior (not shown inFIG. 1) and an exterior18of motor10.FIG. 2is a side view of electric motor10with motor housing16removed to show interior20of motor10. In the exemplary embodiment, motor10includes a stationary assembly22and a rotatable assembly (not shown). Motor housing16is configured to at least partially enclose and protect the stationary and rotatable assemblies. In the exemplary embodiment, electric motor10also includes a motor controller26, enclosed at least partially within motor housing16. Although illustrated as included within motor housing16, motor controller26may be included within a separate housing and electrically coupled to the stationary assembly and/or the rotatable assembly.

In the exemplary embodiment, motor controller26includes, or is coupled to, a memory device28, configured to store motor operating instructions and/or motor operating data. Motor controller26provides operating signals used to control operation of electric motor10, for example, but not limited to, a sine wave operating signal, a square wave operating signal, or any other suitable operating signal that allows electric motor10to function as described herein. The operating signals are based at least partially on the stored motor operating instructions and direct operation of electric motor10.

In the exemplary embodiment, motor controller26is programmable. Motor10includes an input/output connector30through which an external programming device (e.g., a programming host) may be communicatively coupled to motor controller26. For example, input/output connector30may include a plurality of terminals32accessible from exterior18of motor housing16. Plurality of terminals32may extend from exterior18of motor housing16and/or may be recessed beneath exterior18of motor housing16. Terminals32may include blades configured to be coupled with a corresponding connector to electrically couple motor controller26to an external programming host. The programming host may include a computer configured to be coupled to motor controller26for programming of motor controller26. Connector30receives a corresponding connector that is also coupled to the external programming host and receives/transmits programming signals from/to the external programming host. Connector30may be included in a serial connection between motor controller26and the programming host. For example, data may be transmitted between the programming host and motor controller26using a universal asynchronous receiver/transmitter (UART) using an RS-232 protocol.

Electric motor10may be any electric motor that includes, or is coupled to, a motor controller for controlling operation of the motor. For example, electric motor10may include, but is not limited to, a brushless direct current (BLDC) motor, a brushless alternating current (BLAC) motor, and/or a reluctance motor. Electric motor10may be referred to as an electronically commutated motor (ECM).

FIG. 3is a diagram of an exemplary programming module40. Programming module40is configured for coupling with electric motor10(shown inFIG. 1) and for providing programming instructions to motor controller26(shown inFIG. 2) for storage within memory device28(shown inFIG. 2). In the exemplary embodiment, programming module40includes a processing device42, an interface circuit44, a voltage regulator46, and at least one connector48. In the exemplary embodiment, processing device42, interface circuit44, voltage regulator46, and connector48are included at least partially within a module housing50. Module housing50defines an interior52of programming module40and an exterior54of programming module40. In the exemplary embodiment, processing device42includes, or is coupled to, a memory device56that stores, for example, programming information to be transmitted to motor controller26.

In the exemplary embodiment, programming module40also includes a charging circuit62and an energy storage device64enclosed at least partially within module housing50. In the exemplary embodiment, energy storage device64includes at least one battery. In an alternative embodiment, charging circuit62and energy storage device64are external to module housing50and electrically coupled to voltage regulator46.

The term processing device, as used herein, refers to central processing units, microprocessors, microcontrollers, reduced instruction set circuits (RISC), application specific integrated circuits (ASIC), logic circuits, and any other circuit or processor capable of executing the functions described herein. The term “processing device” as that term is used herein, is intended to denote any machine capable of performing the calculations, or computations, necessary to perform the tasks described herein. The term “processing device” also is intended to denote any machine that is capable of accepting a structured input and of processing the input in accordance with prescribed rules to produce an output. It should also be noted that the phrase “configured to” as used herein means that the processing device is equipped with a combination of hardware and software for performing the tasks described herein, as will be understood by those skilled in the art.

In the exemplary embodiment, connector48includes a plurality of terminals66that are biased to at least partially extend from interior52to exterior54of module housing50. For example, terminals66may include, but are not limited to, a first terminal68, a second terminal70, a third terminal72, and a fourth terminal74. Connector48is configured for coupling with an input/output connector of a motor, for example, input/output connector30(shown inFIG. 1). For example, each of terminals66may include a pogo pin. More specifically, in the exemplary embodiment, first terminal68is a pogo pin that includes a biasing device76that exerts a force in a first direction78on first terminal68in response to an opposite force in a second direction80applied to first terminal68by one of terminals32(shown inFIG. 1).

Force in first direction78pushes first terminal68from interior52toward exterior54and force in second direction80pushes first terminal68from exterior54toward interior52of module housing50. In other words, biasing device76maintains a connection between terminals66of connector48and terminals32of input/output connector30with zero insertion force. A typical connection between a male connector (i.e., a blade) and a corresponding female connector requires insertion force and eventually causes wear to the male and/or female connector. By eliminating the insertion force, the usable life of connector48is increased. Similarly, in the exemplary embodiment, second terminal70is a pogo pin that includes a biasing device82, third terminal72is a pogo pin that includes a biasing device84, and fourth terminal74is a pogo pin that includes a biasing device86. Moreover, in some embodiments, terminals32of input/output connector30are recessed within motor housing16and connector48is configured to extend into motor housing16in order to provide contact between terminals66and terminals32.

In the exemplary embodiment, to maintain a connection between programming module40and electric motor10, and more specifically, between terminals66of connector48and corresponding terminals32of input/output connector30, programming module40includes at least one magnetic device90. For example, magnetic device90may include a first permanent magnet92and a second permanent magnet94. First and second permanent magnets92and94are magnetically attracted to a metal housing, for example, motor housing16(shown inFIG. 1), and therefore, removably couple programming module40to electric motor10by magnetic force. Programming module40, and more specifically, terminals68,70,72, and74, are configured such that when programming module40is magnetically coupled to motor housing16, biasing devices76,82,84, and86are depressed, providing the biasing force that presses terminals66of connector48against corresponding terminals32of input/output connector30.

In the exemplary embodiment, module housing50includes a key member96. In the exemplary embodiment, key member96extends from external54surface of module housing50and is configured to interact with a complementary key member98(shown inFIG. 1) included in motor10. Key member98may include a recess within, for example, motor housing16and/or input/output connector30. For example, key member98may include a space defined between adjacent terminals of input/output connector30, a space defined between a terminal of input/output connector30and an end100of input/output connector30, and/or an opening defined within input/output connector30that does not include a terminal blade. Key member96is configured to extend into key member98. Key member96and complementary key member98ensure that connector48is correctly aligned with input/output connector30. Key members96and98also facilitate rapid coupling of programming module40and electric motor10by providing a user with a visible alignment aid and by providing only one direction in which programming module40can be coupled to, and remain coupled to, electric motor10.

In the exemplary embodiment, programming module40also includes a wireless device110. Wireless device110provides a wireless communication connection between programming module40and a remote host. For example, the remote host may wirelessly transmit programming instructions to programming module40, for transmission to motor controller26. Wireless device110may be configured for radio frequency (RF) communication between programming module40and the remote host. Alternatively, wireless device110may be configured to use wireless standards including, but not limited to, 2G, 3G, and 4G cellular standards such as LTE, EDGE, and GPRS, IEEE 802.16 Wi-Max, IEEE 802.15 ZigBee®, Bluetooth, IEEE 802.11 standards including 802.11a, 802.11b, 802.11d, 802.11e, 802.11g, 802.11h, 802.11i, 802.11j, and 802.11n, Wi-Fi®, and proprietary standards such as Z-Wave®. Wi-Fi® is a certification mark developed by the Wi-Fi Alliance, ZigBee® is a registered trademark of ZigBee Alliance, Inc. of San Ramon, Calif., and Z-Wave® is an identity mark of the Z-Wave Alliance of Milpitas, Calif.

In an alternative embodiment, programming instructions are stored within memory device56. Storing the programming instructions that will be transmitted to motor controller26for programming of motor controller26allows programming module40to function independently from the remote host. In other words, storing programming instructions in memory device56allows local programming of motor controller26where programming module40acts as the host.

In the exemplary embodiment, programming module40may also include a man-machine interface112. Man-machine interface112may include at least one connector114configured for coupling with an interface cable (not shown inFIG. 3). In the exemplary embodiment, man-machine interface112receives programming data from an external source (not shown inFIG. 3), for example, a centralized computer system, which is then stored in memory device56.

Man-machine interface112may also include an input/output device118that displays information to a user of programming module40and/or receives information from the user. For example, input/output device118may include at least one status indicator (e.g., a light emitting diode (LED)) that displays a status indication to the user. The status indication may include, but is not limited to including, a transmitting data indicator, a receiving data indicator, a power on/off indicator, an error signal indicator, and a connection established indicator. For example, the LED may be illuminated in a specific color that indicates to the user that programming module40is transmitting data to motor controller26. Furthermore, the LED may be illuminated in a different color that indicates to the user that programming module40is receiving data from motor controller26. The LED may also provide information to the user regarding the level of energy stored within battery64, for example, the LED may provide a low-battery warning to the user of programming module40. Moreover, input/output device118may include at least one input device (e.g., a button) that allows the user to select from programming module commands to locally activate programming of motor controller26, select the program to be transmitted to motor controller26, and/or initiate receiving information from motor controller26.

In the exemplary embodiment, charging circuit62and battery device64provide power to voltage regulator46. The power provided to voltage regulator46is at a level that facilitates proper operation of components within programming module40, for example, but not limited to, interface circuit44, processing device42, and/or wireless device110. In the exemplary embodiment, charging circuit62includes at least one terminal120configured to couple with an external source of power (not shown inFIG. 3). Power from the external source of power may be used to power programming module40and/or to recharge battery64. Charging circuit62controls recharging of battery64, for example, by selectively providing power provided from the external source of power to battery64. Charging circuit62may also convert the power provided from the external source to a suitable power for charging of battery64.

In the exemplary embodiment, voltage regulator46controls the voltage of the power provided to components within programming module40. For example, voltage regulator46may provide power having a first voltage level to interface circuit44and power having a second voltage level to processing device42. Furthermore, as programming module40is operated, and the energy stored within battery64decreases, voltage regulator46provides a first substantially constant voltage to interface circuit44and a second substantially constant voltage to processing device42.

In the exemplary embodiment, interface circuit44conditions signals transmitted between processing device42and motor controller26. For example, interface circuit44may include a boost circuit and/or driver that increases signals provided by processing device42, for example, increases a current level of signals provided by processing device42, to a level that allows the signals to be transmitted to motor controller26. In this example, motor controller26may be electrically isolated from devices coupled to input/output connector30by an isolation device, for example, an optocoupler. Such an isolation device protects programming module40from the high currents/voltages used to operate motor10. Interface circuit44provides signals having a current level that is high enough that the signal may be converted to light by the optocoupler. In the exemplary embodiment, interface circuit44also reduces signals received from connectors48to a level that will not damage processing device42. For example, interface circuit44may reduce a voltage level of signals received from connector48to between approximately 0 to 5 volts, and more specifically, to between approximately 0 to 3 volts.

Moreover, in the exemplary embodiment, programming module40may receive a signal from motor controller26. For example, the signal may include operating data/statistics collected and stored within memory device28. A user may download the operating data/statistics from motor10using programming module40for data logging and analysis of motor operation.

FIG. 4is a block diagram of an exemplary system150for programming electric motors. In the exemplary embodiment, system150facilitates programming a first motor, for example, electric motor10(shown inFIG. 1), a second motor160, and a third motor162. In the exemplary embodiment, system150includes a remote host164configured for programming of electric motor controllers. System150also includes a first programming module, for example, programming module40(shown inFIG. 3), a second programming module168, and a third programming module170. Remote host164and modules40,168, and170include wireless communication devices that facilitate wireless communication between remote host164and electric motors10,160, and162. By coupling modules40,168, and170to motors10,160, and162, respectively, remote host164simultaneously programs motors10,160, and162. Furthermore, since the communication connection between remote host164and modules40,168, and170is wireless, motors10,160, and162may be physically moved without interrupting the programming process.

FIG. 5is a flow chart180of an exemplary method182for programming an electric motor, for example, electric motor10(shown inFIG. 1). In the exemplary embodiment, method182includes removably coupling184a programming module, for example, programming module40(shown inFIG. 3), to a motor controller, for example, motor controller26(shown inFIG. 1), wherein programming module40includes a wireless communication device, for example, wireless communication device110(shown inFIG. 3). Wireless communication device110provides a communication connection between programming module40and a remote programming host, for example, remote host164(shown inFIG. 4). Programming module40includes a biased connector, for example, biased connector48(shown inFIG. 3) that is aligned with an input/output connector, for example, input/output connector30(shown inFIG. 1), of motor controller26. Furthermore, programming module40may be magnetically coupled to a motor housing, for example, motor housing16, that encloses motor controller26.

In the exemplary embodiment, method182also includes receiving186, from remote host164, a programming signal at programming module40. For example, programming module40may receive186the programming signal via a wireless communication device, for example, wireless communication device110, included within programming module40.

In the exemplary embodiment, method182also includes conditioning188the programming signal for application to motor controller26. For example, an interface circuit, for example, interface circuit44(shown inFIG. 3) of programming module40may increase a current level of the programming signal from a first level provided by processing device42to a second level for application to motor controller26. Interface circuit44may also reduce a current level of a signal received from motor controller26before the signal is provided to processing device42.

In the exemplary embodiment, method182also includes providing190the programming signal to motor controller26. Motor controller26stores the programming data contained within the programming signal for use in controlling operation of electric motor10.

Described herein are exemplary methods, systems, and apparatus for programming a motor controller. More specifically, the methods, systems, and apparatus described herein enable programming of the motor controller without physical tethering of the motor to a programming host. Wireless communication provided by the methods, systems, and apparatus described herein facilitate simultaneous programming of multiple motor controllers, each coupled to a programming module, by a remote host. The host may be situated remotely from the motor being programmed and the motor may be moved during programming. The apparatus described herein facilitates easy coupling of the host and motor being programmed using magnetic force and a key member. Furthermore, a connector that includes pogo pins facilitates zero force coupling of the connector and the motor controller. Memory included within the apparatus described herein facilitates local programming of the motor controller where the apparatus itself acts as the host.

The methods, systems, and apparatus described herein facilitate efficient and economical programming of an electric motor. Exemplary embodiments of methods, systems, and apparatus are described and/or illustrated herein in detail. The methods, systems, and apparatus are not limited to the specific embodiments described herein, but rather, components of each apparatus and system, as well as steps of each method, may be utilized independently and separately from other components and steps described herein. Each component, and each method step, can also be used in combination with other components and/or method steps.

When introducing elements/components/etc. of the methods and apparatus described and/or illustrated herein, the articles “a”, “an”, “the”, and “said” are intended to mean that there are one or more of the element(s)/component(s)/etc. The terms “comprising”, “including”, and “having” are intended to be inclusive and mean that there may be additional element(s)/component(s)/etc. other than the listed element(s)/component(s)/etc.