91黄动漫 I 欧美 日韩 国产 成人 在线 I a级成人毛片 I 农村黄色片 I 男生捅女生的肌肌 I 精品99一区二区三区 I 妃光莉av I 日日夜夜操操 I 性中国古装videossex I 久久不卡av I 美女高潮动态图 I 极品美女开粉嫩精品 I 牛牛精品一区二区 I 91精品福利视频 I 成人刺激视频 I 91国内精品视频 I 中国一级特黄毛片大片 I 校长狠狠挺进校花体内小说 I 欧美激情黄色片 I 欧美久久久一区 I 爱豆国产剧免费观看大全剧苏畅 I 麻豆国产人妻欲求不满谁演的 I 亚洲一区二区在线免费观看视频 I 国产超碰av人人做人人爽 I 精品国产第一国产综合精品 I 久久免费看av I 欧美一区二区三区白人 I 国产精品夫妻激情 I 校花被肉干高h潮不断 I 欧美最猛黑人xxxx黑人表情 I 国产欧美日韩一区二区搜索 I 极品女神露脸呻吟啪啪 I 人人天天久久 I 亚洲动漫在线 I 日本91福利区 I 五月天 桃色 开心 I av在线免费观看国产 I 男人添女人的免费视频 I 夜夜穞天天穞狠狠穞

nos001
級(jí)別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 54 個(gè)
工控威望: 110 點(diǎn)
下載積分: 814 分
在線時(shí)間: 42(小時(shí))
注冊(cè)時(shí)間: 2018-03-31
最后登錄: 2022-10-06
查看nos001的 主題 / 回貼
樓主  發(fā)表于: 2019-06-27 16:21
圖片:
找不到st編程的教程,硬是自己摸索,一點(diǎn)一點(diǎn)摳出來(lái)的。
后來(lái)發(fā)現(xiàn)iQ-R 結(jié)構(gòu)化文本(ST)編程指南就是教程,關(guān)于語(yǔ)法、其他手冊(cè)上找不到的較難理解的結(jié)構(gòu)變量都有示例。
完全st編程的中斷寫(xiě)法好幾天無(wú)從著手,把FXCPU結(jié)構(gòu)化順序指令篇看了一遍又一遍,才摸索出來(lái),具體見(jiàn)工程附件。
工程是未完成的不完整工程,只是希望自己認(rèn)為較難理解手冊(cè)沒(méi)提及的st編程方法對(duì)需要的同志有所幫助。

另外吐槽一下st編輯器,變量不能在程序里定義,只能在標(biāo)簽窗口定義,結(jié)構(gòu)體成員引用不能單獨(dú)設(shè)置字體顏色,這些都影響閱讀。
總之,gx works2 的st編輯器比較簡(jiǎn)陋,但可閱讀性已經(jīng)比梯形圖好多了。

復(fù)制代碼
  1. (*****************************************************************************************************
  2. * 程序“恒定掃描”設(shè)置
  3. * M8039 = TRUE, 則程序?yàn)楹愣ㄖ芷趻呙?/li>
  4. * D8039 = 掃描周期, 單位為ms,最小恒定掃描周期為1ms
  5. *****************************************************************************************************)
  6. M8039 := TRUE;
  7. IF M8039 THEN
  8.     D8039 := 5;
  9. END_IF;
  10. (*****************************************************************************************************
  11. * 初始化
  12. *****************************************************************************************************)
  13. EI ( TRUE );        (* 允許中斷 *)
  14. IF M8002 THEN
  15.     
  16.     FOR j := 0 TO 30 BY 1 DO        
  17.         Tcnt[j] := -1;        
  18.     END_FOR;
  19.     RST( TRUE, HmiKey_ManualOP );
  20.     RST( TRUE, bMode_Manual );
  21.     RST( TRUE, HmiKey_AutoPack );
  22.     RST( TRUE, bMode_Auto );
  23.     DownFill_FB_Call( );
  24.     VerticalSeal_FB_Call( );          
  25.     BagFold_FB_Call( );
  26.     
  27. END_IF;
  28. (* 每包包裝時(shí)間所需計(jì)數(shù)值 = 60000ms / 10ms / 預(yù)置包裝速度,每分鐘為60000ms,定時(shí)器為10ms *)
  29. TVal_Packing :=  6000 / Param_PresetSpeed;
  30. (*****************************************************************************************************
  31. * 清零
  32. *****************************************************************************************************)
  33. IF( HmiKey_BagCnt_CLR ) THEN
  34.     MakeBagCnt := 0;
  35. END_IF;
  36. IF( HmiKey_PackingCnt_CLR ) THEN
  37.     PackingCnt := 0;
  38. END_IF;    
  39. (*****************************************************************************************************
  40. * 警報(bào)發(fā)生
  41. * 報(bào)警鎖,任何一種警報(bào)發(fā)生,自動(dòng)包裝都將停止運(yùn)行
  42. ****************************************************************************************************)
  43. IF( bAlarm_Lock_AutoPack = TRUE ) THEN
  44.     
  45.     ZRST( TRUE, Y001, Y007 );
  46.     ZRST( TRUE, Y010, Y017 );
  47.     ZRST( TRUE, Y020, Y027 );    
  48.             
  49.     FOR j := 0 TO 30 BY 1  DO        
  50.         Tcnt[j] := -1;        
  51.     END_FOR;    
  52.     
  53. END_IF;
  54. (*****************************************************************************************************
  55. * HMI按鈕開(kāi)關(guān)
  56. *****************************************************************************************************)
  57. Key_Hmi_FB_Call();
  58. (*****************************************************************************************************
  59. * 包裝流程
  60. *
  61. *****************************************************************************************************)
  62. IF( bMode_Auto ) AND ( bAlarm_Lock_AutoPack = FALSE ) AND ( HmiKey_FillPack[1]  OR  HmiKey_EmptyBagTest[1]  OR  HmiKey_FillBagOne[1] ) THEN
  63.     
  64.     IF( HmiKey_FillPack[1]  ) THEN
  65.         DownFill_FB_Call( hmi_key := KeyDownID,  pT_DownFillDly := Tcnt[ ID_DOWN_FILL_DLY ],   iX := iX_DownFill ); (* 下料 *)
  66.     END_IF;
  67.         
  68.     IF( HmiKey_EmptyBagTest[1]  OR  HmiKey_FillBagOne[1] ) THEN
  69.         
  70.         IF( PackingFlow = 0 ) THEN  
  71.                       
  72.             SET( TRUE, bEnd_DownFill );
  73.             PackingFlow := FLOW_PULL_FILM;
  74.                         
  75.         END_IF;
  76.         
  77.     END_IF;
  78.     VerticalSeal_FB_Call( bEnable := bServo_End );    (* 縱封 *)        
  79.     
  80.     BagFold_FB_Call( bEnable:= bServo_End );          (* 折角 *)
  81.     
  82.     ServoControl_FB_Call( pServoEnd := bServo_End  ); (* 伺服拉膜;指針參數(shù),指向全局變量 *)
  83.     
  84.     (* 真空箱閉合 *)
  85.     IF( bServo_End = TRUE ) THEN
  86.         
  87.         IF( Tcnt[ ID_VACUUM_BOX_CLOSE_DLY ] = -1 ) THEN    
  88.             Tcnt[ ID_VACUUM_BOX_CLOSE_DLY ] := Param_VcmBoxCloseDly ;    
  89.         END_IF;
  90.         
  91.         IF( Tcnt[ ID_VACUUM_BOX_CLOSE_DLY ] = 0 )  AND ( bAlarm_GlassDoor = FALSE ) THEN
  92.             
  93.             Tcnt[ ID_VACUUM_BOX_CLOSE_DLY ] := -255;
  94.             Tcnt[ ID_BAG_CUT_DLY ] := Param_CutDly;
  95.             SET( TRUE, Y_VacuumBox_Y3 );            
  96.             
  97.         END_IF;      
  98.           
  99.     END_IF;
  100.     (* 剪切包裝膜 *)
  101.     IF( Y_VacuumBox_Y3 ) THEN
  102.         
  103.         IF( Tcnt[ ID_BAG_CUT_DLY ]  = 0 ) AND ( bAlarm_GlassDoor = FALSE ) THEN
  104.             
  105.             Tcnt[ ID_BAG_CUT_DLY ] := -255;
  106.             Tcnt[ ID_BAG_CUT ] := Param_Cut;
  107.             SET( TRUE, Y_Cutter_Print_cylinder );          
  108.             
  109.         END_IF;    
  110.         
  111.         IF( Tcnt[ ID_BAG_CUT ]  = 0 ) THEN
  112.             
  113.             Tcnt[ ID_BAG_CUT ] := -255;
  114.             Tcnt[ ID_VACUUMIZE ] := Param_Vacuum;
  115.             RST( TRUE, Y_Cutter_Print_cylinder );
  116.             SET( TRUE, Y_VacuumPump_Y5 );
  117.             SET( TRUE, Y_Vacuum_cylinder );
  118.             
  119.         END_IF;    
  120.               
  121.     END_IF;
  122.     (* 包裝袋抽真空、封口,恒溫,冷卻 *)
  123.     IF( Tcnt[ ID_VACUUMIZE ] = 0 ) THEN           (* 抽真空 *)
  124.         
  125.         Tcnt[ ID_VACUUMIZE ] := -255;
  126.         Tcnt[ ID_HEAT_SEAL ] := Param_HeatSeal;
  127.         SET( TRUE, Y_HoriSeal_cylinder );
  128.         
  129.     END_IF;
  130.     
  131.     IF( Tcnt[ ID_HEAT_SEAL ] = 0 ) THEN           (* 熱封 *)
  132.         Tcnt[ ID_HEAT_SEAL ] := -255;
  133.         Tcnt[ ID_SEAL_KEEP ] := Param_SealKeep;
  134.         RST( TRUE, Y_HoriSeal_cylinder );
  135.     END_IF;
  136.     
  137.     IF( Tcnt[ ID_SEAL_KEEP ] = 0 ) THEN           (* 恒溫保持 *)
  138.         Tcnt[ ID_SEAL_KEEP ] := -255;
  139.         Tcnt[ID_SEAL_COOL ] := Param_SealCool;
  140.         SET( TRUE, Y_AirIn_cylinder );
  141.     END_IF;
  142.     
  143.     IF( Tcnt[ID_SEAL_COOL ] = 0 ) THEN            (* 冷卻等待 *)
  144.         RST( TRUE, Y_VacuumBox_Y3 );
  145.         RST( TRUE, Y_Vacuum_cylinder );
  146.         RST( TRUE, Y_AirIn_cylinder );
  147.         PackingFlow := FLOW_END;
  148.     END_IF;
  149.     
  150.     (* 每分鐘為60000ms,程序掃描周期為5ms,每分鐘的計(jì)數(shù)值為60000 / 5 = 12000 *)
  151.     IF( Cnt < 11999 ) THEN
  152.         Cnt := Cnt + 1;
  153.     END_IF;
  154.         
  155.     IF( PackingFlow = FLOW_END  ) AND ( HmiKey_FillPack[1]  ) THEN
  156.     
  157.         MakeBagCnt := MakeBagCnt + 1;             (* 制袋計(jì)數(shù) *)
  158.         PackingCnt := PackingCnt + 1;             (* 包裝計(jì)數(shù) *)
  159.         PackingSpeed := 12000 / Cnt;              (* 包裝速度計(jì)算 *)
  160.         Cnt := 0;
  161.         
  162.     END_IF;
  163.     
  164.     IF( PackingFlow = FLOW_END ) AND ( HmiKey_EmptyBagTest[1]  OR  HmiKey_FillBagOne[1] )  THEN
  165.         
  166.         MakeBagCnt := MakeBagCnt + 1;             (* 制袋計(jì)數(shù) *)
  167.         PackingSpeed := 12000 / Cnt;
  168.         Cnt := 0;
  169.                 
  170.     END_IF;
  171.     (* 包裝流程結(jié)束,復(fù)位定時(shí)器、伺服結(jié)束標(biāo)志、制袋一個(gè)按鈕 *)
  172.     IF( PackingFlow = FLOW_END  ) THEN  
  173.         
  174.         PackingFlow := 0;
  175.         RST( TRUE, bServo_End );
  176.         RST( TRUE, HmiKey_FillBagOne[0] );
  177.         FOR j := 0 TO 30 BY 1 DO
  178.             Tcnt[j] := -1;
  179.         END_FOR;
  180.               
  181.     END_IF;
  182.                 
  183. END_IF;
  184. (*****************************************************************************************************
  185. * 包裝膜卷棍電機(jī)控制
  186. *
  187. * 說(shuō)明:接近開(kāi)關(guān)的感應(yīng)體是一個(gè)自由落體的金屬橫桿,由包裝膜拉動(dòng)其上下運(yùn)動(dòng)表示包裝膜的松緊。
  188. *       感應(yīng)體運(yùn)動(dòng)到頂部,頂部金屬感應(yīng)開(kāi)關(guān)動(dòng)作,說(shuō)明包裝膜被拉緊,包裝膜卷棍電機(jī)運(yùn)轉(zhuǎn)送膜;
  189. *       感應(yīng)體運(yùn)動(dòng)到中部,中部金屬感應(yīng)開(kāi)關(guān)動(dòng)作,說(shuō)明送膜已經(jīng)足夠,停止送膜;
  190. *       感應(yīng)體運(yùn)動(dòng)到底部,底部金屬感應(yīng)開(kāi)關(guān)動(dòng)作,說(shuō)明接近開(kāi)關(guān)的感應(yīng)體已經(jīng)沒(méi)有包裝膜拉動(dòng)其運(yùn)動(dòng),
  191. *       或者送膜太多,感應(yīng)體自由落體到底部
  192. ****************************************************************************************************)
  193. IF bMode_Auto THEN
  194.     
  195.     IF( ix_PackFilm_SensorTop  ) THEN
  196.         
  197.         SET( TRUE, Y_FilmMotor_Y13 ); (* 送膜 *)
  198.         
  199.     ELSIF( ix_PackFilm_SensorMid OR ix_PackFilm_SensorBot )  THEN
  200.         
  201.         RST( TRUE, Y_FilmMotor_Y13 ); (* 送膜停止 *)
  202.         
  203.     END_IF;  
  204.     
  205. END_IF;
  206. (* 手動(dòng)控制,放膜 *)
  207. IF HmiKey_ManualOP THEN
  208.     
  209.     IF( HMI手動(dòng)_放膜 ) THEN
  210.         
  211.         SET( TRUE, Y_FilmMotor_Y13 ); (* 手動(dòng)送膜 *)
  212.         
  213.     ELSE  
  214.         
  215.         RST( TRUE, Y_FilmMotor_Y13 );    
  216.         
  217.     END_IF;
  218.     
  219. END_IF;
[ 此帖被nos001在2019-07-04 17:38重新編輯 ]
附件: 結(jié)構(gòu)化文本(ST)編程指南-1802.pdf (1477 K) 下載次數(shù):943
附件: 顆粒包裝機(jī)v1.0_ST.gxw.rar (180 K) 下載次數(shù):758
本帖最近評(píng)分記錄:
  • 下載積分:+1(gk1234) 感謝分享!
  • 下載積分:+1(lizhendong) 感謝分享!
  • 下載積分:+1(xn0220xn) 真誠(chéng)感謝!
  • 下載積分:+1(chihung) 感謝分享!
  • 下載積分:+5(吳工2014)
  • 下載積分:+1(zhcdb2671) 真誠(chéng)感謝!
  • 下載積分:+3(heidelberg5) 好貼好貼!
    楓落云端
    施主,腳抬一下
    級(jí)別: 略有小成

    精華主題: 0
    發(fā)帖數(shù)量: 336 個(gè)
    工控威望: 465 點(diǎn)
    下載積分: 1549 分
    在線時(shí)間: 416(小時(shí))
    注冊(cè)時(shí)間: 2017-10-10
    最后登錄: 2025-12-02
    查看楓落云端的 主題 / 回貼
    1樓  發(fā)表于: 2019-06-27 17:11
    圖片:
    圖片:
    圖片:
    ------------------------
    本帖最近評(píng)分記錄:
  • 下載積分:+5(菜鳥(niǎo)入行) 感謝分享!
    楓落云端
    施主,腳抬一下
    級(jí)別: 略有小成

    精華主題: 0
    發(fā)帖數(shù)量: 336 個(gè)
    工控威望: 465 點(diǎn)
    下載積分: 1549 分
    在線時(shí)間: 416(小時(shí))
    注冊(cè)時(shí)間: 2017-10-10
    最后登錄: 2025-12-02
    查看楓落云端的 主題 / 回貼
    2樓  發(fā)表于: 2019-06-28 09:38
    只是看起來(lái)一個(gè)指令解決的事情非得寫(xiě)一IF ELSE,而且還出現(xiàn)雙線圈提示。個(gè)人習(xí)慣

    主站蜘蛛池模板: 在线中文字幕一区二区 | 国产一区二区三区免费观看网站上 | 男女爽爽无遮挡午夜视频 | 乌克兰丰满少妇毛片 | 极品少妇的粉嫩小泬看片 | 成年无码av片在线 | 激情综合五月天 | 五月av | 久久久久久亚洲精品中文字幕 | 午夜伦理影视 | 亚洲精品国偷自产在线99人热 | 久久久国产不卡一区二区 | 亚洲天堂日韩在线 | 精品av熟女一区二区偷窥海滩 | 亚洲中文 字幕 国产 综合 | 成人免费看片98图片 | 狠狠爱亚洲综合久久 | 成在人线av无码免费高潮求绕 | 影音先锋中文字幕在线播放 | 久草网视频 | 国内自拍真实伦在线观看 | 色综合天 | 亚洲一区成人 | 中文字幕在线精品 | 国产自美女在线精品尤物 | 天堂av手机在线观看 | 国产精品vr专区 | 亚洲精品卡一卡二 | 印度精品av三级 | 日本高清一区二区三 | 日韩黄色一级大片 | 乡下少妇xxgaoh性 | 国产乡下妇女做爰视频 | 精品视频在线观看免费 | 印度女人狂野牲交 | 国产日韩一区二区三区 | 在线看黄网址 | 国产亚洲精品美女久久久m 欧美高清视频在线观看 | 青青草欧美视频 | 国产亚洲欧美另类一区二区 | 一区二区三区乱码在线 | 欧洲 | 欧美混交群体交 | 日本在线视频一区二区三区 | 香蕉精品亚洲二区在线观看 | 奇米影视一区二区三区 | 久久国产亚洲精选av | 久久偷看各类wc女厕嘘嘘偷窃 | 婷婷色香合缴缴情av第三区 | 欧美亚洲综合在线 | 三级视频在线看 | 亚洲视频图片小说 | 性视频网址 | 欧美一区二区三区喷汁尤物 | 成年人午夜 | 嘿咻嘿咻男女免费专区 | www五月天com | 欧美尺寸又黑又粗又长 | 亚洲狠狠爱综合影院网页 | 国产亚洲欧美在线专区 | 日韩在线一级 | 国产香蕉视频在线播放 | 玩弄少妇的肉体k8经典 | 欧美性色网站 | 欧美日韩中文字幕在线观看 | 西西人体444www高清大胆 | 国产cdts系列另类在线观看 | 又色又爽又黄18禁美女裸身无遮挡 | 欧美熟妇色ⅹxxx欧美妇 | 看国产黄大片在线观看 | 日韩精品一区二区中文字幕 | 色8激情欧美成人久久综合电影 | 亚洲精品在线观 | 久久久久久久久久久久亚洲 | 亚洲国产视频在线观看 | 国产喷水吹潮视频www | 伊人手机视频 | 六月婷婷在线视频 | 日韩欧美精品在线 | 风流老熟女一区二区三区 | 色综合天天综合高清网国产在线 | 中文字幕乱码在线蜜乳欧美字幕 | 天天天天操 | 精品一区二区视频在线观看 | 粉嫩av一区二区三区免费野 | 中文字幕人妻高清乱码 | 九九久久综合 | 色综合久久久久久久 | 调教驯服丰满美艳麻麻在线视频 | 99久久亚洲综合精品成人网 | 亚洲精品在线影院 | 日本一二免费不卡区 | 女子spa高潮呻吟抽搐 | 国产午国产午夜精华 免费 小雪尝禁果又粗又大的视频 | 久久av无码精品人妻出轨 | 国产欧美精品一区二区三区四区 | 亚洲一区在线免费 | 午夜福利国产成人a∨在线观看 | 国产最新进精品视频 | 国语自产视频在线 |