What events cause it to "burn up".
One problem I do see is if you press the "open" button, it seals in the "up" motor. But, if you then press the "close" button, the up motor seal in is not dropped out. The down motor will enegerize as well, and your motor will start on fire.
Start off by moving the XIO Close and XIO Open to the outside of the branch. If you press the close button while the open motor is running, it will stop running.
As a rule of thumb, when ever I program a machine, any time there are multiple outputs controlling a single actuator like this, which cannot be energized at the same time, I put an XIO of the opposite output as a permissive. Like in the case of a solenoid with two coils, if one coil is turned on, the other cannot be. This way if I make a mistake somewhere in my program and activated the steps in a sequence at the same time, the outputs still won't both come on, and I won't damage my solenoid.