easy-forum

English Support - Software => easySoft => Thema gestartet von: Jaxom am Februar 13, 2008, 03:40:13 Vormittag

Titel: Encoder counting
Beitrag von: Jaxom am Februar 13, 2008, 03:40:13 Vormittag
Hello  :-\
I am trying to use an encoder (CI01 wired to I1 & I2) to measure a conveyor speed to correctly apply labels on to bottles. I can't figure out how to use the same input to display a feed speed on a MFD-Titan, I'm using an 822DCTCX.
The only way I have found so far is jumpering the I1 & I3 lines and using CF03 then scaling to give the answer. Is there an easier way?

I also would like to read/store the Qv of CI01 at rising and falling edges of another input and put them into a database to be recalled later. I haven't found a method of catching the value quick enough to enter into a DB. Has anyone done this?

Is it possible to sequentially reduce the data word the DB is writing too? eg start first reading at MW96, second at MW95 ..... to MW49.
Thanks all, Jaxom
Titel: Re: Encoder counting
Beitrag von: KressSwiss am Februar 16, 2008, 17:29:16 Nachmittag
Hi
I don't no if I understand your question correctly. You intend to show values of a "quick-counter" on a MFD Titan by EASY 822.
(By MFD-CP4  ???).
The only way in this case are Display Functions Blocks. There are fore lines to show small texts numbers and values. (Have a look at the Appendix).
If you used an MFD80-B with MFD-CP8 you would have much more possibilities to show.
Regards
Hermann
Titel: Re: Encoder counting
Beitrag von: Jaxom am Februar 21, 2008, 23:56:15 Nachmittag
Hi Hermann
I need velocity and position from the encoder. Reading the manuals suggests that you can't use both a frequency counter and encoder on the same input.

The Velocity is used for controlling the drive speed and the Position is used to control on/off operation of a clutch to apply a label. All of this is taken off of a single encoder.

I have figured out the latter 2 questions I posted at least. I have a MFD-80-B & MFD-CP8-NT for display and entry.
Thanks, Jaxom
Titel: Re: Encoder counting
Beitrag von: boppel am Februar 24, 2008, 10:10:41 Vormittag
Hi Jaxom,

you can calculate the speed with the position-difference within a specified time:

speed = (actual position - last position) / time between measurement of the positions

If you have higher frequencies, use constant cycle time. Store the counter values in a shift register.
From the shift register you can access several of the last stored values. Take one of them and divide by the time difference when these values were stored. Then you have the speed (in machine units!!! They might be calibrated to technical units).

kindest regards

boppel
Titel: Re: Encoder counting
Beitrag von: Jaxom am März 24, 2008, 23:21:44 Nachmittag
Hello boppel
I tried the subtraction/cycle time and with all of the other "stuff" going on, the cycle time became too long and was missing inputs.

I have had to put a one-shot on many of the inputs to lengthen them to more than the 150ms cycle time. The maximum time between events is 320ms. I had to even get rid of a bunch of communication & other math to get it to this point where it would operate repeatably at full machine speed.

I wish the HTML help had the time each instruction takes to complete listed in addition to the amount of memory.
Thanks, John