<<.....yet there is still no output if the VI has run for a while.>>
what do you mean no output ? do you mean zero voltage ?
If the set point is set constant, does the software control as expected, and how long does it take to reach the set point?
Are you ramping faster than the control loop can update ?
Another question, how are you expecting the output voltage to behave ? What is it the output voltage controlling ? a water Valve ? if that is the case, then if tempertaure goes above the set point, you should cool the system by opening the valve more and more. In a case like this, this is not a typical revesre acting controller,and the P (of the PID) value should be negative.
As a side note, your code is hard to follow, use of local variables, and wires getting criss crossed, and wiring from right to left is against the rules that everybody (including LabVIEW prgoamming guides) recommends. This is not to be taken personally.