No announcement yet.

PID control on Productivity 1000 for Home Brewing

  • Filter
  • Time
  • Show
Clear All
new posts

  • ADC_CommTeam01
    When you set up the PID just use the value from the analog input ( or your scalled value if you like) as your Process Variable. If you want to use the HMI to enter the setpoint create an input object and direct it to an address in the plc. Then kust make sure you have values in your input and output range min and max values and upper and lower output limits and enable the pid and make sure it is in manual and do an auto tune from the PID tuning in the Application tools menu.

    I usually do the following steps to set one up quickly:

    1) Enter PID instruction
    2) Select Use Structure and give it a name such as PID.( Keeps you from having to enter all the fields manually.)
    3) uncheck use structure ( This will populate all the fields with structure tags)
    4) Enter a Loop name
    5) Replace the Setpoint field tag which is now PID.setpoint with teh tag I want to be the setpoint. So this is where you would put the tag you are changing in the HMI.
    6) Replace the Process Variable field tag with the tag I wish to use as my feedback. In your case it would be your scaled value from your analog input.)
    7) enter a constant for the input range max and input range min. Usually 100 and 0 for testing, but would ultimately be your max and min values you wish to set something.
    8) Enter a constant for the output range max and output range min. usually 100 and 0 for 100% and 0%
    9) Enter a constant for Output Upper limit and lower. Usually 100 and 0 for testing.

    You should then be able to down load and try doing a PID tuning.

    Leave a comment:

  • PID control on Productivity 1000 for Home Brewing

    New to the forum and first time posting. I am currently switching my propane home brewing system to an all electric PLC controlled system. I have no previous experience with PLC's or HMI's, so Ladder logic is pretty new to me.

    I recently purchased a Productivity 1000 CPU with a P1-15CDD2 Combo Discrete card and a P1-04ADL-1 Analog 0-20mA card. To start with, I will only have a total of 8 I/O in the system for now. Four Analog Inputs for my PT100's. Two Discrete Outputs for relay control of circulation pumps. Two Discrete Outputs for relay control of 5500 watt heating elements. In the future (no hurry till I get the present figured out) I would like to add a couple level switches in my kettles, a few solenoid valves and maybe a load cell for measuring volumes of kettles.

    So far I have been able to setup the four Analog PT100's by simply wiring them to the card and setting up the scale function to convert the 0-8191 value to Fahrenheit (nice feature on this series) then using another rung to give me an average over a half second so I don't get so much bounce on the reading. Done this on all four. I also have the two rungs complete for the relays that will control my small Chugger Pumps. Those were simple Out Coils with a NO and NC contacts using another NO to read the coil to maintain power to the coil. I am using AdvancedHMI as my interface. Once I figured out how to assign the Modbus addresses, it went pretty smooth. I tested out all the inputs with this HMI and they all seam to work well. Temps read accurately and I can energize and de-energize my relays though the simple HMI I have set up.

    Now we get to the point of where I am having problems. The last two discrete outputs to control my elements. One of the reasons I chose this controller was that it had built in PID function. Assigning tags and numbers to the PID has been very confusing to me. I printed out the document from the Help tab on the PID parameter entry box and have read through it, but still seems Greek to me when putting in the numbers and tags or assigning where they come from. The example that is provided at the end of the document lost me very quickly. It started with a "Time Proportioning Control" setup with good detail of the steps and layout, but I still have trouble understanding the tags assigned in the example. The last page shows the PID loop with no explanation on any of it (the way I see it)

    I've been searching since I got this PLC, but have not had good luck finding much (literally nothing) out there for the 1000 series PLC.

    Curious if anyone has any suggestions on the best way to fill in parameters and write the rung (or rungs) that will be needed. I want to be able to put in (where is it assigned from?) a set point (and manually adjust it), and let the PID do its thing to fire the relay controlling the heating element to hit and maintain temperature from the feed back of my RTD sensors. I will have two of these PID's. One for my Hot Liquor Tun to get to a temperature range of 175 strike water to pump over to my Mush Tun, then used again to maintain a temperature of about 155 for recirculating mash through a HERMS coil. The second will be to boil the wort in my Boil Kettle. This one may not need to be a PID, but more of a timer that turns off and on for a set amount of time once the boil is reached. Might be easier this way. Accuracy is not as important on this one other than not wanting to boil over.

    Any help on this would be greatly appreciated.