OB82FC2/FC3/FC4/FC5/FC300/DB2/UDT1/0B1NETWORK1都要拷贝到原程序中。在DB2.DBW12中有一个FM350模块地址的设置。要与S7硬件配置中FM350的地址一样硬件配置中地址为I:272-287Q:272-287。DB2.DBW12=W#16#110=272.程序说明OB1network1CALL"CiShan"//调用FC300程序块cnt2_app:=W#16#2//背景数据块号DB2quantity:=MW4//预装载值,为MW4赋值,当前为零,也可以用W#16#0load:=M0.2//装载计数器值,计数器应用时此点为1Gate0_3:=M0.0//打开计数器0-3通道的软件门Gate4_5:=M0.1//打开计数器4-5通道的软件门act_val:=M0.3//开始读当前计数值的触发位channel:=M0.4//0为计数器通道0-3计数1为为计数器通道4-7计数,应置1rd_err:=M2.2//读操作的出错提示wr_err:=M2.1//写操作的出错提示load_done:=M2.0//装载计数器操作的状态指示state_oflw:=M2.3//通道4测量值上限溢出状态指示state_uflw:=M2.4//通道4测量值下限溢出状态指示FC300程序说明network1L#cnt2_app//ApplicationfillunitT#cnt2_db//OpencounterdatablockOPNDB[#cnt2_db]CALL"CNT2_CTR"//ControltheFM350-2调用FC2DB_NO:=#cnt2_dbADBX36.7//FM350-2parametersassigned?JCNEND//No,processnoapplicationADBX38.4//Lowerlimitexceeded?=#state_uflwADBX39.4//Upperlimitexceeded?=#state_oflwA#Gate0_3//Startthefillunit?=DBX23.0//Yes,SW_GATE0open=DBX23.1//Yes,SW_GATE1open=DBX23.2//Yes,SW_GATE2open=DBX23.3//Yes,SW_GATE3openA#Gate0_3//Startthefillunit?ADBX43.0//Yes,CTRL_DQ0=STAT_GATE0=DBX21.0//andtriggerfillvalveA#Gate0_3//Startthefillunit?ANDBX42.0//Yes,invertSTAT_DQ0=DBX21.1//andtriggermotorfortransport=DBX22.1//withCTRL_DQ1andSET_DQ1A#Gate4_5//Startthefrequencymeasurement?=DBX23.4//Yes,SW_GATE4open=DBX23.5//Yes,SW_GATE5open//=DBX23.6//Yes,SW_GATE6open想要使用通道6将前面注释符去掉//=DBX23.7//Yes,SW_GATE7open想要使用通道7将前面注释符去掉network2SET//SetBRforerrorevaluationSAVEOPNDB[#cnt2_db]//OpencounterdatablockADBX1.0//Loadcomparatorinprogress?JCWRDO//YesADBX42.1//NewloadingonlyduringtransportJCNWRENA#load//Loadnewquantity?FPM10.0//Positiveedgeto#load注意不能和程序其它地方应用冲突JCNWREN//NoL#quantity//QuantityincounterdatablockTDBD116L42//job_no30forTDBB0//Loadcomparatorcountchannel0WRDO:CALL"CNT2_WR"//LoadcounterandcomparatorforFM350-2DB_NO:=#cnt2_dbRET_VAL:=MW6//注意不能和程序其它地方应用冲突WREN:ANBR//Error:job_nounknown,retval_wrwitherrorordataerror=#wr_errAN#load//CreatewritejobendedRDBX1.1//DeletedwhenloadingtriggeredADBX1.1=#load_donenetwork3SET//SetBRforerrorevaluationSAVEOPNDB[#cnt2_db]//OpencounterdatablockADBX3.0//Readactualvaluesinprogress?JCRDDO//YesAN#act_val//Readingactualvalues?JCRDEN//NoL100//job_no100forcountchannel0to3AN#channel//forcountchannel4to7?JCJOBL101//job_no101forcountchannel4to7JOB:TDBB2//Loadcomparatorcountchannel0RDDO:CALL"CNT2_RD"//LoadcounterandcomparatorforFM350-2DB_NO:=#cnt2_dbRET_VAL:=MW8//注意不能和程序其它地方应用冲突RDEN:ANBR//Error:job_nounknownorretval_rdwitherror=#rd_errEND:BE