編程語言、數據類型與存儲區(qū)、用戶程序_第1頁
編程語言、數據類型與存儲區(qū)、用戶程序_第2頁
編程語言、數據類型與存儲區(qū)、用戶程序_第3頁
編程語言、數據類型與存儲區(qū)、用戶程序_第4頁
編程語言、數據類型與存儲區(qū)、用戶程序_第5頁
已閱讀5頁,還剩44頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

§3-1~§3-3編程語言、數據類型與存儲區(qū)、用戶程序§3S7-1200PLC的程序設計基礎陳慶彬E-mail:cqb@福州大學電氣工程與自動化學院2023/2/13.6用STEP7Basic生成用戶程序——程序編輯器

3.6用STEP7Basic生成用戶程序——電機啟動主電路

3.6用STEP7Basic生成用戶程序——電機啟動控制電路

3.6用STEP7Basic生成用戶程序——電機啟動控制程序

3.6用STEP7Basic生成用戶程序——生成用戶程序

打開主程序OB1,生成如下用戶程序:3.6用STEP7Basic生成用戶程序——工具欄上的按鈕在選中的程序段下面插入一個新的程序段刪除選中的程序段打開、關閉所有的程序段設置變量的顯示方式:顯示絕對地址、符號地址或同時顯示關閉或打開程序段的注釋顯示或隱藏收藏夾跳轉到前一個或下一個語法錯誤更新不一致的塊調用打開或關閉程序狀態(tài)監(jiān)視3.6用STEP7Basic生成用戶程序——設置程序編輯器參數1/2

“選項”“設置”:3.6用STEP7Basic生成用戶程序——設置程序編輯器參數2/2

操作數與其他對象(例如觸點)之間的垂直間距操作數水平方向和垂直方向可以輸入的最大字符數3.6用STEP7Basic生成用戶程序——生成和修改變量1/2

2.6用STEP7Basic生成用戶程序——生成和修改變量2/2

3.6用STEP7Basic生成用戶程序——快速生成變量

3.6用STEP7Basic生成用戶程序——設置變量的斷電保護功能

設置后有保持功能的M區(qū)的變量的“保持性”列的多選框中出現3.6用STEP7Basic生成用戶程序——全局變量和局部變量

PLC變量表中的變量可用于整個PLC中所有的代碼塊,在所有的代碼中具有相同的意義和唯一的名稱,可以在變量表中,為輸入I、輸出Q和位存儲器M的位、字節(jié)、字和雙字定義全局變量。在程序中,全局變量被自動添加雙引號,例如“起動”。局部變量只能在它被定義的塊中使用,同一個變量的名稱可以在不同的塊中分別使用一次。可以在塊的界面區(qū)定義塊的輸入/輸出參數(Input,Output,Inout)和臨時數據(Temp),以及定義FB的靜態(tài)變量(Static)。在程序中,局部變量被自動添加#號,例如#起動。3.6用STEP7Basic生成用戶程序——使用詳細窗口

打開項目樹下面的詳細窗口,選中項目樹中的“PLC變量”,詳細窗口顯示出變量表中的符號??梢詫⒃敿毚翱谥械姆柕刂坊虼a塊界面區(qū)種定義的局部變量,拖放到程序中需要設置地址的<???>處。拖放到已設置的地址上時,原來的地址被替換。§3-6位邏輯指令§3S7-1200PLC的程序設計基礎3.6位邏輯指令常開觸點、常閉觸點、取反觸點輸出線圈、取反輸出線圈復位、置位區(qū)域置位、區(qū)域復位復位優(yōu)先鎖存器、置位優(yōu)先鎖存器上升沿檢測觸點、下降沿檢測觸點上升沿檢測線圈、下降沿檢測線圈上升沿觸發(fā)器、下降沿觸發(fā)器3.6位邏輯指令——置位復位指令最主要的特點是有記憶和保持功能。3.6位邏輯指令——多點置位復位指令多點置位指令將指定的地址開始的連續(xù)若干個地址置位(變?yōu)?狀態(tài)并保持)。多點復位指令將指定的地址開始的連續(xù)若干個地址復位(變?yōu)?狀態(tài)并保持)。3.6位邏輯指令——復位優(yōu)先、置位優(yōu)先鎖存器復位優(yōu)先鎖存器置位優(yōu)先鎖存器SR1輸出位RS1輸出位00保持前一狀態(tài)00保持前一狀態(tài)010100101011110111復位優(yōu)先鎖存器、置位優(yōu)先鎖存器:輸出線圈可選3.6位邏輯指令——邊緣檢測觸點指令如果輸入信號I0.6由0變?yōu)?狀態(tài)(即輸入信號I0.6的上升沿),則該觸點接通一個掃描周期。觸點下面的M4.3為邊緣存儲位,用來存儲上一個掃描循環(huán)是I0.6的狀態(tài),通過比較輸入信號的當前狀態(tài)和上一次循環(huán)的狀態(tài)來檢測信號的邊沿。邊沿存儲位的地址只能在程序中使用一次,它的狀態(tài)不能在其他地方被改寫。只能使用M、全局DB和靜態(tài)局部變量來作邊沿存儲位,不能使用臨時局部數據或I/O變量來作邊沿存儲位。3.6位邏輯指令——邊緣檢測線圈指令邊緣檢測線圈指令:上升沿檢測線圈僅在流進該線圈的能流的上升沿,輸出位M6.1為1狀態(tài),M6.2為邊沿存儲位。在I0.7的上升沿,M6.1的常開觸點閉合一個掃描周期,使M6.6置位,在I0.7的下降沿,M6.3的常開觸點閉合一個掃描周期,使M6.6復位。3.6位邏輯指令——P_TRIG與N_TRIG指令在流進P_TRIG指令的CLK輸入端的能流的上升沿,Q端輸出一個掃描周期的能流,使M8.1置位,方框下面的M8.0是脈沖存儲器位。P_TRIG指令與N_TRIG指令不能放在電路的開始處和結束處。3.6位邏輯指令——3種邊沿檢測指令的功能以上升沿檢測為例:在P觸點指令中,觸點上面的地址的上升沿,該觸點接通一個掃描周期,因此P觸點用于檢測觸點上面地址的上升沿,并且直接輸出上升沿脈沖。在P線圈的能流的上升沿,線圈上面的地址在一個掃描周期為1狀態(tài),因此P線圈用于檢測能流的上升沿,并用線圈上面的地址來輸出上升沿脈沖。P_TRIG指令用于檢測能流的上升沿,并且直接輸出上升沿脈沖。如果P_TRIG指令左邊只有I1.0觸點,可以用I1.0的P觸點來代替P_TRIG指令。3.6位邏輯指令——故障信息顯示電路舉例1/2設計故障信息顯示電路,從故障信號I0.0的上升沿開始,Q0.7控制的指示燈以1Hz的頻率閃爍。操作人員按復位按鈕I0.1后,如果故障已經消失,則指示燈滅,如果沒有消失,則指示燈轉為常亮,直至故障消失。3.6位邏輯指令——故障信息顯示電路舉例2/23.6定時器指令——定時器的基本功能1/2使用定時器指令可創(chuàng)建編程的時間延遲,S7-1200PLC有4種定時器:●TP:脈沖定時器可生成具有預設寬度時間的脈沖?!馮ON:接通延遲定時器輸出Q在預設的延時過后設置為ON?!馮OF:關斷延遲定時器輸出Q在預設的延時過后重置為OFF?!馮ONR:保持型接通延遲定時器輸出在預設的延時過后設置為ON。在使用R輸入重置經過的時間之前,會跨越多個定時時段一直累加經過的時間?!馬T:通過清除存儲在指定定時器背景數據塊中的時間數據來重置定時器。每個定時器都使用一個存儲在數據塊中的結構來保存定時器數據。在編輯器中放置定時器指令時可分配該數據塊。3.6定時器指令——定時器的基本功能2/23.6定時器指令——定時器的輸入輸出參數

1/4TP、TON和TOF定時器具有相同的輸入和輸出參數。TONR定時器具有附加的復位輸入參數R??蓜?chuàng)建自己的“定時器名稱”來命名定時器數據塊,還可以描述該定時器在過程中的用途。RT指令可重置指定定時器的定時器數據。3.6定時器指令——定時器的輸入輸出參數

2/4參數數據類型說明INBool啟用定時器輸入RBool將TONR經過的時間重置為零PT(PresetTime)Bool預設的時間值輸入QBool定時器輸出ET(ElapsedTime)Time經過的時間值輸出定時器數據塊DB指定要使用RT指令復位的定時器參數IN從0變?yōu)?將啟動TP、TON和TONR,從1變0將啟動TOF。ET為定時開始后經過的時間,或稱為已耗時間值(可以不為ET指定地址),它們的數值類型為32位的Time,單位為ms,最大定時時間為T#24D_20H_31M_23S_647MS。3.6定時器指令——定時器的輸入輸出參數3/4IEC定時器和IEC計數器屬于功能塊,調用時需要指定配套的背景數據塊,定時器和計數器指令的數據保存在背景數據塊中。在梯形圖中輸入定時器指令時,打開右邊的指令窗口將“定時器操作”文件夾中的定時器指令拖放到梯形圖中適當的位置,在出現的“調用選項”對話框中修改將要生成的背景數據塊的名稱,或采用默認的名稱。點擊“確定”按鈕,自動生成數據塊。3.6定時器指令——定時器的輸入輸出參數

4/4定時器PT和IN參數值變化TP定時器運行期間,更改PT沒有任何影響。定時器運行期間,更改IN沒有任何影響。TON定時器運行期間,更改PT沒有任何影響。定時器運行期間,將IN更改為FALSE會復位并停止定時器。TOF定時器運行期間,更改PT沒有任何影響。定時器運行期間,將IN更改為TRUE會復位并停止定時器。TONR定時器運行期間更改PT沒有任何影響,但對定時器中斷后繼續(xù)運行會有影響。定時器運行期間將IN更改為FALSE會停止定時器但不會復位定時器。將IN改回TRUE將使定時器從累積的時間值開始定時。3.6定時器指令——脈沖定時器TP時序圖3.6定時器指令——接通延時定時器TON時序圖3.6定時器指令——斷開延時定時器TOF時序圖3.6定時器指令——保持型接通延時定時器TONR時序圖3.6定時器指令——舉例1/6用接通延時定時器設計周期和占空比可調的振蕩電路。M2.7只接通一個掃描周期,振蕩電路實際上是一個有正反饋的電路,兩個定時器的輸出Q分別控制對方的輸入IN,形成了正反饋。振蕩電路的高、低電平時間分別由兩個定時器的PT值確定。3.6定時器指令——舉例2/63.6定時器指令——舉例3/6用3種定時器設計衛(wèi)生間沖水控制電路。3.6定時器指令——舉例4/63.6定時器指令——舉例5/6兩條運輸帶順序相連,為避免運送的物料在1號運輸帶上堆積,按下起動按鈕I0.3,1號帶開始運行,8s后2號帶自動起動。停機的順序與起動的順序相反,按了停止按鈕I0.2后,先停2號帶,8s后停1號帶。Q1.1和Q0.6控制兩臺電動機M1和M2。3.6定時器指令——舉例6/63.6計數器指令——計數器的數據類型S7-1200有3種計數器:加計數器(CTU)、減計數器(CTD)和加減計數器(CTUD)。它們屬于軟件計數器,其最大計數速率受到它所在的OB的執(zhí)行速率的限制。如果需要速率更高的計數器,可以使用CPU內置的高速計數器。調用計數器指令時,需要生成保存計數器數據的背景數據塊。CU和CD分別是加計數輸入和減計數輸入,在CU或CD由0變?yōu)?是,實際計數值CV加1或減1。復位輸入R為1時,計數器被復位,CV被清0,計數器的輸入Q變?yōu)?。3.6計數器指令——計數器的輸入輸出參數參數數據類型說明CU、CDBOOL加計數或減計數,按加或減一計數R(CTU、CTUD)BOOL將計數值重置為零LOAD(CTD、CTUD)BOOL預設值的裝載控制PVSInt、Int、DInt、USInt、UInt、UDInt預設計數值Q、QUBOOLCV>=PV時為真QDBOOLCV<=0時為真CVSInt、Int、DInt、USInt、UInt、UDInt當前計數值3.6計數器指令——加計數器CTU:參數CU的值從0變?yōu)?時,CTU使計數值加1。如果參數CV(當前計數值)的值大于或等于參數PV(預設計數值)的值,則計數器輸出參數Q

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論