Patent Description:
The positioning and speed of a rail vehicle can be determined by a system comprised of a checked-redundant vehicle onboard controller (VOBC) computer connected to a set of sensors. The sensors can consist of a radio frequency identification (RFID) tag reader, a tachometer/speed sensor, camera, event camera, LIDAR, UWB technology, radar and accelerometer with RFID tags installed along the guideway. Speed and positioning functions are typically part of the VOBC.

VOBC systems are expensive both in sensor cost and manpower through installing the necessary equipment to have the VOBC system operate efficiently. A large number of sensors are difficult to install and maintain. In some communications based train control (CBTC) systems, it is difficult to install the traditional speed sensors or tachometers on the vehicles. Hall Effect sensors and tachometers are commonly installed on a bogie and the installation is constrained by maintenance pit scheduling and is time and labor intensive. Further, Hall Effect sensors and tachometers are prone to providing incorrect speed data during wheel slippage on the bogie. Each of these sensors must be maintained periodically and this adds to the cost. Some sensors of a VOBC system are also affected by environmental conditions to which a vehicle is exposed on a regular basis. Other sensors require off vehicle equipment to be installed on the guideway and are expensive.

It is known, from <CIT>), a fixed object detecting method using radar and a device thereof. The fixed object detecting device comprises: radar configured to receive a receiving echo with respect to a transmitting pulse radiated from the antenna; a signal processing unit configured to obtain a range profile per an azimuth by using the receiving echo; and an object tracking unit configured to detect a fixed object by using the range profile per an azimuth.

Aspects of the present disclosure are best understood from the following detailed description when read with the accompanying FIGS.

The following disclosure provides many different embodiments, or examples, for implementing different features of the provided subject matter. Specific examples of components, values, operations, materials, arrangements, or the like, are described below to simplify the present disclosure. These are, of course, merely examples and are not intended to be limiting. Other components, values, operations, materials, arrangements, or the like, are contemplated. For example, the formation of a first feature over or on a second feature in the description that follows include embodiments in which the first and second features are formed in direct contact, and also include embodiments in which additional features are formed between the first and second features, such that the first and second features may not be in direct contact.

Further, spatially relative terms, such as "beneath," "below," "lower," "above," "upper" and the like, may be used herein for ease of description to describe one element or feature's relationship to another element(s) or feature(s) as illustrated in the FIGS. The spatially relative terms are intended to encompass different orientations of the device in use or operation in addition to the orientation depicted in the FIGS. The apparatus may be otherwise oriented (e.g., rotated <NUM> degrees or at other orientations) and the spatially relative descriptors used herein may likewise be interpreted accordingly.

In some embodiments, a stationary status resolution system (SSRS) is based on tracking zero-Doppler-speed radar measurements (e.g., detecting zero speed for radar detected targets using the Doppler Effect) and detecting acceleration changes (e.g., through an inertial measurement unit (IMU)/accelerometer) to support stationary resolution determinations. In some embodiments, an SSRS has one or more radars and one or more IMU/accelerometers for the resolution of the stationary status (e.g., stationary/non-stationary) of vehicles in a rail environment (e.g., a guideway).

In some embodiments, a SSRS provides for a cost-effective solution for determining stationary status of vehicles that is (<NUM>) easier for personnel to install and maintain, (<NUM>) unaffected by vehicle wheel slipping/spinning, (<NUM>) independent of integrating speed/acceleration, (<NUM>) less likely to be affected by various environmental conditions such as weather and illumination effects, and (<NUM>) independent of equipment installed on the guideway.

In some embodiments, commercial off the shelf (COTS) radars and IMUs determine the stationary status of the vehicle. Additionally or alternatively, radar Doppler speed and range measurements to reflective objects in the surrounding landscape and supported by acceleration measurements from the IMU determine the stationary status. In some embodiments, a SSRS determines stationary status by estimating whether the vehicle speed or travelled distance is zero using the relative observations measured in a reference frame of the radar (hereinafter mentions to the reference frame or radar frame are made to a vehicle mounted radar frame), and by detecting motion transition (i.e., acceleration) using IMU measurements. Additionally or alternatively, the radar is the sensor technology for indicating the stationary status of vehicles while the IMU determines a stationary state transition (e.g., a stationary state to a non-stationary state or a non-stationary state to a stationary state) based on a measured motion profile. The radar-based indication and the IMU-based motion detection are then combined and monitored over a time period in order to provide a final stationary status output.

<FIG> is a top-level diagram of a stationary status resolution system (SSRS) <NUM>, in accordance with some embodiments. In some embodiments, SSRS <NUM> is configured for a vehicle <NUM> for use on a guideway <NUM>. One or more radars <NUM> are operably coupled to a body <NUM> of vehicle <NUM>. One or more processors (<NUM> <FIG>) are operably coupled to radars <NUM>. Memory (<NUM> <FIG>) is operably coupled to processor (<NUM>) and is configured to store executable instructions (<NUM> <FIG>), such as a stationary resolution algorithm (<FIG>, <FIG>, <FIG>, <FIG>, <FIG> and <FIG>), that when executed by processor (<NUM>), cause processor (<NUM>) to: determine a plurality of hitbox targets <NUM> located within a hitbox <NUM> (i.e., a predetermined area in front of vehicle <NUM>) that have zero-Doppler speed and constant range based upon returned radar signals; determine a plurality of field of view (FOV) targets <NUM> located outside of hitbox <NUM> in a FOV <NUM> that have zero-Doppler-speed based upon the returned radar signals; and determine vehicle <NUM> is stationary when hitbox targets <NUM> and FOV targets <NUM> have the zero-Doppler speed and constant range based upon the returned radar signals.

In some embodiments, vehicle <NUM> is a train having a series of connected vehicles that generally run along a railroad (e.g., guideway or railway) track to transport passengers or cargo (also known as "freight" or "goods"). In some embodiments, vehicle <NUM> is any vehicle that transports people or cargo. Vehicles include wagons, bicycles, motor vehicles (e.g., motorcycles, cars, trucks, and buses), watercraft (e.g., ships, boats), amphibious vehicles (e.g., screw-propelled vehicle, hovercraft), aircraft (e.g., airplanes, helicopters), spacecraft or the like.

In some embodiments, guideway <NUM> provides both physical support, like a road, as well as the guidance. In the case of fixed-route systems, the two are often the same in the same way that a rail line provides both support and guidance for a train. In some embodiments, systems use smaller wheels riding on the guideway to steer the vehicle using conventional steering arrangements like those on a car. In some embodiments, a track has two running rails with a fixed spacing that is supplemented by additional rails such as electric conducting rails (e.g., a third rail) and rack rails. In some embodiments, monorails and maglev guideways are used.

In some embodiments, radar <NUM> is a detection system that uses radio waves to determine the range, angle, or velocity (i.e., speed) of objects. Radar is used to detect all types of objects, such as aircraft, ships, spacecraft, guided missiles, motor vehicles, weather formations, and terrain. A radar system has a transmitter producing electromagnetic waves in the radio or microwaves domain, a transmitting antenna, a receiving antenna (often the same antenna is used for transmitting and receiving) and a receiver and processor to determine properties of the object(s). Radio waves (e.g., pulsed or continuous) from the transmitter reflect off the object and return to the receiver, giving information about the object's location and speed. In some embodiments, radar <NUM> is a COTS radar. In some embodiments, radar <NUM> has a processor to determine detected object properties, such as range, azimuth and Doppler speed. In some embodiments, processor (<NUM>) performs range detection, azimuth determination and Doppler speed based on radar return data.

In some embodiments, hitbox targets <NUM> are reflective objects on the ground (e.g., rail ties and rail baseplates) that are tracked as targets with radar <NUM> to determine when vehicle <NUM> is stationary. As hitbox <NUM> is covering guideway <NUM> for a short distance from vehicle <NUM>, hitbox <NUM> has a very low probability of having moving targets. In some embodiments, if vehicle <NUM> is stationary, all reflections from stationary ground objects in hitbox <NUM> will be stationary in the radar frame, and consequently, are observed and tracked as zero-Doppler speed hitbox targets <NUM>. In some embodiments, if vehicle <NUM> is moving, then all the reflections from hitbox targets <NUM> will be non-stationary with respect to the moving radar (i.e., coupled to a moving vehicle), and consequently, is not tracked as zero-Doppler-speed (e.g., as radar <NUM> will report them as having speed) targets in hitbox <NUM>. Additionally or alternatively, a verification in tracking zero-Doppler-speed targets in the form of monitoring constant range to these targets verifies that hitbox targets <NUM> are stationary with respect to the radar frame.

In some embodiments, hitbox <NUM> is a space located in front of vehicle <NUM> a predetermined area away from vehicle <NUM>. Additionally or alternatively, hitbox <NUM> is an invisible shape, such as a type of bounding box coupled to the vehicle. In some embodiments, hitbox <NUM> is a rectangle or cuboid (e.g., 3D) that is attached to and follows a point on vehicle <NUM>. That is, in some embodiments, hitbox <NUM> remains the same shape, size and distance away from vehicle <NUM> regardless of what vehicle <NUM> is doing. In some embodiments, hitbox <NUM> is circular or spheroidal shape.

In some embodiments, FOV targets <NUM> are reflective objects, outside of hitbox <NUM>, that are tracked as targets with radar <NUM> to determine when vehicle <NUM> is stationary. In some embodiments, FOV targets <NUM> are stationary objects spatially distributed in the entire radar FOV <NUM> (e.g., rail baseplates, pillars, trees, nearby wayside infrastructure, and walls in platforms and in the tunnel). In some embodiments, FOV targets <NUM> include all radar targets inside the radar FOV inside and outside hitbox <NUM>, thus including hitbox targets <NUM>. FOV targets <NUM> provide a significantly larger population of targets in comparison to hitbox targets <NUM>, including those produced by the surrounding infrastructure that is often stationary. In some embodiments, if vehicle <NUM>, equipped with radar <NUM>, is stationary, then any infrastructure in FOV <NUM> will be observed as zero-Doppler-speed targets. Examples include radar targets originated from rail ties, rail baseplates, pillars, trees, rocks, and walls, among others. In some embodiments, if vehicle <NUM> is non-stationary, then it's extremely unlikely that a large number of targets distributed over the FOV <NUM> of radar <NUM> move in complete synchronization with vehicle <NUM> (e.g., same speed and direction), so that FOV targets <NUM> are all stationary in the radar frame (i.e., the FOV <NUM>) and have zero-Doppler-speed. In some embodiments, a stationary resolution algorithm contains a FOV processing algorithm (<FIG>) for determining a vehicle's stationary status from the probability that processor (<NUM>) will be able to discriminate whether vehicle <NUM> is stationary or not from a statistically-significant population of zero-Doppler-speed targets distributed over FOV <NUM>.

In some embodiments, FOV <NUM> is the extent of the observable world that is seen at any given moment by radar <NUM>. In some embodiments, such as the case of radar <NUM> the FOV is a solid angle through which a radar is sensitive to microwave radiation.

In some embodiments, radar <NUM> and IMU <NUM> are mounted at a first end <NUM> of vehicle <NUM>. In some embodiments radar <NUM> and/or IMU <NUM> are mounted at a second end <NUM> of vehicle <NUM>. In some embodiments, a radar <NUM> is mounted to both first end <NUM> and second end <NUM> (see <FIG>). Additionally or alternatively, radar <NUM> is mounted on vehicle body <NUM>, and typically measures range, azimuth angle, and Doppler speed of targets <NUM>, <NUM> (e.g., detected reflections from targets <NUM>, <NUM>). In some embodiments, IMU <NUM> is installed close to the train bogie and provides inertial acceleration measurements of train body <NUM> instead of providing direct measurements of the train speed. In some embodiments, the acceleration transition is correlated with the detection of motion transition that is used to identify state changes in the stationary status.

In one embodiment, a first stage of a stationary resolution algorithm uses the fact that guideway <NUM> in front vehicle <NUM> (e.g., hitbox <NUM>) contains reflective objects on the ground (e.g., rail ties and rail baseplates) that are tracked as hitbox targets <NUM> with zero-Doppler-speed when vehicle <NUM> is stationary. Additionally or alternatively, as hitbox <NUM> is covering only guideway <NUM> for a short distance from vehicle <NUM>, hitbox <NUM> has a very low probability of having moving targets (e.g., things that move tend not to get in front of vehicle <NUM>; especially a large vehicle like a train). In some embodiments, if vehicle <NUM> is stationary, all reflections from hitbox targets <NUM> in hitbox <NUM> will be stationary in hitbox <NUM>, and consequently, are observed and tracked as zero-Doppler-speed targets. In some embodiments, if vehicle <NUM> is moving, then all the reflections from hitbox targets <NUM> will be non-stationary with respect to radar <NUM>, and consequently, do not produce zero-Doppler-speed data. In some embodiments, in tracking zero-Doppler-speed targets in hitbox <NUM>, extra checks are implemented, such as a range verification to verify that hitbox targets <NUM> are stationary with respect to hitbox <NUM>. In some embodiments, this extra check is used as there are low speeds that Doppler speed data has difficulty detecting.

In one embodiment, a second stage of a stationary resolution algorithm detects FOV targets <NUM> from stationary objects spatially distributed in FOV <NUM> (e.g., rail baseplates, pillars, trees, nearby wayside infrastructure, and walls in platforms and in the tunnel). In some embodiments, hitbox targets <NUM> are also considered FOV targets <NUM> as hitbox targets <NUM> are also within FOV <NUM>. However, in some embodiments, unlike hitbox <NUM>, FOV <NUM> does not have the advantage of detecting hitbox targets <NUM> from the ground. In some embodiments, the FOV stage of the stationary resolution algorithm brings the advantage of providing a significantly larger population of FOV targets <NUM>, including those produced by the surrounding infrastructure that is stationary. In some embodiments, if vehicle <NUM> is stationary, then any infrastructure in FOV <NUM> will be observed as zero-Doppler-speed targets. Examples include FOV targets <NUM> originated from rail ties, rail baseplates, pillars, trees, rocks, and walls, and the like. In some embodiments, if vehicle <NUM> is non-stationary, then it's unlikely that a large number of FOV targets <NUM> distributed over FOV <NUM> move in complete synchronization with vehicle <NUM>, so that FOV targets <NUM> appear stationary in FOV <NUM> and have zero-Doppler-speed. Hence, the FOV stage of the stationary resolution algorithm is determined from discriminating whether vehicle <NUM> is stationary or not based on a statistically-significant population of FOV targets <NUM> with speed behavior that is substantially alike.

In some embodiments, to account for the relativity of radar measurements, a large number of FOV targets <NUM> are tracked as the probability of all FOV targets <NUM> moving all at once is extremely small and thus vehicle <NUM> has a high probability of moving. Thus, if only a small number of FOV targets <NUM> have changing or non-zero-Doppler-speed, then an FOV processing algorithm (e.g., a sub algorithm of the stationary resolution algorithm) will determine these FOV targets <NUM> are moving and not vehicle <NUM> as the majority of FOV targets <NUM> remain stationary. As is discussed in greater detail below, and in some embodiments, this FOV stationary determination will then be verified against the hitbox stationary determination of the first stage (an hitbox processing algorithm (<FIG>) e.g., a sub algorithm of the stationary resolution algorithm) and verified over time in a fifth stage (<FIG>, a combined stationary algorithm e.g., a sub algorithm of the stationary resolution algorithm).

In some embodiments, both the hitbox processing algorithm and the FOV processing algorithm are expected to operate properly and output a correct stationary status indication in normal operation. In some embodiments where one of the hitbox processing algorithm or the FOV processing algorithm does not have enough data for indicating a stationary status, the other algorithm still provides a stationary resolution status. For example, if the hitbox processing algorithm does not have enough data for indicating a hitbox stationary status because hitbox targets <NUM> in hitbox <NUM> are blocked by humans crossing guideway <NUM> in hitbox <NUM> or hitbox targets <NUM> are not being reported as radar <NUM> is absorbed with high Radar Cross-Section (RCS) objects (e.g., other, possible larger objects, are drowning out the radar signatures of hitbox targets <NUM>) in the vicinity of hitbox <NUM>, then FOV processing algorithm is used for the stationary status determination. In some embodiments, the FOV processing algorithm does not have enough targets <NUM> in FOV <NUM> to define a reliable statistical determination because of adverse weather conditions such as thick ice on a radar face and thus hitbox processing algorithm is used to make the stationary status determination. Thus, having two independent stages (i.e., algorithms) of the stationary resolution algorithm for indicating stationary status increases the probability of a clear and accurate stationary resolution.

In some embodiments, IMU <NUM> is used to detect and verify transitions in the stationary status of the vehicle (e.g., from stationary to non-stationary and vice versa), and is crosschecked with the changes in the stationary status outputs of both the hitbox stage and the FOV stage. Additionally or alternatively, IMU <NUM> detects transitions in the stationary status by correlating these transitions to particular changes in the longitudinal acceleration (e.g., aligned with the motion) of vehicle <NUM>. In some embodiments, a longitudinal acceleration algorithm (<FIG>) (i.e., a sub-algorithm of the stationary resolution algorithm) includes a change in acceleration and is unconcerned with vehicle speed as this provides incorrect stationary status at times due to bias errors. In some embodiments, IMU <NUM> is a COTS IMU and that measures and reports a body's specific force, angular rate, and sometimes the orientation of vehicle <NUM>, using a combination of accelerometers, gyroscopes, and sometimes magnetometers.

In some embodiments, in a fifth stage (i.e., a combined stationary algorithm <FIG>) of the stationary resolution algorithm false status indications are prevented by monitoring a stationary or non-stationary status indication for the hitbox processing algorithm, the FOV processing algorithm, a longitudinal acceleration algorithm and a drift supervision algorithm to be consistently repeated over a prescribed period of time to generate a final stationary status. The final status is not dependent on an instantaneous stationary indication but on a series of stationary indications during a time period. In some embodiments, the time period is <NUM> to determine a stationary status and <NUM>-<NUM> for determining a non-stationary status. Additionally or alternatively, more time is provided to determine a stationary status as it is a safe state and some safety-related operations (e.g., train door opening) follow.

In some embodiments, vehicle <NUM> has a radar <NUM> and an IMU <NUM>; however, in some embodiments, SSRS <NUM> has a radar <NUM> without an IMU <NUM>. However, in some embodiments, for greater safety integrity, SSRS <NUM> is implemented with two or more radars as well as a diverse sensor technology (e.g., two COTS IMUs or accelerometers). These embodiments are discussed in reference to the FIGS below.

<FIG> is a high-level functional block diagram of an SSRS <NUM>, in accordance with some embodiments. In some embodiments, a non-transitory computer-readable storage medium (<NUM>) contains executable instructions, such as stationary resolution algorithm that, when executed by processor (<NUM>), cause processor (<NUM>) to: identify, based upon Doppler-speed determination from one or more radars <NUM>, <NUM>, radar targets <NUM> within a hitbox <NUM> for determining a first stationary status of a vehicle <NUM> based on tracking Doppler-speed radar targets <NUM> in a hitbox region <NUM>; identify, based upon the Doppler speed determination from radars <NUM>, <NUM>, FOV radar targets (not shown) located outside of hitbox <NUM> for determining a second stationary status based on a substantial number and a distribution of Doppler-speed determinations for FOV radar targets (not shown); and confirm, based on detecting an acceleration sensed by IMUs <NUM>, <NUM> onboard vehicle <NUM>, a change in either of the first or the second stationary status of vehicle <NUM>.

In some embodiments, SSRS <NUM> with vehicle <NUM> equipped with radars <NUM>, <NUM> and IMUs <NUM>, <NUM> is like SSRS <NUM> with vehicle <NUM> equipped with radar <NUM> and IMU <NUM>. In some embodiments, SSRS <NUM>, for greater safety integrity, implements two or more radars <NUM>, <NUM> and has two COTS IMUs <NUM>, <NUM>. In some embodiments, two radars are mounted on vehicle body <NUM> at the same end of vehicle <NUM> and two associated IMUs. In some embodiments, two radars are located at each end of the train and two associated IMUs as shown in <FIG>. In some embodiments, four radars, two at each end of the vehicle and four associated IMUs/accelerometers are used for safety redundancy and spatial diversity.

In some embodiments, one or more radars are installed on most any location on train body <NUM>. In some embodiments, one or more radars are located on the exterior of train body <NUM> and not underneath vehicle <NUM> to reduce installation and maintenance costs of the radars. Additionally or alternatively, the one or more radars are located where tracking/observing zero-Doppler-speed targets (e.g., targets that are stationary in the radar frame) provides the largest FOV. In some embodiments, IMUs <NUM>, <NUM> are installed such that the longitudinal axis of IMUs <NUM>, <NUM> is aligned with a vehicle primary axis <NUM> of motion and IMUs <NUM>, <NUM> are located close to the train bogie center point to reduce errors in lever arm calculation. In some embodiments, the bogie acceleration is the actual train acceleration, whereas an IMU mounted away from the bogie, such as at the front of the train, will detect an extra component. Additionally or alternatively, this is because the front of the train doesn't follow the guideway in a similar manner to the bogie. For example, the top of a large truck wobbles more than the bottom and can be accounted for if the height (e.g., the lever arm) of the truck is known.

In some embodiments, a first stage is a hitbox processing algorithm (<FIG>) and based on tracking zero-Doppler-speed radar targets <NUM> in hitbox region <NUM>. In some embodiments, a second stage is a FOV processing algorithm (<FIG>) and based on checking the number and distribution of zero-Doppler-speed targets in the FOV of radars <NUM>, <NUM>. In some embodiments, a third stage is a drift supervision algorithm (<FIG>) for detection of very slow vehicle drift, represented by arrow <NUM>, over time (e.g., time progression is represented by arrow <NUM> moving from left to right), of vehicle <NUM> with speeds lower than the numerical speed resolution of the radar. In some embodiments, a fourth stage is a longitudinal acceleration algorithm (<FIG>) that indicates changes in the status of vehicle <NUM> by correlating them to changes in the longitudinal acceleration of the vehicle using IMUs <NUM>, <NUM> (<FIG>). In some embodiments, a fifth stage is a combined stationary algorithm (<FIG>) where false status indications are eliminated by monitoring a stationary or non-stationary status indication to be consistently repeated over a prescribed period of time to generate a final stationary status. In some embodiments, a sixth stage is a unified stationary algorithm (<FIG>) that combines a combined stationary status decision of redundant devices (e.g., multiple radar and multiple IMUs) for outputting a unified stationary status decision for all radars and IMUs. Additionally or alternatively, stages one through six do not need to be performed in a specific order. In some embodiments, each stage is performed independently of the other stages. In some embodiments, while each of stage one through six complements the other, each stage determines its own stationary or non-stationary output. Additionally or alternatively, the terms first, second, third, fourth, fifth and sixth stages are used for descriptive purposes for the order of presentation and are not limiting as to an order of necessary process.

In some embodiments, a drift supervision algorithm is used to detect slow drift, arrow <NUM>, of vehicle <NUM>. In some embodiments, a magnitude of slow drift <NUM>, is represented by arrows <NUM> extending from hitbox targets <NUM>. Additionally or alternatively, magnitude <NUM> of slow drift <NUM> is measured by changes in the positions of tracked zero-Doppler-speed targets <NUM> within hitbox <NUM> over a time period. In some embodiments, magnitude <NUM> of slow drift <NUM> is continuously monitored as long as vehicle <NUM> is stationary and it is carried out in blocks of time (e.g., check whether the change in position of tracked targets in hitbox region over the last <NUM> seconds indicate that all targets drift together in one direction more than <NUM>; if yes, indicate drift, then repeat this check as long as the vehicle stationary status is stationary). In some embodiments, the hitbox processing algorithm (<FIG>) and the FOV processing algorithm (<FIG>) of the stationary resolution algorithm are complemented by the drift supervision algorithm for determining slow drift <NUM> of vehicle <NUM> during speeds lower than a numerical speed resolution of radar <NUM>. In some embodiments, the radar provides speed as multiples of its numerical speed resolution/numerical granularity. Additionally or alternatively, the radar differs based on the radar manufacturer/type (e.g., a <NUM>/s for one brand and <NUM>/s for another). Nevertheless, in some embodiments, when a train drifts with <NUM>/s on a very shallow grade, then speed of radar targets will be zero due to the numerical resolution/granularity of radar device while over time the monitoring/tracking of position of tracked targets indicates that slow drift is happening. In some embodiments, at very low speeds, the reported Doppler speed of stationary ground targets <NUM> will be zero due to the numerical speed resolution of radar <NUM> and consequently, very slow movement of vehicle <NUM> is not detected by observing the Doppler speed. Hence, in some embodiments, a slow drift <NUM> of vehicle <NUM> is observed by changes in the positions of tracked zero-Doppler-speed hitbox targets <NUM> in hitbox <NUM> over a time period (e.g., starting the time period once a stationary status is established ([time=stationary] <NUM>), moving through ([time=stationary + X] <NUM>), and then, flags the case when tracked targets <NUM> all drift in one direction with magnitude <NUM> higher than a prescribed threshold (e.g., <NUM>) (time=stationary + Xn where the time period <NUM> ends and a change of status to non-stationary is issued from the drift supervision algorithm).

In some embodiments, drift supervisor algorithm is a complement to first stage hitbox processing algorithm (<FIG>) and second stage FOV processing algorithm (<FIG>). In some embodiments, another complement to hitbox processing algorithm and FOV processing algorithm is through detection of longitudinal acceleration by IMUs <NUM>, <NUM> in the below discussed fourth stage of a stationary resolution algorithm.

<FIG> are graphical representations of longitudinal data during a stationary to non-stationary and non-stationary to stationary status transitions, in accordance with some embodiments. In some embodiments, a longitudinal acceleration algorithm (<FIG>) receives an initial stationary status from the hitbox processing algorithm and/or FOV processing algorithm. Additionally or alternatively, after initialization, longitudinal acceleration algorithm relies on the previous stationary status history (e.g., its internal history in longitudinal acceleration algorithm) not on the radar-based stationary status as this will make the two algorithms radar-based and an IMU-based, more Independent which is better for safety. Additionally or alternatively, when a current received status is stationary, the status will remain at a stationary status within the longitudinal acceleration algorithm unless a change in longitudinal acceleration <NUM> (e.g., data from one or more IMU) of the vehicle is detected above a prescribed threshold <NUM> to indicate a change in the vehicle status from stationary to non-stationary. In some embodiments, the prescribed threshold is a tunable parameter that depends on the vehicle type and geography of application. The threshold will be higher if the vehicle is allowed to pitch, or shake, forwards and backwards and if the terrain is inclined/ bumpy as opposed to smooth. In some embodiments, prescribed threshold <NUM> is approximately. <NUM>/s<NUM>. In some embodiments, acceleration points <NUM> indicate an initial jump in acceleration at time = <NUM> that is due to start of the IMU data recording on the system. This initial jump is ignored as the system has to initialize before detecting transitions. In some embodiments, acceleration points <NUM> surpass prescribed threshold <NUM> as vehicle acceleration grows and the vehicle moves from a stationary to a non-stationary state. Additionally or alternatively, the longitudinal acceleration algorithm issues a non-stationary status once acceleration points <NUM> surpass prescribed threshold <NUM> indicating the vehicle is moving.

In some embodiments, when the received status is non-stationary (i.e., received from the radar-based algorithms only during initialization and then the longitudinal algorithm takes over and determines its internal previous state of stationary or non-stationary) the longitudinal acceleration algorithm will set a stationary status when the acceleration algorithm receives an input from one or more IMUs indicating a change in the vehicle status. Additionally or alternatively, when a vehicle, such as a train, stops, a large negative decrease in acceleration, indicated by line <NUM> (<FIG>), is sensed by the IMU followed by underdamped oscillations, shown in acceleration points <NUM> in the longitudinal acceleration, and finally a bounded longitudinal acceleration shown in acceleration points <NUM>. In some embodiments, the stopping behavior occurs as a force applied (e.g., the motor drive on the wheels) to the vehicle suddenly drops when the vehicle comes to a complete stop, resulting in a big jerk of the vehicle indicated at line <NUM>. Additionally or alternatively, the change in the force causes energy to be stored in the suspension system and then dissipated causing the underdamped (decaying) oscillations <NUM> in the longitudinal acceleration. Finally, when the energy is almost fully dissipated, the longitudinal acceleration will converge to a bounded, almost-constant value <NUM>.

In some embodiments, the one or more IMUs used to detect the transitions in the stationary status of the vehicle (from stationary to non-stationary or from non-stationary to stationary) are implemented to crosscheck any changes in the stationary status decisions of the hitbox processing algorithm and the FOV processing algorithm of the stationary resolution algorithm. In some embodiments, the one or more IMU used for detecting transitions in a stationary status correlate transitions to particular changes in the longitudinal acceleration (e.g., aligned with the motion) of the vehicle. Thus, in some embodiments, the one or more IMU are not integrated for calculating speed (i.e., that is inaccurate due to drift caused by bias error accumulation), but instead are used to determine an acceleration status.

In some embodiments, when a received status is non-stationary and the longitudinal acceleration algorithm identifies a large negative decrease in acceleration <NUM> the longitudinal acceleration algorithm outputs a status of non-stationary. Additionally or alternatively, a large negative decrease in acceleration <NUM> followed by underdamped oscillations <NUM> in the longitudinal acceleration, and finally a bounded longitudinal acceleration <NUM> is stopping behavior of the vehicle indicating a change in the vehicle stationary status from non-stationary to stationary.

As discussed, in some embodiments, the longitudinal acceleration algorithm is used as a cross check of the state transition determined from a tentative stationary decision of the hitbox processing algorithm or the FOV processing algorithm, discussed in greater detail below. Additionally or alternatively, to prevent false indications, a stationary indication has to be consistently repeated over a prescribed persistency period to generate a final stationary decision. The final decision does not depend on an instantaneous stationary indication but on a series of stationary indications during a persistency period.

In some embodiments, by determining the change in acceleration and not the value of acceleration itself, the stationary resolution algorithm removes the need for knowing the grade of the guideway at the current location of the vehicle. Additionally or alternatively, since the stationary resolution algorithm does not rely on integrating acceleration for calculating speed/position, the algorithm does not suffer from false indications of transitions due to accumulation of bias errors.

<FIG> is a high-level flow diagram of a hitbox processing algorithm, in accordance with some embodiments. In some embodiments, one or more radars receive radar returns from previous radar transmissions and begin to determine radar measurements, such as range, azimuth angle and Doppler speed (<NUM>) from targets providing a radar return. In some embodiments, the radar targets detected are then filtered (<NUM>), based on a range and an azimuth angle, to select the radar targets within a hitbox. For instance, a hitbox filter is applied on the range and azimuth angle of radar targets to select targets originating from the hitbox.

Additionally or alternatively, the selected radar targets within the hitbox are filtered even further to select the radar targets within the hitbox that have a substantially zero-Doppler-speed (<NUM>). For instance, another filter is applied to the hitbox targets to consider only targets with (e.g., substantially) zero-Doppler-speed within the hitbox region. In some embodiments, the threshold of the Doppler filter is selected to account for the possible Doppler speed error of stationary physical targets when the vehicle is stationary.

In some embodiments, if the vehicle is stationary, then targets from physical objects on the ground of the hitbox, e.g., rail baseplates and rail ties, will have zero-Doppler-speed. A tracker then tracks those targets in the hitbox region. In some embodiments, when the vehicle is non-stationary, then all radar targets originating from physical stationary objects on the ground of the hitbox will be moving with respect to the radar (i.e., also moving) and will have non-zero Doppler speed, and consequently radar targets will be filtered out either as they leave the hitbox (<NUM>) or by the Doppler filter (<NUM>). Additionally or alternatively, the Doppler filter considers only targets within the hitbox with (approximately) zero-Doppler-speed. With the Doppler filter, when there are moving targets in the hitbox, the moving targets are going to be filtered out and will not cause a false non-stationary hitbox indication as long as the moving targets do not considerably block the ground targets in the hitbox. In some embodiments, a tracker tracks the positions of zero-Doppler-speed targets to verify that the zero-Doppler-speed targets are constant within an acceptable tolerance as a check for verifying that these targets are originated from stationary objects with respect to the radar.

In some embodiments, the substantially zero-Doppler-speed radar targets are tracked to verify the positions of the substantially zero-Doppler-speed radar targets are constant (<NUM>). For instance, the positions of the zero Doppler speed targets within the hitbox are tracked to verify that the positions of the zero Doppler speed targets are constant within a tolerance that works as a second verification that these zero-Doppler-speed targets are stationary with respect to the radar. In some embodiments, tracking is carried out inside the radar device. For instance, the hitbox processing algorithm uses the target IDs provided by the radar when associating new radar measurements/targets to existing tracked targets and there is no need for implementing a full tracker by processor (<NUM>). Additionally or alternatively, the radar provides raw measurements and a full tracker is implemented to track the positions of zero Doppler speed targets. In some embodiments, any tracker is used to track the positions of zero Doppler speed targets.

In some embodiments, trackers carry out track management processes and provide the confidence level of each target. Additionally or alternatively, the confidence level is used to determine the confidence level of the stationary targets (<NUM>). Any low confidence targets are discarded ("NO" branch of block <NUM>) (<NUM>). Higher confidence targets are considered reliably tracked targets ("YES" branch of block <NUM>) (<NUM>).

In some embodiments, a number and distribution of the substantially zero-Doppler-speed radar targets is determined (<NUM>). Additionally or alternatively, checks on the number and distribution of reliably tracked targets inside the hitbox are carried out to indicate the stationary status. For instance, where the hitbox does not have moving objects in complete synchronization with the radar (e.g., same speed and direction), tracking many zero-Doppler-speed targets distributed in the hitbox region with high confidence is an indication that the considered vehicle is stationary ("PASS" branch of block <NUM>) (<NUM>). In some embodiments, non-zero-Doppler speed targets are rejected from the beginning (e.g., Doppler filter <NUM>). Additionally or alternatively, failure to track a number of zero-Doppler speed targets distributed in the hitbox with high confidence is an indication that the vehicle is non-stationary given that the hitbox has a low probability of having moving targets and thus the status is non-stationary ("FAIL" branch of block <NUM>) (<NUM>).

In some embodiments, checking the number and distribution of reliably tracked zero-Doppler-speed targets within the hitbox reduces the probability of false stationary indications due to an object within the hitbox that moves in complete synchronization (e.g., same speed and direction) as the vehicle. In some embodiments, the number of reliably tracked zero-Doppler-speed targets within the hitbox will be higher than a prescribed threshold that is tuned based on field data. In some embodiments, the reliably tracked zero-Doppler-speed targets are distributed over the longitudinal extension of the hitbox and not all generated from almost the same longitudinal distance. That is the case of an obstacle vehicle within the hitbox that moves in the same direction and speed of the vehicle. However, since the hitbox region is only extended for a short longitudinal distance from the vehicle (e.g., <NUM>), the scenario of an obstacle vehicle is a very unlikely scenario and in normal operation vehicles are not that close to each other for safety reasons.

In some embodiments, a hitbox based stationary indication is outputted as to whether the vehicle is stationary or non-stationery (<NUM>). With reference to block <NUM>, once reliable targets are determined, these reliable targets are passed to the drift supervision algorithm (<NUM>) that is discussed in greater detail below in some embodiments.

<FIG> is a high-level flow diagram of a FOV processing algorithm, in accordance with some embodiments. In some embodiments, an FOV processing algorithm is implemented by applying a filter on the Doppler speed (<NUM>) of radar measurements (<NUM>) to consider only targets with (approximately) zero Doppler speed. Additionally or alternatively, the threshold of the Doppler filter is selected to account for the possible Doppler speed error of stationary physical targets when the vehicle is stationary.

In some embodiments, the number and distribution of the zero Doppler speed targets in the radar FOV are examined for indicating stationary status (<NUM>). For instance, when the algorithm finds a sufficient number of zero-Doppler-speed targets distributed in the radar FOV, then the algorithm will indicate that the vehicle is stationary ("PASS" branch of block <NUM>) (<NUM>). However, when the algorithm finds a sufficient number of targets having Doppler speed distributed in the radar FOV, then the algorithm will indicate that the vehicle is non- stationary ("FAIL" branch of block <NUM>) (<NUM>). The movement in complete synchronization (e.g., same speed and direction) of a large number of targets distributed over the FOV of the radar with the vehicle so that all targets are considered stationary with respect to the moving radar is extremely unlikely. In some embodiments, the distribution check (<NUM>) ranges from a simple distribution check on the longitudinal and lateral extensions of the zero Doppler speed targets in the radar FOV to involved statistical distribution checks. In some embodiments, the FOV stationary indication (<NUM>) is outputted and used in one or more other algorithms to provide a redundancy and prevent false stationary indications.

<FIG> is a high-level flow diagram of a drift detection algorithm, in accordance with some embodiments. In some embodiments, slow drift of the vehicle, drifting at speeds lower than the numerical speed resolution of the radar, are detected by observing changes in the positions of the tracked zero-Doppler-speed targets within the hitbox over a time period (e.g., starting once a stationary status is established), and then flagging the situation where these tracked targets drift in one direction more than a prescribed threshold (e.g., <NUM>).

In some embodiments, a list of reliable tracked targets is passed from the hitbox processing algorithm (<FIG> <NUM>) to a drift supervision algorithm (<NUM>) to be used to detect slow drift of a vehicle. In some embodiments, the reliable tracked targets are data associated (<NUM>). That is new radar measurements have data associated to existing tracked points. In some embodiments, based upon the new radar measurements, a new position of the tracked targets is processed (<NUM>). Additionally or alternatively, a magnitude in change in position is determined and whether the change in position is greater than a prescribed threshold (<NUM>).

In some embodiments, a slow drift of a vehicle is observed by changes in the positions of tracked zero-Doppler-speed hitbox targets in the hitbox over a time period (e.g., starting the time period once a stationary status is established by the algorithm [time=stationary] <NUM>), and then, flags the case when tracked targets all drift in one direction with magnitude higher than a prescribed threshold (e.g., <NUM>) ("YES" branch of block <NUM>) (<NUM>). In some embodiments, where the magnitude of drift is below a prescribed threshold, no flag is set and the vehicle is considered stationary ("NO" branch of block <NUM>) (<NUM>). In some embodiments, a drift indication as to whether the vehicle is stationary or non-stationary by a noticeable drift is set (<NUM>).

<FIG> is a high-level flow diagram of a longitudinal acceleration algorithm, in accordance with some embodiments. In some embodiments, the longitudinal acceleration algorithm indicates transitions from stationary to non-stationary if the measured/filtered longitudinal acceleration of the vehicle changes above a prescribed limit. Additionally or alternatively, this limit is selected to account for the maximum allowed pitching of a stationary vehicle for all vehicle types, sensor noise, and environmental noise such as expected passenger vibrations.

In some embodiments, the longitudinal acceleration algorithm receives a stationary status from the hitbox processing algorithm and the FOV processing algorithm (<NUM>). When the received status is non-stationary (<NUM>) the longitudinal acceleration algorithm will iteratively determine, over a time period, if a large negative decrease in acceleration followed by underdamped oscillations and finally the acceleration settles within bound (e.g., indicative of the when a train stops) is detected by the one or more IMU ("NO" branch of block <NUM>). In some embodiments, the one or more IMU detects transitions from non-stationary to stationary by detecting a large negative decrease in acceleration (e.g., indicating a vehicle stopping with a large jerk on the vehicle) in the longitudinal direction ("YES" branch of block <NUM>). In some embodiments, a verification of the large negative decrease in acceleration is performed by sensing underdamped oscillations in the longitudinal acceleration of the vehicle followed by a bounded longitudinal acceleration. Additionally or alternatively, upon detecting the large negative decrease in acceleration, a stationary status is set (<NUM>).

In some embodiments, the vehicle behavior is to have a large jerk, followed by underdamped oscillations in the longitudinal acceleration, and finally a bounded longitudinal acceleration. Additionally or alternatively, this stopping behavior happens as the force applied to the vehicle suddenly drops when the vehicle comes to a complete stop, resulting in the big jerk (e.g., a large negative decrease in acceleration). This impulsive change in the force causes the energy to be stored in the suspension system and then dissipated causing the underdamped (decaying) oscillations in the longitudinal acceleration. Finally, when the energy is almost fully dissipated, the longitudinal acceleration will converge to a bounded, almost-constant value.

In some embodiments, detection is realized through rule-based checks on the magnitude and time periods of any detected consecutive oscillations in the longitudinal acceleration. Additionally or alternatively, templates identifying stopping behaviors in the longitudinal acceleration and then correlating the detected underdamped oscillations to the templates using standard correlation methods is one embodiment, e.g., Pearson's coefficient of correlation.

In some embodiments, the longitudinal acceleration algorithm receives an initial stationary status from the hitbox processing algorithm and the FOV processing algorithm (<NUM>). In some embodiments, when the received status is stationary (<NUM>), longitudinal acceleration algorithm will iteratively determine whether a change in the longitudinal acceleration of the vehicle is above a prescribed threshold to indicate a change in the vehicle status from stationary to non-stationary ("NO" branch of block <NUM>). In some embodiments, when a change in longitudinal acceleration (e.g., data from one or more IMU) of the vehicle is detected above the prescribed threshold to indicate a change in the vehicle status from stationary to non-stationary, the stationary status is set to non-stationary (<NUM>). Additionally or alternatively, a longitudinal-acceleration-based stationary status (<NUM>) is set to non-stationary (<NUM>) or stationary (<NUM>) depending on the one or more IMU data. In some embodiments, the longitudinal-acceleration-based stationary status (<NUM>) will be used in other algorithms to determine a stationary status and a unified stationary status, as will be discussed in greater detail below.

<FIG> is a high-level flow diagram of a combined stationary algorithm, in accordance with some embodiments. In some embodiments, the one or more radar are the primary sensor technology for indicating a stationary status of the vehicle. Additionally or alternatively, the one or more IMU are utilized to determine state transition based on the motion profile measured. In some embodiments, the hitbox processing indication (<NUM> <FIG>), the FOV processing indication (<NUM> <FIG>), the drift indication (<NUM> <FIG>) and the longitudinal acceleration indication (<NUM> <FIG>) are combined and monitored over a persistency period in order to provide the final output, i.e., the stationary decision.

In some embodiments, the output indications of the hitbox stationary indication <NUM> and the FOV stationary indication are combined in various ways. In some embodiments, a decision maker (e.g., a machine learning classifier) considers information from each processing chain in combining their indications (<NUM>). For example, a decision maker simultaneously considers how many zero-Doppler-speed targets are detected in the FOV, their distribution, how many zero-Doppler-speed targets are tracked in the hitbox and their confidence levels provided by the radar tracking management function. Then, the decision maker outputs a unified stationary status indication based on the information received from both processing chains.

In order to increase the robustness against false indications, the stationary indication has to be consistently repeated over a prescribed persistency period to generate the final stationary decision. The final decision does not depend on an instantaneous stationary indication but on a series of stationary indications during a persistency period.

In some embodiments, the current combined stationary indication (<NUM>) and the last Nind stationary indications (<NUM>) are checked (<NUM>) for changing the function decision from non-stationary to stationary. In some embodiments, when all the current (<NUM>) and the last Nind stationary indications (<NUM>) are stationary, then the tentative status is stationary (<NUM>). In some embodiments, the combined stationary indication (<NUM>) and the last N'ind stationary indications (e.g., most recent stationary indications <NUM>), where N'ind < Nind, are checked (<NUM>) for changing the function decision from stationary to non-stationary. In some embodiments, when the combined stationary indication (<NUM>) and the last N'ind stationary indications (<NUM>) are non-stationary, then the tentative decision (<NUM>) is non-stationary. Thus, when a stationary status is repeated over a period of time (e.g., from time=<NUM> to time =N'ind), this redundancy of status over time assists in defending against false flags. For example, one indication of a change in status is not good enough, but instead after ten, twenty or fifty changes in status, then the combined stationary indication algorithm will initiate a change of status. Otherwise, the last decision of the combined stationary indication algorithm is not changed.

In some embodiments, the longitudinal-acceleration-based stationary status change indication (<NUM>) is used as a check of the state transition determined from the tentative status decision (<NUM>). In some embodiments, When a state transition is indicated by either the hitbox processing algorithm, the FOV processing algorithm or the longitudinal acceleration algorithm, a timer is initiated and the same stationary status transition must be confirmed within a prescribed time buffer (<NUM>) (e.g., less than <NUM> second) for the diversity check to succeed. In some embodiments, when the check fails ("FAIL" branch of block <NUM>), the final decision <NUM> will be "non-stationary" (e.g., the system fails to assuming the vehicle is moving for safety purposes as for safety purposes it is desired to avoid a stationary decision by mistake and creating a safety issue for passengers or cargo); otherwise, the tentative decision is promoted to be final ("PASS" branch of block <NUM>) (<NUM>).

<FIG> is a high-level flow diagram of a unified stationary algorithm, in accordance with some embodiments. In some embodiments, unified stationary algorithm combines the decisions of redundant devices (e.g., one or more radars (e.g., radars <NUM>-N and one or more IMUs (e.g., IMUs <NUM>-N)) for outputting a unified stationary status decision of the unified stationary algorithm. In some embodiments, combining the determined stationary status of the vehicle from multiple devices to output a unified stationary status decision for the vehicle provides another level of safety and redundancy to the SSRS.

In some embodiments, hitbox processing from each of one or more radars (<NUM>), FOV processing from each of one or more radars (<NUM>), drift detection from each of the one or more radars (<NUM>) and longitudinal acceleration from each of the one or more IMUs (<NUM>) is processed to provide a unified stationary status (<NUM>). In some embodiments, a decision maker (e.g., a machine learning classifier or artificial intelligence) considers information from each processing chain in combining their indications. In some embodiments, a decision maker simultaneously considers how many zero-Doppler-speed targets are detected in each FOV for each radar, their distribution, how many zero-Doppler-speed targets are tracked in each hitbox for each radar and their confidence levels provided by the tracking management function. Then, the unified decision maker (<NUM>) outputs a unified stationary status (<NUM>) indication based on the information received from all processing chains.

In some embodiments, neither the one or more radars nor the one or more IMUs are not mounted on the wheels of the vehicle, and consequently do not suffer from wheel slipping/spinning errors. Additionally or alternatively, the radars and the IMUs are installed on the train body to lower installation and maintenance costs. In some embodiments, the radars and IMUs are COTS equipment and thus inexpensive. Further, the COTS radar and IMUs are not sensitive to environmental conditions such as adverse weather and illumination effects. Finally, the radar and IMUs do not require installation of equipment along the entire track side.

In some embodiments, the stationary resolution algorithm does not rely on integrating acceleration to calculate speed or position, and hence the stationary resolution algorithm does not suffer from bias integration errors. Additionally, some of the embodiments are considerably more robust against environmental conditions such as weather and is not affected by illumination changes.

<FIG> is a high-level functional block diagram of a processor-based system, in accordance with some embodiments. In some embodiments, stationary resolution system processing circuitry <NUM> is a general purpose computing device including a hardware processor <NUM> and a non-transitory, computer-readable storage medium <NUM>. Storage medium <NUM>, amongst other things, is encoded with, i.e., stores, computer program instructions <NUM>, i.e., a set of executable instructions such as stationary resolution algorithm. Execution of instructions <NUM> by hardware processor <NUM> represents (at least in part) a stationary vehicle resolution discovery tool which implements a portion or all of the methods described herein in accordance with one or more embodiments (hereinafter, the noted processes and/or methods).

Processor <NUM> is electrically coupled to a computer-readable storage medium <NUM> via a bus <NUM>. Processor <NUM> is also electrically coupled to an I/O interface <NUM> by bus <NUM>. A network interface <NUM> is also electrically connected to processor <NUM> via bus <NUM>. Network interface <NUM> is connected to a network <NUM>, so that processor <NUM> and computer-readable storage medium <NUM> are capable of connecting to external elements via network <NUM>. Processor <NUM> is configured to execute computer program instructions <NUM> encoded in computer-readable storage medium <NUM> in order to cause stationary resolution system processing circuitry <NUM> to be usable for performing a portion or all of the noted processes and/or methods. In one or more embodiments, processor <NUM> is a central processing unit (CPU), a multi-processor, a distributed processing system, an application specific integrated circuit (ASIC), and/or a suitable processing unit.

In one or more embodiments, computer-readable storage medium <NUM> is an electronic, magnetic, optical, electromagnetic, infrared, and/or a semiconductor system (or apparatus or device). For example, computer-readable storage medium <NUM> includes a semiconductor or solid-state memory, a magnetic tape, a removable computer diskette, a random access memory (RAM), a read-only memory (ROM), a rigid magnetic disk, and/or an optical disk. In one or more embodiments using optical disks, computer-readable storage medium <NUM> includes a compact disk-read only memory (CD-ROM), a compact disk-read/write (CD-R/W), and/or a digital video disc (DVD).

In one or more embodiments, storage medium <NUM> stores computer program instructions <NUM> configured to cause stationary resolution system processing circuitry <NUM> to be usable for performing a portion or all of the noted processes and/or methods. In one or more embodiments, storage medium <NUM> also stores information, such as stationary resolution algorithm which facilitates performing a portion or all of the noted processes and/or methods. In one or more embodiments, storage medium <NUM> stores parameters <NUM>.

Stationary resolution system processing circuitry <NUM> includes I/O interface <NUM>. I/O interface <NUM> is coupled to external circuitry. In one or more embodiments, I/O interface <NUM> includes a keyboard, keypad, mouse, trackball, trackpad, touchscreen, and/or cursor direction keys for communicating information and commands to processor <NUM>.

Stationary resolution system processing circuitry <NUM> also includes network interface <NUM> coupled to processor <NUM>. Network interface <NUM> allows stationary resolution system processing circuitry <NUM> to communicate with network <NUM>, to which one or more other computer systems are connected. Network interface <NUM> includes wireless network interfaces such as BLUETOOTH, WIFI, WIMAX, GPRS, or WCDMA; or wired network interfaces such as ETHERNET, USB, or IEEE-<NUM>. In one or more embodiments, a portion or all of noted processes and/or methods, is implemented in two or more stationary resolution system processing circuitries <NUM>.

Stationary resolution system processing circuitry <NUM> is configured to receive information through I/O interface <NUM>. The information received through I/O interface <NUM> includes one or more of instructions, data, design rules, and/or other parameters for processing by processor <NUM>. The information is transferred to processor <NUM> via bus <NUM>. Stationary resolution system processing circuitry <NUM> is configured to receive information related to a UI through I/O interface <NUM>. The information is stored in computer-readable medium <NUM> as user interface (UI) <NUM>.

In some embodiments, a portion or all of the noted processes and/or methods is implemented as a standalone software application for execution by a processor. In some embodiments, a portion or all of the noted processes and/or methods is implemented as a software application that is a part of an additional software application. In some embodiments, a portion or all of the noted processes and/or methods is implemented as a plug-in to a software application.

In some embodiments, the processes are realized as functions of a program stored in a non-transitory computer readable recording medium. Examples of a non-transitory computer-readable recording medium include, but are not limited to, external/removable and/or internal/built-in storage or memory unit, e.g., one or more of an optical disk, such as a DVD, a magnetic disk, such as a hard disk, a semiconductor memory, such as a ROM, a RAM, a memory card, and the like.

A system of one or more computers are configured to perform particular operations or actions by virtue of having software, firmware, hardware, or a combination of them installed on the system that in operation causes or cause the system to perform the actions. One or more computer programs are configured to perform particular operations or actions by virtue of including instructions that, when executed by data processing apparatus, cause the apparatus to perform the actions. One general aspect includes filtering radar targets detected by one or more radars operably coupled to a body of a vehicle, based on a range and an azimuth angle, to select the radar targets within a hitbox that is a predetermined area in front of the vehicle. The method also includes filtering the selected radar targets within the hitbox to select from the selected radar targets with a substantially zero-Doppler-speed. The method also includes tracking the substantially zero-Doppler-speed radar targets to verify positions of the substantially zero-Doppler-speed radar targets are constant. The method also includes determining a number and distribution of the substantially zero-Doppler-speed radar targets to determine a stationary status. The method also includes determining whether the substantially zero-Doppler-speed radar targets are moving in synchronization to determine a vehicle's first stationary status. Other embodiments of this aspect include corresponding computer systems, apparatus, and computer programs recorded on one or more computer storage devices, each configured to perform the actions of the methods.

In some embodiments, implementations include one or more of the following features. The method includes: filtering field of view (FOV) radar targets that are outside of the hitbox, detected by the one or more radars, based on the substantially zero-Doppler-speed; determining a number and distribution of the filtered FOV radar targets to determine a stationary status; determining whether the number of the filtered FOV radar targets are greater than or equal to a predetermined number; and determining whether the filtered FOV radar targets are synchronized in detected movement to determine a vehicle's second stationary status. The method includes determining the vehicle's first stationary status and the vehicle's second stationary status for each of the one or more radars. The method includes cross-comparing each of the one or more vehicles' first stationary status and each of the one or more vehicles' second stationary status to detect potential failures in the one or more radars. The method includes detecting, at speeds lower than a numerical speed resolution of the one or more radars, drift of the vehicle by detecting changes in positions of the hitbox radar targets or the filtered FOV radar targets over a period of time. The method includes identifying the substantially zero-Doppler-speed radar targets of the hitbox or the filtered FOV radar targets where the drift is equal to or greater than a predetermined threshold. The method includes identifying, based on data from one or more inertial measurement units (IMU), whether longitudinal acceleration is detected indicating a transition from a stationary status. The method includes determining, based on the vehicle's first stationary status and the vehicle's second stationary status, a unified stationary status indication. The unified stationary status indication is also based on whether there is detected drift of the vehicle. The method includes changing the unified stationary status indication based on a plurality of consecutive status indications from the first stationary status, the second stationary status or the detected vehicle drift indicating a status change over a predetermined time period before. Implementations of the described techniques include hardware, a method or process, or computer software on a computer-accessible medium.

In some embodiments, a non-transitory computer-readable storage medium includes instructions to identify, based upon Doppler-speed determination from one or more radars, radar targets within a hitbox for determining a first stationary status of a vehicle based on tracking Doppler-speed radar targets in a hitbox region. The medium also includes instructions to identify, based upon the Doppler speed determination from the one or more radars, field-of-view (FOV) radar targets for determining a second stationary status based on a substantial number and a distribution of Doppler-speed determinations for the FOV radar targets. The medium also includes instructions to confirm, based on detecting a change in either of the first or the second stationary status of the vehicle, an acceleration sensed by an inertial measurement unit onboard the vehicle. Other embodiments of this aspect include corresponding computer systems, apparatus, and computer programs recorded on one or more computer storage devices, each configured to perform the actions of the methods.

In some embodiments, implementations include one or more of the following features. The non-transitory computer-readable storage medium where the instructions further includes instructions that, when executed by the processor, cause the processor to determine, based upon speeds lower than a numerical speed resolution of the one or more radar, drift of the vehicle based upon a plurality of stationary statuses compared against one another over time. The instructions further includes instructions that, when executed by the processor, cause the processor to verify, based on changes in the first or the second stationary status of the vehicle, a change in longitudinal acceleration of the vehicle detected by an inertial measurement unit (IMU). The instructions further includes instructions that, when executed by the processor, cause the processor to determine, based on the first stationary status, the second stationary status, and the longitudinal acceleration of the IMU, a third stationary status of the vehicle. Implementations of the described techniques include hardware, a method or process, or computer software on a computer-accessible medium.

In some embodiments, a stationary resolution system (SSRS) includes a vehicle for use on a guideway. The system also includes one or more radars operably coupled to a body of the vehicle. The system also includes one or more processors operably coupled to the one or more radars. The system also includes memory operably coupled to the one or more processors, the memory configured to store executable instructions that when executed by the one or more processors, causes the one or more processors to: determine a plurality of hitbox targets located within a predetermined area in front of the vehicle that have a constant range based upon returned radar signals, determine a plurality of field of view (FOV) targets that have a constant range based upon the returned radar signals, and determine the vehicle is stationary when a plurality of hitbox targets and a plurality of FOV targets have the constant range based upon the returned radar signals. Other embodiments of this aspect include corresponding computer systems, apparatus, and computer programs recorded on one or more computer storage devices, each configured to perform the actions of the methods.

In some embodiments, implementations include one or more of the following features. The system where the instructions further includes instructions that, when executed by the processor, cause the processor to determine a first stationary status of the vehicle based upon zero-Doppler-speed determination from the plurality of hitbox targets. The instructions further includes instructions that, when executed by the processor, cause the processor to determine, based upon a zero-Doppler-speed determination from the plurality of FOV targets, a second stationary status based on a substantial number and a distribution of zero-Doppler-speed determinations for the plurality of FOV targets. The system includes one or more inertial measurement units (IMU) operably coupled to a center point of the vehicle body. The instructions further includes instructions that, when executed by the processor, cause the processor to confirm, based on the processor detecting a change in either of the first or the second stationary status of the vehicle, an acceleration sensed by the one or more IMUs. Implementations of the described techniques include hardware, a method or process, or computer software on a computer-accessible medium.

Claim 1:
A method comprising:
filtering hitbox radar targets from field of view (FOV) radar targets, the FOV radar targets detected by one or more radars (<NUM>) operably coupled to a body (<NUM>) of a vehicle (<NUM>), the hitbox radar targets filtered based on a range and an azimuth angle, the hitbox radar targets being within a predetermined area in front of the vehicle (<NUM>);
filtering the hitbox radar targets to select substantially zero-Doppler-speed hitbox radar targets;
tracking the substantially zero-Doppler-speed hitbox radar targets to verify whether positions of the substantially zero-Doppler-speed hitbox radar targets are constant; and
determining a number and distribution of the substantially zero-Doppler-speed hitbox radar targets to determine a hitbox-based stationary status;
the method being characterized in that it further comprises:
determining whether the substantially zero-Doppler-speed hitbox radar targets are moving in synchronization to determine a vehicle first stationary status.