External motor drive system that uses a continuous cord loop to adjust the creep of the window covering system
Patent Information
- Application Number
- JP2023570178
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2021-05-12
- Filing Date
- 2022-02-28
- Publication Date
- 2025-03-06
- Estimated Expiration
- 2042-02-28
AI Technical Summary
Existing window covering systems with internal motors face challenges in maintaining accurate automated positioning control due to issues such as cord fatigue or creep in continuous cord loop systems, leading to positioning errors over time.
An external motor drive system with a continuous cord loop sensor system that includes a sensor to detect the position of markers on the cord loop, allowing the controller to compensate for deviations caused by cord fatigue or stretching, ensuring precise positioning control.
The system maintains accurate automated positioning of window coverings by continuously monitoring and adjusting for cord loop changes, reducing errors and ensuring consistent operation.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
[Technical field]
[0001] CROSS-REFERENCE TO RELATED PATENT APPLICATIONS This application claims priority to U.S. Provisional Application No. 17 / 318,791, filed May 12, 2021, entitled “External Motor Drive System for Adjusting Creep in Window Covering System with Continuous Cord Loop,” which is incorporated by reference in its entirety herein.
[0002] The present disclosure relates to a window covering extension and retraction system that uses a continuous cord loop, and more particularly to an external motor drive for a window covering extension and retraction system. [Background technology]
[0003] Window covering systems that unfold and retract covers for architectural openings such as windows, arches, and the like are found everywhere. Such window covering unfold and retract systems may operate, for example, by raising and lowering the cover or by opening and closing the cover laterally. In this specification, the terms unfold and retract, open and close, and raise and lower the window covering are all used according to the context. Such window covering systems typically include a head rail or cassette in which the operating components for the cover are primarily housed. In some variations, the window covering system includes a bottom rail that extends parallel to the head rail and some form of shade material, which may be a fabric material or a shade material or blind material, interconnecting the head rail and the bottom rail. The shade material or blind material is movable with the bottom rail between an unfolded position and a retracted position relative to the head rail. For example, as the bottom rail is lowered or raised relative to the head rail, the fabric or other material may be unfolded away from the head rail or retracted toward the head rail, allowing the fabric or other material to accumulate adjacent to or within the head rail. Such mechanisms can include a variety of controls, such as a pull cord that depends from one or both ends of the headrail. The pull cord may depend linearly, or in window covering systems of the type addressed by this invention, the pull cord may take the form of a closed loop of flexible material, such as a rope, cord, or beaded chain, referred to herein as a continuous cord loop, or alternatively, a chain / cord.
[0004] In some embodiments, the window covering system incorporates a motor and control electronics that actuate the mechanism for extending and retracting the blind or shade material. Most commonly, the motor and control electronics are mounted within the headrail or within a tube (sometimes referred to as a tubular motor) of the window blind, avoiding the need for a pull cord, such as a continuous cord loop. Using such a motor-operated system or device, the shade or blind material can be extended or retracted by activation by a user or by automated operation triggered, for example, by a switch or photocell. Such window covering systems with motors and control electronics mounted within the headrail may be referred to herein as "internal motors," "internal motor devices," or "internal motor systems."
[0005] The drive system of the present invention incorporates a motor and control electronics mounted externally to the mechanism that extends and retracts the blind or shade material. Such drive systems are referred to herein as "external motors," "external motor devices," or "external motor systems," or sometimes as "external actuators." External motor systems are typically mounted externally on the window frame or wall and engage a cord or chain (continuous cord loop) of the window covering to automate the opening and closing of the blinds.
[0006] In both internal and external motor systems (sometimes referred to collectively herein as motorized systems), the automated drive system incorporates control electronics for controlling operation. Typically, motorized systems are controlled through a user control mechanism incorporating a radio frequency ("RF") controller or other remote controller that wirelessly communicates with the drive system associated with the motor. Such remote user control systems come in many forms, including handheld remote controls, wall mounted controllers / switches, smart home hubs, building automation systems, and smartphones, among others. The use of such remote controls is particularly meaningful for internal motor systems, where it is difficult or impossible to integrate user controls within the internally mounted drive system.
[0007] In the disclosed external motor drive system, the separation of the external actuator from the head rail or other window covering mechanism opens new possibilities for integrating user controls within the external actuator itself. These integrated control functions are sometimes referred to herein as "on-device controls." The on-device controls of the external motor system provide various advantages, such as ease of operation and convenience in accessing the controls and performing the control functions. Such on-device controls of the external motor system can be integrated with automated control systems through appropriate sensors, distributed intelligence, and network communications.
[0008] Automated control of window covering systems can provide a variety of useful control functions, such as calibrating the opening and closing of blinds to suit user preferences, and cooperative or centralized control of multiple blinds. There is a practical need to integrate a variety of automated window control functions in an on-device control for an external actuator.
[0009] In a corded continuous cord-loop motor drive system, the window covering drive mechanism is a cord that engages with a pulley drive of the motor drive system. Cords, such as those made from synthetic and natural fibers, can be subject to a variety of physical influences relative to the pulley drive during continuous operation. It is necessary to maintain accuracy in the automated control of the window covering function while compensating for any physical influences of the continuous cord-loop cord / pulley motor drive system. Summary of the Invention [Means for solving the problem]
[0010] The embodiments described herein include a motor drive system that operates a mechanism for extending and retracting a window covering. The motor drive system includes an electrically operated motor and a drive assembly. The motor drive system advances a continuous cord loop in response to position-related commands from a controller. The continuous cord loop / motor drive system must maintain accuracy of automated positioning control of the window covering while compensating for physical effects during continuous motion. The embodiments described herein incorporate a continuous cord loop sensor system that maintains accuracy of automated positioning control of the window covering in the event of, for example, material fatigue or creep of the continuous cord loop or when the continuous cord loop stretches.
[0011] In various embodiments, the continuous cord loop includes a corded continuous cord loop, also referred to herein as a continuous cord loop cord, and the motor drive system includes a pulley motor drive system. In conventional implementations, a major concern is that the cord / pulley motor drive system is prone to slippage during continuous operation. However, because the frictional engagement of the cord with the pulley drive can withstand the forces applied during normal operation without slippage, the primary source of positioning error is material fatigue or "creep" of the continuous cord loop cord. The embodiments described herein incorporate a continuous cord loop sensor system that maintains accuracy of the automated positioning control of the window covering in the event of material fatigue or creep of the continuous cord loop cord.
[0012] In various embodiments, the continuous cord loop comprises a chained continuous cord loop, also referred to herein as a continuous cord loop chain, and the motor drive system comprises a sprocket wheel motor drive system. The embodiments described herein incorporate a continuous cord loop sensor system that maintains accuracy of the automated positioning control of the window covering when the continuous cord loop chain stretches.
[0013] In various embodiments, the drive system is configured for use with a window covering system including a mechanism for unfolding and retracting the window covering and a continuous cord loop extending below the mechanism. The drive system includes a motor configured to operate with power to rotate an output shaft of the drive system and a driven wheel coupled to the output shaft of the motor and configured to engage the continuous cord loop. Rotation of the driven wheel in a first direction advances the continuous cord loop causing the mechanism to unfold the window covering, and rotation of the driven wheel in a second direction advances the continuous cord loop causing the roller blind mechanism to retract the window covering. The continuous cord loop includes an endless loop of flexible material and one or more sensor targets disposed on the endless loop of flexible material. The sensor targets are also referred to herein as indicators or targets.
[0014] Additional components of the drive system include a controller for the motor, a sensor operably connected to the controller, and a housing for the motor, the driven wheel, and the controller. The housing includes a guide rail adjacent to the driven wheel, and the sensor is mounted to the guide rail and configured to generate a signal indicative of the presence of the sensor target (or one of the multiple sensor targets) when the sensor target is located in proximity to or in contact with the sensor. In one embodiment, the controller is calibrated to store an initial position of the sensor target (single marker) along the continuous code loop. In one embodiment, the controller is calibrated to store an initial top position of a first marker at a top position along the continuous code loop and an initial position of a second marker at a bottom position along the continuous code loop. The controller is configured to receive the signal indicative of the presence of the sensor target and to identify deviations (e.g., fluctuations or changes in value) from the initial position (or each initial position) during continuous operation of the drive system.
[0015] In one embodiment, the drive system is configured for use with a window covering system including a mechanism for extending and retracting the window covering and a continuous cord loop extending below the mechanism. The drive system includes a motor configured to operate with power to rotate an output shaft of the drive system, a driven wheel coupled to the output shaft of the motor and configured to engage the continuous cord loop, and a controller for the motor. The drive system includes a housing that houses the motor, the driven wheel, and the controller. The drive system further includes a rechargeable battery electrically coupled to the motor and the controller. The motor and controller are battery powered, and the rechargeable battery is housed within or coupled to the housing.
[0016] In one embodiment, an input / output ("I / O") device for a controller includes an input interface that receives user input along an input axis and a visual display aligned with the input axis of the input interface. In one embodiment, the I / O device includes a capacitive touch strip that receives user input along the input axis and an LED strip aligned with the input axis. In one embodiment, the I / O device extends longitudinally outside of a housing for the motor drive system, the housing supporting an input button. In one embodiment, the button on the housing includes a group mode module and a setting control module. In another embodiment, the housing supports an RF communication button.
[0017] In one embodiment, the group mode module communicates position-related commands to other motor drive systems in the identified group to operate each of the other mechanisms of such other motor drive systems. In one embodiment, the group mode module causes the RF communication module to communicate position-related commands to the other motor drive systems. In one embodiment, the other motor drive systems in the identified group operate each of the other mechanisms in accordance with the calibration results of each of the topmost positions and the bottommost positions of each of such other motor drive systems.
[0018] In one embodiment, the setting control module allows for user calibration of the top and bottom positions of the window covering's travel, in one embodiment, during calibration the user moves the window covering to the top and bottom positions, respectively, using the input interface and presses a set button to set these positions.
[0019] In one embodiment, the drive assembly includes a driven wheel configured to engage and advance a continuous cord loop coupled to a mechanism for raising and lowering the window covering, and a motorized coupling mechanism configured to couple the driven wheel to an output shaft of the motor and rotate the driven wheel in first and second senses. Rotation of the driven wheel in the first sense advances the continuous cord loop in the first direction, and rotation of the driven wheel in the second sense advances the continuous cord loop in the second direction. A controller provides position-related commands to the motor and the motorized coupling mechanism to control the rotation of the driven wheel in the first and second senses.
[0020] In one embodiment, in addition to providing position related and other control instructions to the motor and drive assemblies via an external motor device on-device controller, such instructions may be provided by an I / O device separate from the external motor device on-device controller, such as a mobile user device. In one embodiment, the control system includes a web application capable of emulating various single-axis input and display functions of the external motor device on-device controller.
[0021] In one embodiment, the external motor device is configured to raise or lower window coverings, such as roller shades and roman shades, via vertical position control. In one embodiment, the external motor device is configured to open or close window coverings laterally (e.g., across a window frame) via horizontal position control, as in vertical blinds and curtains. In one embodiment, the control system includes a graphical user interface configured to display input controls that extend either vertically or horizontally depending on the type of window covering system driven by the external motor.
[0022] In one embodiment, the motor drive system includes a motor external to the mechanism for raising and lowering the window covering configured to operate with electrical power to rotate an output shaft thereof, and a drive assembly configured to engage and advance a continuous cord loop coupled to the mechanism for raising and lowering the window covering. Advancing the continuous cord loop in a first direction raises the window covering, and advancing the continuous cord loop in a second direction lowers the window covering. The motor drive system includes a controller that provides position-related commands to the motor and drive assembly to control the advancement of the continuous cord loop in the first direction and the advancement of the continuous cord loop in the second direction. An I / O device for the controller includes an input interface that receives user input along an input axis and causes the controller to provide position-related commands to the motor and drive assembly, and a visual display aligned with the input axis of the input interface.
[0023] In one embodiment, a drive system for use with a window covering system including a headrail, a mechanism associated with the headrail for expanding and retracting a window covering, and a continuous cord loop extending below the headrail for actuating the expanding and retracting mechanism includes a motor configured to rotate an output shaft thereof, a drive assembly configured to engage and advance a continuous cord loop coupled to the expanding and retracting mechanism, the drive assembly configured to advance the continuous cord loop in a first direction to expand the window covering, and to advance the continuous cord loop in a second direction to retract the window covering, a controller that provides position related commands to the motor and drive assembly to control the advancement of the continuous cord loop in the first direction and the advancement of the continuous cord loop in the second direction, and a controller that receives user input along an input shaft to control the motor and drive assembly. and an I / O device for the controller including an input interface that causes the controller to provide position-related commands to the drive assembly, and further including a visual display aligned with an input axis of the input interface, wherein the drive assembly and controller operate in either a vertical mode and a horizontal mode, where in the vertical mode the drive assembly is configured to advance the continuous cord loop in a first direction to lower the window covering and to advance the continuous cord loop in a second direction to raise the window covering, and the visual display and the input axis of the input interface are aligned vertically, and in the horizontal mode the drive assembly is configured to advance the continuous cord loop in a first direction to laterally close the window covering and to advance the continuous cord loop in a second direction to laterally open the window covering, and the visual display and the input axis of the input interface are aligned horizontally.
[0024] In another embodiment, a drive system for use with a window covering system including a window covering expansion and retraction mechanism and a continuous cord loop extending beneath the window covering expansion and retraction mechanism includes a motor configured to rotate an output shaft thereof; a drive assembly configured to engage and advance a continuous cord loop coupled to the window covering expansion and retraction mechanism, whereby advancing the continuous cord loop in a first direction expands the window covering and advancing the continuous cord loop in a second direction retracts the window covering; and a temperature sensor communicatively coupled to a controller that provides position-related commands to the motor and drive assembly, the temperature sensor configured to provide a temperature output representative of a temperature proximate the drive system; and a temperature sensor communicatively coupled to the controller that provides position-related commands to the motor and drive assembly. a light sensor operably coupled to the drive system, the light sensor configured to provide a light output representative of an ambient light intensity proximate the drive system; and a controller providing position related commands to the motor and drive assembly to control advancement of the continuous cord loop in a first direction and advancement of the continuous cord loop in a second direction, wherein the controller receives a plurality of sunlight incidence conditions including a temperature output and a light output, and if the plurality of sunlight incidence conditions received by the controller correspond to one or more window covering criteria, the controller causes the drive assembly to advance the continuous cord loop in the first direction to expand the window covering, and if the plurality of sunlight incidence conditions received by the controller correspond to one or more window covering removal criteria, the controller causes the drive assembly to advance the continuous cord loop in the second direction to retract the window covering.
[0025] In another embodiment, a method of controlling a motor follower includes receiving, by a processor via a graphical user interface of a computing device, a request to select a window covering mechanism from at least one vertical window covering mechanism configured to raise and lower the window covering via the motor follower and at least one horizontal window covering mechanism configured to laterally open and close the window covering via the motor follower; displaying, by the processor via the graphical user interface of the computing device, a graphical representation of the at least one vertical window covering mechanism and the at least one horizontal window covering mechanism; receiving a selection of one of the at least one vertical window covering mechanism and the at least one horizontal window covering mechanism; in response to receiving a selection of one of the vertical window covering mechanism and the at least one horizontal window covering mechanism, displaying via the graphical user interface a position control visual display having a vertically aligned input axis if the selected window covering mechanism is one of the at least one vertical covering mechanism, and displaying via the graphical user interface a position control visual display having a horizontally aligned input axis if the selected window covering mechanism is one of the at least one horizontal window covering mechanism, and in response to receiving a position control input via the position control visual display having an input axis, outputting by the processor a position control command to the motor follower based on the position control input.
[0026] In a further embodiment, a motor drive system includes a motor configured to operate with power to rotate its output shaft, the motor being external to a mechanism for raising and lowering a window covering; a drive assembly configured to engage and advance a continuous cord loop coupled to the mechanism for raising and lowering the window covering, where advancing the continuous cord loop in a first direction raises the window covering and advancing the continuous cord loop in a second direction lowers the window covering; and a controller providing position related commands to the motor and drive assembly to control the advancement of the continuous cord loop in the first direction and the advancement of the continuous cord loop in the second direction, the drive assembly including a motorized coupling mechanism coupling the drive assembly to the output shaft of the motor and configured to rotate the driven wheel in the first and second senses; and a motor controller powering the motorized coupling mechanism, the controller and motor controller configured to implement motor acceleration / deceleration trajectory speed control to limit acceleration of the motor from an idle state to full operating speed and to limit deceleration of the motor from full operating speed back to the idle state.
[0027] In one embodiment, a drive system for use with a window covering system including a head rail, a mechanism associated with the head rail for expanding and retracting the window covering, and a continuous cord loop extending below the head rail for actuating the expanding and retracting mechanism includes a motor configured to rotate an output shaft thereof, a drive assembly configured to engage and advance the continuous cord loop coupled to the expanding and retracting mechanism for advancing the continuous cord loop in a first direction to expand the window covering, and advancing the continuous cord loop in a second direction to retract the window covering, and a drive assembly providing position related commands to the motor and drive assembly to control the advancement of the continuous cord loop in the first direction and the advancement of the continuous cord loop in the second direction. and an I / O device for the controller including a graphical user interface configured to receive user inputs that cause the controller to control position related commands to the motor and drive assembly at a selected speed to advance the continuous cord loop in a selected one of a first direction and a second direction, where in a first speed control mode the I / O device causes the controller to control the speed at which the continuous cord loop is advanced to a selected percentage within a speed range from a rest speed to a maximum speed, and where in a second speed control mode the I / O device causes the controller to control the speed at which the continuous cord loop is advanced to a selected one of a limited number of predetermined speed levels.
[0028] In one embodiment, the motor drive system includes a first motor configured to operate with electrical power to rotate an output shaft thereof, the first motor being external to a first mechanism for raising and lowering the window covering; a drive system configured to engage and advance a continuous cord loop coupled to the first mechanism for raising and lowering the window covering, where advancing the continuous cord loop in a first direction raises the window covering and advancing the continuous cord loop in a second direction lowers the window covering; and a drive system configured to provide position related commands to the first motor and the first motorized drive system to control the rotation of the continuous cord loop. The system includes a controller for controlling advancement in a first direction and advancement in a second direction of the continuous code loop, an RF communications module operatively coupled to the controller for controlling RF communication of position-related instructions to a network of other motor drive systems that operate other mechanisms to raise and lower other window coverings, respectively, and a group mode module for identifying one or more of the other motor drive systems to be included in a group selected by a user and for causing the RF communications module to communicate position-related instructions to one or more of the identified other motor drive systems.
[0029] In one embodiment, the motor drive system includes a motor configured to operate with electrical power to rotate an output shaft thereof, the motor being external to the mechanism for raising and lowering the window covering; a drive assembly configured to engage and advance a continuous cord loop coupled to the mechanism for raising and lowering the window covering, where advancing the continuous cord loop in a first direction raises the window covering and advancing the continuous cord loop in a second direction lowers the window covering; a controller providing position related commands to the motor and drive assembly to control the advancement of the continuous cord loop in the first direction and the advancement of the continuous cord loop in the second direction to control the raising and lowering of the window covering; and a setting control module for user calibration of a top and bottom position of the window covering, the controller limiting the raising and lowering of the window covering between the top and bottom positions following user calibration.
[0030] In one embodiment, a drive system for use with a window covering system including a mechanism for raising and lowering a window covering and a continuous cord loop extending below the mechanism includes a motor configured to operate with power to rotate an output shaft of the motor, a driven wheel coupled to the output shaft of the motor and configured to engage the continuous cord loop, such that rotation of the driven wheel in a first direction advances the continuous cord loop thereby causing the mechanism to raise the window covering, and rotation of the driven wheel in a second direction advances the continuous cord loop thereby causing the mechanism to lower the window covering, one or more sensor targets disposed on the continuous cord loop, a controller for the motor, and a sensor operably connected to the controller, the sensor configured to generate a signal indicative of a presence of each of the one or more sensor targets disposed on the continuous cord loop when the sensor target is located in proximity to or in contact with the sensor.
[0031] In another embodiment, the drive system may be used in conjunction with a window covering system including a roller blind mechanism for raising and lowering a window covering fabric and a continuous cord loop extending below the mechanism, the drive system including a motor configured to be powered to rotate an output shaft of the drive system, a driven wheel coupled to the output shaft of the motor and configured to engage the continuous cord loop, one or more sensor targets disposed on the continuous cord loop, a controller for the motor, and a sensor operatively connected to the controller and configured to generate a signal indicative of a presence of the sensor target on the continuous cord loop when the sensor target is located in proximity to or in contact with the sensor, the controller being calibrated to store a position of each of the one or more sensor targets along the continuous cord loop and configured to receive a signal indicative of the presence of each sensor target and to identify deviations from their respective positions during continuous operation of the drive system.
[0032] Additional features and advantages of certain embodiments will be set forth in and, in part, will be apparent from the description which follows. The objectives and other advantages of the invention will be realized and attained by the structure particularly pointed out in the accompanying drawings as well as the illustrative embodiments written in the specification and claims hereof.
[0033] It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are intended to provide further explanation of the invention as claimed.
[0034] Non-limiting embodiments of the present disclosure are described, by way of example only, with reference to the accompanying drawings, which are schematic and are not intended to be drawn to scale, and unless otherwise indicated as representative of the background art, the figures are representative of aspects of the disclosure. [Brief description of the drawings]
[0035] [Figure 1] FIG. 1 is a perspective view of a window covering system having an external motor system mounted on a flat wall, according to one embodiment. [Diagram 2] FIG. 2 is a perspective view of an installed external motor system for a window covering system according to the embodiment of FIG. 1. [Diagram 3] FIG. 2 is an isometric view of an external motor device. [Figure 4] FIG. 4 is an exploded view of the disassembled components of the external motor device according to the embodiment of FIG. 3. [Diagram 5] FIG. 1 illustrates an isometric view of an external motor device with a sprocket cover in an open position, according to one embodiment. [Figure 6] FIG. 2 is an elevational view of an external motor arrangement from the rear, taken in section through a sprocket driven wheel, according to one embodiment. [Figure 7] FIG. 1 is a block diagram of a control system architecture for an external motor device for a window covering system, according to one embodiment. [Figure 8] FIG. 2 is an elevation view of a battery pack for an external motor device, according to one embodiment. [Figure 9] FIG. 9 is an exploded view of the disassembled components of a battery pack of an external motor device according to the embodiment of FIG. 8. [Figure 10] FIG. 2 is a schematic diagram of monitored and controlled variables of an external motor control system for a window covering system, according to one embodiment. [Figure 11] FIG. 1 is an elevational view of exploded motor drive components of an external motor system, according to one embodiment. [Figure 12] FIG. 4 is a flow chart diagram of a group mode routine according to one embodiment. [Figure 13] FIG. 13 is a flow chart diagram of a grouping mesh routine, according to one embodiment. [Figure 14] FIG. 13 is a flow chart diagram of a calibration routine for an external motor control system, according to one embodiment. [Figure 15] FIG. 4 is a flow chart diagram of a shade control routine, according to one embodiment. [Figure 16] FIG. 13 is an isometric view of an external motor device according to a further embodiment. [Figure 17] FIG. 1 is a front view of a graphical user interface displayed on an electronic device presenting a position control screen of an external motor control application, according to one embodiment. [Figure 18] FIG. 1 is a front view of a graphical user interface displayed on an electronic device presenting a window covering style setup screen for an external motor control application, according to one embodiment. [Figure 19] FIG. 1 is a front view of a graphical user interface displayed on an electronic device presenting a window covering selection screen of an external motor control application, according to one embodiment. [Figure 20] FIG. 1 is a front view of a graphical user interface displayed on an electronic device presenting a position control screen of an external motor control application, according to one embodiment. [Figure 21] FIG. 13 is an isometric view of an external motor device according to a further embodiment. [Figure 22] FIG. 1 is a front view of a graphical user interface displayed on an electronic device presenting a speed control screen of an external motor control application, according to one embodiment. [Diagram 23] FIG. 13 is an elevation view of the top of a three external motor device from the rear with the cover removed, according to one embodiment. [Figure 24] FIG. 13 is an elevation view of the top of a three external motor device from the rear with the cover removed, according to one embodiment. [Diagram 25] FIG. 1 illustrates an isometric view of a curved guide rail having a mounting surface for an infrared sensor, according to one embodiment. [Figure 26] FIG. 2 illustrates an isometric view of an infrared sensor on a printed circuit board according to one embodiment. [Figure 27] FIG. 1 illustrates an isometric view of a curved guide rail with leaf spring contact sensors, according to one embodiment. [Figure 28] FIG. 1 illustrates a perspective view of a curved guide rail with a flat contact sensor, according to one embodiment. [Figure 29] FIG. 1 illustrates an isometric view of a flat guide rail with a flat contact sensor, according to one embodiment. [Diagram 30] FIG. 1 illustrates a perspective view of a flat guide rail with wire contact sensors according to one embodiment. [Diagram 31] FIG. 1 is a block diagram of a power management system for an external motor device, according to one embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0036] The present disclosure is described in detail herein with reference to the embodiments illustrated in the drawings, which form a part hereof. Other embodiments may be used and / or other changes may be made without departing from the spirit or scope of the present disclosure. The exemplary embodiments described in the detailed description are not meant to limit the subject matter presented herein. Moreover, the various components and embodiments described herein may be combined to form additional embodiments not expressly described without departing from the spirit or scope of the present invention.
[0037] Reference will now be made to the exemplary embodiments illustrated in the drawings and specific terms will be used to describe the same, but it will be understood that no limitation of the scope of the invention is thereby intended. Alterations and further modifications of the features of the invention illustrated herein, and further applications of the principles of the invention illustrated herein, which would occur to one of ordinary skill in the art and in possession of this disclosure, are to be considered within the scope of the invention.
[0038] This disclosure describes various embodiments of an external motor device for controlling the operation of a window covering system. In various embodiments, the external motor device employs an on-device control, a separate control device (e.g., a mobile computing device), or both. As used in this disclosure, a "window covering system" is a system for extending and retracting or raising and lowering a window covering. In an embodiment shown at 200 in FIG. 1, the window covering system includes a head rail 202 and a mechanism (not shown) associated with the head rail (i.e., a mechanism within or adjacent to the head rail) for extending and retracting the window covering. In this embodiment, the window covering system 200 includes a continuous cord loop 220 extending below the head rail that activates a mechanism associated with the head rail to extend and retract the window covering. As used in this disclosure, "head rail" is a broad term for the structure of the window covering system, including the mechanism for extending and retracting the window covering. The window covering system further includes an external motor 210. A continuous cord loop 220 operably couples a window covering mechanism attached to the headrail 202 to an external motor 210 to raise and lower a window shade (fabric, or blind) 204. As seen in Figure 2, the external motor 210 is mounted to a wall 206 adjacent to a window, which in this illustration is covered by a shade 204. For example, the external actuator may be attached to the wall 206 using hardware such as bolts 214 or using a mounting such as bracket 194 in Figure 4.
[0039] In this disclosure, a "window covering" includes any covering material that can be deployed and tucked using a continuous cord loop system (i.e., a system having a mechanism for deploying and tucking the window covering using a continuous cord loop) to cover a window or other architectural opening. Such window coverings include most shades and blinds, as well as other covering materials such as roller shades; honeycomb shades; horizontal sheer shades, pleated shades, woven wood shades, Roman shades, Venetian blinds, Pirouette® shades (Pirouette is a trademark of Hunter Douglas NV, Rotterdam, Germany), and certain systems for opening and closing curtains and drapes. Although the window covering embodiments described herein refer to blind(s), it is understood that these embodiments are exemplary of other forms of window coverings.
[0040] As used in this disclosure, a "continuous cord loop" is an open-ended loop of flexible material, such as a textile cord, a beaded chain, or a ball chain. As used in this disclosure, a continuous cord loop of textile cord may also be referred to as a corded continuous cord loop, a continuous cord loop cord, or simply a cord. A chained continuous cord loop may also be referred to herein as a continuous cord loop chain. Various types of metal and plastic beaded chains and ball chains are commonly used as continuous cord loops for window covering systems. A typical ball chain has a diameter of 5 mm (0.2 inches) and may include metal and plastic beaded chains or ball chains. A corded continuous cord loop includes a length of natural or synthetic fiber. Continuous cord loops, in the form of loops of fiber, are available in a variety of styles and diameter ranges, e.g., D-30 (1 1 / 8" to 1 1 / 4"), C-30 (1 3 / 16" to 1 7 / 16"), D-40 (1 3 / 16" to 1 7 / 16"), K-35 (1 1 / 4" to 1 1 / 2"), etc. In various embodiments, the cord is made from multiple lengths of fiber braided, twisted, or woven together to form a curled composite structure. Synthetic fiber cords may be formed from nylon, polypropylene, or polyester, for example. Natural fiber cords may be formed from manila or sisal, for example.
[0041] A continuous cord loop includes two substantially parallel cords or chains having an overall length (e.g., 1 m) and a loop length or "drop" (e.g., 0.5 m). A continuous cord loop may be of different cord loop lengths, i.e., lengths between a first loop end and a second loop end, rounded to the nearest foot. In a typical window covering system design, the continuous cord loop includes a first loop end at the head rail that engages a mechanism associated with the head rail that unfolds and stows the window covering, and a second loop end that is distal from the head rail. In one embodiment, for example, in a roller blind system, the continuous cord loop extends between the head rail and the second loop end, but does not extend across the head rail. In this embodiment, the first loop end may be wrapped around a clutch that is part of the mechanism that unfolds and stows the blind. In another embodiment, for example, in a vertical blind system, a section of the continuous cord loop extends across the head rail. In one embodiment, the continuous cord loop extends substantially vertically below the head rail. When an external motor device of the present invention is being retrofitted to control a previously installed window covering mechanism, the continuous cord loop can be part of the previously installed window covering mechanism. Alternatively, a user can retrofit the cord or chain of the continuous cord loop to a previously installed window covering mechanism.
[0042] The continuous cord loop system may cause the window covering to unfold and retract by raising and lowering, by opening and closing laterally, or by other movements that expand the window covering to cover an architectural opening and retract the window covering to uncover an architectural opening. It is understood that the embodiments described herein generally refer to raising and lowering the blinds under the control of an external motor system or manually, and that these embodiments are illustrative of other movements that expand and retract the window covering. The external actuator 210 incorporates a motor drive system and control electronics that automate the movement of the continuous cord loop 220 in one of two directions to raise or lower the blinds 204. In one embodiment of the window covering system 200, the continuous cord loop 220 includes a rear cord / chain 224 and a front cord / chain 222. In this embodiment, pulling down the front cord raises the blinds (retracts) and pulling down the rear cord lowers the blinds (unfolds). As used in this disclosure, "advancing" the continuous cord loop means moving the continuous cord loop in either direction (e.g., pulling down on the front cord of the continuous cord loop or pulling down on the back cord of the continuous cord loop). In one embodiment, when the continuous cord loop is released, the blinds automatically stop and lock into place. In one embodiment, the back cord of the continuous cord loop, at the bottom of the blind, can be used to open any of the vanes of the blind, while the front cord can be used to close those vanes.
[0043] As seen in the isometric view of FIG. 3, the external motor 100, which generally corresponds to the external motor 210 of FIGS. 1 and 2, may include a housing 102 that houses a motor and associated drive mechanism and control electronics. The external actuator 100 includes various on-device controls for user input and output. For example, the external actuator 100 may include a touch strip 104 (also called a slider or LED strip). In the illustrated embodiment, the touch strip 104 includes a single-axis input device and a single-axis visual display device. The external actuator 100 further includes various button-based inputs, including a power button 106 at the front of the housing and a set of control buttons 110 at the top of the housing. In one embodiment, the control buttons 110 include an RF button 112, a set button 114, and a group button 116.
[0044] In one embodiment, the buttons 106, 110 are physical (movable) buttons. The buttons may be recessed into the housing 102 or may protrude above a surface of the housing 102. Instead of or in addition to the touch strip and physical buttons seen in FIG. 1, the input controls may include any suitable input mechanism capable of closing an electrical contact in an electrical circuit, or breaking an electrical circuit, or changing the resistance or capacitance of an electrical circuit, or causing other state changes in an electrical circuit or electronic routine.
[0045] In various embodiments, alternative or additional input devices may be employed, such as various types of sensors (e.g., gesture or other biometric sensors, accelerometers, light sensors, temperature sensors, contact sensors, pressure sensors, motion sensors, proximity sensors, presence sensors, capacitive sensors, and infrared ("IR") sensors). Other user input mechanisms include touch screen buttons, holographic buttons, voice activation devices, voice triggers, relay input triggers, or electronic communication triggers, among other possibilities, including combinations of these input mechanisms. FIG. 16 illustrates an alternative external motor 1000 that includes input devices 1004, 1006, 1012, 1014, and 1016 that generally correspond to the input devices of motor 100. In addition, external motor 1000 includes a two-dimensional screen 1008 located on the front of external motor 1000 above LED strip 1004 and below power button 1006. The two-dimensional screen 1008 may be a touch screen and may provide various input / output capabilities such as a virtual keypad, an alphanumeric display, and a graphical user interface, among others.
[0046] FIG. 4 is an exploded view of the components of the external actuator 100. Starting with the components at the front of the device at the bottom left, the front bezel 130 includes a power button glass plate that covers the power button 106. The front cover glass plate 134 includes an opening for the power button. The front cover 136 houses the power button 106 and serves as a transparent cover plate for the touch strip 104. The visual display components of the single-axis strip 104 include an LED strip (also called an LED) 140 and a diffuser 138. The input sensor of the single-axis strip 104 is a capacitive touch sensor strip 142. These components serve as the I / O devices for the external motor 100 and include an input interface that receives user input along an input axis and a visual display aligned with the input axis. The I / O devices extend vertically outside the housing 102 when fully assembled.
[0047] Other input / output components include connectors for communication and / or power transfer, such as a USB port 146, and a speaker (audio output device) 144. The LEDs and audio output of the external motor 100 can be used by the state machine of the external motor 100 to provide visual and / or audio cues to signal an action to be taken or to signal a state change. Parameters for the visual cues of the LEDs 140 include, for example, (a) different positions of the LED indicator (block of LEDs) along the slider 104, (b) different RGB color values of the LED light, and (c) a steady or blinking (including different blink rates) LED indicator.
[0048] In an example of a visual cue involving the group mode feature, a user can press the group mode button 116 once to cause the external motor devices in the network to light up their LED displays to let the user know which device will be controlled. Once a user has successfully programmed the external motor 100 to control multiple external motors in a network by pressing the group mode 116 button, the color of the LED strips 140 of all external motors being controlled will change from a steady blue to a steady green.
[0049] In an example of a visual cue involving the set function, when the user initiates a calibration procedure by pressing and holding the set button, the LED strip 140 will change red and blue to inform the user that the external motor 100 is in calibration mode. When the user successfully completes the calibration procedure, the LED strip 140 will flash green to indicate that the shade is calibrated.
[0050] In an example of a visual cue involving a position setting, when a user taps a finger at a particular location along the capacitive touch strip 104, the LED strip 140 lights up a block of LEDs at this last known location. This indicator tells the user where the shade is located, either open or closed.
[0051] In an example of an audio cue, an audio alarm sounds to signal a safety hazard. In a further example, the speaker 144 broadcasts instructions to the user for shade control functions.
[0052] The motor drive components are housed between the body 150 and the back cover 170 of the housing 102. The motor components include a motor 152 (e.g., a 6V DC motor) and various components of a drive assembly. The drive assembly components include a worm gear 154 that is driven by rotation of the motor and is coupled to a multi-stage gear assembly 160, and a clutch (not shown in FIG. 2). The gear assembly 160 includes a helical gear 162 (first stage gear), a first spur gear 164 (second stage gear) rotatably mounted on a sleeve bearing 156, and a second spur gear 166 (third stage gear). A printed circuit board ("PCB") 148 houses the control electronics for the external motor device 100.
[0053] The spur gear 166 is coupled via a clutch (not shown) to a sprocket 184, also referred to as a driven wheel, mounted on the rear side of the back cover 170. The continuous cord loop (chain) 120 is attached to the sprocket 184 such that the motion of a drive component, when coupled to the driven wheel 184 by a clutch, advances the continuous cord loop 120.
[0054] The drive assembly is configured to engage and advance a continuous cord loop that is coupled to a mechanism for raising and lowering the window covering. The drive assembly includes a driven wheel 184 and a coupling mechanism (152, 160, clutch) that couples the driven wheel 184 to an output shaft of a motor. The coupling mechanism is configured to rotate the driven wheel 184 in a first and second sense. Rotation of the driven wheel in the first sense advances the continuous cord loop in a first direction, and rotation of the driven wheel in the second sense advances the continuous cord loop in a second direction.
[0055] The structural components of the rear of the external motor 100 include the rear cover 178, the driven wheel cover 190, the rear cover glass plate 180, and the sprocket cover glass plate 188. These components are covered by a rear bezel 192, which is coupled to a bracket 194 that serves as a mounting for the external motor 100. FIG. 5 is an isometric view of the external motor device with the driven wheel cover 190 in an open position, according to one embodiment. The external motor 100 includes a removable panel 108 on the side of the housing 102 to provide access to the internal components of the external motor 100. FIG. 6 is a rear elevational view of the external motor device 100 with the driven wheel cover 190 removed. When the sprocket cover 190 is closed, the housing 102 and the driven wheel cover 190 define an opening 182 at the top of the external motor 100. A continuous cord loop 120 is routed through these openings during installation.
[0056] Referring again to FIG. 3, the input interface of the external motor 100 may recognize various user input gestures in generating commands to open or close the window covering, and other system functions. These gestures include typing-style gestures such as touch, press, push, tap, double tap, and two-finger tap, pattern tracing gestures such as swipe, wave, and hand motion control, as well as multi-touch gestures such as pinching a specific spot on the capacitive touch strip 104. In the case of a two-dimensional user interface, such as the touch screen 1008 of FIG. 16, additional user gestures such as multi-touch rotation and tracing two-dimensional patterns may be employed. In one embodiment, the two-dimensional input interface 1008 may include a single-axis control that receives user input along an input axis.
[0057] The on-device control of the external motor of the present invention incorporates a shade position control I / O device such as slider 104. Slider 104 extends vertically on housing 102 along the input axis of the I / O device. The vertical orientation of slider 104 naturally corresponds to the physical attributes of shade positioning in mapping a given input to a shade control function in the command generating device, providing an intuitive and user-friendly control function. Examples of shade control I / O positioning functionality via slider 104 include, among others:
[0058] (a) A gesture at a given slider position between the bottom and top of the slider 104 corresponds to a given absolute position (height) of the blinds as measured by an encoder or other sensor.
[0059] (b) a gesture at a given position between the bottom and top of the slider 104 corresponds to a given relative position of the blinds with respect to a calibrated distance between the set bottom position and the set top position (e.g., a gesture at a position 25% from the bottom of the slider 104 corresponds to a blinds position of 25% of the calibrated distance from the set bottom position to the set top position).
[0060] (c) Gestures at the top and bottom of the slider 104 can perform different shade control functions depending on the gesture. Pressing and holding the top of the slider 104 commands the blinds to move continuously upwards, while pressing and holding the bottom of the slider 104 commands the blinds to move continuously downwards. Tapping the top of the slider 104 commands the blinds to move to their topmost position, while tapping the bottom of the slider 104 commands the blinds to move to their bottommost position.
[0061] (d) Up and down dynamic gestures (eg, swipes) on the slider 104 can be assigned different functions, such as "up" and "down," or "start" and "stop."
[0062] The slider 104 provides a versatile I / O device suitable for various control functions of the window covering motor drive system. The various shade control functions can be based on a one-axis quantitative scheme associated with the touch strip 104, such as a percentage scale with 0% at the bottom of the touch strip 104 and 100% at the top of the touch strip 104. For example, the slider 104 can be used to set blind positions at various opening levels via pre-set control options, such as opening levels 0% open (i.e., closed state), 25% open, 50% open, 75% open, or 100% (fully) open. A user can command these opening levels via the slider 104 by swiping, tapping, or pressing various points on the slider. Additionally, the slider command scheme can incorporate boundary positions for state changes. For example, a slider input below the quarter position of the slider can command the window covering to close from 25% open to 0% open.
[0063] Various functions of the slider 104 may employ a combination of the slider's single-axis input sensing and single-axis display functions. For example, the LED strips 140 may illuminate specific locations along the touch strip 104, with these illuminated locations corresponding to boundaries along the slider for state changes in the shade command structure.
[0064] In the external motor device 2100 of FIG. 21, the vertical touch strip input device is replaced with capacitive touch buttons 2110, 2120, 2130 for various motion states. Touch button 2110 activates an up motion, touch button 2120 activates a down motion, and touch button 2130 activates an idle (stationary) motion state. For example, pressing the up or down button may cause continuous up or down motion, tapping the button may move the window covering position up or down to the next set position, and double tapping the button may move the window covering position to the top or bottom calibrated position.
[0065] 7 is a diagram of a motor driven control system 300 for a continuous cord loop driven window covering system. The control system 300 includes a DC motor 302, a gear assembly 304, and a clutch 306. Both the DC motor 302 and the clutch 306 are powered by a motor controller 308. The power source includes a battery pack 312. A user may recharge the battery pack 312 via a power supply circuit 314 using a charging port 316 or a solar array 318.
[0066] The central control element of the control system 300 is a microcontroller 310, which monitors and controls a power supply circuit 314 and a motor controller 308. In one embodiment, the microcontroller 310 and the motor controller 308 are battery powered. Inputs to the microcontroller 310 include a motor encoder 322 and a sensor 324. In one embodiment, the sensor 324 includes one or more temperature sensors, light sensors, and motion sensors. In one embodiment, the control system 300 regulates daylighting, controls room temperature, limits glare, and controls other window covering functions such as privacy.
[0067] In one embodiment, the microcontroller 310 monitors the current flow from the motor controller 308 and uses this data to monitor various system conditions. For example, the control system 300 can use current flow sensing to lift heavier blinds at a slower speed during calibration and lighter blinds at a faster speed. In another embodiment, the microprocessor 310 monitors the motor current flow to determine deviations from a constant current flow as an indication of the window covering position and its opening level. For example, if the current flow averages 1 amp while raising the window covering, assuming the blinds are in a fully closed position (0% open), the current flow may spike to 3 amps as the fabric is wound to indicate the window blinds are in a fully open position (100% open).
[0068] In another embodiment, the monitored current flow measurements are analyzed to determine the direction of the driven wheel, and thereby the direction in which the window blinds are opening or closing. In one example, an external motor drive rotates the driven wheel in one direction and then the opposite direction while monitoring the current flow. The direction producing a greater current flow indicates the direction in which the blinds are opening. This method assumes that a greater torque (and greater current flow) is required to open a window, and a lesser torque (and lesser current flow) is required to close a window.
[0069] In addition, the microcontroller 310 may have wireless network communication with various RF modules via a radio frequency integrated circuit ("RFIC") 330. The RFIC 330 controls the two-way wireless network communication with the control system 300. Wireless networks and communication devices may include local area networks ("LANs"), which may include user remote control devices, wide area networks ("WANs"), wireless mesh networks ("WMNs"), "smart home" systems and devices such as hub thermostats and smart thermostats, among many other types of communication devices or systems. The control system 300 may employ standard wireless communication protocols such as Bluetooth, WiFi, Z-Wave, ZigBee, Thread, etc.
[0070] The output interface 340 controls system output from the microprocessor 310 to output devices such as LEDs 342 and speakers 344. The output interface 340 controls the display of visual and audio cues that identify the state of the external motor control system and communicate messages. The input interface 350 controls system input from input devices such as a capacitive touch device 352 and buttons 354. The input interface 350 recognizes a given user input that can be mapped by the microprocessor 310 to a shade control function within the instruction generating device. For example, the input interface 350 may recognize a given finger gesture of a user on a touch strip or other capacitive touch device 352.
[0071] In one embodiment, the encoder 322 is an optical encoder that outputs a given number of pulses for each revolution of the motor 302. The microcontroller 310 advantageously counts these pulses and analyzes the pulse count to determine the motion and position characteristics of the window covering installation. Other types of encoders, such as magnetic encoders, mechanical encoders, etc., may also be used. The number of pulses output by the encoder may be related to the linear displacement of the blind fabric 204 by a distance-to-pulse or pulse-to-distance conversion factor. For example, referring to FIG. 5, when the window blind 204 is in a fully closed position (0% open), the window blind can be raised to the top of the window frame by pressing and holding a button on the external motor 210, at which point the button can be released. The external motor 210 can measure this travel as the total length (height) of the fabric 204 and thus determine its fully open, fully closed, and open levels in between.
[0072] In one embodiment, the control system 300 monitors various modes of system operation and engages or disengages the clutch 306 depending on the operating state of the system 300. In one embodiment, when the DC motor 302 is rotating its output shaft under user (operator) control or under automatic control by the microcontroller 310, the clutch 306 is engaged, thereby advancing the continuous cord loop 320. When the microcontroller 310 is not processing an operator command or an automated function to advance the continuous cord loop, the clutch 306 is disengaged, allowing a user to manually advance the continuous cord loop to operate the window covering system. In the event of a power outage, the clutch 306 is disengaged, allowing manual operation of the window covering system.
[0073] The battery pack 312 may be an internal component of the external motor device 100 housed within the housing 102 or may be an external device removably coupled to the housing 102. As shown in the embodiment of FIG. 8, the battery pack 380 provides a removable, rechargeable battery for powering the device 100. The battery pack 380 is shown as an external device that can be coupled to the motor device 100 by plugging a power connector 390 into a socket (not shown) in the housing 102. In this example, the battery pack 380 can be inserted upwards to plug into a socket that receives the power connector 390 from the bottom side. However, it is contemplated that other battery pack configurations can be used, allowing the battery pack to be plugged into the housing from any angle or orientation. Additionally, the battery pack can be configured to have a power connector or other connection mechanism on any side of the battery pack to mate with a socket or coupling in the housing.
[0074] As shown in FIG. 9, the battery pack components include a power connector 390, a housing 392, a lid 394, a protection circuit board 396, and a battery holder 398 (e.g., a lithium-ion battery). As shown in FIGS. 8 and 9, the housing 392 of the battery pack 380 has straight sides (e.g., square) and may include curved edges. The form factor is not limited to this particular configuration and may be any configuration that can be accommodated by the housing 102 of the window control system. For example, in FIGS. 8 and 9, the battery pack 380 is an external device removably coupled to the housing 102, the housing having substantially square sides and capable of storing a lithium-ion battery in the battery holder 398. In another example, as shown in FIG. 11, the battery pack 526 is an internal component of the external motor device 100, the external motor device further having rectangular sides and capable of storing six AAA rechargeable batteries 528.
[0075] In the assembly of the battery pack 380, battery cells (not shown), such as lithium ion batteries, are disposed and / or secured within a battery holder 398. The battery cells may be inserted onto or between electrical contacts in the battery holder 398, for example in a vertically aligned stack of battery cells, with electrical contacts coupled to positive and negative battery terminals (not shown). Electrical lines 397 within the battery holder 398 are connected to a PCB 396, which may be mounted within the battery pack 380 separate from the battery holder 398. An electrical connector 390 is attached to the PCB 396 extending vertically from the PCB. The battery pack 380 is closed by attaching a lid 394 so that the electrical connector 390 extends above the battery pack 380 through a slot 395.
[0076] FIG. 31 is a block diagram of a power management system 3100 for an external motor device. The power management system includes a battery pack control PCB 3120 operably coupled to a motor control main board 3110. The motor control main board 3110 provides positioning and other motor control instructions to the motor via the battery pack control PCB 3120 and monitors the operation of the battery pack control PCB 3120. The battery pack control PCB 3120 provides DC power to the motor 3140 (e.g., 12V at 2A power) and to the main board 2110 (e.g., in the range of 3-4.2V).
[0077] The battery pack control PCB 3120 interfaces with various DC power sources 3150, 3124, 3126, and the battery and protection components 3150 includes a rechargeable battery 3170 and a charging protection board 3160. The PCB 3120 also outputs DC power to the battery and protection components 3150 to recharge the rechargeable battery 3170 as needed.
[0078] The second DC power input of the battery pack control PCB 3120 is a solar charger interface 3122, which receives DC power from a photovoltaic (PV) array 3124. The photovoltaic cells of the PV array 3124 use sunlight as an energy source to generate a direct current. In one embodiment, the solar charger interface 3122 is a high energy device that incorporates energy harvesting technology. In one example, the solar charger specifications include current <1uA, peak charging current >20mA, 4.2V charging capability, very low charging voltage (e.g., 100mV), and battery leakage current <1uA.
[0079] The third DC power input on the battery pack control PCB 3120 is a USB charger interface 3128, which receives 5V DC power from a USB cable 3126 plugged into a charger, such as an AC power adapter. In one example, the USB charger specifications include very low battery leakage current, overvoltage protection, overcurrent protection, and support for 4.2V charging.
[0080] The battery pack control PCB 3120 includes a gauge 3130 (also referred to as a fuel gauge) that measures the remaining capacity level of the battery under various operating conditions. The fuel gauge 3130 interfaces with various system components, such as the battery and protection components 3150 and the battery indicator 3136. In one embodiment, the fuel gauge 3130 incorporates a low power microcontroller that takes in environmental data and calculates the remaining energy. In one embodiment, the fuel gauge microcontroller does not require initial calibration. In one example, the fuel gauge specifications include a sleep current of approximately 10uA, 4.2V charging capability, and capacity >12000mA. In one embodiment, the fuel gauge 3130 includes a display that displays the remaining energy level of the battery. In an alternative embodiment, the gauge 3130 can be an indicator light that displays a light or a particular color (e.g., red, orange, green) that represents the remaining capacity of the battery.
[0081] The battery pack control PCB 3120 includes a boost converter 3134 as a motor driver. The boost converter 3134 is a DC-DC power converter that boosts the voltage while lowering the current from its input (DC power source) to its output or load (DC motor 3140). By increasing the supply voltage, the boost converter 3134 can reduce the number of cells required in the battery 3170. In one example, the boost converter specifications include input voltage 3V-4.5V, output adjustable 9V-12V, 2A, shutdown current (at Vin) <5uA, efficiency >90%.
[0082] In one embodiment, the battery pack control PCB 3120 incorporates an integrated circuit that includes multiple power rails and power management functions in a single chip. The IO expander 3132 provides additional inputs and outputs (I / O) on a microprocessor (MPU) or microcontroller (MCU) system. In one embodiment, the IO expander 3132 is a GPIO expander and includes an efficient data bus interface that reduces the I / O requirements of the MPU or MCU of the motor drive motherboard 3110 as an input to the boost converter 3134.
[0083] 10 is an input / output (black box) diagram of an external motor control system 400. Monitored variables (inputs) 410 of the external motor control system 400 include user input commands (e.g., a string packet containing commands) 412 for controlling the blinds, distance (e.g., in meters) 414 from the top of the blinds to the current position, the blinds roll-up speed (e.g., in meters per second) 416, the current charge level of the battery (e.g., in mV) 418, temperature sensor output (e.g., in mV) 420, light sensor output (e.g., in mV) 422, motion sensor output (e.g., in mV) 424, smart home hub commands (e.g., a string packet containing commands) 426, smart home data (e.g., a thermostat temperature value in degrees Celsius) 428, and motor 302 current draw (e.g., in Amps) 430.
[0084] Controlled variables (outputs) 440 of the external motor control system 400 include the intended rolling speed of the blinds at a given time (e.g., in meters per second) 442, the intended displacement from the current position at a given time (e.g., in meters) 444, feedback instructions from the device to the user (e.g., a string packet containing instructions) 446, an instruction to engage / disengage the clutch at a given time 448, and output data to the smart home hub (e.g., a temperature value in degrees Celsius corresponding to the temperature sensor output 420) 450.
[0085] In one embodiment, the external motor control system 400 sends data (such as sensor outputs 432, 434, and 436) to a third party home automation control system or device. The third party system or device can act on this data to control other home automation functions. Third party home automation devices include "smart thermostats" such as, for example, the Honeywell Smart Thermostat (Honeywell International Inc., Morristown, NJ), Nest Learning Thermostat (Nest Labs, Palo Alto, CA), Venstar programmable thermostat (Venstar, Inc., Chatsworth, CA), and Lux programmable thermostat (Lux Products, Philadelphia, PA). Other home automation devices include HVAC (heating, ventilation, and air conditioning) systems and smart ventilation systems.
[0086] In another embodiment, the external motor control system 400 accepts commands as well as data from third party systems and devices and acts upon these commands and data to control the window covering system.
[0087] In one embodiment, the external motor control system 400 schedules the operation of the window covering system via a schedule programmed by a user.
[0088] In one embodiment, the sensor output of the motion sensor 424 is incorporated into a power saving process. The sensor 424 may be a presence / motion sensor in the form of a passive infrared ("PIR") sensor, or may be a capacitive touch sensor associated with a capacitive touch input interface of the external motor, for example. In this process, the external motor system 400 sleeps / sleeps until the presence / motion sensor detects user motion or presence. In one embodiment, at which point an LED indicator on the external motor device is illuminated to indicate that the device may be used. In one embodiment, after a period of inactivity, the device goes into a low power state to conserve energy.
[0089] In further embodiments, the external motor control system 400 may control multiple window covering systems and group the window covering systems to control them together as described above with respect to group mode control, such as external motors associated with windows facing a particular direction, external motors associated with windows located on a given floor of a building, etc.
[0090] In another embodiment, the external motor control system 400 controls a window covering system based on the monitored sensor output. For example, based on the light sensor output 422, the window covering system may automatically open or close based on certain lighting conditions, such as opening the blinds at sunrise. In another example, based on the motion sensor output 424, the system may automatically open the blinds upon detecting a user entering the room. In yet another example, based on the temperature sensor output 420, the system may automatically open the blinds during the day to warm up a cold room. Additionally, the system may store the temperature sensor data to send to other devices.
[0091] FIG. 11 is an elevational view of the structural and operational components assembled from the motor drive subassembly 500 from one side. The front and rear housings 514 and 516 enclose the drive train and other operational components of the drive system 500, but are shown here separate from these components. The DC motor 520 operates under power and control from the PCB 532 and the battery pack 526. The battery pack 526, shown in phantom in FIG. 11, is a battery holder with rectangular sides that can store six AAA rechargeable batteries 528, although the use of six batteries is for illustrative purposes only. The batteries 528 can be nickel metal hydride ("NiMH") or lithium ion polymer ("LiPo") batteries arranged in a stacked vertical arrangement within the battery pack 526. The battery pack 526 can be located within the front and rear housings 514 and 516 as shown, or can be external to these housings. The drive system 500 may incorporate other forms of battery pack 526 and other arrangements of batteries 528 within battery pack 526. Battery pack 526 may be a removable component that can be inserted and removed at the bottom or side of the external motor device 100, for example, by removing access panel 108 on the side of the external motor device 100 (FIG. 5). Batteries 528 may be recharged while battery pack 526 is stored within external motor device 100 or after removal of battery pack 526 from external motor device 100. PCB 532 may include power management components that control power to motor 520, control recharging of battery 528, and may include other functions such as monitoring and displaying the state of charge of battery 528. An example of a power management system is shown in FIG. 31.
[0092] DC motor 520 has a rotating output shaft that rotates driven wheel 508 via a multi-stage gear assembly 522. Multi-stage gear assembly 522 includes gear 523 aligned with the motor output shaft and face gear 524. Face gear 524 is coupled to driven wheel 508 by a clutch system 512. Clutch 512 is a coupling mechanism that includes an engaged configuration, where rotation of the output shaft of motor 520 (transmitted by the multi-stage gear assembly) causes rotation of driven wheel 508, and a disengaged configuration, where driven wheel 508 is not rotated by the motor output shaft. In one embodiment, clutch 512 is an electrically operated device that mechanically transmits torque, such as an electromagnetic clutch or a solenoid. In another embodiment, clutch 512 is a purely mechanical bidirectional clutch that is not electrically operated.
[0093] Successive presses of the power button 504 alternately switch the drive assembly between an engaged and disengaged configuration of the clutch system 512. The power button 504 corresponds to the power button 106 in the external actuator embodiment 100 of Figures 1 and 2. In one embodiment, the power button 106 switches the device on or off by engaging and disengaging the driven wheel or sprocket 508, respectively, from the clutch system 512. In another embodiment, pressing the power button 106 triggers the external actuator 100 to power on and off.
[0094] In one embodiment utilizing a purely mechanical bi-directional clutch, when the power button 106 is pressed in the "on" position, the mechanical clutch engages the driven wheel to the motor output shaft and gear assembly. This is a tensioned position in which the mechanical clutch does not allow movement of the driven wheel by manually pulling or towing the front chain / cord 122 or rear chain / cord 124. In this engaged configuration, when the external motor 100 receives a shade control command from an on-device control or other device, it energizes the motor to rotate the output shaft and gears, which in turn rotate the driven wheel. When the power button 106 is pressed in the "off" position, the mechanical clutch disengages the driven wheel from the output shaft and gears, thereby allowing manual operation of the front chain / cord 122 or rear chain / cord 124. In the disengaged configuration, the driven wheel will not rotate if a shade control command is sent when the clutch is not engaged.
[0095] In another embodiment, the clutch system is an electromagnetic clutch in which the driven wheels are constantly engaged with the output shaft and gear assembly, allowing manual operation of the front chain cord 222 or the rear chain cord 224. This clutch does not lock the driven wheels to the output shaft and gears, but will engage the driven wheels with the output shaft and gears when energized.
[0096] In a further embodiment, when the external motor 100 is turned "on" via the power button 106, i.e., engaged with the driven wheels, the system will recognize the user pulling on the front or back chain / cord. In one embodiment, if the user pulls on the front chain / cord 122 while the external motor is under tension, the LED associated with the touch strip 104 will flash to inform the user that the device can be controlled using the capacitive touch strip instead.
[0097] In another embodiment, if the user pulls on the chain / cord while the external motor is turned "on" via the power button 106, i.e., engaged with the driven wheel, and tension is applied to the drive assembly, the external actuator 100 will recognize the user's action using sensors and / or encoders and will automatically lower or raise the blinds or take other action based on the command associated with the particular pulling action. The actions mentioned can include pulling the front chain / cord 122 or the back chain / cord 124.
[0098] In one embodiment, a sensor and / or encoder on the external motor 100 measures manual movement of the cord via a user "pulling" or pulling the cord. The mechanical coupling of the sprocket 184 to the gear assembly 160 includes a specific amount of slack such that a user's pulling of the continuous cord loop 120 causes a specific amount of movement of the sprocket, which is recognized by a sensor or encoder (e.g., encoder 322, FIG. 7). Based on the output of the sensor or encoder, the shade control command structure can include various shade control actions to engage the motor to perform a given action. Pulling the cord while the external motor 100 is engaged to open or close the blinds can send various commands, such as stopping the blinds open / close.
[0099] 13 is an example of a towing operation that engages the motor to execute a shade control command.
[0100] (a) Senses a downward pull and engages a DC motor in the same direction. For example, if a user pulls down on the front chain / cord 122, the motor will operate to lower the window shade.
[0101] (b) A downward pull is sensed and the DC motor is disengaged: For example, if the user pulls down on the rear chain / cord 124 while the motor is raising or lowering the window shade, the motor will disengage, stopping the shade in its position.
[0102] (c) A downward pull is sensed, engaging the DC motor in the opposite direction. For example, if a user pulls down on the rear chain / cord 124, the motor will operate and raise the window shade.
[0103] Referring again to FIG. 3, the RF button 112 is used to pair or sync the external motor to a cell phone via an RF chip, including but not limited to BLE ("Bluetooth Low Energy"), WiFi, or other RF chips. The RF button 112 can be used to pair or sync to third party devices, such as smart thermostats, HVAC systems, or other smart home devices, by forming a mesh network utilizing RF chips with various protocols, including but not limited to BLE (Bluetooth Low Energy) mesh, ZigBee (e.g., ZigBee HA 1.2), Z-Wave, WiFi, and Thread.
[0104] The group button 116 adds multiple external motors 100 in the network to a group in order to control these external motors simultaneously. In one embodiment, the group mode allows the user to control all external motors in the group from one external motor 100. In one embodiment, to add additional external motors to the group, the user enters pairing mode by pressing and holding the group button 116. The LED light on the touch strip 104 will flash orange to indicate that the device is in pairing mode. In one embodiment, the user presses and holds the group button of every external motor in the network that they wish to add to the group within a specified time frame. The LED color will change from orange to green for every external motor added to the group to indicate that the pairing was successful. In another embodiment, the user can remove a device currently in the group by pressing the group button 116 once, so that the group button performs a toggle function to add or remove an external motor from the group. In one embodiment, the user presses the set button 114 to complete the pairing and linking of the external motors in the group.
[0105] To control a group of external motors that are linked or synchronized together, a user can activate group control by pressing the group button 116. In one embodiment, this causes the LED on the capacitive touch slider 104 to change to a different color. All external motors in the group will light up or flash the same LED color to indicate that the external motors have entered group control mode. The user can then use the capacitive touch slider control 104 to set the blinds' position and control all of the linked devices.
[0106] FIG. 12 is a flow chart diagram of a group mode routine executed by the external motor 100. Once a user has set up a group, the group mode routine responds to a shade control command at a given external motor to trigger shade control actions by other external motors in the group. At 602, the routine begins upon pressing the group button. Alternatively, the group mode routine may begin upon receiving a group mode command from another device recognized by the external motor, such as a smartphone, smart hub, or third party device. At 604, the system determines whether the external motor is calibrated. If the external motor is not calibrated, the external motor's LED strip displays a flashing red error code. This notifies the user that the external motor must be calibrated before sharing shade control commands (position related commands) with other external motors in the group. If the external motor is calibrated, the system allows all shade control commands to be broadcast to other external motors in the group over a network (e.g., BLE mesh). The system will exit the group mode routine after flashing an error code or broadcasting a position related command.
[0107] FIG. 13 is a flow chart diagram of a grouping mesh routine executed by an external motor in response to a grouping call received at 702. For example, the grouping call may be triggered at 606 of the group mode routine of FIG. 12. Upon receiving the grouping call, the external motor enters BLE mesh mode, thereby communicating messages to other external motors in the group (BLE mesh) using the BLE protocol. In the case of an external motor network that uses another protocol 330 (FIG. 7) for RF communication, e.g., ZigBee, Z-Wave, WiFi, or Thread, the grouping call routine may be modified at 704 to initiate communication with other external motors in the group based on the applicable protocol. Similarly, the grouping call routine may be modified to accommodate different mesh topologies of the external motor network, e.g., hub-and-spoke (star topology).
[0108] The set button 114 is used to calibrate or pre-set the maximum open and closed positions of the blinds. After the user mounts / installs the external motor 100, the user can calibrate the device and manually set the positions at which the blinds will be fully open or fully closed. The user then presses the top of the capacitive touch slider 104 to raise the blinds to the top. Once the blinds reach the top position, the user presses the set button 114 again to save the top position. The user then presses the bottom position of the capacitive touch slider control 104 to lower the blinds. Once the blinds reach the bottom position, the user presses the set button again to save the bottom position. The top and bottom positions set by the user can reflect the user's preferences, which may vary from external motor to external motor.
[0109] FIG. 14 is a flow chart diagram of the calibration routine executed by the external motor 100. The calibration routine begins with a calibration command 802, which can be executed by pressing and holding the set button 114 on the external motor, or in some other way, such as by input at the mobile device. At 804, the system passes control to the shade control state machine and the calibration state machine. The shade control state machine is discussed below with reference to FIG. 15. The calibration state machine controls the command structure for the LED indicators, calculates the top and bottom positions selected by the user based on the encoder pulse data, stores these top and bottom positions if confirmed by the user, calculates the distance between the top and bottom positions, and scales the shade control command to the calibrated position. In these routines, the user can execute various motor control commands to move the blinds to the desired top position. At 806, the system detects if the user has selected and confirmed the top position by pressing the set button. If so, the routine stores (calibrates) the top position at 808. At 810, the system again passes control to the shade control state machine and the calibration state machine. At 821, the system detects if the user has selected and confirmed the bottom position by pressing the set button, and if so, saves (calibrates) the bottom position at 814. Upon the user's final confirmation of the calibration at 814, the system exits the calibration routine.
[0110] In the illustrated embodiment, the calibration procedure sets the top position and then the bottom position. In an alternative embodiment, the calibration procedure sets the bottom position and then the top position instead of setting the top position and then calibrating the bottom position.
[0111] In another calibration embodiment, the user reverses the direction of movement by pressing and holding the set button 114 for a limited period of time. In this embodiment, if the user presses the top of the capacitive touch slider control 104 with the intention of raising the blinds, but the external motor 100 lowers the blinds instead, the user can press and hold set 114 for a specified time frame to reverse this direction. The user then presses the top of the capacitive touch slider control 104 to fully raise the blinds, and then presses the set button 114 to set the top position. The user then presses the bottom of the capacitive touch slider control 104 to lower the blinds, and then presses the set button 114 to set the bottom position.
[0112] In a further calibration embodiment, the user can press set for auto-calibration, during which the external motor determines the top and bottom positions via predetermined sensor measurements.
[0113] FIG. 15 is a flow chart diagram of a shade control control routine executed by the external motor 100. At 902, the system receives a command to pass control to a shade control state machine. At 904, the system passes control to a motor control routine. The motor control routine starts and stops the motor, moves the motor in a selected direction (up / down), moves the motor to a selected position, and adjusts the motor speed. The motor control routine is typically triggered by a user command, but can also be automated, for example, upon sensing a condition that affects safety. At 906, the system detects whether a group mode is active for the external motor. If yes, the control system of the external motor broadcasts 908 a shade control message to other motors in the group to execute. The shade control command executed in response to the message 908 can be different for different external motors in the group. For example, the calibrated position based shade control command will be different depending on the calibrated top and bottom positions for each external motor. If the group mode is not active, the external motor exits the shade control routine at 906, otherwise the routine exits at 908 after broadcasting the shade control message.
[0114] The I / O principles described above for the external motor device on-device control can be applied to various types of shade position control I / O devices that are separate from the external motor device on-device control, such as mobile user devices. In various embodiments, the web application emulates the single-axis input sensing and single-axis display capabilities of the external motor device on-device control described above. In various embodiments, the web application utilizes mobile device input technologies, such as touch screen input, gesture-based input, and GPS location sensing. For example, the web application control may accept inputs such as drag, tap, double tap, multi-touch input, and gestures such as tracing patterns, swiping, waving, and hand movement control. In various embodiments, a two-dimensional I / O device, such as a 2D touch screen, can be configured to act when the user provides input along a single axis, e.g., the vertical or horizontal axis of the touch screen.
[0115] 17-20 and 22 are front views of a graphical user interface displayed on an electronic device 1705 (e.g., a mobile electronic device) presenting various screens of an external motor control application. The window covering application position control screen 1700 of FIG. 17 includes a vertical slider control 1730 having a bar 1740 that is settable at a desired vertical position via touch screen input. In addition, the graphical user interface 1700 includes up-button 1710 and down-button 1720 controls, which may receive various types of touch screen input. For example, pressing the button may cause continuous up or down movement, tapping the button may move the window covering position up or down to the next set position (e.g., 75% set position), and double tapping may move the window covering position to the top or bottom calibrated position.
[0116] The window covering application setup screen 1800 of FIG. 18 is used to set up the external motor control application depending on what type(s) of window covering device(s) are installed with the external motor control. The window covering device type options include roller shades 1810, vertical blinds 1820, curtains or drapes 1830, and Roman shades 1840. The roller shades 1810 and Roman shades 1840 are characterized by vertical position control, i.e., the external motor device raises or lowers the roller shade or Roman shade. The vertical blinds 1820 and curtains or drapes 1830 are characterized by horizontal position control, i.e., the external motor device opens or closes the vertical blind or curtain laterally, e.g., across the window frame.
[0117] As seen in the window covering application selection screen 1900 of FIG. 19, the external motor control application may be configured to control two or more external motor controllers, for example, in different rooms or in multiple devices within a given room. Following configuration, the user may select one of these devices for control via the device selection screen 1900. In an exemplary embodiment, the user has configured two external motor window controllers: a roller shade device 1930 in bedroom 1 and a curtain or drape device 1940 in bedroom 2. The user has selected device 1930 via radio button 1910 for control using the window covering application. Alternatively, the user may select device 1940 via radio button 1920. In various embodiments, if the external motor controller selected in the selection screen 1900 is associated with a roller shade 1810 or a roman shade 1840, the window covering application will display a position control application screen configured for vertical position control. In various embodiments, if the external motor control device selected in the selection screen 1900 is associated with vertical blinds 1820 or curtains or drapes 1830, the window covering application will display a position control application screen configured for horizontal position control.
[0118] In the window covering application position control screen 1700 use example of Figure 17, the controlling application displays the position control screen 1700 followed by a user selection 1910 of a device position in a selection screen 1900, as shown in "Bedroom 1" in the window covering device header 1760. To control the raising and lowering of roller blinds 1930, the position control screen 1700 displays a vertical slider control 1730.
[0119] The window covering application position control screen 2000 of FIG. 20 includes a horizontal slider control 2030 having a bar 2040 that is settable to a desired horizontal position via touch screen input. The horizontal slider control 2030 is divided into ten segment horizontal positions represented by a vertical bar 2050, and the user can move the window covering device precisely to one of these pre-set positions (e.g., an 80% position, with 100% being the right-most position) via touch screen input. The position control screen 2000 also includes a left button 2010 and a right button 2020 that can be used to cause movement of the window covering device toward the left or right, respectively. In an example use of the window covering application position control screen 2000 of FIG. 20, the control application is displaying the position control screen 2000 following a user selection 1920 of a device position in the selection screen 1900, as shown in the window covering device header 2060, "Bedroom 2." To control the horizontal opening and closing of the curtain or drapes 1940 , the position control screen 2000 includes a horizontal slider control 2030 .
[0120] In addition to window covering application position control screens, such as portrait position screen 1700 of Figure 17 and horizontal position screen 2000 of Figure 20, the window covering application may include one or more speed control screens. The speed control screens may include controls that set the absolute value of the motor's speed as well as the direction of the window covering speed (e.g., up / down or left / right). Additionally, the speed control screens may include controls such as a radio button control that selects one of several pre-set speed settings, or selects one of the following settings: idle, low, medium, and high.
[0121] Mapping a given user gesture to a given shade control command, also referred to herein as a "position-related command," allows commands applicable only to the local external motor 100 to be distinguished from commands applicable to multiple external motors. In one example, a double tap on the top of the capacitive touch slider design commands the system to provide 100% opening to all window coverings in a pre-defined group of window blinds, not just the local blinds. In another example, a two-finger tap commands the system to open all window coverings connected in the network.
[0122] In one embodiment, the window covering application can control the direction and speed at which the window covering advances and retreats. The speed control screen 2200 of FIG. 22 is used to set the direction (open / close) and speed of movement of the window covering. In the illustrated embodiment, the user has selected roller blinds in the window covering device selection screen of FIG. 17, and the speed control screen 2200 controls the longitudinal direction and roll speed (e.g., in meters per second) of the roller blinds. The open / close control 2210 displays a lower-arrow 2214 and a raise-arrow 2218 icon, which respectively lower (open) and raise (close) the roller blinds on the window blind controller. The speed control screen includes two different modes 2220, 2230 for the user to select the roll speed of the blinds, and typically only one of these modes is used at a time. The set speed level mode 2200 includes a control 2224 to select a percentage value between 0% (roller blinds stationary, i.e., idle) and 100% (full speed), inclusive. In various embodiments, the percentage control 2224 may select a percentage value within a continuous range or may select a percentage value from a sequence of discrete values. For example, the percentage control selects a percentage value with one decimal place as shown, i.e., 58.5% of maximum speed. The preset speed mode 2230 includes several radio buttons, one of which may be selected to select one of a limited number of predefined roller blind rolling speeds. Here, the predefined speeds include low speed 2232, medium speed 2234, and high speed 2236. In one embodiment, the maximum speed in mode 2220 and the predefined speeds in mode 2230 are default speeds. In one embodiment, the maximum speed in mode 2220 and the predefined speeds in mode 2230 are set by the user during device setup.
[0123] In one embodiment, the external motor device may include a variety of interchangeable driven wheels to accommodate different types of continuous cord loop chains or cords. A user may attach a suitable driven wheel to the rotatable shaft of the motor drive assembly during installation or configuration of the external motor device. FIG. 23 shows at 2310 a drive wheel assembly including a corded continuous cord loop 2314 attached to a pulley type driven wheel 2318. In one embodiment, the pulley wheel 2318 accommodates a range of cord thicknesses, and in normal operation, the cord 2314 engages the pulley wheel 2318 via frictional engagement. The drive wheel assembly includes a guide rail 2320 for the continuous cord loop 2314. The guide rail 2320 is a curved rail supported by support legs 2324 in close proximity to or contact with a section of the continuous cord 2314. In the disclosed embodiment, the drive wheel assembly 2310 includes a continuous cord loop sensor 2328 attached to the guide rail 2320. FIG 23 shows at 2330 a metal beaded continuous cord loop chain 2334 attached to a sprocket-wheel driven wheel 2338 having cogs that interlock with the metal beads of the continuous cord loop chain 2334. FIG 23 shows at 2350 a plastic beaded continuous cord loop chain 2354 attached to a sprocket-wheel driven wheel 2358 having cogs that interlock with the plastic beads of the continuous cord loop chain 2354.
[0124] In conventional implementations, the primary concern is that the cord / pulley-motor drive system is prone to slippage during continuous operation. However, since the frictional engagement of the cord with the pulley drive can withstand the forces applied during normal operation without slippage, the primary cause of positioning error is material fatigue. One form of material fatigue in synthetic or natural fiber cords is wear over time that can be characterized as "creep." Creep describes the tendency of elastic materials to move slowly or permanently deform during long periods of exposure to continuous or continually applied mechanical loads.
[0125] Conventional pulley drive systems usually focus on speed differences during pulley drive as the most pressing concern in most practical uses of pulley drive systems. However, in a motor drive system for window coverings, another concern is the relative motion resulting from speed differences between the window covering drive mechanism (e.g., continuous cord loop cord) and the pulley wheel. This relative motion due to creep causes the cord to move relative to the sprocket wheel during continuous operation, which causes the final position of the window covering to move or vary over time, introducing errors into the position control. For example, the position control system measures the relative position of the window covering by measuring the encoder count at the motor, and any movement or variation of the continuous cord loop cord relative to the pulley driven wheel can impair the accuracy of the position control system. The disclosed embodiments attempt to address the issue of creep in pulley wheel motor drive systems for corded continuous cord loops. The embodiments disclosed herein incorporate a continuous cord loop sensor system to address this issue.
[0126] In a continuous cord loop chain driven by a sprocket wheel, the stresses placed on the continuous cord loop chain during continuous operation can cause the continuous cord loop chain to stretch or lengthen. For example, metal bead and ball chains can stretch due to the stresses placed on the continuous cord loop chain when a motor accelerates from an idle state to full operating speed. The embodiments described herein incorporate a continuous cord loop sensor system that maintains accuracy of the automated positioning control of the window covering when the continuous cord loop chain is stretched.
[0127] FIG. 24 shows a pulley driven wheel drive assembly 2400 including a continuous cord loop sensor system that addresses creep issues in corded continuous cord loop drives. The pulley driven wheel drive assembly includes a pulley type driven wheel 2430 that engages a continuous cord loop cord 2410. A curved guide rail 2440 supported by support legs 2450 is located proximate to the cord 2410 across a section at the lower loop end of the cord. The cord 2410 carries one or more sensor targets (also referred to herein as targets or markers) on an area of the cord surface facing the guide rail. A continuous cord loop sensor 2460 (also referred to herein simply as the sensor) is attached to the guide rail adjacent the bottom of the continuous cord loop. In this example, the sensor 2460 is a proximity sensor spaced a short distance 2470 from the target 2420 within the sensor's operating range. In other embodiments, the sensor can be a contact sensor that is attached to the guide rail in contact with the cord 2410.
[0128] The sensor target or marker may be formed of any material suitable for marking the code for proximity or contact sensing by the sensor technology. For example, the marker may be formed of metal, metal alloy, other conductive material, or reflective or retroreflective material suitable for receiving the electromagnetic energy emitted by the sensor and reflecting the energy back to the sensor. The sensor target or marker may be a piece of tape, foil, coating, or printed pattern of material on the surface area of the continuous cord loop cord. The marker may have various shapes or patterns, such as rectangular, polygonal, circular, among other possibilities. The marker may be a durable material that is firmly adhered or applied to the surface of the continuous cord loop cord so as to remain intact on the cord surface during continuous operation, especially in the case of contact sensing.
[0129] The marker, or each of the plurality of markers, is located on a portion of the cord that faces the sensor when a target approaches or contacts the sensor during movement of the continuous cord loop cord. In one configuration, the marker is located at a single location on the cord that serves as a reference point along the length of the cord. The control system records an initial location of the reference point during system calibration. In another configuration, the plurality of markers are located at different initial locations. The controller is calibrated to store an initial location of each of the plurality of markers along the continuous cord loop and is configured to receive a signal indicative of the presence of each sensor marker and to identify deviations from each initial location during continuous operation of the drive system.
[0130] In one embodiment, the sensor target includes a first marker and a second marker located at two positions on the code, e.g., a top reference point and a bottom reference point. The controller may be calibrated to store a first initial position of the first marker corresponding to a top position of the window covering, and a second initial position of the second marker corresponding to a bottom position of the window covering. In one embodiment, the top and bottom reference points correspond to calibrated upper and lower limits imposed on the range of movement of the window covering. The top reference point (initial position of the first marker) may correspond to the top position set at 808, and the bottom reference point (initial position of the second marker) may correspond to the bottom position set at 814 in the set calibration routine of FIG.
[0131] As the continuous cord loop cord continues to move, the controller receives a signal from the sensor indicating the presence of the target as the target or one of the targets passes the sensor assembly. In one embodiment, the controller compares the current location of the target to its calibration standard and generates an indication or other response if the controller identifies a deviation from the initial position. In one embodiment, the controller recalibrates the drive system to correct (adjust) the window covering positioning signal for any detected deviation. In an embodiment including first and second indicia, the controller can recalibrate one or both of the calibrated top position and the calibrated bottom position, thereby adjusting the range of motion of the window covering. This procedure allows the controller to compensate for creep of the continuous cord loop cord.
[0132] The sensor may be a device mounted on the guide rail that is configured to output a signal indicative of the presence of the sensor target when the sensor target is located in proximity to or in contact with the sensor. The controller may receive the signal and generate an indication or other response to the signal. In various embodiments, the sensor is a proximity sensor, e.g., a sensor that can detect the presence of a proximity target without any physical contact and emits an output signal when the target is located within the operating range of the sensor. In one embodiment, the proximity sensor emits a beam of electromagnetic radiation, such as an electromagnetic field or infrared (IR), and looks for a change in the electromagnetic field or a return signal. In one embodiment, the sensor target or each of the multiple sensor targets includes a piece of reflective material that is configured to reflect the beam of electromagnetic energy emitted by the sensor back to the sensor when the sensor target is located in proximity to the sensor. Proximity sensors can have high reliability and a long functional life because there are no mechanical parts and no physical contact between the sensor and the target.
[0133] In various embodiments, the sensor is a contact sensor, e.g., a sensor that senses the presence of a target through physical contact with the target and outputs a signal indicative of the presence of the sensor target upon such physical contact. In one embodiment, the contact sensor includes a number of contacts connected to an electrical circuit. The sensor target includes a piece of conductive material that creates a short in the electrical circuit when the conductive material comes into contact with the multiple contacts.
[0134] In various embodiments, an IR sensor is mounted on or in the guide rail as a proximity sensor. The guide rail mount and IR sensor can have a surface mount configuration and a through hole mount configuration. Figures 25 and 26 show a curved guide rail with a mounting surface for the IR sensor and an infrared sensor on a PCB. A curved guide rail 2510 with support legs 2520 includes a sensor mount 2530. The sensor mount 2530 receives an IR sensor module 2600, such as a sensor 2610 on a PCB 2620. The sensor 2600 has a through hole mount configuration that seats the mount 2630 in an opening 2540 in the PCB.
[0135] In one embodiment, the IR sensor module 2610 includes a side-by-side IR emitter and an IR sensor. 940 nm emitters (LEDs) are encapsulated side-by-side facing the same direction with corresponding silicon phototransistors. In another example, the IR sensor is a phototransistor-output reflective photointerrupter with an optimum optical sensing distance of 0.5 mm. In yet another example, the IR sensor is a very small SMD reflective microsensor with a detectable sensing distance of 1.0 mm. The sensor working distance is well matched to the constraints imposed by the mechanical layout of the external motor drive.
[0136] In one embodiment, the target was a piece of metal tape on the cord. When the target was within the operating range of the sensor, the reflection of the piece of metal tape caused the output of the sensor to drop to ground. This signal was used as a reliable reference point to correct any deviations in the positioning control of the window covering. A drawback of the IR sensor was the increased computational load placed on the microcomputer 310 to sample and effectively analyze the analog output signal. In testing, the physical configuration of the code and markings dramatically changed the signal quality as these features affected the effective distance from the sensor to the target. Signal quality could be improved by perforating the metal tape before adhering it to the cord.
[0137] FIG. 27 shows an embodiment of a continuous cord loop sensor system 2700 with a contact sensor including a curved guide rail 2710 with a leaf spring contact 2720 that protrudes above the guide rail without contact with the continuous cord loop. One purpose of the leaf spring sensor 2700 was to mitigate signal quality concerns by using well-established principles of contact sensors. The sensor 2700 has an electrical circuit that includes two or more contacts, in this case leaf spring contacts 2720. Physical contact of a passing metal tape or other conductive marking with the leaf spring contact 2720 creates an alternative circuit path with very low electrical impedance, e.g., a short circuit. The resulting signal is a short between the two leaf spring contacts that is detectable by the microcomputer 310, resulting in a robust sensor that requires only a light computational load. The actuation height of the leaf spring contact allows the spring to extend into the pulley to accommodate variations in cord thickness. However, leaf spring contacts can be fragile and tend to deform during installation or use.
[0138] 28 shows an embodiment of a continuous cord loop sensor system 2800 with a contact sensor that includes a flat contact 2820 on a curved guide rail 2810. Given that the contact does not have conformance within its operating height, the pulley wheel was redesigned from a traditional V-groove design. The redesigned pulley wheel has a flatter profile to allow the cord to pass around the side of the pulley and consistently contact the flat contact.
[0139] FIG. 29 illustrates an embodiment of a continuous cord loop sensor system 2900 with a contact sensor that includes a flat contact 2920 on a flat guide rail 2910. The flat contact 2920 extends from an electrical printed circuit board (PCB) 2940 through a recess 2930. This design addressed an issue with the flat contact design 2800, where the bend radius of the curved guide rail 2810 could prevent the metallic tape sign from achieving full contact with the flat contact. In performance testing, the flat guide rail significantly improved the reliability of the flat contact design. Testing included two configurations for the flat contact sensor: (a) a horizontal configuration where the flat contact is collinear with the continuous cord loop cord, and (b) a vertical configuration where the flat contact is perpendicular to the continuous cord loop cord. Both configurations have two problems. The proximity of the connector 2920 to the recessed edge 2930 can cause the metal tape to snag on the contacts and pull the contacts off the PCB after extended use. If the metal tape is relatively smooth (e.g., new tape), the flat guide rails may not exert enough force to press the flat contacts against the metal tape, resulting in a false negative failure.
[0140] 30 shows an embodiment of a continuous cord loop sensor system 3000 with contact sensor that includes a flat guide rail 3010 with wire contacts 3020 that protrude above the guide rail. In this design, the sensor PCB is hidden under the guide rail, which solves the problem in sensor system 2900 where the metal tape could get caught on the contacts and pull the connector off the PCB. Additionally, the higher profile of the wire contacts 3020 ensures that the contacts protrude into the pulley and make solid contact with the metal tape indicators.
[0141] Applicant tested three configurations of the fourth contact sensor embodiment 3000: (a) a 1 mm diameter wire in a horizontal configuration, collinear with the continuous cord loop cord; (b) a 1 mm diameter wire in a vertical configuration, perpendicular to the continuous cord loop cord; and (c) a 0.5 mm diameter wire in a horizontal configuration, collinear with the continuous cord loop cord. In performance testing, the wire contact 3020 made good contact with the metal tape sign. It was observed that the smooth rounded configuration of the 90° curve of the wire contact 3020 prevented the metal tape from catching on the contact. The horizontal configuration performed better than the vertical configuration. The 1 mm diameter horizontal wire contact performed better than the 0.5 mm diameter horizontal wire contact in that the larger diameter contact made stronger contact with the metal tape.
[0142] While various aspects and embodiments have been disclosed, other aspects and embodiments are contemplated. The various disclosed aspects and embodiments are intended to be illustrative and not limiting, with the true scope and spirit being indicated by the following claims.
[0143] The foregoing method descriptions and interface configurations are provided merely as examples and are not intended to require or imply that the steps of the various embodiments must be performed in the order presented. As will be appreciated by one of ordinary skill in the art, the steps of the foregoing embodiments may be performed in any order. Words such as "then," "next," and the like are not intended to limit the order of the steps, and these words are merely used to guide the reader through the method descriptions. Although a process flow diagram may describe operations as a sequential process, many of the operations may be performed in parallel or concurrently. Additionally, the order of the operations may be re-arranged. A process may correspond to a method, a function, a procedure, a subroutine, a subprogram, and the like. When a process corresponds to a function, its termination may correspond to a return of the function to a calling function or to a main function.
[0144] The various exemplary logic blocks, modules, circuits, and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or a combination of both. To clearly illustrate this interchangeability of hardware and software, the various exemplary components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends on the particular application and design constraints imposed on the overall system. Those skilled in the art may implement the described functionality in various ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the invention.
[0145] An embodiment implemented in computer software may be implemented in software, firmware, middleware, microcode, hardware description languages, or any combination thereof. A code segment or machine-executable instructions may represent a procedure, a function, a subprogram, a program, a routine, a subroutine, a module, a software package, a class, or any combination of instructions, data structures, or program statements. A code segment may be coupled to another code segment or a hardware circuit by passing information, data, arguments, parameters, or memory contents. Information, arguments, parameters, data, etc. may be passed, forwarded, or transmitted via any suitable means including memory sharing, message passing, token passing, or network transmission.
[0146] The actual software code or specialized control hardware used to implement these systems and methods is not a limitation of the invention. Thus, the operation and behavior of the systems and methods will be described without reference to specific software code, with the understanding that software and control hardware can be designed to implement the systems and methods based on the description herein.
[0147] When implemented in software, the functions may be stored as one or more instructions or codes on a non-transitory computer-readable or processor-readable storage medium. The steps of a method or algorithm disclosed herein may be embodied in a processor-executable software module that may reside on a computer-readable or processor-readable storage medium. Non-transitory computer-readable or processor-readable media includes both computer storage media and tangible storage media that facilitate transfer of a computer program from one place to another. Non-transitory processor-readable storage media may be any available medium that can be accessed by a computer. By way of example and not by way of limitation, such non-transitory processor-readable media may include RAM, ROM, EEPROM, CD-ROM, or other optical disk storage, magnetic disk storage or other magnetic storage, or any other tangible storage medium that can be used to store desired program code in the form of instructions or data structures and that can be accessed by a computer or processor. As used herein, disk and disc include compact disc ("CD"), laser disc, optical disc, digital versatile disc ("DVD"), floppy disk, and Blu-ray disc, where disks typically reproduce data magnetically while discs reproduce data optically using a laser. Combinations of the above are also intended to be included within the scope of computer-readable media. Additionally, operations of a method or algorithm may reside as one or any combination or set of codes and / or instructions on a non-transitory processor-readable medium and / or computer-readable medium, which may be incorporated into a computer program product.
Claims
1. 1. A drive system for use with a window covering system including a mechanism for raising and lowering a window covering and a continuous cord loop extending below the mechanism, comprising: a motor configured to operate on electrical power to rotate an output shaft thereof; a driven wheel coupled to the output shaft of the motor and configured to engage the continuous cord loop, wherein rotation of the driven wheel in a first direction causes the continuous cord loop to cause the mechanism to raise the window covering, and rotation of the driven wheel in a second direction causes the continuous cord loop to advance and cause the mechanism to lower the window covering; one or more sensor targets configured to be disposed on the continuous cord loop; a controller for the motor; a sensor operably connected to the controller and configured to generate a signal indicative of the presence of each of the one or more sensor targets disposed on the continuous cord loop when the sensor target is located in proximity to or in contact with the sensor.
2. 2. The drive system of claim 1, wherein the sensor is a proximity sensor and the one or more sensor targets each comprise a piece of reflective material configured to reflect a beam of electromagnetic energy emitted by the sensor back to the sensor when the target is located in proximity to the sensor.
3. The drive system of claim 2 , wherein the proximity sensor comprises an infrared sensor.
4. 2. The motor drive system of claim 1, wherein the sensor is a contact sensor comprising a plurality of contacts connected to an electrical circuit, and each of the one or more sensor targets includes a piece of conductive material configured to create a short in the electrical circuit when the piece of conductive material contacts the plurality of contacts.
5. The drive system of claim 4 , wherein the contact sensor comprises a plurality of leaf spring contacts.
6. The drive system of claim 4 , wherein the contact sensor comprises a plurality of flat contacts recessed into a guide rail.
7. The drive system of claim 4 , wherein the contact sensor comprises a plurality of wire contacts, the wire contacts projecting above the guide rail.
8. The drive system of claim 1 , wherein each of the one or more sensor targets is a piece of metallic or reflective tape configured to adhere to the continuous cord loop.
9. The drive system of claim 1 , wherein the sensor comprises a guide rail having (i) a curved surface adjacent the driven wheel, or (ii) a substantially flat surface adjacent the driven wheel.
10. 2. The drive system of claim 1, wherein the controller is calibrated to store positions of each of the one or more sensor targets along the continuous cord loop and configured to receive signals indicative of a presence of each of the one or more sensor targets and to identify deviations from their respective positions during continuous operation of the drive system.
11. 2. The drive system of claim 1, wherein the one or more sensor targets comprise a first marker and a second marker, the controller is calibrated to store a first position of the first marker configured to correspond to a top-most position of the window covering and a second position of the second marker configured to correspond to a bottom-most position of the window covering, and the controller is configured to receive signals indicative of a presence of each of the first marker and the second marker and to identify deviations from the respective positions during continuous operation of the drive system.
12. The drive system of claim 11 , wherein the controller is configured to recalibrate the first position and the second position upon identifying the misalignment.
13. 1. A drive system for use with a window covering system including a roller blind mechanism for raising and lowering a window covering fabric and a continuous cord loop extending below the mechanism, comprising: a motor configured to be powered to rotate an output shaft thereof; a driven wheel coupled to an output shaft of the motor and configured to engage the continuous cord loop; one or more sensor targets configured to be disposed on the continuous cord loop; a controller for the motor; a sensor operably connected to the controller, the sensor configured to generate a signal indicative of a presence of each of the one or more sensor targets when the sensor target is located in proximity to or in contact with the sensor; A drive system, wherein the controller is calibrated to store the respective positions of one or more sensor targets and configured to receive the signal indicative of the presence of each of the one or more sensor targets and to identify deviations from the respective positions during continuous operation of the drive system.
14. 14. The drive system of claim 13, wherein the one or more sensor targets comprise a first marker and a second marker, the controller is calibrated to store a first position of the first marker configured to correspond to a topmost position of the window covering and a second position of the second marker configured to correspond to a bottommost position of the window covering, and the controller is configured to receive the signal indicative of a presence of each of the first and second markers and to identify deviations from the respective first or second positions during continuous operation of the drive system.
15. 15. The drive system of claim 14, wherein the controller is configured, if it identifies a deviation from the respective first or second position during continuous operation of the drive system, to recalibrate the respective first or second position to compensate for the identified deviation.
16. 14. The drive system of claim 13, wherein rotation of the driven wheel in a first direction is configured to advance the continuous cord loop, causing the roller blind mechanism to lift the window covering, and rotation of the driven wheel in a second direction is configured to advance the continuous cord loop, causing the roller blind mechanism to lower the window covering.
17. The drive system of claim 13 , wherein the controller is configured to perform a recalibration upon identifying the deviation.
18. 14. The drive system of claim 13, wherein the sensor is a proximity sensor and each of the one or more sensor targets comprises a piece of reflective material configured to reflect a beam of electromagnetic energy emitted by the sensor back to the sensor when the target is located in proximity to the sensor.
19. The drive system of claim 18 , wherein the proximity sensor comprises an infrared sensor.
20. 14. The drive system of claim 13, wherein the sensor is a contact sensor comprising a plurality of contacts connected to an electrical circuit, and each of the one or more sensor targets comprises a piece of conductive material configured to create a short in the electrical circuit when in contact with the plurality of contacts.