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.
In one aspect, a programming module is provided. The programming module includes a housing defining an exterior and an interior of the programming module, a plurality of terminals biased to extend at least partially from the exterior of the housing, and a processing device electrically coupled to the plurality of terminals and configured to provide a programming signal to at least one of the plurality of terminals.
In another aspect, a method for programming a motor controller is provided. The method includes removably coupling a programming module to the motor controller, wherein the programming module includes a wireless communication device. The method also includes receiving, at the wireless communication device, a programming signal and conditioning the programming signal for application to the motor controller. The method also includes providing the programming signal to the motor controller.
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.
In the exemplary embodiment, motor controller 26 includes, or is coupled to, a memory device 28, configured to store motor operating instructions and/or motor operating data. Motor controller 26 provides operating signals used to control operation of electric motor 10, 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 motor 10 to function as described herein. The operating signals are based at least partially on the stored motor operating instructions and direct operation of electric motor 10.
In the exemplary embodiment, motor controller 26 is programmable. Motor 10 includes an input/output connector 30 through which an external programming device (e.g., a programming host) may be communicatively coupled to motor controller 26. For example, input/output connector 30 may include a plurality of terminals 32 accessible from exterior 18 of motor housing 16. Plurality of terminals 32 may extend from exterior 18 of motor housing 16 and/or may be recessed beneath exterior 18 of motor housing 16. Terminals 32 may include blades configured to be coupled with a corresponding connector to electrically couple motor controller 26 to an external programming host. The programming host may include a computer configured to be coupled to motor controller 26 for programming of motor controller 26. Connector 30 receives a corresponding connector that is also coupled to the external programming host and receives/transmits programming signals from/to the external programming host. Connector 30 may be included in a serial connection between motor controller 26 and the programming host. For example, data may be transmitted between the programming host and motor controller 26 using a universal asynchronous receiver/transmitter (UART) using an RS-232 protocol.
Electric motor 10 may be any electric motor that includes, or is coupled to, a motor controller for controlling operation of the motor. For example, electric motor 10 may include, but is not limited to, a brushless direct current (BLDC) motor, a brushless alternating current (BLAC) motor, and/or a reluctance motor. Electric motor 10 may be referred to as an electronically commutated motor (ECM).
In the exemplary embodiment, programming module 40 also includes a charging circuit 62 and an energy storage device 64 enclosed at least partially within module housing 50. In the exemplary embodiment, energy storage device 64 includes at least one battery. In an alternative embodiment, charging circuit 62 and energy storage device 64 are external to module housing 50 and electrically coupled to voltage regulator 46.
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, connector 48 includes a plurality of terminals 66 that are biased to at least partially extend from interior 52 to exterior 54 of module housing 50. For example, terminals 66 may include, but are not limited to, a first terminal 68, a second terminal 70, a third terminal 72, and a fourth terminal 74. Connector 48 is configured for coupling with an input/output connector of a motor, for example, input/output connector 30 (shown in
Force in first direction 78 pushes first terminal 68 from interior 52 toward exterior 54 and force in second direction 80 pushes first terminal 68 from exterior 54 toward interior 52 of module housing 50. In other words, biasing device 76 maintains a connection between terminals 66 of connector 48 and terminals 32 of input/output connector 30 with 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 connector 48 is increased. Similarly, in the exemplary embodiment, second terminal 70 is a pogo pin that includes a biasing device 82, third terminal 72 is a pogo pin that includes a biasing device 84, and fourth terminal 74 is a pogo pin that includes a biasing device 86. Moreover, in some embodiments, terminals 32 of input/output connector 30 are recessed within motor housing 16 and connector 48 is configured to extend into motor housing 16 in order to provide contact between terminals 66 and terminals 32.
In the exemplary embodiment, to maintain a connection between programming module 40 and electric motor 10, and more specifically, between terminals 66 of connector 48 and corresponding terminals 32 of input/output connector 30, programming module 40 includes at least one magnetic device 90. For example, magnetic device 90 may include a first permanent magnet 92 and a second permanent magnet 94. First and second permanent magnets 92 and 94 are magnetically attracted to a metal housing, for example, motor housing 16 (shown in
In the exemplary embodiment, module housing 50 includes a key member 96. In the exemplary embodiment, key member 96 extends from external 54 surface of module housing 50 and is configured to interact with a complementary key member 98 (shown in
In the exemplary embodiment, programming module 40 also includes a wireless device 110. Wireless device 110 provides a wireless communication connection between programming module 40 and a remote host. For example, the remote host may wirelessly transmit programming instructions to programming module 40, for transmission to motor controller 26. Wireless device 110 may be configured for radio frequency (RF) communication between programming module 40 and the remote host. Alternatively, wireless device 110 may 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 device 56. Storing the programming instructions that will be transmitted to motor controller 26 for programming of motor controller 26 allows programming module 40 to function independently from the remote host. In other words, storing programming instructions in memory device 56 allows local programming of motor controller 26 where programming module 40 acts as the host.
In the exemplary embodiment, programming module 40 may also include a man-machine interface 112. Man-machine interface 112 may include at least one connector 114 configured for coupling with an interface cable (not shown in
Man-machine interface 112 may also include an input/output device 118 that displays information to a user of programming module 40 and/or receives information from the user. For example, input/output device 118 may 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 module 40 is transmitting data to motor controller 26. Furthermore, the LED may be illuminated in a different color that indicates to the user that programming module 40 is receiving data from motor controller 26. The LED may also provide information to the user regarding the level of energy stored within battery 64, for example, the LED may provide a low-battery warning to the user of programming module 40. Moreover, input/output device 118 may 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 controller 26, select the program to be transmitted to motor controller 26, and/or initiate receiving information from motor controller 26.
In the exemplary embodiment, charging circuit 62 and battery device 64 provide power to voltage regulator 46. The power provided to voltage regulator 46 is at a level that facilitates proper operation of components within programming module 40, for example, but not limited to, interface circuit 44, processing device 42, and/or wireless device 110. In the exemplary embodiment, charging circuit 62 includes at least one terminal 120 configured to couple with an external source of power (not shown in
In the exemplary embodiment, voltage regulator 46 controls the voltage of the power provided to components within programming module 40. For example, voltage regulator 46 may provide power having a first voltage level to interface circuit 44 and power having a second voltage level to processing device 42. Furthermore, as programming module 40 is operated, and the energy stored within battery 64 decreases, voltage regulator 46 provides a first substantially constant voltage to interface circuit 44 and a second substantially constant voltage to processing device 42.
In the exemplary embodiment, interface circuit 44 conditions signals transmitted between processing device 42 and motor controller 26. For example, interface circuit 44 may include a boost circuit and/or driver that increases signals provided by processing device 42, for example, increases a current level of signals provided by processing device 42, to a level that allows the signals to be transmitted to motor controller 26. In this example, motor controller 26 may be electrically isolated from devices coupled to input/output connector 30 by an isolation device, for example, an optocoupler. Such an isolation device protects programming module 40 from the high currents/voltages used to operate motor 10. Interface circuit 44 provides 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 circuit 44 also reduces signals received from connectors 48 to a level that will not damage processing device 42. For example, interface circuit 44 may reduce a voltage level of signals received from connector 48 to between approximately 0 to 5 volts, and more specifically, to between approximately 0 to 3 volts.
Moreover, in the exemplary embodiment, programming module 40 may receive a signal from motor controller 26. For example, the signal may include operating data/statistics collected and stored within memory device 28. A user may download the operating data/statistics from motor 10 using programming module 40 for data logging and analysis of motor operation.
In the exemplary embodiment, method 182 also includes receiving 186, from remote host 164, a programming signal at programming module 40. For example, programming module 40 may receive 186 the programming signal via a wireless communication device, for example, wireless communication device 110, included within programming module 40.
In the exemplary embodiment, method 182 also includes conditioning 188 the programming signal for application to motor controller 26. For example, an interface circuit, for example, interface circuit 44 (shown in
In the exemplary embodiment, method 182 also includes providing 190 the programming signal to motor controller 26. Motor controller 26 stores the programming data contained within the programming signal for use in controlling operation of electric motor 10.
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.
This written description uses examples to disclose the invention, including the best mode, and also to enable any person skilled in the art to practice the invention, including making and using any devices or systems and performing any incorporated methods. The patentable scope of the invention is defined by the claims, and may include other examples that occur to those skilled in the art. Such other examples are intended to be within the scope of the claims if they have structural elements that do not differ from the literal language of the claims, or if they include equivalent structural elements with insubstantial differences from the literal language of the claims.