Patent Description:
Vehicles equipped with V2X systems periodically transmit messages including safety messages, which convey information about the vehicle useful for avoiding collisions and route planning by autonomous and semi-autonomous vehicles as well as traffic management systems. Safety messages may include vehicle localizing information, such as position, vehicle dimensions, velocity, and acceleration. Safety messages are transmitted by vehicles to enable other vehicles within communication range to assess whether there are roadway hazards and avoid collisions. Various forms of safety messages are defined in V2X standards, such as the SAE J2735 Message Set Dictionary or the ETSI EN <NUM><NUM> family of specifications under ETSI ITS-G5. Examples of safety messages defined in different V2X standards include a "Basic Safety Message" (BSM), a "Cooperative Awareness Message" (CAM), and a "Decentralized Environmental Notification Message" (DENM). For ease of description but not limitation, all forms and protocols of safety messages will be referred to herein as "BSMs.

In the case of a vehicle towing something (referred herein as a "towed object"), such as a trailer, boat, camper, or another vehicle, the BSM is supposed to include the total length of the combination of the towing vehicle and the towed object. Currently, the length of a towed objection has to be entered into the vehicle's V2X system manually, such as by a user. Given human error or failure to enter information, this requirement for manual information entry means that sometimes the length of the towed object is not entered and thus not reflected in BSMs. When this happens, the BSMs fail to notify other vehicles of the actual combined length of the towing vehicle and the towed object or that there is even an object being towed.

In <CIT>, a vehicle, hitch, and articulating trailer include vehicle to vehicle and infrastructure communications and vehicle computing systems, which have a controller coupled to and/or including one or more of a dynamics measurement unit, a transceiver, and a position sensor, among other components. The controller(s) are configured to, in response to detecting positions of trailer corners from the position sensor, generate vehicle and trailer relative orientation and navigation data including location, velocity, and orientation, utilizing vehicle and trailer electronic polyhedrons articulating about a hitch point and representing the combination vehicle and trailer predicted path and envelopes. In response to detected trailer movement relative to the hitch point, the generated articulated polyhedrons are generated with the navigation data, which includes the location, speed, and orientation, which are in turn communicated to nearby vehicles and roadway infrastructure. Initial trailer vertices may be generated with wireless and mobile devices to generate the trailer polyhedron.

Features of some embodiments are recited in dependent claims.

The accompanying drawings, which are incorporated herein and constitute part of this specification, illustrate exemplary embodiments, and together with the general description given above and the detailed description given below, serve to explain the features of various embodiments.

Various embodiments will be described in detail with reference to the accompanying drawings. References made to particular examples and embodiments are for illustrative purposes and are not intended to limit the scope of the claims.

Many sensors, such as wireless video cameras, are available that may be mounted on a towed object to provide information to the towing vehicle or the driver thereof. For example, a backup camera mounted on the back of a trailer may allow a driver of the towing vehicle to monitor the environment behind the trailer and aid in backing up the combined vehicles. Similarly, other sensors may be mounted on the towed object, such as accelerometers, proximity sensors, motion sensors, radar, lidar etc. Such sensors may use Wi-Fi, Bluetooth, Ultra-wide band (UWB), or other short-range wireless technologies to send data (e.g., video images) to the towing vehicle. Many short-range wireless technologies, like Wi-Fi, Bluetooth, and Ultra-wide band (UWB) include capabilities to determine the distance traveled by signals, such as ranging techniques. Examples include High Accuracy Indoor Positioning (HAIP) in Bluetooth, Wi-Fi Location (using Fine Timing Measurement or IEEE <NUM>. 11az), or IEEE <NUM>. 4z for UWB.

Examples presented in this disclosure include methods and systems that leverage conventional sensors, like backup cameras (in the independent claims, the sensor is a camera), that can be mounted on a towed object (i.e., a trailer) and use Wi-Fi, Bluetooth, UWB, or other short-range wireless signals to communicate with one or more receivers on the towing vehicle. The same short-range wireless signals used for communications between the remote sensor (backup camera) and the receiver on the towing vehicle are used to measure distance the distance between the sensor and one or more antennas on the towing vehicle. By using Wi-Fi, Bluetooth, or UWB ranging techniques, the distance between the remote sensor located on the towed object and the one or more antennas located on the towing vehicle may be automatically measured, relieving the operator of the need to estimate or physically measure the distance to the back end of the towed object from either the front or rear end of the towing object as would be required to manually enter this information in V2X system. The automatically measured distance may be used by a vehicle system, such as a V2X system, to populate BSM messages with accurate trailer position and dimension data, including in particular the combined or overall length of the towing vehicle and the towed object.

Various examples presented in this disclosure enable simple off-the-shelf sensors, like wireless backup cameras or proximity sensors (in the independent claims, the sensor is a camera), to be used to automatically provide information regarding the distance to the end of a towed object (e.g., a trailer) that a V2X system can use to populate BSM messages with the position and combined length of the combination of the towing vehicle and the towed object. This relieves the operator of the need to manually enter into the V2X system trainer or combination vehicle and trailer length information. Thus, such sensors, which tend to be inexpensive, may be used to provide new safety features, including ensuring the vehicle length data is accurate in BSM transmissions by towing vehicles. In addition, such new safety features may be added to vehicles without the need for wiring or complex system integration, which may be difficult and/or expensive.

As used herein, the term "vehicle" refers to one of various types of vehicles, such as automobiles, trucks, buses, etc. A vehicle may be autonomous, semi-autonomous, or non-autonomous, operating with and/or without onboard human drivers. A vehicle may include an onboard computing device configured to receive and transmit ITS messages (e.g., BSMs) to one or more other nearby vehicles and/or base stations (e.g., Node B/eNodeB) via wireless communications in accordance with various embodiments. C-V2X has two different modes of communication, namely Mode <NUM>, which includes communication to infrastructure, and Mode <NUM>, in which vehicles communicate with each other directly (i.e., V2V) without any infrastructure (also referred to as sidelink communications).

As used herein, the term "V2X system" refers to any of a variety of vehicle processing and communication systems configured to transmit and receive messages consistent with an ITS standard, including the generation and transmission of BSMs. A V2X system (also known as a "wireless device") may include at least a processor, communication system, and memory (i.e., electronic storage) within or built into a vehicle for transmitting and receiving ITS messages (e.g., BSMs) via wireless communications. A V2X system may be equipped with a mobile broadband adapter, and/or any similar device(s) configured to connect to a base station, as specified in 3GPP specifications, European Telecommunications Standards Institute (ETSI) specifications, IEEE specifications, or other similar specifications. V2X systems may support sidelink communications between two or more other V2X systems. For example, a first vehicle having sidelink communication resources may be configured to transmit messages to a second vehicle configured to receive sidelink communications, and vise-versa. Sidelink communications may be conducted without the support of a communication network. Sidelink communications may include logical sidelink channels for V2X systems to exchange and coordinate settings and data to control signaling and coordinate the use of the allocated frequencies. The more information a V2X system has about the availability of sidelink communication resources, the more efficiently the V2X system may perform sidelink communications.

As used herein, the term "base station" refers to an entity that communicates with wireless devices (e.g., V2X systems), and also may be referred to as an NodeB, a Node B, an LTE evolved nodeB (eNB), an access point (AP), a radio head, a transmit receive point (TRP), a New Radio base station (NR BS), a <NUM> NodeB (NB), a Next Generation NodeB (gNB), or the like. Each base station may provide communication coverage for a particular geographic area. In 3GPP, the term "cell" can refer to a coverage area of a base station, a base station subsystem serving this coverage area, or a combination thereof, depending on the context in which the term is used. The base station may provide a connection between communicating vehicles and/or communicate directly with one or more vehicles. The base station may operate as a hub for communications to and/or from one or more vehicles. A base station may provide communication coverage for a macro cell, a pico cell, a femto cell, another type of cell, or a combination thereof. A macro cell may cover a relatively large geographic area (for example, several kilometers in radius) and may allow unrestricted access by mobile devices with service subscription. A pico cell may cover a relatively small geographic area and may allow unrestricted access by mobile devices with service subscription. A femto cell may cover a relatively small geographic area (for example, a home) and may allow restricted access by mobile devices having association with the femto cell (for example, mobile devices in a closed subscriber group (CSG)). A base station may support one or multiple (for example, three) cells.

The term "system in a package" (SIP) may be used herein to refer to a single module or package that contains multiple resources, computational units, cores and/or processors on two or more IC chips, substrates, or SOCs. For example, a SIP may include a single substrate on which multiple IC chips or semiconductor dies are stacked in a vertical configuration. Similarly, the SIP may include one or more multichip modules (MCMs) on which multiple ICs or semiconductor dies are packaged into a unifying substrate. A SIP may also include multiple independent SOCs coupled together via high speed communication circuitry and packaged in close proximity, such as on a single motherboard or in a single wireless device. The proximity of the SOCs facilitates high speed communications and the sharing of memory and resources.

As used herein, the terms "component," "system," "unit," "module," and the like include a computer-related entity, such as, but not limited to, hardware, firmware, a combination of hardware and software, software, or software in execution, which are configured to perform particular operations or functions. For example, a component may be, but is not limited to, a process running on a processor, a processor, an object, an executable, a thread of execution, a program, and/or a computer. As an illustration, both an application running on a communication device and the communication device may be referred to as a component. One or more components may reside within a process and/or thread of execution and a component may be localized on one processor or core and/or distributed between two or more processors or cores. In addition, these components may execute from various non-transitory computer readable media having various instructions and/or data structures stored thereon. Components may communicate As a local and/or remote processes, function or procedure calls, electronic signals, data packets, memory read/writes, and other known computer, processor, and/or process related communication methodologies.

Various embodiments may be implemented within a variety of intelligent transportation systems, an examples of which are illustrated in <FIG> as system <NUM> and in <FIG> as system <NUM>. In the example system <NUM> illustrated in <FIG>, processes of determining distances to remote sensor <NUM> on the rear of a towed object are performed within a V2X system. In the example system <NUM> illustrated in <FIG>, processes of determining distances to the remote sensor <NUM> on the rear of a towed object are performed within an intermediate processing system, such as a backup camera display system, with distance information determined by the intermediate processing system provided to the V2X system for use in populating BSMs.

With reference to <FIG>, the transportation control system <NUM> may include a towing vehicle <NUM> connected to a towed object <NUM>, such as any type of trailer (e.g., camper, flatbed, enclosure, refrigerated, lowboy, step deck, gooseneck, specialty, etc.). The towed object <NUM> may be any object configured to be hauled by a vehicle on roads, including automotive and non-automotive vehicles. In addition, the transportation control system <NUM> may include one or more additional vehicle(s) <NUM> and/or one or more base stations <NUM>, both configured to communicate with the towing vehicle <NUM> traveling on a roadway.

The towing vehicle <NUM> and the additional vehicle(s) <NUM> may be configured to use radar systems for navigation, measuring distances, proximity alerts, and other vehicular functions. Such radar systems may enable or assist the vehicles <NUM>, <NUM> in avoiding collisions and staying on the roadway. In addition, each vehicle <NUM>, <NUM> may also be configured to compile and transmit BSMs through sidelink communications (i.e., PC5 in 3GPP), via a wireless communication link <NUM>. The BSMs allow each vehicle to convey to another vehicle their own vehicle information, such as acceleration, velocity, position, and vehicle dimensions. The BSMs may also help the vehicles avoid collision with one another. In accordance with various embodiments, the towing vehicle <NUM> may be configured to generate and transmit enhanced BSMs, which include position and dimensional information corresponding to the towed object <NUM>, to the additional vehicle(s) <NUM> and/or the base station(s) <NUM>.

The base station(s) <NUM> and the additional vehicle(s) <NUM> may include various circuits and devices used to control operations thereof, such as a processor, memory, and transceiver(s) for receiving BSMs, such as from the towing vehicle <NUM> through wireless signals in a wireless communication link <NUM>. The base station <NUM> may also receive BSMs from the additional vehicle(s) <NUM>. In addition, the base station <NUM> exchange information with a communication network <NUM> and remote servers or other remote computing devices (e.g., transportation control server(s)).

In various embodiments, the towing vehicle <NUM> may include a V2X system <NUM>, which may include various circuits and devices used to control operations thereof. In the example illustrated in <FIG>, the V2X system <NUM> includes a processor <NUM>, memory <NUM>, an input module <NUM>, and an output module <NUM>. The V2X system <NUM> may communicate with other onboard vehicle resources (e.g., sensors, drive systems, navigation systems, etc.) using the input module <NUM> and output module <NUM>. In addition, the V2X system <NUM> may be coupled to and configured to communicate through one or more intra-vehicle transceivers <NUM>, <NUM> and off-vehicle transceiver(s) <NUM> using wireless communications. The intra-vehicle transceivers <NUM>, <NUM> may be configured to be coupled to one or more antenna(s) <NUM>/<NUM> mounted on the vehicle and used to exchange or at least receive wireless signals in one or more wireless communication links <NUM>, <NUM> from at least one remote sensor <NUM>. The off-vehicle transceiver(s) <NUM> may be used to exchange wireless signals in wireless communication links <NUM>, <NUM> with the base station(s) <NUM> or additional vehicle(s) <NUM>, respectively.

In the independent claims, the remote sensor <NUM> is a camera (e.g., a backup camera). The remote sensor <NUM> may be battery powered (i.e., includes its own power source), powered from a power source on the towed object, and/or powered from a power source on the towing vehicle (e.g., through a wired connection). The remote sensor <NUM> may include a processor <NUM>, memory <NUM>, a transceiver <NUM>, and detector components <NUM> configured to detect, measure, and/or respond to particular environmental properties. The remote sensor <NUM> is configured to communicate sensor data (image or video data) to the V2X system <NUM> using the transceiver <NUM> (e.g., a radio-frequency transmitter) through wireless communications by exchanging signals over the wireless communication links <NUM>, <NUM> with the intra-vehicle transceiver(s) <NUM>/<NUM>. The transceiver <NUM> may be a short-range device that uses low-power (e.g., <NUM>-<NUM> milliwatts effective radiated power (ERP) or less, depending on the frequency band). Such short-range devices generally have a limited useful range of at most a hundred meters, but do not require a license and tend to be less expensive than higher power (i.e., longer range) devices. As used herein, the expression "short-range wireless signals" refers to signals that travel from a few centimeters to several meters, as defined by IEEE <NUM>. <NUM>, which is a technical standard that defines operation of low-rate wireless personal area networks.

In various embodiments, the wireless communication links <NUM>,<NUM> use short-range wireless signals, such as Wi-Fi, Bluetooth, and/or UWB, which may also provide ranging and/or position location information. For example, in the embodiment illustrated in <FIG>, if the remote sensor <NUM> is a backup camera, a video stream of its field of view <NUM> may be relayed to the V2X system <NUM> the intra-via the vehicle transceiver(s) <NUM>/<NUM> over one or both of the wireless communication links <NUM>, <NUM>. In addition, using any of a variety of wireless signal ranging techniques analyzing the signals forming the wireless communication links <NUM>, <NUM> between the remote sensor <NUM> and the antenna(s) <NUM>/<NUM>. In this manner, the wireless communication links <NUM>, <NUM> used to transmit sensor data may also be used to determine distances (e.g., D<NUM>, D<NUM>) to the remote sensor <NUM> on the towing vehicle <NUM>, particularly from the sensor transceiver <NUM>, to each of the one or more antenna(s) <NUM>/<NUM> mounted on the vehicle and coupled to the intra-vehicle transceiver(s) <NUM>, <NUM>.

The V2X system <NUM> may receive the short-range wireless signals from the transceiver <NUM> via the wireless communication links <NUM>, <NUM> and the intra-vehicle transceiver(s) <NUM>/<NUM>. The wireless communication links <NUM>, <NUM> may be bidirectional or unidirectional communication links, and may use one or more communication protocols. For example, in accordance with the independent claims, the remote sensor <NUM> is a backup camera and the short-range wireless signals encode image data from the camera, such as a video stream, which may be received by the V2X system <NUM>. In addition, control commands may be transmitted from the V2X system <NUM> to the remote sensor <NUM>. In some embodiments, the processor <NUM> of the V2X system <NUM> may process the video stream, such as on a display inside the towing vehicle <NUM>.

Alternatively, a separate or intermediate processor may be used to process the video stream as illustrated in <FIG>, as well as perform operations of determining distances (e.g., D<NUM>, D<NUM>) to the remote sensor <NUM> on the towing vehicle <NUM>, and providing the distance information to the V2X system <NUM> (e.g., via a data cable connection). In some embodiments some or all of the components (e.g., the processor <NUM>, the memory <NUM>, the input module <NUM>, the output module <NUM>, the intra-vehicle transceiver(s) <NUM>, <NUM>, and/or the off-vehicle transceiver(s) <NUM>) may be integrated in a single device or module, such as a system-on-chip (SOC) processing device. Such an SOC processing device may be configured for use in vehicles and be configured, such as with processor-executable instructions executing in the processor <NUM>, to perform operations of various embodiments.

<FIG> is schematic diagram illustrating another example transportation control system <NUM> suitable for implementing any of various embodiments. With reference to <FIG>, the transportation control system <NUM> may include the same or similar elements to those described with regard to the transportation control system <NUM> above. In addition, the transportation control system <NUM> may include an intermediate processing system <NUM> that is separate from the V2X system <NUM> of the towing vehicle <NUM>. For example, the intermediate processing system <NUM> may be a dedicated sensor monitoring system, such as a video monitoring system for a backup camera.

The intermediate processing system <NUM> may perform some of the V2X system <NUM> functionality of the transportation control system <NUM>. In particular, the intermediate processing system <NUM> may receive the short-range wireless signals, from the transceiver <NUM> via the wireless communication links <NUM>, <NUM> and the intra-vehicle transceiver(s) <NUM>/<NUM>. The wireless communication links <NUM>, <NUM> may be bidirectional or unidirectional communication links, and may use one or more communication protocols. Thus, the short-range wireless signals received by the intermediate processing system <NUM> from the transceiver <NUM> encode data from the remote sensor <NUM>, such as a video stream. The intermediate processing system <NUM> may process (i.e., de-code) the data encoded in the short-range wireless signals. In addition, control commands may be transmitted from the intermediate processing system <NUM> to the remote sensor <NUM> using one or both of the wireless communication links <NUM>, <NUM>.

The intermediate processing system <NUM> may include a processor <NUM>, memory <NUM>, an input module <NUM>, and an output module <NUM>. In addition, the intermediate processing system <NUM> may optionally include or be coupled to a display <NUM> for presenting (i.e., outputting) processed data from the remote sensor <NUM>. The intermediate processing system <NUM> may communicate with the main V2X system <NUM>, as well as other onboard vehicle resources (e.g., sensors, drive systems, navigation systems, etc.) using the input module <NUM> and output module <NUM>. Such communications with onboard vehicle resources may use wired or wireless connections <NUM> that may be bidirectional or unidirectional. In addition, the intermediate processing system <NUM> may be coupled to and configured to communicate through one or more of the intra-vehicle transceivers <NUM>, <NUM> using wireless communications. The intra-vehicle transceivers <NUM>, <NUM> may be used to exchange or at least receive wireless signals in one or more wireless communication links <NUM>, <NUM> from the at least one remote sensor <NUM>.

In some embodiments, the intermediate processing system <NUM> may process the short-range wireless signals received from the remote sensor <NUM> to determine the distance(s) (e.g., D1, D2) from one or more antennas coupled the receiver (i.e., the intra-vehicle transceivers <NUM>, <NUM> of the towing vehicle <NUM>) to the remote sensor <NUM> on the towed object <NUM>. In addition, the intermediate processing system <NUM> may then provide (i.e., transmit) the determined distance(s) (e.g., D<NUM>, D<NUM>) information to the V2X system <NUM> in a format that enables the V2X system to automatically populate fields in a Basic Safety Messages with information regarding locations or length of the vehicle and the towed object. Alternatively, the intermediate processing system <NUM> may pass along the short-range wireless signals or at least timing information thereof to the V2X system <NUM> for the distance determinations to be made by the V2X system <NUM>. Subsequently, the V2X system <NUM> may compile and populate one or more BSM's to include the position and combined length of the vehicle and the towed object based on the determined distance(s) from the remote sensor <NUM> to the one or more antennas (e.g., <NUM>, <NUM>) coupled to one or more receivers (e.g., <NUM>, <NUM>). Thereafter, the V2X system <NUM> may use the off-vehicle transceiver(s) <NUM> to transmit the enhanced BSMs to the base station(s) <NUM> and/or the additional vehicle(s) <NUM>.

In various embodiments a processor, either an intermediate processor <NUM> as illustrated in <FIG> or the V2X system processor <NUM> as illustrated in <FIG>, may be configured with processing capabilities to perform ranging computations that use the short-range wireless signals of the wireless communication links <NUM>, <NUM> to determine distances between the remote sensor <NUM> and the antennas <NUM>/<NUM> coupled to respective intra-vehicle transceiver(s) <NUM>/<NUM>. For example, the ranging computations may use time-of-flight or round-trip-time of the short-range wireless signals to determine the distance. In this way, a first distance D<NUM> may be determined from a first antenna <NUM> coupled to a first intra-vehicle transceiver <NUM>, at least functioning as a first receiver, to the remote sensor <NUM> on the towed object <NUM>. In particular, the first distance D<NUM> represents a straight-line distance between the transceiver <NUM> of the remote sensor <NUM> and the first antenna <NUM> coupled to a first intra-vehicle transceiver <NUM> of the towing vehicle <NUM>. In addition, by using a second intra-vehicle transceivers <NUM>, a second distance D<NUM> may be determined from a second antenna <NUM> coupled to a second intra-vehicle transceiver <NUM>, at least functioning as a second receiver, to the remote sensor <NUM> on the towed object <NUM>. Similarly, the second distance D<NUM> represents a straight-line distance between the transceiver <NUM> of the remote sensor <NUM> and the first antenna <NUM> coupled to the second intra-vehicle transceiver <NUM> of the towing vehicle <NUM>. Using more than one antenna <NUM>, <NUM> may provide redundancies for ensuring more accurate measurements. Also, by having at least two separate antennas <NUM>, <NUM> coupled to intra-vehicle transceivers (e.g., <NUM>, <NUM>) movements of the towed object <NUM> relative to the towing vehicle <NUM> may more accurately be detected through triangulation as described with reference to <FIG>.

In various embodiments, the processor <NUM> may include V2X processing capabilities configured to calculate vehicle position and/or dimension information, as well as populate BSM's with that information. Once one or both of the first and second distances D<NUM>, D<NUM> are determined (e.g., by an intermediate processor or by the V2X processor <NUM>), the processor <NUM> may populate BSMs with a position of the towed object based on the determined distance(s) D<NUM>, D<NUM>. In addition, the processor may populate the BSMs with a position of the towing vehicle <NUM> itself.

The off-vehicle transceiver(s) <NUM> may be configured for wireless communication by exchanging signals in one or more wireless communication links <NUM>, <NUM> with the base station <NUM> and/or the additional vehicle(s) <NUM>. The exchanged signals may include encoded information, such as BSMs, command signals for controlling maneuvering, signals from navigation facilities, etc. The wireless communication links <NUM>, <NUM> may include a plurality of carrier signals, frequencies, or frequency bands, each of which may include a plurality of logical channels. Also, the wireless communication links <NUM>, 11may utilize one or more radio access technologies (RATs). Examples of RATs that may be used in a wireless communication link include 3GPP LTE, <NUM>, <NUM>, <NUM> (e.g., NR), GSM, Code Division Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), Worldwide Interoperability for Microwave Access (WiMAX), Time Division Multiple Access (TDMA), and other mobile telephony communication technologies cellular RATs. Further examples of RATs that may be used in one or more of the various wireless communication links <NUM>, 11within the communication system may include medium range protocols such as LTE-U, LTE-Direct, LAA, MuLTEfire, Cellular V2X (also known as LTE-V2X) and relatively short range RATs such as Wi-Fi, ZigBee, Bluetooth, UWB, and Bluetooth Low Energy (LE).

The input module <NUM> may receive sensor data from one or more other vehicle sensors (e.g., a radar system) as well as electronic signals from other components, including the drive control components and the navigation components. The output module <NUM> may be used to communicate with or activate various components of the towing vehicle <NUM>, including the intra-vehicle transceiver(s) <NUM>, <NUM>, the off-vehicle transceiver(s) <NUM>, drive control components, navigation components, the sensor(s) directly onboard the towing vehicle <NUM>, and the remote sensor(s) <NUM>.

<FIG> illustrate plan views <NUM> of a towing vehicle <NUM> connected to a towed object <NUM> traveling on a roadway <NUM>. With reference to <FIG>, the towing vehicle <NUM> is driving in one of the two lanes with the towing object <NUM> following directly behind. In accordance with various embodiments, a vehicle system (e.g., the V2X system140, intermediate processing system <NUM>) may determine the one or more distances D<NUM>, D<NUM> from a one or more antennas on the towing vehicle, such as one or both of the antennas <NUM>, <NUM> coupled to intra-vehicle transceivers <NUM>, <NUM>, to a remote sensor <NUM> on the towed object <NUM> by processing short-range wireless signals in the wireless communication links <NUM>, <NUM> received from the remote sensor <NUM>.

With reference to <FIG>, the towing vehicle <NUM> is still driving in one of the two lanes of the roadway <NUM>, but now the back end of the towing object <NUM> has swerved into an adjacent lane. In accordance with various embodiments, processing the short-range of wireless signals received from the remote sensor <NUM> may include obtaining information regarding movements of the towed object <NUM> relative to the towing vehicle <NUM>. As shown, the lateral movement of the back end of the towed object <NUM> has caused a change in the distances between the antennas <NUM>, <NUM> and the remote sensor <NUM>. In particular, the distances have changed to shorter distances D'<NUM>, D'<NUM>.

Lateral movements of the back end of the towed object <NUM> will change (typically shorten) the distances between the antennas <NUM>, <NUM> and the remote sensor <NUM>. Thus, by continuously or regularly determining and monitoring the distances D'<NUM>, D'<NUM>, a vehicle system (e.g., the V2X system140, intermediate processing system <NUM>) may detect when towed object movements satisfy criteria indicating dangerous vehicle movements. For example, extreme swerving of the towed object <NUM> may be detected when either of the distances D'<NUM>, D'<NUM> shorten by more than a threshold change in distance. The threshold change in distance may be stored in the vehicle system (e.g., within the V2X system, an intermediate processing system, or within a separate camera display system) as a criterion for a dangerous vehicle movement condition (i.e., a dangerous swerve). As another example, the back end of the towed object <NUM> may experience smaller fishtailing-type lateral movements that do not satisfy the predetermined threshold change distance, but in cycling from side to side, the regular or periodic changes in either of the distances D'<NUM>, D'<NUM> for more than a threshold number of cycles may satisfy a different criterion for a dangerous vehicle movement (i.e., dangerous fishtailing).

Thus, in some embodiments, the vehicle system (e.g., the V2X system140, intermediate processing system <NUM>) may process the short-range wireless signals received from the remote sensor <NUM> to determine whether changes in the distance to the end of the towed object <NUM> from the antennas <NUM>, <NUM> on the towing vehicle <NUM> satisfies a dangerous vehicle movement criterion, such indicative of as extreme swerving or fishtailing. For example, a dangerous vehicle movement pattern criterion may be satisfied when observed changes in the measured distance match a predetermined pattern of regular shifts in the measured distance exceeding a threshold difference that is consistent with dangerous fishtailing. In response to determining that the movement of the towed object <NUM> relative to the one or more antennas on the towing vehicle <NUM> satisfies a dangerous or critical vehicle movement criterion, the V2X system may populate a critical event flag in a BSM to alert other vehicles to the potential danger.

In assessing the movements of the towed object <NUM>, the vehicle system (e.g., the V2X system140, intermediate processing system <NUM>) may take into account a current trajectory or path of the towing vehicle <NUM>. For example, if the towing vehicle <NUM> is rounding a sharp turn, the relative positions of the towing vehicle <NUM> and the towed object <NUM> shown in <FIG> does not satisfy a dangerous or critical vehicle movement criterion because the towed object <NUM> is following the towing vehicle <NUM>, and thus not swerving. Similarly, a duration or periodicity of changes in the distance measurement indicative of movements of the towed object <NUM> may also be taken into account, because a single or infrequent swerve of the towed object may be caused by wind or roadway conditions, and thus not an indication of dangerous fishtailing. Thus, a swerving or fishtailing event that only lasts seconds may not satisfy a dangerous or critical vehicle movement criterion if it does not reoccur or only reoccurs infrequently.

<FIG> illustrate plan views of additional transportation control system <NUM>, <NUM> that include a towing vehicle <NUM> connected to a towed object <NUM> with different antenna/receiver/sensor configurations in accordance with various embodiments.

With reference to <FIG>, the transportation control system <NUM> includes a towing vehicle <NUM> that only includes a single antenna <NUM> coupled to a single intra-vehicle transceiver (not shown separately), but the towed object <NUM> includes more than one remote sensor <NUM>. In particular, the towed object <NUM> includes four remote sensor <NUM>. By including more than one remote sensor <NUM>, the intra-vehicle transceiver <NUM> may be used to exchange or at least receive wireless signals from multiple wireless communication links <NUM>, <NUM>, <NUM>, <NUM> from each of the respective remote sensors <NUM>. Each of the multiple wireless communication links <NUM>, <NUM>, <NUM>, <NUM> may be used to determine distances from each of the remote sensors <NUM>, particularly from the respective transceivers therein (e.g., <NUM>), to the intra-vehicle transceiver <NUM> on the towing vehicle <NUM>. Using multiple remote sensors <NUM> may also provide redundancies and improve the detection of relative movements of the towed object <NUM>. Any number of remote sensors <NUM> may be used. While the remote sensors <NUM> may be disposed almost anywhere on the towed object <NUM>, having the remote sensors <NUM> located on the back end of the towed object <NUM> or the peripheral edges may more readily allow a vehicle system (e.g., the V2X system140, intermediate processing system <NUM>) to determine the furthest end or the outermost dimensions of the towed object <NUM>. BSM messages may not need to define a precise peripheral shape of the towed object <NUM>, only the length and optionally the width.

With reference to <FIG>, the transportation control system <NUM> includes a towing vehicle <NUM> that once again includes two antennas <NUM>, <NUM> coupled to intra-vehicle transceivers (not shown separately), but the towed object <NUM> includes two different kinds of remote sensors <NUM>, <NUM>. In accordance with the independent claims, the first remote sensor <NUM> is a backup camera, while the second remote sensor <NUM> may be a proximity sensor. Although two different remote sensors are used, distance information may be derived from each and from different points on the towed object <NUM>. Also, even though the second remote sensor <NUM> provides distance information for only one side of the towed object, since the second remote sensor <NUM> is disposed on a lateral edge (the right side), the opposite lateral edge (i.e., the left side) may be estimated to be the same lateral distance from a centerline of the towing vehicle <NUM>. The antennas <NUM>, <NUM> coupled to intra-vehicle transceivers <NUM>, <NUM> may be used to exchange or at least receive wireless signals from multiple wireless communication links <NUM>, <NUM>, <NUM>, <NUM> from each of the respective remote sensors <NUM>, <NUM>. The short-range wireless signals may be used for distance calculations for automatically populating BSM messages in accordance with various embodiments.

<FIG> is a component block diagram illustrating an example processing system <NUM> which may be included within and configured to perform the functionalities of a V2X <NUM> and/or an intermediate processing system <NUM> implementing any of various embodiments.

With reference to <FIG>, the illustrated example processing system <NUM> is in the form of a system in a package (SIP), which includes a two systems-on-chip (SOCs) <NUM>, <NUM> coupled to a clock <NUM>, a voltage regulator <NUM>, the intra-vehicle transceiver(s) <NUM>, <NUM>, the off-vehicle transceiver(s) <NUM>, and other sensors <NUM> (e.g., radar, lidar, etc.). In some embodiments, the first SOC <NUM> operates as central processing unit (CPU) of the wireless device that carries out the instructions of software application programs by performing the arithmetic, logical, control and input/output (I/O) operations specified by the instructions. In some embodiments, the second SOC <NUM> may operate as a specialized processing unit. For example, the second SOC <NUM> may operate as a specialized <NUM> processing unit responsible for managing high volume, high speed (e.g., <NUM> Gbps, etc.), and/or very high frequency short wave length (e.g., <NUM> mmWave spectrum, etc.) communications.

The first SOC <NUM> may include a digital signal processor (DSP) <NUM>, a modem processor <NUM>, a graphics processor <NUM>, an application processor <NUM>, one or more coprocessors <NUM> (e.g., vector co-processor) connected to one or more of the processors, memory <NUM>, custom circuity <NUM>, system components and resources <NUM>, an interconnection/bus module <NUM>, one or more temperature sensors <NUM>, a thermal management unit <NUM>, and a thermal power envelope (TPE) component <NUM>. The second SOC <NUM> may include a <NUM> modem processor <NUM>, a power management unit <NUM>, an interconnection/bus module <NUM>, a plurality of mmWave transceivers <NUM>, memory <NUM>, and various additional processors <NUM>, such as an applications processor, packet processor, etc..

The first and second SOC <NUM>, <NUM> may include various system components, resources and custom circuitry for managing sensor data, analog-to-digital conversions, wireless data transmissions, and for performing other specialized operations, such as decoding data packets and processing encoded audio and video signals for rendering in a web browser. For example, the system components and resources <NUM> of the first SOC <NUM> may include power amplifiers, voltage regulators, oscillators, phase-locked loops, peripheral bridges, data controllers, memory controllers, system controllers, access ports, timers, and other similar components used to support the processors and software clients running on a wireless device. The system components and resources <NUM> and/or custom circuitry <NUM> may also include circuitry to interface with peripheral devices, such as cameras, electronic displays, wireless communication devices, external memory chips, etc..

The first and second SOC <NUM>, <NUM> may communicate via interconnection/bus module <NUM>. The various processors <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM> may be interconnected to one or more memory elements <NUM>, system components and resources <NUM>, and custom circuitry <NUM>, and a thermal management unit <NUM> via an interconnection/bus module <NUM>. Similarly, the processor <NUM> may be interconnected to the power management unit <NUM>, the mmWave transceivers <NUM>, memory <NUM>, and various additional processors <NUM> via the interconnection/bus module <NUM>. The interconnection/bus module <NUM>, <NUM>, <NUM> may include an array of reconfigurable logic gates and/or implement a bus architecture (e.g., CoreConnect, AMBA, etc.). Communications may be provided by advanced interconnects, such as high-performance networks-on chip (NoCs).

The first and/or second SOCs <NUM>, <NUM> may further include an input/output module (not illustrated) for communicating with resources external to the SOC, such as the radio module <NUM>, sensor(s) <NUM>, a clock <NUM> and a voltage regulator <NUM>. Resources external to the SOC (e.g., clock <NUM>, voltage regulator <NUM>) may be shared by two or more of the internal SOC processors/cores.

In addition to the example processing system <NUM> discussed above, various embodiments may be implemented in a wide variety of computing systems, which may include a single processor, multiple processors, multicore processors, or any combination thereof.

<FIG> is a software architecture diagram illustrating a software architecture <NUM> including a radio protocol stack for the user and control planes in wireless communications suitable for implementing any of various embodiments. With reference to <FIG>, the V2X system <NUM> may implement the software architecture <NUM> to facilitate communications between the V2X system <NUM> and a base station <NUM> of a transportation control system (e.g., <NUM>). In various embodiments, layers in the software architecture <NUM> may form logical connections with corresponding layers in software of the base station <NUM>. The software architecture <NUM> may be distributed among one or more processors (e.g., the processors <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>).

The software architecture <NUM> may include a Non-Access Stratum (NAS) <NUM> and an Access Stratum (AS) <NUM>. The NAS <NUM> may include functions and protocols to support packet filtering, security management, mobility control, session management, and traffic and signaling between a subscriber identity module (SIM) of the V2X system <NUM> (e.g., SIM <NUM>) and its vehicle. The AS <NUM> may include functions and protocols that support communications between a SIM(s) (e.g., SIM(s) <NUM>) and entities of supported access networks (e.g., a base station <NUM>). In particular, the AS <NUM> may include at least three layers (Layer <NUM>, Layer <NUM>, and Layer <NUM>), each of which may contain various sub-layers.

In the user and control planes, Layer <NUM> (L1) of the AS <NUM> may be a physical layer (PHY) <NUM>, which may oversee functions that enable transmission and/or reception over the air interface. Examples of such physical layer <NUM> functions may include cyclic redundancy check (CRC) attachment, coding blocks, scrambling and descrambling, modulation and demodulation, signal measurements, etc. The physical layer may include various logical channels, including a Physical Downlike Control Channel (PDCCH) and a Physical Downlike shared Channel (PDSCH), or sidelink channels such as a Physical Sidelink Control Channel (PSCCH) and a Physical Sidelink Shared Channel (PSSCH).

In the user and control planes, Layer <NUM> (L2) of the AS <NUM> may be responsible for the link between the V2X system <NUM> and the base station <NUM> over the physical layer <NUM>. In various embodiments, Layer <NUM> may include a media access control (MAC) sublayer <NUM>, a radio link control (RLC) sublayer <NUM>, and a packet data convergence protocol (PDCP) <NUM> sublayer, each of which form logical connections terminating at the base station <NUM>.

In the control plane, Layer <NUM> (L3) of the AS <NUM> may include a radio resource control (RRC) sublayer <NUM>. While not shown, the software architecture <NUM> may include additional Layer <NUM> sublayers, as well as various upper layers above Layer <NUM>. In various embodiments, the RRC sublayer <NUM> may provide functions including broadcasting system information, paging, and establishing and releasing an RRC signaling connection between the V2X system <NUM> and the base station <NUM>.

In various embodiments, the PDCP sublayer <NUM> may provide uplink functions including multiplexing between different radio bearers and logical channels, sequence number addition, handover data handling, integrity protection, ciphering, and header compression. In the downlink, the PDCP sublayer <NUM> may provide functions that include in-sequence delivery of data packets, duplicate data packet detection, integrity validation, deciphering, and header decompression.

In the uplink, MAC sublayer <NUM> may provide functions including multiplexing between logical and transport channels, random access procedure, logical channel priority, and hybrid-ARQ (HARQ) operations. In the downlink, the MAC layer functions may include channel mapping within a cell, de-multiplexing, discontinuous reception (DRX), and HARQ operations.

While the software architecture <NUM> may provide functions to transmit data through physical media, the software architecture <NUM> may further include at least one host layer <NUM> to provide data transfer services to various applications in the V2X system <NUM>. In some embodiments, application-specific functions provided by the at least one host layer <NUM> may provide an interface between the software architecture and the general purpose processor (e.g., <NUM>).

In other embodiments, the software architecture <NUM> may include one or more higher logical layer (e.g., transport, session, presentation, application, etc.) that provide host layer functions. For example, in some embodiments, the software architecture <NUM> may include a network layer (e.g., Internet Protocol (IP) layer) in which a logical connection terminates at a packet data network (PDN) gateway (PGW). In some embodiments, the software architecture <NUM> may include an application layer in which a logical connection terminates at another device (e.g., end user device, server, etc.). In some embodiments, the software architecture <NUM> may further include in the AS <NUM> a hardware interface <NUM> between the physical layer <NUM> and the communication hardware (e.g., one or more radio frequency (RF) transceivers).

<FIG> is a component block diagram illustrating a system <NUM> configured for automatically populating a BSM with vehicle and towed object position and combined length in accordance with various embodiments. With reference to <FIG>, the system <NUM> may include elements of the transportation control system <NUM>, described with regard to <FIG>, such as the V2X system <NUM>. The system <NUM> may also include one or more remote sensors <NUM>/<NUM>, which may be part of a transportation control system configured to help the V2X system <NUM> measure towed object dimensions and populate BSMs with accurate vehicle position/location information.

The V2X system <NUM> may also include memory <NUM> (i.e., electronic storage), one or more processors <NUM>, and/or other components such as input/output modules <NUM>, <NUM>. The V2X system <NUM> may also include communication lines or ports, to enable the exchange of information with remote equipment and/or computing devices, such as external resources <NUM>. Using communication lines through the intra-vehicle transceiver(s) <NUM>/<NUM>, the processor(s) <NUM> may exchange information or at least receive wireless signals over wireless communication links <NUM>/<NUM> for measuring distances from one or more remote sensors <NUM>/<NUM>. In addition, using communication lines through the one or more off-vehicle transceivers <NUM>, the processing system may exchange information with a communication network <NUM> and/or other remote computing platforms via a base station <NUM> and a wireless communication link <NUM>, as well as one or more additional vehicle(s) <NUM> nearby through sidelink communications via a wireless communication link <NUM>. Illustration of the V2X system <NUM> in <FIG> is not intended to be limiting. The V2X system <NUM> may include a plurality of hardware, software, and/or firmware components operating together to provide the functionality attributed herein to the V2X system <NUM>.

'The memory <NUM> may be any non-transitory computer readable medium that electronically stores information. The electronic storage media of memory <NUM> may include one or both of system storage that is provided integrally (i.e., substantially non-removable) with the V2X system <NUM> and/or removable storage that is removably connectable thereto. For example, a port (e.g., a Universal Serial Bus (USB) port, a FireWire port, etc.) or a drive (e.g., a disk drive, etc.). The memory <NUM> may include one or more of optically readable storage media (e.g., optical disks, etc.), magnetically readable storage media (e.g., magnetic tape, magnetic hard drive, floppy drive, etc.), electrical charge-based storage media (e.g., EEPROM, RAM, etc.), solid-state storage media (e.g., flash drive, etc.), and/or other electronically readable storage media. Memory <NUM> may include one or more virtual storage resources (e.g., cloud storage, a virtual private network, and/or other virtual storage resources). The memory <NUM> may store software algorithms, information determined by processor(s) <NUM>, information received from the V2X system <NUM> that enables the V2X system <NUM> to function as described herein.

The processor(s) <NUM> may be configured to provide information processing capabilities in the V2X system <NUM>. As such, the processor(s) <NUM> may include one or more of a digital processor, an analog processor, a digital circuit designed to process information, an analog circuit designed to process information, a state machine, and/or other mechanisms for electronically processing information. Although the processor(s) <NUM> is/are shown in <FIG> as a single entity, this is for illustrative purposes only. In some implementations, the processor(s) <NUM> may include a plurality of processing units. These processing units may be physically located within the same device, or processor(s) <NUM> may represent processing functionality of a plurality of devices, remote and/or local to one another, operating in coordination.

The V2X system <NUM> may be configured by machine-readable instructions <NUM>, which may include one or more instruction modules. The instruction modules may include computer program modules. In particular, the instruction modules may include one or more of a short-range wireless signal receiving/processing module <NUM>, a distance from antenna(s) to remote sensor(s) determination module <NUM>, a BSM position information populating module <NUM>, a towed object movement analysis module <NUM>, a BSM critical event flag populating module <NUM>, a BSM transmission module <NUM>, and/or other instruction modules.

The short-range wireless signal receiving/processing module <NUM> may be configured to receive and/or process the short-range wireless signals (e.g., <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>) from the one or more remote sensors (e.g., <NUM>, <NUM>). In some embodiments, the short-range wireless signals may be at least one of Wi-Fi, Bluetooth, or UWB signals.

As a non-limiting example, means for implementing the machine-readable instructions <NUM> of the short-range wireless signal receiving/processing module <NUM> may include a processor (e.g., <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>) of a processing device (e.g., <NUM>) that may use the memory (e.g., <NUM>), the external resources <NUM>, and/or the signal information received from the intra-vehicle transceiver(s) (e.g., <NUM>/<NUM>).

The distance from antenna(s) to remote sensor(s) determination module <NUM> may be configured to determine a distance from antennas <NUM>, <NUM> coupled to a receiver (e.g., one or both of the intra-vehicle transceiver(s) <NUM>/<NUM>) in the towing vehicle (e.g., <NUM>) to a remote sensor (e.g., <NUM>) on the towed object (e.g., <NUM>) by processing short-range wireless signals (e.g., <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>) received from the remote sensor(s) (e.g., <NUM>, <NUM>). Using ranging measurement techniques associated with Wi-Fi, Bluetooth, and/or UWB, the distance from antenna(s) to remote sensor(s) determination module <NUM> may determine a distance traveled by the short-range wireless signals. In accordance with the independent claims, the remote sensor is a camera and the short-range wireless signals encode image data from the camera. For example, the short-range wireless signals may not only be measured to determine the distance from the antenna(s) to the remote sensor, but may also carry encoded data that may be converted into pictures and/or streaming video captured by the camera.

As a non-limiting example, means for implementing the machine-readable instructions <NUM> of the distance from antenna(s) to remote sensor(s) determination module <NUM> may include a processor (e.g., <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>) of a processing device (e.g., <NUM>) that may use the memory (e.g., <NUM>), and the external resources <NUM>.

The BSM position information populating module <NUM> may be configured to populate a Basic Safety Message (BSM) with a position and combined length of the vehicle and the towed object based in part on the distance(s) determined by the distance from antenna(s) to remote sensor(s) determination module <NUM>. In some embodiments, the position and combined length populated in the BSM by the BSM position information populating module <NUM> may include a total combined length of the towing vehicle (e.g., <NUM>) and the towed object (e.g., <NUM>), including any hitch-space there between. In some embodiments, the position and combined length populated in the BSM by the BSM position information populating module <NUM> may additionally include a width of one or both of the towing vehicle <NUM> and the towed object <NUM>.

As a non-limiting example, means for implementing the machine-readable instructions <NUM> of the BSM position information populating module <NUM> may include a processor (e.g., <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>) of a processing device (e.g., <NUM>) that may use the memory (e.g., <NUM>), the external resources <NUM>, and/or the signal information received from the intra-vehicle transceiver(s) (e.g., <NUM>/<NUM>).

The towed object movement analysis module <NUM> may be configured to process the short-range wireless signals (e.g., <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>) received from the remote sensor (e.g., <NUM>, <NUM>) to obtain information regarding movement of the towed object (e.g., <NUM>) relative to the towing vehicle (e.g., <NUM>). In some embodiments, the movement of the towed object may be detected from changes in the distances determined by the distance from antenna(s) to remote sensor(s) determination module <NUM>. Detected changes in the distances may reflect movement of the towed object relative to the towing vehicle <NUM>. In some embodiments, the towed object movement analysis module <NUM> may be configured to process the short-range wireless signals to determine whether movement of the towed object relative to the antenna(s) in the vehicle satisfies a dangerous or critical vehicle movement criterion. If detected changes in the distances satisfy one or more criteria indicative or associated with certain dangerous conditions, such as swerving or fishtailing of the towed object, additional measures may be taken.

As a As a non-limiting example, means for implementing the machine-readable instructions <NUM> of the towed object movement analysis module <NUM> may include a processor (e.g., <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>) of a processing device (e.g., <NUM>) that may use the memory (e.g., <NUM>), the external resources <NUM>, and/or the signal information received from the intra-vehicle transceiver(s) (e.g., <NUM>/<NUM>).

The BSM critical event flag populating module <NUM> may be configured to populate a critical event flag in the BSM in response to the towed object movement analysis module <NUM> determining that the movement of the towed object relative to the antenna(s) in the vehicle satisfies a dangerous or critical vehicle movement criterion. For example, changes in the distance measurements may satisfy a criterion indicating swerving or lateral movement of the rear end of the towed object that exceeds a predetermined swerving threshold amount of movement. As another example, the movement pattern may satisfy a criterion indicating a fishtailing movement of the towed object that either continues for a predetermined amount of time (e.g., more than <NUM> seconds) or swings back and forth more than a predetermined fishtailing threshold amount of movement, which may be smaller than the predetermined swerving threshold.

As a non-limiting example, means for implementing the machine-readable instructions <NUM> of the BSM critical event flag populating module <NUM> may include a processor (e.g., <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>) of a processing device (e.g., <NUM>) that may use the memory (e.g., <NUM>), the external resources <NUM>, and/or the signal information received from the intra-vehicle transceiver(s) (e.g., <NUM>/<NUM>).

The BSM transmission module <NUM> may be configured to transmit the BSM populated by the BSM position information populating module <NUM> and possibly the BSM critical event flag populating module <NUM>. In some embodiments, the BSM transmission module <NUM> may transmit the populated BSM using the off-vehicle transceiver(s) <NUM> to one or both of the base station <NUM> and the additional vehicle(s) <NUM>.

As a non-limiting example, means for implementing the machine-readable instructions <NUM> of the BSM transmission module <NUM> may include a processor (e.g., <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>) of a processing device (e.g., <NUM>, <NUM>) that may use the memory <NUM>, external resources <NUM>, and/or the off-vehicle transceiver(s) <NUM>.

The processor(s) <NUM> may be configured to execute modules <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, and/or <NUM>, and/or other modules. Processor(s) <NUM> may be configured to execute modules <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, and/or <NUM>, and/or other modules by software; hardware; firmware; some combination of software, hardware, and/or firmware; and/or other mechanisms for configuring processing capabilities on processor(s) <NUM>. As used herein, the term "module" may refer to any component or set of components that perform the functionality attributed to the module. This may include one or more physical processors during execution of processor readable instructions, the processor readable instructions, circuitry, hardware, storage media, or any other components.

The description of the functionality provided by the different modules <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, and/or <NUM> described below is for illustrative purposes, and is not intended to be limiting, as any of modules <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, and/or <NUM> may provide more or less functionality than is described. For example, one or more of modules <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, and/or <NUM> may be eliminated, and some or all of its functionality may be provided by other ones of modules <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, and/or <NUM>. As another example, processor(s) <NUM> may be configured to execute one or more additional modules that may perform some or all of the functionality attributed below to one of modules <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, and/or <NUM>.

<FIG> is a component block diagram illustrating a system <NUM> configured for automatically populating a BSM with vehicle and towed object position and combined length in accordance with various embodiments. With reference to <FIG>, the system <NUM> may include elements of the transportation control system <NUM>, described with regard to <FIG>, such as the V2X system <NUM> and the intermediate processing system <NUM>. The system <NUM> may also include one or more remote sensors <NUM>/<NUM>, which may be part of a transportation control system configured to help the V2X system <NUM> and the intermediate processing system <NUM> to measure towed object dimensions and populate BSMs with accurate vehicle position/location information.

The V2X system <NUM> may include the features and functionality described with regard to the system <NUM>, such as the processor(s) <NUM>. In addition, the V2X system <NUM> in the system <NUM> may be configured by machine-readable instructions <NUM>, which may include one or more additional or different instruction modules. The instruction modules may include computer program modules. In particular, the instruction modules may include one or more of a towed object information receiving module <NUM>, the BSM position information populating module <NUM>, the BSM critical event flag populating module <NUM>, the BSM transmission module <NUM>, and/or other instruction modules.

The towed object information receiving module <NUM> may be configured to receive information related to the towed object (e.g., <NUM>) from a processor <NUM> of the intermediate processing system <NUM>. In some embodiments, the received towed object information may include length information, such as the total length from a front of the towing vehicle (e.g., <NUM>) to the rear of the towed object (e.g., <NUM>). In addition, the received towed object information may include width information, such as a maximum width of the towed object, or more detailed dimensional information about the towed object. Further, the received towed object information may include movement information regarding the towed object. The movement information my indicate how or whether the towed object is moving relative to the towing vehicle. In addition, movement information may indicate how or whether the towed object is moving in a dangerous way that matches a predefined set of dangerous vehicle movement patterns.

The intermediate processing system <NUM> may operate like a video monitoring system in a vehicle, such as may be used to monitor backup camera video. The intermediate processing system <NUM> may include memory <NUM> (i.e., electronic storage), one or more processors <NUM>, input/output modules <NUM>/<NUM>, and/or other components such as an optional display <NUM>. The intermediate processing system <NUM> may also include communication lines or ports, such as for connecting to the intra-vehicle transceiver(s) <NUM>/<NUM> to enable the exchange of information with one or more remote sensors <NUM>/<NUM>. Illustration of the intermediate processing system <NUM> in <FIG> is not intended to be limiting. The intermediate processing system <NUM> may include a plurality of hardware, software, and/or firmware components operating together to provide the functionality attributed herein to the intermediate processing system <NUM>.

The intermediate processing system <NUM> may include one or more processors configured to execute computer program modules similar to those in the machine-readable instructions <NUM> or <NUM> of the processor(s) <NUM> in the V2X system <NUM> described above. Similarly, a given intermediate processing system <NUM> may include one or more processors configured to execute computer program modules similar to those in the machine-readable instructions <NUM>, <NUM> of the V2X system <NUM> described above. In addition, the intermediate processing system <NUM> may be configured by machine-readable instructions <NUM>, which may include one or more of its own instruction modules. The instruction modules may include one or more of a short-range wireless signal receiving/processing module <NUM>, a distance from antenna(s) to remote sensor(s) determination module <NUM>, a towed object movement analysis module <NUM>, a towed object information transmitting module <NUM>, a video monitoring system module <NUM>, and/or other instruction modules.

The short-range wireless signal receiving/processing module <NUM> may operate in the same or analogous way to the short-range wireless signal receiving/processing module <NUM> of the machine-readable instructions <NUM> of the processor <NUM> described above with regard to the system <NUM>. Thus, the short-range wireless signal receiving/processing module <NUM> may receive and process the short-range wireless signals (e.g., <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>) for the remote sensor (e.g., <NUM>, <NUM>). For example, where the intermediate processing system <NUM> is a video monitoring system of the vehicle, the short-range wireless signal receiving/processing module <NUM> may receive and/or process camera images and/or streaming video. Similarly, the distance from antenna(s) to remote sensor(s) determination module <NUM> and the towed object movement analysis module <NUM> may operate in the same or analogous way to the distance from antenna(s) to remote sensor(s) determination module <NUM> and the towed object movement analysis module <NUM>, respectively, of the machine-readable instructions <NUM> of the processor <NUM> described above with regard to the system <NUM>.

The towed object information transmitting module <NUM> may transmit the information related to the towed object (e.g., <NUM>) received by the towed object information receiving module <NUM>, described above. For example, the transmitted towed object information may include length information, such as the total length from a front of the towing vehicle (e.g., <NUM>) to the rear of the towed object (e.g., <NUM>). In addition, the transmitted towed object information may include width information, such as a maximum width of the towed object, or more detailed dimensional information about the towed object. Further, the transmitted towed object information may include movement information regarding the towed object. The movement information my indicate how or whether the towed object is moving relative to the towing vehicle. In addition, movement information may indicate how or whether the towed object is moving in a dangerous way that matches a predefined set of dangerous vehicle movement patterns.

The towed object information transmitting module <NUM> may provide the V2X system <NUM> with determined distance information related to the towed object in a format that enables a BSM to include such information. The V2X system <NUM> may automatically populate fields in a Basic Safety Messages with information regarding locations and combined length of the vehicle and the towed object.

As a non-limiting example, means for implementing the machine-readable instructions <NUM> of the towed object information transmitting module <NUM> may include a processor (e.g., <NUM>, <NUM><NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>) of a processing device (e.g., <NUM>) that may use the memory (e.g., <NUM>), and/or the input/output modules <NUM>/<NUM>, which may include a communication link <NUM> to the V2X system <NUM>.

The optional video monitoring system module <NUM> may be included when the intermediate processing system <NUM> is a video monitoring system or part thereof. The video monitoring system module <NUM> may provide functionality such as video display (e.g., output on the display <NUM>) and other features typically included with backup camera systems or the like.

<FIG> illustrates operations of methods <NUM>, <NUM>, <NUM>, <NUM> for automatically populating a BSM with vehicle and towed object position and combined length executed by a processor of a processing system in accordance with various embodiments. In some embodiments, the methods <NUM>, <NUM>, <NUM>, <NUM> may be accomplished with one or more additional operations not described, and/or without one or more of the operations discussed. With reference to <FIG>, the operations of the methods <NUM>, <NUM>, <NUM>, <NUM> may be implemented in one or more processors (e.g., a digital processor, an analog processor, a digital circuit designed to process information, an analog circuit designed to process information, a state machine, and/or other mechanisms for electronically processing information) in response to instructions stored electronically on an electronic storage medium of a processing system. The one or more processors may include one or more devices configured through hardware, firmware, and/or software to be specifically designed for execution of one or more of the operations of the methods <NUM>, <NUM>, <NUM>, <NUM>. For example, the operations of the methods <NUM>, <NUM>, <NUM>, <NUM> may be performed by a processor (e.g., <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>) of a processing system (e.g., <NUM>).

<FIG> illustrates the method <NUM>. In block <NUM>, the processor of a processing system may perform operations including determining a distance from a antenna(s) in the vehicle to a remote sensor on the towed object by processing short-range wireless signals received from the remote sensor. In block <NUM>, the processor of the processing system may use the distance from antenna(s) to remote sensor(s) determination module (e.g., <NUM>). For example, the processor may determine one or more distances associated with the towed object, such as it length, width, and/or position relative to the towing vehicle, as described above. In some embodiments, means for performing the operations of block <NUM> may include a processor (e.g., <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>) of a processing device (e.g., <NUM>, <NUM>) that may use the memory <NUM>, <NUM>, external resources <NUM>, and/or the intra-vehicle transceiver(s) <NUM>/<NUM>. In some embodiments, the short-range wireless signals received in block <NUM> may be or include Wi-Fi, Bluetooth, or UWB signals. In some embodiments, the short-range wireless signals received in block <NUM> may encode data from the remote sensor. In accordance with the independent claims, the remote sensor is a camera. Thus, the short-range wireless signals encode image data from the camera.

In block <NUM>, the processor of a processing system may perform operations including populating a BSM with a position of the vehicle and the towed object based on the determined distance from the antenna(s) to the remote sensor. In block <NUM>, the processor of the processing system may use the BSM position and combined length populating module (e.g., <NUM>). In some embodiments, means for performing the operations of block <NUM> may include a processor (e.g., <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>) of a processing device (e.g., <NUM>, <NUM>) that may use the memory <NUM>, <NUM>, and/or the external resources <NUM>.

In some embodiments, the processor may repeat any or all of the operations in blocks <NUM> and <NUM> to repeatedly measure the distance to the back end of the towed vehicle, which may be useful for detecting dangerous movement conditions, such as swerve or fishtailing as described.

<FIG> illustrates method <NUM> that may be performed with or as an enhancement to the method <NUM> for automatically populating a BSM with vehicle and towed object position and combined length.

In block <NUM>, the processor may receive the short-range wireless signals in a video monitoring system of the vehicle. By using a video monitoring system, the receipt and processing of the short-range wireless signals from the camera, in block <NUM>, to determine the distance from the antenna(s) in the vehicle to the remote sensor on the towed object may be performed by the video monitoring system. In block <NUM>, the processor of the processing system may use the short-range wireless signal receiving/processing module (e.g., <NUM>). In some embodiments, means for performing the operations of block <NUM> may include a processor (e.g., <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>) of a processing device (e.g., <NUM>, <NUM>) that may use the memory <NUM>, <NUM>, the external resources <NUM>, and or the intra-vehicle transceiver(s) <NUM>/<NUM>.

In block <NUM>, the processor may provide to a V2X processing system the determined distance from the antenna(s) in the vehicle to the camera on the towed object in a format that enables the V2X processing system to automatically populate fields in a Basic Safety Messages with information regarding locations or length of the vehicle and the towed object. In block <NUM>, the processor of the processing system may use the towed object information transmitting module (e.g., <NUM>). In some embodiments, means for performing the operations of block <NUM> may include a processor (e.g., <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>) of a processing device (e.g., <NUM>, <NUM>) that may use the memory <NUM>, <NUM>, and/or the external resources <NUM>.

Following the operations in block <NUM>, the processor may perform the operations in block <NUM> and thereafter repeat to the operations in block <NUM>, <NUM>, <NUM>, and <NUM> to repeatedly or continuously populate BSMs with towing vehicle and towed object position and combined length.

In block <NUM>, following the operations in block <NUM>, the processor may process the short-range wireless signals received from the remote sensor to obtain information regarding movement of the towed object relative to the vehicle. In block <NUM>, the processor of the processing system may use the towed object movement analysis module (e.g., <NUM>). In some embodiments, means for performing the operations of block <NUM> may include a processor (e.g., <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>) of a processing device (e.g., <NUM>, <NUM>) that may use the memory <NUM>, <NUM>, and/or the external resources <NUM>.

Following the operations in block <NUM>, the processor may perform the operations in block <NUM> and thereafter repeat to the operations in block <NUM>, <NUM>, and <NUM> to repeatedly or continuously populate BSMs with towing vehicle and towed object position and combined length.

In block <NUM>, following the operations in block <NUM>, the processor may process the short-range wireless signals received from the remote sensor to determine whether movement of the towed object relative to the antenna(s) in the vehicle satisfies a dangerous or critical vehicle movement criterion. In block <NUM>, the processor of the processing system may use the towed object movement analysis module (e.g., <NUM>). In some embodiments, means for performing the operations of block <NUM> may include a processor (e.g., <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>) of a processing device (e.g., <NUM>, <NUM>) that may use the memory <NUM>, <NUM>, and/or the external resources <NUM>.

In block <NUM>, the processor of a processing system may perform operations including an indication of a critical event in safety messages, such as populating a critical event flag in BSMs, in response to determining that the movement of the towed object relative to the antenna(s) in the vehicle satisfies a dangerous or critical vehicle movement criterion. In block <NUM>, the processor of the processing system may use the BSM critical event flag populating module (e.g., <NUM>). In some embodiments, means for performing the operations of block <NUM> may include a processor (e.g., <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>) of a processing device (e.g., <NUM>, <NUM>) that may use the memory <NUM>, <NUM>, and/or the external resources <NUM>.

Following the operations in block <NUM>, the processor may perform the operations in block <NUM> and thereafter repeat to the operations in block <NUM>, <NUM>, <NUM> and <NUM> to repeatedly or continuously populate BSMs with towing vehicle and towed object position and length information.

The various aspects (including, but not limited to, embodiments discussed above with reference to <FIG>) may be implemented on a variety of processing system, an example of which is illustrated in <FIG> in the form of a computing device suitable for use in a vehicle. With reference to <FIG>, the processing system <NUM> may include a first SoC <NUM> (e.g., a SoC-CPU) coupled to a second SoC <NUM> (e.g., a <NUM> capable SoC) and a third SoC <NUM> (e.g., a C-V2X SoC configured for managing V2V, V2I, and V2P communications over D2D links, such as D2D links establish in the dedicated ITS <NUM> spectrum communications). The first, second, and/or third SoCs <NUM>, <NUM>, and <NUM> may be coupled to internal memory <NUM> and a radio module <NUM> coupled to an antenna <NUM>. Additionally, the processing system <NUM> may include off-vehicle transceiver(s) <NUM> (e.g., a wireless data link and/or cellular transceiver, etc.) coupled to one or more processors in the first, second, and/or third SoCs <NUM>, <NUM>, and <NUM>. The off-vehicle transceiver(s) <NUM> may be connected to an antenna interface <NUM> for connecting to a vehicle antenna for sending and receiving electromagnetic radiation.

Various embodiments (including, but not limited to, embodiments discussed above with reference to <FIG>) may be implemented on a variety of vehicle computing systems, an example of which is illustrated in <FIG>. With reference to <FIG>, a vehicle computing system <NUM> may include a processor <NUM> coupled to volatile memory <NUM> and a large capacity nonvolatile memory, such as a disk drive <NUM>. The vehicle computing system <NUM> may also include a peripheral memory access device such as a floppy disc drive, compact disc (CD) or digital video disc (DVD) drive <NUM> coupled to the processor <NUM>. The vehicle computing system <NUM> processor <NUM> may be coupled to communication ports <NUM> (or interfaces) coupled to a network <NUM> for exchanging data and commands with a radio module (not shown). The vehicle computing system <NUM> may include additional access ports, such as USB, Firewire, Thunderbolt, and the like for coupling to peripherals, external memory, or other devices.

The processors implementing various embodiments may be any programmable microprocessor, microcomputer or multiple processor chip or chips that can be configured by software instructions (applications) to perform a variety of functions, including the functions of the various aspects described in this application. In some communication devices, multiple processors may be provided, such as one processor dedicated to wireless communication functions and one processor dedicated to running other applications. Typically, software applications may be stored in the internal memory before they are accessed and loaded into the processor. The processor may include internal memory sufficient to store the application software instructions.

As used in this application, the terms "component," "module," "system," and the like are intended to include a computer-related entity, such as, but not limited to, hardware, firmware, a combination of hardware and software, software, or software in execution, which are configured to perform particular operations or functions. For example, a component may be, but is not limited to, a process running on a processor, a processor, an object, an executable, a thread of execution, a program, and/or a computer. As an illustration, both an application running on a processor of a communication device and the communication device may be referred to as a component. One or more components may reside within a process and/or thread of execution and a component may be localized on one processor or core and/or distributed between two or more processors or cores. In addition, these components may execute from various non-transitory computer-readable media having various instructions and/or data structures stored thereon. Components may communicate As a local and/or remote processes, function or procedure calls, electronic signals, data packets, memory read/writes, and other known network, computer, processor, and/or process related communication methodologies.

A number of different cellular and mobile communication services and standards are available or contemplated in the future, all of which may implement and benefit from the various aspects. Such services and standards may include, e.g., third generation partnership project (3GPP), long term evolution (LTE) systems, third generation wireless mobile communication technology (<NUM>), fourth generation wireless mobile communication technology (<NUM>), fifth generation wireless mobile communication technology (<NUM>), global system for mobile communications (GSM), universal mobile telecommunications system (UMTS), 3GSM, general packet radio service (GPRS), code division multiple access (CDMA) systems (e.g., cdmaOne, CDMA1020TM), EDGE, advanced mobile phone system (AMPS), digital AMPS (IS-<NUM>/TDMA), evolution-data optimized (EV-DO), digital enhanced cordless telecommunications (DECT), Worldwide Interoperability for Microwave Access (WiMAX), wireless local area network (WLAN), Wi-Fi Protected Access I & II (WPA, WPA2), integrated digital enhanced network (iden), C-V2X, V2V, V2P, V2I, and V2N, etc. Each of these technologies involves, for example, the transmission and reception of voice, data, signaling, and/or content messages. It should be understood that any references to terminology and/or technical details related to an individual telecommunication standard or technology are for illustrative purposes only, and are not intended to limit the scope of the claims to a particular communication system or technology unless specifically recited in the claim language.

Various aspects illustrated and described are provided merely as examples to illustrate various features of the claims. However, features shown and described with respect to any given aspect are not necessarily limited to the associated aspect and may be used or combined with other aspects that are shown and described. Further, the claims are not intended to be limited by any one example aspect. For example, one or more of the operations of the methods may be substituted for or combined with one or more operations of the methods.

The foregoing method descriptions and the process flow diagrams are provided merely as illustrative examples and are not intended to require or imply that the operations of various aspects must be performed in the order presented. As will be appreciated by one of skill in the art the order of operations in the foregoing aspects may be performed in any order.

Various illustrative logical blocks, modules, components, circuits, and algorithm operations described in connection with the aspects disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. Skilled artisans may implement the described functionality in varying ways for each particular application, but such aspect decisions should not be interpreted as causing a departure from the scope of the claims.

The hardware used to implement various illustrative logics, logical blocks, modules, and circuits described in connection with the aspects disclosed herein may be implemented or performed with a general purpose processor, a digital signal processor (DSP), an ASIC, a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A processor may also be implemented as a combination of receiver smart objects, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration. Alternatively, some operations or methods may be performed by circuitry that is specific to a given function.

In one or more aspects, the functions described may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored as one or more instructions or code on a non-transitory computer-readable medium or non-transitory processor-readable storage medium. The operations of a method or algorithm disclosed herein may be embodied in a processor-executable software module or processor-executable instructions, which may reside on a non-transitory computer-readable or processor-readable storage medium. Non-transitory computer-readable or processor-readable storage media may be any storage media that may be accessed by a computer or a processor. As an example but not limitation, such non-transitory computer-readable or processor-readable storage media may include RAM, ROM, EEPROM, FLASH memory, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage smart objects, or any other medium that may be used to store desired program code in the form of instructions or data structures and that may be accessed by a computer. Combinations of the above are also included within the scope of non-transitory computer-readable and processor-readable media. Additionally, the operations of a method or algorithm may reside as one or any combination or set of codes and/or instructions on a non-transitory processor-readable storage medium and/or computer-readable storage medium, which may be incorporated into a computer program product.

Claim 1:
A method performed by one or more processing systems of a vehicle (<NUM>) connected to a towed object (<NUM>), the method comprising:
determining (<NUM>) a distance from one or more antennas (<NUM>, <NUM>) coupled to a receiver (<NUM>, <NUM>) in the vehicle to a remote sensor (<NUM>, <NUM>) on the towed object (<NUM>) by processing short-range wireless signals received from the remote sensor (<NUM>, <NUM>), wherein the remote sensor (<NUM>, <NUM>) is a camera and the short-range wireless signals encode image data from the camera; and
populating (<NUM>) safety messages with a position of the combination of the vehicle (<NUM>) and the towed object (<NUM>) based on the determined distance from the one or more antennas (<NUM>, <NUM>) coupled to the receiver (<NUM>, <NUM>) to the remote sensor (<NUM>, <NUM>).