Vehicle acoustic transducer operation

A system includes a computer and a memory, the memory storing instructions executable by the computer to identify a target and to adjust a frequency of an acoustic message from a vehicle based on a predicted target trajectory and a predicted vehicle trajectory.

BACKGROUND

Vehicles can emit acoustic messages to the surrounding environment to communicate with targets, e.g., pedestrians, other vehicles, etc. The acoustic messages can include, e.g., sirens, horn sounds, messages, etc. The acoustic messages travel as acoustic waves through air to the targets. These messages may be affected by the relative motion of objects resulting in a Doppler shift.

DETAILED DESCRIPTION

A system includes a computer and a memory, the memory storing instructions executable by the computer to identify a target and adjust a frequency of an acoustic message from a vehicle based on a predicted target trajectory and a predicted vehicle trajectory.

The instructions can further include instructions to identify a frequency shift of the acoustic message based on the predicted target trajectory and the predicted vehicle trajectory.

The instructions can further include instructions to adjust the frequency of the acoustic message to reduce the frequency shift below a shift threshold.

The instructions can further include instructions to identify a type of the target and to predict the target trajectory based on the type of the target.

The instructions can further include instructions to, while emitting the acoustic message, predict a second target trajectory and a second vehicle trajectory and to adjust the frequency of the acoustic message based on the second predicted target trajectory and the second predicted vehicle trajectory.

The instructions can further include instructions to identify a relative velocity between the target and the vehicle and to adjust the frequency of the acoustic message based on the relative velocity.

The instructions can further include instructions to actuate a transducer to steer the acoustic message toward the target.

The instructions can further include instructions to identify a direction vector between the transducer and the target and to rotate the transducer to align with the direction vector.

The instructions can further include instructions to determine a weather datum and to adjust the frequency based on the weather datum.

The weather datum can be at least one of a temperature, a humidity, or an air pressure.

The instructions can further include instructions to determine an ambient speed of sound based on the weather datum.

The instructions can further include instructions to identify a second target and to adjust the frequency of the acoustic message based on the predicted target trajectory and a predicted second target trajectory.

The instructions can further include instructions to adjust an emitted frequency of the acoustic message to generate a predicted perceived frequency received by the target that is within a threshold of a recorded frequency of the acoustic message.

The instructions can further include instructions to identify a change in a target trajectory and to adjust the frequency of the acoustic message based on the change in the target trajectory.

A method includes identifying a target and adjusting a frequency of an acoustic message from a vehicle based on a predicted target trajectory and a predicted vehicle trajectory.

The method can further include identifying a frequency shift of the acoustic message based on the predicted target trajectory and the predicted vehicle trajectory.

The method can further include adjusting the frequency of the acoustic message to reduce the frequency shift below a shift threshold.

The method can further include identifying a type of the target and predicting the target trajectory based on the type of the target.

The method can further include, while emitting the acoustic message, predicting a second target trajectory and a second vehicle trajectory and adjusting the frequency of the acoustic message based on the second predicted target trajectory and the second predicted vehicle trajectory.

The method can further include identifying a relative velocity between the target and the vehicle and adjusting the frequency of the acoustic message based on the relative velocity.

The method can further include actuating a transducer to steer the acoustic message toward the target.

The method can further include identifying a direction vector between the transducer and the target and rotating the transducer to align with the direction vector.

The method can further include determining a weather datum and adjusting the frequency based on the weather datum.

The method can further include determining an ambient speed of sound based on the weather datum.

The method can further include identifying a second target and adjusting the frequency of the acoustic message based on the predicted target trajectory and a predicted second target trajectory.

The method can further include adjusting an emitted frequency of the acoustic message to generate a predicted perceived frequency received by the target that is within a threshold of a recorded frequency of the acoustic message.

The method can further include identifying a change in a target trajectory and adjusting the frequency of the acoustic message based on the change in the target trajectory.

A system includes a transducer, means for identifying a target, and means for adjusting a frequency of an acoustic message emitted from the transducer based on a predicted target trajectory and a predicted vehicle trajectory.

The system can further include means for identifying a frequency shift of the acoustic message based on the predicted target trajectory and the predicted vehicle trajectory.

The system can further include means for steering the transducer to steer the acoustic message toward the target.

Further disclosed is a computing device programmed to execute any of the above method steps. Yet further disclosed is a vehicle comprising the computing device. Yet further disclosed is a computer program product, comprising a computer readable medium storing instructions executable by a computer processor, to execute any of the above method steps.

A computer in a vehicle can determine to communicate with a target, e.g., a pedestrian, a cyclist, another vehicle, etc. The communication can be an acoustic message emitted from an acoustic transducer. The acoustic message can be, e.g., a verbal message indicating approach of the vehicle, a siren, a horn sound, a salutation, etc. The computer can identify the target and a corresponding message to send to the target. For example, the computer can select a message based on, e.g., a predicted trajectory of the target approaching the vehicle. In another example, the computer can identify another vehicle with vehicle-to-vehicle communication and select a message based on the communication. Adjusting an emitted frequency of the acoustic message can account for a frequency shift of the acoustic message caused by relative movement of the target and the vehicle, allowing the target to receive the acoustic message at a substantially consistent frequency, i.e., a frequency that does not vary substantially over a time of reception and the original recorded message in the absence of relative motion. By predicting trajectories of the target and the vehicle, the computer can adjust the emitted frequency to minimize the change in the perceived frequency caused by the frequency shift observed by the receiver. This will result in a minimized frequency shift in the intended message at the receiver. The computer can further predict an ambient speed of sound, which can affect the frequency shift. As a relative velocity between the vehicle and the target changes, the computer can adjust the emitted frequency of the acoustic message to compensate for the frequency shifts caused by the changes in the relative velocity. The computer can actuate movement of a transducer relative to the vehicle and toward the target to direct the acoustic message to the target. Thus, the target receives the acoustic message at a substantially consistent frequency as the vehicle passes the target and emits the acoustic message.

FIG. 1illustrates an example system100for generating and transmitting an acoustic message from a vehicle101. The system100includes a computer105. The computer105, typically included in a vehicle101, is programmed to receive collected data115from one or more sensors110. For example, vehicle101data115may include a location of the vehicle101, data about an environment around a vehicle101, data about an object outside the vehicle such as another vehicle, etc. A vehicle101location is typically provided in a conventional form, e.g., geo-coordinates such as latitude and longitude coordinates obtained via a navigation system that uses the Global Positioning System (GPS). Further examples of data115can include measurements of vehicle101systems and components, e.g., a vehicle101velocity, a vehicle101trajectory, etc.

The computer105is generally programmed for communications on a vehicle101network, e.g., including a conventional vehicle101communications bus. Via the network, bus, and/or other wired or wireless mechanisms (e.g., a wired or wireless local area network in the vehicle101), the computer105may transmit messages to various devices in a vehicle101and/or receive messages from the various devices, e.g., controllers, actuators, sensors, etc., including sensors110. Alternatively or additionally, in cases where the computer105actually comprises multiple devices, the vehicle network may be used for communications between devices represented as the computer105in this disclosure. In addition, the computer105may be programmed for communicating with the network125, which, as described below, may include various wired and/or wireless networking technologies, e.g., cellular, Bluetooth®, Bluetooth® Low Energy (BLE), wired and/or wireless packet networks, etc.

The data store106can be of any type, e.g., hard disk drives, solid state drives, servers, or any volatile or non-volatile media. The data store106can store the collected data115sent from the sensors110.

Sensors110can include a variety of devices. For example, various controllers in a vehicle101may operate as sensors110to provide data115via the vehicle101network or bus, e.g., data115relating to vehicle speed, acceleration, position, subsystem and/or component status, etc. Further, other sensors110could include cameras, motion detectors, etc., i.e., sensors110to provide data115for evaluating a position of a component, evaluating a slope of a roadway, etc. The sensors110could, without limitation, also include short range radar, long range radar, time of flight cameras, LIDAR, and/or ultrasonic transducers. Other types of sensors may include pressure sensors, temperature sensors, and the like, to determine the properties of the environment around the vehicle which can affect the propagation of sound waves in the environment.

Collected data115can include a variety of data collected in a vehicle101. Examples of collected data115are provided above, and moreover, data115are generally collected using one or more sensors110, and may additionally include data calculated therefrom in the computer105, and/or at the server130. In general, collected data115may include any data that may be gathered by the sensors110and/or computed from such data.

The vehicle101can include a plurality of vehicle components120. In this context, each vehicle component120includes one or more hardware components adapted to perform a mechanical function or operation—such as moving the vehicle101, slowing or stopping the vehicle101, steering the vehicle101, etc. Non-limiting examples of components120include a propulsion component (that includes, e.g., an internal combustion engine and/or an electric motor, etc.), a transmission component, a steering component (e.g., that may include one or more of a steering wheel, a steering rack, etc.), a brake component (as described below), a park assist component, an adaptive cruise control component, an adaptive steering component, a movable seat, or the like.

When the computer105partially or fully operates the vehicle101, the vehicle101is an “autonomous” vehicle101. For purposes of this disclosure, the term “autonomous vehicle” is used to refer to a vehicle101operating in a fully autonomous mode. A fully autonomous mode is defined as one in which each of vehicle101propulsion (typically via a powertrain including an electric motor and/or internal combustion engine), braking, and steering are controlled by the computer105. A semi-autonomous mode is one in which at least one of vehicle101propulsion (typically via a powertrain including an electric motor and/or internal combustion engine), braking, and steering are controlled at least partly by the computer105as opposed to a human operator. In a non-autonomous mode, i.e., a manual mode, the vehicle101propulsion, braking, and steering are controlled by the human operator.

The system100can further include a network125connected to a server130and a data store135. The computer105can further be programmed to communicate with one or more remote computers such as the server130, via the network125, a server130possibly including or being coupled to a data store135. The network125represents one or more mechanisms by which a vehicle computer105may communicate with a remote server130. Accordingly, the network125can be one or more of various wired or wireless communication mechanisms, including any desired combination of wired (e.g., cable and fiber) and/or wireless (e.g., cellular, wireless, satellite, microwave, and radio frequency) communication mechanisms and any desired network topology (or topologies when multiple communication mechanisms are utilized). Exemplary communication networks include wireless communication networks (e.g., using Bluetooth®, Bluetooth® Low Energy (BLE), IEEE 802.11, vehicle-to-vehicle (V2V) such as Dedicated Short Range Communications (DSRC), etc.), local area networks (LAN) and/or wide area networks (WAN), including the Internet, providing data communication services. In the case of vehicles or other targets equipped with V2X communication it is expected that those targets could at substantially consistent intervals, e.g., 10 times per second, provide their current location, orientation, and velocity. This information may then be used to augment the vehicle's determination of those values based on sensor110data115.

FIG. 2illustrates an example vehicle101transmitting an acoustic message200to a target205. As used herein, an “acoustic message” is a sound or series of sounds encoding or otherwise providing information for a target205, e.g., a verbal message, a siren, a horn sound, etc. For example, the acoustic message200can be a warning to a target205indicating the presence of the vehicle101approaching the target205.FIG. 2shows two targets205a,205b. The target205can be, e.g., a pedestrian, a cyclist, a pedestrian on a scooter, a pedestrian on a unicycle, etc.

The computer105can actuate a transducer210to transmit the acoustic message200. The transducer210can be mounted to or at an outer portion of the vehicle101to emit the acoustic message200out from the vehicle101, e.g., a vehicle101roof, a vehicle101front hood, etc. The transducer210emits acoustic waves (i.e., sound waves) at specified frequencies to transmit the acoustic message200. The transducer210can be a speaker including a diaphragm and a coil. When electricity flows through the coil at specific frequencies, the coil vibrates the diaphragm at those specific frequencies, generating acoustic waves that are emitted from the diaphragm. The acoustic waves thus result in a sound emitted from the transducer210. The computer105can supply electricity at the specific frequencies to the coil to generate a specific sound from the diaphragm, i.e., the acoustic message200. The computer105can supply the electricity at predetermined frequencies stored in the data store106corresponding to a specific acoustic message200, e.g., according to a recording of the acoustic message200stored in the data store106, according to a list of specific frequencies and times at which to supply electricity to the transducer210, etc.

The transducer210can be movable to direct the acoustic message200toward the target205, as shown inFIG. 3. For example, the transducer210can be attached to a post rotatable about a vertical axis, and the computer105can actuate a motor (not shown) to rotate the post to move the diaphragm of the transducer210to direct the acoustic message200toward the target205(i.e., along a straight line between the transducer210and the target205) as the vehicle101approaches the target205. Alternatively, the transducer210can emit the acoustic message200in all directions, as shown inFIG. 4. In another example, acoustic beam forming may be utilized in which an acoustic beam steering array generates a beam of steered acoustic energy into the environment directed towards the target205of the message200.

When the vehicle101and/or the target205moves relative to one another, the acoustic message200can undergo a frequency shift, i.e., a Doppler shift. For example, inFIG. 2, the target205acan have a target trajectory215, the vehicle101can have a vehicle trajectory220, and the target205bcan be stationary. The differences in the trajectories215,220and/or a stationary target205can result in the frequency shift. The transducer210emits the acoustic message200at a specified frequency. As the transducer210transmits the acoustic message200, each successive wave of the acoustic message200is closer to the previous wave of the acoustic message200in the direction of travel of the vehicle101and farther from the previous wave of the acoustic message away from the direction of travel of the vehicle101. Thus, the target205a, in front of the vehicle101, hears the acoustic message200at a higher frequency than the frequency emitted from the transducer210, and the target205b, behind the vehicle101, hears the acoustic message200at a lower frequency than the frequency emitted from the transducer210. The frequency of the acoustic message200heard by the target205a,205bis the “perceived frequency” f, measured in Hertz (Hz), and can be determined as follows:

f⁡(t)=(cc+Vrel)⁢f0⁡(t)(1)
where t is time measured in seconds, c is the speed of sound through the ambient environment measured in meters per second, Vrelis a relative velocity between the vehicle101and the target205measured in meters per second, and f0is the emitted frequency (measured in Hz) of the acoustic message200from the transducer210. The time t indicates that the perceived frequency f(t) and the emitted frequency f0(t) can be functions of time. Thus, the perceived frequency f can be determined based on a current speed of sound c of the ambient air. As discussed below, the speed of sound c can change based on, e.g., air temperature, air pressure, air humidity, etc., and thus the perceived frequency f can accordingly change.

FIG. 3illustrates the computer105actuating the transducer210to direct the acoustic message200toward a target205. As used herein, to “direct” the acoustic message200is to move the transducer210so that a flight path of the acoustic message200is toward the target205. As used herein, a “flight path” is a path along which the acoustic message200travels. That is, the computer105can rotate the transducer210toward the target205(i.e., along a straight line between the transducer210and the target205), and the transducer210can steer the flight path of the acoustic message200toward of the target205. The computer105can identify a direction vector300(i.e., a line starting at the transducer210and ending at the target205in a two-dimensional vehicle coordinate system) and can rotate the transducer210to a specified angle θ defined between the direction vector300and a forward direction305of the transducer210to align the flight path of the acoustic message200with the direction vector300.

The computer105can identify the target205. The computer105can actuate one or more sensors110to collect data115about the target205. The computer105can predict a target trajectory310based on the data115of the target205. As used herein, a “trajectory” is set of data including a speed, position, and direction of travel for each of one or more times, and a “predicted trajectory” is a prediction of the speed and path (i.e., the position along the direction of travel) of an object, e.g., the vehicle101, the target205, etc., over each of one or more times. The target trajectory310indicates the path and speed the computer105predicts the target205will follow. The trajectory310of the target205can be based on a type of target205, e.g., a pedestrian, a cyclist, etc. As used herein, a “type” of target205is a classification of the target205based on a characteristic and/or a component that affect the speed and position of the target205. For example, the type “cyclist” indicates that the target205includes a human-powered cycle, e.g., a unicycle, a bicycle, a tricycle, a quadricycle, etc. In another example, the type “pedestrian” indicates that the target205has no additional component to move, i.e., the target205walks and/or runs. The computer105can identify the type of the target205based on data115collected by the sensors110. In addition, the computer105can, based on data115from one or more sensors110, determine a distance between the vehicle101and the target205and the target type, e.g. a person in another vehicle, a person on a skateboard, etc., and can adjust a magnitude of the emitted sound wave of the acoustic message200to achieve a desired message magnitude intensity at the target205.

Upon identifying the type of the target205, the computer105can predict the target trajectory310based on the type of the target205. For example, if the type of the target205is “pedestrian,” the computer105can predict the trajectory310of the target205based on values for pedestrian speed, e.g., 5-10 kilometers per hour (kph), determined by empirical testing of pedestrian movement and stored in the data store106and/or the server130. In another example, if the type of the target is “cyclist,” the computer105can predict the trajectory of the target205based on values for cyclist speed, e.g., 15-25 kph, determined by empirical testing of cyclist movement and stored in the data store106and/or the server130. Alternatively, the computer105may utilize a trained neural network based on data115from one or more sensors110, e.g. images, depth maps, point clouds, and prior determined data115, e.g. HD-maps, to determine a position, orientation, and/or trajectory of the target205into the future. The computer105can incorporate motion and path planning of the vehicle101into the calculation. The computer105can store values for each of a plurality of types of targets205and can predict the target trajectory310based on the specific type of target205to determine a more precise adjustment to the frequency of the acoustic message200.

The computer105can predict a vehicle trajectory315of the vehicle101. The predicted vehicle trajectory315indicates the path and speed that the computer105predicts the vehicle101will follow. The computer105can collect data115about the vehicle101with one or more sensors110, including data115about a vehicle101speed, direction of travel, turn rate, etc. The computer105can also account for a propagation time of a sound wave relative to predicted future vehicle and target relative trajectories when adjusting the acoustic message200. The computer105can predict the vehicle trajectory315based on the collected data115. Based on the predicted target trajectory310and the predicted vehicle trajectory315, the computer105can adjust the frequency of the acoustic message200. That is, the computer105can receive specific frequencies at which to actuate the transducer210from the data store106and can as is conventionally known cause a supply electricity to the transducer210at frequencies adjusted from the specific frequencies from the data store106, e.g., frequencies adjusted higher or frequencies adjusted lower than those stored in the data store106. Thus, the computer105can actuate the transducer210to emit the acoustic message200at frequencies adjusted according to the predicted target trajectory310and the predicted vehicle trajectory315.

The computer105can identify the relative velocity magnitude Vrelbetween the target205and the vehicle101(i.e., a radial velocity) based on the predicted trajectories310,315. As used herein, the “relative velocity” is the relative speed between the target205and the vehicle101. The computer105can determine the relative velocity Vrelbased data115from the sensors110indicating the respective velocities of the vehicle101and the target200. As described above, the relative velocity Vrelcan cause a frequency shift of the acoustic message200as the waves of the acoustic message200compress or expand while travelling from the transducer210. The computer105can adjust the frequency of the acoustic message200based on the relative velocity Vrelto minimize the frequency shift.

The computer105can identify the frequency shift (i.e., a Doppler shift) of the acoustic message200based on the predicted target trajectory310and the predicted vehicle trajectory315. As described above, the computer105can determine the relative velocity Vrelbetween the vehicle101and the target205, and thus the computer105can determine the perceived frequency f. The computer105can determine the frequency shift as the difference between the perceived frequency f and the emitted frequency f0.

The computer105can adjust the emitted frequency f0of the acoustic message200based on the predicted target trajectory310and the predicted vehicle trajectory315. As described above, the computer105can identify the frequency shift between the emitted frequency f0of the acoustic message200emitted from the transducer210and the perceived frequency f of the acoustic message perceived by the target205. The computer105can adjust the emitted frequency f0of the acoustic message200to reduce the frequency shift below a shift threshold. The shift threshold can be determined based on, e.g., empirical testing of frequency changes perceptible by targets205.

The computer105can determine an intended frequencyfat which the target205should perceive the acoustic message. The intended frequencyfcan be, e.g., the frequency at which the acoustic message was initially recorded, a predetermined frequency selected based on empirical acoustic testing of users, etc. The computer105can determine a frequency adjustment Δf to the emitted frequency f0such that the target205perceives the acoustic message200at the intended frequencyfwithin the shift threshold:

Upon determining the frequency adjustment Δf, the computer105can adjust the emitted frequency f0of the acoustic message200by the frequency adjustment Δf. The computer105can actuate the transducer210to adjust the frequency of the acoustic message200to supply electricity to the transducer210to vibrate the diaphragm at the shifted frequency f0+Δf such that the target205receives the acoustic message200at substantially the intended frequencyf.

The computer105can determine the frequency adjustment Δf with a phase-locked loop. As used herein, a “phase-locked loop” is a control algorithm that acquires and tracks phase and frequency offsets of a signal. The phase-locked loop includes a phase-frequency detector, a loop filter, and a voltage-controlled oscillator. The phase-frequency detector detects a phase difference and a frequency difference between an input signal and an output signal. The loop filter can be, e.g., a band-pass filter to reduce noise from the input signal. The voltage-controlled oscillator adjusts a voltage of the filtered input signal to reduce a frequency difference between the input signal and the output signal, i.e., to “lock” the frequency. Alternatively or additionally, the computer105can apply a feedforward algorithm to estimate frequency and/or phase offsets, e.g., estimating phase offsets of input and output signals to predict the frequency adjustment Δf. Yet further alternatively or additionally, the computer105can apply frequency-modulated waveforms and/or differentially encoded phase modulation to account for frequency shifts that are small relative to a frequency range of the acoustic message200. Yet further alternatively or additionally, the computer105can apply the phase-locked loop to determine the frequency adjustment Δf for a plurality of targets205, as described below, which may have different respective perceived frequencies f. The computer105can determine, e.g., an average frequency adjustment Δf with the phase-locked loop such that the targets205perceive a substantially consistent frequency of the acoustic message.

The computer105can, upon determining the perceived frequency f, apply the phase-locked loop to the acoustic message200to determine the frequency adjustment Δf. The computer105can apply the phase-locked loop to adjust the emitted frequency f0such that the perceived frequency f is within the shift threshold of the intended frequencyf. That is, the computer105can determine the frequency adjustment Δf with the phase-locked loop using the perceived frequency f as the input signal and the intended frequencyfas the output signal, from which the phase-locked loop can determine the frequency difference to lock the frequency at the intended frequencyf, i.e., the frequency adjustment Δf.

While emitting the acoustic message200, the current trajectory of the target205and/or the current trajectory of the vehicle101can change, e.g., the target205may slow down, the vehicle101may shift roadway lanes, etc. The changes to the target trajectory and/or the vehicle trajectory can generate a new frequency shift to the acoustic message200. The computer105can identify the changes in the target trajectory and/or the vehicle trajectory and adjust the frequency of the acoustic message200based on the changes. The computer105can predict a second target trajectory310and a second vehicle trajectory315while emitting the acoustic message200. Based on the second predicted target trajectory310and the second predicted vehicle trajectory315, the computer105can determine a second frequency adjustment Δf and adjust the remainder of the acoustic message200based on the second frequency adjustment Δf. Thus, the computer105can repeatedly adjust the acoustic message200based on the changing predicted trajectories310,315such that the target205receives substantially the intended frequencyffor the entire acoustic message200.

FIG. 4illustrates an example vehicle101transmitting an acoustic message200to a plurality of targets205. The computer105can identify a plurality of targets205and determine to transmit an acoustic message200to the targets205. The example ofFIG. 4shows two targets, a first target205cand a second target205d, and the computer105can identify a different number of targets205, e.g., three, four, etc.

The computer105can predict a first target trajectory400for the first target205cand a second target trajectory405for the second target205d. Because the targets205c,205deach move along their respective trajectories400,405, the targets205c,205dcan each perceive the acoustic message200with a different frequency shift. For example, the first target205ccan be a cyclist who may be moving at about 20 kph, and the second target205dcan be a pedestrian moving at 5 kph. The different speeds at which the target205c,205dmove can affect the perceived frequency of the acoustic message200. Alternatively, the target205can change a velocity direction, resulting in a change to the relative velocity Vrelthat can result in a different frequency shift. For example, the predicted trajectory405of the target205ccan change as a result of a turn from a current trajectory, e.g., from a sidewalk into a crosswalk.

To minimize the frequency shifts, the computer105can, based on the predicted first target trajectory400and the predicted second target trajectory405, determine a frequency adjustment Δf and adjust the frequency of the acoustic message200. The frequency adjustment Δf can be based on, e.g., an average relative velocity Vrelbased on respective relative velocities between the vehicle101and each of the targets205c,205d. Thus, the computer105transmit the acoustic message200adjusted by the frequency adjustment Δf to minimize the frequency shifts from the different trajectories400,405of the targets205c,205d.

FIGS. 5-6are diagrams of changes to a speed of sound c in air based on changes in air pressure, temperature, and humidity. In addition to the relative velocity Vrelbetween the vehicle101and the target205, the frequency of the acoustic message200can be affected by the speed of sound c in the surrounding environment, e.g., the surrounding air. As described below, the computer105can adjust the acoustic message200based on the specific speed of sound c for the ambient air surrounding the vehicle101.

FIG. 5is a diagram500illustrating changes to the speed of sound c for an example 1000 Hz acoustic wave in air at 20° C. based on changes to air pressure and humidity. The vertical axis represents the speed of sound c in meters per second (m/s). The horizontal axis represents air pressure in atmospheres.

A first curve505shows the change in the speed of sound c for different air pressures at 0% humidity. As the air pressure increases from 1 atmosphere to 5 atmospheres, the speed of sound c increases linearly from about 343.5 m/s to about 344.0 m/s. A second curve510shows the change in the speed of sound c for different air pressures at 100% humidity. As the air pressure increases from 1 atmosphere to 5 atmospheres, the speed of sound c decreases from about 344.5 m/s to about 344.0 m/s. Based on the elevation of the surrounding area, the ambient air pressure may typically be about 0.8-1.1 atmospheres.

FIG. 6is a diagram600illustrating the changes to the speed of sound c for an example 1000 Hz acoustic wave at 1 atmosphere based on changes to ambient temperature and humidity. The vertical axis represents the speed of sound c in meters per second (m/s). The horizontal axis represents temperature in Kelvin (K).

A first curve605shows the change in the speed of sound c for different temperatures at 0% humidity. As the temperature increases from 280 K (7° C.) to 320 K (47° C.), the speed of sound c increases from about 330 m/s to about 350 m/s. A second curve610shows the change in the speed of sound c for different temperatures at 100% humidity. As the temperature increases from 280 K (about 7° C.) to 320 K (about 47° C.), the speed of sound c increases from about 330 m/s to about 355 m/s.

The computer105can determine at least one weather datum and adjust the frequency of the acoustic message200based on the speed of sound c defined by the datum. The weather datum can be at least one of an ambient air temperature, an ambient air humidity, and/or an ambient air pressure. The computer105can determine the weather datum based on, e.g., data115from the sensors110and/or the server130. The computer105can determine an ambient speed of sound c based on the weather datum. For example, the computer105can include a look-up table or the like, e.g., based on graphs like those shown inFIGS. 5-6, stored in the data store106and/or the server130. Based on the specific weather datum, the computer105can determine the ambient speed of sound c and can determine the frequency adjustment Δf based on the ambient speed of sound c. Thus, the computer105can determine a more precise frequency adjustment Δf to account for changes in the speed of sound c.

FIG. 7is a block diagram of an example process700for emitting an acoustic message200from a vehicle101. The process700begins in a block705, in which the computer105actuates one or more sensors110to collect data115from an environment surrounding the vehicle101. The computer105can collect data about one or more targets205, including a target205speed, position, acceleration, etc.

Next, in a block710, the computer105predicts a target trajectory310. As described above, the predicted target trajectory310indicates the path and speed the computer105predicts the target205will follow. Based on the data115, the computer105can predict a direction of travel and speed of the target205to determine the target trajectory310. As described above, the computer105can predict the target trajectory310based on a type of the target205, e.g., a pedestrian, a cyclist, etc.

Next, in a block715, the computer105predicts a vehicle trajectory315. As described above, the predicted vehicle trajectory315indicates the path and speed the computer105predicts the vehicle101will follow. Based on data115of the current vehicle101speed and direction of travel, the computer105can predict the vehicle trajectory315as the vehicle101approaches the target205.

Next, in a block720, the computer105predicts a frequency shift (i.e., a Doppler shift) of an acoustic message200emitted from the vehicle101. As described above, the computer105can determine a relative velocity Vrelbetween the target205and the vehicle101based on the predicted target trajectory310and the predicted vehicle trajectory315. The computer105can determine an ambient speed of sound c based on ambient weather data115, e.g., an ambient air pressure, an ambient air temperature, an ambient humidity, etc. Based on the relative velocity Vrel, the emitted frequency f0of the acoustic message, and the ambient speed of sound c, the computer105can determine the perceived frequency f that the target205will perceive the acoustic message200. The difference in the perceived frequency f and the emitted frequency f0is the frequency shift.

Next, in a block725, the computer105determines an adjustment for the frequency of the acoustic message200. As described above, the computer105can determine a frequency adjustment Δf such that the target205will perceive the acoustic message200at an intended frequencyf. For example, the computer105can apply a phase-locked loop to determine the frequency adjustment Δf, as described above. The computer105can actuate the transducer210to emit the acoustic message200adjusted by the frequency adjustment Δf. That is, the computer105can supply electricity to vibrate the diaphragm of the transducer210at the adjusted frequency f0+Δf to emit the acoustic message200to account for the frequency shift.

Next, in a block730, the computer105determines a current trajectory of the target205and a current trajectory of the vehicle101and determines whether the current trajectory of the target205and/or the current trajectory of the vehicle101has changed from the respective predicted trajectories310,315. The current trajectories can change based on, e.g., the target205slowing, the vehicle101braking, etc. If one or both of the current trajectories changes, the relative velocity Vrelmay change, causing a different frequency shift. If at least one of the trajectories of the target205or the vehicle101changes, the process700returns to the block710to predict a second trajectory310for the target205. Otherwise, the process700continues in a block735.

In the block735, the computer105determines whether to continue the process700. For example, the computer105may determine to continue the process700when the acoustic message200has not completed. In another example, the computer105may determine not to continue the process700when the vehicle101passes the target205. If the computer105determines to continue, the process700returns to the block705to collect more data115. Otherwise, the process700ends.

Computing devices discussed herein, including the computer105and server130include processors and memories, the memories generally each including instructions executable by one or more computing devices such as those identified above, and for carrying out blocks or steps of processes described above. Computer executable instructions may be compiled or interpreted from computer programs created using a variety of programming languages and/or technologies, including, without limitation, and either alone or in combination, Java™, C, C++, Visual Basic, Java Script, Perl, Python, HTML, etc. In general, a processor (e.g., a microprocessor) receives instructions, e.g., from a memory, a computer readable medium, etc., and executes these instructions, thereby performing one or more processes, including one or more of the processes described herein. Such instructions and other data may be stored and transmitted using a variety of computer readable media. A file in the computer105is generally a collection of data stored on a computer readable medium, such as a storage medium, a random access memory, etc.

With regard to the media, processes, systems, methods, etc. described herein, it should be understood that, although the steps of such processes, etc. have been described as occurring according to a certain ordered sequence, such processes could be practiced with the described steps performed in an order other than the order described herein. It further should be understood that certain steps could be performed simultaneously, that other steps could be added, or that certain steps described herein could be omitted. For example, in the process700, one or more of the steps could be omitted, or the steps could be executed in a different order than shown inFIG. 7. In other words, the descriptions of systems and/or processes herein are provided for the purpose of illustrating certain embodiments and should in no way be construed so as to limit the disclosed subject matter.

The article “a” modifying a noun should be understood as meaning one or more unless stated otherwise, or context requires otherwise. The phrase “based on” encompasses being partly or entirely based on.