Software used with a programmable automation controller is designed specifically for the PAC. According to the ARC Advisory Group, generally credited with coining the term PAC, a PAC's defining characteristics include three elements directly related to software:
  • Tightly integrated controller hardware and software.
  • single development platform, using common tagging and a single database for development tasks across a range of disciplines.
  • Programmability using software tools capable of designing control programs to support a process that "flows" across several machines or units.
Opto 22 offers PAC software for automation

Tightly integrated hardware and software

When hardware and software are designed together, systems are easier and faster to build. It's not necessary to debug driver problems or fix incompatibilities, because no drivers are required and the parts of the system are built to work together.

If problems occur, you only have to call one company for product support or visit one website for information. Documentation is usually more complete, as well.

In some cases lower software cost may be another plus, as some PAC manufacturers, such as Opto 22, include surprisingly capable automation software with a PAC purchase.

A single development platform

The software built for a PAC is not just integrated with the hardware it runs on. It's also internally integrated: it provides not only an integrated development environment (IDE) for programming but also a suite of related programs for HMI (human machine interface) development and other purposes.

The IDE is a single software program that handles everything related to control programming, such as editing, compiling, debugging. A software suite, made up of two or more software applications, offers a similar look and feel in all of them, so that familiarity with one helps you use the others more easily.

More importantly, the software applications in the suite work together behind the scenes in ways that significantly reduce development time.

Common tagging means that names and definitions you set up in one of the IDE's applications are also used in the others. For example, if you define a string variable in the control development software, that same definition will be used in the human-machine interface (HMI) development software. If you name a digital I/O point in the control software, that name will automatically appear when you're configuring OPC data communications.

Because all these common tags you define are kept in a single database that all the applications in the software suite use, you don't have to reenter tags or maintain and reconcile lists of them. As a result, development tasks can be finished more quickly and easily.


Supporting a process that flows


Because a key defining characteristic of PACs is that the same hardware can be used in multiple domains, including logic, motion, drives, and process control, it follows that the software must be capable of programming all control and monitoring tasks that must be done in multiple domains.

That means that the PAC software must handle discrete control, process control, motion control, remote monitoring, and data acquisition. And the software must let the developer mix and incorporate these as needed into control programs, so these programs can "flow" as the requirements of the application dictate.

A microbrewery shows how PAC software accommodates a complex process flow and integrates multiple domains into one system.For example, suppose your company is a microbrewery.

Here are just some of the requirements for producing your end product:
  • Water is piped in from a spring a couple of miles away, so you need to monitor the pressure and flow of that water as well as security at the spring (remote monitoring using analog and digital devices).
  • You measure water quality as it enters your facility, track this data over time, and store it in your company database (data acquisition, database connectivity).
  • You make more than one microbrew, so recipes, temperatures, and processing must vary (batch process control, distributed control). Operator interfaces provide interactive controls for technicians.
  • Quality control is essential to your reputation, so you test all products at several stages. Data on quality is kept as required by government health authorities (monitoring, more data acquisition and database connectivity).
  • In another building, the bottling line requires discrete control. As bottles come off the line, they are boxed and identified with RFID (radio-frequency identification) tags, then sent on to shipping.PAC software can control the bottling process from start to finish
  • In the separate shipping area, boxed stock automatically moves via conveyors (discrete control) based on RFID tags (serial device connectivity).
  • Temperatures in the storage area are controlled and monitored (PID loop control). Energy usage is monitored and building systems controlled throughout all buildings.
  • Production and inventory data go directly from machines and barcode readers to company computers; customer and shipping data flows in the opposite direction (database connectivity).

This microbrewery is just an example of how several different types of control in several different domains, to use ARC's term, are required by a modern industrial automation application.

Most industrial applications today are similarly varied. While the number of PACs needed will depend on application requirements, each PAC can be used in any domain or in multiple domains. Because the application requires processes that flow into each other over space and time, the PAC software accommodates that flow and integrates these multiple domains into one system.

PAC Project Software Suite

PAC Project Software suiteOpto 22's PAC Project software  Suite is an example of PAC software. Fully integrated with SNAP PAC controllers the suite includes control programming and HMI development software, plus optional OPC server and database connectivity software.

I/O points and variables you define while building a control program (called a control strategy) are stored in a single tagname database. When you open the HMI development, OPC server, or database connectivity software, those defined items are immediately available for use.

Control programming incorporates multiple domains by including commands for digital and analog; PID loop control; logical and mathematical operators; string handling; time/date and timers; event/reactions; communication with distributed I/O, peers, and computers on the network; testing and error handling. Motion control commands are also available. All these commands are in plain English and can be used in the control strategy you build, both in flowcharts and in scripting blocks within a flowchart.

More Resources for PACs