Smoking,
You are going in the right direction, but there are some errors. For example, in Rung 000, your PB2 Stop Pushbutton will not STOP the Open Motor from running. It should be moved, either to the traditional left outside of the seal-in contact branch, or to the right next to the Limit Switch. In either position, it will stop the motor. Your PB3 ALSO must be in this rung in series with PB2, because it must also STOP the motor from opening.
Your Rungs 001 and 002 are using the same OTE Output O:0/0 Door Open Motor. This is called a "double-coil" and means that the LAST one (Rung 002) will be doing the control, and Rung 001 will have no effect, because whether it is On (True) or Off (False), Rung 002 will then be evaluated, and its state will replace that of Rung 001. So you need to combine the left sides of both rungs (put the Stop functions in series and the Start functions in a parallel branch) into ONE rung with ONE version of O:0/0.
There is one problem you have not seen (and your instructor probably has not noticed this either). Each motor direction (Open and Close) has two or more operator stations that have both Maintained-contact and Momentary-contact (toggle) operator switches. That means that the maintained-contact STOP functions are going to have heavier weight in in the control rungs, because technically and logically they will override the momentary or toggle switch Open or Close pushbutton functions. The maintained-contact switches are labeled for two functions, either Close AND Stop, or Open and Stop. I "AssUMe" (you should ask your instructor to explain these labels in detail) that this means that the maintained contact switches must perform both functions AT ANY TIME. There is a conflict or paradox (if that assumption is true). If the logic for the momentary-contact pushbuttons in the vehicle for two functions (Open and Stop) is designed to start the door opening but then PB2 can also STOP the opening, AND the maintained-contact pushbutton PB3 can also STOP the opening, then these two functions must logically be closed switches in series. However then if PB3 is in the STOP mode, then PB1 in the vehicle CANNOT open the door, therefore does not have equal weight or control of the door. This may be the desired outcome, or not!
The same reasoning applies to the Close function. PB5 must be in series with PB4 (in order for each to be able to STOP the CLOSE Motor, then if maintained-contact PB4 is opened, then PB5 cannot close the door (does not have equal weight because it cannot do its job unless PB4 is in the closed position).
The question for your instructor is: Are PB3 and PB4 supposed to be able to override the other control switches (have preference or first-come first-served control of the door functions)? I would say that if you cannot get this cleared up, the normal answer would be to err on the side of safety, and make the door stop whenever the maintaied-contact Start-Stop switches are open. If not, then there is a paradox in the specifications. If they are, then I have worked out a program that seems to work and meet all the other parameters.
You are going in the right direction, but there are some errors. For example, in Rung 000, your PB2 Stop Pushbutton will not STOP the Open Motor from running. It should be moved, either to the traditional left outside of the seal-in contact branch, or to the right next to the Limit Switch. In either position, it will stop the motor. Your PB3 ALSO must be in this rung in series with PB2, because it must also STOP the motor from opening.
Your Rungs 001 and 002 are using the same OTE Output O:0/0 Door Open Motor. This is called a "double-coil" and means that the LAST one (Rung 002) will be doing the control, and Rung 001 will have no effect, because whether it is On (True) or Off (False), Rung 002 will then be evaluated, and its state will replace that of Rung 001. So you need to combine the left sides of both rungs (put the Stop functions in series and the Start functions in a parallel branch) into ONE rung with ONE version of O:0/0.
There is one problem you have not seen (and your instructor probably has not noticed this either). Each motor direction (Open and Close) has two or more operator stations that have both Maintained-contact and Momentary-contact (toggle) operator switches. That means that the maintained-contact STOP functions are going to have heavier weight in in the control rungs, because technically and logically they will override the momentary or toggle switch Open or Close pushbutton functions. The maintained-contact switches are labeled for two functions, either Close AND Stop, or Open and Stop. I "AssUMe" (you should ask your instructor to explain these labels in detail) that this means that the maintained contact switches must perform both functions AT ANY TIME. There is a conflict or paradox (if that assumption is true). If the logic for the momentary-contact pushbuttons in the vehicle for two functions (Open and Stop) is designed to start the door opening but then PB2 can also STOP the opening, AND the maintained-contact pushbutton PB3 can also STOP the opening, then these two functions must logically be closed switches in series. However then if PB3 is in the STOP mode, then PB1 in the vehicle CANNOT open the door, therefore does not have equal weight or control of the door. This may be the desired outcome, or not!
The same reasoning applies to the Close function. PB5 must be in series with PB4 (in order for each to be able to STOP the CLOSE Motor, then if maintained-contact PB4 is opened, then PB5 cannot close the door (does not have equal weight because it cannot do its job unless PB4 is in the closed position).
The question for your instructor is: Are PB3 and PB4 supposed to be able to override the other control switches (have preference or first-come first-served control of the door functions)? I would say that if you cannot get this cleared up, the normal answer would be to err on the side of safety, and make the door stop whenever the maintaied-contact Start-Stop switches are open. If not, then there is a paradox in the specifications. If they are, then I have worked out a program that seems to work and meet all the other parameters.