Here is a bit more flexible version of the SignalGenerator control, now using somewhat modified BasicChart (where the Y value range is -32767 to 32767) instead of SimplePerformanceChart (where the range was 0 to 100).
The graph Y range values can be changed with the mouse wheel (just click the chart first).
Note for "External Input" - the mouse wheel currently changes in increments of 25 but there is a combobox with quick values to help speed up the process if you need to make adjustments to see the whole signal.
Also, if you need to stop/start the timer just double click the chart.
The following apply to both versions of SignalGenerator:
"Send to PLC" option was only tested with OPC simulator and was a bit slow to update. Considering that the SignalGenerator output are analog signal values (defined in the code as 'Single' values), this option should only be used with some sort of floating point PLC Input address. I am not sure if the driver might be sort of buffering the values before sending them to the PLC. The graph might get distorted when this option is checked.
User Defined signals are present only under buttons 1 and 2 (positive and negative half-wave sine) so feel free to add any other signals to buttons 3 and 4. The example mentioned in the previous post has 6 different user defined signals.
Phase shift changes might be obvious depending on what device or control is receiving the signal, otherwise it appears as useless.
External Input signal can be displayed on the chart screen (this Input was defined in the code as 'Single' value). If you know what range of values this signal will have then you might need to adjust the chart Y range before clicking this button. "Send To PLC" option will be disabled when the button is clicked.