Custom Software

Sandia Control Systems' primary business is software targeted at the process control and access control industries. On the process control side, we've worked on water and waste water treatment plants; deep-tunnel rainwater collection systems; desalting plants; manufacturing calibration equipment; and energy management systems. On the access control (or security) side, we've produced software for over a dozen nuclear power plants and government facilities.

  • We've written software for mini-computers, PCs, and several different embedded processors.

  • We've programmed hosts (Modcomp Classics, DEC VAX, HP 9000), front-end-processors (RT-VAX, PC), single-board-computers (PC-104 and large format from Adastra/Jumptec and WinSys), and custom boards.

  • We have experience with a variety of operating systems - Modcomp MAX III/IV/32, DEC VMS, DEC VAX-ELN, UNIX, DOS, General Software's Embedded DOS, WIN NT, WIN 2000.

  • Languages? FORTRAN 66, FORTRAN 77, C, C++, C#, Pascal, and several different flavors of assembly language. (Sorry, no Visual Basic. We have to have some standards.)

We really like programming the software interface to specialized hardware, such as firmware in RTUs or multiplexors. We've designed some of the hardware interfaces, too. Another area in which we like to work is communications, such as between host and FEP, or FEP and RTU. We do sockets. (Wouldn't it have been neat if that could have been followed by "but we don't do windows?" But we do Windows, so it didn't work.) In addition, we've done human-machine interface software and various aspects of real-time programming.

Custom Hardware: Emulators and Protocol Converters

Sandia Control Systems started off strictly as a software shop. We had our hands full maintaining legacy systems and writing new software for new computer systems. In the course of maintaining the legacy systems we encountered a new market (for us, at least): providing replacements for equipment too old, too obsolete, and too unavailable to be easily repaired or replaced.

We got into the replacement market. Simply put, we develop replacement hardware that looks and acts the same as the equipment to be replaced, only built with modern parts that are easy to procure and repair, and in most cases are less expensive as well. Our goal is to make the replacement so much like the original that no other changes to the system is required; the rest of the system continues to operate as if nothing has been changed, even during the physical replacement process.

Check out our Products page for more information on the types of products for which we provide emulators or converters. So far we've concentrated on hardware that connects to systems through serial links, but we're getting more ambitious. If you have a piece of equipment for which repair is no longer an option, please call us to see if it's something we can upgrade for you. If not, or if it's something for which someone else has already developed a product, perhaps we can tell you who to contact.

Other Services

We know that many legacy systems installed in the 80's and early 90's are approaching the end of their life-cycles, but with capital improvement dollars being hard to come by, many plants are pushing their replacement projects into future years. Sandia Control Systems can help keep these systems running until their replacements are installed.

If you have a legacy system that includes Modcomp or Computrol equipment, and have lost all of the "old-timers" that knew the equipment, we can provide some informal training that can bring new people up to speed, at least on the software side.

Sandia Control Systems also can perform a survey on your legacy Modcomp or Computrol-based system, to determine system life-cycle status, spare parts availability, repair availability, etc. We can also help direct you to the companies and people that are providing hardware training, repair services, and support, to help you get the most out of your old system.

Case Study #1 - Data Migration

Recently we completed a project that moves historical archive data from a 20 year old minicomputer, into a SQL database. The project consisted of programs running on two computers, written in four different languages, using two different operating systems. The PC-side program was written using Microsoft's Visual Studio .NET. We used C# to implement the graphical portion of the program, and C++ to handle the communications and data processing threads. The Modcomp side of the system was written in FORTRAN 66 and assembly language.

The project used an asynchronous serial communications link to transfer the data (because it was available, and therefore inexpensive). The communications protocol provided reliable data transfers, using positive-ACK handshaking, message sequence numbers and checksums.

The PC software provided most of the operator interface, allowing the operator to select the historical data to be transferred. The Modcomp software collected the data from the database, formatted it, and transmitted it across the link, where the PC wrote the data to an intermediate file (that was readable with a text editor). The operator could then select the files to be moved to the SQL database, select which SQL database was to be used to store the data, create new SQL databases, delete databases, etc.

This program provides a long-term storage solution for historical data that is independant of the legacy system that created the data. Because the data is stored in an SQL database, it also allows the data to be manipulated more easily and in more ways than was provided by the legacy system's report generation facility. Since retention of, and access to, the data is mandated by federal law, it will eliminate the need to keep a portion of the legacy system running after the system is replaced.

Case Study #2 - Hardare Replacement

Sandia Control Systems has a customer with a 20 year-old plant process computer that originally was designed with a Dataprinter chaintrain line printer. At the time, these were the fastest line printers available, using a parallel interface that was capable of burst transfer rates of 500,000 bytes per second.

Chaintrain printers are hard (if not impossible) to come by these days, and repairing 20 year-old printers isn't any easier. Our customer had already decided to use PCs to capture and display the data that had traditionally gone to alarm/event and high-speed line printers. What they needed was a way to convert the Dataprinter interface provided by the process computer's existing controller to a standard RS-232 output.

We designed a protocol converter that connects to the controller's parallel interface on one side, and connects to the data logging PC's serial port on the other. On the controller side, the protocol converter accepts and generates the same control signals as the chaintrain printer. On the PC side, the serial port is capable of transmitting data at up to 56 Kbaud, and accepts CTS/RTS hardware flow control as well XON/XOFF software flow control.

Is there a big market for this product? We don't know for sure. Before undertaking the product development we conducted a fairly thorough web search to see if anyone else had filled the niche, and couldn't find anyone. Whether that means that there isn't an additional market, or that we were the first to enter it, remains to be seen. (If you have the need for this protocol converter, give us a call!)

Last updated 05/28/2004.

Copyright © 2004 Sandia Control Systems, Inc. All Rights Reserved.