Patent Description:
There are a wide variety of different types of agricultural machines that plant seeds. Some such agricultural machines include air seeders and planters that have row units (collectively "planters").

One example for an agricultural machine is shown in <CIT>, wherein the agricultural machine includes a motor configured to drive a seeding system that is, itself, configured to meter and deliver seed from the agricultural machine. The agricultural machine also includes a sensor configured to sense a characteristic of the seeding system and a skip detector component, that receives the sensor signal and detects a seed skip in the seeding system. Based on the detected seed skip, a processing system generates an operating parameter of the motor, and controls the motor based on the operating parameter.

Another example is shown in <CIT> where agricultural seed planting systems are provided. In some aspects, the system includes a processing unit, a frame, a furrow opener coupled to the frame for opening a furrow in soil, and a sensor in communication with the processing unit and adapted to sense a characteristic associated with seed planting. The sensor may generate a signal associated with the sensed characteristic and the processing unit may receive the signal. In some aspects, the sensed characteristic may be either a soil characteristic or a seed characteristic. Information associated with the sensed characteristic can be saved in memory for future use and to assist with more effective planting in the future.

As one example, a row unit is often mounted to a planter with a plurality of other row units. The planter is often towed by a tractor over soil where seed is planted in the soil, using the row units. The row units on the planter follow the ground profile by using a combination of a down force assembly that imparts a down force to the row unit to push disk openers into the ground and gauge wheels to set depth of penetration of the disk openers.

The seed can be carried, prior to being planted, by a container or tank on the row unit itself, or it can be pneumatically delivered to the row unit by a grain cart that is also pulled by the tractor. In either case, the seed can be delivered to the furrow by a delivery system.

A seed sensor senses seeds on a row unit and generates a seed sensor signal. A number of planting characteristics, such as a seed orientation, seed slugging, (seed misplacement on a delivery system or the ground) delivery system wear, and seed abnormalities, can be detected based on the seed sensor signal. The planter can be controlled based on the detected planting characteristics.

This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject-matter , limited by the appended claims.

As discussed above many current systems use planters and/or air seeders in order to plant agricultural crops. Such systems often have a seed sensor that senses a seed as it moves from a storage tank or other seed storage mechanism to a furrow that is opened in the ground by the planter. In some instances, seeds can be misplaced by becoming bunched together (creating a seed slug) so that multiple seeds are moved to the furrow in very close proximity relative to one another, or even adjacent one another or on top of one another. Seed slugging can be caused by a number of different things. In one example, for instance, the delivery system may become worn in a certain way that enhances the likelihood of seed slugging. In another example, foreign material or water may enter the system causing the seeds to group together to form a clump or slug. There are other reasons that seed slugging can occur as well.

In some cases the seed slug can become so large that it clogs part or all of the seed delivery mechanism or other portions of the planter.

In addition, some seeds have an elongate shape (e.g., they are longer in one direction than they are in another direction). For instance, soybean seeds are relatively spherical. However, corn seeds tend to be elongate in one direction. In some systems, the elongate seeds can be moved into the furrow in an undesirable orientation.

Also, in some systems, the crop seed that is being planted may contain anomalous or abnormal seeds. For instance, seeds from certain types of weeds may be very similar in size and shape to the seeds of the agricultural crop being planted. In that case, it can be difficult for a seed vendor (or other seed provider) to separate the anomalous or abnormal seeds from the regular crop seeds. However, it may be that the anomalous or abnormal seeds have a different visual appearance, in that they may be a different color, or have different spectral characteristics, from the crop seeds.

The present description thus proceeds with respect to receiving a seed sensor signal which is indicative of seed presence, and detecting a number of different planter characteristics, based upon the seed sensor signal. In one example, a seed sensor signal will have a certain characteristic (such as a certain peak width) when a singulated seed (a single seed spaced by a predetermined amount from a next seed) is detected but will have a different characteristic (such as a wider peak width) when multiple seeds are detected together in a slug or group. Similarly, it may have one characteristic when the seed is one orientation, and a different characteristic when the seed is in a different orientation. Further, the signal may have one characteristic (such as a spectral characteristic or color) when a crop seed is detected, but a different characteristic (such as a different spectral characteristic or color) when a different type of seed is detected. The present description thus proceeds with respect to detecting these types of planting characteristics and generating output and control signals based upon that detection.

<FIG> is a partial pictorial, partial schematic top view of one example of an architecture <NUM> that includes agricultural planting machine <NUM>, towing vehicle <NUM>, that is operated by operator <NUM>, and computing system <NUM>, which can be on individual parts of machine <NUM>, centrally located on machine <NUM>, or on towing vehicle <NUM> or distributed. Operator <NUM> can illustratively interact with operator interface mechanisms <NUM> to manipulate and control vehicle <NUM>, system <NUM> and some portions of machine <NUM>.

Machine <NUM> is a row crop planting machine that illustratively includes a toolbar <NUM> that is part of a frame <NUM>. <FIG> also shows that a plurality of planting row units <NUM> are mounted to the toolbar <NUM>. Machine <NUM> can be towed behind towing vehicle <NUM>, such as a tractor. <FIG> shows that material, such as seed, fertilizer, etc. can be stored in a tank <NUM> and pumped, using one or more pumps, through supply lines to the row units. The seed, fertilizer, etc., can also be stored on the row units themselves.

<FIG> is a side view showing one example of a row unit <NUM>. In the example shown in <FIG>, row unit <NUM> illustratively includes a chemical tank <NUM> and a seed storage tank <NUM>. It also illustratively includes a disc opener <NUM> (that opens a furrow <NUM>), a set of gauge wheels <NUM>, and a set of closing wheels <NUM> (that close furrow <NUM>). Seeds from tank <NUM> are fed by gravity into a seed meter <NUM>. The seed meter controls the rate at which seeds are dropped into a seed tube <NUM> or other seed delivery system, such as a brush belt, or flighted belt (both shown below) from seed storage tank <NUM>. The seeds can be sensed by a seed sensor <NUM> and/or <NUM>.

Some parts of row unit <NUM> will now be discussed in more detail. First, it will be noted that there are different types of seed meters <NUM>, and the one that is shown is shown for the sake of example only and is described in greater detail below with respect to <FIG>.

For instance, in one example, each row unit <NUM> need not have its own seed meter. Instead, metering or other singulation or seed dividing techniques can be performed at a central location, for groups of row units <NUM>. The metering systems can include rotatable discs, rotatable concave or bowl-shaped devices, among others. The seed delivery system can be a gravity drop system (such as seed tube <NUM> shown in <FIG>) in which seeds are dropped through the seed tube <NUM> and fall (via gravitational force) through the seed tube and out the outlet end <NUM> into the furrow (or seed trench) <NUM>. Other types of seed delivery systems are assistive systems, in that they do not simply rely on gravity to move the seed from the metering system into the ground. Instead, such systems actively capture the seeds from the seed meter and physically move the seeds from the meter to a lower opening, where they exit into the ground or trench. Some examples of these assistive systems are described in greater detail below with respect to <FIG> and <FIG>.

A downforce actuator <NUM> is mounted on a coupling assembly <NUM> that couples row unit <NUM> to toolbar <NUM>. Actuator <NUM> can be a hydraulic actuator, a pneumatic actuator, a spring-based mechanical actuator or a wide variety of other actuators. In the example shown in <FIG>, a rod <NUM> is coupled to a parallel linkage <NUM> and is used to exert an additional downforce (in the direction indicated by arrow <NUM>) on row unit <NUM>. The total downforce (which includes the force indicated by arrow <NUM> exerted by actuator <NUM>, plus the force due to gravity acting on row unit <NUM>, and indicated by arrow <NUM>) is offset by upwardly directed forces acting on closing wheels <NUM> (from ground <NUM> and indicated by arrow <NUM>) and double disc opener <NUM> (again from ground <NUM> and indicated by arrow <NUM>). The remaining force (the sum of the force vectors indicated by arrows <NUM> and <NUM>, minus the force indicated by arrows <NUM> and <NUM>) and the force on any other ground engaging component on the row unit (not shown), is the differential force indicated by arrow <NUM>. The differential force may also be referred to herein as the downforce margin. The force indicated by arrow <NUM> acts on the gauge wheels <NUM>. This load can be sensed by a gauge wheel load sensor which may be located anywhere on row unit <NUM> where it can sense that load. It can also be placed where it may not sense the load directly, but a characteristic indicative of that load. For example, it can be disposed near a set of gauge wheel control arms (or gauge wheel arm) <NUM> that movably mount gauge wheels <NUM> to shank <NUM> and control an offset between gauge wheels <NUM> and the discs in double disc opener <NUM>, to control planting depth. In addition, there may be a down force actuator that increases the down force of the opener <NUM> (so it can more easily cut through residue, etc.). Arms (or gauge wheel arms) <NUM> illustratively abut against a mechanical stop (or arm contact member-or wedge) <NUM>. The position of mechanical stop <NUM> relative to shank <NUM> can be set by a planting depth actuator assembly <NUM>. Control arms <NUM> illustratively pivot around pivot point <NUM> so that, as planting depth actuator assembly <NUM> actuates to change the position of mechanical stop <NUM>, the relative position of gauge wheels <NUM>, relative to the double disc opener <NUM>, changes, to change the depth at which seeds are planted.

In operation, row unit <NUM> travels generally in the direction indicated by arrow <NUM>. The double disc opener <NUM> opens the furrow <NUM> in the soil <NUM>, and the depth of the furrow <NUM> is set by planting depth actuator assembly <NUM>, which, itself, controls the offset between the lowest parts of gauge wheels <NUM> and disc opener <NUM>. Seeds are dropped through seed tube <NUM>, into the furrow <NUM> and closing wheels <NUM> close the soil.

As the seeds are dropped through seed tube <NUM>, they can be sensed by seen sensor <NUM>. Some examples of seed sensor <NUM> are described in greater detail below. Suffice it to say, for now, that it can be an optical or reflective sensor which includes a radiation transmitter component and a receiver component. The transmitter component emits electro-magnetic radiation and the receiver component then detects the radiation and generates a signal indicative of the presence or absence of a seed adjacent the sensor. Again, some examples of seed sensors are described in greater detail below.

Computing system <NUM> illustratively receives a seed sensor signal from seed sensor <NUM>, indicating that a seed is passing sensor <NUM> in seed tube <NUM>. It then detects any of a wide variety of planting characteristics based on the seed sensor signal. As discussed above, each row unit can have its own computing system <NUM> or a computing system <NUM> can serve multiple row units. This is all described in greater detail below as well.

<FIG> is similar to <FIG>, and similar items are similarly numbered. However, instead of the seed delivery system being a seed tube <NUM> which relies on gravity to move the seed to the furrow <NUM>, the seed delivery system shown in <FIG> is an assistive seed delivery system <NUM>. Assistive seed delivery system <NUM> also illustratively has a seed sensor <NUM> disposed therein. Seed sensor <NUM> can be used in addition to, or instead of, sensor <NUM>. It performs in-trench seed sensing, as discussed below. Assistive seed delivery system <NUM> captures the seeds as they leave seed meter <NUM> and moves them in the direction indicated by arrow <NUM> toward furrow <NUM>. System <NUM> has an outlet end <NUM> where the seeds exit assistive system <NUM>, into furrow <NUM>, where they again reach their final seed position.

<FIG> shows one example of a rotatable mechanism that can be used as part of the seed metering system (or seed meter)<NUM>. The rotatable mechanism includes a rotatable disc, or concave element, <NUM>. Concave element <NUM> has a cover (not shown) and is rotatably mounted relative to the frame of the row unit <NUM>. Rotatable element <NUM> is driven by a motor (not shown) and has a plurality of projections or tabs <NUM> that are closely proximate corresponding apertures <NUM>. A seed pool <NUM> is disposed generally in a lower portion of an enclosure formed by rotating mechanism <NUM> and its corresponding cover. Rotatable element <NUM> is rotatably driven by its motor (such as an electric motor, a pneumatic motor, a hydraulic motor, etc.) for rotation generally in the direction indicated by arrow <NUM>, about a hub. A pressure differential is introduced into the interior of the metering mechanism so that the pressure differential influences seeds from seed pool <NUM> to be drawn to apertures <NUM>. For instance, a vacuum can be applied to draw the seeds from seed pool <NUM> so that they come to rest in apertures <NUM>, where the vacuum holds them in place. Alternatively, a positive pressure can be introduced into the interior of the metering mechanism to create a pressure differential across apertures <NUM> to perform the same function.

Once a seed comes to rest in (or proximate) an aperture <NUM>, the vacuum or positive pressure differential acts to hold the seed within the aperture <NUM> such that the seed is carried upwardly generally in the direction indicated by arrow <NUM>, from seed pool <NUM>, to a seed discharge area <NUM>. It may happen that multiple seeds are residing in an individual seed cell. In that case, a set of brushes or other members <NUM> that are located closely adjacent the rotating seed cells tend to remove the multiple seeds so that only a single seed is carried by each individual cell. Additionally, a seed sensor <NUM> can also illustratively be mounted adjacent to rotating element <NUM>. It generates a signal indicative of seed presence and this may be used by system <NUM>, as will be discussed in greater detail below.

Once the seeds reach the seed discharge area <NUM>, the vacuum or other pressure differential is illustratively removed, and a positive seed removal wheel or knock-out wheel <NUM>, can act to remove the seed from the seed cell. Wheel <NUM> illustratively has a set of projections <NUM> that protrude at least partially into apertures <NUM> to actively dislodge the seed from those apertures. When the seed is dislodged (such as seed <NUM>), it is illustratively moved by the seed tube <NUM>, seed delivery system <NUM> (some examples of which are shown above in <FIG> and below in <FIG>) to the furrow <NUM> in the ground.

<FIG> shows an example where the rotating element <NUM> is positioned so that its seed discharge area <NUM> is above, and closely proximate, seed delivery system <NUM>. In the example shown in <FIG>, seed delivery system <NUM> includes a transport mechanism such as a belt <NUM> with a brush that is formed of distally extending bristles <NUM> attached to belt <NUM> that act as a receiver for the seeds. Belt <NUM> is mounted about pulleys <NUM> and <NUM>. One of pulleys <NUM> and <NUM> is illustratively a drive pulley while the other is illustratively an idler pulley. The drive pulley is illustratively rotatably driven by a conveyance motor, which can be an electric motor, a pneumatic motor, a hydraulic motor, etc. Belt <NUM> is driven generally in the direction indicated by arrow <NUM>.

Therefore, when seeds are moved by rotating element <NUM> to the seed discharge area <NUM>, where they are discharged from the seed cells in rotating element <NUM>, they are illustratively positioned within the bristles <NUM> by the projections <NUM> that push the seed into the bristles. Seed delivery system <NUM> illustratively includes walls that form an enclosure around the bristles, so that, as the bristles move in the direction indicated by arrow <NUM>, the seeds are carried along with them from the seed discharge area <NUM> of the metering mechanism, to a discharge area <NUM> either at ground level, or below ground level within a trench or furrow <NUM> that is generated by the furrow opener <NUM> on the row unit <NUM>.

Additionally, a seed sensor <NUM> is also illustratively coupled to seed delivery system <NUM>. As the seeds are moved in bristles <NUM> past sensor <NUM>, sensor <NUM> can detect the presence or absence of a seed as will be discussed below. It should also be noted that while the present description will proceed as having sensors <NUM>, <NUM>, <NUM> and/or <NUM>, it is expressly contemplated that, in another example, only one sensor is used. Or additional or different combinations of sensors can also be used.

<FIG> is similar to <FIG>, except that seed delivery system <NUM> is not formed by a belt with distally extending bristles. Instead, it is formed by a flighted belt (transport mechanism) in which a set of paddles <NUM> form individual chambers (or receivers), into which the seeds are dropped, from the seed discharge area <NUM> of the metering mechanism. The flighted belt moves the seeds from the seed discharge area <NUM> to the exit end <NUM> of the flighted belt, within the trench or furrow <NUM>.

There are a wide variety of other types of delivery systems as well, that include a transport mechanism and a receiver that receives a seed. For instance, they include dual belt delivery systems in which opposing belts receive, hold and move seeds to the furrow, a rotatable wheel that has sprockets which catch seeds from the metering system and move them to the furrow, multiple transport wheels that operate to transport the seed to the furrow, an auger, among others. The present description will proceed with respect to a brush belt, a flighted belt and/or a seed tube, but many other delivery systems are contemplated herein as well.

Before continuing with the description of sensing planting characteristics based on the seed sensor signal, a brief description of some examples of seed sensors <NUM>, <NUM>, <NUM> and <NUM> will first be provided. Sensors <NUM>, <NUM> and <NUM> are illustratively coupled to seed metering system <NUM> and seed delivery system <NUM>, <NUM>. In one example, sensors <NUM>, <NUM> and <NUM> are seed sensors that are each mounted at a sensor location to sense a seed within seed tube <NUM>, seed metering system <NUM> and delivery system <NUM>, respectively, as the seed passes the respective sensor location. In one example, sensors <NUM>, <NUM> and <NUM> are optical or reflective sensors and thus include a transmitter component and a receiver component. The transmitter component emits electromagnetic radiation, into seed tube <NUM>, seed metering system <NUM> and/or delivery system <NUM>. In the case of a reflective sensor, the receiver component then detects the reflected radiation and generates a signal based on the reflected radiation, and indicative of the presence or absence of a seed adjacent to sensor <NUM>, <NUM> and <NUM>. With other sensors, radiation such as light, is transmitted through the seed tube <NUM>, seed metering system <NUM> or the delivery system <NUM> at a location generally aligned to cross the travel path of a seed. A receiver is mounted to an opposite side of the travel path of the seed. When the light beam is interrupted by a seed, the sensor signal varies, to indicate a seed. Thus, each sensor <NUM>, <NUM> and <NUM> generates a seed sensor signal that pulses or otherwise varies, and the pulses or variations are indicative of the presence of a seed passing the sensor location proximate the sensor.

For example, in regards to sensor <NUM>, bristles <NUM> pass sensor <NUM> and are colored to absorb a majority of the radiation emitted from the transmitter. As a result, absent a seed, reflected radiation received by the receiver is relatively low. Alternatively, when a seed passes the sensor location where sensor <NUM> is mounted, more of the emitted light is reflected off the seed and back to the receiver, indicating the presence of a seed. The differences in the reflected radiation allow for a determination to be made as to whether a seed is, in fact, present. Additionally, in other examples, sensors <NUM>, <NUM> and <NUM> can include infrared sensors, a camera and image processing logic that allow visual detection as to whether a seed is currently present within seed metering system <NUM> seed tube <NUM> and/or seed delivery system <NUM>, at the sensor location proximate the sensor. They can include an array of transmitters and/or receivers that provide signals indicative of seed presence. They can include a wide variety of other sensors as well.

In addition, sensor <NUM> can be formed like one of the sensors described above or differently. Sensor <NUM>, however, illustratively performs in-trench seed sensing. It can sense seed presence, seed orientation, seed position (such as whether the seed is in proper position in the v-shaped trench <NUM> or sitting on top of residue), etc. For example, an optical or IR sensor can distinguish between soil surface and residue surface. If the seed is on residue surface, this information can be used to control such things as down force, planter speed, down force on opener <NUM>, etc. Also, while sensor <NUM> is shown in a particular location in the FIGS. , it can be in any location where it can perform in-trench seed sensing. Those locations shown are shown for example only.

<FIG> shows a seed delivery system that is similar to that shown in <FIG>, and similar items are similarly numbered. However, as shown in <FIG>, the seeds being delivered by the bristles <NUM> in the brush belt have formed a number of different clusters (also referred to as slugs). Some clusters are shown at <NUM>, <NUM>, <NUM> and <NUM>. There may be a variety of different reasons why seed clusters (or seed slugs) are formed in the delivery system. In one example, it may be that the brush belt or bristles <NUM> have worn to a point where the seeds can roll within the delivery system <NUM> to form slugs. In one example, as referred to herein, a slug is a grouping of seeds in the delivery system where the seeds are closely proximate, or adjacent, one another, where the seeds are intended to be, instead, singulated or spaced by a desired distance. In another example, the seed metering system <NUM> may be worn or malfunctioning so that it is delivering more than one seed at a time into the seed delivery system. In yet another example, it may be that some foreign matter or moisture has entered the seed tank, causing the seeds to clump together or otherwise adhere to one another in an undesirable way.

As the condition that caused the seed slugging worsens, the slugs can become more frequent, and larger. <FIG> is similar to <FIG> and similar items are similarly numbered. However, <FIG> shows that a number of different seed slugs <NUM>, <NUM> and <NUM> are now formed in the delivery system. The seed slugs are illustratively increasing in size and frequency of occurrence.

<FIG> is similar to <FIG>, and similar items are similarly numbered. However, <FIG> shows that the seed slugs are continuing to increase in size and frequency so that, slugs <NUM>, <NUM> and <NUM> are occurring close to one another, and are increasing in size over those shown in previous FIGS. This can continue until seed delivery system <NUM> becomes completely plugged or clogged. One example of this is shown in <FIG>. It can be seen in <FIG> that a seed slug <NUM> has grown to such a size that it is completely plugging the seed delivery system <NUM>.

These same types of seed misplacements can also be detected by sensor <NUM>. However, instead of detecting them in the seed delivery system, they are detected in the trench <NUM>. It is currently quite difficult for an operator to know that slugging or plugging is occurring. It will be noted, though, that the sensor signal output by seed sensor <NUM> will have characteristics that vary when slugging or plugging occurs. <FIG> is an example of a graph showing the value of a seed sensor signal (e.g., in volts) graphed along the y-axis and time graphed along the x-axis. In the example illustrated in <FIG>, sensor <NUM> is a reflective type sensor so that the output signal will have a higher value (indicating more reflected radiation), that exceeds a seed present value, when a seed is currently being sensed. In the example shown in <FIG>, the peaks <NUM> and <NUM> have a relatively narrow peak width (or signal width) that is continuously above the seed present value that indicates that a seed is present (or is being sensed by sensor <NUM>). Thus, the peaks <NUM> and <NUM> in <FIG> are indicative of a single seed being sensed.

Peak <NUM>, however, is wider than peaks <NUM> and <NUM> in that it has a signal width that is continuously above the seed present value and that is wider than the signal width of peaks <NUM> and <NUM> that is continuously above the seed present value. Therefore, in one example, when the seed sensor signal has a peak width (or signal width) such as that shown at peak <NUM>, this indicates that multiple seeds are bunched together, as they pass seed sensor <NUM>. This is an indication of slugging. Similarly, the width of peak <NUM> (or the signal width continuously above the seed present value) is even greater than the width of peak <NUM>. This indicates that a larger slug (or possibly a complete plug) is occurring in the seed delivery system <NUM>. Thus, as will be described below with respect to <FIG>, analyzing the seed sensor signal, and particularly the peak width (or signal width continuously above the seed present value) output by the seed sensor, can give an indication as to whether slugging or plugging is occurring.

For purposes of the present description, the terms peak width and signal width will be used interchangeably. They, in one example, refer to a time span during which the seed sensor signal continuously meets the seed present value.

In addition, performing peak width analysis (also referred to as signal width analysis) to identify whether multiple seeds are bunching together as they pass seed sensor <NUM> can be done in order to determine how frequently slugging is occurring. If it is occurring with increasing frequency, this may be indicative of an undesirable condition in the row unit, such as brush belt wear, such as the intrusion of foreign matter or moisture into the system, such as meter malfunction, etc. Similarly, if the peak widths in the sensor signal are sufficiently wide (e.g., as compared to an expected value or threshold value), this may also indicate that large seed slugs are being formed or that plugging is occurring in the seed delivery system. Thus, action can be taken based on the analysis of the seed sensor signal. <FIG> shows an enlarged portion of seed delivery system <NUM>. It also shows an example graph of the seed sensor signal generally at <NUM>. Again, the graph <NUM> shows the value (e.g., in volts) of the seed sensor signal along the y-axis and time along the x-axis. In the example shown in <FIG>, the bristles <NUM> in delivery system <NUM> are carrying elongate seeds, such as corn seeds. <FIG> shows two different seeds <NUM> and <NUM> that are being carried in the bristles <NUM> of the brush belt that forms part of seed delivery system <NUM>.

<FIG> shows that the elongate seeds <NUM> and <NUM> are being carried in two different orientations. Seed <NUM> is oriented in the bristles <NUM> of seed delivery system <NUM> so that its elongate axis is generally aligned with the direction of travel indicated by arrow <NUM>. Seed <NUM>, on the other hand, is oriented so that its elongate axis is transverse to the direction of travel indicated by arrow <NUM>. The seed sensor signal shown at graph <NUM> shows that a first peak <NUM> corresponds to a position in time when seed <NUM> was passing seed sensor <NUM>. It can be seen that the peak width (or signal width) of peak <NUM> is relatively wide. The seed sensor signal <NUM> also shows that a second peak <NUM> occurred more recently, and corresponds to a position in time when seed <NUM> was passing seed sensor <NUM>. It can be seen that the peak width (or signal width) of peak <NUM> is narrower than that of peak <NUM>. This is because the amount of time that seed sensor <NUM> was sensing the presence of a seed, when seed <NUM> was passing it, is longer than the amount of time it was sensing the presence of a seed, when seed <NUM> was passing it, due to the different orientations of the two seeds <NUM> and <NUM>.

Thus, as is described below, seeds that have an elongate axis may have different orientations when they are traveling through delivery system <NUM>. By analyzing the peak width of the seed sensor signal generated by sensor <NUM>, the orientation of the seeds can be detected. Various different control operations can be performed based on the detected seed orientation.

Another characteristic can also be detected using the seed sensor signal generated from seed sensor <NUM>. It may be that the crop seeds have a different spectral characteristic (e.g., color) than similarly sized seeds that are weeds or some seed other than the intended crop seeds. For example, soybean seeds are relatively light, while nightshade seeds, although they are a similar size to soybean seeds, are relatively dark. Because the seeds are similar in size, it can be difficult for a mechanical mechanism to sort out nightshade seeds from soybean seeds. Thus, the seed metering system may be metering weed seeds instead of crop seeds.

However, the characteristic of the sensor signal generated by seed sensor <NUM> can indicate this as well. For instance, if seed sensor <NUM> is an image sensor or another sensor that is sensitive to the spectral characteristics of the seeds that it is sensing, the seed sensor signal can have characteristics that identify when an anomalous seed is detected (such as a seed that has a spectral characteristic that differs significantly from a crop seed). A number of actions can be taken when this is detected. For example, the location of the anomalous seeds can be mapped for later application of herbicide. Also, the rate at which seeds are being planted (e.g., the population) can be temporarily increased to accommodate for the anomalous seed that was planted. These are just examples.

<FIG> is a block diagram of one example of computing system <NUM>. <FIG> shows that computing system <NUM> is receiving seed sensor signals from one or more seed sensors <NUM>, <NUM>, <NUM> and <NUM>. For purposes of example, the present discussion will proceed with respect to the sensor being sensor <NUM>. This is an example only, and a wide variety of other seed sensor signals can be received as well.

<FIG> also shows that computing system <NUM> can receive an input from a position sensor <NUM>. Position sensor <NUM> may be, for instance, a GNSS receiver (e.g., a GPS receiver, a GLONASS receiver, etc.) or another type of position sensor. It may be a position sensor that senses position using cellular triangulation, dead reckoning, etc. <FIG> also shows that computing system <NUM> can receive a seed type indicator <NUM> that can be the output of a seed type detector, or it can be input by the operator, or received in other ways. The seed type indicator <NUM> will illustratively include the type of crop, the particular hybrid, and/or other seed characteristics. <FIG> shows that computing system <NUM> can receive inputs from a wide variety of other items <NUM> as well.

System <NUM> illustratively generates outputs <NUM> that can be provided to an operator interface mechanism <NUM> for interaction by operator <NUM>. It can also provide outputs that are provided to other systems, such as remote systems, or other computing systems.

In the example shown in <FIG>, computing system <NUM> illustratively includes one or more processors <NUM>, signal conditioning logic <NUM>, data store <NUM> (which can store seed type characteristics <NUM> and other items <NUM>), interface logic <NUM>, planting characteristic detection system <NUM>, control system <NUM>, controllable subsystems <NUM>, and it can include a wide variety of other items <NUM>. Planting characteristic detection system <NUM> can include peak width logic <NUM>, plug detector <NUM>, seed abnormality detector <NUM>, in-trench position detector <NUM>, seed orientation detector <NUM>, wear detector <NUM>, location system <NUM>, and it can include a wide variety of other items <NUM>. Plug detector <NUM> can include slug detection logic <NUM>, slug frequency detection logic <NUM>, slug size detection logic <NUM> and it can include other items <NUM>. Controllable subsystems <NUM> can include population control subsystem <NUM>, seed orientation control subsystem <NUM>, down force subsystem <NUM>, communication subsystem <NUM>, propulsion control subsystem <NUM>, mapping subsystem <NUM>, and it can include a wide variety of other items <NUM>. Before describing the operation of computing system <NUM> in more detail, a brief description of some of the items in computing system <NUM>, and their operation, will first be provided.

Signal conditioning logic <NUM> illustratively receives the various signals input to computing system <NUM> and can perform conditioning operations. For instance, it can perform amplification, filtering, linearization, normalization, etc. The conditioned signals can then be provided to various other items in computing system <NUM>, such as planting characteristic detection system <NUM>.

System <NUM> can use peak width logic <NUM> to perform peak width analysis on the sensor signals from one or more of the various seed sensors. Plug detector <NUM> can receive the output of the peak analysis and use slug detection logic <NUM> to identify whether slugging or clumping or other grouping of the seeds is occurring. Slug frequency detection logic <NUM> can detect the frequency with which that slugging or clumping or other grouping is occurring. It can also detect whether the frequency is increasing, decreasing, whether it has increased over a threshold level, etc. Slug size detection logic <NUM> can detect the size of the slugs, clumps or other groupings of seeds as they pass by the seed sensor. It can identify the risk that a plug will develop. It can do this, for instance, by using the peak width analysis results provided by peak width logic <NUM>. Plug detector <NUM> can perform other operations using other items <NUM> as well.

Based upon the output from plug detector <NUM>, wear detector <NUM> can determine whether the slugs or clumps are indicative of wear that has occurred in the delivery system, the metering system or other parts of machine <NUM>. For instance, it may be that certain slugging or grouping characteristics are indicative of different types of wear. If the machine is planting soybeans, for instance, and the slugging gradually increases over time, this may indicate that the bristles <NUM> on the brush belt are wearing to a significant degree. However, if the slugging or grouping appears very quickly, and the slugs or groups are relatively large, this may indicate a different type of wear or performance issue with the machine. Wear detector <NUM> can identify the different types of wear conditions that are occurring, based on the output of plug detector <NUM>, by using a dynamic model that models wear of the various systems in the machine, by using a lookup table or another mechanism that correlates the output of plug detector <NUM> to different wear conditions, or it can do this in other ways.

If the sensor is performing in-trench sensing, then in-trench seed position detector <NUM> can generate signals indicating whether the seed is properly positioned within the trench <NUM>, or whether it is misplaced (in terms of seed spacing, in terms of position in the center of the trench <NUM> or offset to one side, or sitting on residue, etc.). These are examples only. Seed orientation detector <NUM> can identify the orientation of the seeds based upon the seed sensor signals, and/or based upon the output of peak width logic <NUM>. For instance, if the seed type indicator <NUM> identifies a seed type that has an elongate axis, then the peak width analysis performed on the seed sensor will be indicative of the orientation of the seeds being sensed. Seed orientation detector <NUM> can generate an output indicative of the orientation of the seeds.

Seed abnormality detector <NUM> can perform spectral analysis or other types of analyses on the seed sensor signals to determine whether there is an anomalous or abnormal seed that is being detected. As discussed above, detector <NUM> can perform a spectral analysis on the seed sensor signal to determine whether the spectral characteristics of the seed being detected are consistent with the crop being planted, as indicated by the seed type indicator <NUM>. Those characteristics can be stored as seed type characteristics <NUM>. Detector <NUM> can generate an output indicating when an anomalous or abnormal seed is being detected. Location system <NUM> can identify the location of the machine when the various outputs generated by planting characteristics detection system <NUM> are generated. In this way, the location of the machine when slugs or plugging occurred, when anomalous seeds were planted, when performance issues arose, etc., can be identified.

Control system <NUM> can receive inputs from the sensors and other items in computing system <NUM> and generate control signals to control any of the controllable subsystems <NUM>, or other items. For instance, when seed abnormality detector <NUM> detects that abnormal or anomalous seeds are being planted, control system <NUM> can generate a control signal to control the population control subsystem <NUM> to temporarily increase the seed population being planted in order to make up for the anomalous or abnormal seeds that were planted. This may be, for instance, increasing the speed at which the metering system meters the seeds and/or increasing the speed at which the delivery system delivers the seeds. Control system <NUM> can also receive an input from location system <NUM> and generate control signals to control mapping subsystem <NUM> to map the locations where the abnormal or anomalous seeds were planted, so that those locations can be targeted for later herbicide application. It can also control mapping subsystem <NUM> to map any of the other items detected by planting characteristic detection system <NUM>.

Control system <NUM> can receive an output from seed orientation detector <NUM> and generate control signals to control seed orientation control subsystem <NUM>. For instance, a seed orientation control subsystem may be configurable or variable to change the orientation of the seeds, as they enter the seed delivery system. Where a particular orientation is deemed to be favorable over other orientations, then the seed orientation control subsystem can be controlled to bias the seeds into that favorable orientation, as they enter the seed delivery system so that they are placed in the furrow <NUM> in the desired orientation.

Control system <NUM> can also receive the outputs from planting characteristic detection system <NUM> and control communication subsystem <NUM> to generate a communication to operator <NUM>, using operator interface mechanism <NUM>. It can control the communication subsystem <NUM> to communicate with remote computing systems, with a farm manager computing system, a vendor or manufacturer computing system, with a maintenance person's computing system, etc..

By way of example, where control system <NUM> receives an input from wear detector <NUM> indicating that the delivery system or another part of machine <NUM> has undergone wear, and it needs maintenance, communication subsystem <NUM> can automatically generate a communication to a maintenance person's computing system indicating that the next time machine <NUM> is serviced, the delivery system or other part of machine <NUM> should be serviced as well. Similarly, control system <NUM> can generate control signals to control communication subsystem <NUM> to display an alert to operator <NUM> indicating that the machine is plugged, that it is slugging, or indicating other compromised performance issues. These are examples only.

Interface logic <NUM> illustratively allows computing system <NUM> to interface with other computing systems, with towing vehicle <NUM>, with remote computing systems, etc. Interface logic <NUM> can also receive inputs from the other computing systems and provide an indication of those inputs to computing system <NUM>.

If control system <NUM> receives signals from in-trench seed position detector <NUM> that the seed is sitting on the residue, it can control down force subsystem <NUM> to modify the down force on opener <NUM>, on gauge wheels <NUM>, etc. It can control propulsion control system <NUM> to control the speed of the tractor or to otherwise control the ground speed of machine <NUM>.

<FIG> is a flow diagram illustrating one example of the operation of computing system <NUM> in detecting planting characteristics based on the seed sensor signal and controlling the controllable subsystems based upon those detected characteristics. It is first assumed that the planter <NUM> is running. This is indicated by block <NUM>. Computing system <NUM> can then receive inputs from various items, such as the seed type indicator <NUM> which can be an input from an operator, or it can be sensed, or received in a different way. This is indicated by block <NUM>. The computing system <NUM> can receive a wide variety of other inputs <NUM>, such as the position sensor input <NUM>, or other inputs.

Computing system <NUM> also receives the seed sensor signal from one or more of the seed sensors <NUM>, <NUM>, <NUM> and <NUM>. This is indicated by block <NUM>. The seed sensor signal can be from an IR, optic, image or other sensor, as indicated by block <NUM>. It can be generated from a single seed sensor per row unit, as indicated by block <NUM>, or it can be from an array or other arrangement of multiple seed sensors per row unit, as indicated by block <NUM>. The seed sensors can be reflective seed sensors, transmissive seed sensors, image sensors, spectral sensors, or any of a wide variety of other seed sensors, as described above. The seed sensors can be arranged in other ways as well, and this is indicated by block <NUM>. Computing system <NUM> then performs planting characteristic detection using the seed sensor signals. This is indicated by block <NUM> in the flow diagram of <FIG>. Peak width logic <NUM> can analyze the peak width of the seed sensor signal, or another characteristic of the seed sensor signal that indicates seed presence. This is indicated by block <NUM> in the flow diagram of <FIG>. Plug detector <NUM> can then perform slug or plug detection. This is indicated by block <NUM>. This is also described in more detail below with respect to <FIG>.

Seed orientation detector <NUM> can detect seed orientation. This is indicated by block <NUM> and it is also discussed in more detail below with respect to <FIG>.

Seed abnormality detector <NUM> can detect seed anomalies or abnormalities. This is indicated by block <NUM> in the flow diagram of <FIG>. As discussed above, this can be done based on a spectral analysis, based upon an image analysis, or in other ways.

Wear detector <NUM> can detect whether there are wear conditions occurring on machine <NUM>, based on the seed sensor signal. This is indicated by block <NUM>. In-trench seed position detector <NUM> can perform in-trench seed detection, as indicated by block <NUM>. Planting characteristic detection system <NUM> can detect any of a wide variety of other planting characteristics, based on the seed sensor signal, as well. This is indicated by block <NUM>.

Planting characteristic detection system <NUM> then outputs detected characteristic signals based upon the various planting characteristics that have been detected. These signals can be provided to control system <NUM>, or to other items. Outputting the detected characteristic signals is indicated by block <NUM> in the flow diagram of <FIG>.

Control system <NUM> then generates control signals, to control one or more of the various controllable subsystems <NUM>, or other subsystems. Generating control signals based on the detected characteristic signals is indicated by block <NUM> in the flow diagram of <FIG>. The control signals are applied to the controllable subsystems <NUM> in order to control the controllable subsystems <NUM> using the control signals. This is indicated by block <NUM>. As examples, control system <NUM> can control communication subsystem <NUM> to communicate an operator alert to operator <NUM>, of any or all of the various planting characteristics detected by system <NUM>. This is indicated by block <NUM> in the flow diagram of <FIG>.

Control system <NUM> can also control seed orientation control subsystem <NUM> in order to control the orientation of the seeds being planted. This is indicated by block <NUM> in the flow diagram of <FIG>.

Control system <NUM> can control the population control subsystem <NUM> in order to increase or decrease the seed population, temporarily or for a longer period of time, based upon the detected planting characteristics. This is indicated by block <NUM> in the flow diagram of <FIG>. Control system <NUM> can control mapping subsystem <NUM> to generate maps of the various planting characteristics detected. This is indicated by block <NUM>.

Control system <NUM> can control various down force components on the row unit by controlling down force subsystem <NUM>. This is indicated by block <NUM>. It can control the ground speed of machine <NUM> by controlling propulsion subsystem <NUM>, as indicated by block <NUM>.

It will be appreciated that control system <NUM> can control any of a wide variety of subsystems <NUM> as well. This can be done in order to perform any of a wide variety of other control operations based upon the detected planting characteristics. This is indicated by block <NUM> in the flow diagram of <FIG>.

Computing system <NUM> can continue to perform in this way until the planting operation is complete or until other criteria are met. This is indicated by block <NUM> in the flow diagram of <FIG>.

<FIG> is a flow diagram illustrating one example of the operation of plug detector <NUM> and the operation of seed orientation detector <NUM>, in more detail. It is first assumed that the seed sensors <NUM>, <NUM> and <NUM> indicate the presence of or absence of a seed based upon a signal that reaches a sufficient amplitude, at its peak, to demonstrate that a seed is present. This, of course, is only one type of seed sensor and it is described for the sake of example only. Given this example, peak width logic <NUM> receives the seed sensor signal and identifies the seed sensor signal peak width. This is indicated by block <NUM> in the flow diagram of <FIG>. As mentioned above, this assumes that the seed sensor signal demonstrates seed presence based upon the amplitude or magnitude of the seed sensor signal, at its peak, or that it at least reaches a threshold level, at its peak. This is indicated by block <NUM>. Identifying the seed sensor signal peak width can be done in other ways as well, and this is indicated by block <NUM>.

In one example, peak width logic <NUM> compares the width of the peak of the seed sensor signal (e.g., the amount of time that it is above the "seed present" threshold value) to an expected peak width for a single seed detection. This is indicated by block <NUM>. The expected peak width can be predefined and stored as a seed type characteristic <NUM>, or it can be determined dynamically. This comparison can be made, taking into account a threshold margin or tolerance value as well. This is indicated by block <NUM> in the flow diagram of <FIG>. The peak width can be analyzed against an expected peak width in other ways as well, and this is indicated by block <NUM>.

If the detected peak width of the seed sensor signal is consistent with the expected peak width, then this indicates that a single seed (or a singulated seed) has been detected. In that case, it may be that no further analysis or characteristic detection is performed with respect to that signal. However, if, as indicated by block <NUM>, it is determined that the peak width of the seed sensor is greater than the expected peak width (or is otherwise inconsistent with it), then slug detection logic <NUM> can determine that a slug or other undesirable seed grouping, has been detected. This is indicated by block <NUM>.

Slug frequency detection logic <NUM> can update a frequency value that indicates how frequently the slugs or seed groupings are being detected. This is indicated by block <NUM>. Instead of updating a slug frequency, it may simply update a count of the number of slugs or undesirable seed groupings that are detected. This is also indicated by block <NUM>.

Slug size detection logic <NUM> can also detect the size of the slug, based upon the length of time that the seed sensor signal is continuously above the seed detection value (e.g., based upon the size of the peak width or signal width of the seed sensor signal). Detecting the slug size is indicated by block <NUM>. Plug detector <NUM> can also determine, based upon the frequency, the size of the slug, etc., whether the delivery system is in fact plugged, or is at risk of plugging. This may be done, for instance, by identifying that the frequency of slug detection is increasing as is the size of the detected slugs. Identifying a plugging risk can be done in other ways as well, and this is indicated by block <NUM> in the flow diagram of <FIG>.

Based upon the information generated by slug detection logic <NUM>, slug frequency detection logic <NUM> and size detection logic <NUM>, and perhaps the output of peak width logic <NUM>, wear detector <NUM> can identify likely wear characteristics that are occurring. This is indicated by block <NUM>. For instance, the signals from plug detector <NUM> and peak width logic <NUM> may be correlated to different wear patterns or different wear circumstances that occur, and that give rise to the different types of plugging and peak width characteristics of the seed sensor signal. These correlations may be captured in a model or lookup table stored in data store <NUM> or they can be captured in a dynamic correlation mechanism such as a machine learned classifier or set of equations. Thus, wear detector <NUM> may identify certain types of wear that are likely taking place based upon that information from detector <NUM> and logic <NUM> and/or other inputs.

Planting characteristic detection system <NUM> then generates output signals indicative of the detected plug and wear characteristics. This is indicated by block <NUM>. Those signals can be provided to other items in planting detection system <NUM> and/or to control system <NUM> or other items.

When seed orientation detection is to be performed then, at block <NUM> the seed sensor signal peak width can be compared to a first expected value corresponding to the seed being in a first orientation with its elongate axis transverse to the direction of travel. The peak width of the seed sensor signal can also be compared at block <NUM> to a second expected value corresponding to the seed being in a second orientation with its elongate axis parallel to the direction of travel. If the peak width is greater than that second expected value, then slugging may be occurring and processing continues at block <NUM>. If not, however, then seed orientation detector <NUM> can identify the seed orientation based on the sensor signal. This is indicated by block <NUM>.

For purposes of the present example, it is assumed that the seed being planted has an elongate axis. Then, if seed orientation is to be detected, the peak width can be compared against the first expected peak width value for a seed oriented such that its elongate axis is transverse to the direction of travel of the seed delivery system. If the peak width of the seed sensor signal is consistent with (e.g., the same as, within a tolerance) the first expected value, then the seed is likely oriented with the elongate axis transverse to, or less aligned with, the direction of travel. If it is greater than the first expected peak width value, then the peak width of the sensor signal can be compared to the second expected value. If the sensor signal has a peak width that is consistent with the second expected value, then this will indicate that the seed is likely oriented with its elongate axis generally parallel to, or otherwise generally aligned with, the direction of travel.

Seed orientation detector <NUM> can monitor seed orientation, because this may be used in determining whether action is to be taken. For instance, if it is desired that the seeds are planted in a particular orientation, then seed orientation detector <NUM> can identify how often they are in that orientation, relative to other, undesired orientations. When a seed is detected in one orientation or the other, it can update an orientation count or frequency variable that indicates how often the seeds are in the different orientations. This is indicated by block <NUM>. It can also generate output signals indicative of seed orientation, the frequency that the seeds are in each of the orientations, or other signals. This is indicated by block <NUM>. Again, these signals can be provided to control system <NUM> to control any of the various controllable subsystems <NUM>.

<FIG> is a flow diagram illustrating one example of the operation of seed abnormality detector <NUM> in detecting anomalous or abnormal seeds based on the seed sensor signal. In one example, it first detects seed color (or another spectral characteristic) of the seed, based upon the seed sensor signal. This is indicated by block <NUM> in the flow diagram of <FIG>.

It then compares the detected color or spectral characteristic with an expected color or spectral characteristic for the crop seeds being planted. This is indicated by block <NUM> in the flow diagram of <FIG>. If an abnormality is detected with respect to the sensed color or spectral characteristic, then seed abnormality detector <NUM> can also update a variable indicative of the count of abnormalities, or the frequency with which they are detected. This is indicated by blocks <NUM> and <NUM> in the flow diagram of <FIG>. It can generate output signals indicative of the fact that an abnormal or anomalous seed has been detected, the count and/or frequency with which anomalous or abnormal seeds have been detected, and other items. Control system <NUM> can then generate control signals based upon that information. Generating output signals indicative of detected abnormalities is indicated by block <NUM> in the flow diagram of <FIG>.

The present discussion has mentioned processors and servers. In one example, the processors and servers include computer processors with associated memory and timing circuitry, not separately shown. They are functional parts of the systems or devices to which they belong and are activated by, and facilitate the functionality of the other components or items in those systems.

<FIG> is a block diagram of the architecture, shown in <FIG>, except that it communicates with elements in a remote server architecture <NUM>. In an example, example, remote server architecture <NUM> can provide computation, software, data access, and storage services that do not require end-user knowledge of the physical location or configuration of the system that delivers the services. In various examples, remote servers can deliver the services over a wide area network, such as the internet, using appropriate protocols. For instance, remote servers can deliver applications over a wide area network and they can be accessed through a web browser or any other computing component. Software or components shown in <FIG> as well as the corresponding data, can be stored on servers at a remote location. The computing resources in a remote server environment can be consolidated at a remote data center location or they can be dispersed. Remote server infrastructures can deliver services through shared data centers, even though they appear as a single point of access for the user. Thus, the components and functions described herein can be provided from a remote server at a remote location using a remote server architecture. Alternatively, they can be provided from a conventional server, or they can be installed on client devices directly, or in other ways.

In the example shown in <FIG>, some items are similar to those shown in <FIG> and <FIG> and they are similarly numbered. <FIG> specifically shows that remote system(s) <NUM> and/or data store <NUM> can be located at a remote server location <NUM>. Therefore, system <NUM> accesses those systems through remote server location <NUM>.

<FIG> also depicts another example of a remote server architecture. <FIG> shows that it is also contemplated that some elements of <FIG> and <FIG> can be disposed at remote server location <NUM> while others are not. By way of example, data store <NUM> can be disposed at a location separate from location <NUM>, and accessed through the remote server at location <NUM>. Regardless of where they are located, they can be accessed directly by system <NUM>, through a network (either a wide area network or a local area network), they can be hosted at a remote site by a service, or they can be provided as a service, or accessed by a connection service that resides in a remote location. Also, the data can be stored in substantially any location and intermittently accessed by, or forwarded to, interested parties. For instance, physical carriers can be used instead of, or in addition to, electromagnetic wave carriers. In such an example, where cell coverage is poor or nonexistent, another mobile machine (such as a fuel truck) can have an automated information collection system. As the planter comes close to the fuel truck for fueling, the system automatically collects the information from the planter using any type of ad-hoc wireless connection. The collected information can then be forwarded to the main network as the fuel truck reaches a location where there is cellular coverage (or other wireless coverage). For instance, the fuel truck may enter a covered location when traveling to fuel other machines or when at a main fuel storage location. All of these architectures are contemplated herein. Further, the information can be stored on the planter until the planter enters a covered location. The planter, itself, can then send the information to the main network.

It will also be noted that the elements of <FIG> and <FIG>, or portions of them, can be disposed on a wide variety of different devices. Some of those devices include servers, desktop computers, laptop computers, tablet computers, or other mobile devices, such as palm top computers, cell phones, smart phones, multimedia players, personal digital assistants, etc..

<FIG> is a simplified block diagram of one illustrative example of a handheld or mobile computing device that can be used as a user's or client's hand held device <NUM>, in which the present system (or parts of it) can be deployed. For instance, a mobile device can be deployed in the operator compartment of towing vehicle <NUM> for use in generating, processing, or displaying the planting characteristics or other information. <FIG> are examples of handheld or mobile devices.

<FIG> provides a general block diagram of the components of a client device <NUM> that can run some components shown in <FIG> and <FIG>, that interacts with them, or both. In the device <NUM>, a communications link <NUM> is provided that allows the handheld device to communicate with other computing devices and in some examples provides a channel for receiving information automatically, such as by scanning. Examples of communications link <NUM> include allowing communication though one or more communication protocols, such as wireless services used to provide cellular access to a network, as well as protocols that provide local wireless connections to networks.

In other examples, applications can be received on a removable Secure Digital (SD) card that is connected to an interface <NUM>. Interface <NUM> and communication links <NUM> communicate with a processor <NUM> (which can also embody processors from previous FIGS. ) along a bus <NUM> that is also connected to memory <NUM> and input/output (I/O) components <NUM>, as well as clock <NUM> and location system <NUM>.

I/O components <NUM>, in one example, are provided to facilitate input and output operations. I/O components <NUM> for various examples of the device <NUM> can include input components such as buttons, touch sensors, optical sensors, microphones, touch screens, proximity sensors, accelerometers, orientation sensors and output components such as a display device, a speaker, and or a printer port. Other I/O components <NUM> can be used as well.

Memory <NUM> stores operating system <NUM>, network settings <NUM>, applications <NUM>, application configuration settings <NUM>, data store <NUM>, communication drivers <NUM>, and communication configuration settings <NUM>. Memory <NUM> can include all types of tangible volatile and nonvolatile computer-readable memory devices. It can also include computer storage media (described below). Memory <NUM> stores computer readable instructions that, when executed by processor <NUM>, cause the processor to perform computer-implemented steps or functions according to the instructions. Processor <NUM> can be activated by other components to facilitate their functionality as well.

<FIG> shows one example in which device <NUM> is a tablet computer <NUM>. In <FIG>, computer <NUM> is shown with user interface display screen <NUM>. Screen <NUM> can be a touch screen or a pen-enabled interface that receives inputs from a pen or stylus. It can also use an on-screen virtual keyboard. Of course, it might also be attached to a keyboard or other user input device through a suitable attachment mechanism, such as a wireless link or USB port, for instance. Computer <NUM> can also illustratively receive voice inputs as well.

<FIG> is one example of a computing environment in which elements of <FIG> and <FIG>, or parts of it, (for example) can be deployed. With reference to <FIG>, an example system for implementing some embodiments includes a general-purpose computing device in the form of a computer <NUM>. Components of computer <NUM> may include, but are not limited to, a processing unit <NUM> (which can comprise processors from previous Figures), a system memory <NUM>, and a system bus <NUM> that couples various system components including the system memory to the processing unit <NUM>. The system bus <NUM> may be any of several types of bus structures including a memory bus or memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures. Memory and programs described with respect to <FIG> and <FIG> can be deployed in corresponding portions of <FIG>.

The computer <NUM> is operated in a networked environment using logical connections (such as a controller area network - CAN, local area network - LAN, or wide area network-WAN) to one or more remote computers, such as a remote computer <NUM>.

Claim 1:
A planting machine (<NUM>), comprising:
a furrow opener (<NUM>) that opens a furrow (<NUM>) as the planting machine (<NUM>) moves across a field during a planting operation;
a seed delivery system (<NUM>) that delivers seeds to the furrow (<NUM>);
a seed sensor (<NUM>, <NUM>, <NUM>, <NUM>) that senses a seed and generates a seed sensor signal indicative of the seed;
planting characteristic detection system (<NUM>) that detects a characteristic of the planting operation based on the seed sensor signal and generates a characteristic signal indicative of the sensed planting characteristic; and
a control system (<NUM>) configured to generate a control signal to control a controllable subsystem (<NUM>) based on the characteristic signal,
characterized in that
the seed sensor (<NUM>, <NUM>, <NUM>, <NUM>) is configured to generate the seed sensor signal at a value that varies from a first level indicative of a seed not being detected to a second level indicative of a seed being detected, and wherein the planting characteristic detection system (<NUM>) comprises:
signal width logic that identifies, as a signal width value, a time for which the seed sensor signal has a value that continuously meets the second level.