How to prevent RS500 SQO from retaining previous timing after restart

Question:

Hello, I am currently working on a program that involves using a SQO instruction. The program consists of 5 steps, starting at zero. I have implemented a RTO to ensure there is an 8-second delay between each step. However, I have encountered an issue where, upon restarting the process, the program advances to the next step but retains the timing from the previous step. I have attached a picture of my latest attempt to address this issue. Can anyone advise if this solution is effective, or suggest the correct approach to resolve this issue?

Top Replies

If you want the initial step to last 8 seconds once more, reset the timer for your stop bit.

When I am on the second step and the timer has counted down to 4 seconds, pressing the stop button once and then restarting takes me to the next step. However, the timer retains the accumulated value from the previous step, only timing for the remaining duration. To ensure the timer stays in the same position after restarting, it is essential for it to retain its value.

Is the timer instruction utilizing T4:0 classified as an RTO or TON function?

Rung 0004 will not trigger a call to U:3 due to the condition where XIO B3:0/0 evaluates to True because the value of B3:0/0 is 0. As a result, the XIC T4:0/EN will evaluate to False since T4:0/EN is set to 0 in rung 0002. This relationship works in reverse as well. This logic helps optimize the program flow and prevent unnecessary calls to U:3.

When using the timer instruction that references T4:0, is it considered an RTO or a TON in PLC programming? The answer is that it is classified as an RTO.

From your attached picture, it looks to me like your logic needs to be adjusted a little. The RTO is maintaining the time accumulated from the previous cycle, causing it not to restart from zero when your process is reinitialized. Try resetting your RTO at the end of each sequence to bring the accumulated time back to zero when your process starts over. This should solve the issue of carrying over the timeout from the previous step. Let me know if this works or if there is a different flaw we need to look for. Hope this helps!

It sounds like you're dealing with a timing control challenge in your program. One thing to check is whether the RTO is correctly resetting when you restart the process; if it retains the previous timing, it might not be re-initializing properly. Consider inserting a reset command for the timer right at the beginning of your restart routine to ensure it starts fresh. Also, review how the SQO instruction manages the step transitions—sometimes including a state reset can prevent issues like this. If you’re still stuck, I’d recommend breaking down the steps to isolate where the timing might be getting carried over. Good luck!

It sounds like you're running into a classic issue with state retention in sequential processes. To address the timing problem when restarting your program, make sure that your RTO is reset each time you kick off the sequence. Consider implementing a condition that initializes or resets the timer based on the step count, so it's not just carrying over the previous timing value. If you've already done that, double-check the logic in your SQO instruction to ensure it correctly progresses to the next step only after the timer finishes for the current one. It might also help to share the code snippet or specific logic you've used; that way, we could troubleshoot more effectively!

More Replies →

Streamline Your Asset Management
See How Oxmaint Works!!

✅   Work Order Management

✅   Asset Tracking

✅   Preventive Maintenance

✅   Inspection Report

We have received your information. We will share Schedule Demo details on your Mail Id.

To add a comment, please sign in or register if you haven't already..   

Frequently Asked Questions (FAQ)

FAQ: 1. Question: Why is my RS500 SQO retaining the previous timing after a restart?

Answer: Answer: The issue of the RS500 SQO retaining the previous timing after a restart can occur due to the way the program is structured and how the RTO instruction is implemented.

FAQ: 2. Question: How can I prevent my RS500 SQO from retaining the previous timing after a restart?

Answer: Answer: To prevent the RS500 SQO from retaining the previous timing after a restart, you may need to review and potentially adjust the logic of your program and how the timing is managed between steps.

FAQ: 3. Question: Is implementing a reset logic like the one shown in the attached picture an effective solution?

Answer: Answer: The effectiveness of the reset logic shown in the attached picture can vary depending on the specific details of your program. It's advisable to thoroughly test this approach and consider alternative methods if needed.

FAQ: 4. Question: What is the correct approach to resolving the issue of RS500 SQO retaining previous timing?

Answer: Answer: The correct approach to resolving the issue of RS500 SQO retaining previous timing involves reviewing your program structure, logic, and how timing is handled to ensure that it resets appropriately during a restart. Consulting the RS500 manual or seeking advice from experienced professionals may also be beneficial.

Ready to Simplify Maintenance?

Join hundreds of satisfied customers who have transformed their maintenance processes.
Sign up today and start optimizing your workflow.

Request Demo  â†’