Methods and systems for detection of vehicle occupancy

Disclosed herein are system, method, and computer program product embodiments for detecting, alerting, and acting to prevent unattended vehicle deaths. An embodiment operates by receiving one or more signals from one or more presence sensors in a vehicle and analyzing the signals to detect the presence of a person or animal inside the vehicle. The system further receives one or more signals from one or more environment sensors on the vehicle and analyzes the signals to detect a dangerous environmental condition. If the system determines that both the presence of a person or animal has been detected inside the vehicle and a dangerous environmental condition has been detected, it activates one or more vehicle systems that mitigate the dangerous environmental condition and sends an alert to one or more predetermined recipients.

BACKGROUND

Technical Field

Embodiments generally relate to computerized automobile sensors and controls, and in particular to systems and methods to prevent unattended vehicle deaths using sensors and wireless communications.

Background

“Hot car deaths” are a colloquial term to refer to deaths of persons (typically children or special needs individuals) or pets caused by heatstroke or hyperthermia due to being left alone in a car for a long time. A typical scenario involves a parent leaving an infant inside a car under the sun and forgetting about the child, returning many hours later to find the child has died of heatstroke. According to some estimates, an average of 37 children die each year in unattended vehicles.

While some technological solutions have been proposed and implemented to prevent these incidents, none have been able to provide a reliable system that mitigates the chances of death by detecting, alerting and acting appropriately based on the circumstances.

SUMMARY

Disclosed herein are system, method, and computer program product embodiments for detecting, alerting, and acting to prevent unattended vehicle deaths. An embodiment operates by receiving one or more signals from one or more presence sensors in a vehicle and analyzing the signals to detect the presence of a person or animal inside the vehicle. The system further receives one or more signals from one or more environment sensors on the vehicle and analyzes the signals to detect a dangerous environmental condition. If the system determines that both the presence of a person or animal has been detected inside the vehicle and a dangerous environmental condition has been detected, it activates one or more vehicle systems that mitigate the dangerous environmental condition and sends an alert to one or more predetermined recipients.

DETAILED DESCRIPTION

Provided herein are system, method and/or computer program product embodiments, and/or combinations and sub-combinations thereof, for detecting, alerting, and acting to prevent unattended vehicle deaths. Embodiments include an integrated vehicle occupancy system that relies on the vehicle's on-board computer, the computer connected to a suite of sensors common in modern vehicles in addition to other sensors embedded within the vehicle's structure. The system can use sensors to detect that a person or animal has been left unattended inside the vehicle and that conditions inside the vehicle are dangerous (e.g., the cabin is very hot because the car has been left in the sun). The system can then issue alerts and/or take corrective actions to mitigate the dangerous conditions.

FIG.1shows a system diagram for an unattended vehicle death prevention system100, according to an example embodiment. System100includes a vehicle on-board computer20which executes software code for obtaining data from various vehicle sensors and controlling vehicle components. The system may be powered through the vehicle's alternator and 12 v battery.FIG.1shows on-board computer20receives input from one or more presence sensors. As used herein, a presence sensor is a sensor that can be used to detect when a person or animal is present in a vehicle. As an example, ultrasonic sensors31, microwave sensors32, passive infrared sensors33, seat weight sensors21, seat buckle sensors22, microphone34, and carbon dioxide sensors35can be presence sensors. Presence sensors may be positioned inside or around the vehicle. Computer20may analyze signals from any combination of these sensors to detect if a person or animal is inside the vehicle. As an example, an ultrasonic sensor31may be aimed towards a location in the car where a child passenger typically sits, e.g., the back seat. Ultrasonic sensors measure the distance to an object using ultrasonic sound waves. Computer20may calibrate the ultrasonic sensor to determine the distance read between the sensor and the empty seat. Computer20may then periodically read the signal from the ultrasonic sensor and determine that the distance read by the sensor is less than the predetermined empty-seat-distance, and thus determine that a person or animal is likely in the seat. Microwave sensors32may be used in a similar fashion.

Computer20may continuously receive and evaluate readings from various sensors to corroborate whether a person or animal is actually in the car and not another object. For example, a passive infrared sensor32may be used to distinguish between inanimate objects and a living thing, e.g., person or animal. A passive infrared sensor is an electronic sensor that measures infrared (IR) light radiating from objects in its field of view, and are often used in motion detectors.

In other examples, computer20may analyze microphone34signals to detect particular noises, e.g., a child crying, talking, dog bark, moving or tapping noises, etc. Seat weight sensors21may detect a particular weight corresponding to a human or animal, while seat belt buckle sensor can detect that a seat belt is still22buckled. Carbon dioxide sensors35may detect an increase in carbon dioxide inside the vehicle, indicating a person may be inside the car with the windows closed. While particular presence sensors and presence detection methods are described herein, this disclosure contemplates any suitable presence sensors and presence detection methods.

Computer20may further receive input from one or more environment sensors. As used herein, an environment sensor is a sensor that can be used detect particular environmental conditions in or around the vehicle. As an example, temperature sensors37, carbon dioxide sensor35, or toxic or hazardous gas sensors (e.g., carbon monoxide sensors, smoke sensors, car exhaust fumes sensor, etc.) can be environment sensors. Computer20may analyze the signals from environment sensors to detect dangerous or hazardous environmental condition. As an example, computer20may read a temperature from a temperature sensor37and determine that the temperature inside a vehicle is dangerously high or low. Other sensors may monitor for toxic or hazardous gases at dangerous levels, such as, carbon dioxide, carbon monoxide, car exhaust fumes, etc. As such, computer20may be able to detect to dangerous conditions other than hot or cold cars, such as a gas-powered vehicle that has been left running in a confined space and poses a risk of intoxication for occupants.

Computer20can control various systems in the vehicle in order to take action after detecting a person or animal is inside the vehicle while the conditions inside the vehicle are unsafe. For example, computer20may communicate with a door lock controller41, window controller42, external lights control43, vehicle horn control44, heater control45, air conditioner control46and/or ventilation control47to perform appropriate actions to mitigate dangerous conditions or alert nearby persons of the dangerous situation. As an example, if a child has been left unattended in a hot vehicle, computer20may turn on the air conditioning to lower the temperature inside the vehicle. Computer20may turn on the vehicle heater if a child has been left in a vehicle at very cold temperatures. The system may unlock doors, open windows, flash lights, and sound the horn to alert any nearby persons to the situation and allow them to help. Computer20may thus monitor conditions in the vehicle and perform appropriate actions to mitigate risks.

Computer20may further be connected to a wireless communications system40, and may control it to transmit notifications, messages, or phone calls based on detecting dangerous situations as explained above. Wireless communications system40may include cellular antennas, satellite system, Wi-Fi, etc. As example, computer20may call or message emergency services (e.g.,911) or numbers from a predefined list of contacts to alert of the dangerous situation.

Computer20may receive configuration information from a user through a user interface48in communication with computer20. The interface may be provided through a built-in entertainment system (e.g., infotainment system) in the vehicle, a mobile app, a web interface, etc. As an example, a built-in infotainment system in the vehicle may provide menus and commands to activate and configure computer20for detecting, alerting, and acting to prevent unattended vehicle deaths, including entering emergency contacts information and configuring what actions to perform during a detected emergency. Interface48may thus be used to customize alert recipients and alert messages, configure and test the system, and view system status information.

FIG.2is a flowchart for a method200of for detecting, alerting, and acting to prevent unattended vehicle deaths, according to particular embodiments. Method200can be performed by processing logic that can comprise hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, etc.), software (e.g., instructions run on a processing device), or a combination thereof. In particular embodiments, computer20may initiate method200upon determining that a vehicle is unattended. Computer20may determine that a vehicle is unattended based on one or more conditions, such as, for example, detecting that the vehicle's RFID fob reader25does not detect the presence of key fob26, detecting that the vehicle's ignition is off, when the driver's seat weight and/or seat belt buckle indicate that the driver seat is unoccupied, etc.

At step202, computer20receives one or more signals from one or more presence sensors in a vehicle. At step204, computer20analyzes the one or more signals to detect the presence of a person or animal in the vehicle. As an example, computer20may continuously or repeatedly analyze the signals from the presence sensors (e.g., ultrasonic, microwave, infrared sensors, etc.). The analysis may involve, for example, comparing the signal reading to a previously calibrated value corresponding to an empty seat, thus indicating that something is occupying the seat. In an example, the analysis may involve determining whether the signal changes in a particular manner, thus detecting movement and indicating that a person or animal is occupying the vehicle.

In particular embodiments, presence sensors may monitor the outside of the vehicle, and analyzing for presence may include maintaining a count of the number of persons or animals that have entered and exited the vehicle. As an example, computer20may analyze signals to determine that two persons entered the vehicle, and later one person left. As such, computer20may determine that a person is present in the vehicle.

In particular embodiments, computer20may analyze carbon dioxide levels in the vehicle to determine whether a person is present. As an example, computer20may determine that the vehicle windows are open and activate the window controls to close the windows. Computer20may then continuously monitor the carbon dioxide sensor readings over time to determine if the levels of carbon dioxide inside the vehicle are increasing. An increasing level of carbon dioxide would indicate that a person or animal is inside the vehicle, as their breathing would produce carbon dioxide. While measuring the carbon dioxide, computer20may also monitor the temperature inside the vehicle to ensure that the occupants remain safe. Once the measurements have been taken, computer20may re-open the windows to reduce the threat of heat build-up in the vehicle.

At step206, computer20receives one or more signals from one or more environment sensors on the vehicle. At step208, computer20analyzes the one or more signals from the environment sensors to detect a dangerous environmental condition. Computer20may continuously or repeatedly analyze the signals from the presence sensors to detect dangerous conditions. As an example, computer20may continuously read the temperature from temperature sensor37to determine if the temperature inside the vehicle is outside of a preconfigured safe range.

At step210, computer20determines whether both the presence of a person or animal inside the vehicle and a dangerous environmental condition have been detected, based on the analyses of steps204and208. If so, computer20performs actions as specified in the system configuration. At step212, computer20activates one or more vehicle systems that mitigate the dangerous environmental condition. The actions taken may be configured by a user through interface48. As an example, computer20may turn on the car ignition and activate the air conditioning if the vehicle is overheated, or close the windows and turn on the heater if the vehicle is at dangerously cold temperatures. In an example, computer20may detect unsafe levels of toxic gases inside the vehicle (e.g., carbon dioxide, carbon monoxide, car fumes, etc.) and may activate the vehicle's ventilation system in response. In particular embodiments, the system may continuously monitor conditions in the vehicle and adjust actions accordingly. As an example, the air conditioning may be activated until the temperature returns to a safe level and then adjusted to maintain the safe temperature. In an example, computer20activates car systems to alert nearby persons or passers-by of the emergency, such as activating a car alarm, car horn, flashing lights, unlocking doors, etc.

There may be situations in which taking certain actions may be unsafe. As an example, if the vehicle is a gas-powered vehicle and it is in a confined space, turning on the air conditioning may cause car fumes to enter the vehicle. Computer20may take certain preventive measures to determine if it is safe to perform a mitigating action. In particular embodiments, computer20may analyze sensor readings to determine if the vehicle is in a confined space. In an example, the computer20may turn on the ignition and partially or completely open windows and analyze readings from dangerous gas sensors to determine if there is an increase in dangerous gases (e.g., carbon monoxide, car fumes, etc.). If the gas measurements increase above predetermined rate or concentration computer20determines the vehicle is likely in a confined space without proper ventilation, and in response turns off the ignition to avoid generating further toxic fumes. In an overheated vehicle scenario, computer20may open the vehicle windows and turn on the ventilation system without starting the vehicle engine. In a cold vehicle scenario, computer20may close the windows.

In particular embodiments, computer20may further receive signals from surroundings sensors. As used herein, surrounding sensors are sensors that monitor areas around the vehicle. As an example, surrounding sensors may be sonar, radar, LiDAR, cameras, etc., such as proximity sensors used for automated driving, lane changing, parking, etc. Computer20may use surrounding sensors to determine if the vehicle is in an enclosed space before performing other mitigating actions, as explained above.

At step214, computer20sends an alert to one or more predetermined recipients. The predetermined recipients may be configured by a user through user interface48, e.g., contacts, emergency response, 911, etc. The type of alert may also be configured, such as, for example, SMS text messages, pre-recorded or computer-generated voice calls or voicemails, mobile push notifications through a mobile application, etc. The information included in the alerts and the recipients of the alerts may be based on a determined severity of the threat posed to occupants of the vehicle. In particular embodiments, the alerts may include a location of the vehicle, obtained from a GPS receiver49, for example. Computer20may use any suitable means of wireless communications, such as cellular, satellite, Wi-Fi, etc.

FIG.3illustrates an example computer system300. In particular embodiments, one or more computer systems300perform one or more steps of one or more methods described or illustrated herein. In particular embodiments, one or more computer systems300provide functionality described or illustrated herein. In particular embodiments, software running on one or more computer systems300performs one or more steps of one or more methods described or illustrated herein or provides functionality described or illustrated herein. Particular embodiments include one or more portions of one or more computer systems300. Herein, reference to a computer system may encompass a computing device, and vice versa, where appropriate. Moreover, reference to a computer system may encompass one or more computer systems, where appropriate.

This disclosure contemplates any suitable number of computer systems300. This disclosure contemplates computer system300taking any suitable physical form. As example, computer system300may be an embedded computer system, a desktop computer system, a laptop or notebook computer system, a mainframe, a mobile telephone, a personal digital assistant (PDA), a server, a tablet computer system, or a combination of two or more of these. Where appropriate, computer system300may include one or more computer systems300; be unitary or distributed; span multiple locations; span multiple machines; span multiple data centers; or reside in a cloud, which may include one or more cloud components in one or more networks. Where appropriate, one or more computer systems300may perform without substantial spatial or temporal limitation one or more steps of one or more methods described or illustrated herein. As an example, one or more computer systems300may perform in real time or in batch mode one or more steps of one or more methods described or illustrated herein. One or more computer systems300may perform at different times or at different locations one or more steps of one or more methods described or illustrated herein, where appropriate.

In particular embodiments, computer system300includes a processor302, memory304, storage306, an input/output (I/O) interface308, a communication interface310, and a bus312. Although this disclosure describes and illustrates a particular computer system having a particular number of particular components in a particular arrangement, this disclosure contemplates any suitable computer system having any suitable number of any suitable components in any suitable arrangement.

In particular embodiments, processor302includes hardware for executing instructions, such as those making up a computer program. As an example, to execute instructions, processor302may retrieve (or fetch) the instructions from an internal register, an internal cache, memory304, or storage306; decode and execute them; and then write one or more results to an internal register, an internal cache, memory304, or storage306. In particular embodiments, processor302may include one or more internal caches for data, instructions, or addresses. This disclosure contemplates processor302including any suitable number of any suitable internal caches, where appropriate. In particular embodiments, processor302may include one or more internal registers for data, instructions, or addresses. This disclosure contemplates processor302including any suitable number of any suitable internal registers, where appropriate. Where appropriate, processor302may include one or more arithmetic logic units (ALUs); be a multi-core processor; or include one or more processors302. Although this disclosure describes and illustrates a particular processor, this disclosure contemplates any suitable processor.

In particular embodiments, memory304includes main memory for storing instructions for processor302to execute or data for processor302to operate on. As an example, computer system300may load instructions from storage306or another source (such as, for example, another computer system300) to memory304. Processor302may then load the instructions from memory304to an internal register or internal cache. To execute the instructions, processor302may retrieve the instructions from the internal register or internal cache and decode them. During or after execution of the instructions, processor302may write one or more results (which may be intermediate or final results) to the internal register or internal cache. Processor302may then write one or more of those results to memory304. In particular embodiments, processor302executes only instructions in one or more internal registers or internal caches or in memory304(as opposed to storage306or elsewhere) and operates only on data in one or more internal registers or internal caches or in memory304(as opposed to storage306or elsewhere). One or more memory buses (which may each include an address bus and a data bus) may couple processor302to memory304. Bus312may include one or more memory buses, as described below. In particular embodiments, memory304includes random access memory (RAM). This RAM may be volatile memory, where appropriate Memory304may include one or more memories304, where appropriate. Although this disclosure describes and illustrates particular memory, this disclosure contemplates any suitable memory.

In particular embodiments, storage306includes mass storage for data or instructions. As an example, storage306may include a hard disk drive (HDD), a floppy disk drive, flash memory, an optical disc, a magneto-optical disc, magnetic tape, or a Universal Serial Bus (USB) drive or a combination of two or more of these. Storage306may include removable or non-removable (or fixed) media, where appropriate. Storage306may be internal or external to computer system300, where appropriate. In particular embodiments, storage306is non-volatile, solid-state memory. In particular embodiments, storage306includes read-only memory (ROM). Where appropriate, this ROM may be mask-programmed ROM, programmable ROM (PROM), erasable PROM (EPROM), electrically erasable PROM (EEPROM), electrically alterable ROM (EAROM), or flash memory or a combination of two or more of these. This disclosure contemplates mass storage306taking any suitable physical form. Storage306may include one or more storage control units facilitating communication between processor302and storage306, where appropriate. Where appropriate, storage306may include one or more storages306. Although this disclosure describes and illustrates particular storage, this disclosure contemplates any suitable storage.

In particular embodiments, I/O interface308includes hardware, software, or both, providing one or more interfaces for communication between computer system300and one or more I/O devices. Computer system300may include one or more of these I/O devices, where appropriate. One or more of these I/O devices may enable communication between a person and computer system300. As an example, an I/O device may include a keyboard, keypad, microphone, monitor, mouse, printer, scanner, speaker, still camera, stylus, tablet, touch screen, trackball, video camera, another suitable I/O device or a combination of two or more of these. An I/O device may include one or more sensors. This disclosure contemplates any suitable I/O devices and any suitable I/O interfaces308for them. Where appropriate, I/O interface308may include one or more device or software drivers enabling processor302to drive one or more of these I/O devices. I/O interface308may include one or more I/O interfaces308, where appropriate. Although this disclosure describes and illustrates a particular I/O interface, this disclosure contemplates any suitable I/O interface.

In particular embodiments, communication interface310includes hardware, software, or both providing one or more interfaces for communication (such as, for example, packet-based communication) between computer system300and one or more other computer systems300or one or more networks. As an example, communication interface310may include a network interface controller (NIC) or network adapter for communicating with an Ethernet or other wire-based network or a wireless NIC (WNIC) or wireless adapter for communicating with a wireless network, such as a WI-FI network. This disclosure contemplates any suitable network and any suitable communication interface310for it. As an example, computer system300may communicate with an ad hoc network, a personal area network (PAN), a local area network (LAN), a wide area network (WAN), a metropolitan area network (MAN), or one or more portions of the Internet or a combination of two or more of these. One or more portions of one or more of these networks may be wired or wireless. As an example, computer system300may communicate with a wireless PAN (WPAN) (such as, for example, a BLUETOOTH WPAN), a WI-FI network, a WI-MAX network, a cellular telephone network (such as, for example, a Global System for Mobile Communications (GSM) network), satellite, or other suitable wireless network or a combination of two or more of these. Computer system300may include any suitable communication interface310for any of these networks, where appropriate. Communication interface310may include one or more communication interfaces310, where appropriate. Although this disclosure describes and illustrates a particular communication interface, this disclosure contemplates any suitable communication interface.