Arvest

Sending out value from memory based on encoder value

8 posts in this topic

Hello, quite new to PLC's, currently figuring out if / which PLC is the way to go for my application:

I'm construction a machine with a two axis (X/Z) with 88 valves mounted on them. The X axis makes a scanning motion, and after every pass, the Z axis moves down 2.5 mm. When the X-axis moves, the valves need to switch in a certain pattern, opening / closing with a resolution of 2.5 mm, based on the current X and Z-position (i.e. encoder values). My goal is to move around 0.25m/s, so they would switch around 100 times per second (i.e. every 10ms). I want to be able to upload the pattern via Ethernet connection from my PC. The valves will most probably be switched through a Modbus RTU digital I/O unit(s)

I ended up with the Modicon M241 as a nice PLC with the right I/O capabilites and features for my application. However, I don't know if it is suitable, as I am unable to find out how the whole uploading a pattern to memory, and then retrieving values one by one from memory during operation would work (i.e. which instructions should I use in my PLC program?)

 

Share this post


Link to post
Share on other sites

This sounds like a typical PLC application.  You will almost certainly be disappointed trying to switch valves that fast with Modbus RTU.  You will want those coils wired individually to output modules mounted directly to the PLC's CPU.

I'm not familiar enough with the Modicon family's motion control capabilities to know if it will be responsive enough.

Share this post


Link to post
Share on other sites

One more note:  when switching solenoid coils that fast, use heavy-duty Metal-Oxide-Varister suppressors on the coils instead of flyback diodes.  Flyback diodes greatly lengthen the time it takes for solenoids to turn OFF.  Probably too much for 10ms cycles.  MOVs apply reverse voltage to the coil such that they turn off about as quickly as they turn on.

Some digital output modules from various brands include flyback diodes right in the digital output.  You must not use that kind of output module, for this same reason.

Share this post


Link to post
Share on other sites

a very good point, i would add that MOVs do not apply reverse voltage, they are passive component and do not store energy - they just conduct more at some higher voltage. depending on used product, this value is different. the higher the clamping voltage is, the shorter the pulse is (turns of faster). diode has Vf of only 0.7V so the clipping on 24V solenoid occurs at 24.7V. That is extremely low and takes longer to switch off. But with MOV it may be at 36V or so. using Zener diodes one can get the same effect which is why there are several options to choose from.

Share this post


Link to post
Share on other sites
3 hours ago, panic mode said:

MOVs do not apply reverse voltage, they are passive component and do not store energy

Well, the coil is the item storing energy, and producing the reverse voltage when the driving voltage quits.  With a diode, the reverse voltage peaks at ~0.7V.  With an MOV, that reverse voltage peaks at the MOV's breakdown rating. With neither diode nor MOV, that reverse voltage peaks at spark initiation in the wiring, or at the failure reverse voltage of the driving circuit. For the pedants among us engineers. (:

1 person likes this

Share this post


Link to post
Share on other sites
19 hours ago, pturmel said:

This sounds like a typical PLC application.  You will almost certainly be disappointed trying to switch valves that fast with Modbus RTU.  You will want those coils wired individually to output modules mounted directly to the PLC's CPU.

I'm not familiar enough with the Modicon family's motion control capabilities to know if it will be responsive enough.

Thanks for the reply. I still need to figure out how to get that pattern values into my PLC program, but that is (in this case) a more specific Modicon question.

You are right about the Modsbus RTU being too slow. I have used Modbus in the past to provide corrections to a robot arm in real time, but that was Modbus TCP. I mixed the two up. Modbus TCP should be fast enough, depending on how effecient the PLC is at getting that signal out there.

Direct connection to the PLC would not be the preferred option because of all the cabling involved. A RTU would be a much lighter and simpler option.

Regarding the coils:

currently we use a normal flyback diode, and this achieves a 7 ms closing time. I will investigate using a MOV or Zener in the design, but I believe not the coil, but the spring inside of the valve is the limiting factor wrt the closing time.

Share this post


Link to post
Share on other sites
5 hours ago, Arvest said:

but I believe not the coil, but the spring inside of the valve is the limiting factor wrt the closing time

Measure carefully.  The bulk of the time caused by the diode will be between output turn-off and the valve beginning to close.

Share this post


Link to post
Share on other sites

spring only gets to do something after there is no more current in the coil (magnetic field collapses). as long as coil is energized, spring is not in control. so after output is off, current still flows through solenoid (but now it is going through diode, not the output). this is due energy stored in solenoid and duration is affected by characteristics of suppression device. and as mentioned already, connecting MOV or Zener across solenoid will not produce any meaningful difference if output has own built in diode (and normally they do!). and if not but you choose MOV and Zener with too high breakdown voltage, the output device will get damaged. 

 

1 person likes this

Share this post


Link to post
Share on other sites

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