求助 S7—200 子程序块-PLC技术网(www.plcjs.com)-可编程控制器技术门户


求助 S7—200 子程序块

 (点击题目可以在互联网中搜索该题目的相关内容)
日期:2006-5-15 23:38:34     来源:   作者: 点击:
点击【 大  中  小 】, 可 以 选 择 字 体的大小,以便 你 阅读.

求助 S7—200 子程序块
  西门子 S7-200,是否可以将一段程序做成子程序块,有入口和出口变量,以供其他程序调用

以下是对《求助 S7—200 子程序块》的回复:   
匿名回复:
    of course
匿名回复:
    还得问你一下:具体应该怎么做呢?举个简单的例子可以吗?谢谢你!
匿名回复:
    这个当然可以。这个问题在我的《浅谈西门子高速计数器的设置》一文中已有例子了,你可以参考一下。
匿名回复:
    我没有找到这篇文章。能不能告诉我在哪里有?
  谢谢!
匿名回复:
    我在PLC论坛里搜索查找没有找到。
  能否麻烦你告诉我怎么找到?
匿名回复:
    我想问的问题是:如何将一段程序做成有入口和出口的自子程序,以供其他程序调用。您所提到的文章是关于高速计数器的。
匿名回复:
    I can write in English only because my Chinese platform crashed. For your reference following is a example of function with parameters and how to call this function and pass parameter values from another function.
  
  //Function with input and output parameters
  FUNCTION FC 1 : VOID
  TITLE = Test sample 1
  
  VAR_INPUT
   xxx : INT;
  END_VAR
  VAR_OUTPUT
   yyy : CHAR;
  END_VAR;
  VAR_IN_OUT
   zzz : BOOL;
  END_VAR;
  
  BEGIN
  
  NETWORK
  ......
  
  END_FUNCTION
  
  
  //Call a function with parameters
  FUNCTION FC 2 : VOID
  TITLE = Test sample 2
  
  BEGIN
  
  NETWORK
  TITLE = Calling a function with parameters
   CALL FC 1 (
   xxx := 123,
   yyy := a_char_variable,
   zzz := a_bool_variable);
   NOP 0;
  
  NETWORK
  ........
  
  END_FUNCTION
  
  
  In STEP 7 it is simpler. If you can write LAD program, in Variable Declaration Table you just give the names and datetype of input and output variables. You can use these variables in this program(function). In another program to call this function you just insert a Program Elements-->FC blocks-->FC1. Then all function parameters are displayed. Be carefull, datatype of variables or values you pass to parameters must match with datatype of parameters.
匿名回复:
    Thank you very much sir !   

上一篇: s7-200的四个输出排序工作的程序怎么做啊
下一: 很好的西门子s7-200模拟