我这里只针对程序。平台为博图TIA V15。实际上随着300系列逐步要淘汰,成本已经比1500系列的要高。
打开博图,点击新建及路径,然后点击新建
然后点击项目视图;
点击添加设备:为了便于仿真,此处添加1500的CPU。
因为是新的程序,里面只有一个OB1。实际上除了OB1,OB100,OB121,OB122等也是可以,有的甚至是必须添加的。
为了便于测试,添加块FC4060(FC_Motor), FB4061(FB_Motor)以及FB4061的背景块。并且新建一个文件夹。其中FC在OB1中调用。FB在FC中调用。
FC为LAD梯形图,FB为SCL;
新建FB地址如下:
Input:
iRun Bool
iManualMode Bool
iAutoMode Bool
iReset Bool
iControlMode Bool
iInterlockFwd Bool
iInterlockBwd Bool
Output:
oFwd Bool
oBwd Bool
oError Int
InOut:
ioManualFwd Bool
ioManualBwd Bool
ioManualStop Bool
ioAutoFwd Bool
ioAutoBwd Bool
写入代码然后编译:
IF #iRun THEN
IF #iManualMode THEN
#ioAutoFwd := 0;
#ioAutoBwd := 0;
END_IF;
IF #iAutoMode THEN
#ioManualFwd := 0;
#ioManualBwd := 0;
#ioManualStop := 0;
END_IF;
#oFwd := (#ioAutoFwd AND NOT #ioAutoBwd) OR (#ioManualFwd AND NOT #ioManualBwd) AND #iInterlockFwd;
#oBwd := (NOT #ioAutoFwd AND #ioAutoBwd) OR (NOT #ioManualFwd AND #ioManualBwd) AND #iInterlockBwd AND #iControlMode;
IF (#ioManualFwd OR #ioAutoFwd) AND NOT #iInterlockFwd THEN
#oError := 8001;
END_IF;
IF (#ioManualBwd OR #ioAutoBwd) AND NOT #iInterlockBwd THEN
#oError := 8002;
END_IF;
IF #iReset THEN
#oError := 0;
END_IF;
ELSE
#oFwd := 0;
#oBwd := 0;
#oError := 8000;
END_IF;
点击仿真,
下载完毕,运行PLC;
这个只是简单的电机例子。输入输出端可以接。当然一个程序不仅仅这么简单。数量、规模不一样罢了。
(责任编辑:admin) |