Teknor Apex uses extruders for all of its production. These extruders are made up of barrels or zones and a screw. These extruders must heat raw materials to upwards of 400⁰ F. Once the process is underway, each zone must then remove heat from the process. The company has grown a great deal over its 90 year history and the methods of controlling these temperature zones have become fragmented. They have also become less accurate. Maintaining tight control over the temperature of each zone is very important for the process, both in product quality and electrical efficiency. If a particular zone operates at +/- 10⁰ F, then the extruder is both heating and cooling too much. This makes quality control more difficult, produces off-grade product and costs money. We seek to develop a standard method of controlling each zone such that the temperature is controlled to +/- 1⁰ F. Inaccurate zone temperature control causes burning of product and poor mix quality. If there is a standard method of controlling each zone and collecting data on the temperature and the product quality downstream, process profiles for each line and each product can be created. This would help Teknor Apex to determine exactly what temperature settings, heat up rates and cool down rates allow each product to run most efficiently on each production line.
December Symposium
PLC Communication
When I first received the PLC it had a DHCP, using rs linx and a USB type A cable connecting straight to the PLC’s processor I was able to set the PLC to a static IP. After that I flashed the firmware to the newest version. Communication to the PLC now goes through the Ethernet/IP card via dummy switch. I also had to set my own IPv4 to the same subnet as the PLC in order to communicate through the switch.
Research
I have spent most of my hours on researching PID and PLC Ladder logic. From this research I have figured out that PID is the using the proportional, integral, and derivative of the temperature to predict where it will be going to adjust and not overshoot the temperature but reach it at a fast pace. My research in ladder logic has lead me to understand how rungs, timers, inputs and outputs function and the basics of how it works.
Researching thermocouples has helped me understand how the PLC thermocouple card works. This is important as I need to be measuring the temperature to set it and change the outputs to reach the best anticipated outcome.
Researching Extruders has been the most informative out of all the research I have done. This has helped me to understand how when the extruder starts that the heat will need to be all the way on until within about 5 or 10 degrees of the target temperature. After that the screws and the material inside create so much friction that most of the heat comes from that so then cooling is needed. Research of these has also helped me realize what is important in the simulations for starting and stopping along with making more accurate simulations so that once the test bench is completed testing heating and cooling and how the material might behave will be easier.
Basic PID Simulation
I created a very basic PID loop in ladder logic. The basic function was that there was a set point temperature, a current temperature or the process variable, and then the control variable or how much heat to add to the system. The system equation was .99PID_PV + .1PID_CV = PID_PV. This made it so that if PID turned the heat off then the temperature would go down. If the heat was turned on full then the temperature would go up by 1.09. This makes it so that the temperature goes up relative to what the current temperature is. I also implemented a master start and stop. This function allows you to start and stop every rung which is an important function.
Communication Between Ignition and PLC
After the Basic PID simulation was set up Ryan and I worked together to get the communication between the PLC and Ignition up and running. This involved have the PLC, my computer and his all connected to the dummy switch. Ryan was able to control the master start and stop along with setting the set point of the temperature and monitoring the temperature via the tags I gave him.
Basic PIDE Simulation
The PIDE simulation was programmed in function block diagram. A periodic function was used and the main routine was a ladder logic script that jumped to the PIDE sub routine. The function block PIDE had to be enabled and very similar to the PID there is a set point, process variable and control variable. The exact same formula was used as before .99PIDE_PV + .1PIDE_CV = PIDE_PV. The PIDE requires there to be some time before the temperature changes so I had to implement a (DEDT) function block which creates some deadtime between when the control variable changes and when it affects the process variable.
Advanced PID Simulation
The advanced PID simplifies the original PID a bit after learning more about ladder logic. This PID now takes into account heating and cooling. The main PID is done in ladder logic but the control variable is then sent to a Split Range Temperature Proportional (SRTP) to convert the output into heating in cooling. This does this by setting 50% as the middle so neither heating or cooling is on. If the control variable from the PID is less than 50% then the SRTP sets the cooling CV on. If the CV from the PID is greater than 50% then the SRTP sets the heating to be on and the cooling to be off. I also reimplemented the start and stop, last time it froze the PID at whatever it was currently at, now it sets the CV to 0 and cuts out the SRTP. This way the cooling is not stuck on. I also implemented an auto start where when first turning on the PID is allowed to set the PV but once it gets within the target temperature extra heat is added to simulate the friction inside the barrel. Similar to how the SRTP needs to be implemented it is in a periodic function that runs quickly at every 10 ms and the PID runs in a periodic function that runs every 100 ms. I also incorporated a sine wave into the process variable. This makes it a more robust system as it makes the temperature fluctuate. This is also more accurate to real world scenarios where the temperature of the room fluctuates affecting the temperature in the barrel. I have started working on and Advanced PIDE simulation to achieve a similar simulation that is more realistic and take into real world factors. I have set up the simulation better than before by placing the PIDE as the main program therefore no ladder logic is needed to jump to the sub routine.