西門子電機(jī)6SL3120-1TE31-3AA3
采用PTO輸出,微妙級(jí)周期,發(fā)脈沖的周期(也就是頻率)與脈沖個(gè)數(shù)都要重新輸入。10000101轉(zhuǎn)化為??16進(jìn)制?為85,有了控制字以后,我們來寫這一段程序:
根據(jù)上面這段程序,我們知道了控制字的使用,同時(shí)也知道步進(jìn)電機(jī)的脈沖周期與沖個(gè)數(shù)的存放位置(對(duì)??Q0.0來說是SMW68與SMD72)。當(dāng)然,VW100與VD102內(nèi)的數(shù)據(jù)不同的話,步進(jìn)電機(jī)的轉(zhuǎn)速和轉(zhuǎn)動(dòng)圈數(shù)就不一樣。
???還有一點(diǎn)需要說明得是:M0.0導(dǎo)通---PLC捕捉到上升沿發(fā)動(dòng)脈沖輸出后,想停止的話,只須改變端口脈沖的?控制字,再啟動(dòng)PLS即可,程序如下:
2.高速計(jì)數(shù)功能。
???西門子S7-200系列PLC具有高速計(jì)數(shù)的功能;舉一例子來談?wù)劯咚儆?jì)數(shù)的用途,我們采用普通電機(jī)來帶動(dòng)絲桿轉(zhuǎn)動(dòng),我們想控制轉(zhuǎn)動(dòng)距離,怎么來解決這個(gè)問題?那么我們可在電機(jī)另一頭與一編碼器聯(lián)接,電機(jī)轉(zhuǎn)一圈,編碼器也隨之轉(zhuǎn)一圈,同時(shí)根據(jù)規(guī)格發(fā)出不同的脈沖數(shù)。當(dāng)然,這些脈沖數(shù)的頻率比較高,PLC不能用普通的上升沿計(jì)數(shù)來取得這些脈沖,只能通過高速計(jì)數(shù)功能了。
???啟動(dòng)高速計(jì)數(shù)功能,也要具有控制字
HSCO HSC1 描述
?SM37.0 ?SM47.0 ?復(fù)位有效電平控制位 0=高電平有效, 1=低電平有效
?SM37.1 ?SM47.1 ?啟動(dòng)有效電平控制位于 0=高電平有效, 1=低電平有效
?SM37.2 ?SM47.2 ?正交計(jì)數(shù)器速率選擇 0=4X計(jì)數(shù)率, 1=1X計(jì)數(shù)率
?SM37.3 ?SM47.3 ?計(jì)數(shù)方向控制位 0=減計(jì)數(shù), 1=正計(jì)數(shù)
?SM37.4 ?SM47.4 ?向HSC中寫入計(jì)數(shù)方向 0=不更新, 1=更新計(jì)數(shù)方向
?SM37.5 ?SM47.5 ?向HSC中寫入預(yù)置值 0=不更新, 1=更新預(yù)置值
?SM37.6 ?SM47.6 ?向HSC中寫入當(dāng)前值 0=不更新, 1=更新當(dāng)前值
?SM37.7 ?SM47.7 ?HSC允許 0=禁止HSC, 1=允許HSC
??參照上面的表格,我們選擇HSC1高速計(jì)數(shù)器,控制字為SMB47,現(xiàn)在我們啟動(dòng)高速計(jì)數(shù)器HSC1,選擇為增計(jì)數(shù),更新計(jì)數(shù)方向,重新設(shè)置值,更新當(dāng)前值:這樣的話,HSC1的啟動(dòng)控制高為:11111000轉(zhuǎn)化為16進(jìn)制為?F8,將啟動(dòng)計(jì)數(shù)器時(shí)當(dāng)前值存放在SMD48中,將預(yù)存置放在SMD52中,具體的程序?如下:
同樣的,如果計(jì)數(shù)器在工作狀態(tài)下想停止計(jì)數(shù)器,也必須改變它的控制字后,啟動(dòng)HSC具體程序?如下:
3. PID回路控制功能。
??西門子S7-200系列PLC的PID控制相當(dāng)?shù)暮唵?,可以通過micro/win軟件的一個(gè)向?qū)С绦?,按照提?一步一步執(zhí)行您所要求PID控制的屬性即可,在這里談一談PID這三個(gè)參數(shù)的具體意義:P為增益項(xiàng),P越大,響應(yīng)起就快,在調(diào)節(jié)流量閥時(shí):設(shè)定流量為50%,當(dāng)目前流量接近50%,剛超過,如果P值很大的話,那么流量閥會(huì)馬上會(huì)關(guān)閉,而不會(huì)控制在某一區(qū)域。這就是增益項(xiàng)太大引起。在調(diào)節(jié)的過程中應(yīng)該先將P值調(diào)節(jié)比較適當(dāng)了,再去調(diào)節(jié)I值,它為積分項(xiàng),是在控制器回路中控制對(duì)當(dāng)前值與設(shè)定值相等的偏差范圍。D為微分項(xiàng),主要作用是避免給定值的微分作用而引起的跳變。
??在現(xiàn)場(chǎng)的PID參數(shù)的調(diào)整過程中,針對(duì)西門子S7-200型PLC我的建議是在不同的控制階段,采用不同的PID參數(shù)組,具體而言就是當(dāng)目前距離設(shè)定值差距較大時(shí),采用P值較大的一套PID參數(shù),如果當(dāng)前值快接近設(shè)定值范圍時(shí),采用P值較小的一套PID參數(shù)
西門子電機(jī)6SL3120-1TE31-3AA3
在S7-200編程中,子程序想必大家都用過,使用子程序可以更好地組織程序結(jié)構(gòu),便于閱讀和調(diào)試,也可以縮短程序代碼。但是使用子程序也有一些需要注意的地方,除了子程序在同一周期內(nèi)被多次調(diào)用時(shí),不能使用上升沿、下降沿、定時(shí)器和計(jì)數(shù)器之外,還有子程序中局部變量的特點(diǎn),在編程多次調(diào)用帶參數(shù)子程序時(shí)要特別注意。下面就是前些天熱線上遇到的一個(gè)Case,非常有代表性,在這里跟大家分享。
E:您好,西門子技術(shù)支持。
C:您好,我想問下,200子程序是不是多次調(diào)用時(shí)會(huì)不好使?
E:不會(huì)啊,您是不是在子程序里使用了沿指令或者定時(shí)器?
C:沒有啊,我就編了一句很簡單的開關(guān)程序,開關(guān)閉合,線圈導(dǎo)通,然后主程序里調(diào)用了兩次這個(gè)子程序,結(jié)果個(gè)I點(diǎn)閉合了,兩個(gè)Q點(diǎn)都導(dǎo)通了。
E:(心里活動(dòng):看來是和子程序的局部變量有關(guān)了,估計(jì)客戶程序邏輯有問題)那請(qǐng)您描述一下您的子程序吧,我?guī)湍纯础?/p>
于是客戶描述了一下自己的程序,大致了解了之后告知客戶我這邊測(cè)試下,稍后回復(fù)
S7-300 的組態(tài)
1)、打開SIMATICManager, 創(chuàng)建一個(gè)新項(xiàng)目,并插入300的站。
2)、雙擊Hardware 進(jìn)入S7 300 硬件組態(tài),在相應(yīng)插槽插入與機(jī)架硬件匹配的模塊,并對(duì)CP343-1 分配IP地址等參數(shù),建立以太網(wǎng)。
3)、設(shè)置完各硬件參數(shù)后,點(diǎn)擊存盤編譯按鈕,編譯無誤后即完成S7 300 硬件組態(tài)。
4)、S7 300 PLC 的下載:首先要選擇正確的下載路徑,即設(shè)置PG/PC 接口:在“SIMATIC Manager"主菜單“Option"的下拉菜單中選擇“Set PG/PC Interface",或者打開操作系統(tǒng)的控制面板“Set PG/PC Interface",進(jìn)行設(shè)置,選擇正確的通訊接口。點(diǎn)擊下載按鈕下載S7-300的硬件配置。
二、配置PC 站的硬件機(jī)架
1)、通過點(diǎn)擊圖標(biāo)打開Station Configuration Editor 配置窗口。
2)、選擇一號(hào)插槽,點(diǎn)擊Add 按鈕或鼠標(biāo)右鍵選擇添加,在添加組件窗口中選擇OPCServer 點(diǎn)擊OK 即完成。
3)、同樣方法選擇三號(hào)插槽添加IE Genaral 后,即彈出其屬性對(duì)話框,設(shè)置網(wǎng)卡參數(shù),如IP 地址,子網(wǎng)掩碼等。
4)、分配PC Station 名稱
點(diǎn)擊“Station Name"按鈕,PC站的名稱,這里取名位PC1。(命名原則:這里的PC 站名應(yīng)與下面STEP7 硬件組態(tài)插入的PC Station 名稱一致)。點(diǎn)擊“OK"確認(rèn)即完成了PC站的硬件組態(tài)。