Method and apparatus for power-efficient joint dimming and visible light communication

A method, an apparatus, and a computer program product for communication are provided. The apparatus obtains a message for communication using visible light communication (VLC) through a light emitting diode (LED) luminary device and formats the message using a synchronization signal followed by one or more data signals. The synchronization signal and/or the one or more data signals are modulated using a Frequency Shift Keying (FSK) modulation scheme. The apparatus further receives a dimming level value associated with a brightness of light to be emitted from the LED luminary device, generates a waveform with frequencies based on the formatted message and a duty cycle for the LED luminary device based on the dimming level value, and sends the generated waveform to the LED luminary device for communication using VLC.

BACKGROUND

The present disclosure relates generally to communication systems, and more particularly, to power-efficient joint dimming and visible light communication (VLC).

VLC is a method of communication using modulation of a light intensity emitted by a light emitting diode (LED) luminary device. Visible light is light having a wavelength in a range that is visible to the human eye. The wavelength of the visible light is in the range of 380 to 780 nm. Since humans cannot perceive on-off cycles of a LED luminary device above a certain number of cycles per second (e.g., 150 Hz), LEDs may use Pulse Width Modulation (PWM) in order to increase the lifespan thereof and save energy. Additionally, dimming control of the LED luminary device may be controlled through varying duty cycle timing. Such varying may affect attempts to communicate data using VLC in an environment in which the LED luminary device also has a dimming control.

Thus, improved apparatus and methods for providing power-efficient joint dimming and VLC may be desired.

SUMMARY

In aspect of the disclosure, a method, a computer program product, and an apparatus are provided. The apparatus obtains a message for communication using visible light communication (VLC) through a light emitting diode (LED) luminary device and formats the message using a synchronization signal followed by one or more data signals, wherein the synchronization signal and/or the one or more data signals are modulated using a Frequency Shift Keying (FSK) modulation scheme. The apparatus further receives a dimming level value associated with a brightness of light to be emitted from the LED luminary device, generates a waveform with frequencies based on the formatted message and a duty cycle for the LED luminary device based on the dimming level value, and sends the generated waveform to the LED luminary device for communication using VLC.

In another aspect of the disclosure, the apparatus receives a visible light communication (VLC) based signal from a light emitting diode (LED) luminary device, detects a synchronization signal in the VLC based signal through correlation with one or more stored synchronization signal replicas, and decodes a message included in the VLC based signal based on the detected synchronization signal, wherein the message is formatted using the synchronization signal followed by one or more data signals, and wherein the synchronization signal and/or the one or more data signals are modulated using a Frequency Shift Keying (FSK) modulation scheme.

DETAILED DESCRIPTION

FIG. 1is a drawing of an example visible light communications system100. The visible light communications system100includes one or more wireless devices110and one or more light emitting diode (LED) luminary devices102. The visible light communications system100may overlap with one or more other communications systems, such as for example, a wireless wide area network (WWAN) supported by a network entity108. LED luminary device102may be connected to a visible light communication (VLC) modulator/encoder central controller104. Further, the VLC modulator/encoder central controller104may be coupled to a dimming controller106and the network entity108. Dimming controller106may have a wireline and/or wireless interface to receive dimming commands122from an external device, network, etc.

In an aspect, the VLC modulator/encoder central controller104may receive data120from the network entity108and a dimming level input122from a dimming controller106. For example, the data may be a MAC address that uniquely identifies a location (e.g., room in a building, venue, etc.). Based on these inputs (120,122), the VLC modulator/encoder central controller104may generate a signal124that is sent to the LED luminary device102for communication using VLC. In such an aspect, the VLC modulator/encoder central controller104may generate the signal124with a duty cycle square wave based on the dimness level input122and a frequency based on the data120. In an aspect in which the LED luminary device102is a direct current (DC) powered device, the signal124may be communicated via a DC category (CAT) cable from the VLC modulator/encoder central controller104to the LED luminary device102. In another aspect where the LED luminary device120is an alternating current (AC) powered device, the LED luminary device102may have an external dimming pin, the function of which is to receive a dimming signal. This dimming signal may traditionally be a pulse-width modulated (PWM) “On-Off” signal just as in the case of the DC-architecture. In such an aspect, the output124of the VLC modulator/encoder central controller104feeds into the dimming pin of the LED luminary device102.

In an aspect, the VLC modulator/encoder central controller104may use a Frequency Shift Keying (FSK) modulation scheme. In such an aspect, the signal124from the VLC modulator/encoder central controller104to the LED luminary device102may be a square wave whose frequency is used to convey the information120. FSK modulation may be efficiently implemented using square waves. For example, when FSK modulation is used with the LED luminary devices102, a high degree of power efficiency (e.g., over 80% for voltages of interest) may result. Furthermore, PWM-modulated square waves may be generally used for dimming the LED luminary device102. Additionally, FSK modulation may be used because of constraints that an image sensor receiver may impose. One such constraint may be that the modulation is to be robust for arbitrary locations of the VLC source. A FSK symbol duration may be equal to a frame time interval.

AlthoughFIG. 1depicts the VLC modulator/encoder central controller104, the dimming controller106, the network entity108, and the LED luminary device102as separate modules, one of ordinary skill in the art would appreciate that any combination of these modules may be coupled and/or housed within a single device. For example, the VLC modulator/encoder central controller104may be a standalone unit that contains the message124to be transmitted. In another example, the VLC modulator/encoder central controller104may be connected, via a wireline or a wireless link, to the network entity108and/or a device from which the VLC modulator/encoder central controller104receives data120to be communicated. In an aspect, the network entity108may be the Internet, an intranet, a LAN, etc. In another example, the VLC modulator/encoder central controller104and the dimming controller106may be separate devices. In another example, the VLC modulator/encoder central controller104and the dimming controller106may be co-located within the LED luminary device102. In such an aspect, the VLC modulator/encoder central controller104may have a power-line communication (PLC) interface to an external network (e.g., the network entity108) from which it may receive messages120. In still another example, the VLC modulator/encoder central controller104may be a standalone device, not connected to the network entity108, and may internally include in a memory storage the data to be communicated through the LED luminary device102.

Wireless device110may include a VLC processing module112and a sync signal/dimness level correlation module114. In an aspect, the VLC processing module112may include a receiver, such as but not limited to, a CMOS imaging sensor camera which implements a rolling shutter. In an operational aspect, the wireless device110may receive a signal124from the LED luminary device102. In such an aspect, the sync signal/dimness level correlation module114may be used to determine a dimness level value in the received signal124. Further, once the dimness level value in the received signal124is determined, the VLC processing module112may determine a synchronization signal in the received signal124, and as such, may process the data120included in the received signal124. In an operational aspect, the wireless device110receiver may detect a synchronization signal in a VLC signal by correlating received samples from a CMOS image sensor with stored replicas of a prior known synchronization signal. Because a chirp signal may have good autocorrelation properties, the receiver may be able to detect a start time of a FSK symbol sequence and align a fast Fourier transform (FFT) operation accordingly. Further, as the wireless device110may not know the dimness level a priori, the sync signal/dimness level correlation module114may correlate the received signal with several versions of the stored synchronization signal replicas (e.g., different replicas for different dimness levels). In an aspect, the number of dimness levels may be less than 100. In another aspect, the VLC processing module112may perform autocorrelation in the frequency domain to optimize the speed.

The wireless device110may alternatively be referred to by those skilled in the art as user equipment (UE), a mobile station, a subscriber station, a mobile unit, a subscriber unit, a wireless unit, a wireless node, a remote unit, a mobile device, a wireless communication device, a remote device, a mobile subscriber station, an access terminal, a mobile terminal, a wireless terminal, a remote terminal, a handset, a user agent, a mobile client, a client, or some other suitable terminology.

Communications120between the VLC modulator/encoder central controller104and the network entity108may be supported via wireline and/or wireless systems. In an aspect, the wireline connection may be based on a power line communication (PLC), Ethernet, etc. In another aspect, the wireless connection may use a wireless peer-to-peer communication system based on FlashLinQ, WiMedia, Bluetooth, ZigBee, or Wi-Fi based on the IEEE 802.11 standard. In still another aspect, the wireless connection may be use cellular communication systems such as but not limited to, code division multiple access (CDMA) systems, time division multiple access (TDMA) systems, frequency division multiple access (FDMA) systems, orthogonal frequency division multiple access (OFDMA) systems, single-carrier frequency division multiple access (SC-FDMA) systems, time division synchronous code division multiple access (TD-SCDMA) systems, and Long Term Evolution (LTE) systems.

FIG. 2is a diagram200illustrating an exemplary frame structure for VLC. In an aspect, 30 frames of FSK symbols204may be preceded by a synchronization signal202which occupies a duration of one frame. In such an aspect, after transmission of the 31 frames is complete, the same set of signals may be transmitted again in the same sequence, but with a potentially different dimming level as input by a dimming controller (e.g., dimming controller106). In general, the dimming input can be changed at every symbol boundary.

With respect to the FSK symbols204, the VLC modulator/encoder central controller104may map the coded symbols (c1, c2, . . . , cn) (e.g., data120) into a sequence of frequencies (f1, f2, . . . , fn) and/or in differences of frequencies (df1, df2, . . . , dfn). In such an aspect in which differential coding is used, an initial frequency (e.g., f0) may be fixed and known to the receiver, and may indicate to the receiver the start of the message (sequence of symbols). The VLC modulator/encoder central controller104may create a sequence of continuous square wave signals (s1(t), s2(t), . . . , sn(t)) each having a duration 1/frames per second (fps) where fps is the frame rate of the receiver (which may be known at the transmitter). In an aspect, the frequencies (f1, f2, . . . , fn) may all lie in an interval (e.g., 150 Hz to 10000 Hz). A lower bound of 150 Hz may be selected to prevent flickering as perceived by a human eye. An upper bound may be limited by the bandwidth of the receiver (e.g., rolling shutter of wireless device camera). Further, a duty cycle of each of the square waves (s1(t), s2(t), . . . , sn(t)) may be determined by the input122from the dimming controller106and may be in the interval [0, 1].

In an operational aspect, the frequency of s1(t) is f1, the frequency of s2(t) is f2, etc. In an operational aspect that uses a differential frequency scheme, the frequency of s1(t) is f0, the frequency of s2(t) is f0+df1, the frequency of s3(t) is f0+df1+df2, etc. Further, in an operational aspect, a receiver associated with the wireless device110(e.g., a wireless device110equipped with an image sensor), detects the fundamental frequency of the square wave (e.g., using a fast Fourier transform (FFT)) and demodulates the frequencies back to corresponding codeword bits as dictated by a codebook. In an aspect, a resolution of approximately 10 Hz may be achieved in the frequency domain. In such an aspect, a data rate of log 2((10000−150)/10)=9.9 bits per frame may be achieved since each frame may carry a square wave having a duration equal to a frame time. Still further, in an aspect in which 30 frames are used for one message (e.g., data120), a data rate of 297 bps may be achieved.

FIGS. 3A and 3Billustrate graphs (301,303) of synchronization signals (e.g., synchronization signals202) with different duty rates. Graphs301and303have an x-axis302indicating time and a y-axis304indicating whether the signal is in an “On” or “Off” position (e.g., “0” or “1”). Dimness constraints may be maintained by choosing a duty cycle of the square wave to be proportional to the requested dimness level. As noted above, the VLC modulator/encoder central controller104may use the dimness level input122and the message120to generate a signal (e.g., square wave)124. The duty cycle of the square wave124may be determined by the dimness level122. The frequency of the square wave124may be determined by the message120. In an aspect, the relationship between the dimness level and duty cycle may be linear, logarithmic, etc. Graphs301and303illustrate how modulating the pulse width of the square wave changes the effective dimness level. For example, the average current/voltage level is proportional to the square wave duty cycle. Graphs301and303further illustrate how FSK modulation can be achieved while maintaining the desired dimness.

Graph301depicts a synchronization signal (e.g., synchronization signal202) with a duty cycle of 10% (e.g., 10% dimming). Graph303depicts a synchronization signal with a duty cycle of 50% (e.g., 50% dimming).

The synchronization signal (e.g., synchronization signal202) may be subject to the same dimming constraints as the FSK symbols (e.g., FSK symbol204) and may also be “On-Off” modulated. In an aspect, the synchronization signal202selected may be a chirp sequence. Graphs301and303depict the synchronization signal as the chirp sequence. As used herein, a chirp is characterized by a rapidly changing frequency over time. For example, the signal s(t)=sin(2*pi*t*(kt+c)) is a chirp with a frequency that changes over time f(t)=kt+c for some constants k and c. Because the signals (synchronization signals202, FSK symbols204) are digital signals, the synchronization signal202changes between 0 and 1. In such an aspect, a sinusoidal chirp may be generated by quantizing the signal transmission as follows: round((s(t)+1)/2). Further, as noted above, the chirp sequence may be generated so that a frequency content is limited to between 150 Hz and 10000 Hz. One example of a chirp sequence is a Zadoff-Chu sequence where k=1 and c=1. The synchronization signal (e.g., synchronization signal202) may be based on an instantaneous frequency of the chirp sequence that has been discretized into a finite set of levels (F1, F2, . . . , Fn). Further, the synchronization signal (e.g., synchronization signal202) may be formed as a concatenation of pulses, each representing one cycle of a square wave of frequency (F1, F2, . . . , Fn). As depicted in graphs301and303, the duty cycle of the pulses may be chosen according to a dimness level input (e.g., input122).

FIG. 4is a flow chart400of a method of communication. The method may be performed by a VLC central controller (e.g., VLC modulator/encoder central controller104).

As shown inFIG. 4, at block402, the VLC central controller may obtain a message for communication using VLC through a light emitting diode (LED) luminary device. In an aspect, the message may be obtained from a network entity (e.g., a server, a LAN, Internet, etc.). In another aspect, the VLC central controller may obtain the message from an internal memory storage.

At block404, the VLC central controller may format the message using a synchronization signal followed by one or more data signals. The synchronization signal and/or the one or more data signals may be modulated using a Frequency Shift Keying (FSK) modulation scheme. In an aspect, each of the one or more data signals may have a duration of 1/(frames per second (fps)) seconds, where fps is a frame rate of a receiver for receiving the one or more data signals.

At block406, the VLC central controller may receive a dimming level input/value associated with a brightness of light to be emitted from the LED luminary device. In an aspect, a value for the brightness of light may be selected by a user via an external entity (e.g., wall-mounted dimmer or central controller that communicates with the LED luminary device via a wired connection, a wireless connection, or a device such as a smartphone that communicates directly with the LED luminary device). The brightness value may be manually set by the user or automatically set by a building automation system. In an aspect, the dimming level input/value may indicate a duty cycle to be used to achieve a desired requested dimness level (e.g., 10% duty cycle equals 10% dimming). In another aspect, the dimming level input/value and the duty cycle may be related through a linear, logarithmic, etc., relationship.

At block408, the VLC central controller may generate a waveform with frequencies based on the formatted message and a duty cycle based on the dimming level input/value. In an aspect, the waveform may be a square wave. In an aspect, the frequencies may be between 150 Hz and 10000 Hz.

At block410, the VLC central controller may send the generated waveform to the LED luminary device for communication using VLC.

FIG. 5is a conceptual data flow diagram500illustrating the data flow between different modules/means/components in an exemplary apparatus501. The apparatus501may be a VLC central controller (e.g., VLC modulator/encoder central controller104). The apparatus501includes a reception module502, a VLC processing module504, and a transmission module506.

The VLC processing module504may obtain (via the reception module502) a message520for communication to a wireless device110using VLC through a light emitting diode (LED) luminary device530. In an aspect, the message520may be obtained from a network entity (e.g., a server, a LAN, Internet, etc.). In another aspect, the message520may be obtained from an internal memory storage.

The VLC processing module504may format the message520using a synchronization signal followed by one or more data signals. The VLC processing module504may modulate the synchronization signal and/or the one or more data signals using a Frequency Shift Keying (FSK) modulation scheme. In an aspect, each of the one or more data signals may have a duration of 1/(frames per second (fps)) seconds, where fps is a frame rate of a receiver for receiving the one or more data signals.

The VLC processing module504may receive (via the reception module502) a dimming level input/value522associated with a brightness of light to be emitted from the LED luminary device530. In an aspect, a value for the brightness of light may be selected by a user via an external entity (e.g., wall-mounted dimmer or central controller that communicates with the LED luminary device530via a wired connection, a wireless connection, or a device such as a smartphone that communicates directly with the LED luminary device530). The brightness value may be manually set by the user or automatically set by a building automation system. In an aspect, the dimming level input/value522may indicate a duty cycle to be used to achieve a desired requested dimness level (e.g. 10% duty cycle equals 10% dimming). In another aspect, the dimming level input/value522and the duty cycle may be related through a linear, logarithmic, etc., relationship.

The VLC processing module504may generate a waveform with frequencies based on the formatted message and a duty cycle based on the dimming level value522. In an aspect, the waveform may be a square wave. In an aspect, the frequencies may be between 150 Hz and 10000 Hz. The VLC processing module504may then send (via the transmission module506) the generated waveform524to the LED luminary device530for communication to the wireless device110using VLC.

FIG. 6is a diagram illustrating an example of a hardware implementation for an apparatus501′ employing a processing system614. The processing system614may be implemented with a bus architecture, represented generally by the bus624. The bus624may include any number of interconnecting buses and bridges depending on the specific application of the processing system614and the overall design constraints. The bus624links together various circuits including one or more processors and/or hardware modules, represented by the processor604, the modules502,504,506, and the computer-readable medium/memory606. The bus624may also link various other circuits such as timing sources, peripherals, voltage regulators, and power management circuits, which are well known in the art, and therefore, will not be described any further.

The processing system614may be coupled to a transceiver610. The transceiver610is coupled to one or more antennas and/or pins620. The transceiver610provides a means for communicating with various other apparatus over a transmission medium. The transceiver610receives a signal from the one or more antennas and/or pins620, extracts information from the received signal, and provides the extracted information to the processing system614, specifically the reception module502. In addition, the transceiver610receives information from the processing system614, specifically the transmission module506, and based on the received information, generates a signal to be applied to the one or more antennas and/or pins620. The processing system614includes a processor604coupled to a computer-readable medium/memory606. The processor604is responsible for general processing, including the execution of software stored on the computer-readable medium/memory606. The software, when executed by the processor604, causes the processing system614to perform the various functions described supra for any particular apparatus. The computer-readable medium/memory606may also be used for storing data that is manipulated by the processor604when executing software. The processing system614further includes at least one of the modules502,504, and506. The modules may be software modules running in the processor604, resident/stored in the computer readable medium606, one or more hardware modules coupled to the processor604, or some combination thereof.

In one configuration, the apparatus501/501′ for wireless communication includes means for obtaining a message for communication using VLC through a LED luminary device, means for formatting the message using a synchronization signal followed by one or more data signals, wherein the synchronization signal and/or the one or more data signals are modulated using a Frequency Shift Keying (FSK) modulation scheme, means for receiving a dimming level value associated with a brightness of light to be emitted from the LED luminary device, means for generating a waveform with frequencies based on the formatted message and a duty cycle for the LED luminary device based on the dimming level value, and means for sending the generated waveform to the LED luminary device for communication using VLC. The aforementioned means may be one or more of the aforementioned modules of the apparatus501and/or the processing system614of the apparatus501′ configured to perform the functions recited by the aforementioned means.

FIG. 7is a flow chart700of a method of wireless communication. The method may be performed by a wireless device (e.g., wireless device110). As shown inFIG. 7, at block702, the wireless device may receive a VLC based signal from a light emitting diode (LED) luminary device. In an aspect, the VLC based signal may be within a frequency range between 120 Hz and 10000 Hz. In another aspect, the wireless device may receive the VLC based signal using a CMOS image sensor using a rolling shutter.

At block704, the wireless device may detect a synchronization signal in the VLC based signal through correlation with one or more stored synchronization signal replicas. In an aspect, each of the stored synchronization signal replicas may correspond to a different dimming level. In another aspect, there are less than 100 different synchronization signal replicas against which to correlate the synchronization signal. The correlation may be performed in a frequency domain.

At block706, the wireless device may decode a message included in the VLC based signal based on the detected synchronization signal. In an aspect, the message is formatted with the synchronization signal followed by one or more data signals. The synchronization signal and/or the one or more data signals may be modulated using a Frequency Shift Keying (FSK) modulation scheme. In an aspect, each of the one or more data signals may have a duration of 1/(frames per second (fps)) seconds, where fps is a frame rate of the wireless device for receiving the one or more data signals. In an aspect, the message may include a medium access control (MAC) address identifying a location (e.g., room, venue), service (e.g., merchant information, coupons), etc., associated with the LED luminary device.

FIG. 8is a conceptual data flow diagram800illustrating the data flow between different modules/means/components in an exemplary apparatus801. The apparatus801may be a wireless device (e.g., wireless device110). The apparatus801includes a reception module802, a VLC processing module804, and a sync signal/dimness level correlation module806.

The reception module802may receive a VLC based signal824from a light emitting diode (LED) luminary device102. In an aspect, the VLC based signal may be within a frequency range between 120 Hz and 10000 Hz. In another aspect, the reception module802may receive the VLC based signal824using a CMOS image sensor using a rolling shutter.

The sync signal/dimness level correlation module806receives the VLC based signal824from the reception module802. The sync signal/dimness level correlation module806may detect a synchronization signal in the VLC based signal824through correlation with one or more stored synchronization signal replicas. In an aspect, each of the stored synchronization signal replicas may correspond to a different dimming level. In another aspect, there are less than 100 different synchronization signal replicas against which to correlate the synchronization signal. The correlation may be performed in a frequency domain.

The VLC processing module receives the VLC based signal824from the reception module802. The VLC processing module804may decode a message included in the VLC based signal824based on the synchronization signal detected by the sync signal/dimness level correlation module806. In an aspect, the message is formatted using the synchronization signal followed by one or more data signals. The synchronization signal and/or the one or more data signals may be modulated using a Frequency Shift Keying (FSK) modulation scheme. In an aspect, each of the one or more data signals may have a duration of 1/(frames per second (fps)) seconds, where fps is a frame rate of the apparatus801for receiving the one or more data signals. In an aspect, the message may include a medium access control (MAC) address identifying a location (e.g., room, venue), service (e.g., merchant information, coupons), etc., associated with the LED luminary device102.

FIG. 9is a diagram illustrating an example of a hardware implementation for an apparatus801′ employing a processing system914. The processing system914may be implemented with a bus architecture, represented generally by the bus924. The bus924may include any number of interconnecting buses and bridges depending on the specific application of the processing system914and the overall design constraints. The bus924links together various circuits including one or more processors and/or hardware modules, represented by the processor904, the modules802,804,806, and the computer-readable medium/memory906. The bus924may also link various other circuits such as timing sources, peripherals, voltage regulators, and power management circuits, which are well known in the art, and therefore, will not be described any further.

The processing system914may be coupled to a transceiver910. The transceiver910is coupled to one or more antennas920. The transceiver910provides a means for communicating with various other apparatus over a transmission medium. The transceiver910receives a signal from the one or more antennas920, extracts information from the received signal, and provides the extracted information to the processing system614, specifically the reception module802. The processing system914includes a processor904coupled to a computer-readable medium/memory906. The processor904is responsible for general processing, including the execution of software stored on the computer-readable medium/memory906. The software, when executed by the processor904, causes the processing system914to perform the various functions described supra for any particular apparatus. The computer-readable medium/memory906may also be used for storing data that is manipulated by the processor904when executing software. The processing system914further includes at least one of the modules802,804, and806. The modules may be software modules running in the processor904, resident/stored in the computer readable medium/memory906, one or more hardware modules coupled to the processor904, or some combination thereof.

In one configuration, the apparatus110/110′ for wireless communication includes means for receiving a visible light communication (VLC) based signal from a light emitting diode (LED) luminary device, means for detecting a synchronization signal in the VLC based signal through correlation with one or more stored synchronization signal replicas, and means for decoding a message included in the VLC based signal based on the detected synchronization signal, wherein the message is formatted using the synchronization signal followed by one or more data signals, and wherein the synchronization signal and/or the one or more data signals are modulated using a Frequency Shift Keying (FSK) modulation scheme. The aforementioned means may be one or more of the aforementioned modules of the apparatus801and/or the processing system914of the apparatus801′ configured to perform the functions recited by the aforementioned means.