CA2959365A1 - Occupancy information processing for facilitating building management - Google Patents

Occupancy information processing for facilitating building management Download PDF

Info

Publication number
CA2959365A1
CA2959365A1 CA2959365A CA2959365A CA2959365A1 CA 2959365 A1 CA2959365 A1 CA 2959365A1 CA 2959365 A CA2959365 A CA 2959365A CA 2959365 A CA2959365 A CA 2959365A CA 2959365 A1 CA2959365 A1 CA 2959365A1
Authority
CA
Canada
Prior art keywords
zone
occupant
occupants
count
location
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
CA2959365A
Other languages
French (fr)
Inventor
Stefan Storey
Daniel Araujo Almeida
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sensible Building Science Inc
Original Assignee
Sensible Building Science Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sensible Building Science Inc filed Critical Sensible Building Science Inc
Priority to CA2959365A priority Critical patent/CA2959365A1/en
Publication of CA2959365A1 publication Critical patent/CA2959365A1/en
Abandoned legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B15/00Systems controlled by a computer
    • G05B15/02Systems controlled by a computer electric
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/26Pc applications
    • G05B2219/2642Domotique, domestic, home control, automation, smart house

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Air Conditioning Control Device (AREA)

Abstract

A computer-implemented method of occupancy information processing for facilitating environmental control of a building is disclosed. The method involves receiving signals representing a plurality of occupant-associated locations, each of the plurality of occupant-associated locations associated with one of a plurality of occupants in or around the building, receiving signals representing a zone of the building, determining a count of occupants within the zone, said determining involving determining a count of the plurality of occupant-associated locations within the zone, and producing signals representing the count of occupants within the zone for causing the count of occupants to be transmitted to a building management system to cause the building management system to control at least one environmental condition of the zone based at least in part on the count of occupants within the zone. Other methods, systems and computer-readable media are also disclosed.

Description

OCCUPANCY INFORMATION PROCESSING FOR
FACILITATING BUILDING MANAGEMENT
BACKGROUND
1. Field =
Embodiments of this invention relate to occupancy information processing and more particularly to occupancy information processing for facilitating management or control of one or more buildings or areas.
2. Description of Related Art Occupancy information may be useful data for managing buildings or areas. In particular, occupancy information for areas in or around a building may be used to determine how to devote resources to various aspects of building management. For example, such information may be used by computer-implemented building environment management systems to determine how and when to control or adjust environment conditions in the building and this may be helpful to increase efficiency and reduce wasted use of resources. However, systems for detecting occupancy information may be difficult or expensive to install or maintain and/or the information detected may come in the form of raw location information, which may be difficult for some building management system computers to interpret and/or apply. For example, some building management system computers may not be configured to interpret such information, which may not easily map to the systems of the building management system.
SUMMARY
In accordance with one embodiment, there is provided a computer-implemented method of occupancy information processing for facilitating environmental control of a building. The method involves receiving signals representing a plurality of . -occupant-associated locations, each of the plurality of occupant-associated locations associated with one of a plurality of occupants in or around the building, receiving signals representing a zone of the building, determining a count of occupants within the zone, said determining involving determining a count of the plurality of occupant-associated locations within the zone, and producing signals representing the count of occupants within the zone for causing the count of occupants to be transmitted to a building management system to cause the building management system to control at least one environmental condition of the zone based at least in part on the count of occupants within the zone.
Receiving signals representing the zone may involve receiving signals representing a plurality of subzones defining the zone and determining the count of occupants within the zone may involve, for each occupant-associated location of the plurality of occupant-associated locations: comparing the occupant-associated location to one or more of the plurality of subzones to find a corresponding subzone within which the occupant-associated location is located, and, when the corresponding subzone is found, stopping said comparing for the occupant-associated location and incrementing the count of the plurality of occupant-associated locations within the zone.
At least one of the plurality of subzones may overlap another of the plurality of subzones such that an occupant-associated location may be within two or more subzones.
Determining the count of occupants within the zone may involve scaling the count of occupant-associated locations within the zone by a correction factor, the correction factor representing expected occupants per occupant-associated location.
The method may involve receiving signals representing a usage type associated
-3-with the zone and setting the correction factor based on the usage type.
Setting the correction factor based on the usage type may involve setting the correction factor to between about 0.9 and 1.3 occupants per occupant-associated location when the usage type indicates that the zone is an open office.
Setting the correction factor based on the usage type may involve setting the correction factor to about 1.1 occupants per occupant-associated location when the usage type indicates that the zone is an open office.
Setting the correction factor based on the usage type may involve setting the correction factor to between about 0.7 and 1.1 occupants per occupant-associated when the usage type indicates that the zone is a lecture room.
Setting the correction factor based on the usage type may involve setting the correction factor to about 0.9 occupants per occupant-associated when the usage type indicates that the zone is a lecture room.
The occupant-associated locations may include device locations of devices, each of the devices associated with an occupant of the plurality of occupants.
Receiving the signals representing the plurality of occupant-associated locations may involve receiving wireless networking signals from each of the devices and determining the device locations based on strengths of the received wireless networking signals.
Receiving the signals representing the zone of the building may involve receiving the signals from a user via a user interface.

= -
-4-The user interface may include a graphical user interface and the method may involve producing signals for causing at least one display to display the graphical user interface.
The method may involve receiving signals identifying a subsystem of the building management system that controls the at least one environmental condition of the zone and producing signals representing the count of occupants within the zone may involve producing signals associating the count of occupants with the subsystem.
The zone may be a first zone of a plurality of zones and the method may involve:
determining, for each of the plurality of zones, a respective count of occupants within the zone, and producing signals representing the counts of occupants within the zones for causing the counts of occupants to be transmitted to the building management system.
The method may involve controlling the at least one environmental condition of the zone based at least in part on the count of occupants within the zone.
In accordance with another embodiment, there is provided a computer-implemented method involving causing at least one processor to perform any of the above methods.
In accordance with another embodiment, there is provided a system for facilitating monitoring of a first user of a plurality of users, the system including at least one processor configured to execute any of the above methods.
In accordance with another embodiment, there is provided a computer readable medium having stored thereon codes which when executed by at least one processor cause the at least one processor to perform any of the above , .
-5-methods.
In accordance with another embodiment, there is provided a system for occupancy information processing for facilitating environmental control of a building. The system includes means for receiving signals representing a plurality of occupant-associated locations, each of the plurality of occupant-associated locations associated with one of a plurality .of occupants in or around the building, means for receiving signals representing a zone of the building, means for determining a count of occupants within the zone, said determining involving determining a count of the plurality of occupant-associated locations within the zone, and means for producing signals representing the count of occupants within the zone for causing the count of occupants to be transmitted to a building management system to cause the building management system to control at least one environmental condition of the zone based at least in part on the count of occupants within the zone.
Other aspects and features of embodiments of the invention will become apparent to those ordinarily skilled in the art upon review of the following description of specific embodiments of the invention in conjunction with the accompanying figures.
BRIEF DESCRIPTION OF THE DRAWINGS
In drawings which illustrate embodiments of the invention, Figure 1 is a schematic view of a system for processing occupancy information in accordance with various embodiments of the invention;
Figure 2 is a schematic view of the system shown in Figure 1 in accordance with various embodiments of the invention;

, =
-6-Figure 3 is a schematic view of an occupancy information analyzer shown in the system of Figure 2 including a processor circuit in accordance with various embodiments of the invention;
Figure 4 is a flowchart depicting blocks of code for directing the occupancy information analyzer of the system of Figure 2 to perform occupancy information processing functions in accordance with various embodiments of the invention;
Figure 5 is a representation of an exemplary device location message that may be used in the system shown in Figure 2;
Figure 6 is a representation of an exemplary device location record that may be used in the system shown in Figure 2;
Figure 7 is a flowchart depicting blocks of code that may be included in the flowchart of Figure 4 in accordance with various embodiments of the invention;
Figure 8 is a representation of a graphical user interface that may be displayed by a display of a user interface system included in the system shown in Figure 2 in accordance with embodiments of the invention;
Figure 9 is a representation of a graphical user interface that may be displayed by a display of a user interface system included in the system shown in Figure 2 in accordance with embodiments of the invention;
_ Ts/M4 1.R+.0F+ ___ 14=603~1144/WORIV.
-7-Figure 10 is a representation of an exemplary subzone definition message that may be used in the system shown in Figure 2;
Figure 11 is a representation of an exemplary zone record that may be used in the system shown in Figure 2;
Figure 12 is a representation of an exemplary subzone record that may be used in the system shown in Figure 2;
Figure 13 is a representation of four exemplary point records that may be used in the system shown in Figure 2;
Figure 14 is a representation of an exemplary usage type definition message that may be used in the system shown in Figure 2;
Figure 15 is a representation of an exemplary zone record that may be used in the system shown in Figure 2;
Figure 16 is a representation of a graphical user interface that may be displayed by the display of the user interface system included in the system shown in Figure 2 in accordance with embodiments of the invention Figure 17 is a representation of an exemplary subsystem identifier message that may be used in the system shown in Figure 2;
Figure 18 is a representation of an exemplary zone record that may be used in the system shown in Figure 2;
Figure 19 is a representation of a graphical user interface that may be .
-
-8-displayed by a display of a user interface system included in the system shown in Figure 2 in accordance with embodiments of the invention;
Figure 20 is a representation of an exemplary subzone definition message that may be used in the system shown in Figure 2;
Figure 21 is a representation of an exemplary subzone record that may be used in the system shown in Figure 2;
Figure 22 is a representation of four exemplary point records that may be used in the system shown in Figure 2;
Figure 23 is a representation of an exemplary zone record that may be used in the system shown in Figure 2;
Figure 24 is a representation of a graphical user interface that may be displayed by the display of the user interface system included in the system shown in Figure 2 in accordance with embodiments of the invention;
Figure 25 is a representation of an exemplary zone record that may be used in the system shown in Figure 2;
Figure 26 is a flowchart depicting blocks of code that may be included in the flowchart of Figure 4 in accordance with various embodiments of the invention;
Figure 27 is a flowchart depicting blocks of code that may be included in the flowchart of Figure 26 in accordance with various embodiments of
-9-the invention;
Figure 28 is a representation of an exemplary zone record that may be used in the system shown in Figure 2;
Figure 29 is a representation of an exemplary zone record that may be used in the system shown in Figure 2;
Figure 30 is a representation of an exemplary zone record that may be used in the system shown in Figure 2;
Figure 31 is a representation of an exemplary correction factor table that may be used in the system shown in Figure 2;
Figure 32 is a representation of an exemplary zone record that may be used in the system shown in Figure 2;
Figure 33 is a representation of an exemplary occupancy count message that may be used in the system shown in Figure 2;
Figure 34 is a representation of a display that may be presented by the display of the user interface system included in the system shown in Figure 2 in accordance with embodiments of the invention Figure 35 is a flowchart depicting blocks of code for directing the occupancy information analyzer of the system of Figure 2 to perform occupancy information processing functions in accordance with various embodiments of the invention;
Figure 36 is a representation of an exemplary correction factor message that
-10-may be used in the system shown in Figure 2; and Figure 37 is a representation of an exemplary zone record that may be used in the system shown in Figure 2.
DETAILED DESCRIPTION
Referring to Figure 1, according to one embodiment of the invention, there is provided a system 10 for processing occupancy information. In some embodiments, the system 10 may be configured to facilitate environmental control of a building or environmentally controlled area, for example.
The system 10 includes a location detecting system 12, an occupancy information analyzer 14, and a building management system 16. The location detecting system 12 may be in communication with the occupancy information analyzer 14 and the occupancy information analyzer 14 may be in communication with the building management system 16.
The location detecting system 12 may be configured to detect locations related to occupants in the building. However, in some embodiments, this raw location information may not be useful to the building management system 16, since the building management system may not be configured to relate the detected locations to occupancy and/or system information related to the building management system 16. Accordingly, in various embodiments, the occupancy information analyzer 14 may be configured to receive the occupant-associated location information from the location detecting system 12, to receive zone information, which may relate to system information related to the building management system, and to generate occupancy information which the building management system 16 can use. In particular, the occupancy information analyzer 14 may be configured to determine expected counts of occupants within
-11-the zones and to cause the counts of occupants within the zones to be transmitted to the building management system 16. In some embodiments, the occupancy information analyzer 14 may be configured to determine the counts of occupants within the zones based at least in part on a determination of counts of the occupant-associated locations within the zones.
Referring to Figure 1, in some embodiments, the location detecting system 12 may be configured to detect occupant-associated locations, which are locations associated with occupants in a building. For example, in some embodiments, the location detecting system 12 may be configured to detect device locations of devices in or around a building. The devices may each be carried by or located near a respective occupant or person in or around the building and so the device locations may be expected to generally represent a location of an occupant with which they are associated. In some embodiments, the location detecting system
12 may be configured to determine occupant-associated locations through other means.
The location detecting system 12 may be configured to transmit signals representing the occupant-associated locations to the occupancy information analyzer 14. For example, in some embodiments, the signals may be electronic or electrical signals sent over a network connection, which represent a message including the occupant-associated locations. The occupancy information analyzer 14 may be configured to receive the signals representing the occupant-associated locations from the location detecting system 12.
The occupancy information analyzer 14 may be configured to also receive signals representing one or more zones of the building. In some embodiments, the zones may represent areas of interest in the building. For example, in some embodiments, each of the zones may represent an area with environmental conditions controlled by a respective subsystem of the building management system 16. For example, in some embodiments, a subsystem of the building management system may include a particular heating, ventilation, and air-conditioning ("HVAC") unit, an air handling unit, a rooftop unit, a variable air volume ("VAV") box, or another actuator that is able to be controlled. In some embodiments, a zone may represent an area that is serviced by a particular set of actuator controlled environmental control units, such as HVAC units, for example.
In some embodiments, the signals representing the zones may be provided by a user such as a building system manager, for example, via a user interface in communication with the occupancy information analyzer 14. The user interface may include a display and input devices such as a keyboard and a mouse, for example. The user may interact with the user interface to define the zones of the building and cause signals representing the zones to be sent to the occupancy information analyzer 14.
The occupancy information analyzer 14 may be configured to then determine a count of occupants within the zones, the determining involving determining a count of ones of the plurality of occupant-associated locations within each of the zones. In some embodiments, the count of occupants may be a representation of the expected number of occupants in the zone which may be, for example, a decimal number and/or a normalized value and not an actual count of occupants within the zone.
In some embodiments, the occupancy information analyzer 14 may be configured to, for each of the occupant-associated locations, compare the occupant-associated location to one or more of the plurality of subzones to find a corresponding subzone within which the occupant-associated location is located and when the corresponding subzone is found, to stop comparing the occupant-associated location and increment a count of the plurality of occupant-associated - _ _________________ 00.1..P$ RV. a , __ ,,?, 1.195,90 N.'', ....6441Vra - 1.....041~.1~1.40~144eitern,
-13-locations within the zone, and thereby determine how many of the occupant-associated locations are within each of the zones. The occupancy information analyzer 14 may be configured to then determine the expected count of occupants within the zone as a function of the count of occupant-associated locations which are determined to be within the zone. In some embodiments, for example, it may be expected that the count of occupants within the zone may be proportional to the count of occupant-associated locations which are determined to be within the zone and so the occupancy information analyzer 14 may scale the count of occupant-associated locations within the zone to determine the expected count of occupants.
The occupancy information analyzer 14 may be configured to produce signals representing the count of occupants within the zone for causing the count of occupants to be transmitted to the building management system 16. In some embodiments, the occupancy information analyzer 14 may be in communication with the building management system 16 through an intermediary, such as a gateway.
The building management system 16 may be configured to receive the signals representing the count of occupants within the zone and to use that information for managing the building. In some embodiments, the building management system 16 may be configured to control at least one environmental condition of the zone based on the received signals representing the count of occupants.
For example, in some embodiments, the building management system 16 may be configured to provide airflow to, heat and/or cool the zone based, at least in part, on the count of occupants within the zone. In some embodiments, the building management system 16 may be configured to compare the count of occupants in a zone with a threshold count and, if the count moves below the threshold count, turn off a subsystem, such as an air handling unit, for example, associated with the zone and if the count is moves above the threshold count, turn on the air
-14-handling unit. In some embodiments, the building management system 16 may be configured to control a rate of air flow for the zone based on the count of occupants. In some embodiments, this may improve comfortability of the building occupants.
Referring now to Figure 2, there is provided an embodiment of the system 10 shown in Figure 1. The system 10 shown in Figure 2 includes the location detecting system 12, the occupancy information analyzer 14, and the building management system 16. In the embodiment shown, the system 10 also includes a user interface system 130 for providing a user interface for a user to communicate with the occupancy information analyzer 14. In some embodiments, the user interface system 130 may include a client computer in networked communication with the occupancy information analyzer 14. In some embodiments, the user interface system 130 may include a client computer connected to a private network in communication with the interface 124 of the I/O
interface 112 shown in Figure 3. In some embodiments, the user interface system 130 may include a client computer connected to a public network, such as the Internet, for example, in communication with the interface 124 of the I/O
interface 112 shown in Figure 3. In various embodiments, the user interface system 130 may include at least one display and at least one input device, such as a keyboard and/or a pointing device or pointer, such as, a mouse.
Referring to Figure 2, in the embodiment shown, the system 10 also includes a gateway 18, which may act as an intermediary between the occupancy information analyzer 14 and the building management system 16, for facilitating communications from the occupancy information analyzer 14 to the building management system 16.
Referring to Figure 2, in the embodiment shown, the location detecting system includes wireless access point ("WAP") devices 50 in communication with a
-15-network 60, which is in communication with a location detecting server computer 70. In some embodiments, the WAP devices 50 may include one or more routers, switches, hubs, or another device for providing a wireless access point, for example. In some embodiments, the WAP devices 50 may provide access to a network, such as the Internet. In some embodiments, the location detecting server computer 70 may be running wireless network analytic software, such as, for example, CMX software by CiscoTm.
Still referring to Figure 2, a plurality of client devices configured for wireless communication with the WAP devices 50 are shown at 80. In some embodiments, each of the client devices 80 may be associated with an occupant or person who is in or around the building for which the WAP devices 50 provide wireless network access. For example, the client device 82 may be a mobile device, such as a smart phone or tablet, for example, which is being carried by an occupant of a building and which is in communication with three of the WAP
devices 50, as shown in Figure 2. Although for illustrative purposes, only communication between the client device 82 and the WAP devices 50 is explicitly shown, it will be understood that in various embodiments, each of the client devices 80 may be in communication with one or more of the WAP devices 50.
Further, while for illustrative purposes, four client devices and three WAP
devices are shown in Figure 2, in various embodiments, the system 10 may include numerous WAP devices and client devices. For example, in some embodiments, the system 10 may include about 6000 WAP devices and for communicating with about 60,000 client devices. In some embodiments, the number of WAP devices included in the system 10 may vary. In some embodiments a ratios of about 10-15 client devices per WAP device may be employed.
Each of the client devices 80 may be found at various locations in or around a building and the location detecting system 12 may be configured to detect a respective location for each of the client devices 80. In some embodiments, the
-16-location detecting server computer 70 may communicate with the WAP devices 50 over the network 60 and may direct the WAP devices 50 to measure a signal strength received from each of the client devices 80 and the location detecting server computer 70 may be configured to determine a location in or around the building for each of the client devices 80 based at least in part on the measured signal strength.
In some embodiments, for example, the location detecting server computer 70 may have stored in memory, physical locations for each of the WAP devices 50 and the location detecting server computer 70 may be configured to use location determining techniques, such as, for example, triangulation, to determine relative locations of the client devices 80 based at least in part on the signal strength measured and the known stored locations of the wireless access points.
The location detecting server computer 70 may be configured to transmit signals representing the determined device locations to the occupancy information analyzer 14. In some embodiments, the location detecting server computer 70 and the occupancy information analyzer 14 may be in communication via a network connection, and the location detecting server computer 70 may transmit the signals representing the determined device locations by sending location information via the network connection.
Occupancy information analyzer - Processor Circuit Referring now to Figure 3, a schematic view of the occupancy information analyzer 14 of the system 10 shown in Figure 2 according to an embodiment is shown. In various embodiments, the occupancy information analyzer 14 may be implemented as a virtual machine running on a server computer in communication with the location detecting server computer 70, the user interface system 130 and the gateway 18.
-17-Referring to Figure 3, the occupancy information analyzer 14 includes a processor circuit including an analyzer processor 100 and a program memory 102, a storage memory 104, and an input/output (I/O) interface 112, all of which are in communication with the analyzer processor 100. The I/O interface 112 includes an interface 120 for communicating with the location detecting server computer 70, an interface 122 for communicating with the gateway 18 and an interface 124 for communicating with the user interface system 130.
In some embodiments, one or more of the interfaces 120, 122, and/or 124 may facilitate networked communication through a network. The I/O interface 112 may include one or more network interfaces each having a network interface card with an input/output for connecting to a network, through which communications may be conducted with devices connected to the network, such as the location detecting server computer 70, the gateway 18, and/or the user interface system 130, for example. In various embodiments, information or messages may be transmitted and received via the I/O interface 112 using JSON.
In some embodiments, each of the interfaces shown in Figure 3 may include one or more interfaces and/or some or all of the interfaces included in the I/O
interface 112 may be implemented as combined interfaces or a single interface.
Processor-executable program codes for directing the analyzer processor 100 to carry out various functions are stored in the program memory 102. The program memory 102 includes a block of codes 160 for directing the mobile device to perform occupancy information processing functions. In this specification, it may be stated that certain encoded entities such as applications or modules perform certain functions. Whenever an application, module or encoded entity is described as taking an action, as part of, for example, a function or a method, it will be understood that a processor (e.g. the analyzer processor 100) is directed to take the action by way of programmable codes or processor-executable codes
-18-or instructions defining or forming part of the application.
The storage memory 104 includes a plurality of storage locations including location 140 for storing occupant-associated location data, location 142 for storing plan or floor data, location 144 for storing zone data, and location 146 for storing occupant count correction data. In various embodiments, the plurality of storage locations may be stored in a database in the storage memory 104.
In various embodiments, the block of codes 160 may include one or more blocks of code stored in one or more locations in program memory 102 and/or the locations 140, 142, 144, and 146 may each include one or more locations in the storage memory 104.
Each of the program memory 102 and storage memory 104 may be implemented as one or more storage devices including random access memory (RAM), a hard disk drive (HDD), a solid-state drive (SSD), a network drive, flash memory, a memory stick or card, any other form of non-transitory computer-readable memory or storage medium, and/or a combination thereof. In some embodiments, the program memory 102, the storage memory 104, and/or any portion thereof may be included in a device separate from the occupancy information analyzer 14 and in communication with the occupancy information analyzer 14 via the I/O interface 112, for example. In various embodiments, other memory, program memory, blocks of code, storage memory, and locations in memory described herein may be implemented generally similarly to as described above for the program memory 102 and the storage memory 104.
Occupancy information processing Referring to Figure 4, a flowchart depicting blocks of code for directing the analyzer processor 100 shown in Figure 3 to perform occupancy information processing functions in accordance with one embodiment is shown generally at
-19-200. The blocks of code included in the flowchart 200 may be encoded in the block of codes 160 shown in Figure 3 for example.
Referring to Figure 4, the flowchart 200 begins with block 202 which directs the analyzer processor 100 shown in Figure 3 to receive signals representing a plurality of occupant-associated locations, each of the plurality of occupant-associated locations associated with a respective occupant of a plurality of occupants in or around the building.
As discussed above, in various embodiments, the location detecting server computer 70 of the location detecting system 12 shown in Figure 2 may transmit signals representing device locations to the occupancy information analyzer 14, the device locations acting as occupant-associated locations. In some embodiments, the location detecting server 70 may be configured to send device location messages representing the device locations to the occupancy information analyzer 14.
Referring to Figure 4, block 202 may direct the analyzer processor 100 to receive the device location messages from the location detecting server computer 70 via the interface 120 of the I/O interface 112 shown in Figure 3. In some embodiments, block 202 may have directed the analyzer processor 100 to request the device location messages from the location detecting server computer 70, such as, for example, by transmitting a query or request in accordance with an API of the location detecting server computer 70.
Referring to Figure 5, there is shown an exemplary device location message 300 which may be received by the analyzer processor 100 via the interface 120 shown in Figure 3 upon execution of block 202. The device location message 300 includes a floor reference identifier field 302 for identifying a floor or plan which represents a floor or area that the device associated with the device = , =
-20-location message 300 was detected, an x-coordinate field 304 for storing an x-coordinate location of the device, and a y-coordinate field 306 for storing a y-coordinate location of the device. In various embodiments, the floor reference identifier field may be, for example, a unique identifier associated with a floor or plan stored in the location 142 of the storage memory 104. In some embodiments, the x-coordinate and y-coordinate fields may store values which represent the location coordinates of the device in feet.
In various embodiments, numerous device location messages may be received by the analyzer processor 100 at block 202. In some embodiments, a single communication from the location detecting server computer 70 may include information representing a plurality of device location messages each including information as shown in Figure 5 representing a respective device location.
In various embodiments, block 202 may direct the analyzer processor 100 to store a representation of the received occupant-associated location information in memory. For example, in some embodiments, block 202 may direct the analyzer processor 100 to store in the location 140 of the storage memory 104 shown in Figure 3, for each received device location, a device location record, an example of which is shown at 340 in Figure 6.
Referring to Figure 6, the device location record 340 includes a device identifier field 342, a floor reference identifier field 344, an x-coordinate field 346, a y-coordinate field 348, and a time retrieved field 350. Block 202 may direct the analyzer processor 100 to generate a unique identifier for the device identifier field 342. Block 202 may direct the analyzer processor 100 to set the values stored in the floor reference identifier field 344, the x-coordinate field 346, and the y-coordinate field 348 to values corresponding to those included in the corresponding fields of the device location message 300 shown in Figure 5.
Block 202 may direct the analyzer processor 100 to set the time retrieved field
-21-350 to a current system time.
In various embodiments, block 202 may direct the analyzer processor. 100 to generate and store a device location record in the location 140 of the storage memory 104 for each of the device location messages received.
In various embodiments, block 202 may direct the analyzer processor 100 to receive further or alternative information from the location detecting server computer 70, including, for example, records having additional or fewer fields than those shown in Figure 5. In some embodiments, block 202 may direct the analyzer processor 100 to ignore various fields and values received from the location detecting server computer 70. In some embodiments, the location detecting server computer 70 may send to the analyzer processor 100 various information, such as MAC addresses, for example, that should not be stored by the occupancy information analyzer 14 for privacy reasons and so block 202 may direct the analyzer processor 100 to ignore such information and not keep a record of such information in the storage memory 104.
Referring back to Figure 4, block 204 directs the analyzer processor 100 to receive signals representing one or more zones of the building. In some embodiments, the zones of the building may define areas which are of interest to building management and/or for data analysis. For example, in some embodiments, the zones may represent portions of the building which are serviced by a single environmental control subsystem, as discussed above, which may include a particular HVAC unit, for example. In such embodiments, occupancy information separated by zone may help with controlling the environment of the building. In some embodiments, using zone based occupancy counting areas may facilitate zones being directly matched to building control zones. For example, in some embodiments, matched zones may be smaller zones required by VAV units, or larger zones as described by AHUs. In some
-22-embodiments, zones matched to building control areas may facilitate later use by the building management system 16 or control programmers who prescribe control schedules and are associated with the building management system 16.
In some embodiments, the block 204 may be executed during setup of the occupancy information analyzer 14 and prior to block 202 being executed.
In some embodiments, a user who may be associated with building management, for example, may interact with user input devices of the user interface system to transmit signals to the user interface system 130 and the user interface system 130 may receive the signals and transmit signals representing the zone information to the occupancy information analyzer 14. For example, in some embodiments, the user may login or set up a communication link with the occupancy information analyzer 14 by using a web browser installed on the user interface system 130 and then the user may provide the zone information using user input devices of the user interface system 130. Referring to Figure 4, block 204 may direct the analyzer processor 100 to receive the signals representing the zone information from the user interface system 130 via the interface 124 of the I/O interface 112 shown in Figure 3.
Referring to Figure 7, there is shown at 400 a flowchart representing blocks of codes which may be included in the block 204 of the flowchart 200 shown in Figure 4, in accordance with various embodiments. The flowchart 400 begins with block 402 which directs the analyzer processor 100 to receive signals representing one or more subzones associated with a zone. In some embodiments, block 402 may direct the analyzer processor 100 to produce signals for causing at least one display to display one or more graphical user interface ("GUI") requesting zone information from a user. For example, in some embodiments, block 402 may direct the analyzer processor 100 to transmit signals via the interface 124 of the I/O interface 112 to the user interface system 130 shown in Figure 2 to cause a display of the user interface system to display kt
-23-a graphical user interface ("GUI") 450 as shown in Figure 8.
In some embodiments, block 402 of the flowchart 400 shown in Figure 7 may direct the analyzer processor 100 to retrieve a plan or map from the location of the storage memory 104 shown in Figure 3 and to transmit signals representing the plan to the user interface system 130 shown in Figure 2 to cause the user interface system 130 to include a representation 451 of the plan in the GUI 450 shown in Figure 8. In various embodiments, the plan may be stored in the location 142 of the storage memory 104 in association with an identifier such as, for example, a floor reference identifier. In some embodiments, the plan and identifier may have been previously loaded by a user or administrator into the location 142 of the storage memory 104.
In some embodiments, the GUI 450 may include representations of detection points, which may represent locations of the WAP devices 50 shown in Figure 2.
Referring to Figure 8, the GUI 450 may include a "New Zone" section 452 including a zone name field 454 for the user to interact with and provide a zone name for a new zone which the user wishes to define. In various embodiments, a user may use the input devices of the user interface system 130 such as the keyboard and pointing device to produce signals for interacting with the GUI

and entering a zone name in the zone name field 454.
The user may then use the pointing device of the user interface system 130 shown in Figure 2 to define a shape, for a subzone of the zone, on the representation 451 of the plan shown in Figure 8. In some embodiments, the user may define the shape using the pointing device. The shape may be defined by points, each having x and y coordinates relative to the plan, which represent locations of corners of the shape. The user may define the points by clicking and dragging the shape on the representation 451 of the plan. Referring to Figure 9,
-24-there is shown the GUI 450, with a subzone 460 having a shape defined by a user. In the embodiment shown, the subzone 460 is defined by a rectangular shape. In various embodiments, other shapes may be used to define the subzone.
In some embodiments, the user may select a save icon 456 and, in response, the user interface system 130 may transmit signals representing the zone name entered in the zone name field 454 and the four points defining the subzone defined by the user to the occupancy information analyzer 14. In various embodiments, the user interface system 130 may transmit a representation of a subzone definition message to the analyzer processor 100 via the interface 124 of the I/O interface 112 shown in Figure 3.
An exemplary subzone definition message 500 is shown at 500 in Figure 10 and includes a zone name field 502 and first, second, third, and fourth pairs of x and y coordinate fields 504, 506, 508, and 510 defining locations for each point or corner of the subzone 460 defined by the user on the GUI 450 shown in Figure 9.
Referring to Figure 7, Block 402 may direct the analyzer processor 100 to receive the signals representing the subzone definition message 500 and to store a representation of the information included in the message in the location 144 of the storage memory 104 shown in Figure 3. In some embodiments, block 402 may direct the analyzer processor 100 to store the information included in the subzone definition message 500 in one or more records stored in the location 144 of the storage memory 104. For example, block 402 may direct the analyzer processor 100 to store the information in a zone record, a subzone record, and point records. An exemplary zone record 550, an exemplary subzone record 580, and exemplary point records 640, 650, 660, and 670 in accordance with various embodiments of the invention are shown in Figures 11, 12, and 13.
=
,OF 414, 40* __ =*, =+al, ,
-25-Referring to Figure 11, the zone record 550 includes a zone name field 552, a floor reference identifier field 553, and a linked subzone identifier field 554.
Referring to Figure 12, the subzone record 580 includes a subzone identifier field 582, a linked zone name field 583, a floor reference identifier field 585, and first, second, third, and fourth point identifier fields 584, 586, 588, and 590.
Referring to Figure 13, the point record 640 includes a point identifier field 642, an x-coordinate field 644, and a y-coordinate field 646 and each of the point records 650, 660, and 670 similarly include a point identifier field, an x-coordinate field and a y-coordinate field.
Referring back to Figure 7, block 402 may direct the analyzer processor 100 shown in Figure 3 to generate unique identifiers for each of the point identifier fields of the point records 640, 650, 660, and 670 shown in Figure 13 and to set the point identifier fields 584, 586, 588, and 590 of the subzone record 580 shown in Figure 12 to these identifiers, in order to link the point records with the subzone record. Block 402 may direct the analyzer processor 100 to generate a unique identifier for the subzone identifier field 582 of the subzone record shown in Figure 12 and to set the linked subzone identifier field 554 of the zone record 550 shown in Figure 11 to store this identifier, in order to link the subzone record with the zone record.
Block 402 may direct the analyzer processor 100 to set the zone name field 552 of the zone record 550 to the value of the zone name field 502 of the subzone definition message 500 and to set the x and y coordinate fields of the point records 640, 650, 660, and 670 to the values of the x and y coordinate fields from the subzone definition message 500. Block 402 may direct the analyzer processor 100 to set the floor reference identifier field 553 to a value of an identifier stored in the location 142 of the storage memory 104 in association with the plan retrieved from the location 142 and displayed by the GUI 450 shown in Figures 8 and 9.

l+ = ,t^...".= -
-26-In some embodiments, block 402 of the flowchart 400 shown in Figure 7 may direct the analyzer processor 100 shown in Figure 3 to include in the subzone record 580 shown in Figure 12, the linked zone name field 583 for storing an identifier of a zone linked to the subzone. Block 402 may direct the analyzer processor 100 to set the linked zone name field 583 to the zone name from the zone name field 552. In some embodiments, block 402 may direct the analyzer processor 100 to include in the subzone record 580, the floor reference identifier field 585 and to set the value of this field to a floor reference identifier associated with the subzone record 580. Block 402 may direct the analyzer processor 100 to set the floor reference identifier field 585 generally as described above with respect to the floor reference identifier field 553 of the zone record 550 shown in Figure 11.
Referring to Figure 7, block 402 may direct the analyzer processor 100 shown in Figure 3 to store the zone record 550, subzone record 580, and point records 640, 650, 660, and 670 as zone information in the location 144 of the storage memory 104. In some embodiments, storing the zone information in linked zone records, subzone records, and point records may facilitate easier creating, editing, and removing of subzones and zones included in the zone information.
Referring back to Figure 7, block 404 directs the analyzer processor 100 shown in Figure 3 to receive signals representing a usage type associated with the zone. In various embodiments, a usage type may represent how the zone may be used by building occupants. As discussed below, the usage type for a zone may be used by the occupancy information analyzer 14 shown in Figure 3 to determine the count of occupants for the zone, since, in some embodiments, a usage type may be indicative of how many occupants can be expected per occupant-associated location detected within the zone. Block 404 may direct the analyzer processor 100 to produce signals for causing the GUI 450 shown in
-27-Figures 8 and 9 to include a usage type field 462 and the user may use the pointing device and keyboard of the user interface system 130 to produce signals representing a usage type entered into the usage type field 462. In some embodiments, the usage type field 462 of the GUI 450 may include a drop-down menu providing a number of usage types for the user to select from. For example, in some embodiments, the usage type may include usage types that indicate the zone is to be used as an open office, a lecture room, meeting rooms, conferencing areas, atrium spaces, flex zones, and/or another usage type that may be used to help to determine the count of occupants for the zone based on a number of occupant-associated locations found within the zone.
For example, in some embodiments, the user may enter a usage type of "Lecture room" in the usage type field 462 of the GUI 450 shown in Figures 8 and 9 and the user interface system 130 may be configured to send signals representing a usage type definition message to the occupancy information analyzer 14. An exemplary usage type definition message 680 is shown in Figure 14 and includes a zone name field 682 and a usage type field 684.
Block 404 of the flowchart 400 shown in Figure 7 may direct the analyzer processor 100 shown in Figure 3 to receive signals representing the usage type definition message 680 shown in Figure 14 via the interface 124 of the I/O
interface 112. Block 404 may direct the analyzer processor 100 to update the zone record 550 stored in the location 144 of the storage memory 104 such that the zone record 550 includes a usage type field 556, as shown in Figure 15, set to the value of the usage type field 684 of the usage type definition message 680.
Referring back to Figure 7, block 406 then directs the analyzer processor 100 shown in Figure 3 to receive signals representing a subsystem identifier associated with the zone. In some embodiments, block 406 may direct the analyzer processor 100 to produce signals for causing a GUI 700 requesting one -= I . =4^..
-28-or more building management subsystem identifiers to associate with the zones, as shown in Figure 16, to be displayed by the display of the user interface system 130. Referring to Figure 16, the GUI 700 includes a subsystem identifier field 710 prompting the user to interact with the user input devices of the user interface system 130 to produce signals for entering in the subsystem identifier field 710 a subsystem identifier identifying a subsystem of the building management system which is associated with the zone.
As discussed above, in some embodiments a particular HVAC unit may provide environmental controls for the zone and a user may provide an identifier for identifying the HVAC unit in the subsystem identifier field 710. In some embodiments, where the occupancy information analyzer 14 will be communicating through the gateway 18 shown in Figure 3, the subsystem identifier requested and received at block 406 may be an identifier that is recognized by the gateway 18. For example, in some embodiments, the gateway 18 may be configured such that a first HVAC unit of the environmental management system is identified by the building management system 16 in communication with the gateway 18 using a numeric identifier of "101". In such embodiments, if the user wishes to associate a zone with the first HVAC unit, the user may consult information associated with the gateway 18 and input a subsystem identifier of "101" in the subsystem identifier field 710 of the GUI

shown in Figure 16.
When the user provides a value in the subsystem identifier field 710, the user interface system 130 may generate a subsystem identifier message and transmit signals representing the subsystem identifier message to the occupancy information analyzer 14. An exemplary subsystem identifier message 740 is shown in Figure 17 and includes a zone name field 742 and a subsystem identifier field 744.

- = = ¨ = == - = ¨,,,oprrne==.====.=.=
- -
-29-Block 406 may direct the analyzer processor 100 to receive the signals representing the subsystem identifier message 740 via the interface 124 of the I/O interface 112 and to store a representation of the information included in the message in memory. In some embodiments, block 406 may direct the analyzer processor 100 to update the zone record 550 stored in the location 144 of the storage memory 104, as shown in Figure 18, to include a subsystem identifier field 558 set to the value of the subsystem identifier field 744 of the subsystem identifier message 740.
Referring back to Figure 7, in various embodiments, the user may provide or define more than one shape or subzone defining the zone. For example, as shown in Figure 19, the user may use the pointing device of the user interface system 130 to define on the GUI 450, a second subzone 470 of the zone having the name "Zone X". Accordingly, the user interface system 130 may generate and transmit a subzone definition message 780 as shown in Figure 20 to the occupancy information analyzer 14, and block 402 of the flowchart 400 shown in Figure 7 may direct the analyzer processor 100 to act generally as described above and to receive signals representing the subzone definition message 780 = via the interface 124 of the I/O interface 112.
Referring back to Figure 7, block 402 may direct the analyzer processor 100 to store information representing the subzone definition message 780 in memory.
In some embodiments, block 402 may direct the analyzer processor 100 to generate a subzone record 800 as shown in Figure 21 and point records 820, 822, 824, and 826 shown in Figure 22 and to update the zone record 550 to include a second linked subzone identifier field 555 as shown in Figure 23 to link the zone record 550 with the subzone record 800.
In various embodiments, the subzones 460 and 470 shown in Figure 19 may together define an area of the building which is considered to be the zone
-30-identified by the zone name, "Zone X". In some embodiments, subzones may overlap as shown in Figure 19 wherein the subzones 460 and 470 overlap. In some embodiments, allowing overlapping subzones may facilitate users' abilities to define complex shaped zones using simple subzone shapes.
Referring to Figure 7, in various embodiments, each of the blocks of code in the flowchart 400 shown in Figure 7 may direct the analyzer processor 100 to receive information for defining a zone or to be associated with a zone. In various embodiments, each of the blocks of code of the flowchart 400 may be executed more than once, in any order, and/or concurrently with one another. For example, when a user defines multiple subzones, block 402 may be executed more than once. For example, in some embodiments, a user may concurrently provide usage type information and subzone definition information and so blocks 402 and 404 may be executed concurrently. In some embodiments, blocks 404 and/or 406 may be omitted, when such information is not to be used by the =
occupancy information analyzer 14, for example.
In some embodiments, execution of block 204 of the flowchart 200 shown in Figure 4 may involve executing the flowchart 400 shown in Figure 7 or blocks of code generally similar to the blocks of code included in the flowchart 400 multiple times, at least once for each zone. For example, in some embodiments, the flowchart 400 may be executed to receive information defining a subzone which defines a zone having a zone name of "Zone Y", as shown at 472 in Figure 24.
In such embodiments, blocks 402, 404, and 406 or blocks generally similar to blocks 402, 404, and 406 may be executed to direct the analyzer processor 100 to receive signals representing zone information and the blocks may direct the analyzer processor 100 to store a zone record 840 as shown in Figure 25 along with a subzone record, and four point records in the location 144 of the storage memory 104.
-31-Referring back to Figure 4, after blocks 202 and 204 have been executed, there may be stored and accessible from memory, occupant-associated location information and zone information. In various embodiments, blocks 202 and 204 may be executed more than once, in any order, and/or concurrently with one another.
Referring to Figure 4, after blocks 202 and 204 have been executed, the analyzer processor 100 may be directed to proceed to block 206 which directs the analyzer processor 100 to determine a count of occupants within each of the one or more zones. In various embodiments, block 206 may direct the analyzer processor 100 to, for each zone, determine an expected count of occupants within the zone as a function of a count of occupant-associated locations within the zone.
Referring to Figure 4, block 206 may direct the analyzer processor 100 shown in Figure 3 to compare the occupant-associated location information stored in the location 140 of the storage memory 104 with the zone information stored in the location 144 of the storage memory 104 to determine a respective count of occupants for each of the zones. In some embodiments, the counts of occupants may represent a number of occupants which are expected to be in each of the zones. In some embodiments, each of the counts of occupants may be a representation of an expected count which may be, for example, a decimal number and not an actual count of occupants.
Referring to Figure 26, there is shown at 900 a flowchart representing blocks of codes which may be included in the block 206 of the flowchart 200 shown in Figure 4, in accordance with various embodiments.
The flowchart 900 begins with block 902 which directs the analyzer processor 100 shown in Figure 3 to determine a count of occupant-associated locations
-32-within each of the one or more zones. In some embodiments, block 902 may direct the analyzer processor 100 to, for each occupant-associated location of the plurality of occupant-associated locations, compare the occupant-associated location to one or more of the plurality of subzones to find a corresponding subzone within which the occupant-associated location is located and, when the corresponding subzone is found, stop comparing for the occupant-associated location and increment the count of occupant-associated locations that are within the zone that is associated with the corresponding subzone.
Referring to Figure 27, there is shown at 940 a flowchart representing blocks of codes which may be included in the block 902 of the flowchart 900 shown in Figure 26, in accordance with various embodiments. The blocks of code included in the flowchart 940 may direct the analyzer processor 100 to determine a count of occupant-associated locations for zones represented by zone records stored in the location 144 of the storage memory 104.
Referring to Figure 27, the flowchart 940 begins with block 942 which directs the analyzer processor 100 shown in Figure 3 to consider a first occupant-associated location of the plurality of occupant-associated locations stored in memory and a first subzone of a plurality of subzones stored in memory and to determine whether the occupant-associated location is within the subzone.
In one embodiment, block 942 may direct the analyzer processor 100 to read the device location record 340 shown in Figure 6 from the location 140 of the storage memory 104 and to determine whether the location represented by the device location record 340 is within the subzone represented by the subzone record 580. Block 942 may direct the analyzer processor 100 to determine whether the location represented by values stored in the x-coordinate field 346 and y-coordinate field 348 of the device location record is within the shape or subzone having corners at locations represented by the values stored in respective x and "
-33-y-coordinate fields of the point records 640, 650, 660, and 670 shown in Figure 13. In some embodiments, block 942 may direct the analyzer processor 100 to use methods for solving a point-in-polygon problem (see for example, https://en.wikipedia.orgiwiki/Point_in_polygon) to determine whether the location is within the subzone. In some embodiments, for example, block 942 may direct the analyzer processor 100 to use a ray casting algorithm to determine whether the location is within the subzone.
Referring to Figure 27, if the location represented by the device location record is not within the subzone, the analyzer processor 100 is directed to proceed to block 944 and consider a different subzone before returning to block 942 to determine whether the occupant-associated location is within that new different subzone. In some embodiments, the subzone records may be included in a list and block 944 may direct the analyzer processor 100 to consider the next subzone record in the list.
If at block 942, the analyzer processor 100 determines that the location represented by the device location record is within the subzone, the analyzer processor 100 is directed to proceed to block 946. Accordingly, in various embodiments, execution of blocks 942 and 944 may act to direct the analyzer processor 100 to compare the occupant-associated location to one or more subzones, to find a corresponding subzone within which the occupant-associated location is located. In various embodiments, when the corresponding subzone is found, block 942 directs the analyzer processor 100 to stop executing blocks and 944 with respect to the subject occupant-associated location and so acts to stop the comparing for the occupant-associated location.
Block 946 directs the analyzer processor 100 to increment the count for the zone associated with the subject subzone. In some embodiments, block 946 may direct the analyzer processor 100 to read a linked zone name field of the , -
-34-subzone record considered at block 942 to determine a zone name for the zone linked to the subzone record. Block 946 may direct the analyzer processor 100 to look up in the location 144 of the storage memory 104 a zone record which has the corresponding zone name and to update the zone record to include an occupant-associated location count field set to 1 if the zone record has no count field or, if the zone record includes an occupant-associated location count field, to increment the value stored in the field.
For example, in some embodiments, where at block 942 of the flowchart 940 shown in Figure 27, the analyzer processor 100 shown in Figure 3 determined that the location represented by the device location record 340 was within the subzone represented by the subzone record 580 shown in Figure 12, block 946 may direct the analyzer processor 100 to find the zone record 550 shown in Figure 23 stored in the location 144 of the storage memory 104 and to update the zone record 550 as shown in Figure 28, to include an occupant-associated location count field 560, initialized to 1. For subsequent executions of block with respect to a subzone linked to Zone X, the analyzer processor 100 may be directed to increment the count stored in the count field 560.
Referring to Figure 27, the flowchart 940 continues at block 950, which directs the analyzer processor 100 to consider a next occupant-associated location before returning to block 942 to determine whether that next occupant-associated location is within a subzone. In some embodiments, block 950 may direct the analyzer processor 100 to begin at the start of a list of subzones again and so in some embodiments, block 950 may direct the analyzer processor 100 to consider a different subzone.
In various embodiments, the analyzer processor 100 may be directed to continue executing the flowchart 940 until all occupant associated locations have been considered, at which point, execution of the flowchart 940 may end.
-35-In various embodiments, stopping the execution of blocks 942 and 944 and thus stopping the comparing of the occupant-associated location to subzones as soon as a corresponding subzone is found, without looking at any further subzones and without again considering the occupant-associated location may facilitate efficient and quick counting of how many occupant-associated locations are within each zone while avoiding double counting of occupant-associated locations when subzones overlap, even if one or more of the occupant-associated locations are within more than one overlapping subzone since locations may be counted only once and not considered again with respect to a different, possibly overlapping subzone.
In some embodiments, block 902 may include a block of codes for directing the analyzer processor 100 to consider the subzones in a particular order before executing block 942 of the flowchart 940 shown in Figure 27 for a particular occupant-associated location. In some embodiments, block 902 may include a block of codes for directing the analyzer processor 100 to consider only a subset of subzones when executing block 942 of the flowchart 940 shown in Figure 27 for a particular occupant-associated location.
For example, in various embodiments, a block of codes included in the block may direct the analyzer processor 100 to read from each of the subzone records a point record associated with the subzone which has the smallest x-coordinate and smallest y-coordinate location of the point records associated with the subzone. In some embodiments, this may be a top left vertex of the subzone, for example. This may be considered herein for ease of reference as a "point V' associated with the subzone record.
Block 902 of the flowchart 900 shown in Figure 26 may direct the analyzer processor 100 shown in Figure 3 to sort the subzone records into a list such that
-36-they are ordered in the list by the x-coordinate value of the point V of each subzone record. Block 902 may direct the analyzer processor 100 perform a binary search, using the x-coordinate of the point Vs as a reference, to find an x-border subzone record that is the first subzone record that has an x-coordinate of its point V that is larger than the x-coordinate of the occupant-associated location being considered.
It may be known that none of the subzone records that are listed after the x-border subzone record can represent a subzone within which the subject occupant-associated location is located. Accordingly, in some embodiments, block 902 may direct the analyzer processor 100 to consider only the subzones records that are ordered in the list before the x-border subzone record when executing block 942 with respect to the occupant-associated location. In some embodiments, block 902 may direct the analyzer processor 100 to update a list of subzone records to remove from the list, the x-border subzone record and all of the subzone records that are listed after the x-border subzone record.
Block 902 may direct the analyzer processor 100 to sort the remaining subzone records in the list such that they are ordered by the y-coordinate value of the point V of each subzone record. Block 902 may direct the analyzer processor 100 perform a binary search, using the y-coordinate of the point Vs as a reference, to find a y-border subzone record, which is the first subzone record that has a y-coordinate of an associated point V that is larger than the y-coordinate of the occupant-associated location being considered. In some embodiments, it may be known that none of the subzones record that are listed after the y-border subzone record can represent a subzone that contains the occupant-associated location being considered.
In some embodiments, block 902 may direct the analyzer processor 100 to consider only the subzone records that are ordered in the list before the y-border
-37-subzone record when executing block 942 with respect to the occupant-associated location. In some embodiments, block 902 may direct the analyzer processor 100 to update the list to remove from the list, the y-border subzone record and all of the subzone records that are listed after the y-border subzone record.
In various embodiments, after the list of subzone records to consider has been generated and, in some embodiments, amended to include only a subset of the subzone records, for example, as described above, blocks 942 and 944 of the flowchart 940 may direct the analyzer processor 100 to proceed through the list of subzone records and to consider for the occupant-associated location only the subzone records included in the list.
Referring to Figure 26, as discussed above, block 902 of the flowchart 900 may direct the analyzer processor 100 to execute the flowchart 940 to determine a count of occupant-associated locations within each zone. Accordingly, once block 902 has been executed, the zone record 550 and the zone record 840 stored in the location 144 of the storage memory 104 shown in Figure 3 may be updated to each include an occupant-associated location count field with an updated count as shown in Figures 29 and 30.
In some embodiments, the counts determined at block 902 of occupant-associated locations within the zone may not accurately represent an expected number of occupants within the zone. For example, in some embodiments, the occupant-associated locations may be device locations, which represent locations of devices within the zone, and an expected number of occupants in the zone may be a function of but not equal to the number of devices detected within the zone. Accordingly, referring to Figure 26, in some embodiments, the flowchart 900 may continue at block 906, which directs the analyzer processor 100 to determine an occupant count for each zone as a function of the count of _
-38-occupant-associated locations.
In some embodiments, an expected number of occupants in the zone may be proportional to the number of devices detected within the zone. Accordingly, in some embodiments, block 906 may direct the analyzer processor 100 to scale the count of occupant-associated locations by a correction factor, the correction factor representing expected occupants per occupant-associated location.
For example, in some embodiments, for each device location determined to be in the zone, it may be expected that there are between about 0.7 and 1.3 occupants in the zone and block 906 may direct the analyzer processor 100 to scale the counts determined at block 902 by a correction factor between 0.7 and 1.3. For example, in some embodiments, block 906 may direct the analyzer processor 100 to scale the counts by a correction factor of about of 0.9.
In some embodiments, the counts determined at block 904 of occupant-associated locations within the zone may accurately represent an expected number of occupants within the zone and so block 906 may be omitted or a correction factor of 1.0 may be used.
In some embodiments, the value to be used as the correction factor may be dependent on the zone. In some embodiments, the value to be used as the correction factor may be dependent on a usage type associated with the zone.
For example, in some embodiments, it may be known from experimental data that a zone that is used as an open office can be expected to have between about 0.9 and 1.3 occupants per detected device location within the zone. In some embodiments, a zone that is used for an open office can be expected to have about 1.1 occupants per detected device location within the zone.
In contrast, in some embodiments, it may be known from experimental data that of.. ___ It Pt,. ARIA=44A=ONNW4.. t=WPoiffir.-,01.-.- = = == = =
- 1a-4160.1017AV- 4NieriMilega =5=======4 = *W. =====WWIAN,
-39-a zone that is used as a lecture room can be expected to have between about 0.7 and 1.1 occupants per detected device location within the zone. In particular, in some embodiments, a zone that is used as a lecture room can be expected to have about 0.9 occupants per detected device location within the zone.
Accordingly, in some embodiments, block 906 of the flowchart 900 shown in Figure 26 may direct the analyzer processor 100 shown in Figure 3 to determine the correction factors to be applied to the occupant-associated location counts based on a usage type associated with each zone. In some embodiments, block 906 may direct the analyzer processor 100 to, for each zone, read a usage type field included in the zone record representing the zone to determine the usage type and to read a correction factor table from memory to determine what value to set the correction factor to, based on the usage type. An exemplary correction factor table 1000 is shown in Figure 31 and includes a usage type column 1002 for storing various usage types and a correction factor column 1004 for storing correction factors, each of the correction factors associated with one of the usage types. The correction factor table 1000 may have been previously provided and stored in the location 146 of the storage memory 104 for example.
In some embodiments, block 906 may direct the analyzer processor 100 to read the usage type field 556 of the zone record 550 as shown in Figure 29 to determine that the usage type of the zone represented by the zone record 550 is "Lecture room". Block 906 may direct the analyzer processor 100 to retrieve the correction factor table 1000 shown in Figure 31 from the location 146 of the storage memory 104 and to look up the correction factor associated with the usage type of "Lecture room". Block 906 may direct the analyzer processor 100 to scale the occupant-associated location count for the zone, as determined previously at block 902 by the determined correction factor. For example, block 906 may direct the analyzer processor 100 to scale the count stored in the occupation-associated location count field 560 of the zone record 550 shown in , ..........
-40-Figure 29 by a correction factor of 0.9 and to update the zone record 550 to include an occupant count field 562 including the scaled value. Thus, in various embodiments, block 906 may direct the analyzer processor 100 to update the zone record 550 to include an occupant count field 562 set to 7.2 as shown in Figure 32.
In some embodiments, block 906 may also direct the analyzer processor 100 to update the zone record 550 to include a time counted field 564 and to set the time counted field to a present system time.
Block 906 may direct the analyzer processor 100 to scale an occupant-associated location count for each zone, to determine respective occupant counts and to store respective representations of the occupants counts in occupant count fields for each zone record.
In some embodiments, block 906 of the flowchart 900 shown in Figure 26 may direct the analyzer processor 100 shown in Figure 3 to apply functions other than or in addition to scaling to the count of occupant-associated locations to determine a representation of the expected occupant count. For example, in some embodiments, block 906 may direct the analyzer processor 100 to determine a representation of an expected count of occupants as equal to C*(x ¨
A), where C is a correction factor, A is a constant, and x is the count of occupant-associated locations for the zone as determined at block 902. In various embodiments, block 906 may direct the analyzer processor 100 to set the occupant count fields of the zone records to the representation of the expected count of occupants.
In some embodiments, the values for A and/or C may be provided by an administrator. In some embodiments, blocks of code included in the block 160 of the program memory 102 shown in Figure 3 may direct the analyzer processor ____________________________ ¨ = A 1Ø2.401=10101.1.,AM.
3 !, .-Atse.
-41-100 to set the values for A and C. For example, the blocks may direct the analyzer processor 100 to determine a minimum occupant-associated location count for a zone over a number of days and to set the value of A to that count. In some embodiments, the blocks may direct the analyzer processor 100 to determine the minimum occupant-associated location count for the past week, month, or year, for example. In some embodiments, this may provide a more accurate count of occupants based on locations, as it may help the system 10 ignore locations which are always in the zone, such as device locations for PC's or workstations, for example, which never leave the zone.
In some embodiments, blocks of code included in the block 160 of the program memory 102 shown in Figure 3 may direct the analyzer processor 100 to set the values for C and A such that the representation of an expected count of occupants, C*(x ¨ A), is a decimal number between 0 and 1. For example, in some embodiments, the blocks may direct the analyzer processor 100 to set the value for A as the minimum occupant-associated location count determined as described above and the blocks may set the value for C as equal to 1/(P-A) where P is a peak occupant-associated location count for a previous number of days. In various embodiments, assuming that the count of occupant-associated locations does not exceed the peak occupant-associated location count, the representation of the expected count may thus be a decimal number between 0 and 1. Setting the representation of the occupant count in the above described way such that the representation is a decimal number between 0 and 1 may be considered as normalizing the representation of the occupant count.
In various embodiments, normalizing a representation of the occupant count as described above, for example, may enable long term viability of data over time.
For example, in some embodiments, if the ratio of devices to person changes over time, due to a proliferation of devices, for example, the normalization may keep the data bounded for command thresholds set in the building management
-42-system 16.
Once block 906 of the flowchart 900 shown in Figure 226 has been executed, the values stored in the count fields of each of the zone records may act as representations of counts of occupants expected to be within each of the one or more zones and thus execution of block 206 of the flowchart 200 shown in Figure 4 may be complete. Accordingly, referring now to Figure 4, the analyzer processor 100 may then be directed to block 208, which directs the analyzer processor 100 to produce signals representing the one or more counts for causing the counts of occupants to be transmitted to the building management system 16.
In some embodiments, the building management system 16 may require specific inputs and/or communication protocols that the occupancy information analyzer = 14 is not configured to provide and so the occupancy information analyzer may be configured to transmit the counts of occupants to the gateway 18 shown in Figure 2 to cause the gateway 18 to transmit representations of the counts to the building management system 16.
Accordingly, in some embodiments block 208 may direct the analyzer processor 100 to retrieve for each of the zone records stored in memory, a count from the occupant count field of the zone record and to transmit the counts to the gateway 18. In some embodiments, block 208 may direct the analyzer processor 100 to transmit each of the counts in association with a subsystem identifier identifying a subsystem of the building management system that is associated with the zone.
In some embodiments, block 208 may direct the analyzer processor 100 to transmit an occupancy count message to the gateway 18. An exemplary occupancy count message in accordance with an embodiment is shown at 1050 in Figure 33. The occupancy count message 1050 includes a first count field 191,k Mit I = .44
-43-1052 for storing a representation of an expected count associated with a first zone, a first subsystem identifier field 1054 for storing an identifier of a subsystem associated with the first zone, a second count field 1056 for storing a representation of an expected count associated with a second zone, and a second subsystem identifier field 1058 for storing an identifier of a subsystem associated with the second zone. In various embodiments, the occupancy count message may include additional count fields and associated subsystem identifier fields for each of the zones stored in the location 144 of the storage memory 104.
Block 208 of the flowchart 200 shown in Figure 4 may direct the analyzer processor 100 shown in Figure 3 to set the count fields and associated subsystem identifier fields to values that correspond to the counts and subsystem identifiers included in each zone record stored in the location 144 of the storage memory 104. For example, block 208 may direct the analyzer processor to retrieve the zone record 550 as shown in Figure 32 from the location 144 of the storage memory 104 and to set the first count field 1052 to the value from the occupant count field 562 of the zone record 550 and to set the first subsystem identifier field 1054 to the value from the subsystem identifier field 558 of the zone record 550. Block 208 may similarly direct the analyzer processor 100 to set other count fields and associated subsystem identifier fields in the occupancy count message 1050 in accordance with each of the zone records stored in the location 144 of the storage memory 104.
Block 208 may direct the analyzer processor 100 to transmit signals representing the occupancy count message 1050 to the gateway 18 via the interface 124 of the I/O interface 112. The gateway 18 may be configured to receive the occupancy count message 1050 and to transmit a message to the building management system including representations of the counts and associating each count with a subsystem of the building management system in accordance with the subsystem identifiers. For example, in some embodiments, the gateway
-44-18 may communicate with the building management system using a building management system protocol such as, for example, BACnet and the gateway 18 may transmit a message including the counts wherein representations of the counts are ordered in the message in such a way that the building management system can determine which subsystem each of the counts are associated with.
The building management system 16 may control the environmental conditions of the zones based at least in part on the occupant counts received from the gateway. In various embodiments, variables may be defined by the building management system 16 with values equal to occupant counts for zones or sums of multiple zones. In some embodiments, building systems such as air handling units may be programmed to change behaviour when variable (occupant count) values exceed or drop below thresholds that may be set programmatically.
For example, in some embodiments, the building management system 16 may be configured to use the occupant counts to determine a command-on for ventilation systems and reduce the build-up of undesirable environmental gaseous pollutants such as total volatile organic compounds (TVOCs) and/or CO2. For example, for a zone such as a lecture hall, the building management system 16 may be configured to facilitate command-on during lecture periods when the lecture hall has greater than a threshold count of occupants and may be considered occupied. In some embodiments, this may facilitate controlling spaces by rules based on occupancy information instead of physical sensing information, such as passive infrared (PIR) or CO2 detection. Accordingly, in some embodiments, for example, use of occupancy data may remove a need for physical sensors in a building.
Displaying occupancy and zones In some embodiments, the occupancy information analyzer 14 shown in Figure 3 may be configured to produce signals for causing the display of the user interface -
-45-system 130 to display representations of the occupant-associated locations and the zones together. For example, in some embodiments, blocks of code included in the block 160 of the program memory 102 may direct the analyzer processor 100 to retrieve the device location records, plan data, zone records, subzone records, and point records from the locations 140, 142, and 144 of the storage memory 104 and to produce signals for causing the display of the user interface system 130 shown in Figure 2 to present the information included in these records in a display 1100 as shown in Figure 34.
Processing occupancy information In some embodiments, the occupancy information analyzer 14 may be configured to perform more general functions than those described above having regard to the flowchart 200 shown in Figure 4. For example, in some embodiments, the occupancy information analyzer 14 may be configured to facilitate occupancy information processing for a building. In such embodiments the block 160 of the program memory 102 shown in Figure 3 may include blocks of code as shown in the flowchart 1200 in Figure 35. The flowchart 1200 includes blocks 1202, 1204, and 1206 which may be generally similar to the blocks 202, 204, and 206 described above. However, the flowchart 1200 includes a block 208 which directs the analyzer processor 100 to produce signals representing the one or more counts of occupants within the zone for causing the one or more counts of occupants to be processed by an occupancy information processing system. In some embodiments, an occupancy processing system may be in communication with the occupancy information analyzer 14 via the I/O

interface and block 208 may direct the analyzer processor 100 to produce signals representing the counts for causing the counts to be transmitted to the occupancy processing system for processing. In some embodiments, the representations of expected counts of occupants may be used by the occupancy processing system for various applications, such as, for example, for space utilization analytics, risk management, fire evacuation and/or security
-46-applications.
Location detection In some embodiments, the system 10 shown in Figure 1 may be implemented generally similarly to the embodiment shown in Figure 2, but using a different location detecting system from that described above having regard to the location detecting system 12 shown in Figure 2. For example, in some embodiments, the location detecting system 12 may be configured to detect occupant-associated locations or locations of persons in or around a building using, for example, any or all of the following:
1. One or more standalone passive infrared sensors ("PIR"), which may be for example wall mounted.
2. One or more detectors for detecting passing BluetoothTM and/or INi-Fi enabled phones.
3. Video analytics using camera infrastructure.
4. Simple entry and exit counting systems.
5. Video, thermal, or beam interrupt counting methods for people counting using entry counts.
6. Thermal imaging.
Correction factors In some embodiments, a user may interact with the user input devices of the user interface system 130 shown in Figure 2 to enter a correction factor instead of a usage type to be associated with a zone. For example, in some embodiments, the user may use the user input devices to enter a correction factor into the usage type field 462 shown in Figure 8 or into a correction factor field displayed by the at least one display to the user and the user interface system 130 may generate and send a correction factor message to the occupancy information analyzer 14. An exemplary correction factor message is shown at 1240 in Figure 36 and includes a zone name field 1242 and a correction factor field 1244.
-47-Accordingly, in various embodiments, block 204 of the flowchart 200 shown in Figure 4 may include a block of codes which directs the analyzer processor 100 to receive signals representing the correction factor message from the user interface system 130 via the interface 124 of the I/O interface 112. Block 204 may direct the analyzer processor 100 to update the zone record 550 to include a correction factor field 566, as shown in Figure 37, set to the correction factor taken from the correction factor field 1244 of the correction factor message 1240.
Block 906 of the flowchart 900 shown in Figure 25 may direct the analyzer processor 100 to scale the count of occupant-associated locations determined at block 904 by the correction factor taken from the correction factor field 566 of the zone record 550 shown in Figure 37.
Continued execution In various embodiments, once the zones and subzones have been defined and the zone records, subzone records, and point records have been stored in the location 144 of the storage memory 104, the flowchart 200 shown in Figure 4 may continue to be executed. In such embodiments, block 204 may direct the analyzer processor 100 to receive the signals representing the one or more zones from memory by retrieving the zone records, subzone records, and point records from the location 144 of the storage memory.
In various embodiments, the continued execution of the flowchart 200 shown in Figure 4 may facilitate near real time updating of occupant counts transmitted to the building management system and/or near real time updating of occupancy information for display on the display 1100 shown in Figure 34. In some embodiments, with each execution of the flowchart 200, each of the zone records may be updated to include a further count field and associated time counted field.
In some embodiments, this may facilitate, by reviewing the count fields and associated time counted fields for the zones, the keeping of a historical record of . .
-48-occupant counts for each zone through time.
Various embodiments In some embodiments, separation of the functionality of the system 10 into different computers or systems may facilitate control of and access to information within the system. This may be particularly desirable in the system 10 where personal and/or confidential information may be managed. However, in some embodiments, the functionality of some or all of the location detecting system 12, the occupancy information analyzer 14, the gateway 18, the user interface system 130 and/or the building management system 16 may be provided by an integrated system or computer having a single processor, for example. By way of example only, in various embodiments, aspects of the user interface system 130 may be integrated with the occupancy information analyzer 14, aspects of the location detecting system 12 may be integrated with the occupancy information analyzer 14, aspects of the gateway 18 may be incorporated in the occupancy information analyzer 14, and/or aspects of the occupancy information analyzer 14, the gateway 18, and the building management system 16 may be integrated together as a single system or computer. In such embodiments, some of the blocks of code may be altered and/or omitted to facilitate the execution of the functionality of the processes described herein by one or more integrated system or server computer. In some embodiments, a system including such integrated devices may provide advantages such as, for example, reduction in implementation and/or operating costs.
While specific embodiments of the invention disclosed herein are, for exemplary purposes, directed to embodiments wherein the system 10 shown in Figure 2 processes occupancy information including exemplary zones and subzones, in various embodiments, the system 10 may be configured to process occupancy information with respect to more numerous zones than those disclosed herein, each including numerous subzones. For example, in various embodiments, the ______________________________________________________ l=
4.4sPie1101=01~4154.44Vor
-49-system 10 may be configured to process occupancy information for more than 500 zones, each including more than 10 subzones, and for 10s of thousands of occupant-associated locations. Generally, in various embodiments, the system described herein may be scaled to process occupancy information for any number of zones, subzones, and/or occupant-associated locations. In such embodiments, records, messages, and fields as described herein may be added and/or modified as necessary.
While specific embodiments of the invention have been described and illustrated, such embodiments should be considered illustrative of the invention only and not as limiting the invention as construed in accordance with the accompanying claims.

Claims (20)

CLAIMS:
1. A computer-implemented method of occupancy information processing for facilitating environmental control of a building, the method comprising:
receiving signals representing a plurality of occupant-associated locations, each of the plurality of occupant-associated locations associated with one of a plurality of occupants in or around the building;
receiving signals representing a zone of the building;
determining a count of occupants within the zone, said determining involving determining a count of the plurality of occupant-associated locations within the zone;
producing signals representing the count of occupants within the zone for causing the count of occupants to be transmitted to a building management system to cause the building management system to control at least one environmental condition of the zone based at least in part on the count of occupants within the zone.
2. The computer-implemented method of claim 1 wherein receiving signals representing the zone comprises receiving signals representing a plurality of subzones defining the zone and wherein determining the count of occupants within the zone comprises:
for each occupant-associated location of the plurality of occupant-associated locations:

comparing the occupant-associated location to one or more of the plurality of subzones to find a corresponding subzone within which the occupant-associated location is located; and when the corresponding subzone is found, stopping said comparing for the occupant-associated location and incrementing the count of the plurality of occupant-associated locations within the zone.
3. The computer-implemented method of claim 2 wherein at least one of the plurality of subzones overlaps another of the plurality of subzones such that an occupant-associated location may be within two or more subzones.
4. The computer-implemented method of any one of claims 1 to 3 wherein determining the count of occupants within the zone comprises scaling the count of occupant-associated locations within the zone by a correction factor, the correction factor representing expected occupants per occupant-associated location.
5. The computer-implemented method of claim 4 comprising receiving signals representing a usage type associated with the zone and setting the correction factor based on the usage type.
6. The computer-implemented method of claim 4 or 5 wherein setting the correction factor based on the usage type comprises setting the correction factor to between about 0.9 and 1.3 occupants per occupant-associated location when the usage type indicates that the zone is an open office.
7. The computer-implemented method of claim 6 wherein setting the correction factor based on the usage type comprises setting the correction factor to about 1.1 occupants per occupant-associated location when the usage type indicates that the zone is an open office.
8. The computer-implemented method of any one of claims 4 to 7 wherein setting the correction factor based on the usage type comprises setting the correction factor to between about 0.7 and 1.1 occupants per occupant-associated when the usage type indicates that the zone is a lecture room.
9. The computer-implemented method of claim 8 wherein setting the correction factor based on the usage type comprises setting the correction factor to about 0.9 occupants per occupant-associated when the usage type indicates that the zone is a lecture room.
10. The computer-implemented method of any one of claims 1 to 9 wherein the occupant-associated locations comprise device locations of devices, each of the devices associated with an occupant of the plurality of occupants.
11. The computer-implemented method of claim 10 wherein receiving the signals representing the plurality of occupant-associated locations comprises receiving wireless networking signals from each of the devices and determining the device locations based on strengths of the received wireless networking signals.
12. The computer-implemented method of any one of claims 1 to 11 wherein receiving the signals representing the zone of the building comprises receiving the signals from a user via a user interface.
13. The computer-implemented method of claim 12 wherein the user interface includes a graphical user interface and the method comprises producing signals for causing at least one display to display the graphical user interface.
14. The computer-implemented method of any one of claims 1 to 13 comprising receiving signals identifying a subsystem of the building management system that controls the at least one environmental condition of the zone and wherein producing signals representing the count of occupants within the zone comprises producing signals associating the count of occupants with the subsystem.
15. The computer-implemented method of any one of claims 1 to 14 wherein the zone is a first zone of a plurality of zones and wherein the method comprises:
determining, for each of the plurality of zones, a respective count of occupants within the zone; and producing signals representing the counts of occupants within the zones for causing the counts of occupants to be transmitted to the building management system.
16. The computer-implemented method of any one of claims 1 to 15 comprising controlling the at least one environmental condition of the zone based at least in part on the count of occupants within the zone.
17. A computer-implemented method comprising causing at least one processor to perform the method of any one of claims 1 to 16.
18. A system for facilitating monitoring of a first user of a plurality of users, the system comprising at least one processor configured to execute the method of any one of claims 1 to 16.
19. A system for occupancy information processing for facilitating environmental control of a building, the system comprising:
means for receiving signals representing a plurality of occupant-associated locations, each of the plurality of occupant-associated locations associated with one of a plurality of occupants in or around the building;
means for receiving signals representing a zone of the building;
means for determining a count of occupants within the zone, said determining involving determining a count of the plurality of occupant-associated locations within the zone;
means for producing signals representing the count of occupants within the zone for causing the count of occupants to be transmitted to a building management system to cause the building management system to control at least one environmental condition of the zone based at least in part on the count of occupants within the zone.
20. A computer readable medium having stored thereon codes which when executed by at least one processor cause the at least one processor to perform the method of any one of claims 1 to 16.
CA2959365A 2017-02-28 2017-02-28 Occupancy information processing for facilitating building management Abandoned CA2959365A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CA2959365A CA2959365A1 (en) 2017-02-28 2017-02-28 Occupancy information processing for facilitating building management

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CA2959365A CA2959365A1 (en) 2017-02-28 2017-02-28 Occupancy information processing for facilitating building management

Publications (1)

Publication Number Publication Date
CA2959365A1 true CA2959365A1 (en) 2018-08-28

Family

ID=63354950

Family Applications (1)

Application Number Title Priority Date Filing Date
CA2959365A Abandoned CA2959365A1 (en) 2017-02-28 2017-02-28 Occupancy information processing for facilitating building management

Country Status (1)

Country Link
CA (1) CA2959365A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210383556A1 (en) * 2018-08-24 2021-12-09 Lutron Technology Company Llc Occupant counting device

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210383556A1 (en) * 2018-08-24 2021-12-09 Lutron Technology Company Llc Occupant counting device
US11669981B2 (en) * 2018-08-24 2023-06-06 Lutron Technology Company Llc Occupant counting device
US20230260137A1 (en) * 2018-08-24 2023-08-17 Lutron Technology Company Llc Occupant counting device
US11935251B2 (en) * 2018-08-24 2024-03-19 Lutron Technology Company Llc Occupant counting device

Similar Documents

Publication Publication Date Title
US11163275B2 (en) Collaborative adjustment of resources within a managed environment
US20160132614A1 (en) Contextual indexing in a building automation system
US11016648B2 (en) Systems and methods for entity visualization and management with an entity node editor
JP5335043B2 (en) Equipment control device and equipment system
WO2009149084A2 (en) Graphical management of building devices
US20180285831A1 (en) Automatic work order generation for a building management system
US20200365004A1 (en) Translating building automation events into mobile notifications
WO2017054705A1 (en) Physical location-based terminal monitoring method and system in local area network
US20230366576A1 (en) Air conditioning management system
CN106354105B (en) System and method for controlling device and facility resources based on location
JP2009198059A (en) Apparatus management system and apparatus management program
US11473803B2 (en) Inbuilt programming tool for use by non-programmers to add intelligence to a building automation system
JP2015176172A (en) Apparatus control device in common space, apparatus control method, program, recording medium storing program, and control method using portable information terminal
CA2959365A1 (en) Occupancy information processing for facilitating building management
US10129218B2 (en) Method and system for receiving, processing, storing and sending data of internet connected devices
CN112413826A (en) Device configuration method and device, electronic device and storage medium
US20220390913A1 (en) Building management system with intelligent visualization
US20190063779A1 (en) Air conditioning management device and program
US10282527B2 (en) Information processing apparatus, information processing method, program, storage medium, and password entry apparatus
CN115668161A (en) Construction site online monitoring equipment, control unit thereof and construction site online monitoring method
JP2009199252A (en) Equipment management system and equipment management program
US20240073640A1 (en) Identifying a location of a facility unit
US20240142930A1 (en) Building management system with intelligent visualization for occupancy and energy usage integration
JP7339558B2 (en) Air conditioning control system
WO2019016997A1 (en) Behavior characteristic quantity analysis system and behavior characteristic quantity analysis method

Legal Events

Date Code Title Description
FZDE Discontinued

Effective date: 20230530