U.S. patent application number 13/676015 was filed with the patent office on 2013-03-21 for sleep monitoring system.
The applicant listed for this patent is Philippe Kahn, Arthur Kinsolving. Invention is credited to Philippe Kahn, Arthur Kinsolving.
Application Number | 20130072823 13/676015 |
Document ID | / |
Family ID | 47506535 |
Filed Date | 2013-03-21 |
United States Patent
Application |
20130072823 |
Kind Code |
A1 |
Kahn; Philippe ; et
al. |
March 21, 2013 |
Sleep Monitoring System
Abstract
A method comprising monitoring a user's movements and
determining when the user is falling asleep into a sleep session.
The method further comprising identifying the sleep session as a
power nap or a longer sleep, and waking up the user at a
predetermined time, based on a combination of user preferences and
measured information regarding the sleep session.
Inventors: |
Kahn; Philippe; (Santa Cruz,
CA) ; Kinsolving; Arthur; (Santa Cruz, CA) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
Kahn; Philippe
Kinsolving; Arthur |
Santa Cruz
Santa Cruz |
CA
CA |
US
US |
|
|
Family ID: |
47506535 |
Appl. No.: |
13/676015 |
Filed: |
November 13, 2012 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
13545963 |
Jul 10, 2012 |
|
|
|
13676015 |
|
|
|
|
61507567 |
Jul 13, 2011 |
|
|
|
Current U.S.
Class: |
600/595 |
Current CPC
Class: |
A61B 5/4806 20130101;
A61B 5/4809 20130101; A61B 5/7275 20130101; A61B 5/1118 20130101;
A61B 5/7475 20130101; G04G 21/04 20130101; G04G 13/026 20130101;
A61M 2021/0083 20130101; A61B 5/746 20130101; A61B 2562/0219
20130101; A61M 21/00 20130101; A61B 5/4812 20130101; G16H 40/63
20180101; A61B 5/681 20130101 |
Class at
Publication: |
600/595 |
International
Class: |
A61B 5/11 20060101
A61B005/11 |
Claims
1. A method comprising: monitoring a user's movements; determining
when the user is falling asleep into a sleep session; identifying
the sleep session as a power nap or a longer sleep; waking up the
user at a predetermined time, based on a combination of the
identifying, user preferences, and measured information regarding
the sleep session.
2. The method of claim 1, wherein the identification is an
automatic identification based on one or more of: a current time of
day, a period since a last longer sleep, and a location of the
user.
3. The method of claim 1, wherein the identification is based on a
command is entered by the user using one of: a user interface dial,
a user interface button, or a menu.
4. The method of claim 1, wherein the monitoring of the user's
movements is done using an accelerometer worn on a wrist strap.
5. The method of claim 4, wherein the wrist strap comprises a
wristband, and the accelerometer is part of a monitoring device
coupled to the wristband.
6. The method of claim 1, further comprising: providing the user's
movement data to a server; and making the user's movement data
available to the user.
7. The method of claim 1, wherein the pre-determined time is based
on a default optimum time for a power nap, adjusted based on
historical data from the user.
8. The method of claim 1, further comprising: when a longer sleep
is identified, determining whether there is an alarm set, the alarm
set based on one of: a min/max time, a number of sleep cycles
completed, or a number of sleep cycles completed within a max time
window.
9. The method of claim 8, wherein when the alarm is set based on
the min/max time, the user is woken up at an optimal sleep cycle
time, at a latest point in the min/max time.
10. The method of claim 8, wherein when the alarm is set based on
the number of sleep cycles and a maximum time window, the system
attempts to wake the user at an optimal time, when the maximum time
window will expire prior to the completion of the number of sleep
cycles set in the alarm.
11. A monitoring system to assist in sleep comprising: a motion
identification system to determine when the user is falling asleep
into a sleep session; a sleep type identifier to identify the sleep
session as a power nap or a longer sleep; and a sleep timer to
monitor the sleep session, and to trigger an alarm to wake up the
user at a predetermined time, based on a combination of user
preferences and measured information regarding the sleep
session.
12. The system of claim 11, wherein the identification of the sleep
session is automatic and based on one or more of: a current time of
day, a period since a last longer sleep, and a location of the
user.
13. The system of claim 11, wherein the identification of the sleep
session is based on a command is entered by the user using one of:
a user interface dial, a user interface button, or a menu.
14. The system of claim 11, wherein the monitoring system is worn
on a wrist strap.
15. The system of claim 11, wherein the pre-determined time for the
power nap is based on a default optimum time, adjusted based on
historical data from the user.
16. The system of claim 11, further comprising: when a longer sleep
is identified, determining whether there is an alarm set, the alarm
set based on one of: a min/max time, a number of sleep cycles
completed, or a number of sleep cycles completed within a max time
window.
17. The system of claim 16, wherein when the alarm is set based on
the min/max time, the user is woken up at an optimal sleep cycle
time, at a latest point in the min/max time.
18. The system of claim 16, wherein when the alarm is set based on
the number of sleep cycles and a maximum time window, the system
attempts to wake the user at an optimal time, when the maximum time
window will expire prior to the completion of the number of sleep
cycles set in the alarm.
19. A system of optimizing sleep comprising: a sleep identifying
logic to identify a sleep session as a power nap or a longer sleep;
user settings to set user preferences for waking from the sleep
session; motion identification logic to track stages of sleep
during the sleep session; and a sleep timer to utilize the user
settings and the stages of sleep to wake the user from the sleep
session at an optimal time.
20. The system of claim 19, wherein the sleep identifying logic
automatically identifies the sleep session based on one or more of:
a current time of day, a period since a last longer sleep, and a
location of the user.
Description
RELATED APPLICATION
[0001] The present application claims priority to U.S. patent
application Ser. No. 13/545,963, filed on Jul. 10, 2012, which
claims priority to U.S. Provisional Application Ser. No.
61/507,567, filed on Jul. 13, 2011.
FIELD
[0002] The present invention is related to motion sensing, and more
particularly to monitoring a user's motions to improve rest.
BACKGROUND
[0003] As accelerometers and other motion sensors are becoming
cheaper and smaller. There are numerous systems available, which
enable a user to monitor his or her motions, whether in activity or
sleep.
[0004] For example, there are pedometers or other activity monitors
that track a user's activities to improve health. There are also
some sleep monitors, which use accelerometers.
BRIEF DESCRIPTION OF THE FIGURES
[0005] The present invention is illustrated by way of example, and
not by way of limitation, in the figures of the accompanying
drawings and in which like reference numerals refer to similar
elements and in which:
[0006] FIGS. 1A-1G are embodiments of the system.
[0007] FIGS. 1H-1K are diagrams of embodiments of the user
interface that may be used with the monitoring device.
[0008] FIG. 2 is a block diagram of one embodiment of the
monitoring system in accordance with the present invention.
[0009] FIG. 3 is a flowchart of one embodiment of sleep alerts.
[0010] FIG. 4 is a flowchart of one embodiment of adjusting
personal power nap settings.
[0011] FIG. 5 is a flowchart of one embodiment of setting an
alarm.
[0012] FIG. 6 is a chart of one embodiment of conditions that may
be used to differentiate between types of sleep.
[0013] FIG. 7 is a hypnogram showing exemplary phases of sleep.
[0014] FIG. 8 is a block diagram of a computer system that may be
used with the present invention.
DETAILED DESCRIPTION
[0015] A system that enables user sleep monitoring is described. In
one embodiment, the system enables the user to optimize their sleep
patterns. For example, users can take power naps. Power naps are
short naps, usually 20-35 minutes, which are of the right length to
refresh, without taking too much time, and without making the user
sluggish upon waking. In one embodiment, the system continually
optimizes the length of a power nap for each individual based on
analysis of previously obtained sleep and nap patterns and
additional user information, when available. For a power nap, the
monitor worn by the user determines when the user is falling
asleep, and wakes the user at the calculated time interval
automatically. In one embodiment, during a power nap, the system
continues monitoring changes of sleep phases, and wakes up the
subject before he or she crosses into non-REM sleep that would
cause sluggishness.
[0016] In one embodiment, the sleep monitoring enables the timing
of wake-up alarms for a longer sleep as well, such as a night's
sleep. In one embodiment, the user defines a time window in which
they want to wakeup. The device monitors sleep and finds the
optimal time within that window to wake up the user. In one
embodiment, that optimal time is when the user is transitioning
from deep sleep to light sleep. In one embodiment, the user or the
system specifies how many sleep cycles the user should sleep for.
The system then wakes up the user after the specified number of
sleep cycles.
[0017] In one embodiment, the number of sleep cycles may also be
modified by a time window. The user can specify that they want to
sleep for a number cycles, but they want to be woken up within a
given time window no matter what. For example, the user may specify
that they want to sleep for three sleep cycles, but wake up between
6 am and 8 am. If the user reaches the set number of sleep cycles
before the time window, the system waits for another sleep cycle
before sounding the alarm. If the sleep cycle count has not been
reached by the end time of the alarm, the alarm will still go off
within the time window.
[0018] In one embodiment, the monitor is implemented in a
wristband. In one embodiment, the monitor may be implemented by
small device designed to be worn on the body, on the wrist, arm, or
elsewhere. In one embodiment, the implementation may be in an IPOD
NANO.RTM. or similar small mobile device including sensors. Such a
small mobile device may then be paired with an existing wristband,
such as the band of a watch, bracelet, wristlet, wristband, etc.
The small mobile device may similarly be attached to an armband,
necklace, or other body-worn accessory. In another embodiment, the
monitor may be implemented in a mobile device that is not worn on
the body but placed on the sleeping surface, such as a bed. The
user's movements may be monitored through the motions of the
sleeping surface.
[0019] The following detailed description of embodiments of the
invention makes reference to the accompanying drawings in which
like references indicate similar elements, showing by way of
illustration specific embodiments of practicing the invention.
Description of these embodiments is in sufficient detail to enable
those skilled in the art to practice the invention. One skilled in
the art understands that other embodiments may be utilized and that
logical, mechanical, electrical, functional and other changes may
be made without departing from the scope of the present invention.
The following detailed description is, therefore, not to be taken
in a limiting sense, and the scope of the present invention is
defined only by the appended claims.
[0020] FIGS. 1A-1F are embodiments of the system. Various
embodiments of a wristband or armband are shown. The embodiments
include wristbands designed to be worn like a watch (FIGS. 1A, 1B,
1C, 1D), armbands (FIG. 1E), and devices that are designed to be
attached to a bracelet or chest strap or similar body location
(FIG. 1F). The system shown here may be used as an activity monitor
and a sleep monitor. In one embodiment, the system is designed to
be worn continuously, as described in co-pending application U.S.
Ser. No. 12/819,195, filed Jun. 19, 2010, entitled "A Method and
Apparatus to Provide Monitoring" which is incorporated herein by
reference.
[0021] In one embodiment, the system may be a self-contained
system, which includes a strap and the monitoring system. In
another embodiment, the system may consist of a monitoring system
that may be attached to an existing strap. For example, in one
embodiment, the system may be implemented in a small mobile system
such as an IPOD NANO.TM. that is designed to be attached to a
wristband, bracelet, chest strap, or even pocket. In one
embodiment, wristband/wrist watch/bracelet is preferred for
measuring accuracy.
[0022] In one embodiment, the interface of the system may include
one or more of: a full-sized USB connection (FIG. 1A), an audio
jack connection (FIG. 1A), a micro-USB/mini-USB connection (FIG.
1C), a wireless connection which may be a cellular network
connection or a WiFi connection (FIG. 1B), a dock connector (FIG.
1E), a proximity connection (FIG. 1D), or any other type of
connection to enable the system to communicate with external
devices. In one embodiment, those external devices may include a
computer device, a server, one or more sensors, which may be
coupled to the system, or other connections. In one embodiment, the
processing described below may be partially performed by a server
system 150 to which the sleep system is periodically coupled. This
enables a low-processing power device to server as a motion
sensor/sleep alarm.
[0023] In one embodiment, the sleep system may be coupled to a
mobile device, such as a smart phone, which provides processing.
The smart phone, in turn, may be coupled to a server via a network.
In one embodiment, the body-worn system is very simple, and only
includes logic to provide user preference selection and timer. In
another embodiment, the system may be a mobile device, as shown in
FIG. 1G.
[0024] FIG. 2 is a block diagram of one embodiment of the
monitoring system in accordance with the present invention. In one
embodiment, this system may be embodied within a body-worn device,
designed to be worn by a user, in a mobile device, or another
device including accelerometers and capable of monitoring a user's
movements. In another embodiment, the function described may be
split between a body-worn system, a mobile device, and a server.
For example, the statistical calculations and/or user interface
features may take place on a mobile device or a server. In another
embodiment, the body-worn system works in conjunction with a
server, without a mobile device. In another embodiment, the system
may be embodied in a mobile device that is not worn by a user, but
is a mobile device that may be placed in close proximity to the
user.
[0025] A motion identification logic 220 receives motion data.
Motion data may be received from an inertial sensor. In one
embodiment, the inertial sensor may be one or more accelerometers,
gyroscopes, or a combination of accelerometers and gyroscopes.
Alternative systems, which provide motion data, now known or later
discovered, may also be utilized.
[0026] Motion identification logic 220 uses the motion data to
identify a user falling asleep, in one embodiment. The motions of
wakefulness are different from the motions of sleep. The motion
identification logic 220 identifies that the user has fallen
asleep, in one embodiment. In one embodiment, the motion data is
also sent to motion data store 225. In another embodiment, the
motion identification logic 220 may be supplemented by or replaced
with the user interface 275, allowing the user to indicate the
initiation of a sleep session. In one embodiment, motion
identification logic 220 can detect when the user is getting tired,
and a power nap or longer sleep would be useful. In one embodiment,
the system may suggest a power nap. In one embodiment, as a user is
headed to sleep, the system suggests a sleep type, and a timing for
waking up the user. The user can then adjust any of these settings
or just keep the recommended settings. In one embodiment, some of
these settings are fixed prior to going to sleep such as wake-up
time range. In one embodiment, some settings are finalized after
observing the user's sleep patterns. For example, the wake-up alert
timing is dependent on actual measured sleep.
[0027] In one embodiment, sleep identifier 230 determines whether
the user's sleep is a power nap, or another type of sleep. In one
embodiment, power naps are taken generally during the day, during
the late morning or early afternoon by most people. Sleep
identifier 230 may rely on one or more of data from a user
interface 275, pattern recognizer 245, sleep statistics 255, and
timer system 250.
[0028] In one embodiment, user interface 275 enables a user to set
the system to "power nap" state. As shown in FIG. 1H, the setting
may be as simple as setting night or day, where daytime sleep is
identified as a power nap. FIG. 1K shows a more detailed set of
options, allowing a user to set sleep, activity, powernap, or
workout. As noted above, in one embodiment, the motion sensing
system may be used as an activity monitor in addition to a sleep
monitor. That aspect of the system is not described in detail, as
it is described in the above referenced co-pending application,
which is incorporated by reference.
[0029] The user preference settings 240 may be used to identify
sleep type, or an activation of a button may be used to indicate
the initialization of a power nap.
[0030] In one embodiment, the sleep identifier 230 may use a
pattern recognizer 245 to recognize that the sleep session should
be identified as a power nap. The pattern recognizer uses the
user's history of nap and sleep timing, to determine whether the
current sleep should be classified as a power nap.
[0031] The sleep identifier 230 may also use a timer system 250 to
determine whether the sleep session should be classified as a power
nap. The timer system may determine the time since the user's last
full sleep and/or the user's last power nap or standard nap to
determine whether the current sleep should be a power nap or not.
In general, a user would sleep overnight every 15-18 hours. Thus, a
sleep less than 12 hours after the last full sleep cycle may be
classified as a power nap. Timer system 250 may also use the
current time of day to determine whether the sleep is a power nap.
For example, most people take power naps between 1 p.m. and 4 p.m.
Thus, if the user is sleeping during those times, it may be
classified as a power nap. However, a user for example who is on
the night shift and usually sleeps their longer sleep cycle between
8 a.m. and 4 p.m. would likely take a power nap at 1 a.m. or a
similar time of day.
[0032] In one embodiment, external factor adjustor 260 may be used
provide a suggestion to the user or may automatically set the sleep
type, based on external factors. For example, if the user is headed
to sleep and 2 p.m., and the user has a 3:00 p.m. meeting on their
calendar, the suggestion system 265 suggests a 26.5 minute powernap
(meaning 26.5 minutes of actual sleep) with a hard deadline of
waking up the user at 2:45 p.m. so that the user will wake up in
time for the meeting.
[0033] In one embodiment, the user may set preferences, including
overriding the sleep identifier's identification. In one
embodiment, the system has a rich user interface so user can double
check the settings before falling asleep. For example, the system
may provide a quiet indicator of the identified sleep type,
enabling a user to override verbally, or through another user
interface feature.
[0034] Of course, while these different aspects are described
individually above, in one embodiment a combination of these
methods may be used to accurately identify the sleep type. For
example, the patterns may utilize the time of day and the time
since the last sleep/nap, while the timer may utilize the sleep
statistics 255 identifying the user's sleep pattern (e.g. someone
on night shift has a different pattern than someone working the
dayshift). In one embodiment, all of these settings are customized
for the user over time. In on embodiment, the system is initially
configured with default settings (e.g. sleep from 11 p.m. to 6
a.m., power nap from 2 p.m. to 2:30 p.m.), and the user may adjust
these via a user interface. The system may further learn based on
user input/experience. One embodiment, of the various power nap
identifications are shown in FIG. 6.
[0035] When the power nap identifier identifies sleep as not being
a power nap, the sleep alarm system timer 270 is consulted, if
appropriate. If there is an alarm set, in one embodiment, it is
timed so that the user wakes up in the appropriate sleep cycle. It
is known that someone is more tired if he or she wakes up from a
deeper sleep, compared to waking up at N1 or early N2 sleep.
[0036] The user may define a time window for waking up, using the
user interface 275. The time window may, for example, state that
the user wishes to wake up before 7:30 a.m. The motion
identification logic 220 then uses the motion data, to determine
the user's sleep cycle, and the alarm 280 wakes the user up at the
optimal time. In one embodiment, that optimal time is when they are
transitioning from deep sleep to light sleep.
[0037] In one embodiment, the user may define a number of sleep
cycles he or she would like to sleep for, through the user
interface 275. A sleep cycle is generally between 90 minutes (first
sleep cycle) and 120 minutes (later sleep cycles). Therefore, the
user may define a number of sleep cycles, to determine when to wake
the user, with the alarm 280. In one embodiment, when the user
defines the number of sleep cycles until the alarm, the system
provides an estimated waking time to the user.
[0038] In one embodiment, the user may set a preferred number of
sleep cycles, and add a time window mask so that the user can
specify that they want to be woken up within a given time window no
matter what. For example, the user may set four sleep cycles, but
set that regardless of the number of sleep cycles, the user must be
woken up between 6 am and 8 am. If the user reaches the set number
of sleep cycles before the time window, the system waits for
another sleep cycle before sounding the alarm. If the sleep cycle
count has not been reached by the end time of the time window mask,
the alarm will go off.
[0039] If sleep identifier 230 identifies the sleep session as a
power nap, the sleep timer 270 is activated. The sleep timer 270 is
designed to sound an alarm to wake the user after the optimal
length power nap, e.g. when the user has received the benefit of
the nap, but is likely to wake without grogginess. The sleep timer
270 uses user settings data for how/when to wake up. These user
settings 240 include time window, number of sleep cycles, actually
sleeping for a certain time, wake-up alert style (vibration, audio,
what audio, how it ramps up, etc.). The user settings 240 can
either be explicitly set by the user, auto set by the system based
on user profile, habits, all other inputs such as
calendar/schedule, or a mixture of auto-set and explicitly set user
settings 240. Once the user settings 240 set the initial
conditions, the measured details of the sleep session may include
one or more of: time to fall asleep, sleep cycles, amount of light
sleep and deep sleep, number and duration of awake events
throughout the night, snoring, sleep talking and other noises
monitored by the system. The sleep timer 240 uses these measured
details, in conjunction with the user settings 240 to wake the user
at the optimal time.
[0040] In one embodiment, the default power nap time is 26.5
minutes, which is the average optimal duration for adults. In one
embodiment, the sleep timer 270 may be adjusted based on the
historical sleep data collected for the particular user. In one
embodiment, the optimal length is adjusted based on historical
sleep data from the prior seven days. In another embodiment, the
optimal length is adjusted based on historical sleep data from the
prior month. In one embodiment, when the historical data extends
beyond seven days, the last seven days are more heavily weighted in
determining an optimal power nap time.
[0041] In one embodiment, at the first transition to N2, the deeper
sleep phase, the user is wakened. In one embodiment, this is based
on the sleep timer 270. In one embodiment, this may be based on a
historical calculation of the length of an optimal power nap for
this user. By using a simple timer, in one embodiment, it enables
the more processor-intensive, and thus power-intensive,
calculations of determining the sleep phase based on motion to be
done separately from timing the power nap. In one embodiment, these
calculations may be shifted off the sleep alarm system and to a
more powerful device such as a smart phone, computer system, or
server. In another embodiment, the timing may be determined based
on the user's motion patterns, indicating the transition into
N2.
[0042] FIG. 7 is one embodiment of a hypnogram, explaining the
various states of sleep. The first segment shows a normal short
sleep cycle, with no waking and no alarm. As can be seen, the user
starts awake, then goes into REM sleep, and then into N1, N2, and
finally N3 stage of sleep. Generally, the later part of N2 and all
of N3 are considered deep sleep.
[0043] The second segment shows an interrupted sleep cycle. The
user gradually goes into deep sleep, and is yanked out of deep
sleep when the alarm goes off, directly from N3 to awake. This
would result in a groggy wakefulness, and an overall feeling that
the sleep was not restful. Lastly, a power nap is shown. The power
nap allows the user to go through REM, and N1, but just before the
user starts drifting into N2, the alarm is sounded, and the user is
awakened. Because the user is awakened before going into deep
sleep, the sleep will be felt to be more refreshing and restful.
Furthermore, the duration of the sleep and length of time needed is
optimally balanced for feeling rested using the minimal amount of
time.
[0044] For the alarm, described above, associated with a longer
sleep, such as overnight, in one embodiment, the system times the
waking to be at the N1 to N2 or N2 to N1 transition. This makes the
transition to wakefulness smooth, and the sleep feel more
restful.
[0045] Returning to FIG. 2, when the sleep timer 270 determines
that it is time for the user to wake, it sends a signal to alarm
280. In one embodiment, the user may be wakened via an alarm, which
may be visual, aural, or tactile. In one embodiment, since the
system can detect when the user is awake, the alarm sounds until
the user is awake. This enables even a loud alarm to sound for only
a short time, until the user is awake.
[0046] The data about the sleep session is then sent to sleep
statistics 255. Sleep statistics 255 tracks the data associated
with each sleep session, in one embodiment. In one embodiment,
sleep statistics 255 optionally also receives user input about the
quality of the sleep. Sleep statistics 255 is used to continually
optimize the length of a powernap, and the optimal length of a
longer sleep, for each individual, in one embodiment. In one
embodiment, this is based on rolling analysis of the last seven
days of sleep data. In one embodiment, it is a longer period. In
one embodiment, when a longer period than seven days is used, the
last seven days of sleep are more heavily weighted. In one
embodiment, the sleep statistics 255 identifies the outer limit of
N1 on 7 days. The system then averages them and calculates a new
power nap length that is optimal for the user. This enables the
system to remain in sync with the user, even as the user's sleep
patterns shift over time.
[0047] In one embodiment, after the user wakes from the sleep
session, he or she may provide feedback about the sleep session,
via user interface 275. The feedback may indicate that the sleep
session was refreshing, that the user woke groggy, or that the user
took a long time to wake between when the alarm sounded and when
the user became active. In one embodiment, this last evaluation,
e.g. the time between when the alarm sounds and the user becomes
active, may be automatically detected and used to evaluate the
quality of the sleep session. In one embodiment, this is used in
the historical sleep data evaluation calculated by sleep statistics
255.
[0048] In one embodiment, movement patterns, from motion data store
225 are taken into account by sleep statistics 255 as well. In one
embodiment, the sleep statistics 255 may correlate other factors
with the quality of sleep of the user. For example, the system may
correlate the user's activity level, or night-time sleep quality
with the effectiveness of a power nap, and the timing of sleep
sessions, including power naps and longer sleep.
[0049] In one embodiment, the sleep statistics 255 may further
provide recommendations to the user, based on the statistical
analysis. In one embodiment, these recommendations may be based on
the sleep statistics and/or external data. In one embodiment, sleep
statistics 255 receives other sleep information. For example, if a
user has a bad night's sleep after a late, longer power nap, the
system may adjust the recommended power nap length or timing.
[0050] FIG. 3 is a flowchart of one embodiment of sleep alerts. The
process start at block 310.
[0051] At block 315, the system tracks user motion data. This
motion data may be used to track activity levels, eating patterns,
and other aspects of the user's life. In one embodiment, the motion
data is tracked using one or more accelerometers. In one
embodiment, the accelerometers may be integrated into one or more
devices. For example, a first accelerometer may be in a body-worn
device such as a watch, bracelet, earphone, etc., while a second
accelerometer is in a mobile device such as a smart phone, tablet
computer, etc.
[0052] At block 320, the system detects that the user is starting
to fall asleep. The characteristic body movement patterns
associated with sleep are different than those associated with
being awake. In another embodiment, the user may indicate that he
or she is falling asleep through a user interface.
[0053] In embodiment, the system may determine whether sleeping
would be a bad idea, at block 325. In one embodiment, this
determination means a determination that the user can safely sleep,
at block 325. In general, certain places are not safe for sleep,
for example if the user is driving a vehicle or hiking at an
elevation. In one embodiment, potential negative effects, in terms
of health, sleep quality, quality of day may also be considered in
determining whether sleep would be bad.
[0054] In one embodiment, if sleep would not be good, the system
may send an alarm to the user, at block 330, to ensure that the
user has a chance to move to a safe area for sleep. The process
then ends at block 360. In one embodiment, the process continuously
monitors the user's motion data (block 315) so the process
continues to monitor even after the flowchart indicates that the
process ends.
[0055] If it is safe to sleep, at block 335, the process determines
whether the sleep just started is a power nap. In one embodiment,
this determination is made based on time of day, time since last
full sleep, and user input when available. If it is a power nap, at
block 340 the system sets a timer, to wake the user up after the
user's optimal power nap period. The process then continues to
block 355, and the length of sleep is tracked. In one embodiment,
the sleep data is also stored. In one embodiment, if user feedback
is provided, it is associated with the sleep data. The sleep data
may include movements during the sleep. As noted above, this may be
added to cumulative statistics on the user's sleep experience. The
process then ends at block 360.
[0056] If the sleep is not a power nap, the process continues to
block 345. The system determines whether an alarm is set. As noted
above, the alarm may be set with a time range, e.g. between 6 and 7
a.m., based on a number of sleep cycles, e.g. after three complete
sleep cycles, or on a combination, e.g. after three complete sleep
cycles, but no later than 7 a.m.
[0057] If an alarm is set, at block 350, the min/max time and/or
sleep cycle count is set, based on the alarm setting. The system
then triggers the alarm on the cycle point after the minimum time
and prior to the maximum time, after the set number of sleep
cycles, or prior to the maximum time. In one embodiment, when the
min/max time is set, the system wakes the user as close to the max
time as possible, while prioritizing waking the user in the correct
sleep cycle.
[0058] In one embodiment, when the sleep cycle count, with a latest
wake time window, is utilized, the system attempts to time the
waking at a good time from a sleep phase perspective, but prior to
the end of the wake time window. In one embodiment, this may lead
to a wake time earlier than the end of the wake time window,
without completion of the sleep cycle count.
[0059] In one embodiment, the user's sleep cycle is determined
based on a default time, as adjusted by the user's historical data,
as described in connection with the power nap above. In one
embodiment, the user sets the alarm as a minimum length of sleep,
and latest alarm (e.g. after 6 hours, but before 7 a.m.).
[0060] The process then continues to block 355, to store the length
of sleep, and any available sleep data.
[0061] If there is no alarm, the system continues directly to block
355, to track the length of sleep, and store the sleep data. The
stored sleep data, on power naps, sleep cycles with alarms, and
sleep cycles without alarms is stored, and used by tracking system
to determine optimal times for power naps. In one embodiment, the
system may provide feedback about this data to the user. For
example, the system may indicate to the user that when he or she
takes a nap after 4:30 p.m. the night's sleep is less restful. This
information may be useful to the user, in timing powernaps.
[0062] FIG. 4 is a flowchart of one embodiment of adjusting
personal power nap settings. The process starts at block 410. In
one embodiment, this process may be run whenever a new powernap
record is created. In one embodiment, this process may be run on a
server, computer system, or mobile device. In another embodiment,
this process may be run on the sleep sensing device. In another
embodiment, it may be run periodically, based on various
periods.
[0063] At block 420, the power nap data is stored.
[0064] At block 430, the user is able to indicate a nap quality. If
any such indication is received, the user input is associated with
the power nap record. In one embodiment, the user may indicate
various moods, feelings, and states throughout the day. In one
embodiment, the system may associate such data with the record of
the day. This may be useful to track a user's overall state based
on various factors including timing, quality, and quantity of
sleep, power naps, etc.
[0065] At block 440, the process determines whether a particular
power nap being evaluated is associated with a good indication,
neutral indication, or no indication. If it is not, i.e. the
indication is negative, the process at block 450 flags the nap as
"bad" and adds this information to the tracking. In one embodiment,
after a time, the system or the user can correlate the "bad" naps
with certain events or timings that may have occurred. For example,
the user may find that a nap too soon after a night's sleep is bad,
or a nap shortly after eating is bad, etc. If the user suggests a
correlation , this information is added to the system. If the
system determines a correlation based on the data, this information
is added to the system as well. The information is taken into
account by the system in timing future naps. In one embodiment, the
"bad to sleep" determination, discussed above with respect to FIG.
3, may take into account that the nap may have negative effects on
the user's mood, ability to sleep at night, etc. If the probability
that the nap will have a negative effect is above a threshold, the
user may be warned with an alarm. If the user persists, in one
embodiment, the user may override the alarm, and the system permits
the user to sleep.
[0066] At block 490, the power nap settings are updated based on
the additional data, if the additional data adds new information.
In one embodiment, the power nap length is adjusted based on a
seven day rolling average, or a weighted average of more days, with
the last seven days more heavily weighted. The process then ends at
block 495.
[0067] If there was no indication, or a positive or neural
indication as determined at block 440, the process continues to
block 460. At block 460, the process determines whether the system
has information about more than the threshold number of naps. In
one embodiment, the system keeps a rolling record of X naps, or X
days of naps. In one embodiment, X may be 7.
[0068] If there have been more than X naps recorded, at block 470
the new nap data is added to the rolling analysis, and the oldest
data is removed. If there haven't yet been X naps recorded, the
process adds that data to the rolling analysis at block 480, but
does not remove any data. In this way, the data is continually kept
fresh. People's sleeping patterns change over time, and the use of
the rolling averages for analysis keeps the system's information
about the user in sync with the user's changing sleeping patterns
over time.
[0069] At block 490, the power nap settings are updated, if
appropriate. As noted above, the length of the "optimum" power nap
is calculated and used by the system to set timing for waking up
the user. This timing may be updated as new power nap information
is received. The process then ends at block 495. In one embodiment,
a similar process, not shown, is applicable to tracking longer
sleep data as well. This analysis is used to update settings, and
update recommendations provided to the user regarding sleep
sessions. In one embodiment, other features, such as alarm type
used, may also be adjusted based on the feedback received.
[0070] FIG. 5 is a flowchart of one embodiment of setting alarm
settings, for longer sleep. Alarm settings, as noted above, may be
based on a min/max time, a sleep cycle count, or a sleep cycle
count in combination with a wake-up window. The process starts at
block 510.
[0071] At block 520, the user attempts to set an alarm. In one
embodiment, the user may be prompted to set a preferred alarm when
he or she initially utilizes the system.
[0072] At block 525, the process determines whether the alarm the
user set is based on min-max time. Min-max time sets the earliest
and latest wake-up times. For example, the user may indicate he or
she wishes to wake up between 6 a.m. and 7 a.m., at the best
possible sleep phase within that time range.
[0073] If the user is setting min/max time, at block 530 the
process determines whether the time range suggested is reasonable.
In general, an entire sleep cycle is 90 minutes, and of that the
average sleeper spends approximately 45 to 65 minutes in deep
sleep. Therefore, setting a min-max that is only a short time apart
may not be reasonable. If the timing is reasonable, at block 545
the alarm is set, and the process ends at block 580.
[0074] If the time range was found to be unreasonable, at block 535
the user is warned. The user can optionally override the warning,
and set the alarm anyway. If that is the user's choice, as
determined at block 540, the alarm is set at block 545. If the user
does not override the warning, the process returns to block 520, to
allow the user to set the alarm.
[0075] If, at block 525, the process determined that the alarm was
not based on min-max, the process continues to block 550. At block
550, the process determines whether the alarm is set based on sleep
cycle count. If the alarm is not set based on sleep cycle count, at
block 545, the alarm is set.
[0076] If the alarm is based on a sleep cycle count, at block 555
the process determines whether there is a wake-up window associated
with the alarm. If there is no wake-up window, the process sets the
alarm, at block 545.
[0077] If the user's alarm defined a sleep cycle count in
combination with a wakeup window, the process continues to block
560.
[0078] At block 560, the process compares the proposed alarm to the
user's normal schedule. In one embodiment, if schedule information
is not yet available, this step may be skipped. The comparison is
to determine whether the proposed alarm set-up is compatible with
the user's schedule.
[0079] In one embodiment, the compatibility utilizes the current
time, as well as settings to determine whether the proposed alarm
would work. The system verifies that the user's preferences are
realistic. For example, if the user indicates that he or she wishes
to sleep for four full sleep cycles, and wake up in five hours, the
system would indicate to the user that this preference is not
likely to be achieved. The average length of a full sleep cycle is
between 90 minutes and 120 minutes, for most people. In one
embodiment, the realism of the user's sleep cycle/wake window
preferences is compared to a default sleep cycle. In one
embodiment, the user's own sleep cycle data is used to evaluate the
user's preference. If it is not reasonable, the system warns the
user at block 570. In one embodiment, the system may inform the
user of the mismatch between the user's sleep cycle length, sleep
timing, and wake up window. The user may override the warning, at
block 540 to set the alarm, or may alter the settings.
[0080] In one embodiment, the reasonableness determination, at
block 565, examines the user's historical patterns of sleep. If
there is a mismatch between the alarm preferences and the actual
sleep patterns of the user, the system may alert the user. For
example, if a user consistently goes to bed at 2 a.m., but sets an
alarm preference of four sleep cycles, and a latest waking of 7
a.m., the system may suggest that this set of preferences is not
compatible with the known sleeping pattern of the user. If it is
not reasonable, the system warns the user, at block 570. If the
timing is found to be reasonable, the process sets the alarm at
block 545, and ends at block 580.
[0081] FIG. 8 is a block diagram of a particular machine, which may
be used with the present invention. It will be apparent to those of
ordinary skill in the art, however that other alternative systems
of various system architectures may also be used.
[0082] The data processing system illustrated in FIG. 8 includes a
bus or other internal communication means 840 for communicating
information, and a processing unit 810 coupled to the bus 840 for
processing information. The processing unit 810 may be a central
processing unit (CPU), a digital signal processor (DSP), or another
type of processing unit 810.
[0083] The system further includes, in one embodiment, a random
access memory (RAM) or other volatile storage device 820 (referred
to as memory), coupled to bus 840 for storing information and
instructions to be executed by processor 810. Main memory 820 may
also be used for storing temporary variables or other intermediate
information during execution of instructions by processing unit
810.
[0084] The system also comprises in one embodiment a read only
memory (ROM) 850 and/or static storage device 850 coupled to bus
840 for storing static information and instructions for processor
810. In one embodiment the system also includes a data storage
device 830 such as a magnetic disk or optical disk and its
corresponding disk drive, or Flash memory or other storage which is
capable of storing data when no power is supplied to the system.
Data storage device 830 in one embodiment is coupled to bus 840 for
storing information and instructions.
[0085] The system may further be coupled to an output device 870,
such as a cathode ray tube (CRT) or a liquid crystal display (LCD)
coupled to bus 840 through bus 860 for outputting information. The
output device 870 may be a visual output device, an audio output
device, and/or tactile output device (e.g. vibrations, etc.)
[0086] An input device 875 may be coupled to the bus 860. The input
device 875 may be an alphanumeric input device, such as a keyboard
including alphanumeric and other keys, for enabling a user to
communicate information and command selections to processing unit
810. An additional user input device 880 may further be included.
One such user input device 880 is cursor control device 880, such
as a mouse, a trackball, stylus, cursor direction keys, or touch
screen, may be coupled to bus 840 through bus 860 for communicating
direction information and command selections to processing unit
810, and for controlling movement on display device 870.
[0087] Another device, which may optionally be coupled to computer
system 800, is a network device 885 for accessing other nodes of a
distributed system via a network. The communication device 885 may
include any of a number of commercially available networking
peripheral devices such as those used for coupling to an Ethernet,
token ring, Internet, or wide area network, personal area network,
wireless network or other method of accessing other devices. The
communication device 885 may further be a null-modem connection, or
any other mechanism that provides connectivity between the computer
system 800 and the outside world.
[0088] Note that any or all of the components of this system
illustrated in FIG. 8 and associated hardware may be used in
various embodiments of the present invention.
[0089] It will be appreciated by those of ordinary skill in the art
that the particular machine which embodies the present invention
may be configured in various ways according to the particular
implementation. The control logic or software implementing the
present invention can be stored in main memory 820, mass storage
device 830, or other storage medium locally or remotely accessible
to processor 810.
[0090] It will be apparent to those of ordinary skill in the art
that the system, method, and process described herein can be
implemented as software stored in main memory 820 or read only
memory 850 and executed by processor 810. This control logic or
software may also be resident on an article of manufacture
comprising a computer readable medium having computer readable
program code embodied therein and being readable by the mass
storage device 830 and for causing the processor 810 to operate in
accordance with the methods and teachings herein.
[0091] The present invention may also be embodied in a handheld or
portable device containing a subset of the computer hardware
components described above. For example, the handheld device may be
configured to contain only the bus 815, the processor 810, and
memory 850 and/or 825.
[0092] The handheld device may be configured to include a set of
buttons or input signaling components with which a user may select
from a set of available options. These could be considered input
device #1 875 or input device #2 880. The handheld device may also
be configured to include an output device 870 such as a liquid
crystal display (LCD) or display element matrix for displaying
information to a user of the handheld device. Conventional methods
may be used to implement such a handheld device. The implementation
of the present invention for such a device would be apparent to one
of ordinary skill in the art given the disclosure of the present
invention as provided herein.
[0093] The present invention may also be embodied in a special
purpose appliance including a subset of the computer hardware
components described above. For example, the appliance may include
a processing unit 810, a data storage device 830, a bus 840, and
memory 820, and no input/output mechanisms, or only rudimentary
communications mechanisms, such as a small touch-screen that
permits the user to communicate in a basic manner with the device.
In general, the more special-purpose the device is, the fewer of
the elements need be present for the device to function. In some
devices, communications with the user may be through a touch-based
screen, or similar mechanism. In one embodiment, the device may not
provide any direct input/output signals, but may be configured and
accessed through a website or other network-based connection
through network device 885.
[0094] It will be appreciated by those of ordinary skill in the art
that any configuration of the particular machine implemented as the
computer system may be used according to the particular
implementation. The control logic or software implementing the
present invention can be stored on any machine-readable medium
locally or remotely accessible to processor 810. A machine-readable
medium includes any mechanism for storing information in a form
readable by a machine (e.g. a computer). For example, a
machine-readable medium includes read-only memory (ROM), random
access memory (RAM), magnetic disk storage media, optical storage
media, flash memory devices, or other storage media which may be
used for temporary or permanent data storage. In one embodiment,
the control logic may be implemented as transmittable data, such as
electrical, optical, acoustical or other forms of propagated
signals (e.g. carrier waves, infrared signals, digital signals,
etc.)
[0095] In the foregoing specification, the invention has been
described with reference to specific exemplary embodiments thereof.
It will, however, be evident that various modifications and changes
may be made thereto without departing from the broader spirit and
scope of the invention as set forth in the appended claims. The
specification and drawings are, accordingly, to be regarded in an
illustrative rather than a restrictive sense.
* * * * *