Dithering a servovalve

Some valves require dithering to prevent stiction. At this time, the RMC75 and RMC150 do not have a built-in dithering feature, but dithering can be done with a user program.

The attached program implements dither by continuously changing the Output Bias. The user program dithers the valve only when the Target Velocity is zero. If you need to also dither it when it’s in open loop for example, you can modify the logic to say “_Axis[2].TarVel = 0.0 OR _Axis[2].StatusBits.2 = True”. While the axis is moving (Target Velocity is not zero), the Output Bias will be set to 0.

The dither is at half the frequency of the loop frequency. The user program can be modified to make it a quarter, eighth, etc. The dither amplitude can be set to anything by changing the value of the Output Bias.

To import the attached user program to your project, first save it to your computer, then in RMCTools, in the Project tree, right-click User Programs and choose Import User program.

This user program should always run. You can create a “_FirstScan” condition in the Program Triggers to start this user program when the RMC eneters Run mode.
Dither.rmcprog (2.31 KB)

What’s “dithering?” What’s “stiction?” I’m new to both of those terms, but I love the RMC controllers!

the link for the download does not work anymore, is there someone who can make it work or deliver the file to the forum

The file link should work now. Thanks for pointing that out!