

== org.vishia.fbcl.readOdg.wrOdgGraphicData.otx ========================================================

== GBlock in Graphic Overview ==

  [0] @3'20(20..31, 29..37)  g_3_25_33 :mdlInp FB=$module_PositionCtrlEnv:$Module_PositionCtrlEnv  
  [1] @3'20(22..33, 72..82)  g_3_27_77 :mdlInp FB=$module_PositionCtrlEnv:$Module_PositionCtrlEnv  
  [2] @3'30(26..32, 57..59)  e_3_29_58 :expr   
  [3] @3'20(23..42, 112..121)  t1F :fb FB=t1F:TsF_FB  
  [4] @3'20(24..61, 87..101)  g_3_42_94 :docu   
  [5] @3'40(42..53, 25..31)  e_3_47_28 :expr   
  [6] @3'40(45..64, 112..121)  t2F :fb FB=t2F:TsF_FB  
  [7] @3'40(40..71, 43..62)  ctrl :fb FB=ctrl:PositionCtrl  
  [8] @3'50(51..64, 67..71)  e_3_57_69 :expr   
  [9] @3'60(58..74, 25..31)  e_3_66_28 :expr   
  [10] @3'70(71..82, 85..92)  g_3_76_88 :mdlInp FB=$module_PositionCtrlEnv:$Module_PositionCtrlEnv  
  [11] @3'80(77..84, 51..57)  t1F :fb FB=t1F:TsF_FB  
  [12] @3'80(77..91, 41..48)  g_3_84_44 :docu   
  [13] @3'90(88..95, 51..57)  t2F :fb FB=t2F:TsF_FB  
  [14] @3'90(93..106, 78..82)  e_3_99_80 :expr   
  [15] @3'90(93..107, 34..44)  g_3_100_39 :docu   
  [16] @3'80(79..129, 22..32)  g_3_104_27 :docu   
  [17] @3'100(101..110, 51..56)  e_3_105_53 :expr   
  [18] @3'100(105..116, 131..135)  g_3_110_133 :mdlInp FB=$module_PositionCtrlEnv:$Module_PositionCtrlEnv  
  [19] @3'100(105..116, 139..147)  g_3_110_143 :mdlInp FB=$module_PositionCtrlEnv:$Module_PositionCtrlEnv  
  [20] @3'110(111..122, 100..110)  g_3_116_105 :mdlInp FB=$module_PositionCtrlEnv:$Module_PositionCtrlEnv  
  [21] @3'110(111..132, 36..43)  g_3_121_39 :docu   
  [22] @3'120(117..129, 52..59)  testLim :expr   
  [23] @3'120(124..138, 75..90)  ctrl :fb FB=ctrl  
  [24] @3'120(124..140, 130..147)  ctrl :fb FB=ctrl:PositionCtrl  
  [25] @3'120(122..155, 61..68)  g_3_138_64 :docu   
  [26] @3'140(137..152, 46..59)  dpos :fb FB=dpos:TsF_FB  
  [27] @3'140(143..148, 98..100)  e_3_145_99 :expr   
  [28] @3'140(143..148, 101..103)  e_3_145_102 :expr   
  [29] @3'140(143..148, 104..106)  e_3_145_105 :expr   
  [30] @3'140(143..148, 107..109)  e_3_145_108 :expr   
  [31] @3'140(143..148, 110..112)  e_3_145_111 :expr   
  [32] @3'140(139..159, 32..37)  g_3_149_34 :docu   
  [33] @3'150(155..166, 25..31)  g_3_160_28 :mdlOut FB=$module_PositionCtrlEnv:$Module_PositionCtrlEnv  
  [34] @3'160(157..165, 50..52)  e_3_161_51 :expr   
  [35] @3'160(161..178, 95..114)  ctrl :fb FB=ctrl  


== GBlock in Graphic with pins ==

  [0] @3'20(20..31, 29..37)  g_3_25_33 :mdlInp FB=$module_PositionCtrlEnv:$Module_PositionCtrlEnv  
    @3'20(19..21, 34..36)  EvoutMdl:stepO "stepO"
  
    @3'30(30..32, 29..31)  EvinMdl:step "step"
  
    @3'30(30..32, 32..34)  EvUpdinMdl:upd "upd"
    

  [1] @3'20(22..33, 72..82)  g_3_27_77 :mdlInp FB=$module_PositionCtrlEnv:$Module_PositionCtrlEnv  
    @3'30(32..34, 72..74)  EvinMdl:stepSlow "stepSlow"
  
    @3'30(32..34, 75..77)  DinMdl:xmax "xmax:F"
  
    @3'30(32..34, 78..80)  DinMdl:w "w:F"
  
    @3'30(32..34, 80..82)  EvUpdinMdl:updSlow "updSlow"
    

  [2] @3'30(26..32, 57..59)  e_3_29_58 :expr   
    @3'30(31..33, 57..59)  zout:imz "imz"
    

  [3] @3'20(23..42, 112..121)  t1F :fb FB=t1F:TsF_FB  
    @3'20(22..24, 117..119)  Din:Tsi "0.1=:Tsi:F"
  
    @3'20(22..24, 119..121)  Din:Tstep "0.001=:Tstep:F"
    

  [4] @3'20(24..61, 87..101)  g_3_42_94 :docu     

  [5] @3'40(42..53, 25..31)  e_3_47_28 :expr   
    @3'40(41..44, 25..27)  exprInp: ""
  
    @3'40(41..43, 29..31)  Evin:prep "prep"
  
    @3'50(49..54, 25..27)  exprInp: "=#"
  
    @3'50(52..54, 27..29)  Dout:posI "posI:I.20"
    

  [6] @3'40(45..64, 112..121)  t2F :fb FB=t2F:TsF_FB  
    @3'40(44..46, 117..119)  Din:Tsi "0.2=:Tsi:F"
  
    @3'40(44..46, 119..121)  Din:Tstep "0.001=:Tstep:F"
    

  [7] @3'40(40..71, 43..62)  ctrl :fb FB=ctrl:PositionCtrl  
    @3'40(39..41, 44..46)  Evin:step "step"
  
    @3'40(39..41, 49..51)  Din:x "x:F"
  
    @3'40(39..41, 52..54)  Din:temp "temp:F:=71.0"
  
    @3'40(39..41, 57..59)  Din:iMotor "iMotor:F"
  
    @3'40(39..41, 60..62)  evUpdin:upd "upd"
  
    @3'70(70..72, 50..52)  Evout:stepO "stepO"
  
    @3'70(70..72, 54..56)  vout:yCtrl "yCtrl:F"
    

  [8] @3'50(51..64, 67..71)  e_3_57_69 :expr   
    @3'60(63..65, 67..69)  zout:xmax "xmax:F"
    

  [9] @3'60(58..74, 25..31)  e_3_66_28 :expr   
    @3'60(57..71, 25..27)  exprInp: "&0x7ff80000"
  
    @3'70(73..75, 27..29)  vout:posADC "posADC:I.20"
    

  [10] @3'70(71..82, 85..92)  g_3_76_88 :mdlInp FB=$module_PositionCtrlEnv:$Module_PositionCtrlEnv  
    @3'80(81..83, 85..87)  DinMdl:fPosf "fPosf:F"
  
    @3'80(81..83, 87..89)  DinMdl:kP "kP:F"
  
    @3'80(81..83, 90..92)  EvinMdl:init "init"
    

  [11] @3'80(77..84, 51..57)  t1F :fb FB=t1F:TsF_FB  
    @3'80(76..78, 54..56)  Din:x "x"
  
    @3'80(83..85, 54..56)  vout:q "q "
    

  [12] @3'80(77..91, 41..48)  g_3_84_44 :docu     

  [13] @3'90(88..95, 51..57)  t2F :fb FB=t2F:TsF_FB  
    @3'90(87..89, 54..56)  Din:x "x"
  
    @3'90(94..96, 54..56)  vout:q "q "
    

  [14] @3'90(93..106, 78..82)  e_3_99_80 :expr   
    @3'100(105..107, 78..80)  zout:fPos "fPos:F"
    

  [15] @3'90(93..107, 34..44)  g_3_100_39 :docu     

  [16] @3'80(79..129, 22..32)  g_3_104_27 :docu     

  [17] @3'100(101..110, 51..56)  e_3_105_53 :expr   
    @3'100(100..108, 52..54)  exprInp: "*200-"
  
    @3'100(100..102, 54..56)  exprInp: ""
  
    @3'110(109..111, 54..56)  vout:im "im"
    

  [18] @3'100(105..116, 131..135)  g_3_110_133 :mdlInp FB=$module_PositionCtrlEnv:$Module_PositionCtrlEnv  
    @3'110(115..117, 131..133)  EvinMdl:param "param"
  
    @3'110(115..117, 133..135)  EvUpdinMdl:updparam "updparam"
    

  [19] @3'100(105..116, 139..147)  g_3_110_143 :mdlInp FB=$module_PositionCtrlEnv:$Module_PositionCtrlEnv  
    @3'110(115..117, 139..141)  DinMdl:dtdx "dtdx:I"
  
    @3'110(115..117, 142..144)  DinMdl:nAvgw "nAvgw:I"
  
    @3'110(115..117, 144..146)  EvinMdl:ctor "ctor"
    

  [20] @3'110(111..122, 100..110)  g_3_116_105 :mdlInp FB=$module_PositionCtrlEnv:$Module_PositionCtrlEnv  
    @3'120(121..123, 100..102)  EvinMdl:ui "ui"
  
    @3'120(121..123, 103..105)  DinMdl:uicmd "uicmd:S"
    

  [21] @3'110(111..132, 36..43)  g_3_121_39 :docu     

  [22] @3'120(117..129, 52..59)  testLim :expr   
    @3'120(116..119, 52..54)  exprInp: "+"
  
    @3'120(116..125, 54..56)  exprInp: "fPos+"
  
    @3'120(116..119, 57..59)  exprInp: "=^"
  
    @3'130(128..130, 52..54)  zout:pos "pos:F"
    

  [23] @3'120(124..138, 75..90)  ctrl :fb FB=ctrl  
    @3'120(123..125, 80..82)  Evin:stepSlow "stepSlow"
  
    @3'120(123..125, 82..84)  Din:w "w:F"
  
    @3'120(123..125, 85..87)  Din:kP "kP:F"
  
    @3'120(123..125, 87..89)  Evin:init "init"
    

  [24] @3'120(124..140, 130..147)  ctrl :fb FB=ctrl:PositionCtrl  
    @3'120(123..125, 133..135)  evUpdin:updparam "updparam"
  
    @3'120(123..125, 139..141)  Din:dtdx "dtdx"
  
    @3'120(123..125, 142..144)  Din:nAvgw "nAvgw"
    

  [25] @3'120(122..155, 61..68)  g_3_138_64 :docu     

  [26] @3'140(137..152, 46..59)  dpos :fb FB=dpos:TsF_FB  
    @3'140(136..138, 50..52)  Din:x "x"
  
    @3'140(136..138, 53..55)  evUpdin:upd "upd"
  
    @3'140(136..138, 55..57)  Din:Tsi "0.005=:Tsi:F"
  
    @3'140(136..138, 57..59)  Din:Tstep "0.001=:Tstep:F"
  
    @3'150(151..153, 50..52)  Dout:dx "dx()"
    

  [27] @3'140(143..148, 98..100)  e_3_145_99 :expr   
    @3'130(134..146, 98..100)  exprInp: "==2 &"
    

  [28] @3'140(143..148, 101..103)  e_3_145_102 :expr   
    @3'130(134..146, 101..103)  exprInp: "==3 &"
    

  [29] @3'140(143..148, 104..106)  e_3_145_105 :expr   
    @3'130(134..146, 104..106)  exprInp: "==4"
    

  [30] @3'140(143..148, 107..109)  e_3_145_108 :expr   
    @3'130(134..146, 107..109)  exprInp: "==5"
    

  [31] @3'140(143..148, 110..112)  e_3_145_111 :expr   
    @3'130(134..146, 110..112)  exprInp: "==6"
    

  [32] @3'140(139..159, 32..37)  g_3_149_34 :docu     

  [33] @3'150(155..166, 25..31)  g_3_160_28 :mdlOut FB=$module_PositionCtrlEnv:$Module_PositionCtrlEnv  
    @3'150(154..156, 26..28)  EvoutMdl:stepO "stepO"
  
    @3'150(154..156, 29..31)  VoutMdl:speed "speed:F"
    

  [34] @3'160(157..165, 50..52)  e_3_161_51 :expr   
    @3'160(156..158, 50..52)  exprInp: ""
  
    @3'160(164..166, 50..52)  vout:speed "speed"
    

  [35] @3'160(161..178, 95..114)  ctrl :fb FB=ctrl  
    @3'160(160..162, 96..98)  Evin:ui "ui"
  
    @3'160(160..162, 98..100)  Din:switchOff "switchOff:Z"
  
    @3'160(160..162, 100..102)  Din:start "start:Z"
  
    @3'160(160..162, 103..105)  Din:powerOff "powerOff:Z"
  
    @3'160(160..162, 106..108)  Din:recover "recover:Z"
  
    @3'160(160..162, 108..110)  Din:ws "ws:F"
  
    @3'160(160..162, 110..112)  Din:setVal1 "setVal1:Z"
  
    @3'160(160..162, 112..114)  Din:setVal23 "setVal23:Z"
    



== GBlock in Graphic, Details:



[3] @3'20(23..42, 112..121)  t1F =fb  ==FBlock== t1F:TsF_FB  
  Pins:
  Din= Tsi ('0.1=:Tsi:F')
  Din= Tstep ('0.001=:Tstep:F')


[6] @3'40(45..64, 112..121)  t2F =fb  ==FBlock== t2F:TsF_FB  
  Pins:
  Din= Tsi ('0.2=:Tsi:F')
  Din= Tstep ('0.001=:Tstep:F')


[7] @3'40(40..71, 43..62)  ctrl =fb  ==FBlock== ctrl:PositionCtrl  
  Pins:
  Evin= step ('step')
  Din= x ('x:F')  <--dataflow--- expr=e_3_66_28.posADC @3'60(58..74, 25..31)
  Din= temp ('temp:F:=71.0')
  Din= iMotor ('iMotor:F')  <--dataflow--- expr=e_3_29_58.imz @3'30(26..32, 57..59)
  evUpdin= upd ('upd')  <--eventflow--- mdlInp=g_3_25_33.upd @3'20(20..31, 29..37)
  Evout= stepO ('stepO')
  vout= yCtrl ('yCtrl:F')  ---dataflow--> fb=t1F.x @3'40(40..71, 43..62)


[11] @3'80(77..84, 51..57)  t1F =fb  ==FBlock== t1F:TsF_FB  
  Pins:
  fbPinDst<---docu--- docu=g_3_84_44.'' @3'80(77..91, 41..48)
  Din= x ('x')  <--dataflow--- fb=ctrl.yCtrl @3'40(40..71, 43..62)
  vout= q ('q ')  ---dataflow--> fb=t2F.x @3'80(77..84, 51..57)


[13] @3'90(88..95, 51..57)  t2F =fb  ==FBlock== t2F:TsF_FB  
  Pins:
  fbPinDst<---docu--- docu=g_3_84_44.'' @3'80(77..91, 41..48)
  Din= x ('x')  <--dataflow--- fb=t1F.q @3'80(77..84, 51..57)
  vout= q ('q ')  ---dataflow--> expr=e_3_105_53.'' @3'90(88..95, 51..57)


[23] @3'120(124..138, 75..90)  ctrl =fb  ==FBlock== ctrl  
  Pins:
  Evin= stepSlow ('stepSlow')
  Din= w ('w:F')  <--dataflow--- mdlInp=g_3_27_77.w @3'20(22..33, 72..82)
  Din= kP ('kP:F')  <--dataflow--- mdlInp=g_3_76_88.kP @3'70(71..82, 85..92)
  Evin= init ('init')  <--eventflow--- mdlInp=g_3_76_88.init @3'70(71..82, 85..92)


[24] @3'120(124..140, 130..147)  ctrl =fb  ==FBlock== ctrl:PositionCtrl  
  Pins:
  evUpdin= updparam ('updparam')  <--eventflow--- mdlInp=g_3_110_133.updparam @3'100(105..116, 131..135)
  Din= dtdx ('dtdx')  <--dataflow--- mdlInp=g_3_110_143.dtdx @3'100(105..116, 139..147)
  Din= nAvgw ('nAvgw')  <--dataflow--- mdlInp=g_3_110_143.nAvgw @3'100(105..116, 139..147)


[26] @3'140(137..152, 46..59)  dpos =fb  ==FBlock== dpos:TsF_FB  
  Pins:
  Din= x ('x')  <--dataflow--- expr=testLim.pos @3'120(117..129, 52..59)
  evUpdin= upd ('upd')
  Din= Tsi ('0.005=:Tsi:F')
  Din= Tstep ('0.001=:Tstep:F')
  Dout= dx ('dx()')  ---dataflow--> expr=e_3_161_51.'' @3'140(137..152, 46..59)


[35] @3'160(161..178, 95..114)  ctrl =fb  ==FBlock== ctrl  
  Pins:
  Evin= ui ('ui')
  Din= switchOff ('switchOff:Z')  <--dataflow--- expr=e_3_145_99.'' @3'140(143..148, 98..100)
  Din= start ('start:Z')  <--dataflow--- expr=e_3_145_102.'' @3'140(143..148, 101..103)
  Din= powerOff ('powerOff:Z')  <--dataflow--- expr=e_3_145_105.'' @3'140(143..148, 104..106)
  Din= recover ('recover:Z')  <--dataflow--- expr=e_3_145_108.'' @3'140(143..148, 107..109)
  Din= ws ('ws:F')
  Din= setVal1 ('setVal1:Z')  <--dataflow--- expr=e_3_145_111.'' @3'140(143..148, 110..112)
  Din= setVal23 ('setVal23:Z')




== Xref in Graphic Detail==
  



== Demux in Graphic Detail==
  

  

== Expression by name in Graphic Detail ==


[17] @3'100(101..110, 51..56) e_3_105_53 =expr  ==FBexpr== ''
  Pin exprInp=  ('*200-')
    dataflow= <--- e_3_161_51.speed
    docu= <--- g_3_100_39.
  Pin exprInp=  ('')
    dataflow= <--- t2F.q 
  Pin vout= im ('im')
    dataflow=  --> testLim.fPos+
    dataflow=  --> e_3_29_58.

[28] @3'140(143..148, 101..103) e_3_145_102 =expr  ==FBexpr== ''
  Pin exprInp=  ('==3 &')
    dataflow= <--- g_3_116_105.uicmd:S

[29] @3'140(143..148, 104..106) e_3_145_105 =expr  ==FBexpr== ''
  Pin exprInp=  ('==4')
    dataflow= <--- g_3_116_105.uicmd:S

[30] @3'140(143..148, 107..109) e_3_145_108 =expr  ==FBexpr== ''
  Pin exprInp=  ('==5')
    dataflow= <--- g_3_116_105.uicmd:S

[31] @3'140(143..148, 110..112) e_3_145_111 =expr  ==FBexpr== ''
  Pin exprInp=  ('==6')
    dataflow= <--- g_3_116_105.uicmd:S

[27] @3'140(143..148, 98..100) e_3_145_99 =expr  ==FBexpr== ''
  Pin exprInp=  ('==2 &')
    dataflow= <--- g_3_116_105.uicmd:S

[34] @3'160(157..165, 50..52) e_3_161_51 =expr  ==FBexpr== ''
  Pin exprInp=  ('')
    dataflow= <--- dpos.dx()
  Pin vout= speed ('speed')
    dataflow=  --> e_3_105_53.*200-
    docu= <--- g_3_149_34.

[2] @3'30(26..32, 57..59) e_3_29_58 =expr  ==FBexpr== ''
  Pin zout= imz ('imz')
    dataflow=  --> ctrl.iMotor:F

[5] @3'40(42..53, 25..31) e_3_47_28 =expr  ==FBexpr== ''
  Pin exprInp=  ('')
    dataflow= <--- testLim.pos:F
  Pin Evin= prep ('prep')
    eventflow= <--- g_3_25_33.step
  Pin exprInp=  ('=#')
  Pin Dout= posI ('posI:I.20')
    dataflow=  --> e_3_66_28.&0x7ff80000

[8] @3'50(51..64, 67..71) e_3_57_69 =expr  ==FBexpr== ''
  Pin zout= xmax ('xmax:F')
    dataflow=  --> testLim.=^

[9] @3'60(58..74, 25..31) e_3_66_28 =expr  ==FBexpr== ''
  Pin exprInp=  ('&0x7ff80000')
    dataflow= <--- e_3_47_28.posI:I.20
  Pin vout= posADC ('posADC:I.20')
    docu= <--- g_3_104_27.
    dataflow=  --> ctrl.x:F

[14] @3'90(93..106, 78..82) e_3_99_80 =expr  ==FBexpr== ''
  Pin zout= fPos ('fPos:F')

[22] @3'120(117..129, 52..59) testLim =expr  ==FBexpr== 'testLim'
  Pin exprInp=  ('+')
    dataflow= <--- testLim.pos:F
    docu= <--- g_3_121_39.
  Pin exprInp=  ('fPos+')
    dataflow= <--- e_3_105_53.im
  Pin exprInp=  ('=^')
    docu= <--- g_3_138_64.
    dataflow= <--- e_3_57_69.xmax:F
  Pin zout= pos ('pos:F')
    dataflow=  --> e_3_47_28.
    dataflow=  --> testLim.+
    dataflow=  --> dpos.x



== GStates in Graphic, Details:





== GStateTransCond in Graphic Detail ==




== FBlock instances in the module ==

  ctrl
  dpos
  t1F
  t2F

== All FBlock instances in the module ==


  
  
  FBlock kind=TheModule "$module_PositionCtrlEnv :$Module_PositionCtrlEnv"
  
  
  FBlock kind=Libmodule "ctrl :PositionCtrl"
  
  
  FBlock kind=Submodule "dpos :TsF_FB"
    Evin ctor
    Evin init
    Evin param
    Evin paramExp
    Evin step
    evUpdin upd
    Evout stepO
    evUpdout updO
    Din Ts (Ts)
    Din Tse (Tse)
    Din Tsi (Tsi)
    Din Tstep (Tstep)
    Din x (x)
    Dout dx (dx)
    vout q (q)
    zout qz (qz)
    Dout stepR (stepR)
    Dout y (y)
    zout yz (yz)
  
  
  FBlock kind=Submodule "t1F :TsF_FB"
    Evin ctor
    Evin init
    Evin param
    Evin paramExp
    Evin step
    evUpdin upd
    Evout stepO
    evUpdout updO
    Din Ts (Ts)
    Din Tse (Tse)
    Din Tsi (Tsi)
    Din Tstep (Tstep)
    Din x (x)
    Dout dx (dx)
    vout q (q)
    zout qz (qz)
    Dout stepR (stepR)
    Dout y (y)
    zout yz (yz)
  
  
  FBlock kind=Submodule "t2F :TsF_FB"
    Evin ctor
    Evin init
    Evin param
    Evin paramExp
    Evin step
    evUpdin upd
    Evout stepO
    evUpdout updO
    Din Ts (Ts)
    Din Tse (Tse)
    Din Tsi (Tsi)
    Din Tstep (Tstep)
    Din x (x)
    Dout dx (dx)
    vout q (q)
    zout qz (qz)
    Dout stepR (stepR)
    Dout y (y)
    zout yz (yz)




== StBlock instances in the module ==



//Format: *StateName[parentName][...||...] -->...2  
//        :                         :       :    ^-- number of chilld states
//        :                         :       :  ^---- it is a region, State_FBcl#bRegion
//        :                         :       ^-- childDefaultState is set.
//        :                         ^---bParallelParent  
//        ^-- **: bTopState, * :State_FBcl#bDefaultState, ||=bOrthRegion  



== All FBlock instances in the module ==


  $module_PositionCtrlEnv
  ctrl
  dpos
  t1F
  t2F

