[?]: S7-1200 CTRL_PTO problem

SIMATIC S7-200/300/400, Step7, PCS7, CFC, SFC, PDM, PLCSIM,
SCL, Graph, SPS-VISU S5/S7, IBHsoftec, LOGO ...
green
Posts: 8
Joined: Fri Feb 25, 2011 5:27 pm

[?]: S7-1200 CTRL_PTO problem

Post by green »

Hello.

I have Siemens CPU 1214 DC/DC/DC and 2 Delta Servodrive ASD-B2.
The first drive rules moving, second rules rotation.
I can rule these servodrives in position mode only by pulse with variable frequency.

I created Technology object and tuned it for motion.
It works without problem.

For rotation I can not use technology object, because I need to change frequency immediately.
I used CTRL_PTO (Pulse train output) for rule it.

But I have problem.

I set the value of frequency as riser between two encoder`s value: moving and rotation (multiplied by several value, of course).
This value of frequency can negative, so in my program in this situation I invert this value to positive and set direction bit.

It works, but unstable. The CTRL_PTO function randomly stops without fault.
I noticed that this problem appears in ending of rotation (randomly!), when value of frequency is small, less then 1000Hz, but not equally 0.
The function doesn`t work after that. The PLC`s output, configured as pulse generator, doesn`t works.
When function stops, I need to set 0Hz in frequency input`s function, after that I set real value of frequency, and function works! For next stopping...
For solving this problem I had to write a condition: when frequency less than 1000HZ, the program sets this value as 0 Hz.
It`s works, but which can be quality precision of positioning in this or another situation?

I have no ID errors in this situation. For my mind it`s a problem in program`s code CTRL_PTO.

It is a big puzzle for me. Anybody, can you help me to find solution of this problem?

Thank you for answer!