搜档网
当前位置:搜档网 › 可编程控制器中英文对照外文翻译文献

可编程控制器中英文对照外文翻译文献

中英文资料对照外文翻译

Programmable Logic Controllers (PLC)

1、Motivation

Programmable Logic Controllers (PLC), a computing device invented by Richard E. Morley in 1968, have been widely used in industry including manufacturing systems, transportation systems, chemical process facilities, and many others. At that time, the PLC replaced the hardwired logic with soft-wired logic or so-called relay ladder logic (RLL), a programming language visually resembling the hardwired logic, and reduced thereby the configuration time from 6 months down to 6 days [Moody and Morley, 1999].

Although PC based control has started to come into place, PLC based control will remain the technique to which the majority of industrial applications will adhere due to its higher performance, lower price, and superior reliability in harsh environments. Moreover, according to a study on the PLC market of Frost and Sullivan [1995], an increase of the annual sales volume to 15 million PLCs per year with the hardware value of more than 8 billion US dollars has been predicted, though the prices of computing hardware is steadily dropping. The inventor of the PLC, Richard E Morley, fairly considers the PLC market as a 5-billion industry at the present time.

Though PLCs are widely used in industrial practice, the programming of PLC based control systems is still very much relying on trial-and-error. Alike software engineering, PLC software design is facing the software dilemma or crisis in a similar way. Morley himself emphasized this aspect most forcefully by indicating [Moody and Morley, 1999, p. 110]:`If houses were built like software projects, a single woodpecker could destroy civilization.”

Particularly, practical problems in PLC programming are to eliminate software bugs and

to reduce the maintenance costs of old ladder logic programs. Though the hardware costs of PLCs are dropping continuously, reducing the scan time of the ladder logic is still an issue in industry so that low-cost PLCs can be used.

In general, the productivity in generating PLC is far behind compared to other domains, for instance, VLSI design, where efficient computer aided design tools are in practice. Existent software engineering methodologies are not necessarily applicable to the PLC based software design because PLC-programming requires a simultaneous consideration of hardware and software. The software design becomes, thereby, more and more the major cost driver. In many industrial design projects, more than 50% of the manpower allocated for the control system design and installation is scheduled for testing and debugging PLC programs [Rockwell, 1999].

In addition, current PLC based control systems are not properly designed to support the growing demand for flexibility and reconfigurability of manufacturing systems. A further problem, impelling the need for a systematic design methodology, is the increasing software complexity in large-scale projects.

PLCs (programmable logic controllers) are the control hubs for a wide variety of automated systems and processes. They contain multiple inputs and outputs that use transistors and other circuitry to simulate switches and relays to control equipment. They are programmable via software interfaced via standard computer interfaces and proprietary languages and network options.

Programmable logic controllers I/O channel specifications include total number of points, number of inputs and outputs, ability to expand, and maximum number of channels. Number of points is the sum of the inputs and the outputs. PLCs may be specified by any possible combination of these values. Expandable units may be stacked or linked together to increase total control capacity. Maximum number of channels refers to the maximum total number of input and output channels in an expanded system.

PLC system specifications to consider include scan time, number of instructions, data memory, and program memory. Scan time is the time required by the PLC to check the states of its inputs and outputs. Instructions are standard operations (such as math functions) available to PLC software. Data memory is the capacity for data storage. Program memory is the capacity for control software.

Available inputs for programmable logic controllers include DC, AC, analog,

thermocouple, RTD, frequency or pulse, transistor, and interrupt inputs. Outputs for PLCs include DC, AC, relay, analog, frequency or pulse, transistor, and triac. Programming options for PLCs include front panel, hand held, and computer.

Programmable logic controllers use a variety of software programming languages for control. These include IEC 61131-3, sequential function chart (SFC), function block diagram (FBD), ladder diagram (LD), structured text (ST), instruction list (IL), relay ladder logic (RLL), flow chart, C, and Basic. The IEC 61131-3 programming environment provides support for five languages specified by the global standard: Sequential Function Chart, Function Block Diagram, Ladder Diagram, Structured Text, and Instruction List. This allows for multi-vendor compatibility and multi-language programming. SFC is a graphical language that provides coordination of program sequences, supporting alternative sequence selections and parallel sequences. FBD uses a broad function library to build complex procedures in a graphical format. Standard math and logic functions may be coordinated with customizable communication and interface functions. LD is a graphic language for discrete control and interlocking logic. It is completely compatible with FBD for discrete function control. ST is a text language used for complex mathematical procedures and calculations less well suited to graphical languages. IL is a low-level language similar to assembly code. It is used in relatively simple logic instructions. Relay Ladder Logic (RLL), or ladder diagrams, is the primary programming language for programmable logic controllers (PLCs). Ladder logic programming is a graphical representation of the program designed to look like relay logic. Flow Chart is a graphical language that describes sequential operations in a controller sequence or application. It is used to build modular, reusable function libraries. C is a high level programming language suited to handle the most complex computation, sequential, and data logging tasks. It is typically developed and debugged on a PC. BASIC is a high level language used to handle mathematical, sequential, data capturing and interface functions.

Programmable logic controllers can also be specified with a number of computer interface options, network specifications and features. PLC power options, mounting options and environmental operating conditions are all also important to consider.

2、Resume

A PLC (programmable Logic Controller) is a device that was invented to replace the necessary sequential relay circuits for control.The PLC works by looking at its input and depending upon their state, turning on/off its outputs. The user enters a program, usually via software or programmer, which gives the desired results.

PLC is used in many "real world" applications. If there is industry present, chance are good that there is a PLC present. If you are involved in machining, packing, material handling, automated assembly or countless other industries, you are probably already using them. If you are not, you are wasting money and time. Almost any application that needs some type of electrical control has a need for a PLC.

For example, let's assume that when a switch turns on we want to turn a solenoid on for 5 second and then turn it off regardless of how long the switch is on for. We can do this with a simple external timer. But what if the process included 10 switches and solenoids? We should need 10 external times. What if the process also needed to count how many times the switch individually turned on? We need a lot of external counters.

As you can see the bigger the process the more of a need we have for a PLC. We can simply program the PLC to count its input and turn the solenoids on for the specified time.

We will take a look at what is considered to be the "top 20" PLC instructions. It can be safely estimated that with a firm understanding of these instructions one can solve more than 80% of the applications in existence.

Of course we will learn more than just these instruction to help you solve almost ALL potential PLC applications.

The PLC mainly consists of a CPU, memory areas, and appropriate circuits to receive input/output data. We can actually consider the PLC to be a box full of hundreds or thousands of separate relay, counters, times and data storage locations,Do these counters,timers, etc. really exist? No,they don't "physically" exist but rather they simulated and be considered software counters, timers, etc. . These internal relays are simulated through bit locations in registers.

What does each part do? Let me tell you.

Input Relays

These are connected to the outside world.They physically exsit and receive signals from switches,sensors,ect..Typically they are not relays but rather they are transistors.

Internal Utility Relays

These do not receive signals from the outside world nor do they physically exist.they are simulated relays and are what enables a PLC to eliminate external relays.There are also some

special relays that are dedicated to performing only one task.Some are always on while some are always off.Some are on only once during power-on and are typically used for initializing data that was stored.

Counters

These again do not physically exist. They are simulated counters and they can be programmed to count pulses.Typically these counters can count up,down or both up and down.Since they are simulated,they are limited in their counting speed.Some manufacturers also include high-speed counters that are hardware based.We think of these as physically existing.Most times these counters can count up,down or up and down.

Timers

These also do not physically exist.They come in many varieties and increments.The most common type is an on-delay type.Others include off-delays and both retentive and non-retentive types.Increments vary from 1ms through 1s.

Output Relays

There are connected to the outside world.They physically exist and send on/off signals to solenoids,lights,etc..They can be transistors,relays,or triacs depending upon the model chosen.

Data Storage

Typically there are registers assigned to simply store data.They are usually used as temporary storage for math or data manipulation.They can also typically be used to store data when power is removed form the PLC.Upon power-up they will still have the same contents as before power was moved.Very convenient and necessary!

A PLC works by continually scanning a program.We can think of this scan cycle as consisting of 3 important steps.There are typically more than 3 but we can focus on the important parts and not worry about the others,Typically the others are checking the system and updating the current internal counter and timer values.

Step 1 is to check input status,First the PLC takes a look at each input to determine if it is on off.In other words,is the sensor connected to the first input on?How about the third...It records this data into its memory to be used during the next step.

Step 2 is to execute program.Next the PLC executes your program one instruction at a time.Maybe your program said that if the first input was on then it should turn on the first

output.Since it already knows which inputs are on/off from the previous step,it will be able to decide whether the first output should be turned on based on the state of the first input.It will store the execution results for use later during the next step.

Step 3 is to update output status.Finally the PLC updates the status the outputs.It updates the outputs based on which inputs were on during the first step and the results executing your program during the second step.Based on the example in step 2 it would now turn on the first output because the first input was on and your program said to turn on the first output when this condition is true.

After the third step the PLC goes back to step one repeats the steps continuously.One scan time is defined as the time it takes to execute the 3 steps continuously.One scan time is defined as the time it takes to execute the 3 steps listed above.Thus a practical system is controlled to perform specified operations as desired.

3、PLC Status

The lack of keyboard, and other input-output devices is very noticeable on a PLC. On the front of the PLC there are normally limited status lights. Common lights indicate.

power on - this will be on whenever the PLC has power.

program running - this will often indicate if a program is running, or if no program is running.

fault - this will indicate when the PLC has experienced a major hardware or software problem.

These lights are normally used for debugging. Limited buttons will also be provided for PLC hardware. The most common will be a run/program switch that will be switched to program when maintenance is being conducted, and back to run when in production. This switch normally requires a key to keep unauthorized personnel from altering the PLC program or stopping execution. A PLC will almost never have an on-off switch or reset button on the front. This needs to be designed into the remainder of the system.

The status of the PLC can be detected by ladder logic also. It is common for programs to check to see if they are being executed for the first time, as shown in Figure 1. The ’first scan’ input will be true on the very first time the ladder logic is scanned, but false on every other scan. In this case the address for ’first scan’ in a PLC-5 is ’S2:1/14’. With the logic in the example the first scan will seal on ’light’, until ’clear’ is turned on. So the light will turn on after the PLC has been turned on, but it will turn off and stay off after ’clear’ is turned on.

The ’first scan’ bit is also referred to at the ’first pass’ bit.

Figure 1 An program that checks for the first scan of the PLC

4、Memory Types

There are a few basic types of computer memory that are in use today.

RAM (Random Access Memory) - this memory is fast, but it will lose its contents when power is lost, this is known as volatile memory. Every PLC uses this memory for the central CPU when running the PLC.

ROM (Read Only Memory) - this memory is permanent and cannot be erased. It is often used for storing the operating system for the PLC.

EPROM (Erasable Programmable Read Only Memory) - this is memory that can be programmed to behave like ROM, but it can be erased with ultraviolet light and reprogrammed.

EEPROM (Electronically Erasable Programmable Read Only Memory) –This memory can store programs like ROM. It can be programmed and erased using a voltage, so it is becoming more popular than EPROMs.

All PLCs use RAM for the CPU and ROM to store the basic operating system for the PLC. When the power is on the contents of the RAM will be kept, but the issue is what happens when power to the memory is lost. Originally PLC vendors used RAM with a battery so that the memory contents would not be lost if the power was lost. This method is still in use, but is losing favor. EPROMs have also been a popular choice for programming PLCs. The EPROM is programmed out of the PLC, and then placed in the PLC. When the PLC is turned on the ladder logic program on the EPROM is loaded into the PLC and run. This method can be very reliable, but the erasing and programming technique can be time consuming. EEPROM memories are a permanent part of the PLC, and programs can be stored in them like EPROM. Memory costs continue to drop, and newer types (such as flash memory) are becoming available, and these changes will continue to impact PLCs.

5、Objective and Significance of the Thesis

The objective of this thesis is to develop a systematic software design methodology for

PLC operated automation systems. The design methodology involves high-level description based on state transition models that treat automation control systems as discrete event systems, a stepwise design process, and set of design rules providing guidance and measurements to achieve a successful design. The tangible outcome of this research is to find a way to reduce the uncertainty in managing the control software development process, that is, reducing programming and debugging time and their variation, increasing flexibility of the automation systems, and enabling software reusability through modularity. The goal is to overcome shortcomings of current programming strategies that are based on the experience of the individual software developer.

A systematic approach to designing PLC software can overcome deficiencies in the traditional way of programming manufacturing control systems, and can have wide ramifications in several industrial applications. Automation control systems are modeled by formal languages or, equivalently, by state machines. Formal representations provide a high-level description of the behavior of the system to be controlled. State machines can be analytically evaluated as to whether or not they meet the desired goals. Secondly, a state machine description provides a structured representation to convey the logical requirements and constraints such as detailed safety rules. Thirdly, well-defined control systems design outcomes are conducive to automatic code generation- An ability to produce control software executable on commercial distinct logic controllers can reduce programming lead-time and labor cost. In particular, the thesis is relevant with respect to the following aspect: Customer-Driven Manufacturing

In modern manufacturing, systems are characterized by product and process innovation, become customer-driven and thus have to respond quickly to changing system requirements.

A major challenge is therefore to provide enabling technologies that can economically reconfigure automation control systems in response to changing needs and new opportunities. Design and operational knowledge can be reused in real-time, therefore, giving a significant competitive edge in industrial practice.

Higher Degree of Design Automation and Software Quality

Studies have shown that programming methodologies in automation systems have not been able to match rapid increase in use of computing resources. For instance, the

programming of PLCs still relies on a conventional programming style with ladder logic diagrams. As a result, the delays and resources in programming are a major stumbling stone for the progress of manufacturing industry. Testing and debugging may consume over 50% of the manpower allocated for the PLC program design. Standards [IEC 60848, 1999; IEC-61131-3, 1993; IEC 61499, 1998; ISO 15745-1, 1999] have been formed to fix and disseminate state-of-the-art design methods, but they normally cannot participate in advancing the knowledge of efficient program and system design.

A systematic approach will increase the level of design automation through reusing existing software components, and will provide methods to make large-scale system design manageable. Likewise, it will improve software quality and reliability and will be relevant to systems high security standards, especially those having hazardous impact on the environment such as airport control, and public railroads.

System Complexity

The software industry is regarded as a performance destructor and complexity generator. Steadily shrinking hardware prices spoils the need for software performance in terms of code optimization and efficiency. The result is that massive and less efficient software code on one hand outpaces the gains in hardware performance on the other hand. Secondly, software proliferates into complexity of unmanageable dimensions; software redesign and maintenance-essential in modern automation systems-becomes nearly impossible. Particularly, PLC programs have evolved from a couple lines of code 25 years ago to thousands of lines of code with a similar number of 1/O points. Increased safety, for instance new policies on fire protection, and the flexibility of modern automation systems add complexity to the program design process. Consequently, the life-cycle cost of software is a permanently growing fraction of the total cost. 80-90% of these costs are going into software maintenance, debugging, adaptation and expansion to meet changing needs [Simmons et al., 1998].

Design Theory Development

Today, the primary focus of most design research is based on mechanical or electrical products. One of the by-products of this proposed research is to enhance our fundamental understanding of design theory and methodology by extending it to the field of engineering systems design. A system design theory for large-scale and complex system is not yet fully

developed. Particularly, the question of how to simplify a complicated or complex design task has not been tackled in a scientific way. Furthermore, building a bridge between design theory and the latest epistemological outcomes of formal representations in computer sciences and operations research, such as discrete event system modeling, can advance future development in engineering design.

Application in Logical Hardware Design

From a logical perspective, PLC software design is similar to the hardware design of integrated circuits. Modern VLSI designs are extremely complex with several million parts and a product development time of 3 years [Whitney, 1996]. The design process is normally separated into a component design and a system design stage. At component design stage, single functions are designed and verified. At system design stage, components are aggregated and the whole system behavior and functionality is tested through simulation. In general, a complete verification is impossible. Hence, a systematic approach as exemplified for the PLC program design may impact the logical hardware design.

相关主题