I am doing some preliminary design work on a AC waveform generator. The primary use will be generating signals that, when amplified, will generate three-phase AC power with various line disturbances (dropouts, spikes, etc.). This will all be dome with DACs.
I am pondering making a mini-language to make it easier for the users (who range from EEs to electricians) to program waveforms. something along the lines of this (pseudocode, not the actual syntax):
Output A Waveform = Sine
Output A Voltage = 10 VAC
Output A Frequency = 400 Hz.
Output A Phase = 120 degrees
Output A Duration = 1 Second
...with some sort of way to define things like amplitude/frequency /phase modulation, building a custom waveform out of segments, building a custom waveform out of harmonics (phase/amplitude), smoothly ramping from one amplitude/frequency/phase to another, and a buch of other waveformish things I haven't thought of yet.
I am also thining of some sort of looping constructs such as for-next or do-while, and perhaps some simple decision constructs such as if-then-else based on such things as external inputs or hitting a programmable current limit.
How simple can I make a mini-language whole minimizing the odds of someone ending up not being able to create the waveform they want?
As you can see, I am just starting to think about this. Any ideas or suggestions would be most welcome.
Guy Macon