Ok guys can you help with this

DoubleL

Member
Join Date
Jul 2004
Location
Georgia
Posts
47
Hi Guys,
I have a good enigma for you. I am having a brain **** at the moment and can't get my head around this logic. Let me give some background.

I have a chain oiler that sprays on every chain link using an absolute encoder (the encoder is used for other things but it was handy for this application as well). I give the logic for the oiler a start position then it calculate the next 10 sprays from that. The problem we encounter is when the chain speed is changed. This changes the spray position (because even though the encoder should follow this the mechanical stuff(solenoids, etc) still take the same amount of time to actuate)and if no one checks the chain can run for days without proper oiling.

my idea was to see how much the position changed from the slowest speed to the fastest (about 10mm) and use this information in a scale with parameters to give me an amount to add or subtract to the start position to adjust it automatically. I am having trouble working out when to add and when to subtract. I tried using a data transition instruction that goes true when the speed value changes but how to work the logic to subtract when it goes slower and add when it goes faster is slipping by me. I'm probably thinking too deep into it. I have a lot of other stuff going on during a startup right now so that isn't helping either.
 
I think you should include the lag time in your target position calculations. I would make that a tunable value, and just teach it rather than use mfg charts, although I would look at those for a starting point.

You know you must fire the output at "t" milliseconds before the target position, "t" being the time in milliseconds representing the sum of the solenoid and nozzle delays, so to find the "d" to subtract from the target just use d=rt, recalculate as often as the velocity changes. If you are hitting it early, then your "t" value is too high, the system is faster than you estimated, so bump it down a little...when you hit the chain segment dead center, you will likely be able to vary the speed and stay centered, providing the pitch calculation is error free.

I say this, because, while I know solenoids and spray systems have significant control to motion lag, it is usually very repeatable, although it may vary widely from one machine to another. If the mechanical delays are not repeatable, well, there's nothing you can do in software about that anyway, so make the adjustment range pretty wide but expect repeatability of the lag time for the system to be pretty good if variables like fluid quality and pressure are well controlled.
 
Last edited:
I am having trouble working out when to add and when to subtract.
All the time, but the value you add or subtract will vary as you put the current chain speed in to your Scaling function.

Scale input high: maximum chain speed
Scale input low: minimum chain speed
Scale output high: minimum time offset
Scale output low: maximum time offset

Input Value: current chain speed
Output Value: offset to use
 
Thanks guys for responding. I am travelling right now and will look into this further next week and get back to you
 
Yes, you can use BryanG's scaling method to compute a time range for your speed range, and that may be close enough. Still there will need to be some slop or spray overlap built in for chain acceleration and deceleration. The chain will not go from 0 to set speed in 0 time, so the acceleration period will throw off your oiler because it will need the same time for the physical stuff.

Okie's method will be more precise, where you calcualte an individual advance time for each chain link, using the actual current speed of the chain.

Your chain links may not all be the same length. Chains wear and stretch, and links get replaced over many years, maybe not always with the same exact part.
 
Last edited:

Similar Topics

I have been working on Step 7 PLC that has me scratching what little hair I have left. It looks like there are (local?) variables named #F_LS...
Replies
12
Views
4,540
Alright guys im fairly new to the plc world but here is what I got one of our RIO 1747 ASB has been down for service now we are ready to power it...
Replies
11
Views
2,658
I have been trying to get a better understanding of interface parameters. What I understand is; - In; A Input from a calling block -...
Replies
22
Views
3,109
Dear All I have a delta electronic PLC communicating with Cimplicity SCADA through USB. Some virus attacked the PC and USB ports are nor working...
Replies
1
Views
2,530
When Switch S1 Pressed L1 should be OFF L2 & L3 should be ON When Switch S2 pressed L2 should be OFF...
Replies
19
Views
7,414
Back
Top Bottom