1、主程序
启动,将系统参数初始化,该过程包括内部置位、复位输出继电器的初始化,另外将内部所需或用户本身设定的参数读入。表4.1所示为参数初始化时所需要填入相应表格中的7组数据,设计系统中采用填表指令ATT(Add To Table)将其逐一填入,为了减少梯形图的烦琐,该表数据填入只用一组来说明,在梯形图中从Network15~Network21都属于表数据填入,在此图中省略Network16~Network21。填表数据表如表4.1所示。

选择变频器,通过加法指令将C0+3存入寄存器VW200中(C0=1、2、3……可按计数器设定值递增)。再用除法指令将VW200除4,将结果存入VD500中,然后将VD500高16位VW500中所存余数与0、1、2、3比较,当等于0时选择变频器1,依次类推。
选择表格数据输出,首先将音频信号模拟量输入到A/D转换模块EM231,将其转化为数字量,并存放在寄存器AIW0中,然后把AIW0中的数字量按每0.6s读取一次,存放到累加器AC0中,再与内部十六进制16#0000~16#0FFF分成7段比较,当AC0中的值大于且小于某一个范围值时,输出相应的表格数据。
调用子程序,当比较后若选择表1数据时,调用子程序0;表2数据对应调用子程序1;依次类推。
2、子程序
此控制系统共7个子程序,在此只对一个子程序做详细的介绍,其他依次类推即可。在上述流程图中可知,每选择的一组表数据,对应的是输出到四个变频器,这四个变频器形成一个循环过程,四个变频器之间的动作时间差为0.6s,这样就可以实现对音乐旋律的起浮用喷头喷水高低或变化幅度来具体表达,达到音乐、喷泉和谐一体。
当系统调用子程序0时,可以有四组变频器可以输出。在此,根据主程序中所选择对应的变频器与选择表1数据组合输出,例如:选择变频器时,内部继电器M0.3有输出;选择表1数据,继电器M0.7有输出;此时应该是系统将表1数据输出到第1个变频器。当选择变频器2时,将表数据输出到第2个变频器。
在选择了表数据与对应变频器后,通过计时,每隔0.4s读一次表中的数据,将所读出的数据与0~7之间的数据相比较,当等于其中某一个数值时,输出对应的设定速度。等到将表中6个数据全部输出完,将继续等待下一个选择。