Self-positioning light-based communication enabled lighting device

文档序号:1652294 发布日期:2019-12-24 浏览:20次 中文

阅读说明:本技术 自定位使能基于光的通信的照明设备 (Self-positioning light-based communication enabled lighting device ) 是由 C.布罗伊尔 A.阿加瓦尔 B.斯托特 C.沃格特 于 2018-02-08 设计创作,主要内容包括:公开了使用由经过的移动计算设备提供的位置信息为照明设备阵列内的基于光的通信(LCom)的照明设备编程照明设备位置的技术。该位置信息可以被接收为,例如作为具体坐标(例如,基于网格的地图的x-y坐标)或者作为移动计算设备相对于初始已知参考位置的移动数据。所公开的技术可以用于例如减少与用照明设备位置对照明设备进行编程和重新编程相关联的时间、劳动和费用,并且增加导航系统安装的灵活性。在一些情况下,所公开的技术可以用于例如改进被编程到新安装的照明设备中的照明设备位置的精度。(Techniques are disclosed for programming luminaire locations for light-based communication (LCom) luminaires within a luminaire array using location information provided by passing mobile computing devices. The location information may be received, for example, as specific coordinates (e.g., x-y coordinates of a grid-based map) or as movement data of the mobile computing device relative to an initial known reference location. The disclosed techniques may be used, for example, to reduce the time, labor, and expense associated with programming and reprogramming lighting devices with lighting device locations, and to increase the flexibility of navigation system installation. In some cases, the disclosed techniques may be used, for example, to improve the accuracy of lighting device locations programmed into newly installed lighting devices.)

1. A method for programming lighting device locations into a lighting device, the method comprising:

providing a reference location of a source lighting device to a mobile computing device;

receiving location information from the mobile computing device, wherein the location information is based on a reference location and an estimated displacement of the mobile computing device from the reference location; and

the lighting device location of the lighting device is determined using the location information from the mobile computing device.

2. The method of claim 1, wherein the luminaire is an LCom-enabled luminaire configured to receive location information from the mobile computing device and determine a luminaire location, wherein the LCom-enabled luminaire is capable of transmitting visible light communication signals generated using visible light communication waveforms.

3. The method of claim 1, wherein the server is configured to provide the reference location to the mobile computing device, receive location information from the mobile computing device, and determine a lighting device location of the lighting device.

4. The method of claim 1, the method further comprising:

the lighting device locations are broadcast to the mobile computing device to provide navigational assistance to a user of the mobile computing device.

5. The method of claim 4, wherein the lighting device location is broadcast when the confidence level is equal to or greater than a threshold, wherein the confidence level is adjusted based on a comparison of the received location information from the at least one mobile computing device and the lighting device location.

6. The method of claim 1, wherein the reference location comprises at least one of an identifier of a source lighting device and a location of the source lighting device within the array of lighting devices.

7. The method of claim 1, wherein the estimated displacement of the mobile computing device is a distance between the reference location and a current location of the mobile computing device.

8. The method of claim 1, further comprising:

receiving at least one additional location information from at least one additional mobile computing device; and

both the lighting device location and the at least one additional location information from the at least one additional mobile computing device are statistically analyzed.

9. The method of claim 8, the method further comprising:

re-determining a lighting device location of the lighting device based on the at least one additional location information from the at least one additional mobile computing device.

10. A non-transitory computer program product comprising a plurality of instructions encoded thereon that when executed by one or more processors cause a process to be carried out, the process comprising:

providing a reference location of a first lighting device to a mobile computing device;

receiving location information from the mobile computing device, wherein the location information is based on a reference location and an estimated displacement of the mobile computing device from the reference location; and

the lighting device location of the second lighting device is determined using the location information from the mobile computing device.

11. The computer program product of claim 10, wherein the reference location comprises at least one of an identifier of a first lighting device within the array of lighting devices and a location of the first lighting device.

12. The computer program product of claim 10, the process further comprising identifying a second lighting device proximate to the estimated displacement of the mobile computing device.

13. The computer program product of claim 12, wherein the lighting device location of the second lighting device is determined using at least one of an identifier of the second lighting device and an estimated displacement of the mobile computing device and a lookup table, the lookup table including location and identifier information for a plurality of lighting devices.

14. The computer program product of claim 13, wherein the lookup table is stored on a server communicatively coupled with the first lighting device, the second lighting device, and the mobile computing device.

15. A system for programming lighting device locations into a lighting device, the system comprising:

an array of lighting devices, the array of lighting devices comprising:

a first lighting device programmed with a location, wherein the location is a reference location transmitted to a mobile computing device;

a second lighting device not programmed with a lighting device location;

a transceiver configured to receive location information from a mobile computing device; and

a processor configured to:

determining a lighting device location of a second lighting device using the received location information from the mobile computing device; and is

Providing the determined luminaire position to a second luminaire via the transceiver.

16. The system of claim 15, wherein the location information received from the mobile computing device includes a reference location and an estimated displacement of the mobile computing device from the first lighting device.

17. The system of claim 15, wherein the processor is disposed within a second lighting device.

18. The system of claim 15, wherein the processor is disposed within a server in communication with the array of lighting devices via a network.

19. The system of claim 18, wherein the server is in communication with a second lighting device such that the second lighting device indirectly receives location information from the mobile computing device.

20. The system of claim 15, wherein the second lighting device is further configured to broadcast a lighting device location when the confidence level is equal to or greater than a threshold, wherein the confidence level is adjusted based on a comparison of the received location information from the at least one mobile computing device and the lighting device location.

Technical Field

The present disclosure relates to Solid State Lighting (SSL), and more particularly to light-based communication via SSL.

Background

Global Positioning System (GPS) devices are commonly used to facilitate navigation on the earth. These GPS devices are designed to communicate with orbiting satellites that transmit position and time information. Nearer to the surface of the earth, satellite-based navigation may be supplemented by using local wireless technology, such as Wi-Fi, which communicates with nearby compatible devices using Radio Frequency (RF) signals. These types of wireless technologies typically employ wireless access points (Wi-Fi hotspots) to establish network access. In the case of a secure wireless network, a password or other security credentials must typically be provided in order to gain network access.

Drawings

Fig. 1 is a block diagram illustrating an example light-based communication (LCom) system configured in accordance with an embodiment of the present disclosure.

Fig. 2A is a block diagram illustrating an LCom-enabled lighting device configured in accordance with an embodiment of the present disclosure.

Fig. 2B is a block diagram illustrating an LCom-enabled luminaire configured according to another embodiment of the present disclosure.

Fig. 3 illustrates an example arbitrary LCom signal as may be transmitted by an LCom-enabled luminaire in accordance with an embodiment of the present disclosure.

Fig. 4 illustrates an example computing device configured in accordance with embodiments of the present disclosure.

Fig. 5A illustrates an example LCom system including an LCom-enabled illumination device and a computing device, in accordance with embodiments of the present disclosure.

Fig. 5B illustrates an example method for transmitting location information from an LCom-enabled luminaire in accordance with an embodiment of the present disclosure.

Fig. 5C illustrates an example graphical map of LCom-enabled luminaires deployed at a given venue, and corresponding LCom transmissions indicating the location of that particular luminaire within the venue, in accordance with embodiments of the present disclosure.

Fig. 5D illustrates an example scenario in which a computing device is configured to output instructions to a user through visual feedback, in accordance with an embodiment of the present disclosure.

Fig. 6A and 6B each illustrate example orientations between a luminaire and a computing device, and how this affects the ability of a device raster line to decode LCom messages from the luminaire.

Fig. 7 illustrates an array of LCom-enabled luminaires configured in accordance with an embodiment of the present disclosure.

Fig. 8 is a flowchart illustrating an example method for determining a location of a newly installed LCom-enabled luminaire within an array of luminaires configured to directly effectuate two-way communication with a mobile computing device in accordance with an embodiment of the present disclosure.

Fig. 9 is a block diagram illustrating a navigation system according to an embodiment of the present disclosure.

Fig. 10 is a flowchart illustrating an example method for determining a location of a newly installed LCom-enabled luminaire within an array of luminaires configured to effectuate two-way communication with a mobile computing device indirectly via a server in accordance with an embodiment of the present disclosure.

The figures depict various embodiments of the present disclosure for purposes of illustration only. Many modifications, configurations, and other embodiments will become apparent from the detailed discussion below.

Detailed Description

Techniques are disclosed for programming luminaire locations for light-based communication (LCom) luminaires within an array of luminaires using location information provided by passing mobile computing devices. Typical mobile computing devices, such as smartphones or tablet computers, are often configured with positioning sensors, such as accelerometers and gyroscopes, which may be used to track the movement of the device. Such sensor-based movement data may be used in conjunction with a known starting location to track the location of the mobile device, in accordance with embodiments of the present disclosure. Thus, a given LCom luminaire may receive location information from a given mobile device, for example, as sensor-based movement data, either as specific coordinates (e.g., x-y coordinates of a grid-based map) or as a mobile computing device relative to an initial known reference location. Using such location information, an LCom luminaire may determine and store its location within a given venue. As will be understood in light of this disclosure, the LCom lighting devices may broadcast the location such that the location is available to the LCom-based navigation application. According to some embodiments, the disclosed techniques may further be used to update or correct lighting device locations previously programmed into lighting devices that are subsequently moved to new locations. Many use cases and embodiments will be apparent in light of this disclosure.

Overview

Light-based communication ("LCom") systems include an array of multiple LCom-enabled luminaires (sometimes referred to herein simply as "luminaires" for brevity). Each LCom-enabled luminaire uses visible light signals to transmit, for example, a location (e.g., coordinates) corresponding to the luminaire location. When the mobile computing device receives the location, the location may then be used for navigation, either in place of or in addition to other navigation means, such as GPS signals typically used for outdoor navigation. As will be further appreciated, LCom-based navigation may be used in areas where GPS-based navigation is not available, such as locations indoors or other coverage such as interior buildings, garages, and tunnels. In such LCom-based navigation systems, it is often necessary for any newly installed luminaire to be programmed (or reprogrammed) with the location of the luminaire. In case of a newly installed lighting device that has not been programmed with its location, the lighting device may not transmit any location information at all. In the case of a newly installed luminaire that has been relocated from other locations in the array, the newly installed luminaire will transmit a location corresponding to its previous, and now incorrect, location. In both cases, the lighting device has to be programmed with a position corresponding to its current position. Such programming of lighting device locations into lighting devices is typically done manually, which is time consuming, labor intensive, and expensive. Another possible technique for automatically estimating the location of luminaires may include using triangulation algorithms based on transmissions from neighboring luminaires that do include their corresponding location information. However, such triangulation-based programming techniques require that the newly installed lighting device be within line of sight of the other three lighting devices, and thus may limit the options for configuration of the array.

Accordingly, techniques are disclosed herein for determining the location of a newly installed or recently moved lighting device using location information from passing mobile computing devices (e.g., smartphones and tablets, or any other mobile computing device configured with navigation sensors for tracking movement and a camera for receiving LCom signals). Whether the location information is in the form of a pre-computed absolute location within a given space or a pre-computed relative location within that space, or in a form that allows for the derivation or other calculation of an absolute or relative location, the location information may be received, for example, as coordinates of a known grid, or as movement data of the mobile computing device relative to a known reference location, or as any other location data that provides useful information. The movement data may include estimated displacements from known reference locations as determined by sensors (e.g., accelerometers and gyroscopes) in the mobile computing device. Regardless of how the location information is determined or received, the newly installed lighting device (or, as the case may be, the most recently moved lighting device) uses the location information to identify its location. In some embodiments, when determining its location using location information from a mobile computing device, a newly installed lighting device may evaluate or otherwise verify the accuracy of the determined location and assign a confidence level to the determined location value. In such embodiments, the lighting device will accept the determined location only if the confidence level meets some established threshold. Once the location information is received (and optionally, once accuracy has been verified), the newly installed lighting device may transmit its location to the mobile computing device to assist the user in LCom-based navigation.

Before discussing the technical details of self-positioning LCom-enabled luminaires, LCom systems and methods are described in the context of fig. 1-6B. Further details of techniques for self-positioning LCom-enabled luminaires are discussed with respect to fig. 7-10.

System architecture

Fig. 1 is a block diagram illustrating an example light-based communication (LCom) system 10 configured in accordance with an embodiment of the present disclosure. As can be seen, system 10 may include one or more LCom-enabled luminaires 100 configured for light-based communicative coupling with a receiver computing device 200 via LCom signal(s). As discussed herein, such LCom may be provided via visible light-based signals, according to some embodiments. In some cases, LCom may only be provided in one direction; for example, LCom data may be communicated from a given LCom-enabled luminaire 100 (e.g., a transmitter) to a computing device 200 (e.g., a receiver), or from a computing device 200 (e.g., a transmitter) to a given LCom-enabled luminaire 100 (e.g., a receiver). In some other cases, LCom may be provided in a bi-directional manner between a given LCom-enabled luminaire 100 and computing device 200, both of which act as transceiver devices capable of transmitting and receiving.

In some cases where system 10 includes multiple LCom-enabled luminaires 100, all (or some subset of) the multiple LCom-enabled luminaires 100 may be configured for communicative coupling with each other so as to provide inter-luminaire communication. For example, in one such scenario, inter-lighting device communication may be used to inform other lighting devices 100 that a given computing device 200 is currently present, as well as location information for that particular lighting device 100. However, as will be understood from this disclosure, such inter-lighting device communication is not required.

As can be further seen in this example embodiment, system 10 allows for a communicative coupling to network 300 and one or more servers or other computer systems 301. Communicative coupling may be provided, for example, between network 300 and computing device 200 and/or one or more LCom-enabled luminaires 100, as desired. The network 300 may be a wireless local area network, a wired local area network, or a combination of local wired and wireless networks, and may further include access to a wide area network such as the internet or a network across a campus. In short, the network 300 may be any communication network.

According to some embodiments, computer system 301 may be any suitable computing system capable of communicating over network 300, such as a cloud-based server computer, and may be programmed or otherwise configured to provide LCom-related services. For example, an LCom-related service may be that computer system 301 is configured to provide storage of mobile computing device location information, for example. Many other such configurations will be apparent in light of this disclosure.

Fig. 2A is a block diagram illustrating an LCom-enabled luminaire 100a configured in accordance with an embodiment of the present disclosure. Fig. 2B is a block diagram illustrating an LCom-enabled luminaire 100B configured according to another embodiment of the present disclosure. As can be seen, the difference between the lighting device 100a and the lighting device 100b is with respect to the location of the controller 150. For the sake of consistency and ease of understanding of the present disclosure, LCom-enabled luminaires 100a and 100b may be generally referred to hereinafter collectively as LCom-enabled luminaires 100, except where referenced individually. It is further noted that, although the various modules are shown as distinct modules for purposes of illustration, any number of modules may be integrated with one or more other modules. For example, the controller 150 may be integrated with the driver 120. Similarly, processor(s) 140 and memory 130 may be integrated within controller 150. Many other configurations may be used.

As can be seen, according to some embodiments, a given LCom-enabled luminaire 100 may include one or more solid state light sources 110. The number, density, and arrangement of solid state light sources 110 utilized in a given LCom-enabled luminaire 100 may be customized as desired for a given target application or end use. A given solid state light source 110 may include one or more solid state emitters, which may be any of a wide variety of semiconductor light source devices, such as, for example, Light Emitting Diodes (LEDs), Organic Light Emitting Diodes (OLEDs), Polymer Light Emitting Diodes (PLEDs), or a combination of any of these devices. A given solid state emitter may be configured to emit electromagnetic radiation, for example, from other portions of the visible and/or electromagnetic spectrum, not limited to the Infrared (IR) and/or Ultraviolet (UV) bands, as desired for a given target application or end use. In some embodiments, a given solid state emitter may be configured to emit a single Correlated Color Temperature (CCT) (e.g., a white light emitting semiconductor light source). In other embodiments, a given solid state emitter may be configured for color tunable emission. For example, in some cases, a given solid state emitter may be a multi-color (e.g., bi-color, tri-color, etc.) semiconductor light source configured for a combination of emissions, such as: (1) red-green-blue (RGB); (2) red-green-blue-yellow (RGBY); (3) red-green-blue-white (RGBW); (4) double white; and/or (5) a combination of any one or more thereof. In some cases, a given solid state emitter may be configured as a high brightness light source. In some embodiments, a given solid state emitter may be equipped with a combination of any one or more of the foregoing example emission capabilities. In any event, a given solid state emitter may be packaged or unpackaged as desired, and in some cases, may be populated on a Printed Circuit Board (PCB) or other suitable interposer/substrate. In some cases, power and/or control connections for a given solid state emitter may be routed from a given PCB to driver 120 (discussed in turn below) and/or other device/component parts, as desired. Other suitable configurations of one or more solid state emitters for a given solid state light source 110 will depend on a given application and will be apparent in light of this disclosure.

A given solid state light source 110 may also include one or more optical devices optically coupled to one or more solid state emitters thereof. According to some embodiments, the optic(s) of a given solid state light source 110 may be configured to transmit light of one or more wavelengths of interest (e.g., visible light, UV, IR, etc.) emitted by the solid state emitter(s) optically coupled thereto. To this end, the optical device(s) may include optical structures (e.g., windows, lenses, domes, etc.) formed from any of a variety of optical materials, such as, for example: (1) polymers such as Polymethylmethacrylate (PMMA) or polycarbonate; (2) ceramics, such as sapphire (Al)2 O3) Or Yttrium Aluminum Garnet (YAG); (3) glass; and/or (4) a combination of any one or more thereof. In some cases, the optic(s) of a given solid state light source 110 may be formed from a single piece (e.g., a single sheet) of optical material to provide a single continuous optical structure. In some other cases, the optics of a given solid state light source 110 may be formed from multiple pieces of optical material to provide multiple pieces of optical junctionAnd (5) forming. In some cases, the optic(s) of a given solid state light source 110 may include optical features such as, for example: (1) an anti-reflective (AR) coating; (2) a reflector; (3) a diffuser; (4) a polarizer; (5) a brightener; (6) a phosphor material (e.g., that converts light received thereby to light of a different wavelength); and/or (7) a combination of any one or more thereof. In some embodiments, the optic(s) of a given solid state light source 110 may be configured to, for example, focus and/or collimate light transmitted therethrough. Other suitable types, light transmission characteristics, and configurations of the optic(s) for a given solid state light source 110 will depend on a given application and will be apparent in light of this disclosure.

According to some embodiments, one or more solid state light sources 110 of a given LCom-enabled luminaire 100 may be electrically coupled with a driver 120. In some cases, the driver 120 may be an electronic driver (e.g., single channel; multi-channel) configured to be used, for example, in controlling one or more solid state emitters of a given solid state light source 110. For example, in some embodiments, driver 120 may be configured to control an on/off state, dimming level, emission color, Correlated Color Temperature (CCT), and/or color saturation of a given solid state emitter (or grouping of emitters). To this end, the driver 120 may utilize any of a variety of driving techniques, including, for example: (1) a Pulse Width Modulation (PWM) dimming protocol; (2) a current dimming protocol; (3) triode for alternating current (TRIAC) dimming protocol; (4) a Constant Current Reduction (CCR) dimming protocol; (5) a Pulse Frequency Modulation (PFM) dimming protocol; (6) a Pulse Code Modulation (PCM) dimming protocol; (8) line voltage (power) dimming protocol (e.g., dimmer is connected prior to input of driver 120 to adjust AC voltage to driver 120); and/or (8) a combination of any one or more thereof. Other suitable configurations for the driver 120 and lighting control/drive techniques will depend on a given application and will be apparent in light of this disclosure.

As will be understood in light of this disclosure, a given solid state light source 110 may also include or otherwise be operatively coupled with other circuitry/element portions, such as may be used in solid state lighting. For example, a given solid state light source 110 (and/or host LCom-enabled luminaire 100) may be configured to host or otherwise be operatively coupled with any of a wide variety of electronic components, such as: (1) power conversion circuitry (e.g., electronic ballast circuitry that converts an AC signal to a DC signal at a desired current and voltage to power a given solid state light source 110); (2) a constant current/constant voltage driver element section; (3) a transmitter and/or receiver (e.g., transceiver) element portion; and/or (4) a local processing element portion. According to some embodiments, when included, such component parts may be mounted on, for example, one or more driver 120 boards.

As can be further seen in fig. 2A-2B, a given LCom-enabled luminaire 100 may include a memory 130 and one or more processors 140. The memory 130 may be of any suitable type (e.g., RAM and/or ROM, or other suitable memory) and size, and in some cases may be implemented with volatile memory, non-volatile memory, or a combination thereof. A given processor 140 may be configured as is typical, and in some embodiments may be configured to, for example, perform operations associated with a given host-enabled LCom lighting device 100 and one or more applications 132 thereof (e.g., within memory 130 or elsewhere). In some cases, memory 130 may be configured to be utilized, for example, for processor workspaces (e.g., for one or more processors 140) and/or to store media, programs, applications, and/or content on host-enabled LCom-enabled lighting device 100 on a temporary or permanent basis. In one example embodiment, the memory 130 stores (whether manually programmed or received using embodiments of the present disclosure) its location indicating where the lighting device is deployed (for purposes of facilitating navigation, as explained previously); and the memory 130 may further include a look-up table (LUT) or other storage facility that indexes the baud rate by computing device type. Table 1 shows an example lookup table according to one such embodiment. Assume that each of a through F represents a transmission baud rate that may be utilized by the luminaire 100. Thus, in some cases, a given processor 140 may identify the baud rate that the luminaire 100 should transmit based on the received decoding parameters (which may be provided to the network 300, for example, whether these parameters include high-level information such as the make and model of the present computing device 200 or low-level information about the device 200 such as its sensing capabilities (e.g., camera imaging speed and resolution)).

Table 1: baud rate LUT.

One or more applications 132 stored in memory 130 may be accessed and executed, for example, by one or more processors 140 of a given LCom-enabled luminaire 100. According to some embodiments, a given application or module 132 may be implemented in any suitable standard and/or custom/proprietary programming language, such as, for example: (1) c; (2) c + +; (3) objective C; (4) JAVAScript; and/or (5) any other suitable custom or proprietary instruction set. In a more general sense, an application or module 132 may be instructions encoded on any suitable non-transitory machine-readable medium that, when executed by one or more processors 140, perform, in part or in whole, the functions of a given LCom-enabled luminaire 100. In one example embodiment, at least one of these modules 132 is a routine for determining a lighting device location based on a known reference location transmitted from the computing device 200 and an estimated mobile computing device location. In any case, the lighting device may broadcast the lighting device location to the passing computing devices 200 using Visible Light Communication (VLC) signals.

According to some embodiments, one or more solid state light sources 110 of a given LCom-enabled luminaire 100 may be electronically controlled, for example, to output light and/or light encoded with LCom data (e.g., LCom signals). To this end, a given LCom-enabled luminaire 100 may include or otherwise be communicatively coupled with one or more controllers 150. In some such example embodiments, such as the example embodiment illustrated in fig. 2A, controller 150 may be hosted by a given LCom-enabled luminaire 100 and operatively coupled (e.g., via a communication bus/interconnect) with one or more solid state light sources 110 (1-N) of that LCom-enabled luminaire 100. In this example case, the controller 150 may output digital control signals to any one or more solid state light sources 110, and may do so, for example, based on wired and/or wireless inputs received from a given local source (e.g., such as the onboard memory 130) and/or remote source (e.g., such as the control interface or network 300). As a result, a given LCom-enabled luminaire 100 may be controlled in such a way as to be desired for a given target application or end use: the approach pertains to outputting any number of output beams (1-N), which may include light and/or LCom data (e.g., LCom signals). However, the present disclosure is not so limited.

For example, in some other embodiments, such as the embodiment illustrated in fig. 2B, controller 150 may be partially or entirely packaged or otherwise hosted by a given solid state light source 110 of a given LCom-enabled luminaire 100 and operably coupled (e.g., via a communication bus/interconnect) with one or more solid state light sources 110. If LCom-enabled luminaire 100 includes a plurality of such solid state light sources 110 hosting their own controllers 150, each such controller 150 may be considered, in a sense, a microcontroller that provides distributed controllers 150 to LCom-enabled luminaire 100. In some embodiments, the controller 150 may be populated on one or more PCBs of the host solid state light source 110, for example. In this example case, controller 150 may output digital control signals to associated solid state light sources 110 of LCom-enabled luminaire 100, and may do so, e.g., based on wired and/or wireless input received from a given local source (e.g., such as on-board memory 130) and/or remote source (e.g., such as control interface, optional network 300, etc.). As a result, LCom-enabled luminaire 100 may be controlled in such a way as to be desired for a given target application or end use: the approach pertains to outputting any number of output beams (1-N), which may include light and/or LCom data (e.g., LCom signals).

According to some embodiments, a given controller 150 may host one or more lighting control modules, and may be programmed or otherwise configured to output one or more control signals, e.g., to adjust operation of solid state emitter(s) of a given solid state light source 110 according to a communicated luminaire position. For example, in some cases, a given controller 150 may be configured to output control signals to control whether a beam of light for a given solid state emitter is on/off. In some cases, a given controller 150 may be configured to output control signals to control the intensity/brightness (e.g., dim; brighten) of light emitted by a given solid state emitter. In some cases, a given controller 150 may be configured to output control signals to control the color (e.g., mixing; tuning) of light emitted by a given solid state emitter. Thus, if a given solid state light source 110 includes two or more solid state emitters configured to emit light having different wavelengths, the control signals may be used to adjust the relative brightness of the different solid state emitters so as to change the mixed color output by that solid state light source 110. In some embodiments, controller 150 may be configured to output control signals to encoder 172 (discussed below) to facilitate encoding LCom data for transmission by a given LCom-enabled luminaire 100. In some embodiments, controller 150 may be configured to output a control signal (discussed below) to modulator 174 to facilitate modulation of the LCom signal for transmission by a given LCom-enabled luminaire 100. Other suitable configurations and control signal outputs for a given controller 150 of a given LCom-enabled luminaire 100 will depend on a given application and will be apparent in light of this disclosure.

According to some embodiments, a given LCom-enabled luminaire 100 may include an encoder 172. In some embodiments, encoder 172 may be configured to encode LCom data, for example, in preparation for transmission by host-enabled LCom luminaire 100. To this end, the encoder 172 may be equipped with any suitable configuration, as will be apparent in light of this disclosure.

According to some embodiments, a given LCom-enabled luminaire 100 may include a modulator 174. In some embodiments, modulator 174 may be configured to modulate the LCom signal, for example, in preparation for transmission by host-enabled LCom luminaire 100. In some embodiments, modulator 174 may be a single-channel or multi-channel electronic driver (e.g., driver 120) configured to be used, for example, in controlling the output of one or more solid state emitters of a given solid state light source 110. In some embodiments, modulator 174 may be configured to control an on/off state, dimming level, emission color, Correlated Color Temperature (CCT), and/or color saturation of a given solid state emitter (or grouping of emitters). To this end, the modulator 174 may utilize any of a variety of drive techniques, including, for example: (1) a Pulse Width Modulation (PWM) dimming protocol; (2) a current dimming protocol; (3) triode for alternating current (TRIAC) dimming protocol; (4) a Constant Current Reduction (CCR) dimming protocol; (5) a Pulse Frequency Modulation (PFM) dimming protocol; (6) a Pulse Code Modulation (PCM) dimming protocol; (8) line voltage (mains) dimming protocol (e.g., a dimmer is connected prior to the input of modulator 174 to adjust the AC voltage to modulator 174); and/or (8) any other suitable lighting control/driving technique, as will be apparent in light of this disclosure. Other suitable configurations and control/drive techniques for the modulator 174 will depend on a given application and will be apparent in light of this disclosure.

According to some embodiments, a given LCom-enabled luminaire 100 may include a multiplier 176. Multiplier 176 may be configured as is typical, and in some example embodiments may be configured to combine the input received from upstream modulator 174 with the input received from ambient light sensor 165 (discussed below). In some cases, multiplier 176 may be configured to increase and/or decrease the amplitude of the signal passing therethrough, as desired. Other suitable configurations for multiplier 176 will depend on a given application and will be apparent in light of this disclosure. According to some embodiments, a given LCom-enabled luminaire 100 may include an adder 178. The adder 178 may be configured as is typical and, in some example embodiments, may be configured to combine the input received from the upstream multiplier 178 with a DC level input. In some cases, the summer 178 may be configured to increase and/or decrease the amplitude of the signal passing therethrough, as desired. Other suitable configurations for adder 178 will depend on a given application and will be apparent in light of this disclosure.

According to some embodiments, a given LCom-enabled luminaire 100 may include a digital-to-analog converter (DAC) 180. DAC 180 may be configured as is typical, and in some example embodiments may be configured to convert a digital control signal into an analog control signal to be applied to a given solid state light source 110 of host-enabled LCom luminaire 100 to output an LCom signal therefrom. Note that in some embodiments, DAC 180 may be further integrated into controller 150. Other suitable configurations will be apparent in light of this disclosure.

According to some embodiments, a given LCom-enabled luminaire 100 may include one or more sensors 160. In some embodiments, a given LCom-enabled luminaire 100 may optionally include an altimeter 161. When included, altimeter 161 may be configured as is typically done, and in some example embodiments may be configured to help determine the height of host-enabled LCom lighting device 100 relative to a given fixed level (e.g., floor, wall, ground, or other surface). In some embodiments, a given LCom-enabled luminaire 100 may optionally include a geomagnetic sensor 163. When geomagnetic sensor 163 is included, geomagnetic sensor 163 may be configured as is typically done, and in some example embodiments may be configured to determine the orientation and/or movement of host-enabled LCom lighting device 100 relative to a ground pole (e.g., magnetic north) or other desired heading, which may be customized as desired for a given target application or end use. In some embodiments, a given LCom-enabled luminaire 100 may optionally include an ambient light sensor 165. When ambient light sensor 165 is included, ambient light sensor 165 may be configured as is typically done, and in some example embodiments may be configured to detect and measure ambient light levels in the ambient environment of host-enabled LCom lighting device 100. In some cases, ambient light sensor 165 may be configured to output a signal, for example, to multiplier 176 of LCom-enabled luminaire 100. In some embodiments, a given LCom-enabled luminaire 100 may optionally include a gyroscope sensor 167. When gyroscope sensor 167 is included, gyroscope sensor 167 can be configured as is typically done, and in some example embodiments can be configured to determine an orientation (e.g., roll, pitch, and/or yaw) of host-enabled LCom lighting device 100. In some embodiments, a given LCom-enabled luminaire 100 may optionally include an accelerometer 169. When accelerometer 169 is included, accelerometer 169 may be configured as is typical, and in some example embodiments may be configured to detect movement of host-enabled LCom lighting device 100. In any case, a given sensor 160 of a given host-enabled LCom lighting device 100 may include mechanical and/or solid-state component portions, as desired for a given target application or end use. Further, it should be noted that the present disclosure is not so limited to these example optional sensors 160, as additional and/or different sensors 160 may be provided as desired for a given target application or end use, or sensors 160 may not be provided as appropriate, according to some other embodiments. Many configurations will be apparent in light of this disclosure.

According to some embodiments, a given LCom-enabled lighting device 100 may include a communication module 170, which communication module 170 may be configured for wired (e.g., universal serial bus or USB, ethernet, firewire, etc.) and/or wireless (e.g., Wi-Fi, bluetooth, etc.) communication, as desired. According to some embodiments, the communication module 170 may be a transceiver or other network interface circuit configured to communicate locally and/or remotely using any of a variety of wired and/or wireless communication protocols, including, for example: (1) a Digital Multiplexer (DMX) interface protocol; (2) a Wi-Fi protocol; (3) a Bluetooth protocol; (4) a Digital Addressable Lighting Interface (DALI) protocol; (5) the protocol of the purple bees; and/or (6) a combination of any one or more thereof. It should be noted, however, that the present disclosure is not so limited to these example communication protocols, as in a more general sense, and in accordance with some embodiments, the communication module 170 may utilize any suitable communication protocol, wired and/or wireless, standard and/or custom/proprietary, as desired for a given target application or end use. In some cases, communication module 170 may be configured to facilitate inter-luminaire communication between LCom-enabled luminaires 100. Additionally or alternatively, the communication module 170 may be configured to allow for receiving information from the network 300, such as lighting device location or estimated mobile computing device location information. As explained herein, the estimated mobile computing device location information associated with the computing device 200 may be used by the lighting device to calculate the lighting device location. Whether the estimated mobile computing device location is calculated in real-time at the luminaire or received from elsewhere, the estimated mobile computing device location information may then be used to generate LCom signals emitted by the luminaire 100 to communicate the luminaire location to the passing computing device 200. The communication module 170 may be configured to use any suitable wired and/or wireless transmission technology (e.g., radio frequency or RF transmission; infrared or IR light modulation; etc.) as desired for a given target application or end use. These transmission techniques may be implemented with a transceiver, such as a bluetooth beacon, integrated with the communication module 170 or connected to the communication module 170. Other suitable configurations for the communication module 170 will depend on a given application and will be apparent in light of this disclosure.

As previously described, according to some embodiments, a given LCom-enabled luminaire 100 may be configured to output light and/or light encoded with LCom data (e.g., LCom signals). Fig. 3 illustrates an example arbitrary LCom signal as may be transmitted by LCom-enabled luminaire 100, in accordance with embodiments of the present disclosure. As can be seen here, LCom-enabled luminaire 100 may be configured to operate at a given time interval (t)1-t0) A given LCom signal is transmitted internally. In some cases, a given LCom-enabled luminaire 100 may be configured to repeatedly output its one or more LCom signals.

FIG. 4 illustrates an example computing device 200 configured in accordance with embodiments of the disclosure. As discussed herein, according to some embodiments, the computing device 200 may be configured to: (1) detecting a light pulse of an LCom signal emitted by the transmitting LCom-enabled luminaire 100; and (2) decoding LCom data from the detected LCom signals. To this end, computing device 200 may be any of a wide variety of computing platforms, mobile or otherwise. For example, according to some embodiments, computing device 200 may be partially or wholly: (1) a laptop/notebook or mini notebook computer; (2) a tablet computer or cell phone tablet computer; (3) a mobile phone or smart phone; (4) personal Digital Assistants (PDAs); (5) a Portable Media Player (PMP); (6) a cellular handset; (7) a handheld gaming device; (8) a game platform; (9) a desktop computer; (10) a television set; (11) a computing device that is wearable or otherwise carried by the body, such as a smart watch, smart glasses, or smart helmet; and/or (12) a combination of any one or more thereof. Other suitable configurations for computing device 200 will depend on a given application and will be apparent in light of this disclosure.

As can be further seen from fig. 4, computing device 200 may include memory 210 and one or more processors 220. The memory 210 may be of any suitable type (e.g., RAM and/or ROM, or other suitable memory) and size, and in some cases may be implemented with volatile memory, non-volatile memory, or a combination thereof. A given processor 220 of computing device 200 may be configured as is typical, and in some embodiments may be configured to perform operations associated with, for example, computing device 200 and one or more modules thereof (e.g., within memory 210 or elsewhere). In some cases, memory 210 may be configured to be utilized, for example, for a processor workspace (e.g., for one or more processors 220) and/or to store media, programs, applications, and/or content on computing device 200 on a temporary or permanent basis. One or more modules stored in memory 210 (e.g., such as OS 212, UI 214, and/or one or more applications 216) may be accessed and executed, for example, by one or more processors 220 of computing device 200. Similar to the memory 130 of the lighting device 100, the memory 210 of the device 200 may include information that may be used to calculate or otherwise calculate an estimated mobile computing device location, as will be apparent in light of this disclosure.

Operating System (OS) 212 may be implemented with any suitable OS, mobile or other OS, such as, for example: (1) android OS from google, inc; (2) iOS from apple shares, inc (3) blackberry OS from blackberry llc; (4) the Microsoft Windows operating system (Windows Phone OS) from Microsoft corporation; (5) palm OS/Garnet OS from Palm, Inc.; (6) an open source OS, such as the saiban OS; and/or (7) a combination of any one or more thereof. As will be understood in light of this disclosure, OS 212 may be configured to help process LCom data, for example, during its flow through computing device 200. Other suitable configurations and capabilities for the OS 212 will depend on a given application and will be apparent in light of this disclosure. A User Interface (UI) module 214 is provided as is commonly done and generally allows for user interaction with the device 200 (e.g., graphical touch-based UIs such as on various smartphones and tablet computers). Any number of user interface schemes may be used.

According to some embodiments, memory 210 may have stored therein one or more applications 216 (or otherwise have access to one or more applications 216). In some cases, computing device 200 may be configured to receive input, e.g., via one or more applications 216 (e.g., such as an indoor navigation application) stored in memory 210. According to some embodiments, a given application or module 216 may be implemented in any suitable standard and/or custom/proprietary programming language, such as, for example: (1) c; (2) c + +; (3) objective C; (4) JAVAScript; and/or (5) any other suitable custom or proprietary instruction set. In a more general sense, the application 216 may be instructions encoded on any suitable non-transitory machine-readable medium that, when executed by the one or more processors 220, perform, in part or in whole, the functions of a given computing device 200. In an example embodiment, at least one of these applications 216 is a routine programmed or otherwise configured to provide the lighting device 100 with decoding parameters of the computing device 200 so that the lighting device 100 can determine an estimated location of the computing device 200. The computing device 200 may provide the estimated computing device location to the lighting device 100 directly via the communication module 130 including the transceiver or indirectly via the network 300 and the computer system/server 301. At least one application 216 may be further configured to receive LCom signals and decode the signals. Furthermore, the at least one application 216 may be further configured to also monitor any changes (relative to the orientation of the computing device 200) of the lighting device. Also, in some embodiments, at least one application 216 may be further configured to optionally attempt to adjust its own settings to optimize decoding in an effort to address situations where control of the lighting device 100 is unavailable for any reason.

As can be further seen from fig. 4, according to some embodiments, the computing device 200 may include a display 230. Display 230 may be any electronic visual display or other device configured to display or otherwise generate images (e.g., images, videos, text, and/or other displayable content) therein. In some cases, display 230 may be partially or fully integrated with computing device 200, while in some other cases, display 230 may be a separate component configured to communicate with computing device 200 using any suitable wired and/or wireless communication means. In some cases, display 230 may optionally be a touch screen display or other touch sensitive display. To this end, display 230 may utilize any of a variety of touch sensing technologies, such as, for example: (1) resistive touch sensing; (2) capacitive touch sensing; (3) surface Acoustic Wave (SAW) touch sensing; (4) infrared (IR) touch sensing; (5) optical imaging touch sensing; and/or (6) a combination of any one or more thereof. In a more general sense, and according to some embodiments, the selectable touch-sensitive display 230 may generally be configured to detect or otherwise sense direct and/or near contact from a user's finger, a stylus, or other suitable implement at a given location of the display 230. In some cases, optional touch-sensitive display 230 may be configured to convert such contact into an electronic signal that may be processed by computing device 200 (e.g., by one or more processors 220 of computing device 200) and manipulated or otherwise used to trigger a given UI action. In some cases, touch-sensitive display 230 may facilitate user interaction with computing device 200 via UI 214 presented by such display 230. Many suitable configurations for display 230 will be apparent in light of this disclosure.

According to some embodiments, computing device 200 may include a communication module 240, which communication module 240 may be a transceiver or other network interface circuitry configured for wired (e.g., universal serial bus or USB, ethernet, firewire, etc.) and/or wireless (e.g., Wi-Fi, bluetooth, etc.) communication using any suitable wired and/or wireless transmission technique (e.g., radio frequency or RF transmission; infrared or IR light modulation; etc.), as desired. According to some embodiments, the communication module 240 may be configured to communicate locally and/or remotely using any of a variety of wired and/or wireless communication protocols, including, for example: (1) a Digital Multiplexer (DMX) interface protocol; (2) a Wi-Fi protocol; (3) a Bluetooth protocol; (4) a Digital Addressable Lighting Interface (DALI) protocol; (5) the protocol of the purple bees; (6) a Near Field Communication (NFC) protocol; (7) a Local Area Network (LAN) based communication protocol; (8) a cellular-based communication protocol; (9) an internet-based communication protocol; (10) a satellite-based communication protocol; and/or (11) a combination of any one or more thereof. It should be noted, however, that the present disclosure is not so limited to these example communication protocols only, as in a more general sense, and in accordance with some embodiments, the communication module 240 may utilize any suitable communication protocol, wired and/or wireless, standard and/or custom/proprietary, as desired for a given target application or end use. In some cases, communication module 240 may be configured to communicate with one or more LCom-enabled luminaires 100 via network 300. Many suitable configurations for the communication module 240 will depend on a given application and will be apparent in light of this disclosure.

Further, as can be seen from fig. 4, according to some embodiments, the computing device 200 may include one or more image capture devices 250, such as a front image capture device 252 and/or a back image capture device 254. For the sake of consistency and ease of understanding of the present disclosure, front side image capture device 252 and back side image capture device 254 may be generally referred to hereinafter collectively as image capture device 250, except where referenced individually. A given image capture device 250 may be any device configured to capture digital images, such as a still camera (e.g., a camera configured to capture still photographs) or a video camera (e.g., a camera configured to capture moving images including a plurality of frames). In some cases, a given image capture device 250 may include typical components such as, for example, optical components, image sensors, and/or image/video encoders, and may be partially or fully integrated with computing device 200. A given image capture device 250 may be configured to operate using light in, for example, the visible spectrum and/or other portions of the electromagnetic spectrum, not limited to the Infrared (IR) spectrum, the Ultraviolet (UV) spectrum, and so forth. In some cases, a given image capture device 250 may be configured to continuously acquire imaging data. As described herein, a given image capture device 250 of computing device 200 may be configured to detect light and/or LCom signal output of a transmitting LCom-enabled luminaire 100, according to some embodiments. In some cases, a given image capture device 250 may be, for example, a camera such as those typically found in smartphones or other mobile computing devices. Many other suitable configurations for a given image capture device 250 (e.g., front image capture device 252; back image capture device 254) of computing device 200 will depend on a given application and will be apparent in light of this disclosure.

According to some embodiments, computing device 200 may include one or more sensors 260. In some embodiments, computing device 200 may optionally include a geomagnetic sensor 263. When geomagnetic sensor 263 is included, geomagnetic sensor 263 may be configured as is typically done, and in some example embodiments may be configured to determine an orientation and/or movement of host computing device 200 relative to a ground pole (e.g., magnetic north) or other desired heading, which may be customized as desired for a given target application or end use. In some embodiments, the computing device 200 may optionally include an ambient light sensor 265. When included, the ambient light sensor 265 may be configured as is typical, and in some example embodiments may be configured to detect and measure ambient light levels in the ambient environment of the host computing device 200. In some embodiments, computing device 200 may optionally include a gyroscope sensor 267. When included, the gyro sensor 267 may be configured as is typical, and in some example embodiments may be configured to determine an orientation (e.g., roll, pitch, and/or yaw) of the host computing device 200. In some embodiments, computing device 200 may optionally include an accelerometer 269. When accelerometer 269 is included, accelerometer 269 may be configured as is typical, and in some example embodiments may be configured to detect motion of host computing device 200. As a result of using these inertial sensors, the computing device 200 may provide highly accurate position information. The accuracy of this location information may result in improved navigation system operation, as the luminaire location determined using information from multiple data points from the inertial sensor will likely be more accurate than a luminaire location calculated using a single data point. In any case, a given sensor 260 of a given host computing device 200 may include mechanical and/or solid-state component portions as desired for a given target application or end use. Further, it should be noted that, according to some other embodiments, the present disclosure is not so limited to these example optional sensors 260, as additional and/or different sensors 260 may be provided as desired for a given target application or end use. Many sensor configurations for the device 200 will be apparent in light of this disclosure.

According to some embodiments, computing device 200 may include or otherwise be communicatively coupled with one or more controllers 270, 270. A given controller 270 may be configured to output one or more control signals to control any one or more of the various components/modules of computing device 200, and may do so, for example, based on wired and/or wireless inputs received from a given local source (e.g., such as onboard memory 210) and/or remote source (e.g., such as a control interface, optional network 300, etc.). According to some embodiments, a given controller 270 may host one or more control modules and may be programmed or otherwise configured to output one or more control signals, for example, to adjust the operation of a given portion of computing device 200. For example, in some cases, a given controller 270 may be configured to output control signals to control the operation of a given image capture device 250 and/or to output control signals to control the operation of one or more sensors 260. Many other configurations and control signal outputs for a given controller 270 of computing device 200 will depend on a given application and will be apparent in light of this disclosure.

As can be further seen from fig. 4, according to some embodiments, the computing device 200 may include an audio output device 280. According to some embodiments, audio output device 280 may be, for example, a speaker or any other device capable of producing sound from an audio data signal. Audio output device 280 may be configured to reproduce, for example, sound local to its host computing device 200 and/or sound received by its host computing device 200. In some cases, audio output device 280 may be partially or fully integrated with computing device 200, while in some other cases audio output device 280 may be a stand-alone component configured to communicate with computing device 200 using any suitable wired and/or wireless communication means, as desired. Many other suitable types and configurations for audio output device 280 will depend on a given application and will be apparent in light of this disclosure.

The network 300 may be any suitable public and/or private communication network. For example, in some cases, network 300 may be a private Local Area Network (LAN) operatively coupled to a Wide Area Network (WAN), such as the internet. In some cases, the network 300 may include one or more second generation (2G), third generation (3G), fourth generation (4G), and/or fifth generation (5G) mobile communication technologies. In some cases, network 300 may include a Wireless Local Area Network (WLAN) (e.g., Wi-Fi wireless data communication technology). In some cases, the network 300 may include bluetooth wireless data communication technology. In some cases, network 300 may include supporting infrastructure and/or functionality, such as servers and service providers (e.g., computer system 301), but such features are not necessary to effectuate communications via network 300. In some cases, computing device 200 may be configured to be communicatively coupled, for example, with network 300 and one or more LCom-enabled luminaires 100. In some cases, computing device 200 may be configured to receive data from network 300, e.g., network 300 is used to supplement LCom data that computing device 200 receives from a given LCom-enabled luminaire 100. In some cases, computing device 200 may be configured to receive data (e.g., such as known reference location information, luminaire locations, luminaire identifiers, and/or other data related to a given LCom-enabled luminaire 100) from network 300 that facilitates navigation via one or more LCom-enabled luminaires 100. Many configurations for network 300 will be apparent in light of this disclosure.

Fig. 5A illustrates an example LCom system including an LCom-enabled illumination device and a computing device, in accordance with embodiments of the present disclosure. As can be seen, this example scenario includes two luminaires 100, each luminaire 100 in communication with a computing device 200, the computing device 200 happens to be a smartphone running an LCom-based navigation application. The navigation application may be, for example, one of the applications 216 stored in the memory 210 and executed by the processor(s) 220. As can be further seen, the transmitted LCom signals include data 500, the data 500 generally including location information that may be used for navigation. For example, if a user is receiving light from a particular lighting device 100 having a known location, the navigation application "knows" where the user is and may continue to guide the user along the target path.

The location information 500 transmitted by the luminaire 100 may be presented in any number of forms. For example, in some embodiments, the luminaire location may be transmitted as a relative location (e.g., relative to another luminaire 100 or some other object having a known location) and/or as an absolute location (e.g., x-y coordinates of a grid-based map). In still other embodiments, the luminaire location may be transmitted as an environment ID, where the transmitted ID translates to a specific location on a given map of the environment being navigated. For example, in some such examples, the lighting device may use Dual Tone Multi Frequency (DTMF) coding, meaning that it transmits two unique frequencies in succession.

Fig. 5C shows how a DTMF-based ID system may work. As can be seen, the given environment 271 is the area being navigated and has multiple LCom-enabled luminaires 101. The environment 271 may be, for example, a supermarket or retail store, or a shopping center, or a parking garage, or a large office space, to name a few examples. The environment 271 is effectively divided into a grid of physical locations, each location being associated with at least one lighting device 100. As can be further seen, each lighting device 100 is associated with two unique frequencies that it can transmit on a periodic basis. Thus, the two unique frequencies may be used to correlate the location of the particular lighting device with a specific location within the environment. For example, if the user is receiving light from lighting device #1 (in this example embodiment, lighting device #1 transmits 697 Hz and 1209 Hz), the navigation application "knows" that the user is in the northwest corner of environment 271; similarly, if the user is receiving light from lighting device #12 (which lighting device #12 transmits 941 Hz and 1477 Hz in this example embodiment), the navigation application "knows" that the user is in the southeast corner of the environment; and so on. Thus, in one example scenario, assuming environment 271 is a store selling certain merchandise, each location may be associated with a particular product or range of products. Thus, according to some embodiments, the navigation application may direct the user to a given product location. Note that the entire frequency-based grid may be scaled to higher or lower frequencies and still operate as described herein to uniquely identify the location of individual luminaires 100.

Fig. 5B illustrates an example method for transmitting location information from an LCom-enabled luminaire in accordance with an embodiment of the present disclosure. As can be seen, the method includes emitting an optical output by at least one solid state light source of the lighting device in block 501. The method further includes modulating the light output to emit an LCom signal in block 503, the LCom signal including data containing location information indicative of a physical location of the at least one light source. According to some embodiments, the position information may directly indicate the position of the specific lighting device by means of relative or absolute position information, as explained previously. In other embodiments, the location information may indirectly indicate the location of the particular lighting device by means of an environment ID that translates to a specific location on a given map of the environment being navigated. Many other embodiments and variations of using a lighting device with a known location within a given area to be navigated will be apparent in light of this disclosure.

Fig. 5D illustrates an example scenario in which computing device 200 receives an LCom signal from lighting device 100 and is configured to output navigation instructions to a user through visual feedback, in accordance with an embodiment of the present disclosure. Note how the actual lighting device 100 in the physical space being navigated is imaged by the camera 252 and the resulting image of the lighting device 100 is provided on the display 230 of the device 200. Based on receiving the LCom signal from the luminaire 100 (which indicates the location of the luminaire 100), the navigation application proceeds to guide the user with visual cues (arrows in this example case). Each subsequent luminaire 100 similarly imaged and processed by device 200 allows navigational guidance to continue as the user progresses along the pathway until the user reaches the luminaire associated with the user's intended destination.

Fig. 6A and 6B illustrate a user holding the computing device 200 in two different orientations. Computing device 200 in this example is a smartphone, but may be any other suitable computing device. As can be seen, the device 200 includes a front image capture device 252, the front image capture device 252 is currently imaging the illumination device 100 described above, and the resulting image is shown on the display 230. As can be further seen, two illumination devices are being imaged. In fig. 6A, a user holds the computing device 200 with the illumination device 100 perpendicular to the raster lines (and thus parallel to the raster direction). For this case, the imaged luminaire 100 spans the maximum number of grating lines. For example, assume that the camera frame has 750 raster lines perpendicular to the raster direction. Thus, an illumination device that images with device 200 in this orientation will span a maximum of a relatively large number of raster lines (e.g., 350 raster lines or more). However, in the example of fig. 6B, the illumination device 100 is parallel to the grating lines (and thus perpendicular to the grating direction). Thus, each imaged illuminator 100 effectively spans only a fraction of a raster line, or fewer raster lines, relative to when the device 200 is in the opposite orientation shown in fig. 6A. While in some cases, the user may be directed to orient device 100 more like that shown in fig. 6A (to improve the ability of device 200 to receive and process LCom messages from luminaire 100), other embodiments may address this rasterization issue by a variable baud rate, which has the advantage of not requiring any effort/manual intervention by the user of device 200.

Determining location of newly installed LCom luminaires

As described above, some embodiments of the present disclosure enable programming a newly installed lighting device with its location using location information from passing mobile computing devices. This allows a newly installed lighting device to determine its position without manual programming.

Fig. 7 schematically illustrates an environment in which embodiments of the present disclosure are implemented such that a newly installed luminaire uses location information from passing mobile computing devices to identify its location within an array of LCom-enabled luminaires. As can be seen, the environment is provided in the context of a navigation system 700, the navigation system 700 including a previously installed LCom-enabled luminaires 708 a-708 h (collectively 708), a newly installed LCom-enabled luminaire 712, and an array 706 of mobile computing devices 716. The navigation system 700 is disposed within a structure 704, which structure 704 may generally be any location where navigation may be helpful to visitors.

As shown in dashed lines, the mobile computing device 716 enters the structure 704. Upon entering the structure 704, the mobile computing device 716 receives the known reference location broadcast from the lighting device 708 d. In some embodiments described herein, the illumination device 708d is designated as a "source" or "source illumination device". The designation of the lighting device 708d as a source is for convenience because the lighting device is near the entrance to the structure 704 and thus may be the first lighting device to communicate, even if only briefly, with many, if not all, mobile computing devices 716 that enter the structure 704. For reasons described in more detail below, one or more additional lighting devices of the array 706 may also be used as one or more corresponding reference locations. As will be understood in light of this disclosure, as the mobile computing device 716 moves within the structure 704, the mobile computing device 716 may calculate a subsequent location of the mobile computing device 716 using the known reference location broadcast to the mobile computing device 716 from the lighting device 708 d.

After receiving the known reference location from the source lighting device 708d, the mobile computing device 716 may measure the distance and direction of travel (shown in dashed lines in fig. 7) using the sensors of the mobile computing device. Accordingly, movement of the mobile computing device 716 may be tracked between the known reference location of the source lighting device 708d and the location of the mobile computing device 716 proximate to the newly installed lighting device 712. The mobile computing device 716 may then transmit the location information to the newly installed lighting device 712. In an example embodiment, the location information provided by the mobile computing device 716 to the lighting device 712 includes: (1) a known reference location received from the source luminaire 708 d; and (2) the distance and direction of travel of the mobile computing device 716 from the source lighting device 708d to a location proximate to the newly installed lighting device 712. Using this information, the newly installed lighting device 712 is programmed or otherwise configured to estimate its location within the array 706 and/or within the structure 704, according to one embodiment.

In some cases, the newly installed lighting device 712 may be an existing lighting device that is relocated within the array 706, as previously described. However, the existing lighting device does not have to be relocated to the newly installed lighting device 712. For example, when an existing lighting device is repaired and reinstalled at the same location, the repair may result in loss of lighting device location data. Without this data, the lighting device, although not repositioned within the array 706, may not be able to broadcast its location. Thus, an existing lighting device that has been repaired and reinstalled at the same location may also be a newly installed lighting device 712, and programmed with lighting device locations as described herein. In other cases, the newly installed lighting device 712 may be a lighting device that was first installed in the array 706, such as a new lighting device. New lighting devices may be installed for a number of reasons, for example, when lighting devices are added to increase the size of the array 706, or when existing lighting devices in the array 706 are replaced. To this end, note that the newly installed lighting device 712 may be any lighting device that was not programmed with a lighting device location prior to installation into the array 706.

In the example shown in fig. 7, structure 704 has four sides, two openings that allow access to and egress from the structure, but this relatively simple depiction is merely for ease of explanation. In some cases, the structure 704 may be an entire building or group of buildings, examples of which include, but are not limited to, office buildings, retail stores, shopping centers, warehouses, airports, and manufacturing facilities. In some embodiments, structure 704 may not be a permanent structure. For example, a temporary build at a job site may have a navigation system 700 for assisting employees in navigating the job site. As will be described in more detail below, the type of location information transmitted to and from LCom-enabled luminaires 708 a-708 h and 712 may depend on the type of structure 704, and more particularly, whether structure 704 is stationary or moving.

The array 706 of lighting devices 708 may be two or more lighting devices positioned within the structure 704. As indicated above, the array 706 is used to assist a mobile computing device user in navigating the structure 704. The lighting devices 708 and 712 may be configured in various forms. For example, fig. 7 shows an array 706 of lighting devices 708 and 712 configured in a grid. In other embodiments of the present disclosure, the array 706 may be comprised of illumination devices 708 and 712 configured in a circular pattern or along an arc. In still other embodiments, the array 706 may be comprised of lighting devices 708 and 712 arranged along a path, aisle, or walkway. In a more general sense, the array 706 may be configured in any regular or irregular pattern, so long as at least one of the lighting devices 708 may be used to provide a known reference location to the passing mobile device 716.

Fig. 8 illustrates an example method 800 for determining a location of a newly installed lighting device 712 within an array 706 of a navigation system according to an embodiment of this disclosure. As can be seen, the method 800 includes providing a known reference location to the mobile computing device in block 804. As described above, the reference location may be provided from the source luminaire 708d using any convenient transmission protocol (e.g., RF, VLC). In one embodiment, the known reference location may be information identifying a particular location relative to the structure 704, relative to the array 706, or some other frame of reference. The known reference location may be provided in the form of a set of coordinates associated with a point, area, or object within or outside of the array 706, such as the source illumination device 708 d. The known reference location may be located at a convenient location within the structure 704 and/or array 706, such as at a point where the mobile computing device 716 may pass, for example at an entryway or along a walkway in the structure 704.

In further embodiments, there may be more than one known reference location (i.e., more than one source luminaire) for the array 704. Having multiple known reference locations may be beneficial for improving the accuracy of the location information transmitted to the newly installed lighting device 712. As the mobile computing device 716 moves further away from the source lighting device (e.g., 708 d), the accuracy of the location information may decrease. This is because each measurement of the sensor of the mobile computing device 716 may be susceptible to some imprecise or inaccurate element (e.g., due to measurement errors or calibration errors). As more measurements are taken over greater travel distances, the cumulative error may increase. Thus, having more than one source luminaire array 706 may provide a more accurate estimate of the location of the mobile computing device 716, as the sensors of the mobile computing device 716 may need to take fewer measurements between the location of a given source luminaire 708d and a newly installed luminaire 712, which in turn reduces the possible cumulative error in multiple measurements. The source lighting devices may also be strategically positioned at entrances, exits, or traffic junctions of the structures 704 in the array 706 (e.g., at an intersection of multiple aisles in a store) where there are high numbers of passing mobile computing device users.

The method 800 further includes receiving location information from the mobile computing device at the newly installed lighting device in block 808. As the mobile computing device 716 is moved around within the structure 704 (presumably by the owner of the mobile computing device 716), the mobile computing device 716 may calculate location information based on the known reference location provided in block 804 and supplemental location information provided by sensors of the mobile computing device 716. Receiving location information from the mobile computing device 716 may be initiated in any of several ways. For example, in one example embodiment, the newly installed lighting device 712 may broadcast a request for location information to which the mobile computing device 716 responds. Alternatively, in another example, the newly installed lighting device 712 may broadcast a lighting device location that is incorrect or inconsistent with the known reference location provided in block 804 (e.g., using different format coordinates). Or the mobile computing device 716 may identify a lighting device that does not transmit its location at all, and the mobile computing device 716 may attempt to provide location information to help the lighting device determine its location. The mobile computing device 716 can identify that the newly installed lighting device has not broadcast its location, for example, by receiving a VLC signal containing a lighting device identifier without a lighting device location from the newly installed lighting device. In other embodiments, the newly installed lighting device 712 may send an error message using VLC signals to instruct the mobile computing device 716 user to transmit location information to the newly installed lighting device 712. The location information may be received by the communication module of the newly installed lighting device 712 via a wireless network, such as a Wi-Fi or bluetooth network connection. In some embodiments, the location information of the mobile computing device 716 may be stored in the memory of the newly installed lighting device 712.

As previously described, the location information received by the newly installed lighting device in block 808 may be determined, for example, by using the known reference location provided in block 804 and the sensor-based supplemental location data of the mobile computing device 716. For example, the location information may be determined by the mobile computing device 716 using a known reference location (received in block 804, which may be, for example, in the form of coordinates) and an estimated displacement of the mobile computing device 716 from the known reference location. Thus, in such a case, the mobile computing device 716 may process the original location information into a known location (pre-computed location information) and provide the pre-computed location information to the newly installed lighting device 712. In still other embodiments, the mobile computing device 716 may send raw location information to the newly installed lighting device 712, such as a recently received known reference location and sensor-based displacement data of the mobile computing device 716 relative to the known reference location. The newly installed lighting device 712 may then calculate location information based on the received original location information.

The method 800 further includes determining, at the newly installed lighting device, a lighting device location of the newly installed lighting device 712 based on the location information received from the mobile computing device 716 in block 812. Upon receiving location information from the mobile computing device 716 in block 808, the newly installed lighting device 712 may use the location information to determine its location in the array 706. If the location information is received in its original form, the newly installed lighting device 712 may determine its location using the processor(s) and other associated infrastructure located within the newly installed lighting device 712. On the other hand, if the location information is pre-computed at the mobile computing device 716, the newly installed lighting device 712 may determine its location by simply reading or otherwise receiving the provided pre-computed location information. Once the newly installed lighting device 712 has determined or otherwise obtained its location, the lighting device location value may be stored in the lighting device memory and may remain constant until the lighting device is manually reset or moved to another location.

When an existing lighting device is moved to a new location, the existing lighting device is considered as a newly installed lighting device. In some embodiments, the installer may manually reset the relocated luminaire to trigger the luminaire to broadcast a request at the new luminaire location. In still other embodiments, the relocated lighting device may detect that it has been moved based on receiving estimated mobile computing device location information that is inconsistent with the lighting device location currently stored within the relocated lighting device. As a result, the relocated lighting device may stop broadcasting its location and transition to broadcasting a request for a new lighting device location or simply use the received updated location information. Thus, the relocated lighting device may be programmed or otherwise configured to evaluate location information input from the mobile computing device and automatically update the lighting device location stored in the memory of the lighting device. Once the luminaire location is updated, the relocated luminaire may begin broadcasting the updated luminaire location.

As previously described, various embodiments of the present disclosure enable: based on location information from passing mobile computing devices via the server, the newly installed lighting devices are programmed with their locations. This allows a newly installed lighting device not only to receive its location without manual programming and without communication from surrounding (i.e., line of sight) lighting devices, but also enables a lighting device that is less complex to install to reduce system costs.

Fig. 9 illustrates a system 900 in accordance with an embodiment of the present disclosure, in which a newly installed luminaire is programmed with its location in an LCom-enabled luminaire array based on location information from passing mobile computing devices, which is processed by a server and then communicated to the luminaire. Navigation system 900 includes LCom-enabled lighting device array 706, mobile computing device 716, and server 904.

As can be seen, the server 904 communicates with the mobile computing devices 716 and the array 706 via one or more communication networks 920 (e.g., such as a wireless local area network operatively coupled to the internet, or some other communication network that allows communication between the various components of the system 900; any standard communication network technology may be used, as will be understood in light of this disclosure). The server 904 may be implemented using standard server technology and typically includes a computer and a computer program executable thereon that manages access to centralized resources or services in a network. The server 904 may also provide files and services used by at least one of the lighting devices of the array 706 and the mobile computing device 716.

Upon recognizing that a newly installed lighting device is broadcasting its lighting device identifier instead of its location, the mobile computing device 716 may be placed in communication with the server 904 (via the network 920) to provide the location of the mobile computing device 716 as the lighting device location to the newly installed lighting device. In response, the server 904 may receive the location data and the lighting device identifier from the mobile computing device 716. Using this information, the server 904 identifies and determines the location of the newly installed lighting device. The server 904 may then transmit the determined location to the newly installed lighting device via the network 920. Note that the network 920 used by mobile device 716 to communicate with server 904 may be different than the network 920 used by array 706 to communicate with server 904, although they need not be. In one embodiment, network 920 includes a local wireless network operatively connected to the Internet. In one such case, both the mobile device 716 and the array 706 are configured to be communicatively coupled with a local wireless network and can access the internet accordingly. The newly installed lighting device may then broadcast its location using information provided by the server 904.

The server 904 can further include or otherwise be operatively coupled to a transceiver 908, the transceiver 908 receiving and transmitting communication signals to facilitate information exchange between the server 904 and other devices of the navigation system 900. For example, the transceiver 908 may be positioned within the server 904 or otherwise operatively coupled with the server 904 and configured with standard techniques to facilitate wired and/or wireless communication with one or more other transceivers positioned within and/or external to the array 706. In some embodiments, the transceiver 908 is a modem or other suitable circuitry that allows for the transmission and reception of data from a network. The communication signal may contain various information such as protocol information, navigation system access requests and status information, and luminaire location. Once the mobile computing device 716 has estimated its location using the supplemental location data generated by internal sensors (e.g., accelerometers and gyroscopes), the mobile computing device may transmit its location to the server 904. The server 904 may receive the information via a network 920. In the example embodiment shown, the transceiver 908 may then transmit this information to one or more processors 912 of the server 904, which processors 912 are then programmed or otherwise configured to compile and distribute the instructions and data to the lighting devices within the array 706.

For example, in some embodiments, the one or more processors 912 are configured to process the received location information and provide the processed location information to the newly installed lighting device. Data created and/or managed by the processor 912 can be stored in the memory 916 to support various operations for the server 904. Memory 916 may be any physical component capable of non-transitory data storage. Regardless of whether the information is stored in the memory 916 of the server 904, the server 904 may transmit the information to one or more lighting devices of the array 706 via the network 920.

Fig. 10 is a flowchart illustrating an example method 1000 for determining a location of a newly installed LCom-enabled luminaire within an array of luminaires configured to effectuate two-way communication with a mobile computing device 716 indirectly via a server 904 in accordance with an embodiment of the present disclosure. As can be seen, the method 1000 includes providing a known reference location to the mobile computing device 716 in block 1004. Unlike the embodiment shown in fig. 8, where the known reference location is provided directly to the mobile device 716 from the lighting device via a local communication channel (e.g., an LCom signal received via a camera of the device 716), in this example embodiment, the known reference location may be transmitted or communicated to the mobile computing device 716 via the server 904 using the network 920. However, as will be understood in light of this disclosure, the known reference location may also be provided directly to the mobile device 716 from the lighting device via a local communication channel. To this end, while fig. 10 is intended to illustrate the functionality of the server 904, other embodiments may be configured such that some of the described functionality is carried out by the mobile device 716, or the lighting device, or the server 904, or some combination of these components.

The method 1000 further includes receiving, at the server 904, a lighting device location request from the mobile computing device 716 in block 1008. In one example use case, where the mobile computing device 716 comes into view of a newly installed lighting device, such as lighting device 712 of fig. 7, the mobile computing device 716 may receive VLC broadcast signals that do not include lighting device locations. In some embodiments, the newly installed lighting device may send an error message via VLC signal, which may instruct the mobile computing device 716 to transmit a lighting device location request to the server 904. The server address may also be included in the newly installed lighting device VLC broadcast signal. In other embodiments, the server address may already be known to mobile computing device 716 (e.g., where mobile computing device 716 registers with server 904 and makes the server address available to mobile computing device 716 as part of a registration process for an indoor navigation service available by server 904). Using the server address, mobile computing device 716 may transmit a lighting device location request to server 904 via network 920. In an example case, the lighting device location request may result in subsequent communications between the server 904 and the mobile computing device 716 to provide additional information to the server 904. To reduce the amount of communication between the mobile computing device and the server, the lighting device location request may include additional information, such as location information of the mobile computing device 716 and lighting device identifiers, for use by the server 904 to calculate the absolute or relative location of the newly installed lighting device.

The method 1000 further includes identifying newly installed lighting devices that are proximate to the estimated location of the mobile computing device 716 in block 1012. Upon receiving the location information from the mobile computing device 716, the server 904 may use the information stored in the server's memory to identify the newly installed lighting device. The information stored on the server 904 may include, for example, a look-up table, a list of GPS coordinates associated with the x-y coordinates of a grid-based map, a building map/floor plan, and/or comments from a navigation array installer or administrator. By using this information, a number of methods can be used to identify the newly installed lighting device. For example, one method may include the server 904 being programmed or otherwise configured to cross-reference the lighting device identifier for the newly installed lighting device with a list of all lighting devices installed in the array. The list of lighting devices may include lighting device identifiers, locations, installation dates, and other operational information. Other methods may use coordinate information of the mobile computing device 716 and a look-up table with a list of all lighting devices of the array indexed by the coordinates. The server 904 uses the coordinates of the estimated location from the mobile computing device 716 to find a corresponding list of lighting devices having the same location (or closest match, as the case may be).

The method 1000 further includes determining an actual lighting device location of the newly installed lighting device using the estimated mobile computing device location in block 1016. The server may determine the luminaire location for the newly installed luminaire using various methods. One method may include the server comparing location information (e.g., a set of coordinates) from the mobile computing device to values from a look-up table. If the information is consistent (i.e., within a certain tolerance range), the server may determine the location of the newly installed lighting device as a value from the lookup table. To this end, it is noted that the determination in block 1016 may effectively be part of the identification in block 1012. The server 904 may then download the value from a look-up table or otherwise program the value into the newly installed lighting device so that the lighting device may then begin broadcasting the lighting device location. In this example use case, the lighting device location information may be stored in memory 916 or a register of server 904. The information may be accessed by and/or transmitted to the newly installed lighting device via a wired and/or wireless network. The newly installed lighting device may store information in a memory of the lighting device for generating VLC signals.

However, it is not necessary in all cases to store the lighting device location information in the newly installed lighting device. In some cases, once the server 904 has determined the lighting device location, the server 904 may transmit this information in real-time to one or more drivers of the lighting device. In response, the newly installed lighting device may generate a VLC signal using the stream data (e.g., lighting device location information) from the server 904. In this case, the lighting apparatus location information may not be stored in the newly installed lighting apparatus.

In some cases, the server 904 may choose to program the newly installed lighting device with location information from the mobile computing device 716. In this example, the location information from the mobile computing device 716 may be more accurate than the values from the lookup table. In other embodiments, the server 904 may also use the location information of one or more mobile computing devices to update values in the lookup table to improve the accuracy of the information in the lookup table.

If the lighting device location stored on the server 904 is inconsistent with the location information of the mobile computing device 716, the server 904 may determine that the information stored on the server 904 is no longer valid. Differences between the information stored on the server 904 and the information provided by the mobile computing device 716 may occur, for example, when the newly installed lighting device is an existing lighting device that has been moved to a new location. The newly installed lighting device may maintain identification indicia and/or information associated with its previous location. When the server 904 uses this information, the server 904 may invoke a lighting device location associated with the previous location of the lighting device. Once the inconsistency is identified, the server 904 may update the lighting device locations (e.g., look-up table values) stored on the server 904 according to the location information received from the mobile computing device 716.

When the newly installed lighting device is a replacement lighting device or an additional lighting device to array 706, server 904 may not contain any information about the newly installed lighting device. In this example, the server 904 may receive lighting device identification information that does not correspond to the information stored on the server 904. In response, the server 904 may use the lighting device identification information received from the mobile computing device 716 to create new lighting device information (e.g., a new entry in a lookup table) on the server 904. The lighting device information may then be associated with location information from the mobile computing device 716 to create a lighting device location. This lighting device location can then be used to program the newly installed lighting device. In further embodiments, the server 904 may also use location information from several mobile computing devices to evaluate information stored on the server 904 as part of a continuous learning process. The continuous learning process may be a series of actions or steps performed by the server 904 to verify the accuracy of the lighting device locations stored on the server.

Improving accuracy of lighting device position

Once the location of the newly installed lighting device has been determined, the lighting device location may be further refined to more accurately determine the location of the newly installed lighting device. Refining the lighting device location may be done by the lighting device itself or a server associated with the array or even the mobile computing device. In order to facilitate understanding of the present disclosure and readability of the present disclosure, the following paragraphs will describe embodiments in which the newly installed lighting device improves its positional accuracy. However, in other cases, the server may perform actions for improving the accuracy of the determined location of the newly installed lighting device. In still other example embodiments, various actions may be performed on multiple components, such as any combination of servers, mobile computing devices, and lighting devices.

The use of multiple inputs improves the accuracy of the lighting device location, enabling the navigation system to provide accurate lighting device location information to the mobile computing device. In response to receiving the accurate lighting device location, the mobile computing device may more effectively navigate the structure associated with the array (such as explained with respect to the example embodiment shown in fig. 5D). A luminaire that continuously refines its luminaire position is generally referred to herein as a "continuously learning luminaire". Continuous learning of the lighting device may use additional mobile computing device location information to more accurately determine the lighting device location using statistical analysis. The learning process may begin when the lighting device receives several position estimates from a mobile computing device that passes through the field of view of the newly installed lighting device. One method for assessing the accuracy of the luminaire location may include using the standard deviation of the distance between data points from the geometric mean of the population. The method may further comprise calculating a center of all received position estimates. An alternative approach may include clustering the received location estimates based on expected ranges and/or weighting criteria to reject untrusted location information. Other forms of analysis may include, for example, determining a running average. While refining the lighting device location based on the received data may improve the accuracy of the navigation system, other techniques may also be implemented to ensure that the system operates as intended.

According to some embodiments, for example, the confidence level may be used to determine whether to broadcast the lighting device locations to passing mobile computing devices. The confidence level is a value used to track received location information from passing mobile computing devices. The confidence level may be adjusted higher or lower in response to whether the received location information is within a desired tolerance of the current luminaire location value. The lighting device may not begin broadcasting its location until the confidence level is equal to or above the threshold. The threshold value may be any particular value or range of values sufficient to ensure proper operation of the navigation system. For example, the threshold may be set such that the lighting device broadcasts its location when at least 70% of the received location information is within one foot of the determined location of the lighting device. In some cases, a higher threshold may be desirable, for example, when the lighting device directs people away from the structure during an emergency. In other examples, the desired threshold may be lower, such as when the lighting device directs a customer to a particular shopping display or product. Regardless of what threshold is used by the lighting device, the confidence level will have an initial value when the lighting device is deployed.

The confidence level may have the following initial values: the initial value prevents a newly installed luminaire from broadcasting an inaccurate luminaire position. The lighting device may initially have a default confidence level of zero. In this case, the lighting device does not broadcast the lighting device location. As a result, a large amount of received location data may be required before the lighting device can start broadcasting its location. However, in other cases, the confidence level may be set above or below a threshold. For example, if the lighting device is not programmed with a lighting device location, the confidence level may have an initial value below the threshold but above zero. This confidence level may be desirable when the need to have an operating system is more important than the location of the lighting device with high accuracy, for example when the lighting device is used to direct a customer to a display. In this case, the time required to start broadcasting its position will be reduced, since less data will be required for the confidence level to achieve the threshold. However, in some embodiments, the lighting device may have an initial confidence level that is equal to or above a threshold. One example situation would be: when programming a lighting device with a lighting device location (e.g., source lighting device). In this example case, the lighting device may broadcast its location immediately after installation. Regardless of the initial value of the confidence level, the confidence level is compared to the location information received from the mobile computing device to determine a direction for adjusting the confidence level.

The direction for adjusting the confidence level may be higher or lower. The confidence level may be adjusted higher if the location information is within specified tolerance limits (e.g., one foot from the luminaire location). Conversely, if the location information is not within the tolerance limits, the confidence level may remain the same or decrease. The process may be repeated for location information received from other mobile computing devices. In other embodiments, the new position information data point may be fed into a first-in-first-out (FIFO) buffer. Early inaccurate data may first leave the FIFO buffer and then use the latest data to recalculate the confidence level. Regardless of the method used to adjust the confidence level, the threshold is implemented when a sufficient amount of location information data has been found to be within tolerance limits. In response to achieving the threshold, the newly installed lighting device may then begin broadcasting its location information.

Adjusting the confidence level may also be based on the accuracy of the location information received from the mobile computing device. In one embodiment, the system may adjust the confidence level to be higher or lower in standard increments (e.g., 5 units). This method of adjusting the confidence level allows for ease of implementation and simplicity of design. However, with this approach, each input of location information carries the same contribution to the confidence level value. That is, no weight is applied to the input based on the expected accuracy of the provided location information. Thus, location information received from computing devices with more recent technologies will have the same weight as location information received from mobile computing devices that have been used for several years and include less recent technologies. To address these concerns, the confidence level may be adjusted based on the accuracy or expected accuracy of the received location information. In this case, the lighting device may evaluate the location information received from the mobile computing device using various factors, such as the mobile computing device identification number and the mobile computing device confidence level for the received location information. Thus, if the lighting device receives location information from the current year device, the lighting device may give more weight to the location information when adjusting the confidence level (e.g., adjusting 10 units instead of 5 units). Similarly, if the mobile computing device provides location information to the quality indicator, the lighting device may take into account the quality of the location information when adjusting the confidence level. Regardless of the amount by which the confidence level is adjusted, the threshold and/or confidence level may need to be evaluated over time to ensure proper operation of the navigation system.

When the lighting devices are initially deployed in the array, the appropriate threshold may not be known. In this case, the lighting device may be installed using a default threshold. However, over time, the lighting device may be moved to a different location that requires a different threshold (e.g., moving the lighting device from the display area to the emergency access island). In some cases, the environment in which the lighting device is deployed may change, for example when a store is remodeled, resulting in a different plan view. For these situations, it may be desirable to adjust the threshold based on changes to the surrounding environment. In other cases, the confidence level may be re-evaluated based on the received data. This is the case where the confidence level does not achieve a threshold despite having a large amount of location data over a long period of operation. The lighting device may evaluate the confidence level by counting the number of location estimates within a specified radius (e.g., 10 meters) around the location data center. The specified radius defines an area where the location data is likely to provide a confidence level equal to or above a threshold. If the location data indicates that the confidence level should be equal to or above the threshold, the lighting device is receiving a large amount of erroneous or irrelevant location data. Based on the analysis, the confidence level may be raised to achieve the threshold. Regardless of how the threshold and confidence level are evaluated, once the threshold has been achieved, the lighting device may lock/freeze its lighting device position.

In case the threshold is achieved, the newly installed lighting device may stop the learning process. In response, the lighting device may begin broadcasting consistent or constant location information. One method for providing a constant lighting device position is to lock or freeze the lighting device position of a newly installed lighting device. Locking or freezing of the position information may occur when the lighting device determines a steady state value for its position. The steady state value may be determined when, for example, the confidence level no longer significantly improves or changes over a period of time (e.g., the FIFO buffer is full and the standard deviation is no longer significantly reduced). While broadcasting consistent or constant lighting device location values provides expected results in navigation, this approach may not provide the most accurate information to the mobile computing device when compared to other embodiments that continuously evaluate lighting device locations.

In practice, one may apply confidence levels to one or more lighting devices installed in the navigational array using continuous learning techniques. When a navigation array is deployed with a combination of source lighting devices and continuous learning lighting devices, a user of a mobile computing device may initially rely on one or more source lighting devices to navigate through a structure or building. Over time, the continuously learned luminaires will learn their own location as described earlier. A continuously learning lighting device positioned near the source lighting device may be likely to achieve an acceptable level of confidence faster than other continuously learning lighting devices positioned further away from the source lighting device. The difference in time to achieve an acceptable level of confidence may be caused by inaccuracies in the estimated mobile computing device location data received by the remote continuous learning lighting device. Over time, the average confidence level of the entire navigation array system may improve until eventually all lighting devices may be utilized for location services. The lighting device with the available position information may propagate like a wave from the source lighting device to the last successive learning lighting device of the navigation array.

Specific application

Other embodiments of the navigation array may include using the structure to provide environment specific location information and presence detection.

An alternative embodiment of an array system may be used for a lighting device to provide environment specific location information to a mobile computing device. The environment specific information may include, for example, the presence of a doorway or hallway starting point. In addition to the estimated mobile device location, the lighting device and/or the server may receive inertial information of the mobile computing device. This inertial information may be used to determine whether the user is traveling through a doorway or at the beginning of a hallway. For example, a lighting device positioned in front of a doorway may receive inertial information from a mobile computing device that instructs the user to stop or slow down before entering the doorway within the lighting device's field of view. Based on this information, the lighting device and/or the server may conclude that the lighting device is positioned at the doorway. The luminaire may then transmit the luminaire location, which also identifies that the doorway may be adjacent to the luminaire location.

In another embodiment of the array system, the lighting device may also identify the presence of a particular mobile computing device within the structure. The array may comprise lighting devices positioned near all of the inlets and outlets of the structure. When a person enters the structure, the mobile computing device may transmit unique information associated with the mobile computing device, such as a device model number, serial number, and/or phone number. This information may be transmitted to lighting devices within the field of view of the mobile computing device or to a remote server through a local wireless radio connection, e.g., Wi-Fi or bluetooth, that allows access to a larger network, such as the internet or other wide area network. The navigation array system may identify whether a user of the mobile computing device has entered or left a particular room based on unique information transmitted by the mobile computing device. Upon receiving the identification data, the navigation system may record the user in a database located in the server. When the mobile computing device exits the room, the navigation system may log the user off of the database. In other embodiments, the process may be applied to various floors of a building, the entire building itself, or a group of buildings, such as a medical complex.

Further consider

Many embodiments will be apparent in light of this disclosure. One example embodiment provides a method of programming a lighting device location into a lighting device, the method comprising: providing a reference location of a source lighting device to a mobile computing device; receiving location information from the mobile computing device, wherein the location information is based on a reference location and an estimated displacement of the mobile computing device from the reference location; and determining a lighting device location of the lighting device using the location information from the mobile computing device. In some embodiments, the luminaire may be an LCom-enabled luminaire configured to receive location information from the mobile computing device and determine a luminaire location, wherein the LCom-enabled luminaire is capable of transmitting visible light communication signals generated using visible light communication waveforms. In some embodiments, the server may be configured to provide a reference location to the mobile computing device, receive location information from the mobile computing device, and determine a lighting device location of the lighting device. Some embodiments may further include broadcasting the lighting device locations to the mobile computing device to provide navigational assistance to a user of the mobile computing device. In some embodiments, the lighting device location is broadcast when the confidence level is equal to or greater than a threshold, wherein the confidence level is adjusted based on a comparison of the received location information from the at least one mobile computing device to the lighting device location. In some embodiments, the reference location may comprise at least one of an identifier of the source lighting device and a location of the source lighting device within the array of lighting devices. In some embodiments, the estimated displacement of the mobile computing device may be a distance between the reference location and a current location of the mobile computing device. Some embodiments may further include receiving at least one additional location information from the at least one additional mobile computing device, and statistically analyzing both the lighting device location and the at least one additional location information from the at least one additional mobile computing device. Some embodiments may further include re-determining the lighting device location of the lighting device based on at least one additional location information from the at least one additional mobile computing device.

Another example embodiment provides a non-transitory computer program product comprising a plurality of instructions encoded non-transitory thereon that when executed by one or more processors cause a process to be carried out. The computer program product may include one or more computer-readable media, such as, for example, a hard disk drive, an optical disk, a memory stick, a server, cache memory, register memory, Random Access Memory (RAM), Read Only Memory (ROM), flash memory, or any suitable non-transitory memory encoded with instructions that may be executed by one or more processors, or a plurality or combination of such memories. The process comprises the following steps: providing a reference location of a first lighting device to a mobile computing device; receiving location information from the mobile computing device, wherein the location information is based on a reference location and an estimated displacement of the mobile computing device from the reference location; and determining a lighting device location of the second lighting device using the location information from the mobile computing device. In some embodiments, the reference location may comprise at least one of an identifier of a first lighting device within the array of lighting devices and a location of the first lighting device. Some embodiments may further include identifying a second lighting device proximate to the estimated displacement of the mobile computing device. In some embodiments, the lighting device location of the second lighting device may be determined using a lookup table including location and identifier information for a plurality of lighting devices and at least one of an identifier of the second lighting device and an estimated displacement of the mobile computing device. In some embodiments, the lookup table may be stored on a server communicatively coupled to the first lighting device, the second lighting device, and the mobile computing device.

Another example embodiment provides a system for programming lighting device locations into a lighting device, comprising: an array of lighting devices comprising a first lighting device programmed with a location, wherein the location is a reference location transmitted to the mobile computing device; and a second lighting device, the second lighting device not programmed with a lighting device location; a transceiver configured to receive location information from a mobile computing device; and a processor configured to determine a lighting device location of the second lighting device using the received location information from the mobile computing device, and provide the determined lighting device location to the second lighting device via the transceiver. In some embodiments, the location information received from the mobile computing device may include a reference location and an estimated displacement of the mobile computing device from the first lighting device. In some embodiments, the processor may be disposed within the second lighting device. In some embodiments, the processor may be disposed within a server in communication with the array of lighting devices via a network. In some embodiments, the server may communicate with the second lighting device such that the second lighting device indirectly receives the location information from the mobile computing device. In some embodiments, the second lighting device may be further configured to broadcast a lighting device location when the confidence level is equal to or greater than a threshold, wherein the confidence level is adjusted based on a comparison of the received location information from the at least one mobile computing device and the lighting device location.

The foregoing description of embodiments of the present disclosure has been presented for purposes of illustration; it is not intended to be exhaustive or to limit the claims to the precise form disclosed. One skilled in the relevant art will appreciate that many modifications and variations are possible in light of the above disclosure.

Some portions of this specification describe embodiments in terms of algorithms and symbolic representations of operations on information. These algorithmic descriptions and representations are the means used by those skilled in the data processing arts to effectively convey the substance of their work to others skilled in the art. These operations, while described functionally, computationally, or logically, are understood to be implemented by computer programs or equivalent electrical circuits, microcode, or the like. Moreover, it has also proven convenient at times, to refer to these arrangements of operations as modules, without loss of generality. The described operations and their associated modules may be implemented in software, firmware, hardware, or any combination thereof.

Any of the steps, operations, or processes described herein may be performed or implemented using one or more hardware or software modules, alone or in combination with other devices. In one embodiment, the software modules are implemented in a computer program product comprising a computer readable medium containing computer program code, the computer program code executable by one or more processors for performing any or all of the steps, operations, or processes described.

39页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:可见光通信

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!