最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

一個案例帶你熟悉三菱ST程序的編寫過程

2022-11-13 12:08 作者:3_qq_3  | 我要投稿

和這前的控制要求一樣? 一個按鈕控制三盞燈,在FBF功能塊中編寫一個按鈕控制三盞燈 的ST程序,然后在主程序中調(diào)用這個FB.

通過這個案例帶大家熟悉在GX-WORKS2環(huán)境下ST語言的用法。

第一步 新建數(shù)據(jù)?

數(shù)據(jù)名根據(jù)自己的需要趕寫這里我填的是OneToThree

程序語言選擇 ST

第二步 在OneToThree 功能塊中建立局部標簽


局部標簽

================OneToThree 功能塊中局部標簽=====================


類????????????????標簽名????????????數(shù)據(jù)類型

VAR_INPUT ????Button ????Bit

VAR_OUTPUT???? Lamp0???????? Bit

VAR_OUTPUT???? Lamp1???? ????Bit

VAR_OUTPUT???? Lamp2???????? Bit

VAR ????????????????????int_Step1 ????Word[Signed]

VAR ????????????????????int_Step2???? Word[Signed]

VAR???????????????????? TON_1 ????????????TON

VAR ????????????????????TimeOut_bool ????Bit

VAR???????????????????????? dummy_time???? Time

VAR ????????????????????????relay???????????????????? Bit

VAR???????????????????????? Button_Relay1 ????Bit

VAR???????????????????????? Button_Relay2???? Bit

=========================================================

在程序編寫過程可先寫注釋,記錄下自己的思路,并隨時編譯和保存程序

這樣可以避免在編寫了很多程序時編譯發(fā)現(xiàn)程序中有很多錯誤,改起來是很痛苦的一件事。

每寫一小段程序就編譯一下能用時發(fā)現(xiàn)錯誤,及時保存能避免在意外情況下自己辛苦編寫的程序丟失。


====================OneToThree 功能塊中ST程序=============================


(*一個按鈕三盞燈*)


(*

程序說明:

一個按鈕控制三盞燈

用 一個 按鈕 控制 三 組( 或 三個) 燈, 以 達到 控制 燈 的 亮度。

?由 PLC 組成 一個 控制器, 每 按 一次 按鈕 增加 一組 燈 亮, 三 組 燈 全 亮 后,?

每 按 一次 按鈕, 滅 一組 燈( 為了 使 每組 燈 亮的 時間 盡量 相等, 要求 先 亮的 燈 先 滅),

?如果 按下 按鈕 的 時間 超過 5s, 則 燈 全 滅。


*)


(*

程序思路

采用流程控制

初始化程序:

復位三個燈


?初始化完成后

按下按鈕進入流程1

流程1 置位0號燈

按下按鈕進入流程2

流程2置位1號燈

按下按鈕進入流程3

流程2置位2號燈

-----------------------------------

按下按鈕進入流程4

流程1 置位0號燈

按下按鈕進入流程5

流程2置位1號燈

按下按鈕進入流程6

流程2置位2號燈

======================

對按鈕進行計時,當超進5秒時復位三個燈


*)


PLS( Button, Button_Relay1 );


IF? FirstScan THEN

int_Step1:= 0 ;

Lamp0 := FALSE ;

Lamp1 := FALSE ;

Lamp2 := FALSE ;

END_IF;


CASE? int_Step1 OF

0 :

Lamp0 := FALSE ;

Lamp1 := FALSE ;

Lamp2 := FALSE ;

IF? Button_Relay1 = TRUE? THEN

int_Step1:= 1;

Button_Relay1 := FALSE ;

END_IF;

?

1 :

Lamp0 := TRUE ;

IF? Button_Relay1 = TRUE? THEN

int_Step1:= 2;

Button_Relay1 := FALSE;?

END_IF; ?

2 :

Lamp1 := TRUE ;

IF? Button_Relay1 = TRUE? THEN

int_Step1:= 3;

Button_Relay1 := FALSE;?

END_IF;

3 :

Lamp2 := TRUE ;

IF? Button_Relay1 = TRUE? THEN

int_Step1:= 4;

Button_Relay1 := FALSE ;

END_IF;

4 :

Lamp0 := FALSE ;

IF? Button_Relay1 = TRUE? THEN

int_Step1:= 5;

Button_Relay1 := FALSE ;

END_IF; ?

5 :

Lamp1 := FALSE ;

IF? Button_Relay1 = TRUE? THEN

int_Step1:= 6;

Button_Relay1 := FALSE ;

END_IF;

6 :

Lamp2 := FALSE ;

IF? Button_Relay1 = TRUE? THEN

int_Step1:= 1;

Button_Relay1 := FALSE ;

END_IF; ?

END_CASE;?


(* 按鈕按下5秒超時處理*)



TON_1(IN:= Button ,PT:= T#5s ,Q:=TimeOut_bool ,ET:= dummy_time );


PLS( TimeOut_bool, relay );


IF relay? THEN

int_Step1:= 0;

END_IF;

下面是代碼截圖

全局標簽
Global1 全局標簽

BTN_and_Lamp 全局標簽

程序仿真:

程序仿真


一個案例帶你熟悉三菱ST程序的編寫過程的評論 (共 條)

分享到微博請遵守國家法律
新疆| 金塔县| 博客| 滦平县| 盐津县| 滨海县| 彝良县| 四川省| 阿克陶县| 长岛县| 小金县| 香港| 平塘县| 南投县| 辛集市| 岐山县| 师宗县| 改则县| 石屏县| 元阳县| 鄂伦春自治旗| 安多县| 沁阳市| 甘洛县| 灵川县| 枣庄市| 呼伦贝尔市| 巴楚县| 平顶山市| 建湖县| 盐山县| 阜南县| 苗栗市| 乡城县| 奈曼旗| 邳州市| 广昌县| 洛宁县| 江孜县| 新巴尔虎左旗| 海林市|