You are not registered yet. Please click here to register!


 
 
plc storereviewsdownloads
This board is for PLC Related Q&A ONLY. Please DON'T use it for advertising, etc.
 
Try our online PLC Simulator- FREE.  Click here now to try it.

---------->>>>>Get FREE PLC Programming Tips

New Here? Please read this important info!!!


Go Back   PLCS.net - Interactive Q & A > PLCS.net - Interactive Q & A > LIVE PLC Questions And Answers

PLC training tools sale

Reply
 
Thread Tools Display Modes
Old November 14th, 2017, 08:17 AM   #1
CarlVW
Member
Belgium

CarlVW is offline
 
Join Date: Oct 2017
Location: Belgium
Posts: 6
Programming memory sequence

Hello,

i have a machine with 3 axis that can run simultaneously controlled by other software but sometimes this goes wrong due operator fault.
So now i want to program a memory function in the plc that knows in what order the axis have been activated and then move these axis 1 by 1, only 1 axis is moving at a time.
They can be activated in different order or only 2 or 1.

So i have these bool variables:
3 x execute from software
3 x busy from axis
3 x done from axis

What is the best way to go ahead with this??

Thanks
  Reply With Quote
Old November 14th, 2017, 10:24 AM   #2
gclshortt
Member
Canada

gclshortt is offline
 
gclshortt's Avatar
 
Join Date: Dec 2014
Location: Cobourg
Posts: 2,128
I would say to use an asynchronous word shift instruction of three registers. Each time you get an execute axis command you place a value in a register. The asynchronous shift will shift if the next register is 0000 down to the end of the shift instruction.
The value in the last register will then activate the axis. Once the axis is complete, a 0000 is placed in the last register. This will allow the next register to move into the last register, etc.

What PLC are you planning on using? This will determine exactly how to do the logic.

Regards,
__________________
Garry
http://www.accautomation.ca
Connect with us on Facebook: facebook.com/accautomation/
  Reply With Quote
Old November 14th, 2017, 02:24 PM   #3
CarlVW
Member
Belgium

CarlVW is offline
 
Join Date: Oct 2017
Location: Belgium
Posts: 6
It would be programmed on a Beckhoff PLC cx9020 in twincat3 environment.
  Reply With Quote
Old November 15th, 2017, 03:36 AM   #4
CarlVW
Member
Belgium

CarlVW is offline
 
Join Date: Oct 2017
Location: Belgium
Posts: 6
i have tried it with a 3 set/reset functionblocks to memories the activated axis but when for example you activate the 3 axis 1 by 1 ( the first axis is still moving when axis 2 and 3 is activated). when axis 1 is done i the next activated axis should move and when that is done the last. But the order of activated axis is not always the same
123
321
231
213
132
312
or only 2 axis or 1
that is what i'm struggling with, i my case it are axis but it could be also be the same if you use timers and lights for example.
What kind of plc is less relevant, its more how to program it.
  Reply With Quote
Old November 15th, 2017, 03:46 AM   #5
chavak
Member
Malaysia

chavak is offline
 
chavak's Avatar
 
Join Date: Jul 2002
Posts: 613
I would second Garry's suggestion,

You axis execute routine - should take the order of execution from the word data which dictates the order of run.

Regards
  Reply With Quote
Old November 15th, 2017, 04:53 AM   #6
cottagewood
Member
United Kingdom

cottagewood is offline
 
Join Date: Oct 2005
Location: Kent
Posts: 43
"but when for example you activate the 3 axis 1 by 1 ( the first axis is still moving when axis 2 and 3 is activated)"

If the axis is still moving when you trigger the next one, it tells me you are not waiting for the done bit.
  Reply With Quote
Old November 15th, 2017, 06:08 AM   #7
CarlVW
Member
Belgium

CarlVW is offline
 
Join Date: Oct 2017
Location: Belgium
Posts: 6
Quote:
Originally Posted by cottagewood View Post
"but when for example you activate the 3 axis 1 by 1 ( the first axis is still moving when axis 2 and 3 is activated)"

If the axis is still moving when you trigger the next one, it tells me you are not waiting for the done bit.
Only 1 axis is supposed to be moving at a time. the issue i have when the first axis is done the other 2 where activated when 1 is moving. They wait until 1 is done but now they are blocking each other because who goes first?
  Reply With Quote
Old November 15th, 2017, 08:42 AM   #8
cwal61
Member
United States

cwal61 is offline
 
Join Date: Jan 2011
Location: NC
Posts: 865
Quote:
Originally Posted by CarlVW View Post
Hello,
So i have these bool variables:
3 x execute from software
3 x busy from axis
3 x done from axis

What is the best way to go ahead with this??

Thanks
If the Execute Boolean variables come on in the order of execution then start a timer when each one becomes true. Then compare who has been on the longest. Once an axis is done then reset that axis's execution timer.

If 1>2 and 1>3 then 1
If 2>1 and 2>3 then 2
If 3>1 and 3>2 then 3

This would take care of all combinations.
  Reply With Quote
Old November 15th, 2017, 10:13 AM   #9
CarlVW
Member
Belgium

CarlVW is offline
 
Join Date: Oct 2017
Location: Belgium
Posts: 6
Quote:
Originally Posted by cwal61 View Post
If the Execute Boolean variables come on in the order of execution then start a timer when each one becomes true. Then compare who has been on the longest. Once an axis is done then reset that axis's execution timer.

If 1>2 and 1>3 then 1
If 2>1 and 2>3 then 2
If 3>1 and 3>2 then 3

This would take care of all combinations.
this works, THANKS
  Reply With Quote
Old November 15th, 2017, 02:48 PM   #10
gclshortt
Member
Canada

gclshortt is offline
 
gclshortt's Avatar
 
Join Date: Dec 2014
Location: Cobourg
Posts: 2,128
Quote:
Originally Posted by cwal61 View Post
If the Execute Boolean variables come on in the order of execution then start a timer when each one becomes true. Then compare who has been on the longest. Once an axis is done then reset that axis's execution timer.

If 1>2 and 1>3 then 1
If 2>1 and 2>3 then 2
If 3>1 and 3>2 then 3

This would take care of all combinations.
Nice approach!
__________________
Garry
http://www.accautomation.ca
Connect with us on Facebook: facebook.com/accautomation/
  Reply With Quote
Reply
Jump to Live PLC Question and Answer Forum

Bookmarks


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Topics
Thread Thread Starter Forum Replies Last Post
Sequences xzen LIVE PLC Questions And Answers 34 April 27th, 2016 09:47 PM
Micrologix 1100 memory module kolyur LIVE PLC Questions And Answers 5 June 24th, 2015 09:50 AM
sequence programming seee LIVE PLC Questions And Answers 1 August 21st, 2012 09:14 PM
Programming flash memory for SLC 5/03 xautom LIVE PLC Questions And Answers 11 September 18th, 2008 04:03 PM
SLC 5/03 data loss andydaoust LIVE PLC Questions And Answers 1 October 10th, 2002 06:38 PM


All times are GMT -5. The time now is 11:55 AM.


.