An apparatus and methodology are presented for automatically infeeding workpieces to a saw. A first workpiece is selected at an input station. A servo-driven friction belt system is connected to the input station, and advances the workpiece under a laser projection system. The laser projection system projects a laser pattern onto the workpiece, the laser pattern corresponding to one of a plurality of patterns corresponding to the blade configuration of a fixed arbor gang rip saw. Finally, there is a pinch roller system for removing the workpiece from the friction belt system and moving the workpiece into the saw, while maintaining the workpiece's orientation under the laser pattern. Also provided is a sensor for measuring the board width while moving on the servo-driven friction belt system, where the width is input to a computer controlling the friction belt system and which determines the optimum laser pattern.

(1) Field of the Invention
The invention relates generally to wood cutting equipment, and more particularly to automated feeding of fixed arbor gang rip saws and a method for minimizing scrap wood through optimizing the area of wood that is cut.
(2) Description of the Related Art
In operations involving the cutting of wood in, for example, sawmills, or in processing for the production of furniture, several considerations are taken into account in cutting wood economically. These include the speed with which the wood is fed to gang saws, the safety of the workers who are responsible for feeding the wood into the saws, and the number of pieces into which each board can be cut.
Another important consideration is the optimal way in which an incoming piece of wood stock of irregular shape can be cut to reduce waste. Typically, a log is first cut lengthwise along a number of parallel, axial planes to yield a number of irregularly shaped planks sometimes referred to as "cants". Cants cut from the same log all have the same length. However, the height (or width, when later placed flat on its broad side) of each cant will vary depending upon where on the diameter of the log the cut is made. Furthermore, the thickness of each plank will be determined by the spacing of saw blades, if the log is cut in a gang saw. Usually, when cutting planks or cants from the same log, the blades are set equidistant from each other so that the resulting planks all have the same thickness. While the thickness of each cant is therefore the same in this arrangement of the blades, the height of each cant, will vary depending upon the particular section of the log that is cut. For example, cants which are cut from sections close to the center of the log will be higher than those cut near the edges. Moreover, the cants will generally taper in one direction corresponding to the lessening diameter of the tree toward its top.
In the prior art, methods have been disclosed for maximizing the yield of wood stock. As disclosed in U.S. Pat. No. 4,468,992 (McGeehee), this means maximizing the total board feet of lumber derived from each log, although it may mean recovering a maximum number of boards of a certain length or having some other characteristic which makes them particularly valuable. Regardless of the particular optimization criteria employed, it is not obvious from examining an unfinished cant how to optimize the cutting of the cant into individual boards. For that reason McGeehee proposes an apparatus and a method where a cant is sawed simultaneously into a plurality of individual boards having optimum dimensions.
During a sawing operation, accurate alignment of planks or cants is important. One method of aligning is illustrated in FIGS. 1a and 1b, in which alignment pins are used in a conveyor system. The system consists of an infeed conveyer 20 at one end and an outfeed conveyer 60 with a sawing table 40 in between. Both conveyers are conventional chain conveyers comprising a plurality of individual chains 22 and 62, respectively, and carrying with them lugs 21 and 61 to lug along cants 10 and 10' as shown in FIG. 1a. Chains 22 are driven synchronously so that advancing lugs 21 remain transversely aligned and cant 10 is advanced in normal direction to its elongate axis, i.e., in direction 11 to the right in FIGS. 1a and 1b. Cant 10 is next transferred on to an optical scanning table 30 by means of infeed transfer arms 31. An optical system (not shown on table 30) comprising light sources, light detectors and reflectors is then used to gather information to determine the optimum orientation of cant 10.
The means of moving and at the same time aligning cant 10 in an apparatus of prior art such as shown in FIGS. 1a and 1b can be quite complicated. Thus, each advancing rod 23 is fitted with a retractable pin 24 at its forward end. As described in U.S. Pat. No. 4,468,992, in its raised position, pin 24 projects upward through a slot 25 in the alignment table 30. When retracted, pin 24 remains below the surface of table 30. In order to advance cant 10 along table 30, certain selected pins 24 are raised and rods 23 are advanced to the right. By using two preselected pins 24 and advancing them by incrementally different lengths, the orientation of cant 10 can be adjusted as it is advanced over the infeed arms 31 and on to saw table 40. After sawing cant 10 into individual boards 10' using saw 41, the outfeed arms 51 lift the boards from sawing table 41 and transfer them onto outfeed conveyor 60. Boards 10' are taken from outfeed conveyer 60 for further processing.
Automatic sawing systems of earlier art required that, after initial alignment, the cant be translated axially under one or more stationary saws. It will be appreciated that it is generally difficult to maintain the alignment of the cant while it is being advanced beneath the saws. The need to advance the cant inhibits the ability to firmly hold the board in the preselected orientation. McGeehee proposes instead to hold the cant fixed on a table and cut it by means of moving saw blades 41 and in the direction 42, as shown in FIGS. 1a and 1b. Nevertheless, the alignment that is performed by using chains and alignment pins is complicated.
It is instructive to also mention another prior art method where positive alignment is secured by first removing an edge of a cant by an overhead saw. Thereafter, the cant is advanced beneath overhead saws with the sawn edge held against a fixed side wall or fence. In this way, the alignment of the cant beneath the saws is improved, although after sawing the leading edge off, internal stress release can cause the "straight" edge to buckle resulting in misalignment. Further, if the cant is being cut by gang rip saws, there is no easy method to select different saw patterns--the only saw pattern used will be the one starting at the fence edge.
Infeed systems are generally one-sided, that is, wood stock is fed into the gang saw from one side only. There are some infeed systems of more recent vintage which employ two sides for feeding cants for the purposes of achieving higher yield and productivity. In U.S. Pat. No. 5,381,712 (Head), for example, the cants are supplied to loading stations arranged on opposite sides of the feeding station, whereupon prior to lateral transport to the feeding station, a cant at either of the loading stations is selectively oriented by the operator relative to a reference line parallel with the longitudinal infeed axis of the saw means, thereby to effect maximum yield from the cant. In taking advantage of the two-sided infeed system, however, a complex pivoting skewing tube and transport is introduced to obtain proper alignment of the cant. Additionally, a clamp is provided with the laterally shiftable skewing tube between loading stations for fixing the cant in a particular orientation for the sawing operation.
The present invention has been developed to provide an novel approach to the optimizing and automated feeding of fixed arbor gang rip saws without the complications associated with prior art apparatus and methods. The disclosed apparatus together with its new method of application bring much needed improvements to wood cutting operations, as discussed more in detail below.


A process for treating metal oxide catalysts includes activating one or more lasers to produce laser light. The process also includes exposing at least a portion of the metal oxide catalyst to the laser light to increase hydrophobicity of the metal oxide catalyst. The metal oxide catalyst may include a plurality of metal oxide particles or a metal oxide film.

Metal oxide catalysts may be used in a wide variety of chemical reactions including, but not limited to, elimination of carbon monoxide, decomposition of organic contaminants, bio-based production (e.g., biodiesel production), or combinations thereof. A feed stream, reaction products, or both, may include water. Water may deactivate a metal oxide catalyst, solubilize the metal oxide catalyst, or both. Activation of deactivated catalyst, separation of catalyst from reaction products, or both, may be costly and time intensive.

Metal oxide catalysts with a laser induced hydrophobic characteristic

INTERNATIONAL BUSINESS MACHINES CORPORATION


A process for detecting the edges of collimator blades in digital radiography images in the first pass detects the edges of the collimator blades using original image, and the in the second pass repeats edge detection using an image enhanced by a histogram matching technique, for example. The edge detection using an enhanced image may also be repeated any number of times in cases of complex anatomy or when selected radiographic techniques does do not provide sufficient imaging data. The results of the second pass, or the collection of the results of multiple second passes, are then combined with the result from the first pass to form a list of the potential blade edge candidates. A desirable number of edges are then selected from the combined list to form a polygon which encloses the target area of the image, thereby providing the shutter area.

1. Field of the Invention
The present invention relates to digital radiography and, more specifically, to a method for the detection of collimator blades in digital radiography images.
2. Description of the Related Art
An essential step in processing digital radiography images is to detect the collimator blades. The information obtained from the detection of the collimator blades is then used to determine the area enclosed by the blades, and the statistics associated with the image within this area are calculated for use in subsequent image processing steps. The portion of image that is outside the area of the collimator blades may then be discarded to facilitate only useful image data storage, transmission and processing.
This technique of identifying the target area and discarded undesired areas is commonly referred to as the Auto Shutter process. The area enclosed by the collimator blades is referred to as the shutter area. The typical Auto Shutter process comprises the two steps: (1) the use of edge detection algorithms, such as the Hough transform, to detect the potential edges of the collimator blades in the image, which appear as straight lines; and (2) the selection of desirable edges. Unfortunately, the Hough transform is often unable to detect all the desirable edges because some or all of the collimator blade edges may be too weak for successful detection. As a result, an erroneous area may be selected and the diagnostic quality of image will therefore be compromised.

Multi-pass edge detection of collimator blades in digital radiography images


A method for alternately carrying out phases with and without tank venting during operation of an internal combustion engine equipped with a tank-venting assembly is characterized in that the ratio of the time spans with and without tank venting is selected to be dependent upon operating data of the engine or of the tank-venting assembly. Preferably, a variable is measured which is a measure for the fuel quantity to be regenerated during tank venting and the above-mentioned ratio is increased in favor of the tank-venting time span with respect to the base ratio when the value of the measured variable exceeds an upper limit (Dp.sub.-- SMW; FTEA.sub.-- SWU). This method makes possible that an adsorption filter and a tank-venting valve in the corresponding arrangement can be dimensioned for lesser throughput quantities than previously without the danger being present that fuel vapors escape to the ambient. The tank-venting time span is extended with respect to the base-adaptation time span when a large amount of fuel vapor occurs whereby the smaller adsorption filter still regenerates satisfactorily notwithstanding the reduced cross section of the tank-venting valve.

U.S. Pat. No. 4,705,007 describes a method according to which phases with and without tank venting (namely, tank-venting phases and base-adaptation phases) alternate in a fixed raster. 5 minutes are provided for the tank-venting time span and 1 minute is provided for the base-adaptation time span. In practice, the first time duration is more likely to be somewhat shorter and the second somewhat longer.
The duration of the tank-venting time span together with the characteristic variables of the tank assembly and of the corresponding engine determine the size of the adsorption filter in which fuel vapor is adsorbed from the tank. These variables also determine the diameter of the tank-venting valve with the aid of which the adsorption filter is purged with air. The size of the adsorption filter and the cross section of the tank-venting valve must be so dimensioned that, even for the largest possibly occurring fuel vapor quantity, essentially all fuel vapor can be adsorbed during the base-adaptation time spans and can again be desorbed during the tank-venting time spans.
In the technology, the problem generally is present to operate arrangements according to such methods and to so configure the arrangements that the components are used in the most purposeful manner possible. This problem applied correspondingly also to methods and arrangements for carrying out phases with and without tank venting during operation of an internal combustion engine with a tank-venting assembly.

Method and arrangement for venting a tank


A housing design and method of providing electromagnetic compatibility (EMC) by mitigating a slot antenna in a corner region of a housing, the corner profile including an electrically conductive insert that has a spring bias, such as a spring or coated plastic member, in a corner of the housing.

Features of the present disclosure relate to electronic devices that use an enclosure or housing, specifically a design and method for improving electromagnetic compatibility (EMC).
Electromagnetic compatibility (EMC) is the branch of electrical engineering concerned with the unintentional generation, propagation and reception of electromagnetic energy that may cause unwanted effects such as electromagnetic interference (EMI). EMI may thus cause physical damage in operational equipment. The damaging effects of EMI pose risks in many areas of technology. EMI can be mitigated to reduce the risk. The goal of EMC is the correct operation of different equipment in a common electromagnetic environment.
EMC issues include the generation of electromagnetic energy, whether deliberate or accidental, by some source and its release into the environment. The field of EMC takes into account the unwanted emissions and provides countermeasures that may be taken in order to reduce unwanted emissions. EMC issues also include the susceptibility of electrical equipment, referred to as the victim, to malfunction or break down in the presence of unwanted emissions, e.g., radio frequency interference (RFI). Immunity is the opposite of susceptibility and is the ability of equipment to function correctly in the presence of RFI. Another issue of EMI is coupling, which is the mechanism by which emitted interference reaches the victim.
Interference mitigation and electromagnetic compatibility may be achieved by addressing any of these issues, i.e., quieting the sources of interference, inhibiting coupling paths and/or hardening the potential victims. In practice, many of the engineering techniques used, such as grounding and shielding, may apply to the issues.
A standard known Industrial Personal Computer (IPC) housing 101 is illustrated in FIG. 1. As illustrated, the housing walls 111 of the IPC are extruded such that the wall structure is unitary, e.g., a closed rectangular cross-section of a single piece. Because the corners and the walls are unitary in the housing of FIG. 1, there is not a significant EMI problem. The downside of such a rectangular extruded housing part is that there is no flexibility to change the dimensions of the housing are fixed. Moreover, such unitary extruded housing can be expensive to build.
Accordingly, a housing design part to archive more competitive cost and allowing more flexibility to change size and shape was developed. The selected way to build that housing part is now corner profiles, which are installed to a base, and sheet metal walls, which slide into slots (recess) in the corner profiles. The sheet metal/corner profile assembly suffers the problem that there is a gap in between the corner profile and the sheet metal walls. This gap becomes a problem because it functions as a slot antenna, which makes it difficult to fulfil the EMC. Depending on the electronic inside, the slot antenna may remain unresolved.

Electronic housing design and method of improving electromagnetic compatibility by mounting and fixation technology


A method of manufacturing a printed circuit board, including: applying a conductive paste including carbon nanotubes and a photosensitive binder on a bump-forming area of a circuit substrate having a circuit layer for transferring electrical signals; and patterning the conductive paste, thus forming bumps.

1. Field
The present invention relates to a printed circuit board (PCB) and a method of manufacturing the same, and more particularly, to a PCB, which includes bumps formed using a conductive paste including carbon nanotubes and a photosensitive binder, and to a method of manufacturing the same.
2. Description of the Related Art
Conventionally, the formation of solder bumps on a substrate includes a method of printing solder paste on a substrate or a wafer and performing a reflow process (FIGS. 1A to 1E), an electroless plating method, or an electroplating method.
With reference to FIG. 1A, a solder resist 15 is formed on a substrate 11 having pads 13. The solder resist 15 is formed between the pads 13, and functions to prevent the downward flow of solder paste 19 in the subsequent course of forming bumps 23.
As shown in FIG. 1B, a printing mask 17 is located on the solder resist 15. The printing mask 17 functions such that the solder paste is applied to a predetermined height on the pads 13 while preventing the application of the solder paste on the solder resist 15 in the subsequent course of printing the solder paste. As shown in FIG. 1C, the solder paste 19 is printed on the pads 13 using a squeegee blade 21. The solder paste 19 fills recesses defined by the solder resist 15 and the printing mask 17, as shown in FIG. 1C.
As shown in FIG. 1D, the printing mask 17 located on the solder resist 15 is removed, and a reflow process is performed, thereby completing a PCB including bumps 23, as shown in FIG. 1E.
However, the method of forming the bumps of the PCB using printing is problematic in that bumps having a fine pitch of 120 μm or less are difficult to realize. Thus, the method of forming the bumps using printing cannot be applied when it is intended to form fine bumps. Even if such bumps are formed, the volume thereof becomes very small.
Presently, the size of a PCB, which enables the formation of bumps through printing, approximates a quarter size or a half size. Hence, it is impossible to perform a panel-size bumping process.

Method of manufacturing printed circuit board


Two separate executing agents that execute on two separate devices coordinate to animate objects between two separate displays. The agents take control and pass control of the objects presented on the displays between one another and a common scene can be synchronized between the two displays by the agents. The objects are animated and rendered on the displays by the agents.

Typically, multiple displays are synchronized based on specific starting times for each of the displays. Objects that span the multiple displays are deterministic so as to appear to be synchronized but the objects are not capable of handling user interaction. Sometimes animated objects may appear synchronized by synchronizing time and animating the objects at pre-determined (still deterministic) times over specific intervals.
Another approach is to utilize a single computing host to control multiple displays. In this situation, the objects can be interactive and not deterministic but a single host is controlling the objects on the displays. This is similar to extending a user's desktop to two or more displays and objects presented on the display can be moved from display to display through user interaction.
However, this latter approach is inefficient for many reasons. The host can be loaded with other processing, which affects the interaction and animation of the objects adversely. Furthermore, most displays and devices with displays include computing capabilities, such that taking this latter approach leaves processing capabilities on one of the displays underutilized.
Therefore, what is needed is an approach where two or more devices can cooperate to achieve interactive animations of objects presented on the displays of the devices.


A sensor for an intrusion detection fence of a taut wires type and a method implemented in its operation, wherein the sensor is a multi-axes accelerometer that is installed on the sensors' pole of the fence while inclined relative to the fence taut wire unto which it is connected, and the sensor is connected to fence taut wire via a movement converting means such that from an instant of loading the taut wire as happens when an intrusion attempt through it occurs, the movement converting means converts the movement of the taut wire unto a rotational movement of the sensor that is amenable to be sensed in at least two axes.

Intrusion detection fences of the type known as "taut wire warning fence" are already known. A typical sector of a taut wire fence includes a couple of anchoring poles, wherein the distance (i. e., space) between them delineates a sector of the fence. Between each of such couple of anchoring poles the wires of the fence (that might be—but not necessarily—of the barbed wire type) are taut. They are at a designated vertical distance one from the other, thus forming a kind of a virtual surface (a plane), defining an area of parallel horizontal wires that is perpendicular to the ground.
The wires that are taut, as said, between given couples of anchoring poles, form a kind of transmission (or communication) lines that provides indications of the occurrence of an intrusion incident (or an attempted one) through them. A change in the tension in a wire of the fence—such as happens while bending or severing the taut wire, that would happen as a result of an actual intrusion occurrence or an attempted one (for example climbing on the wires, trying to push away parallel adjacent wires in order to increase the distance between them to enable passage or using cutters on them to cut the wires), any such occurrence is "transmitted" as an amenable to be sensed indication through the usually taut wire, like a (musical) "string".
The amenable to be sensed indication, as an outcome of the change that occurred in the tension of the wire—is received (sensed) by one sensor or more, that is (are) linked to the taut wire. The sensor, in due course, generates (produces) an electrical signal that can be received and analyzed at a remote control center.
An example for such intrusion detection fence of the taut wire fence type, is the commercially available and marketed fence, denoted DTR—that is manufactured and marketed by the applicant of this present patent (check their site—http://www.magal-s3.com/products).
A typical sector of a DTR fence includes plurality of barbed wire cords that are deployed with a distance of nine (9) to twenty (20) cm one from the other, wherein they are taut between a couple of anchoring poles that are located at a typical distance of approximately fifty (50) meters one from the other. A number of sensors are installed on "a sensors' pole" that is positioned approximately at the half point distance located between the two anchoring poles.
In addition, between every two (couple of) anchoring poles, there might be located also one or more "sliding poles", e.g.—spiral like poles, that enable horizontal movement of the wires on them but at the same time and in all that is concerned with loading the wires for bending, the sliding poles define and delineate relatively small support spaces, in a manner that forces increasing the effort that have to be exerted for bending the wires, and naturally, in a manner that increases the amenability to be sensed variation of the tensions in the bent wire. In a DTR fence, each couple of taut wires is allocated to one sensor and is connected with it. A sensors' pole is installed with six groups of sensors at most, so that the taut wires' plane of the fence might include several "Sensing Slices". Dividing the height of the pole into a number of "Sensing Slices" enables to run separately an analysis of the received signals from each of the sensors' groups, and in a manner that imparts high capability of identifying an intrusion attempt by climbing on the wires of the fence (for example—indication in a configuration of a continuum of signals from several "Sensing Slices" that are positioned one on the top of the other, and that are received successively, one after the other.
However, the sensors' pole in a DTR fence and the sensors that are installed on it, do not provide signals that enable to identify the exact location in space of the intrusion occurrence as it is related relative to the sensors' pole proper (for example—whether the intrusion attempt that is made by climbing on the fence, as we stated above, is taking place in the taut wires plane positioned to the right of the sensors' pole, or whether it occurs to the left of that sensors' pole).
Moreover, each one of the sensor groups by itself does not enable analyzing the group's produced signals at the specific individual sensor level, because the connection of the sensors in each group is done in series. In other words—the warning that is received relates to a given group of sensors and there exists no capability of discerning which is the single specific sensor that triggers the alarm within a given group.
The sensors that are installed nowadays in a DTR fence are of the "short/cut-off" binary sensors type (bi-state: go/no go). A variation in the tension of whichever wire it is from the couple (two) wires unto which the sensor in the DTR fence is connected, might extract the sensor from the state that it is regularly found in (for our presentation—shorted) and pass it to other state—namely cut-off, in a manner so that the control system that is all the while sampling the status of the sensors, might identify only the fact of the occurrence of an intrusion attempt through the fence, via the specific group of sensors.
A variation in the tension of a taut wire that, as said, brings about a change of state in a sensor (from short circuit to cut-off) is the outcome of actuating a certain weight on the wire unto which that sensor is connected (except in the case of severing (cutting) the wire). In other words, the sensor changes its status at the time that a wire unto which it is connected is loaded beyond a given weight threshold. The level of sensitivity of the sensor is constant (in accordance to the weight unto which the wire is exposed and wherein it is sufficient for switching over the sensor from short circuit state to cut-off).
Thus, the sensors that are installed nowadays in a DTR fence, do not provide (issue) signals that enable to deduce information regarding the value (magnitude) of the weight that is operating on the wire before an alarm is sounded (before the switching over from a short (circuit) state to cut-off), and afterwards (following the sensor's switched from short (circuit) state to cut-off).
The sensors that are installed nowadays in a DTR fence also do not provide indications from which it might have been possible to estimate the way travelled by the wire that was subjected to the variation of the tension, nor the direction of this path (track) in space. At most, it is possible to estimate that the switching over of the sensor from short circuit state to cut-off, is the outcome of the loading of the wire and its bending in the plane of the wires, to within a shift of approximately 10 to 12 cm in a vertical direction (relative to the ground).
As for the sensors, that are as said binary (by-state) "switching over sensors" from connecting to cut-off, the sensors that are nowadays installed in a DTR fence are also not able to identify occurrences of appearance of vibrations in the wires, but only the occurrence of a steady pulling action on the wire as it happens due to loading the wire unto a certain weight (except if it is considered to be cutting the wire).
However, to intrusion efforts through such taut wires fences, there might be accompanying occurrences of vibrations in the wires that do not rise (increase) up to an occurrence of a steady pulling force on the wire (for example, an intrusion act by setting a kind of a rigid frame (window like) on the wires of the fence, thus maintaining their tautness—and as its second stage—cutting the wires that are found inside this frame).
It is important to note, that also the substantial physical size (dimensions) of the sensors that are installed nowadays in the DTR fences, constitute a limitation because it does not enable to deploy them at a beneficial crowded arrangement of taut wires such that variations of tautness on all of them would be amenable to be sensed.
Thus, before the invention that is the subject matter of this application, when using intrusion detection fences of the taut wire genre, it was not feasible to obtain the desired combination of beneficial indications—
Both for the location wherein the intrusion attempt occurs in relation to the sensor (does it occur to its right or rather to its left); determining the specific sensor producing the alarm from the group of sensors to which it belongs, and, as was said—in a dynamic mode and for prolonged time spans—applying to the varying weight unto which the wire is loaded during the time of the intrusion attempt, its direction in space and the path that the wire goes through during the attempted intrusion; as well as indications concerning vibrations appearances unto which the wire might be exposed as a result of the intrusion attempt through it.
An additional drawback, due to the (relatively) large physical dimensions of the sensors, there exists in the intrusion detection fences of the taut wire fence type, a geometrical and packaging constraint limitation from the aspect of the capability of crowded deployment of taut wires with complete utilization of their capability to serve simultaneously—all of them, as an active "communication lines", transferring indications regarding the occurrences of intrusion attempts through them to the sensors that are connected to them.


This application discloses example methods and apparatuses for information transmission. One example method includes receiving, by a terminal device, downlink control information that includes first information used to indicate a symbol that carries uplink control information. The terminal device can then determine, based on the first information, the symbol that carries the uplink control information, and can map the uplink control information to the symbol that carries the uplink control information. The terminal device then sends the uplink control information to a network device.

A 5G communications system or a new radio (NR) communications system is committed to supporting higher system performance, and will support different services, different deployment scenarios, and different spectrums. The different services include enhanced mobile broadband (eMBB), machine type communication (MTC), ultra-reliable and low latency communications (URLLC), Multimedia Broadcast Multicast Service (MBMS), positioning, and the like. The different deployment scenarios include scenarios such as indoor hotspot, dense urban, suburban, urban macro, a high-speed railway, and the like 5G will support a spectrum range up to 100 GHz.
Dynamic time division duplex (TDD) is an important technology in the NR communications system. The technology better matches a real-time service requirement by dynamically adjusting a transmission direction of a subframe, thereby improving spectral efficiency of the communications system and better meeting a low-latency service requirement. The NR communications system needs to be designed to enable better use of the dynamic TDD.
The 5G system will support a frequency division duplex (FDD) system and a TDD system. Both the FDD system and the TDD system need to meet performance indicators of the 5G system. In particular, both the FDD system and the TDD system need to meet a low latency, that is, need to support fast hybrid automatic repeat request (HARQ) feedback and fast retransmission. The FDD system and the TDD system also need to support flexible HARQ timing. To simplify a system design, in the 5G system, great efforts will be made to use a same design method for the FDD system and the TDD system. Therefore, how to design a same uplink control channel resource indication method for the FDD system and the TDD system is a problem that needs to be resolved in the 5G system.

Uplink control information transmission method and related apparatus


A method may include collecting a plurality of computer-readable source code from an application programming interface (API) repository. The method may also include performing API call code slicing on the computer-readable source code. The method may also include extracting an API host and an endpoint for each of the API call codes identified in the API call code slicing. The method may also include compiling an API mashup database based on the extracted API host and endpoints. Furthermore, the method may also include providing a recommended API mashup of the API mashup database in a user interface.

An API is a set of protocols, commands, definitions, and tools for creating application software. An API may specify how software components should interact and how APIs are used when programming graphical user interface (GUI) components or implementing services or functions. Among all different types of APIs, such as programming language APIs, database APIs, etc., we mainly use web APIs as examples to illustrate the method described in this invention. The web API is a programmatic interface with one or more publicly exposed endpoints, which specify where resources can be accessed by third party software. A web API is exposed via the web, most commonly by means of an HTTP-based web server. The request-response message system defined for a web API is typically expressed in JavaScript Object Notation (JSON) or Extensible Markup Language (XML). In some instances, API mashups are used as a plurality of APIs functioning together in order to provide new or value-added services.
APIs and API mashups are used in all kinds of business and are generally used by companies to integrate various software into their products efficiently and inexpensively. One difficulty, however, is that with the vast amount of APIs and API mashups which are available, it is often difficult for software developers to find the API mashup which best fulfills their particular needs for any given project. This can lead to wasted time and energy as the developers may be forced to spend valuable time either developing new API mashups or searching for existing functional API mashups.
The subject matter claimed herein is not limited to embodiments that solve any disadvantages or that operate only in environments such as those described above. Rather, this background is only provided to illustrate one example technology area where some embodiments described herein may be practiced.

API mashup exploration and recommendation


An automated method and apparatus is provided for the analyzing of data files derived from fluorophore emissions detected during observation of fluorophore labeled nucleotide polymers such as is done during the sequencing of bases in nucleotide polymers. The analysis steps of the method depend upon a key step of quantifying features of the emission peaks whereby subsequent steps as base calling can be performed and whereby individual emission spectra within the data files of two or more samples can be automatically synchronized, compared, and differences detected and signaled. The quantified peak information provides for the use of fuzzy logic and the assignment of truth values or scores to be assigned to the base calls. optimally, individual peaks within the data file are corrected by distortions, the peaks enhanced, and the overall data file information augmented to further improve the accuracy of the analysis of the data and reduce manual labor requirements.

1. Field
The present invention relates generally to the field of nucleotide investigations, and more particularly to the detection and analysis of emission spectra generated during observation of excited fluorphore labelled nucleotide polymers undergoing separation by size, such as is done during the sequencing of bases in nucleotide polymers.
2. State of the Art
The genetic material of higher organisms comprises two strands of DNA. Each DNA strand is a polymer of nucleotide monomers and each monomer consists of a sugar residue (deoxyribose), a phosphate residue, and a purine or pyrimidine base. The monomers are linked in a continuous chain by a phosphoribosyl backbone. The double stranded DNA prefers a helical orientation and exists as a long linear strand in higher organisms (up to several centimeters in length in man) with its phosphoribosyl backbone oriented outwardly of the helix and the sequentially ordered bases oriented inwardly along the axis of the helix whereby complementary hydrogen bonding between bases hold the two strands together. By complementary it is understood that adenine nearly always forms hydrogen bonds with thymine and cytidine with guanidine. The phosphoribosyl backbone has a free hydroxyl group at the 3' position extending from the terminal deoxyribose residue at one end and a free terminal phosphate group attached at the 5' position of its last deoxyribose residue at the other, thus giving a directional orientation to the opposing strands.
It is the sequence of the four bases found on the strands of DNA, (denoted A, G, T, and C), that is the genetic code directing the synthesis of all the polypeptides or proteins (enzymes, collagen, muscle, etc. synthesized as a linear sequence of amino acid monomers). These polypeptides perform the metabolic processes essential to life and health and provide structure and mobility to organisms. The code is based on a sequence of three bases, thus 4.sup.3 or 64 "code words" exist in the code. One triplet code is a start command, directing the initiation of synthesis of amino acid polymers (polypeptides), most triplets code for a particular amino acid to be added to the linear polypeptide chain, and a few triplet codes are stop commands directing the termination of synthesis of the polypeptide. A gene consists of the series of triplet codes, that is, the DNA sequence which directs the synthesis of a single protein. One gene codes for one protein. The industrial and research community desire to learn the sequence of DNA in all genes in humans and some other organisms and thereby harness this genetic code for a variety of useful purposes. With over 3.times.10.sup.9 bases making up the genes in humans, the enormity of the task of determining their sequence as they occur in the genes is readily appreciated.
While the above discussion has used the term DNA and referred to DNA sequencing, and uses the terms DNA and DNA sequencing hereinbelow, it is understood that the invention has application to sequencing methods of any nucleotide polymer, e.g., amplified microsatellite nucleotide polymers and other methods involving the use of fluorescently tagged nucleotide polymer fragments used to generate a chromatogram.
Two methods of sequencing form the basis for large scale sequencing operations, a so-called chemical method and an enzymatic method. The enzymatic method exploits the process of DNA replication which always occurs in the 5' to 3' direction by the addition of a new nucleotide to the 3' terminus of the growing DNA polymer catalyzed by an enzyme, DNA polymerase. The process is known as primer extension and the method of sequencing upon which it is based is the enzymatic or dideoxy method of DNA sequencing. Sanger et al., Proc. Natl. Acad. Sci., U.S.A. 74, 5463-5467 (1977). The chemical method of DNA sequencing was developed by A. M. Maxam and W. Gilbert, and is described in Proc. Natl. Acad. Sci., Vol. 74, p. 560 (1977). Each method is well known and well described in the references cited above and are equally applicable to the invention. Suffice it to say, they involve a number of steps and result in fragments of DNA of varying sizes that end with a different base (A, T, C, or G). The determination of DNA sequence in these methods depends on separating the DNA fragments produced by order of size and either by what base they contain (when each lane has only one reaction product) or by what fluorophore tag is detected if all four reaction products are in one lane as in commercially popular sequencing machines. If the shortest fragment ends in A, then the first base in the sequence is A. If the next longest fragment ends in T, then the next base in the DNA sequence is T and so on. This is the basic algorithm for "base calling", i.e., determining the sequence of purine and pyrimidine bases in a strand of DNA.
One commercially popular automatic sequencer, the ABI 373A.RTM., available from Applied Biosystems, Inc., Foster City, Calif., performs the following steps after a nucleotide polymer is sampled and reaction products of varying length obtained. The reaction product fragments are tagged with a fluorophore, resolved by size by inducing them to migrate through a polyacrylamide gel via an electrical charge across the gel (gel-electrophoresis), exposed to an electromagnetic wave source to induce the emission of electromagnetic energy (fluorescence by the tag), and the emitted energy detected by a detector to produce an analog signal. The analog signal is sampled and the sampled values transmitted to a data file referred to as a gel file. The gel file data is then "tracked" and processed by ABI Sequencer.RTM. analyzer software which generates chromatogram data and stores it in a chromatogram data file. The software then automatically determines the DNA base sequence from the chromatogram data and stores the sequence data as part of the chromatogram data file. Examples of patented automatic sequencing apparatus and methods include U.S. Pat. No. 4,811,218 to Hunkapiller et al. issued Mar. 7, 1989 assigned to Applied Biosystems, Inc. (ABI), and U.S. Pat. No. 5,556,790 to Pettit issued Sep. 17, 1996, the disclosures of which are incorporated herein by reference. These methods and such commercially available instruments as the ABI 373A.RTM. as discussed and the Pharmacia A.L.F..RTM., from Pharmacia, Inc. of Piscataway, N.J., and the Licor.RTM. Sequencer from Licor of Lincoln, Nebr. all produce a chromatogram data file from an analog signal in a manner compatible with the initial steps of the present invention. It is understood that should newer methods of creating chromatogram data files be produced, they too would be compatible with the invention. In addition to the instruments and methods discussed above, other methods employing capillary electrophoresis can be used to produce a data file compatible with the initial steps of the invention. The initial steps of producing reaction products is the same, however, a gel is not used during the fragment separation step and, at least in one commercially popular machine, a CCD camera is used to detect fluorophore emission spectra. Other prior art methods not necessarily directed to gene sequencing, such as microsatellite amplification, employ fluorophore labeled nucleotides and generate signals that can be converted into chromatogram data files as well. These and yet to be developed methods which produce a signal that can be converted into a digital data file such as a chromatogram data file are compatible with the initial steps of the invention.
Some current commercial automated sequencers utilize a single gel plate which can accommodate up to 64 migration lanes simultaneously, that is, 64 unique DNA samples. The multiple lanes are generally run through the detector and detected simultaneously to increase the throughput of the sequencer. A single run on such a gel can result in collection of between 4000 and 9000 data points (one each 6 seconds) for each sample by means of intermittent sampling of the raw data generated by the detector for a gel plate run and saving the collected data generated in a gel file. This process requires between 4 and 12 hours depending on the size of the longest DNA fragments under analysis, and, consequently, the migration time which lengthens with the length of the fragment. As indicated above, the gel file data is interpreted by software and the interpreted data then stored in a so-called chromatogram data file. A chromatogram could be plotted out on paper or on a computer screen if desired.
The existing "base calling" process in automated sequencers consists of determining the DNA base sequence from the chromatogram data without the necessity of plotted graphs, except when the data is too ambiguous. Then plotted graphs must be resorted to. One of the most labor intensive and highly skilled tasks during DNA sequencing projects is viewing the original trace descriptions of the gels and resolving conflicting readings. J. Bonfield and R. Staden, The application of numerical estimates of base calling accuracy to DNA sequencing projects, Nucleic Acid Research, Vol. 23, No. 8, pp. 1406-1410, 1995.
Ambiguities result and limitations are imposed upon the length of DNA strands which can be sequenced by factors inherent in current methods of tagging DNA, variations inherent in gel electrophoresis, inherent inconsistencies in the make up of the sample such as heterozygosity and other polymorphisms, and current methods of base calling including especially the available software for base calling. All these variables can result in ambiguous information such that accurate base calling is interfered with. In general, it is an object of the invention to provide a means for resolving ambiguities due to the above factors. It is a further object to identify mutated genes, homozygous and heterozygous loci within exons, introns, or, nucleotide polymers, in general, and other polymorphic anomalies from chromatographic data.
First, a closer examination of one particularly important problem that has had no satisfactory solution to date, i.e., the problem arising during gel electrophoresis. During the process of running the gel, a number of stochastic phenomena occur to change the migration speed of the DNA primer extensions within a lane and from lane to lane and cause the data collected to be nonsynchronous among the lanes. Contributing factors to nonsynchronicity include: microscopic holes in the gel matrix as a result of rate of polymerization and quality of acrylamide, break down of the polyacrylamide matrix during running, changes in migration speeds due to electrical idiosyncrasies, temperature variability throughout the gel, and variability in salt concentrations in the running buffer. All these factors combine to have an overall effect of stretching or compressing the migration speed of each sample (and the x axis of the chromatogram). The result is that two identical DNA samples, run on the same gel, in different lanes will have different electropherogram data. The effect is even more dramatic when the samples are run on different gels or on different machines. It is an object of the invention to provide means for correcting for nonsynchronicity among the lanes of one run on one instrument, among different runs, and among runs performed on different instruments.
Currently, the most expeditious way to detect differences between experimental samples and a reference is by comparing the text data, e.g., A-C-G-T-T-G-G-, for the two samples using one of the several programs available. All these prior art software programs are based on the comparison of the text strings, e.g., AC-G-T-T-G-G-. The text strings are generated by the Applied Biosystems, Inc. basecaller software when generating the chromatogram data. Such software makes base determinations by considering peak height and peak spacing. It does not consider peak size, area under the peak, presence of different colored peaks (peaks at different electromagnetic wavelengths occurring at the same migration time), peaks that are out of synchronization, or time factors involved in evolution of the peak, or quantify these variables for consideration in the base calling algorithm. In other words, there is a lack of software for analyzing and quantifying more than two of the many variables and chromatogram characteristics contained within a chromatogram data file. It is an object of the invention to consider various aspects of the chromatogram data for base calling and for detecting differences between experimental samples.
Problems with the currently available base calling algorithms arise when ambiguous data results as a consequence of so-called "contextual influences" resulting from current sequencing methods and perhaps polymerases employed in such methods. L. T. Parker et al., Peak Height Variations in Automated Sequencing of PCR Products Using Tag Dye-Terminator Chemistry, BioTechniques, Vol. 29, No. 1, pp. 116-121. For example, the signal emitted by the fluorophore attached to G., i.e., the G peak, following an A peak, can be weak and is, perhaps the most noticeable contextual influence. However, the G peak following C and T is also weaker. The peaks for A or T fluorescence is very strong when following a G. Such "contextual influences" or ambiguities can be resolved by sequencing the opposite direction across the problematic region, because the same problem will not be observed on the chromatogram of the primer extension reaction product using the reverse complement of the ambiguous template. For example, if the template sequence is 5'-AG-A-G-T-G-C-T-C-3', the first two G peaks might be ambiguous and difficult to call because they will follow A peaks, but the peak following the T residue may be clear. However, in the reverse complement of the template strand, the sequence is 5'-G-A-G-C-A-CT-C-T-3', the C-T-C-T portion representing the reverse complement to the A-G-A-G portion of the template. The chromatogram will show an unambiguous C peak followed by a T peak followed by another C peak followed by another T peak, so none of the ambiguities present in the target template are present in the reverse complement of the problematic region.
With a heterozygous polymorphism or other polymorphism, there is a variation in base sequence between a sample and a reference at a particular locus, i.e., one base may appear on one allele, but a random, different base will occur on the other allele, and/or the base on the otherwise complementary strand will not be the usual complementary base pair at the same locus. Such polymorphism will look exactly like an ambiguous base call in both forward and reverse sequencing reactions. Polymorphisms occur not only within exons, but within introns as well, and, therefore, the problem arising with sequencing polymorphic samples applies equally to both. Heretofore, there has been no commercially practical, simple means for determining whether an ambiguous base is a heterozygous polymorphism or artifact. Automated methods have compared only text strings which can point out differences but not resolve ambiguities that underlie the differences. Manual inspection of chromatograms can resolve questions, but is difficult and labor intensive. Hence, there has been no practical method to fully compare chromatogram data from two or more data files. It is an object of the invention to provide a method and apparatus for importing digital data files derived from signals generated during nucleotide sequencing of two or more samples, such as chromatograms from a reference person or group and a chromatogram from a potential carrier of a mutation, and to compare two or more chromatograms and distinguish between ambiguous peaks and true heterozygous polymorphisms and/or other polymorphisms, i.e., where a peak corresponding to one base is found in one chromatogram and the corresponding peak in the comparison chromatogram is for an unambiguously different base.
Much work has been done in the area of automatic speech recognition and computerized speech processing. Various approaches to analyzing speech signals have been developed and are in use to allow computers to analyze and compare digital data representative of analog speech signals. Information on speech processing is contained in the book Neural Networks and Speech Process, David P. Morgan and Christopher L. Scofield, Kluwer Academic Publishers (1991), and such information is incorporated herein by reference.

Method and apparatus for analyzing data files derived from emission spectra from fluorophore tagged nucleotides


A distributed communication network includes switching offices (SOs), moving-orbit satellites, and subscriber information managers (SIMs). A population of mobile units (MUs) communicates through the network. A MU automatically determines its location and communicates with the network so that this information is kept current at a SO serving the MU and at a home SIM for the MU. The terrestrial nodes of the network have information showing which MUs are logged on at any given time. This knowledge is used to block calls to MUs known to be logged off. Calls are setup through cooperation between SOs. When calls are being setup to MUs, call-originating SOs determine appropriate SIMs and obtains the current location of the MUs from those SIMs. This current location corresponds to a call-destination SO with which the originating SO may cooperate in setting up a call.

A network is used to supply a communication path between two end users. The network typically has the capacity to connect only a finite amount of communication traffic at any given instant. Each call consumes some portion of the total available communication resources. Moreover, a network may have numerous diverse resources available for use in forming any single call's communication path. Thus, networks often perform a call setup process prior to establishing a call's communication path. The call setup process identifies and assigns network resources to the upcoming call.
A network may be viewed as having a number of nodes. The end parties to a call communicate directly with their respective nodes. In some cases, the calling and called parties utilize the same network node. However, in other cases communication paths are established between diverse nodes, perhaps through intermediary nodes.
Call setup processes are well known in connection with networks having stationary end users. In this situation, a calling party need only identify a called party to one node of the network. That one node can analyze the called party's identity to determine how to begin identifying and assigning network resources to setup the call.
However, the call setup process becomes more difficult when one or more of the end users are mobile. When mobile end users are involved, RF links are typically used to communicate with the end users. These RF links represent scarce resources which must be conserved to the maximum extent possible. Since the end users are mobile, the locations of called parties cannot be determined simply by examining the called parties' identities. Hence, additional network resources must be consumed and additional intelligence must be designed into the network to determine how to setup a call to a called party whose location varies.
The call setup process is further complicated when at least some of the nodes of the network are mobile themselves. This situation occurs when satellites in moving-earth orbits are used as the network nodes with which network subscribers directly communicate. In this situation, the selection of particular network nodes through which a call is to be placed depends upon which satellites are in convenient locations at the instant a call is being setup.
Moreover, simple satellite designs are highly desirable to reduce network costs. In addition, simple satellite designs provide the most cost-effective network reliability because the repair of orbiting satellites is prohibitively expensive. Due to a desire to keep satellite designs simple, the complexity of call setup intelligence is preferably located in nodes of the network which are not mobile.

Call setup method for use with a network having mobile end users


In a method for obtaining a system by combining program components, the relocation of the program components can be facilitated. When a component has been moved between upper and lower level composites by a relocation processing unit, if a move source composite has a wiring between an element and a component to be moved, a complement processing unit performs complement processing in which a service or a reference is added to the lower level composite, a wiring for connecting the added service or reference and the element is set to the move source composite, and a wiring for connecting the added service or reference and the component to be moved is set to a move destination composite.

In recent years, a design concept of software called service oriented architecture (SOA) is drawing attention with progress of distributed computing technology. In SOA, program components, each providing a bundle of general functions, are operated independently. The functions are presented outside as a service. A target system is built with these services cooperating with each other. The cooperation between the program components is specified simply with an interface of the service provided by each program component. Therefore, independence, maintainability, and reusability of each program component are improved.
As a concrete method for obtaining software according to the concept of SOA, service component architecture (SCA) is known.
SCA is the method for obtaining software in which a system is built focusing on a component (or component element) which is an instance of a program component and a service (or service element) which is a function provided by the component. As other elements than a component and a service, a reference (or reference element), a wiring (or wiring element), a property (or property element) and a composite (or composite element) or the like are also used.
The detailed specification of SCA is described in non-patent literature 1, for example.
Here, taking SCA as an example, a specification of such program modularization which has high reusability in a method for obtaining a system by combination of program components will be described.
FIG. 35 is a diagram showing elements defined in SCA.
In FIG. 35, a component 301 is an element that specifies an instance of an executable program component. The component 301 includes implementation of a program component and setting required for the execution thereof. For example, the implementation is specified by a program described using a language such as Java (registered trademark) or C++, and the setting is specified by an element such as a service 302, a reference 303, and a property 304 of the component 301. Here, the service 302 is an element that specifies a function provided by the component 301. The reference 303 is an element that specifies the service consumed by the component 301. The property 304 is an element that specifies a variable and a value thereof used by the component 301 when it is executed.
A composite 310 is an element that specifies a combination of these elements. The composite 310 may include a plurality of components 301 and wirings 315, 316 in the interior thereof. The wirings 315, 316 are elements that specify a connection between an element requiring a service and an element providing the service. Cooperation among a plurality of program components, which are the characteristics of SOA, is expressed by connecting the reference 303 and the service 302 with a wiring between components 301.
The composite 310 itself may be reused for an implementation of other components (the composite 310 can use an instance of other composite 310 as a component).
The composite 310 may include a service 312 in the interior thereof. By doing this, it is possible to specify a service that can be provided when the composite 310 is instantiated as a component. The service 312 included in the composite is provided by the service 302 of the component 301 included in the composite 310. These services 302 and 312 are connected by the wiring 315 in the composite 310.
The composite 310 may include a reference 313 in the interior thereof. By doing this, it is possible to specify a service consumed when the composite 310 is instantiated as a component. The reference 313 is used when the service consumed by the component 301 included in the composite 310 is provided outside the composite 310. In this case, the reference 303 of the component 301 that consumes the service and the reference 313 of the composite 310 are connected by the wiring 316 in the composite 310.
An interface may be specified for the service 312 and the reference 313 of the composite 310. By doing this, it is possible to control application of the wiring, considering functionality that can be provided by the service 312 and functionality required by the reference 313.
The composite 310 may include a property 314 in the interior thereof. By doing this, it is possible to specify a property that can indicate a value when the composite is instantiated as a component. The property 314 included in the composite can be referred from the component 301 as a value of the property 304 of the component 301 included in the composite 310. By doing this, it is possible to set a value of the property 314 of the component 301 included in the composite 310 on a component using the composite 310 as an implementation. A type of a value may be specified for the property 314. By doing this, it is possible to control reference setting is permitted or not, considering compatibility between the type of a value required by the referring property and the type of a value provided by the referred propriety.
The mechanism to inject a function or data on which a program component depends from the outside, such as the mechanism of a reference or referring to a property described above, is generally called dependency injection (DI). The dependency injection is drawing attention as a method for improving a reusability of a program component, particularly in recent years.
In the method for obtaining a system by combination of program components such as SCA, the target system can be effectively built, based on many general and fine-grained program components, by gathering components or services as composites and further gathering the composites as higher order composites, using the mechanism of DI.
By the way, in the method for obtaining a system by the combination of program components, generally, the necessary elements are not always stored in the suitable composite from the beginning of the design. It is necessary to perform refactoring and to adjust locations of the elements included in a program component as same as other programming methods.
For example, a composite A that provides a service receiving two integers and displaying the sum of them with easily viewable format to a user is considered. The composite A has a component S that calculates the sum and a component P that displays it with easily viewable format to the user. Here, it is found that a similar function can be provided for other calculations by changing the component S into another component, for example, a component M for multiplication. In this case, the reusability of the composite A can be improved by extracting a part that uses the service of the component S in the composite A as a reference and changing the composite A into a composite that displays a calculated result with easily viewable format in combination with an arbitrary calculation component.
However, in case the composite including the component to be relocated is already used as an implementation of a component in other composite, or in case the component to be relocated is connected with other services or references, the user needs to perform adjustments of elements other than the component to be relocated, such as adding a component and adding a wiring for connecting the added component, so that the refactoring does not affect the functionality of the whole system.
Note that, in patent literature 1, as a related art in a technology regarding the refactoring support in system development using the combination of program components, a method removing a code of a function that is not used is described.

Refactoring device, refactoring method and program


A CMOS imaging sensor with embedded feature extraction capability operatable in different modes by a method that includes the steps of: (a) operating the CMOS imaging sensor in a motion-detecting mode at a first power level using circuitry on the imaging sensor that generates motion data based on received images detected by pixels in the pixel array; (b) switching the imaging sensor from the motion-detecting mode to a feature extraction mode in response to detecting motion; and (c) operating the imaging sensor in the feature extraction mode at a second power level that is higher than the first power level.

Complementary metal oxide semiconductor (CMOS) imaging sensors are often powered by an energy source having limited power. As a result, power consumption can be an important consideration for extending the performance and/or lifetime of these sensor systems. Most CMOS imaging sensors having high sensitivity and dynamic range consume>50 mW, which may be unsuitable for wireless applications. Some low-power imaging sensors are known. These sensors can consume low amounts of power, in some cases<10 μW. However, even low-power sensors that are used to continuously send images may still result in systems that draw unacceptable amounts of power. For instance, the wireless signal transmission of images from CMOS imaging sensors consumes significant amounts of power due to the large bandwidth of image signals. Another way to reduce the bandwidth can be to generate image signals by monitoring temporal changes or contrast changes. But, generating image signals based on temporal changes or contrast changes may cause the sensor to respond to environmental conditions, such as change of illumination or background movement, in addition to actual target objects.

CMOS image sensors with feature extraction

The Regents of the University of Michigan


Device in a hydraulic power system connected to a load driving hydraulic motor (18; 32), comprising a pilot controlled flow regulating directional valve (1; 29) for alternative connection of the service ports of the motor (18; 32) to a pressure medium source and a tank. The directional valve (1; 29) comprises two opposite and by a pilot pressure activatable activating means (3, 4), and a pilot pressure means (84) is arranged to pressurize and activate the activating means (3, 4), alternatively, and drain one of the activating means to the tank through a flow restriction (5, 7) at activation of the other activating means (3, 4). The power system comprises at least one control flow circuit (10-12; 72-83; 37-44) which communicates with one of the activating means (3, 4), and a valve means (11, 12; 71; 31) which is arranged to accomplish a flow through the control flow circuit (10-12; 72-83; 37-44) in relation to the load pressure on the motor such that the counter pressure from the flow restriction (5, 7) generates a compensating force in relation to the load pressure on the motor on the non-activated activating means (3, 4).

This invention relates to hydraulic valves of the type which are intended to direct a hydraulic fluid as well as control the size of a flow to a flow consuming device comprising load objects in the form of hydraulic actuators and/or other types of hydraulic motors.
The above mentioned hydraulic valves may be of the two main types: open centre valve or closed centre valve.
The former type of valve is intended to work in combination with a hydraulic pump having constant displacement and being arranged to let the entire pump flow pass through the valve unrestrictedly as the valve occupies its neutral or inactivated position. As the valve is activated the desired flow is directed to the load object, usually by bypass control.
The latter type of valve is intended to work in combination with a variable displacement pump and an automatically operating shunt. When inactivated, the directional valve itself is closed as regards the pump flow. The actual type of valve is used either in a system with constant pump pressure, then it is called constant pressure valve, or in a system in which the pump pressure corresponds to the heaviest load in each moment. Then the valve is referred to as load sensing. The invention is mainly related to the last type of valve, also called LS valve, but to some extent it is related to constant pressure valves and constant flow valves.
Accelerations of inertial loads at for instance the slew function in an excavator, result in increases in the load pressure which are proportional to the magnitude of the acceleration. If the acceleration is fast enough toward a desired speed, the result usually is that when the desired speed is reached the hydraulic motor suddenly operates as a pump driven by the inertial load. The continuous condition is disturbed in that the motor momentarily consumes more fluid than what is delivered from the pump.
Accordingly, there will be a shortage of fluid resulting in the pressure falling towards zero.
Consequently, the inertial load is retarded, and in the next sequence the load is re-accelerated by the pump flow, which results in a pressure increase. Due to this and to the elasticity inherent in the system, the result is an oscillation of a low frequency and rather a big amplitude which influences negatively the controllability and makes precision movements more difficult. This problem is most significant at LS valves which have a poor internal damping. At slow accelerations, there are mostly aperiodic oscillations, and the abovementioned problems do not occur.
One way of improving this condition is to adapt the valve spool restrictions as regards the flow to and from the motor such that a certain pressure above the load pressure is maintained. By this arrangement it is possible to improve the stiffness of the motor, and, thereby reduce the oscillations. Another way of doing this is to install a double overcenter valve at the main connections of the motor. Then, the motor can not "run ahead" of the flow and cause large pressure variations in the system. Unfortunately, it is not possible to have such a valve function to operate completely satisfactorily without causing large pressure drop losses in the power circuit as well as damping on the activation side. More effective methods may be used though, methods that can be used with less losses and a safer operation.
In the European Patent Publication No. EP 0066717 there is shown a solution to the problem of how to start and stop softly heavy inertial loads. The motor pressure is arranged to act upon auxiliary pistons located in the inlet part of the valve spool and which counteract the activation signal. Thereby, the valve spool displacement is counteracted and a damping action is obtained. The return force acting on the spool acts in the same instant the pressure distortion occurs, which means that the latter is damped without any phase shift.
Another solution to the problem and which gives a softer damping than the above mentioned is described below.

Pilot-operated flow controlling directional control valve with copying spool


Method and apparatus by which skidding wheels of a vehicle are quickly recognized and distinguished from drive train vibrations. The method uses the difference between values of a comparison parameter (e.g. wheel circumferential distance) of a driven wheel and a similar comparison parameter of a non-driven wheel. The differences are summed over time intervals as soon as a kinetic parameter (e.g. slippage of the driven wheel) exceeds a threshold value. When the sum of the difference values exceeds a maximum value, a control signal is generated that can be used, for example, as an alarm signal for the driver, or as a control signal for changing the drive moment of the wheel, for changing gears, or for driving additional wheels.

Methods of skid detection are known wherein the speed or acceleration difference between a driven and a non-driven wheel, with reference to the speed or acceleration of a non-driven wheel, serves as kinetic parameter. When this kinetic parameter exceeds a prescribed threshold, the brake of a skidding wheel or the drive power of the vehicle motor is influenced in a way to prevent the skidding of the driven wheel. In order to be able to recognize the onset of skidding as soon as possible, this threshold should be as low as possible. However, speed differences exceeding such low thresholds can be produced by vibrations in the drive train that occur when changing gears, when vehicle loads shift, or when the vehicle encounters irregularities in the roadway.
Such vibrations in the drive train produce speed differences that do not differ from those of skidding wheels in the first hundred through two hundred milliseconds. The chronological curve of the resulting slippage of the drive wheels is sinusoidal, with frequencies of about 3 through 5 Hertz. Filtering such low-frequency vibrations out is infeasible due to long filter times. Boosting the thresholds, by contrast, delays the recognition of skidding wheels, and thus delays the beginning of corrective action.

Method and apparatus for distinguishing skidding wheels of a vehicle from drive train vibrations


An Ethernet storage protocol (ESP) enabled network is provided. The network includes a host computer having host interface circuitry for communicating data in an Ethernet network, and the host interface circuitry is configured to receive parallel data from the host computer provided in accordance with a peripheral device protocol, serialize the parallel data, and encapsulate the serialized parallel data into Ethernet frames for transmission over the Ethernet network. The network also includes a target having target interface circuitry for communicating data in the Ethernet network. The target interface circuitry is configured to receive the encapsulated serialized parallel data and reconstruct the serialized parallel data into the peripheral device protocol. The peripheral device protocol is one of a SCSI protocol, an ATAPI protocol, and a UDMA protocol. The data can be storage data, network data, file data, virtual interface data, or any other type of data that will benefit from high bandwidth transmission over a network.

1. Field of the Invention
This invention relates generally to communication protocols, and more particularly to lightweight communication protocols for efficiently communicating data between networked computers.
2. Description of the Related Art
The art of networking computers has evolved over the years to bring computer users a rich communication and data sharing experience. As is well known, the Internet has given rise to a new level of sophisticated communication technologies that enable users to share information and communicate via electronic mail with users all over the world. Most of the worlds computers communicate using a well established communication protocol referred to as TCP/IP. TCP/IP is a set of protocols developed to allow cooperating computers to share resources across a network. TCP (the xe2x80x9ctransmission control protocolxe2x80x9d) is responsible for breaking up a message into variable length segments, reassembling them at the other end, resending anything that gets lost, and putting things back in the right order. IP (the xe2x80x9cinternet protocolxe2x80x9d) is responsible for routing individual segments.
As originally designed, the TCP protocol was intended to be a very fault tolerant protocol that could withstand catastrophic failures of the communication network. TCP was also designed with long range communication and messaging in mind. As a result, TCP is inherently a protocol that has high overhead for handling the communication of variable length segments.
As a high level overview, take an exemplary data file that is selected for communication over a network using the TCP protocol. Initially, the TCP protocol will break up the data file into a plurality of variable length segments. Each variable length segment is then packaged with an associated TCP header. An IP header will also be added to the beginning of the packet. The packet data, header, and partial IP header are also processed through a checksum before transmission. The packets are now transmitted over the network, where each packet may potentially travel a different path (e.g., through a plurality of routers and the like) in their journey to a destination. At the destination, the TCP protocol is charged with receiving the packets. However, the packets do not necessarily arrive at the destination in order.
Consequently, the TCP protocol is charged with managing the reordering of the received packets. The managing requires the TCP protocol to keep track of timing parameters and other variables to ascertain whether or not certain packets were lost during transmission. For example, the TCP protocol must calculate round trip times defined by when a packet is sent out and when an acknowledgement (ACK) is received. This timing must be continually monitored using complex timing algorithms and adjusted when necessary. If after a set amount of time no ACK is received, it is assumed that the packet is lost and thus must be resent.
As an example, assume that a sender begins to send packets to a given target. The sender will operate on a timer to determine when certain packets are not received. In some cases, a packet is received, however, the target took too long to acknowledge safe receipt. This situation tends to happen most often as congestion over a network path increases. To handle such situations, TCP utilizes what is referred to as a xe2x80x9cslow start algorithm.xe2x80x9d The slow start algorithm is triggered when congestion reaches a point where packets are not being acknowledged (i.e., when the sender times out) and therefore the sending operation is restarted. The restarting therefore causes significant reductions in throughput performance. More importantly, because the sender is primarily relying on the time out to determine when packets are lost, the slow start algorithm will many times cause a restart when a packet is not necessarily lost. That is, the acknowledgment may just have taken slightly longer than the fixed time out. Consequently, if the acknowledgment was received just after the time out, the slow start algorithm will still cause a resend.
Although this type of processing works, the processing performed for lost packet detection can be computationally intensive. In order to handle the processing of the TCP protocol, the TCP protocol is commonly implemented in software. The handling in software is primarily necessitated to enable, among other things, the detection of lost packets, and the reordering of received packets.
To appreciate the amount of overhead needed to transmit data using standard TCP/IP, the following describes the sending and receiving of data with a SCSI host adapter and a typical NIC. When sending data, the host adapter driver is given a pointer to a buffer of data, which the driver converts to a scatter/gather list of physical memory segments and are passed to the host adapter. From there on, the adapter takes over and transfers all the data without further CPU intervention, posting an interrupt when it is finished with the whole buffer. The TCP/IP stack gets a similar pointer to a buffer, but has to generate headers for encapsulation. Part of that process involves reading every byte to form the TCP checksum. The user buffer is logically broken into 1500 byte (or so) chunks and passed to the driver, one chunk at a time. A good implementation doesn""t actually have to copy anything, it just sends a set of scatter gather pointers to the driver, one for the chunk of data to be sent in a packet, and a couple for the TCP and IP headers. These are converted to physical addresses by the driver, and sent to the NIC, which then transmits the data packet and then requests the next one (either through an interrupt or by pulling the information off of a linked list). The bottom line for a typical 4K data buffer is that a (SCSI command block) SCB and one or two element S/G (scatter/gather) list is passed to the host adapter, while three separate packets, with a total of at least 9 S/G pointers are passed to the NIC, plus every byte of the data and headers has to be read to form the IP checksum.
It is even worse on the receive side, because it is unknown as to which user buffer to place the received data into until the headers are inspected. While some recent NIC chips can separate the TCP/IP header from the rest of the data packet and give the host a few microseconds to tell it where to put the rest of the packet, allowing direct DMA to the user buffer, most implementations put the received data in a driver buffer, then copy the user data to the user""s buffer after inspecting the header. As with sending, a pass over the data and headers is also needed to verify the TCP checksum.
In view of the foregoing, there is a need for a networking protocol that removes the overhead issues produced by conventional TCP. There is also a need for a transport protocol that is optimized for storage and enables fast and efficient utilization in local area networks, wide area networks, and over the Internet.
Broadly speaking, the present invention fills these needs by providing an Ethernet storage protocol (ESP) that streamlines the processing and communication of storage data and removes the overhead associated with prior art communication protocol techniques. Preferably, the ESP is configured to efficiently encapsulate the data with an efficient lightweight transport protocol, and is configured to provide unlimited scaleablity to storage resources. In one preferred embodiment, the ESP is configured to encapsulate SCSI data and communicate the SCSI data over an Ethernet network. The communication is preferably accomplished by enabling host computers and target peripheral devices (e.g., storage drives) to operate using the ESP. It should be appreciated that the present invention can be implemented in numerous ways, including as a process, an apparatus, a system, a device, a method, or a computer readable medium. Several inventive embodiments of the present invention are described below.
In one embodiment, a method for processing storage data that is to be communicated over a network is disclosed. Initially, storage data to be transmitted over a network is provided. Once the data is provided, the method includes serializing the storage data using storage encapsulation protocol headers to generated serialized storage data. Then, the serialized storage data is encapsulated using a simple transport protocol to generate simple transport protocol data segments of the storage data. At this point, each of the simple transport protocol data segments are encapsulated into Ethernet frames. The Ethernet frames can then be communicated over standard Ethernet hubs and switches to enable communication to a selected storage target.
In another embodiment, an Ethernet storage protocol (ESP) enabled network is disclosed. The ESP network includes a host computer having host interface circuitry for communicating data in an Ethernet network. The host interface circuitry is configured to receive parallel data from the host computer provided in accordance with a peripheral device protocol (e.g., SCSI). The parallel data is serialized and encapsulated into Ethernet frames for transmission over the Ethernet network. The ESP network also includes a target having target interface circuitry for communicating data in the Ethernet network. The target interface circuitry is configured to receive the encapsulated serialized parallel data and reconstruct the serialized parallel data into the peripheral device protocol. In this embodiment, the peripheral device protocol is one of a SCSI protocol, an ATAPI protocol, and a UDMA protocol. In addition, the serializing in this embodiment includes attaching storage encapsulation protocol (SEP) headers to portions of the parallel data and attaching simple transport protocol (STP) headers to one or more portions of the parallel data having the SEP headers, such that each STP header defines an STP packet. Thus, transmission over the Ethernet network does not require the TCP protocol, which is large on overhead and inefficient for storage data transfers in a local area network environment.
In yet a further embodiment, a method for communicating storage data over an Ethernet network using a non-TCP lightweight transport protocol is disclosed. The method includes providing data having a peripheral device protocol format, and the data is configured to be communicated over the Ethernet network. The method then proceeds to select portions of the data and attach storage encapsulation (SEP) headers to the selected portions of the data. The method now attaches simple transport protocol (STP) headers to one or more of the selected portions having the SEP headers to produce STP packets. Once the STP packets are defined, the method moves to encapsulate the STP packets into Ethernet frames for communication over the Ethernet network. In this embodiment, the peripheral device protocol format is one of a SCSI format, an ATAPI format, and a UDMA format. Further, each of the STP headers are configured to include at least a handle field, a type field, a length field, a sequence number field, and an acknowledgment field.
In still a further embodiment, a network for efficiently communicating storage data is disclosed. The network includes a cluster server system having a plurality of host server systems, and each of the host server systems have a peripheral interface card for facilitating storage data communication in accordance with an Ethernet Storage protocol (ESP). A storage box is also included having one or more storage peripheral devices. The storage box includes a bridge circuit for facilitating storage data communication in accordance with the ESP. The network is interconnected by way of an Ethernet switch which is configured to connect the cluster server system to the storage box. In this embodiment, the ESP is configured to: (i) select portions of the storage data; (ii) attach storage encapsulation protocol (SEP) headers to the selected portions of the storage data; (iii) attach simple transport protocol (STP) headers to one or more of the selected portions having the SEP headers to produce STP packets; and (iv) encapsulate the STP packets into Ethernet frames for communication over the Ethernet network including the cluster server system, the storage box, and the Ethernet switch. An added advantage of this embodiment is the ability of the ESP to add an IP header after the STP header for communication over an ISO level 3 router or level 3 switch.
In yet a further embodiment, a storage area network (SAN) is disclosed. The SAN includes a server system including one or more host computer systems. Each host computer system includes network interface circuitry and host peripheral interface circuitry. The network interface circuitry is configured to communicate data using a TCP protocol and the host peripheral interface circuitry is configured to communicate data using an Ethernet storage protocol (ESP). A storage box is also provided having one or more storage drives, and the storage box has a bridge circuit for communicating data using the ESP. The network also includes an Ethernet switch for communicating the server system to the storage box. The ESP is configured to: (i) select portions of the data; (ii) attach storage encapsulation protocol (SEP) headers to the selected portions of the data; (iii) attach simple transport protocol (STP) headers to one or more of the selected portions having the SEP headers to produce STP packets; and (iv) encapsulate the STP packets into Ethernet frames for communication over the network including the Ethernet switch. In this network environment, one or more desk top computers may be connected to the network interface circuitry of the server system. The desk top computers have standard network interface cards (NICs) for communicating standard Ethernet frames to and from the server system. The ESP is configured to add an IP header after the STP header of the STP packets for communication over one of a level 3 router and a level 3 switch. In this embodiment, each of the one or more host computer systems can be servers that are not necessarily homogeneous (i.e., each can operate using different operating systems like Windows(trademark) NT, Windows(trademark) 2000, UNIX, Linux, Sun Microsystems Inc. Solaris, etc.). Further, each host computer system can be a cluster if desired. Of course, the cluster will include two or more homogeneous computer systems (i.e., running the same operating system).
The advantages of the present invention are many and substantial. Most notably, the Ethernet storage protocol (ESP) of the present invention simplifies the communication elements needed to transfer data over a network and enables nearly unlimited scaleablity. The ESP preferably implements a simple transport protocol (STP) that requires less CPU processing than conventional TCP. It is estimated that CPU utilization for networks using ESP may be as small as {fraction (1/5)} of networks using TCP. In a more preferred embodiment, the ESP will be implemented primarily using hardware and simple software drivers in order to further limit CPU requirements. The ESP also preferably takes advantage of a storage encapsulation protocol (SEP) which is configured to encapsulate portions of storage data, such as SCSI data, ATAPI data, UDMA data, etc. In communication, senders and targets establish communication sessions by exchanging handles, which are used to identify the senders and targets in subsequent communication transactions. Once a session is open, the session preferably will remain open for the entire time the target and host are connected to the ESP network. Another advantage of the present invention is that Ethernet frames are counted to determine whether packets have successfully been transferred. This is substantially more efficient than prior art techniques utilizing TCP, which rely on byte counting and complicated time-out calculations.
The ESP of the present invention opens up the ability to share large pools of storage utilizing standard Ethernet equipment. The ESP network preferably includes host computers having peripheral interface cards (PICs) and storage targets, each capable of operating the ESP. In one embodiment, the targets can be native ESP devices having circuitry for operating the ESP operations. In other embodiments, off-the-shelf storage drives can be used in conjunction with a bridge circuit that can run the ESP.