The disclosed subject matter relates to wireless occupancy sensors and methods for using the same. More particularly, the disclosed subject matter relates to wireless occupancy sensors that can be used to provide privacy-sensitive methods, systems, and media for detecting the presence of a vehicle and generating and/or presenting real-time parking information.
Vehicle drivers frequently spend a lot of time searching for parking spaces. For example, this search for parking spaces can include searching for on-street parking at a curb, which wastes time, creates congestion, unnecessarily consumes fuel or battery life, and/or creates vehicle emissions as such drivers continuously search for the perfect space at or near their destination. In another example, this search for parking spaces can include searching for off-street parking in a parking garage or a parking lot, which occupies valuable real estate that might otherwise be used to provide additional housing options. In some instances, the need for a parking garage or a parking lot may contribute to higher rent demands.
A driver may want to access a map or list of available parking spots in a particular location. However, this can be difficult to collate. Moreover, many cities are working toward a future with much less parking than is typically available today.
Although parking sensor devices have been developed in an attempt to solve these problems, such parking sensor devices tend to be overly expensive, unnecessarily invasive, and easily broken.
Accordingly, it is desirable to provide new wireless occupancy sensors and methods for using the same.
Wireless occupancy sensors and methods for using the same are provided.
In accordance with some embodiments of the disclosed subject matter, an occupancy sensor is provided, the occupancy sensor comprising: a housing that includes a window positioned at a top portion of the housing; a battery at a lower portion of the housing; a first magnetometer that detects changes in a magnetic field when a vehicle moves over the first magnetometer; an optical sensor that detects one or more objects in a field of view of the optical sensor through the window; a transmitter for transmitting sensor data to a gateway device, and a processor that controls the first magnetometer, the optical sensor, and the transmitter.
In some embodiments, the housing includes a first set of exterior threads on a body portion of the housing that match a second set of interior threads on a socket configured to be positioned within an opening of a surface.
In some embodiments, the first magnetometer is a low-power magnetometer, and wherein the optical sensor is woken in response to the first magnetometer detecting a change in a magnetic field.
In some embodiments, the occupancy sensor further comprises a second magnetometer.
In some embodiments, the optical sensor is an infrared sensor. In some embodiments, the optical sensor is a time-of-flight sensor.
In some embodiments, the transmitter and the processor are mounted on a first printed circuit board and the time-of-flight sensor is mounted on a second printed circuit board that is separate from the first printed circuit board and wherein the second printed circuit board mounted at the top portion of the housing. In some embodiments, the occupancy sensor further comprises a cable that connects the second printed circuit board to the first printed circuit board. In some embodiments, the optical sensor is a pulse doppler radar sensor. In some embodiments, the optical sensor is an infrared pulse doppler radar sensor.
In some embodiments, the transmitter is a wireless transmitter and further comprising an antenna coupled to an output of the transmitter.
In some embodiments, the antenna is a helical-shaped antenna that extends vertically through a body portion of the housing.
In some embodiments, the transmitter is configured to transmit sensor data over a 915 MHz radio protocol to a gateway device.
In some embodiments, the occupancy sensor further comprises a humidity sensor to indicate whether water has leaked into the occupancy sensor.
In some embodiments, the occupancy sensor further comprises a feedback indicator. In some embodiments, the feedback indicator is a light emitting diode.
In some embodiments, the housing includes at least one protrusion on an exterior surface of a body portion of the housing that is configured to engage with a socket under the pressure of a spring.
In some embodiments, the occupancy sensor further comprises an actuator that is configured to change a position of the occupancy sensor within a socket. In some embodiments, the occupancy sensor further comprises a gasket configured to seal an interior space of a socket when the occupancy sensor is fully inserted into the socket.
In accordance with some embodiments of the disclosed subject matter, a tool for installing occupancy sensor devices is provided, the tool comprising: a cylindrical body having a first diameter and having a first set of exterior threads that complement a second set of interior threads of an assembly for inserting an occupancy sensor device; a cover portion that is formed on the cylindrical body, wherein the cover portion has a second diameter that is greater than the first diameter of the cylindrical body; and a handle portion that is formed on the cover portion, wherein the handle portion is configured to allow the tool to be separated from the assembly for inserting the occupancy sensor device.
In some embodiments, the cover portion is configured to align the assembly for inserting the occupancy sensor device with a surface of a pavement.
In some embodiments, the cover portion is configured to position the assembly at a particular depth within an opening formed in a pavement.
In some embodiments, the particular depth of the assembly causes a top surface of the occupancy sensor device to be at a level position in comparison with a surface of the pavement.
In some embodiments, the particular depth of the assembly causes a top surface of the occupancy sensor device to be at a higher position in comparison with a surface of the pavement.
In some embodiments, the first set of exterior threads are formed on a portion of the cylindrical body.
In some embodiments, the cover portion includes a plurality of holes.
In some embodiments, the cover portion includes a plurality of overflow holes that are positioned on the cover portion based on dimensions of an opening in the pavement.
In accordance with some embodiments of the disclosed subject matter, a method for installing occupancy sensors is provided, the method comprising: forming an opening within a pavement; inserting a cap assembly into the opening of the pavement, wherein the cap assembly is capable of receiving an occupancy sensor device; positioning the occupancy sensor device within the cap assembly, wherein the occupancy sensor device comprises a housing that complements the positioning of the occupancy sensor device within the cap assembly, and wherein the housing encloses a battery that provides power to the occupancy sensor device and a printed circuit board substrate, the printed circuit board substrate including electronic circuitry, the electronic circuitry configured to detect whether a vehicle is positioned over the occupancy sensor device, the electronic circuitry including a plurality of integrated circuits coupled to the printed circuit board substrate, and the plurality of integrated circuits including (i) a magnetometer that detects changes in a magnetic field when a vehicle moves over the magnetometer, (ii) an optical sensor that detects one or more objects in a field of view of the optical sensor through a window positioned at a top portion of the housing, (iii) a wireless communication chip for transmitting sensor data to a gateway device; and (iv) a microcontroller that controls the magnetometer, the optical sensor, and the wireless communication chip; and activating the occupancy sensor device.
In some embodiments, the methods further comprise drilling into the pavement to create the opening of the pavement.
In some embodiments, the opening formed in the pavement is a cylindrical opening that is less than about 50 millimeters in depth and less than about 50 millimeters in diameter.
In some embodiments, the methods further comprise providing an adhesive in the opening of the pavement, wherein the adhesive causes the cap assembly to be at a fixed position within the opening after allowing the adhesive to cure.
In some embodiments, the cap assembly is inserted into the opening of the pavement using a removable installation tool that aligns the cap assembly with a surface of the pavement.
In some embodiments, the cap assembly has a first set of interior threads and wherein the removable installation tool has a second set of exterior threads that complement the first set of interior threads of the cap assembly.
In some embodiments, the removable installation tool causes the cap assembly to be at a particular depth from the surface of the opening.
In some embodiments, the cap assembly has a first set of interior threads, wherein the housing of the occupancy sensor has a second set of exterior threads that complement the first set of interior threads of the cap assembly, and wherein the occupancy sensor device is positioned within the cap assembly by using the second set of exterior threads to thread the occupancy sensor into the first set of interior threads of the cap assembly.
In some embodiments, the occupancy sensor device is activated using a magnetometer tool.
In some embodiments, the housing of the occupancy sensor device has a beveled edge and wherein, upon positioning the occupancy sensor device within the cap assembly, the beveled edge creates a gap between a surface of the pavement and the occupancy sensor device.
In some embodiments, the method further comprises applying a sealing component into the gap between the surface of the pavement and the occupancy sensor device.
In some embodiments, the sealing component is a low viscosity rubber. In some embodiments, upon positioning the occupancy sensor device within the cap assembly, a top surface of the occupancy sensor device is at a level position in comparison with a surface of the pavement.
In some embodiments, upon positioning the occupancy sensor device within the cap assembly, a top surface of the occupancy sensor device is at a higher position in comparison with a surface of the pavement.
In some embodiments, the occupancy sensor device includes a spring component that allows the occupancy sensor device to be positioned within the cap assembly such that the top surface of the occupancy sensor device is changed from the higher position to a level position in comparison with the surface of the pavement.
In some embodiments, the cap assembly has a first set of interior threads, wherein the housing of the occupancy sensor has a spring component and a second set of exterior threads that complement the first set of interior threads of the cap assembly, wherein the occupancy sensor device is positioned within the cap assembly by using the second set of exterior threads to thread the occupancy sensor into the first set of interior threads of the cap assembly, and wherein, upon removing the second set of exterior threads from the first set of interior threads of the cap assembly, the spring component changes a position of the occupancy sensor device such that the top surface of the occupancy sensor device is changed from being at a level position in comparison with the surface of the pavement to a higher position.
In some embodiments, the occupancy sensor device includes an actuator that is configured to change a position of the occupancy sensor device within the cap assembly.
Various objects, features, and advantages of the disclosed subject matter can be more fully appreciated with reference to the following detailed description of the disclosed subject matter when considered in connection with the following drawings, in which like reference numerals identify like elements.
In accordance with various embodiments, wireless occupancy sensors and methods for using the same are provided. In some embodiments, wireless occupancy sensors can be used to provide privacy-sensitive mechanisms (which can include methods, systems, and media) for detecting the presence of a vehicle and generating and/or presenting real-time parking information.
In some embodiments, the mechanisms described herein can include vehicle sensors that can determine whether a vehicle (e.g., a car, a truck, a motorcycle, etc.) is positioned over the vehicle sensor. In some embodiments, as described below in connection with
In some embodiments, data from the vehicle sensor can be stored in any suitable manner. For example, in some embodiments, a group of vehicle sensors can each transmit (e.g., via a radio frequency link, and/or in any other suitable manner) sensor data to a gateway device. In some such embodiments, the gateway device can be located at any suitable location. For example, in some embodiments, the gateway device can be located in a parking lot and can receive data from all of the vehicle sensors located in the parking lot. In some embodiments, the gateway device can then transmit (e.g., via cellular uplink, and/or in any other suitable manner) the data to a server that collects parking information from multiple parking lots or garages.
In some embodiments, as described below in connection with
In some embodiments, as shown in and described below in connection with
It should be noted that the wireless occupancy sensors described herein can be used in any suitable application. For example, although the embodiments described herein generally describe the wireless occupancy sensors as parking sensors to determine whether a vehicle is currently parked in a particular spot, this is merely illustrative. The wireless occupancy sensors can be used to detect the number of vehicles that are currently parked in a parking lot and can be used to dynamically set prices for parking in the parking lot based on current availability (e.g., such that the price is relatively lower in instances in which the current availability is greater than a predetermined availability threshold and such that the price is relatively higher in instances in which the current availability is below a predetermined availability threshold). In another example, the wireless occupancy sensors can be configured at a traffic intersection to control a traffic light. In yet another example, the wireless occupancy sensors can be used to dynamically route vehicles to curbside parking or drop off spots (e.g., upon detecting the parking area as being available, the parking area can be reserved for a vehicle that is making a delivery, picking up or dropping off a passenger, etc.). In continuing this example, such a vehicle can receive dynamic directions to a currently available parking spot based on current occupancy as detected by the wireless occupancy sensors.
These and other features of the wireless occupancy sensors are further described in connection with
Turning to
As shown in
In some embodiments, vehicle sensor 102 can detect a vehicle (e.g., a car, a truck, a motorcycle, and/or any other suitable type of vehicle) over vehicle sensor 102 in any suitable manner. For example, in some embodiments, vehicle sensor 102 can detect a car using an optical sensor and/or a magnetometer, as discussed below in more detail in connection with
Turning to
As illustrated in
Note that, in some embodiments, vehicle sensor 102 can transmit information to gateway device 106 at any suitable time point(s). For example, in some embodiments, vehicle sensor 102 can be configured to transmit information to gateway device 106 in response to determining, based on readings from the magnetometer and/or the optical sensor, that a change in a parking status of the parking spot corresponding to vehicle sensor 102 has occurred (e.g., that a car has parked in the parking spot when at a previous time point no car was parked, that a car is no longer parked in a previously occupied parking spot, and/or any other suitable change in parking status). As another example, in some embodiments, vehicle sensor 102 can be configured to transmit information to gateway device 106 at any suitable predetermined frequency (e.g., once per minute, once per five minutes, once per ten minutes, and/or any other suitable frequency). As a more particular example, in some embodiments, vehicle sensor 102 can be configured to transmit information to gateway device 106 at a first predetermined frequency (e.g., once per five minutes, and/or any other suitable frequency) during a first time of day (e.g., between 7 am and 7 pm, on weekdays between 9 am and 5 pm, on weekends between 7 pm and midnight, and/or any other suitable time of day), and at a second predetermined frequency (e.g., once per hour, and/or any other suitable frequency) during a second time of day (e.g., between midnight and 8 am, on weekdays between 8 pm and 6 am, and/or any other suitable time of day).
In some embodiments, gateway device 106 can be any suitable device for receiving information from any suitable number of vehicle sensors (e.g., ten, twenty, one hundred, one thousand, and/or any other suitable number), and forwarding the received information to a server 108. For example, in some embodiments, gateway device 106 can receive data from a group of vehicle sensors located on the same level as gateway device 106 of a parking garage. As another example, in some embodiments, gateway device 106 can receive data from a group of vehicle sensors within a predetermined proximity to gateway device 106 (e.g., within 500 feet, within 2000 feet, and/or any other suitable predetermined proximity). Note that, in some embodiments, gateway device 106 can have any suitable power supply. For example, in some embodiments, gateway device 106 can be solar-powered, with solar panels located at any suitable position(s) on gateway device 106. As another example, in some embodiments, gateway device 106 can have any suitable type of battery (e.g., a replaceable battery, a rechargeable battery, and/or any other suitable type of battery).
In some embodiments, gateway device 106 can forward the information received from vehicle sensor 102 to server 108 in any suitable manner. For example, in some embodiments, gateway device 106 can forward the information via a cellular uplink. In some embodiments, gateway device 106 can transmit the information to server 108 using any suitable data transmission protocol, such as User Datagram Protocol (UDP), Hypertext Transfer Protocol (HTTP), HTTPS, MQ Telemetry Support (MQTT), and/or any other suitable protocol.
In some embodiments, server 108 can be any suitable server for collecting information from multiple vehicle sensors in different locations and providing any suitable parking information. For example, as shown in and discussed below in connection with
Turning to
In some embodiments, microcontroller 202 can execute any suitable instructions or computer programs associated with the vehicle sensor. For example, in some embodiments, microcontroller 202 can execute any suitable instructions for collecting and/or or storing readings from magnetometer(s) 206, collecting and/or storing readings from optical sensor 208, transmitting readings to a gateway device via RF interface 210, updating firmware on microcontroller 202 (e.g., using programming connector 214, and/or in any other suitable manner), and/or perform any other suitable function(s). As another example, in some embodiments, microcontroller 202 can encrypt messages transmitted to a gateway device using any suitable encryption protocol(s). In some embodiments, any suitable encryption keys can be stored in memory 203 or in a memory of microcontroller 202. In some embodiments, microcontroller 202 can execute instructions using any suitable computer language, such as C, C++, Java, Python, Go, and/or any other suitable computer language.
In some embodiments, memory 203 can be any suitable memory and/or storage for storing programs, data, and/or any other suitable information in some embodiments. For example, memory 203 can include random access memory, read-only memory, flash memory, hard disk storage, optical media, and/or any other suitable memory.
In some embodiments, battery 204 can be any suitable type of battery that serves as a power source for the vehicle sensor. For example, in some embodiments, battery 204 can be a non-replaceable battery. As another example, in some embodiments, battery 204 can be a replaceable battery. Note that, in some embodiments, battery 204 can have any suitable characteristics such that the battery can provide any suitable voltage (e.g., between 2.5 V and 3.6 V, and/or any other suitable voltage) over its intended lifetime. Additionally, note that, in some embodiments, battery 204 can have any suitable characteristics such that battery 204 can have any suitable intended battery life (e.g., five years, ten years, fifteen years, and/or any other suitable intended battery life). Also note that, in some embodiments, battery 204 can be a rechargeable battery, where the battery may be charged using solar power or by harvesting other available power sources in-situ. For example, the vehicle sensor can include solar panels located at any suitable position(s) on the vehicle sensor in which power can be converted and/or otherwise transmitted from one or more solar panels to battery 204 via one or more electrical connectors (e.g., wires, cables, and/or any other suitable type of electrical connectors).
In some embodiments, remaining charge and/or battery life of battery 204 can be indicated in any suitable manner. In some embodiments, microcontroller 202 can indicate battery life of battery 204. For example, in some embodiments, microcontroller 202 can sample the voltage on battery 204 using an internal or external analog to digital converter. In another example, in some embodiments, microcontroller 202 can first sample the voltage on battery 204 and then compare the voltage to a threshold. Alternatively, in some embodiments, the battery voltage can be compared to a threshold using a comparator. Based on the comparison of the battery voltage to the threshold (whether performed digitally or based on analog signals), the microcontroller can determine whether the battery life is OK or low. In some embodiments, vehicle sensor 200 can transmit a signal to gateway 106 indicating battery life of battery 204. Note that as discussed in connection with
In some embodiments, magnetometer(s) 206 can be any suitable sensor that senses a change in a magnetic field. For example, in some embodiments, magnetometer(s) 206 can be a magnetometer that detects a change in a magnetic field in response to an object being placed over and/or in proximity to magnetometer(s) 206, such as a car or other vehicle. Note that, in some embodiments, magnetometer(s) 206 can be any suitable type of magnetometer that measure a magnetic field along any suitable vector (e.g., any suitable (X, Y, Z) vector). In some embodiments, magnetometer(s) 206 can transmit readings to microcontroller 202 via a serial interface, as shown in
In a more particular example, one or more of magnetometer(s) 206 can be a low-power magnetometer that is positioned to detect whether a curb space or a parking space is being occupied by a vehicle.
In some embodiments, optical sensor 208 can include any suitable components. For example, in some embodiments, optical sensor 208 can include a light source 211 and a light sensor 213. In some embodiments, the amount of reflected light measured by light sensor 213 can indicate whether or not an object (e.g., a car) is positioned over the vehicle sensor. In some embodiments, optical sensor 208 can measure time-of-flight of photos transmitted and detected by the optical sensor to determine the distance between the sensor and one or more objects (e.g., debris) positioned over the vehicle sensor. In some embodiments, to measure time-of-flight, optical sensor 208 can be any suitable time-of-flight sensor, such as part VL53L3CXV0DH/1 available from STMicroelectronics of Geneva, Switzerland.
In some embodiments, light source 211 can be an LED, laser and/or any other suitable light source. In some embodiments, light source can emit light in any suitable wavelength (e.g., infrared light, visible light, and/or any other suitable wavelength). Note that, in some embodiments, the emitted light can be of any suitable waveform, e.g., pulses of light, a constant emission at a particular wavelength, and/or any other suitable type of emitted light. In some embodiments, light sensor 213 can be a photodiode, avalanche detector, photo-multiplier tube, photon counting detector, and/or any other suitable detector. In some embodiments, light sensor can be sensitive to wavelengths of light emitted by light source 211 and/or any other suitable wavelength.
In some embodiments, optical sensor 208 can include any other suitable components, such as a driver 209, filter, an amplifier, and/or any other suitable components. As shown in
In some embodiments, the vehicle sensor can make pulsed Doppler radar measurements in order to determine the distance between the vehicle sensor and an object above the sensor. For example, the vehicle sensor can include a pulsed coherent radar sensor, such as part A111-001-T&R available from Acconeer AB.
Note that, in some embodiments, a measurement using optical sensor 208 can be triggered based on a reading from one or more of magnetometer(s) 206. For example, in some embodiments, in response to detecting a change in a magnetic field based on a reading from one or more of magnetometer(s) 206, microcontroller 202 can trigger or otherwise activate optical sensor 208. Note that, in some embodiments, when optical sensor 208 is a time-of-flight sensor, microcontroller 202 can trigger or otherwise activate a time-of-flight measurement. In a more particular example, one or more of magnetometer(s) 206 can be a low-power magnetometer that is positioned to detect whether a curb space or a parking space is being occupied by a vehicle, where, in response to detecting that a curb space or a parking space may be occupied by a vehicle based on a particular change in magnetic field, one or more of magnetometer(s) 206 and/or microcontroller 202 can transmit an instruction to turn on, wake up, or otherwise activate optical sensor 208, which can then verify usage of the curb space or parking space by the vehicle.
In some embodiments, a second of the one or more magnetometer(s) 206 can be used instead of or in addition to optical sensor 208 confirm occupancy. For example, the second of the one or more magnetometer(s) 206 can be oriented at any angle relative to a first of the one or more magnetometer(s) 206 and can sample any suitable vector (e.g., any suitable (X, Y, Z) vector). As a particular example, the second of the one or more magnetometer(s) 206 can measure a magnetic field along a vector which is +45° relative to the first of the one or more magnetometer(s) 206, or any other suitable angle. In another example, the second of the one or more magnetometer(s) 206 can take a more sensitive measurement than the first of the one or more magnetometer(s) 206, which can be figured to take low-power magnetometer measurements.
This can, for example, allow the wireless occupancy sensor to have a low power draw in which a low-power magnetometer is used to detect changes in magnetic field and activating a higher power consuming sensor (e.g., optical sensor 208 or a second magnetometer 206) upon the change in the magnetic field being greater than a particular threshold value or meeting predetermined criteria.
In some embodiments, RF interface 210 can be used to transmit information from the vehicle sensor to a gateway device using any suitable radio transmission protocol and using any suitable frequency. For example, in some embodiments, RF interface 210 can include any suitable encoder, transmitter, transceiver, and/or any other suitable components. In some embodiments, RF interface 210 can communicate with microcontroller 202 via an SPI interface, as shown.
In some embodiments, debug interface 212 can be used to debug any suitable functionality of the vehicle sensor.
In some embodiments, antenna 216 can be any suitable antenna for use with RF interface 210.
In some embodiments, humidity sensor 218 can be any suitable humidity sensor. In some embodiments, humidity sensor 218 can be an integrated circuit which can include any suitable sensors. For example, in some embodiments, humidity sensor 218 can integrate a humidity sensor, temperature sensor, pressure sensor, and/or any other suitable sensors into a single sensor package. In some embodiments, humidity sensor 218 can be part number BME 280 available from Bosch Sensortec GmbH of Reutlingen, Germany. In some embodiments, humidity sensor 218 can transmit humidity, temperature, pressure, and/or any other suitable readings to microcontroller 202 via a serial interface, as shown in
In some embodiments, feedback indicator 220 can indicate the status of vehicle sensor 200 through any suitable mechanism. In some embodiments, feedback indicator 220 can include can a light emitting diode (LED) and/or any suitable light source of any suitable color light. In some embodiments, an LED of feedback indicator 220 can be visible on a top portion or through a window of vehicle sensor 200. In some embodiments, an LED of feedback indicator 220 can indicate a status of vehicle sensor 200 in any suitable manner. For example, in some embodiments, an LED of feedback indicator 220 can indicate status by being on, off, and/or blinking at any suitable frequency for any suitable duty cycle. Additionally or alternatively, any suitable one or more blinking patterns can indicate one or more of a pairing mode, a wake-up state, restarting, an update mode, an error state, and/or any other suitable device status. Similarly, an always-on or always-off mode of an LED on feedback indicator 220 can indicate a normally functioning vehicle sensor 200 and/or any other suitable device status.
In some embodiments, feedback indicator 220 can include a display that is visible on the top of the vehicle sensor (e.g., through a window of the vehicle sensor). The display can present any suitable status information (e.g., as described above).
In some embodiments, feedback indicator 220 can include a sound source (such as a piezo speaker) that produces sounds to indicate status. For example, in some embodiments, the sounds source could generate tones in the same way that an LED could present light to indicate status as described above.
In some embodiments, the vehicle sensor can be installed at a parking space and/or any other suitable location using any suitable approach. For example, a vehicle sensor can be installed at a central point of a parking spot by applying an epoxy adhesive to a rear portion of the vehicle sensor. In another example, a vehicle sensor can be temporarily installed at a particular portion of a parking spot by positioning a butyl pad between a rear portion of the vehicle sensor and a particular point within a parking spot. In yet another example, a vehicle sensor can be installed on the curb portion of a street that permits parking by applying an adhesive to a rear portion of the vehicle sensor and positioning the vehicle sensor on a desired portion of the curb.
Turning to
Process 300 can begin at 302 by receiving, at a server from a gateway device, data from a vehicle sensor communicatively coupled to the gateway device. As shown in and described above in connection with
Note that, in some embodiments, data received from a particular vehicle sensor can be associated with an identifier of a particular parking spot the vehicle sensor is located at. In some embodiments, the identifier can additionally indicate a particular parking lot or parking garage the vehicle sensor is located at. For example, in some embodiments, the identifier can include a parking lot identifier (e.g., “SW Corner of Street 1/Avenue 1,” and/or any other lot or garage identifier) and a parking spot identifier (e.g., “#314,” “#512,” and/or any other suitable parking spot identifier). In instances in which the parking spot is a curbside spot along a street, the identifier can indicate the block the parking spot is located on by identifying one or more streets that define the block as well as a side of the street (e.g., the north side, the south side, the east side, the west side, and/or any other suitable side) the parking spot is located on.
Note that, in some embodiments, process 300 can perform any suitable verification in response to receiving a message from a gateway device. For example, in some embodiments, process 300 can verify or validate that the message was not corrupted in transit in any suitable manner. Additionally, note that, in some embodiments, process 300 can log the message in any suitable manner. For example, in some embodiments, process 300 can store the received message in any suitable database. As another example, in some embodiments, process 300 can store received sensor readings in any suitable cache. Note that, in some embodiments, stored messages and/or data can be accessed at any suitable time for debugging.
Additionally, note that, in instances in which the data received from the gateway device is encrypted in any manner (e.g., encrypted by the vehicle sensor as described above in connection with
In some embodiments, the data can be received by the server in any suitable manner. For example, in some embodiments, the data can be received by an event receiver executing on the server that receives a message that includes the data. Continuing with this example, in some embodiments, the event receiver can, in response to receiving a message from a gateway device, cause additional blocks of process 300 to be executed, as described below.
At 304, process 300 can determine whether a vehicle (e.g., a car, a truck, a motorcycle, etc.) is positioned over the vehicle sensor based on the data. In some embodiments, process 300 can determine whether a vehicle is parked over the vehicle sensor using any suitable technique(s). For example, in some embodiments, process 300 can determine whether a vehicle is positioned over the vehicle sensor using optical reflectivity data that indicates an amount of reflected light. As a more particular example, in some embodiments, process 300 can determine that a vehicle is positioned over the vehicle sensor in response to determining that more light is reflected than a baseline amount of reflected light at a time when no vehicle is positioned over the vehicle sensor. As a specific example, in some embodiments, process 300 can determine that a vehicle is positioned over the vehicle sensor in response to determining that the amount of reflected light exceeds a predetermined threshold.
Note that, in some embodiments, the gateway device can determine whether a vehicle is positioned over the vehicle sensor. In some such embodiments, rather than receiving data from the vehicle sensor that is forwarded by the gateway device to the server, the server can receive information indicating the determination by the gateway device of whether a vehicle is positioned over the vehicle sensor.
At 306, process 300 can update a parking database based on the determination. For example, in some embodiments, process 300 can use an identifier included in the data received at 302 as a database key to identify the parking spot in the parking database. Continuing with this example, process 300 can then update the database using the determination from 304. As a more particular example, in response to determining that a vehicle is present in the parking spot, process 300 can update the database to indicate that the parking spot is currently occupied. As another more particular example, in an instance in which the determination at 304 is that there is no vehicle present, and in which the database previously indicated that the parking spot had been occupied, process 300 can update the database to indicate that the parking spot is currently unoccupied. Note that, in some embodiments, process 300 can update the database in connection with a timestamp that indicates a time at which the data was collected by the vehicle sensor. In some embodiments, the timestamp can be used for any suitable function(s), such as to determine whether a vehicle has been parked in the parking spot for longer than is allowed, to determine an average duration of time vehicles park in particular parking lots, and/or for any other suitable information.
Note that, in some embodiments, the parking database can store any suitable information about parking lots and/or individual parking spots. For example, in some embodiments, the parking database can store information about an individual parking spot, such as a time limit available for that parking spot, whether the parking spot is reserved for a particular group of people or a particular activity (e.g., whether the parking spot is a handicapped spot, a parking spot reserved for a quick pick-up in a store, a parking spot reserved for deliveries, and/or any other suitable type of reserved spot), whether the parking spot has a station for charging electric vehicles, and/or any other suitable information. As another example, in some embodiments, the parking database can store information about the parking lot or garage the parking spot is located in, such as a total number of parking spots in the lot or garage, a total number of a particular type of parking spot (e.g., handicapped-reserved spots, electrical vehicle charging spots, and/or any other suitable type of parking spot).
Additionally, note that, in instances in which a particular parking spot is associated with any particular criteria for parking, for example, that a particular fee must be paid, that parking is restricted to a predetermined number of hours (e.g., two hours, five hours, and/or any other suitable number of hours), process 300 can determine, via the parking database, whether a vehicle currently occupying a parking spot is in compliance with the criteria. For example, in an instance in which a parking spot may only be occupied for two hours, process 300 can determine whether a vehicle currently occupying the parking spot has been parked for more than two hours. In some embodiments, process 300 can transmit a notification to any suitable entity in response to determining that a vehicle does not meet criteria associated with the parking spot, such as to a parking enforcement agency, an administrator of the parking lot or garage the parking spot is located in, and/or to any other suitable entity.
At 308, process 300 can receive, from a user device, a request to present parking information. In some embodiments, the request can be from a user device associated with any suitable user. For example, in some embodiments, the request can be from a user who wants to find a parking space. As a more particular example, in some embodiments, the request can be from a user who wants to view user interfaces that show a number of available parking spaces in a particular parking lot or garage, a number of available parking spaces of a particular type (e.g., handicapped-reserved spots, reserved for deliveries, equipped with electrical vehicle charging ports, and/or any other suitable type of parking spot) available in a particular parking lot or garage, and/or any other suitable parking information. As another example, in some embodiments, the request can be from a user who wants to view or analyze parking metrics in a geographical region, such as an administrator of a parking agency, an administrator at an urban planning agency, and/or any other suitable type of user. In some embodiments, the request from the user device can be via a particular application executing on the user device (e.g., an application for finding a parking space, and/or any other suitable type of application). In some embodiments, the request from the user device can be via a website presented in a browser of the user device (e.g., a website for presenting parking metrics or analysis, a website for finding a parking space, and/or any other suitable type of website).
At 310, process 300 can cause a user interface to be presented on the user device that presents the requested parking information. Note that, in some embodiments, information presented in the user interface can be retrieved from the parking database described above in connection with 306.
Turning to
In some embodiments, user interface 400 can include a map 401 that indicates different parking lots or garages in a geographical region (e.g., in a city, in a town, in a neighborhood, and/or any other suitable geographical region), such as a garage 402. Note that, in some embodiments, map 401 can be zoomed in or out and/or manipulated in any suitable manner, such as via a touchscreen of the device the map is presented on, via a mouse, and/or in any other suitable manner.
In some embodiments, user interface 400 can include a hierarchical list 403 that presents information relating to different parking lots or garages. For example, as shown in user interface 400, a top level of hierarchical list 403 can list a name of a geographical region shown in map 401 (e.g., “Plymouth”). Continuing with this example, as shown in user interface 400, the top level of hierarchical list 403 can be expanded to show different parking lots or garages located in the geographical region (e.g., “1500 Plymouth,” “1502 Plymouth,” “1625 Plymouth”). Continuing further with this example, in some embodiments, any of the parking lots or garages can be expanded within hierarchical list 403 to show different regions or portions of the selected parking lot or garage (e.g., Roof 404 as shown in
In some embodiments, the parking information associated with individual parking spots can be presented in a map format, as shown in
As illustrated, user interface 450 can present a map of different parking spaces within a parking lot or garage, such as parking spot 452. Note that, in some embodiments, each parking spot can be colored or shaded in a visual manner that indicates a current status of the parking spot (e.g., available, occupied, the current occupant has overstayed a time limit, and/or any other suitable status). Additionally, as shown in user interface 450, parking spot 452 can include an icon 454 that indicates a parking spot type associated with the parking spot. For example, in some embodiments, icon 454 can indicate that the parking spot has equipment for charging an electric vehicle, that the parking spot is a handicapped-reserved spot, that the parking spot is reserved for quick deliveries, and/or any other suitable parking spot type.
Turning to
Turning to
Turning to
Turning to
Note that the information provided in the user interfaces shown in
Note that, in some embodiments, process 300 can retrieve the data used to generate the information presented in the user interfaces of
In some embodiments, process 300 can then loop back to 302 and can receive additional vehicle sensor data.
In some embodiments, the mechanisms described herein can perform any other suitable action(s) or function(s) using data from a vehicle sensor as shown in and described above in connection with
As another example, in some embodiments, a vehicle sensor as shown in and described above in connection with
As yet another example, in some embodiments, a vehicle sensor as shown in and described above in connection with
A server, a gateway device, and/or a user device can be implemented using any suitable hardware in some embodiments. For example, in some embodiments, a device can be implemented using any suitable general-purpose computer or special-purpose computer. For example, a mobile phone may be implemented using a special-purpose computer. Any such general-purpose computer or special-purpose computer can include any suitable hardware. For example, as illustrated in example hardware 600 of
Hardware processor 602 can include any suitable hardware processor, such as a microprocessor, a micro-controller, digital signal processor(s), dedicated logic, and/or any other suitable circuitry for controlling the functioning of a general-purpose computer or a special-purpose computer in some embodiments. In some embodiments, hardware processor 602 can be controlled by a server program stored in memory and/or storage of a server. In some embodiments, hardware processor 602 can be controlled by a computer program stored in memory and/or storage 604 of a gateway device and/or a user device.
Memory and/or storage 604 can be any suitable memory and/or storage for storing programs, data, and/or any other suitable information in some embodiments. For example, memory and/or storage 604 can include random access memory, read-only memory, flash memory, hard disk storage, optical media, and/or any other suitable memory.
Input device controller 606 can be any suitable circuitry for controlling and receiving input from one or more input devices 608 in some embodiments. For example, input device controller 606 can be circuitry for receiving input from a touchscreen, from a keyboard, from one or more buttons, from a voice recognition circuit, from a microphone, from a camera, from an optical sensor, from an accelerometer, from a temperature sensor, from a near field sensor, from a pressure sensor, from an encoder, and/or any other type of input device.
Display/audio drivers 610 can be any suitable circuitry for controlling and driving output to one or more display/audio output devices 612 in some embodiments. For example, display/audio drivers 610 can be circuitry for driving a touchscreen, a flat-panel display, a cathode ray tube display, a projector, a speaker or speakers, and/or any other suitable display and/or presentation devices.
Communication interface(s) 614 can be any suitable circuitry for interfacing with one or more communication networks. For example, interface(s) 614 can include network interface card circuitry, wireless communication circuitry, and/or any other suitable type of communication network circuitry.
Antenna 616 can be any suitable one or more antennas for wirelessly communicating with a communication network in some embodiments. In some embodiments, antenna 616 can be omitted.
Bus 618 can be any suitable mechanism for communicating between two or more components 602, 604, 606, 610, and 614 in some embodiments.
Any other suitable components can be included in hardware 600 in accordance with some embodiments.
Turning to
As illustrated, process 700 can begin at 702. This process can begin on any suitable basis. For example, in some embodiments, process 700 can begin periodically based any suitable criteria. More particularly, for example, the process can begin every given time period and can vary the given time period based on the time of day, based on the day of week, based on the time of year, and/or based on any other suitable criteria or criterion. As another example, in some embodiments, process 700 can begin by receiving an interrupt signal from a first magnetometer indicating that it has sensed the presence of something. This signal can be received from any suitable magnetometer in any suitable manner in some embodiments. For example, in some embodiments, the signal can be received from magnetometer 206 of
Next, at 704, process 700 can generate a measurement using the first magnetometer. This measurement can be generated in any suitable manner in some embodiments. For example, in some embodiments, this measurement can be generated by microcontroller 202 causing the magnetometer to take a measurement and provide data of the measurement to the microcontroller.
Then, at 706, process 700 can determine whether the measurement meets a threshold. Any suitable threshold, such as 200 millimeneters can be used in some embodiments. Meeting a threshold can be the measurement being greater than the threshold or greater than or equal to the threshold in some embodiments.
If the measurement is determined at 706 as not meeting the threshold, then process can end at 708.
Otherwise, process 700 can branch to 710 at which it can enable a second sensor. Any suitable second sensor can be enabled and the second sensor can be enabled in any suitable manner. For example, the second sensor can be a second magnetometer, an optical sensor, a pressure sensor, and/or any other suitable sensor for detecting occupancy. More particularly, in the case of the second sensor being a magnetometer, the second sensor can be a magnetometer 206 of
Next, at 712, process 700 can generate a verification measurement using the second sensor. This verification measurement can be generated in any suitable manner in some embodiments. For example, in some embodiments, this measurement can be generated by microcontroller 202 causing a second magnetometer to take a measurement and provide data of the measurement to the microcontroller. As another example, in some embodiments, this measurement can be generated by microcontroller 202 causing the magnetometer to take a measurement and provide data of the measurement to the microcontroller.
Then, at 714, process 700 can submit measurement data to a gateway device. Any suitable measurement data can be submitted, and the measurement data can be submitted in any suitable manner. For example, the measurement data can include data relating to the measurements generated at 704 and/or 712. As another example, the measurement data can be submitted by wirelessly transmitting the data to the gateway device. The data can be submitted to any suitable gateway device in some embodiments. For example, the gateway device can be gateway device 106 of
Finally, after submitting the measurement data to the gateway device at 714, process can end at 708.
Turning to
As shown, in some embodiments, sub-assembly 802 can be used to house battery 804. In some embodiments, sub-assembly 802 can be made from any suitable material, such as ceramic, plastic, and/or any other suitable material. In some embodiments, sub-assembly 802 can contain a slot, groove, and/or any other features to accommodate battery 804 and/or any other suitable component.
In some embodiments, battery 804 can be any suitable battery, such as battery 204 described in connection with
As illustrated, mounting bracket 806 can be stacked upon sub-assembly 802 and battery 804 in some embodiments. In some embodiments, mounting bracket 806 can be used to secure a printed circuit board 808. As shown, in some embodiments, printed circuit board 808 can be secured to mounting bracket 806 using mounting hardware 810. In some embodiments, mounting bracket 806 can be made from ceramic, plastic, and/or any other suitable material, and contain any suitable features for mating with mounting hardware 810. For example, as shown in
In some embodiments, printed circuit board 808 can contain any suitable components, such as those described in connection with
Turning to
Top housing part 852, bottom housing part 854, and window 856 can together form a housing for hardware 800 in some embodiments.
Top housing part 852 can be made from any suitable materials in some embodiments. Likewise, bottom housing part 854 can be made from any suitable materials in some embodiments, and in some embodiments can be formed from the same material as top housing part 852. For example, top housing part 852 and/or bottom housing part 854 can be made from plastic, fiberglass, aluminum, etc.
As shown, in some embodiments, top housing part 852 can be wider than bottom housing part 854. As also shown, top housing part can be beveled, chamfered, and/or rounded on its top side, in some embodiments.
As shown, in some embodiments, bottom housing part 854 can have threads to enable the bottom part to be screwed into a corresponding threaded socket as described further below in connection with
As illustrated, window 856 can be transparent to at least the wavelength of light used by an optical sensor on, or coupled to, circuit board 808. Window 856 can be made from any suitable material(s), such as glass, plastic, or plexiglass, in some embodiments. For example, in some embodiments, window 856 can be glass with any suitable coating such as an anti-reflective coating.
In some embodiments, gasket 858 can be made from silicone, rubber, and/or any suitable material. In some embodiments, gasket 858 can be attached to vehicle sensor 850 at the joint of top housing part 852 and bottom housing part 854, as shown in
In some embodiments, spacer 860 can be made from plastic, ceramic, and/or any other suitable material. Spacer 860 can have any suitable geometry in some embodiments. For example, as shown in
Turning to
Turning to
In some embodiments, printed circuit board 908 can contain electrical components that are the same or similar to the components described in connection with printed circuit board 808 of
As described above, in some embodiments, cable 916 can connect printed circuit board 908 and printed circuit board 918. In some embodiments, cable 916 can be any suitable ribbon cable, flex cable, and/or any other suitable cable with any suitable number of wires.
In some embodiments, optical light source 920 and detector 922 can be implemented in a manner described above in connection with optical sensor 208 in
In some embodiments, field-of-view 924 can be a cone of any suitable size extending above the source 920 and/or detector 922 to any suitable height. For example, in some embodiments, the field-of-view 924 can be a cone of height between about 0.2 m and 1 m with a half-angle of 15°. In some embodiments, the field-of-view 924 associated with optical light source 920 and detector 922 can have the same geometry. In some embodiments, the field-of-view 924 associated with source 920 can be a different size than the field-of-view 924 associated with detector 922.
Turning to
Turning to
In some embodiments, process 1000 can be used in locations where a snowplow, street sweeper, street maintenance vehicle, and/or any other suitable vehicle are routinely used. Note that installation in a manner described by process 1000 can, in some embodiments, allow operation of vehicle sensor 850 and/or 950 concurrent with the regular operation of a snowplow, street sweeper, and/or any other suitable vehicle. For example, in some embodiments, installation of a vehicle sensor using process 1000 can prevent damage to both the vehicle sensor 850 and/or 950 and a snowplow, street sweeper, and/or any other suitable vehicle.
Process 1000 can begin at 1002 by a technician creating an opening within parking surface 100. In some embodiments, the opening can be any size or shape and be created by a drill, jackhammer, and/or any suitable tool to remove concrete, asphalt, and/or any other suitable parking lot material. For example, an opening of about 2 inches in diameter can be created by using a drill or any other suitable battery-operated tool having a corresponding drill bit for cutting a suitable opening. In some embodiments, the opening can be sized to fit at least vehicle sensor 850 and/or 950. For example, the opening can have a depth that is at least equal to or greater than the height of vehicle sensor 850 and/or 950 in some embodiments.
Next, at 1004, a technician can add adhesive to the opening created at 1002. In some embodiments, the adhesive can be an epoxy, multi-part epoxy, resin, glue, and/or any other suitable material. In some embodiments, a technician can add adhesive to the opening using any suitable mechanism.
Then, at 1006, a technician can align a socket into the opening. In some embodiments, a technician can locate the final vertical position of the socket using features of an installation tool, as described further below in connection with
Next, at 1008, a technician can wait for the adhesive added at 1004 to cure. In some embodiments, the installation tool can remain in contact with the socket during 1008.
After, at 1010, a technician can thread the vehicle sensor 850 and/or 950 into the socket. In some embodiments, any suitable accessories can be used to aid the technician at 1010. For example, as discussed below in connection with
Next, at 1012, a technician can initialize vehicle sensor 850 and/or 950. In some embodiments, initializing the vehicle sensor can include linking vehicle sensor 850 and/or 950 to gateway device 106, wherein the link can be implemented in the same manner as described in connection with
Finally, at 1014, a technician can seal vehicle sensor into the parking lot. In some embodiments, a technician can use rubber, caulk, silicon and/or any other suitable material to create a seal. In some embodiments, a technician can back-fill a gap which can remain between vehicle sensor 850 and/or 950 and the parking lot surface. For example, a technician can seal a top perimeter region between the vehicle sensor, such as vehicle sensor 850 and/or 950, and the parking lot surface with a bead of low viscosity rubber.
Turning to
In some embodiments, installation tool 1110 can be made from plastic, rubber, aluminum, and/or any suitable material. In some embodiments, installation tool 1110 can be used in a similar manner as described in connection with 1006 in
In some embodiments, installation tool 1110 can include a flange 1116 between upper half 1112 and lower half 1118. In some embodiments, flange 1116 can be wider than lower half 1118. In some embodiments, installation tool 1110 can include any suitable features such as openings 1114 placed in any suitable location. For example, openings 1114 can be placed, in some embodiments, such that excess adhesive (e.g., epoxy) can escape when installation tool 1110 is used in a similar manner as described in 1006 and 1008 of process 1000. In some embodiments, installation tool 1110 can include any other suitable features.
In some embodiments, alignment spacer 1120 can be made from plastic, rubber, aluminum, and/or any suitable material. In some embodiments, alignment spacer 1120 can be an annulus with any inner diameter and any outer diameter. In some embodiments, alignment spacer 1120 can be any suitable height. For example, in some embodiments, alignment spacer 1120 can be a height which allows fine adjustment of socket 1130 to a desired vertical position inside the opening created at 1002 of
In some embodiments, socket 1130 can be made from plastic, rubber, aluminum, and/or any suitable material. In some embodiments, socket 1130 can be sized to thread around vehicle sensor 850 and/or 950. For example, in some embodiments, socket 1130 can have a threaded middle section which is complimentary to the threading in bottom part 854 of vehicle sensor 850 and/or 950. In some embodiments, socket 1130 can have a rounded edge and/or any other suitable edge finish. In some embodiments, socket 1130 can create a seal with vehicle sensor 850 and/or 950. For example, in some embodiments, gasket 858 can make contact with socket 1130 to create a seal with vehicle sensor 850 and/or 950.
Turning to
Turning to
Turning to
Turning to
Turning to
Turning to
In some embodiments, at least some of the above-described blocks of the process of
In some embodiments, any suitable computer readable media can be used for storing instructions for performing the functions and/or processes herein. For example, in some embodiments, computer readable media can be transitory or non-transitory. For example, non-transitory computer readable media can include media such as non-transitory forms of magnetic media (such as hard disks, floppy disks, and/or any other suitable magnetic media), non-transitory forms of optical media (such as compact discs, digital video discs, Blu-ray discs, and/or any other suitable optical media), non-transitory forms of semiconductor media (such as flash memory, electrically programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), and/or any other suitable semiconductor media), any suitable media that is not fleeting or devoid of any semblance of permanence during transmission, and/or any suitable tangible media. As another example, transitory computer readable media can include signals on networks, in wires, conductors, optical fibers, circuits, any suitable media that is fleeting and devoid of any semblance of permanence during transmission, and/or any suitable intangible media.
Accordingly, wireless occupancy sensors and methods for using the same are provided.
Although the invention has been described and illustrated in the foregoing illustrative embodiments, it is understood that the present disclosure has been made only by way of example, and that numerous changes in the details of implementation of the invention can be made without departing from the spirit and scope of the invention. Features of the disclosed embodiments can be combined and rearranged in various ways.