Q1: What is the sample time of your PID instruction?
Q2: What is the "cycle time" of your TIMEPROP?
If they match, the discrete will cycle be a straight percentage of the PID.Output
If the TIMEPROP cycle time is greater than the PID sample time, you will see strange results since the instruction's percentage will be changing within a single "cycle".
If the TIMEPROP cycle time is less than the PID sample time (say half or 1/4, this could actually be good in that you would be making your discrete a little more "analog" behavior in that you would get 2 or 4 cycles at that same percentage.
For example, if the PID Output was 50% and TIMEPROP cycle time matched the PID sample time, the discrete output would be ON for 50% of the PID sample time.
If the TIMEPROP was half of the PID sample time, it would be on for 25% of the PID sample time, then OFF for 25%, then ON for 25%, then OFF for 25%, spreading out that 50% Output across 2 cycles of the TIMEPROP instead of 1 cycle.
You might even do MATH on the TIMEPROP cycle time based on the PID.SampleTime structure member, either making it equal to, or 1/2, or 1/3, or 1/4 (definitely not LARGER than the PID.SampleTime).