Sine Control

I am using 6 axes on a test machine. the motions are parker cylinders with internal wave scale transducers (4-20mA) as the primary feedback, load cells mounted on the cap end of the cylinders for reading force, (signal conditioners are also 4-20 mA). I am using a PLC for recipe control, I have the PLC to Delta communications working very well. my problem is in the program that runs the fatigue (Sine start) programs on all axes. the user sets up his recipe with max/min positions, and speed in Hz. all this information is appearing on the variable table and is being used by the RMC. 2 of my 6 axes are D3FP Parker proportional valves, the rest are D1FP. the D1FP valves are handling the sine control at all speeds up to 2 Hz, the D3FP valves do not work well. one growls very loudly at the ends of strokes, the other shudders visibly. I have tried numerous auto tuning and manual tuning, cannot get any improvement, but certainly can make it worse. at the best settings, I can get 0.25 Hz out of the D3FP valves (these are driving a 2.5" bore by 9" stroke cylinder) before the growling and vibration appears. it can be seen in the plot by the control voltage line getting fuzzy (modulating) at the times that the noise it at its worst.

Does anyone have any suggestions? I cant seem to smooth out the control voltage to get rid of the noise and shudders.

If you send your plots to, we can review them and give suggestions.

It appears this is an RMC150 using RMCTools, so this topic will probably be moved to the RMCTools section of the forum.

Jacob Paso

Thanks Jacob, as soon as I get back to the equipment, I will get a plot and send it.
I have another question on the sine control. my client wants the ability to have one of the 6 axes be the phase leader, and the ability to have all the other, variably selected axes to lag behind by a independent, per axis, “phase angle”. currently I issue the sine command to all axes simultaneously, then they transition at the same rate to the variably selected frequencies. this seems to work to maintain synchronization on all axes that are moving. I am thinking that to do this, I would have to put a wait statement into the lagging axes, and start the sine on the slave axes at a position value of the master that corresponds to the equivalent of the “phase angle” . in other words, 1/4 of the total peak to peak travel of the master would be the start threshold of a slave axis that is set for a 90 degree phase shift. does this sound right, or is there a better way?

There are several methods of achieving this. The method you mentioned will probably work, but there will be some error in it. How accurate does the phase delay need to be?

I have a user program that accomplishes a phase adjustment by adjusting the frequency briefly, then setting it back to its original value. It would take a bit of work to make this work for 6 axes. Let me know if you would like it, and I will clean it up and send it to you.

I would like to see that program, thank you. it sounds like it would have another use for adjusting synchronicity in long term multi axis sine programs.
In answer to your how accurate question, more is better.

Thank you Jacob

Attached is the project. It is a bit rough. There are several user programs, and I don’t recall which one works best. It will probably take a while to figure them all out. If you run into difficulties, I can help you out.
SinePhase.rmcproj (62.6 KB)