Cost effective and simple control and automation

This post is a translation of an article originally appearing in SPS-MAGAZIN 8 2016. The original article can be found here.

The Institute of Fluid Mechanics at the Friedrich-Alexander-Universität Erlangen-Nürnberg (FAU) has developed an automation system that meets the requirements for testing of pilot-scale plants while still giving the flexibility needed for research. The following report describes the system, which is based on Arduino and Raspberry Pi.

Authors: Liam Pettigrew, Rolf Zech, Prof. Dr.-Ing. habil. Antonio Delgado

The Institute of Fluid Mechanics at the FAU in Erlangen was looking for a cost-effective yet easy-to-use solution for automation of laboratory and pilot scale processes. It was decided to develop a system that was based on open-source hardware and software. Open-source hardware systems for automation have been used by hobbyists and developers for many years and cannot be compared with larger industrial control systems. Open-source hardware usually offers only a limited number of digital and analog inputs and outputs, which puts them in the compact controller category. An alternative system that implements existing open-source hardware but removes their limitations was developed and built by engineers and technicians at the Institute of Fluid Mechanics. This system is modular, flexible, extensible, inexpensive and easy to program. The Arduino platform was implemented as the controller for the system.

Design of the lab-scale system. An optional extension is shown for future expandability. Multiple systems can be connected over the Ethernet interface. Connection over serial USB is possible directly with a PC rather than using a Raspberry Pi. The process devices shown are for example only. (Figure: Friedrich-Alexander-Universität Erlangen-Nürnberg)

Industry related research

At universities and in laboratories, students and researchers often need to control and automate processes for research projects under tight deadlines. The students and researchers are specialists in their fields, but have little or no experience with professional PLC hardware and software. It is therefore very difficult for them to familiarize themselves with the complicated instrumentation and software in short periods of time. The question can also be raised if a professional automation system is required for smaller research projects. However, industrial partners often wish to see research results that are application-orientated and compatible with industry standards, where an appropriate control system with a high degree of accuracy manages everything.

Quick, easy and cheap

Process automation in research with industry partners must be able to be implemented quickly, so that scientists can concentrate on the process being studied in proper detail. An easy-to-use programming language, that is already well-known from other applications, is a prerequisite. The implementation of the automation system can be further simplified with the free availability of libraries and examples for quickly completing different tasks. Data acquisition and system control should use methods that are compatible with standard software that the user does not need to newly learn. A big challenge for smaller research projects is the tight budget and timeline given for the implementation of process control when the research itself is not focused on automation. Therefore, a PLC based automation solution must be inexpensive, license-free and easily understandable.

Free flow of information

Although commercial solutions for compact control already exist (E.g. Siemens Logo, Rockwell MicroLogix or Eaton easy, etc.), they are proprietary and protected systems. Flexible solutions, such as those often needed in research but which may not be typical in industry, require bypass capabilities and means of variation. Problems that often occur during research can, by using open-source hardware and software, more easily be solved with access to system information and the large communities on the internet where ideas and solutions are openly and freely exchanged.

Housing for the Arduino module. The compact design allows for easy access to the USB port, I2C connectors and the 24V power supply. (Photo: Friedrich-Alexander-Universität Erlangen-Nürnberg)

Arduino and Raspberry Pi

The Arduino is a low cost microcontroller board. It was originally developed in 2005 as a teaching tool for students at the Interaction Design Institute Ivrea. The Arduino has since become one of the most popular ‘do-it-yourself’ components in the world. Over 700,000 official boards had been registered when last recorded in 2013. The Raspberry Pi is a low cost single board computer in credit card format, which was developed in 2009 in the UK by the Raspberry Pi Foundation to promote the study of computer science in schools. About 5 million Raspberry Pis had been sold in the three years since their inception, making it the best-selling British computer. The strength of these two modules is the good combination of open-source electronics and software, which includes freely available source code and an easy-to-use and free development environment. Other components produced by companies such as Texas Instruments and Infineon are similarly constructed and can be implemented just as easily.

Modules for control

The system developed by the Institute of Fluid Mechanics is composed of individual modules, which are interconnected via an I2C bus. The Arduino operates as the controller module, while the other modules act as interface circuits for digital or analog inputs and outputs. The modules also act as measurement amplifiers for different sensor technologies. Each module has an address through which it can be controlled, where 8 digital output modules containing 8 switching channels each (certain modules contain 16 channels) can switch up to 128 channels. Each module has an I2C bus controller with switch amplifiers, relays, and contactors where small loads of up to 100 mA per channel can be controlled directly. High side switching stages allow for conventional ‘relay to ground’ wiring. Analog modules can process up to 64 channels using the available addresses. Another I2C bus controller type allows for a further increase of inputs and outputs by 64 or 128 channels. A multiplexer and bus driver allows for the bus system and structure to be further expanded and developed. As can be seen in the pictures, the modules are contained in DIN rail housings with plug-in terminals. The housing width for each module is 22.5mm. The supply voltage can be anywhere between 12 and 30 Volts (typically 24 VDC), therefore meeting electrical control cabinet requirements. The programming and connection of the controller with a PC is through the front of the module via USB is possible. A module for a Raspberry Pi allows it to be installed as a server module within the cabinet. The server uses a custom Java software that sends commands and collects all data from the distributed Arduino controller modules.

Finished modules in a control cabinet. The 24V power supply and I2C bus connect the modules on the upper side. Below are the I/O connections for the individual modules. (Photo: Friedrich-Alexander-Universität Erlangen-Nürnberg)

Open PLC without borders

Due to the wide range of addresses available for modules, enough channels are available for larger systems. The modular design allows for flexibility in construction, i.e. the PLC could consist of only analog or digital channels if required. The I2C bus was introduced by the company Philips in the 80s for television systems and is today used in everything from chip card readers and household appliances to flashing lights in the automotive industry. Data transfer rates and the bus capacitance (capacitive load) can be limited when using I2C. However, this can be compensated by using suitable components and circuits. The newest generation of Arduino microcontrollers are 32-bit, have a much larger memory and a higher clock speed making them more suitable for complex projects.