Jump to content

Recommended Posts

  • MVP 2023
Posted

Hi,

In one of metal bending machine V130-33-TA24 PLC used for control backgauge positioning.

Machine work without problem 2020-2022. One of two present analog output used for 0-10V vfd speed control.

Now I found problem with both analog output after machine cold start. No output = 0V present when machine started and operator try to do homing proces (no speed setpoint present on VFD analog input). All digital input, output and encoder HSI work without problem.

After reload firmware, reset&init, blank project download and reload machine aplication project - no succes. Visilogic V9.8.65 and firmware used for progaming application in 2020. Power supply is changed to new one.

I was able to investigate that a hot restart of the PLC (power off and on or reset via Visilogic) returns the operation to normal and the machine can work. If PLC (or machine) is disabled for 5min analog output not start, restart needed.

I turned to support and received an answer about a hardware problem in the PLC. Unfortunately, in the current situation in Ukraine, I can not replace the PLC with a new one. I had to make a operator power switch for the PLC so that the machine could work.  However, I think this is dangerous because the operator may accidentally turn off the PLC while the machine is running.

Now I have an idea to implement a software restart of the PLC using SB300. However, after experimenting with different options for software restarts, I usually get either a generator that constantly restarts the PLC or a restart does not occur.

I ask users of the forum for tips on how to restart the PLC after turning on the power, but only once without the use of external circuits. I feel that there is a simple solution, but have not yet found it :)

  • MVP 2023
Posted

I'm a bit uncertain as to what you are needing here. I routinely provide a soft reboot capability in my PLC software using SB300 and have had no issues.

So you're saying that a hard reboot (power cycle) disables your analog input, but a subsequent soft reboot fixes your analog input problem? Then you're going to need logic that differentiates between a hard boot and soft boot so that the soft boot doesn't trigger another soft boot over and over. That should be doable since the soft boot is initiated in software. A timer and a bit set by SB 2 should do it, but that's just off the top of my head. I'm sure this problem is solvable.

  • MVP 2023
Posted

I pointed out that after turning on the power PLC does not activate the analog outputs.

Second restarting the PLC by turning the power off and on is also a cold start, but it helps to get the PLC back to work.

The time works here - if i turn it off and wait 2-5 minutes - the analog output will not start again.

Actually, I tried to restart the PLC through the info mode and through Visilogic - it help to activate analog outputs.

Therefore, the main question is how to evaluate first cold start and second hot restart. 

That is, to find a sign by which to limit the number of hot restarts after turning on the power to one.

  • MVP 2023
Posted

You should be able to determine how long the PLC was off by continuously storing the time in operands and comparing to the RTC on first PLC cycle. If greater than your target, then soft boot.

I often have software where I log the time the PLC was powered off. I store the time on every PLC cycle then log that time using SB 2 before updating the operands that are storing the time.

  • MVP 2023
Posted

I don't have time to actually work this up as ladder, but it would be fairly simple.

Use SB13 running RTC to UTC and write it to a DW.  Use copies of this for a series of compares to control the reboot, and have a bit that is set when the system reboots say 10 seconds after the first start.  On the second boot the "interlock" bit does 2 things....it prevents another reboot by disabling the reboot call, and then resets itself to 0....ready for the next time the machine is cold started.  Alternatively you could have it able to be reset by the operator using the keyboard.

cheers, Aus

  • MVP 2023
Posted

Thanks for the tips.

I tried different solutions and eventually found the easiest in my opinion.

second_restart.jpg.ec1d8dcd7decb2318b27acb8793b8e73.jpg

The only problem that arose was the pause (best tested = 3s) I had to add to ensure that the analog outputs could be restarted.

During this pause, I load on the screen text "Program is loading...".

 

P.S. I studied the hardware of a faulty PLC. I found that during the cold start there is no CLK signal coming directly from the PLC processor to the DAC.

Only a reboot with some delay causes the desired signal to appear. That is, the PLC must be replaced with a new one.

  • MVP 2023
Posted

Good method, but I'd also have a screen input to change the state of MB0 manually, in case something goes astray with it's status.  Otherwise it will cycle incorrectly.

This also brought to mind some pondering about powerup values. (Which I must assume you are not using for MB0, as it would definitely then cycle on every boot).  When are they actually set?  Are they effectively "done by SB2", or before anything is done at all in the ladder?

cheers, Aus

  • MVP 2023
Posted
1 hour ago, Ausman said:

Otherwise it will cycle incorrectly.

No it is impossible. PLC work fine for all testing time.

I tried to change state MB 0 to "1" online - in result PLC go to normal second restart and Toggle MB0 to "0".

Therefore, I consider this task solved.

P.S.  In my other versions with much more code it was the opposite situation - the first cold start+hot start -everything worked - and after power on-off there was a continuous cycle of reboots.

 

  • MVP 2023
Posted
22 hours ago, kratmel said:

No it is impossible. PLC work fine for all testing time.

P.S.  In my other versions with much more code it was the opposite situation - the first cold start+hot start -everything worked - and after power on-off there was a continuous cycle of reboots.

Yes, I'm a dumbcluck. I was really tired yesterday morning, and all day after posting, my brain kept on telling me I had something askew in my thinking.  I woke this morning with the answer, logged in here and found your response which was also my "whilst I was meant to be sleeping brainwave".   I had been stuck on if somehow MB0 had been turned to 1 before any powerup.  Completely forgetting that the sequence is essentially self-resetting.  If such a thing were to happen, the user would powerup again, and then the auto restart would work and put things back to "normal".

An elegant solution.  Your comment about "much more code" is often the way things go.  You work on something actually using the ladder, and start off with lots of complex stuff before eventually arriving at a really simple method.  Where you then mutter "Why didn't I think of that in the first place?" 

I'm intrigued enough with my question about power up values to open a new topic.

cheers, Aus

  • MVP 2023
Posted
2 hours ago, Ausman said:

Where you then mutter "Why didn't I think of that in the first place?" 

I started this topic with this sentence.

On 3/17/2022 at 9:17 PM, kratmel said:

I feel that there is a simple solution, but have not yet found it :)

Even putting a power switch on the machine was easier than my previous code sequences :) 

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

This site uses cookies. By clicking I accept, you agree to their use.