The Desulpherizer control system was developed as an add on component to the Atrex Energy Solid Oxide Fuel cell product. It allowed JP8 jet fuel to be used with the fuel cell. This project was a contract for the Office of Navel Research, Department of the U.S. Navy. This was completed and delivered in January 2017. A commercial solid oxide fuel cell had never been run on jet fuel before.
Desulfurizer Reactor Vessel:
The reactor vessel is a metal box that contains 2 desulfurizer beds, each bed has an inlet and an outlet that allows fuel to be pumped thru at a high temperature and pressure, regulated by solenoid valves and stepper valves. The beds alternate, when one is removing sulfur the other is being purged of sulfur(regen). Inside each bed a materiel that has a high affinity to sulfur is used. When a bed is saturated with sulfur it is drained of fuel then high temperature air is pumped thru, to in effect, burn out the sulfur that has collected.
I was hired to write embedded software for the TI 2812 DSP, there was no mention of the project needing a GUI, but for my own testing I decided to develop the GUI. As it turned out, it was a necessary tool to have for the scientists as well. See below.
The reactor vessel is a metal box that contains 2 desulfurizer beds, each bed has an inlet and an outlet that allows fuel to be pumped thru at a high temperature and pressure, regulated by solenoid valves and stepper valves. The beds alternate, when one is removing sulfur the other is being purged of sulfur(regen). Inside each bed a materiel that has a high affinity to sulfur is used. When a bed is saturated with sulfur it is drained of fuel then high temperature air is pumped thru, to in effect, burn out the sulfur that has collected.
I was hired to write embedded software for the TI 2812 DSP, there was no mention of the project needing a GUI, but for my own testing I decided to develop the GUI. As it turned out, it was a necessary tool to have for the scientists as well. See below.
This complex operation of this process was controlled by firmware running on a TI embedded processor. There were a number of modes of operation in this process. E.G start up required bringing the reactor vessel up to operating temperature, then pressurize the bed depending on the last state of operation. If an emergency shutdown was preformed then startup would first need to clear out what cold fuel was in the vessel. Other modes included normal shutdown, bed switch, emergency shutdown, single bed operation, each of these had a manual operation and auto operation. In pause mode it would not do a complete shutdown but just bring it to an intermediate state. In the manual modes a user could set various parameters such and temperature, time and pressure. The manual modes were needed for testing of the individual components in development. Simulation modes were used when a major piece was missing, it allowed development to continue. There were also partial manual modes and several fault handling modes. There were numerous state machines implemented in firmware that controlled this. PID control was used to maintain the process during the runs.
The desulfurizer operates at temperatures upto around 500 degrees C and 250 PSI so with a flammable substance such as jet fuel, safety of operation is an important consideration. Certain critical areas such as Fault handling and emergency shutdown were refined to provide optimal handling. Regeneration of the fuel scrubing beds is the process by which the built up sulfer was removed by blasting very hot air thru the chambers, greater than 550 C. Regen process needed to follow a careful multi stage profile to achieve the desired result without damaging the system.
The operation of the desulfurizer was coordinated with the SOFC, which would send a message via CAN bus when it wanted the desulfurizer to start, stop etc.
When this fuelcell/desulfurizer system is deployed in the field, it needs to have a very simple operation, similar to a generator such as you might get from Home Depo. The marine's enlisted personnel basically want an ON/OFF switch and not much more. The photo shows the red emergency shutdown button and a black ON/OFF switch. But the desulfurizer units and other components were experimental so the staff researchers at Atrex energy needed to be able to have fine grained control over each aspect during development, and also needed to collect data on the numerous parameters, so I used my Linux laptop to run a GUI(which was developed using QT). This GUI/Laptop was connected to the embedded TI processor board thru an RS232 link. This GUI had a number of screens and monitored the continuous stream of messages providing information of the state of operation.
The CPLD/FPGA code was written in Verilog. This was used to control the stepper motors and was on a daughter board that I designed, shown below. I did schematics capture and component selection.
The CPLD/FPGA code was written in Verilog. This was used to control the stepper motors and was on a daughter board that I designed, shown below. I did schematics capture and component selection.
Note that the early version of the GUI software was run on a Windows laptop, but the serial port under Window was prone to hang, which was not good to loose COM part way into a run that took 5 hours. So I switched to Linux, which was very stable. The QT Creator can develop cross-platform GUI apps, that run on either Windows or Linux, it was an easy switch.
The 2 scientists asked for all data to be output to files for importing to an Excel spread sheet. But this rudimentary graph provided a look at how the run was progressing.
I implemented a dialog box for tuning the PID controller. In the slow moving temperature control application, it is relatively easy to tune for satisfactory results.