01 May 2004
Common Internet file system a valued tool.
By Ron Fredericks
The Common Internet File System (CIFS) protocol has become a very useful data sharing protocol for plant process, monitor, and control sites, as well as industrial device manufacturers.
The usefulness is in large part due to the availability of CIFS for embedded and real-time operating systems. CIFS is the default network file system standard for all Microsoft Windows computers.
CIFS protocol is also available for nearly all Unix computer systems, including Linux, as a result of the open source product called Samba. Samba provides network file sharing and printer sharing services compatible with Microsoft's CIFS protocol. When a Linux computer shares files using Samba with other Unix and Windows computers, many of the differences between the files, printers, and file systems themselves become transparent as a result of the CIFS.
Finally there is a common protocol that a plant operator, a business manager, and an automated instrument device can use to cost effectively exchange data. The Windows computer, the Unix or Linux computer, and the embedded devices on the plant floor need add no additional software to find, share, and print data when the diverse operating systems become unified data shares on the network using CIFS middleware.
There are many industrial connectivity protocols and standards committees to maintain and evolve them. The industrial operations manager has to consider the advantages and disadvantages of each available protocol when installing new equipment. The consideration to choose a specific industrial protocol might be based on the following criteria: the enhancement of existing connectivity solutions on the plant floor, the ability to control embedded devices in real time, or the ability to bring more production facts into the business offices.
The industrial protocols available today conform to known standards and are robust and useful in managing some of the criteria described above.
The choice of industrial protocol depends on the desired function such as real-time control, client versus server needs, and location in the plant such as sensor and measurement devices, process control, or business management. Meanwhile, the ideal choice of industrial protocol in a given plant might change based on plant need. There is one standard common to the entire plant called Ethernet. Many of the industrial protocols also take advantage of Ethernet as the data link layer. Nearly all the office computers in use for industrial management or business management use Ethernet as the data link layer for their local area networks as well.
The Common Internet File System is a practical file and printer sharing protocol adopted by the Open Group (formally X/Open) for PC and Unix interoperability in 1992. Later Microsoft contributed to the standard with a definition of server message block (SMB) and NetBIOS standards (RFC 1001 and 1002), and it coined the umbrella name known as CIFS. All Microsoft Windows operating systems include CIFS client and server protocols built into the operating system. The inclusion of CIFS as part of the Windows standard makes the adoption of CIFS protocol for other operating systems a time-saving feature for users of computer equipment.
The Samba application is an open source/free software suite that provides seamless file and print services to SMB/CIFS clients for Unix operating systems. Samba applications are available for most process-based Unix operating systems including Linux. The Samba application has made interoperability between Unix and Windows office computers and servers on local area networks, wide area networks, and enterprise systems fairly easy to manage. Microsoft and Samba interoperability includes a provision for computers to locate each other on the network with CIFS browsing services. File sharing on multiple Windows computers is very easy to manage using the basic services offered by "My Network Neighborhood" utilities built into Windows and similar command line calls from Samba. Cost-effective sharing of printers and files became possible, as these data shares could now be located on various Unix, Linux, and Windows computers as a result of CIFS middleware availability on all office computers and enterprise servers. What was missing was a way to include embedded devices into the CIFS-enabled network.
The CIFS protocol just became available for embedded devices. First, the CIFS protocol had to scale down in size, but at the same time it had to include multitasking features to meet the needs of embedded devices such as real-time, deterministic response times, small memory footprints, and a large variety of microprocessor–file system combinations. The development of CIFS for embedded devices required a new approach compared to Microsoft CIFS or Unix Samba applications, because the protocol defines a large number of services that are not easy to scale down to the stringent requirements of the industrial embedded device market. The challenge of building a client and server CIFS protocol has been met, and now there are a number of commercially available embedded CIFS middleware products available.
Today a manufacturer of industrial devices and the user of industrial devices can adopt the CIFS standard, taking advantage of network file sharing and remote printer resources throughout the industrial plant—from the low-level embedded device to engineering control and monitoring operations to the business office or over the Internet.
The factory can divide into three major functional areas based on the type of computer and operating system used:
- Office or business systems
- Process monitoring and control
- Embedded devices
The office computer systems in a factory are the same computers used in any office. The operating systems are a mix of Microsoft Windows and various Unix and Linux operating systems.
Ethernet interfaces support TCP/IP to form convenient networks for sharing data in the office. CIFS and its associated browser service allow you to share files and printers as an easy-to-use network application. Typical shared data of interest for the office includes accounting for plant losses, plant production schedules, and performance reviews, as well as office productivity applications such as communication with employees and other companies, data storage, and word processing.
Those office functions would increase and cost of data management would go down if production data could come from the other parts of the plant using the same file sharing features offered by CIFS. With the availability of CIFS for embedded devices located around the plant floor, automated data sharing is now possible from many more devices.
The industrial control centers within a manufacturing plant consist of a wider range of computers than what is available in the business office. These industrial computers must run in an environment that is more rugged, where changes in temperature, humidity, and the chemical and electrical environment are possible.
The operating systems may be Windows or Unix/Linux, but there would also be other computers that require specialized input and display requirements where embedded operating systems are better suited.
Typical functions performed by process and control computers include the need to coordinate the various resources in the plant during the manufacturing process. Other control computers may require no human interaction at all, such as a communication switch or safety systems that move information or activate equipment in the plant in real time from specialized control applications that may also integrate with a human-machine interface (HMI) application. The control functions performed by these computers might use fast Ethernet, TCP/IP and CIFS, or a Unix network file sharing system application protocol for basic file and printer services. The real-time control of embedded devices that use a number of specialized protocols is one of the main functions for these control systems. The demand for real-time control of specialized embedded devices is one of the main market drivers for specialized industrial protocols where CIFS alone is not effective.
Here is how various network layers cooperate together. CIFS functions are in pink, and the functions supporting EtherNet/IP are in blue.
However, having CIFS protocol available on the embedded factory device as well as in the control computers offers many advantages in part simply because CIFS is already available on the control computer and the office computer. First, the production data managed by process monitor and control computers can go to the office network for production review and plant loss management. Second, the ability to send test scripts, production control sequences, or device calibration files to and from the engineering control workstation is exactly the type of services the CIFS protocol was originally designed to perform. File sharing can take place even if the file system on each computer is different, such as a NTFS file system on a Windows computer, an xfs2 file system on a Linux computer, and a flash file system on an embedded device. Third, knowing what devices on the plant floor are in service and working properly can be a challenge. The CIFS network browsing feature provides an automated way for the plant engineer to see what devices are available. Installing new devices on the plant floor can take advantage of this feature as well, because IP addresses and subnet masks are transparent to the user with the help of CIFS. The user would see computer names organized into work groups, and domains following the Microsoft "My Network Neighborhood" model. A fourth advantage is that the network services provided by CIFS can enhance the use of the existing industrial protocols.
The CIFS network browsing feature provides a new service for OPC servers on embedded devices. Sometimes it is necessary for an OPC server to locate and initialize OPC clients on remote engineering workstations. With a CIFS client running on the embedded device along with the OPC server, a synergistic set of features becomes available. The two protocols, OPC and CIFS, are synergistic, because they use the Ethernet interface and TCP/IP networking protocol while providing real-time client and server functions from the embedded device to the engineer's control computer. The OPC example described here demonstrates the cooperative value of using CIFS on embedded devices and the cost reduction inherent in using existing standards to solve connectivity problems.
A fifth advantage to using CIFS on embedded devices comes from the device manufacturer's perspective. How does a device manufacturer decide what industrial protocol to implement on a particular embedded device for plant use? Perhaps one plant or customer uses one standard such as EtherNet/IP while another uses OPC or DeviceNet for a particular measurement device. When a manufacturer builds the embedded device with the core operating system along with CIFS server, the manufacturer can make the final choice of an industrial protocol targeted for a specific plant or customer during the sales cycle. Once the organization establishes the desired features and specific protocols, the final application can move to the embedded device using the CIFS client feature on a Windows or Unix workstation to the targeted embedded device that includes an embedded CIFS server. The actual process of customizing the embedded device is to drag an application folder from a developer's directory on a software engineer's computer to the firmware folder on the embedded appliance. A similar "drag and drop" technique could work for field support and firmware maintenance upgrades.
An embedded device using the CIFS protocol.
The CIFS protocol consists of several services.
- NetBIOS over TCP/IP
- Work group/domain browser (name discovery)
- Network file server
- Network file client
- Remote services, which include registry management, print queue management, and network log on and challenge/response security
NetBIOS over TCP/IP is an alternative technology developed by Microsoft. A name service provides broadcasting and Windows Internet naming service based on user datagram protocol (UDP) packets.
Two communication services are also provided. The datagram service uses UDP, and sessions support communicates via TCP. UDP packets offer a real-time method of broadcasting over the network, while TCP packets provide a reliable messaging service. The overall purpose of NetBIOS is to provide a network browsing application that resolves IP addresses into Windows computer names. The work group/domain browser is a CIFS application that organizes computers found on the network by work group or domain. The NetBIOS session layer services and browser application work together to identify CIFS-enabled computers and devices on the plant's network or networks.
The CIFS/SMB network file server and client applications provide file sharing from local computer to remote computer or from remote computer to local computer, respectively. You can access local files by remote computers as a result of the CIFS server services. The folder icon represents the remote files available for use by the embedded device. These remote files are available as a result of the CIFS client services. A device on the plant floor that includes a CIFS server can share its local file system with other computer users and devices on the network. A device on the plant floor that includes a CIFS client can share remote computer files as if these files were locally present on the embedded device.
The remote registry service is an intelligent way to access shared files on the network. By using this service, you can control file permissions such as read only, hidden, or read/write access. There are two security features included with the CIFS standard in addition to the registry service. The network log on feature can protect an embedded device's shared files from unauthorized access. The other security feature is a challenge/response mechanism based on an encryption key. These are the same basic security services supported by a network of Windows computers in an office network.
CIFS in action
A creamery is a milk processing plant where raw milk is collected from local farms and stored in receiving tanks. At one creamery, the raw milk separates into a cream tank and a skim tank. A pasteurizer or engineer prepares a series of commands using the control equipment designed as an HMI application to select a type of milk to bottle such as skim, low fat, or regular milk. During the bottling process, metering pumps blend the raw skim milk and raw cream milk together into the desired proportions, pasteurize, homogenize, and bottle the final milk product.
This application focuses on the measurement of the blended milk using an automated infrared spectroscopy instrument inserted into the milk line. When the test result is too high or low, a feedback mechanism signals the control system to meter more or less cream with the skim such that the bottled milk has the correct amount of fat for the milk type.
Before CIFS went into the feedback measurement loop, a 4–20 mA current loop interface created a variable analog signal that a programmable logic controller (PLC) interpreted, which in turn sent signals to the metering pumps with the support of an HMI computer controller. This method of process monitoring and control only worked accurately when plant personnel kept the infrared spectroscopy instrument calibrated to read milk fat values accurately every twenty minutes or so.
Meanwhile, the 4–20 mA current loop interface sending the milk fat results to the PLC also required calibration to convert the milk fat values to a predetermined current level every few weeks. The plant operations manager was responsible for efficiency of the milk bottling process. The system printed results of fat loss due to poorly calibrated infrared measurements the next day after workers manually entered fat test results from selected milk bottles before shipping the finished products to grocery stores around the region.
This milk processing method was advanced for its time, but very labor intensive.
Calibration of the milk analyzer was cumbersome, and the additional calibration step for the electrical interface between milk analyzer and PLC created more errors during the processing cycle. The financial results for daily production came the next day after it was too late to take corrective action.
Replacing the 4–20 mA current loop interface with an Ethernet interface along with an embedded operating system and CIFS server middleware made a significant improvement in plant operations. Now the calibration of the instrument can occur remotely.
A milk standard with known values can go into the infrared spectroscopy milk analyzer, and a pasteurizer can remotely adjust the calibration file based on slope and intercept equations. The adjusted calibration values copy to the milk analyzer using the CIFS client protocol available on the pasteurizer's Windows computer. The test values collected by the milk analyzer go on the PLC's file system using the CIFS server protocol located on the milk analyzer and CIFS server protocol on the PLC device.
By not using the 4–20 mA current loop, the engineers were able to eliminate calibration errors. Finally, the test results of the milk during the bottling process are in a text file that an office computer can directly access using the CIFS client protocol on the office computer. The text file contains a periodic sampling of milk results during the bottling process. The office computer can import this text file directly into a spreadsheet for calculation of plant loss data and suggestions on ways to im-prove production before the pasteurizer prepares the next product for bottling.
CFIS has emerged as a practical file sharing, plant computer and embedded device network browsing, and exchange of data protocol for use by industrial manufacturers and processing plants.
By replacing proprietary instrument protocols with Ethernet interfaces, while taking advantage of the remote file sharing features of the CIFS protocol, several degrees of efficiency occurred in the production of milk at the creamery. A user can calibrate measurement devices remotely, and data can cross from the measurement device to the control computer. In addition, the office computer can use plant processing efficiency data accounting of losses not only during production but also for corrective action before generating further losses.
Behind the byline
Ron Fredericks is U.S. country manager for Sunnyvale, Calif.–based Visuality Systems, Ltd.