版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
ζ4-3S7-200PLC的功能指令一、傳送指令二、數(shù)學(xué)運(yùn)算指令三、邏輯運(yùn)算指令四、移位和循環(huán)移位指令五、數(shù)據(jù)轉(zhuǎn)換指令六、表功能指令七、程序控制指令八、中斷指令九、高速計(jì)數(shù)器指令十、高速脈沖輸出指令十一、PID回路指令ζ4-3S7-200PLC的功能指令一1一、高速計(jì)數(shù)器指令
在控制中,電動(dòng)機(jī)的調(diào)速是常見的控制方式。為實(shí)現(xiàn)對(duì)電動(dòng)機(jī)的精確控制,經(jīng)常使用編碼器將電動(dòng)機(jī)的轉(zhuǎn)速轉(zhuǎn)為高頻脈沖信號(hào),反饋至PLC,通過PLC對(duì)高頻脈沖的計(jì)數(shù)和編程來實(shí)現(xiàn)對(duì)電動(dòng)機(jī)的控制。PLC中普通計(jì)數(shù)器受到掃描周期的影響,對(duì)高速脈沖的計(jì)數(shù)將發(fā)生脈沖丟失現(xiàn)象,導(dǎo)致計(jì)數(shù)不準(zhǔn)確,也就不能實(shí)現(xiàn)精確控制。高速計(jì)數(shù)器(HSC)(HighSpeedCounter)脫離主機(jī)的掃描周期而獨(dú)立計(jì)數(shù),可以對(duì)脈寬小于掃描周期的高速脈沖準(zhǔn)確計(jì)數(shù),高速脈沖頻率最高可達(dá)30KHZ。能夠?qū)崿F(xiàn)對(duì)電動(dòng)機(jī)的精確控制。分五個(gè)方面來理解:
高速計(jì)數(shù)器指令格式
高速計(jì)數(shù)器指令功能
高速計(jì)數(shù)器編號(hào)、運(yùn)行模式及輸入端子分配
高速計(jì)數(shù)器控制位、當(dāng)前值、預(yù)置值及狀態(tài)位定義
高速計(jì)數(shù)器設(shè)置過程
返回目錄一、高速計(jì)數(shù)器指令返回目錄21.高速計(jì)數(shù)器指令高速計(jì)數(shù)器指令包含定義高速計(jì)數(shù)器指令(HDEF)、高速計(jì)數(shù)器指令(HSC)。HDEF、HSC指令的梯形圖及指令表格式如下所示。HDEFHSC,MODESTL指令HSCNSTL指令S7-200系列PLC中有6個(gè)高速計(jì)數(shù)器,由HSCn來表示高速計(jì)數(shù)器的地址,n的取值范圍為0~5。HSCn還表示高速計(jì)數(shù)器的當(dāng)前值(是一個(gè)只讀的32位雙字),可使用數(shù)據(jù)傳輸指令隨時(shí)讀出計(jì)數(shù)當(dāng)前值。不同的CPU模塊中可使用的高速計(jì)數(shù)器是不同的,CPU221、CPU222可以使HSC0、HSC3、HSC4和HSC5;CPU224和CPU226可以使用HSC0~HSC5。返回目錄1.高速計(jì)數(shù)器指令HDEFHSC,MODESTL指令HS32指令功能(1)定義高速計(jì)數(shù)器指令(HDEF):“HSC”端口指定高速計(jì)數(shù)器編號(hào)(0~5),“MODE”端口指定工作模式(0~11,各高速計(jì)數(shù)器至多有12種工作模式)。EN端口執(zhí)行條件存在時(shí),HDEF指令為指定的高速計(jì)數(shù)器選定一種工作模式。在一個(gè)程序中,每一個(gè)高速計(jì)數(shù)器只能使用一次HDEF指令。(2)高速計(jì)數(shù)器指令(HSC):根據(jù)高速計(jì)數(shù)器特殊存儲(chǔ)器位的設(shè)置,按照HDEF指令的工作模式,控制高速計(jì)數(shù)器的工作。操作數(shù)N指定了高數(shù)計(jì)數(shù)器號(hào)(0~5)返回目錄2指令功能返回目錄43.高速計(jì)數(shù)器編號(hào)、運(yùn)行模式及輸入端子分配
每一高速計(jì)數(shù)器都有多種工作模式,所使用的輸入端子也不相同,主要分為脈沖輸入端子、方向控制輸入端子、復(fù)位輸入端子、啟動(dòng)輸入端子等。如高速計(jì)數(shù)器的工作模式及輸入端子分配
表所示。3.高速計(jì)數(shù)器編號(hào)、運(yùn)行模式及輸入端子分配5運(yùn)行模式描述HSC0HSC4I0.0I0.1I0.2I0.3I0.4I0.50帶內(nèi)部方向控制的單相增/減計(jì)數(shù)器計(jì)數(shù)計(jì)數(shù)1計(jì)數(shù)復(fù)位計(jì)數(shù)復(fù)位3帶外部方向控制的單相增/減計(jì)數(shù)器計(jì)數(shù)方向計(jì)數(shù)方向4計(jì)數(shù)方向復(fù)位計(jì)數(shù)方向復(fù)位6帶增減計(jì)數(shù)輸入的雙向計(jì)數(shù)器增計(jì)數(shù)減計(jì)數(shù)增計(jì)數(shù)減計(jì)數(shù)7增計(jì)數(shù)減計(jì)數(shù)復(fù)位增計(jì)數(shù)減計(jì)數(shù)復(fù)位9A/B相正交計(jì)數(shù)器A相計(jì)數(shù)B相計(jì)數(shù)A相計(jì)數(shù)B相計(jì)數(shù)10A相計(jì)數(shù)B相計(jì)數(shù)復(fù)位A相計(jì)數(shù)B相計(jì)數(shù)復(fù)位從表中可以看出,高速計(jì)數(shù)器工作模式主要分為4類運(yùn)行模式描述HSC0HSC4I0.0I0.1I0.2I0.36(1)帶內(nèi)部方向控制的單相增/減計(jì)數(shù)器有一個(gè)計(jì)數(shù)輸入端,沒有外部方向控制輸入信號(hào)。計(jì)數(shù)方向由內(nèi)部控制字節(jié)中的方向控制位來設(shè)置,只能進(jìn)行單向增計(jì)數(shù)或減計(jì)數(shù)。如HSC0的模式0,其計(jì)數(shù)方向控制位為SM37.3,當(dāng)該位為0時(shí)為減計(jì)數(shù),該位為1時(shí)為增計(jì)數(shù)。(2)帶外部方向控制的單相增/減計(jì)數(shù)器有一個(gè)計(jì)數(shù)輸入端,由外部輸入信號(hào)控制計(jì)數(shù)方向,只能進(jìn)行單向增計(jì)數(shù)或減計(jì)數(shù)。如HSC4的模式3,IO.7為0時(shí)為減計(jì)數(shù),IO.4為1時(shí)為增計(jì)數(shù)。運(yùn)行模式描述HSC0HSC4I0.0I0.1I0.2I0.3I0.4I0.50帶內(nèi)部方向控制的單相增/減計(jì)數(shù)器計(jì)數(shù)計(jì)數(shù)1計(jì)數(shù)復(fù)位計(jì)數(shù)復(fù)位3帶外部方向控制的單相增/減計(jì)數(shù)器計(jì)數(shù)方向計(jì)數(shù)方向4計(jì)數(shù)方向復(fù)位計(jì)數(shù)方向復(fù)位(1)帶內(nèi)部方向控制的單相增/減計(jì)數(shù)器運(yùn)行模式描述HSC7(3)帶增減計(jì)數(shù)輸入的雙向計(jì)數(shù)器有兩個(gè)計(jì)數(shù)輸入端,一個(gè)為增計(jì)數(shù)輸入,一個(gè)為減計(jì)數(shù)輸入。增計(jì)數(shù)輸入端有一個(gè)脈沖達(dá)到時(shí),計(jì)數(shù)器當(dāng)前值增加1;減計(jì)數(shù)輸入端有一個(gè)脈沖達(dá)到時(shí),計(jì)數(shù)器當(dāng)前值減少1。若增計(jì)數(shù)脈沖與減計(jì)數(shù)脈沖相隔時(shí)間大于0.3ms,高速計(jì)數(shù)器就能夠正確計(jì)數(shù),若相隔時(shí)間小于0.3ms,高速計(jì)數(shù)器認(rèn)為兩個(gè)脈沖同時(shí)發(fā)生,計(jì)數(shù)器當(dāng)前值不變。運(yùn)行模式描述HSC0HSC4I0.0I0.1I0.2I0.3I0.4I0.56帶增減計(jì)數(shù)輸入的雙向計(jì)數(shù)器增計(jì)數(shù)減計(jì)數(shù)增計(jì)數(shù)減計(jì)數(shù)7增計(jì)數(shù)減計(jì)數(shù)復(fù)位增計(jì)數(shù)減計(jì)數(shù)復(fù)位(3)帶增減計(jì)數(shù)輸入的雙向計(jì)數(shù)器運(yùn)行模式描述HSC0H8(4)A/B相正交計(jì)數(shù)器有兩個(gè)計(jì)數(shù)輸入端A相和B相,A/B相正交計(jì)數(shù)器由兩個(gè)輸入脈沖的相位來確定計(jì)數(shù)方向。A相脈沖上升沿超前于B相脈沖上升沿時(shí)為增計(jì)數(shù),反之為減計(jì)數(shù)。(5)復(fù)位端和啟動(dòng)端當(dāng)復(fù)位輸入有效時(shí),將清除計(jì)數(shù)器當(dāng)前值。當(dāng)啟動(dòng)輸入有效時(shí),則表表示高速計(jì)數(shù)器計(jì)數(shù),啟動(dòng)輸入無(wú)效時(shí),計(jì)數(shù)器忽略計(jì)數(shù)脈沖的輸入,當(dāng)前值保持不變。返回目錄運(yùn)行模式描述HSC0HSC4I0.0I0.1I0.2I0.3I0.4I0.59A/B相正交計(jì)數(shù)器A相計(jì)數(shù)B相計(jì)數(shù)A相計(jì)數(shù)B相計(jì)數(shù)10A相計(jì)數(shù)B相計(jì)數(shù)復(fù)位A相計(jì)數(shù)B相計(jì)數(shù)復(fù)位(4)A/B相正交計(jì)數(shù)器返回目錄運(yùn)行模式描述HSC0H94.高速計(jì)數(shù)器控制位、當(dāng)前值、預(yù)置值及狀態(tài)位定義要正確使用高速計(jì)數(shù)器,還要正確設(shè)置高速計(jì)數(shù)器的控制字節(jié)以及當(dāng)前值與預(yù)置值。狀態(tài)位則表明了高速計(jì)數(shù)器的運(yùn)行狀態(tài),可以作為編程的參考點(diǎn)。(1)高速計(jì)數(shù)器控制字節(jié)各高速計(jì)數(shù)器控制字節(jié)如下表所示HSC0HSC1HSC2HSC3HSC4HSC5SM37SM47SM57SM137SM147SM1574.高速計(jì)數(shù)器控制位、當(dāng)前值、預(yù)置值及狀態(tài)位定義HSC0H10控制字節(jié)的功能如下表所示HSC0控制位功能SM37.0復(fù)位有效電平控制位;0(高電平有效),1(低電平有效)啟動(dòng)有效電平控制位;0(高電平有效),1(低電平有效)SM37.2正交計(jì)數(shù)器計(jì)數(shù)速率選擇,0(4X),1(1X)SM37.3計(jì)數(shù)方向控制位;0(減計(jì)數(shù)),1(增計(jì)數(shù))SM37.4向HSC中寫入計(jì)數(shù)方向;0(不更新),1(更新計(jì)數(shù)方向)SM37.5向HSC中寫入預(yù)置值,0(不更新),1(更新預(yù)置值)SM37.6向HSC中寫入新的當(dāng)前值,0(不更新),1(更新當(dāng)前值)SM37.7HSC允許,0(禁止HSC),1(允許HSC)復(fù)位及啟動(dòng)輸入可設(shè)置為高電平有效還是低電平有效A/B相正交計(jì)數(shù)器模式中可以設(shè)置計(jì)數(shù)器計(jì)數(shù)速率是按外部脈沖速率(1X),還是按4倍外部脈沖速率(4X)可設(shè)置在高速計(jì)數(shù)器運(yùn)行過程中能否修改計(jì)數(shù)方向、當(dāng)前值和預(yù)置值通過最高位還可控制高速計(jì)數(shù)器的運(yùn)行和禁止控制字節(jié)的功能如下表所示HSC0控制位功能SM37.0復(fù)位有11(2)高速計(jì)數(shù)器的當(dāng)前值、預(yù)置值設(shè)置每個(gè)計(jì)數(shù)器都有一個(gè)當(dāng)前值和預(yù)置值。當(dāng)前值和預(yù)置值都是32位帶符號(hào)整數(shù)。必須將當(dāng)前值和預(yù)置值存入下表所示的特殊存儲(chǔ)器中,然后執(zhí)行HSC指令,才能夠?qū)⑿轮邓腿敫咚儆?jì)數(shù)器當(dāng)中。要裝入的值HSC0HSC1HSC2HSC3HSC4HSC5初始當(dāng)前值SMD38SMD48SMD58SMD138SMD148SMD158預(yù)值值SMD42SMD52SMD62SMD142SMD152SMD163(2)高速計(jì)數(shù)器的當(dāng)前值、預(yù)置值設(shè)置要裝入的值HSC0HS12(3)高速計(jì)數(shù)器的狀態(tài)位每個(gè)高速計(jì)數(shù)器都有一個(gè)狀態(tài)字節(jié),如下表所示:HSC0HSC1HSC2HSC3HSC5HSC6SM36SM46SM56SM136SM146SM156狀態(tài)位的功能如下表所示:(3)高速計(jì)數(shù)器的狀態(tài)位HSC0HSC1HSC2HSC3H13HSC0狀態(tài)位功能SM36.0~SM36.4不用SM36.5當(dāng)前計(jì)數(shù)方向狀態(tài)位,0(減計(jì)數(shù));1(增計(jì)數(shù))SM36.6當(dāng)前值等于預(yù)置值狀態(tài)位;0(不等);1(相等)SM36.7當(dāng)前值大于預(yù)置值狀態(tài)位;0(小于等于);1(大于)指出了當(dāng)前計(jì)數(shù)方向當(dāng)前值與預(yù)置值是否相等當(dāng)前值是否大于預(yù)置值的狀態(tài)可以通過監(jiān)視高速計(jì)數(shù)器的狀態(tài)位產(chǎn)生相應(yīng)中斷,完成重要操作。返回目錄HSC0狀態(tài)位功能SM36.0~SM36.4不用SM36.5145.高速計(jì)數(shù)器設(shè)置過程為更好地理解和使用高速計(jì)數(shù)器,下面給出高速計(jì)數(shù)器的一般設(shè)置過程。(1)使用初始化脈沖觸點(diǎn)SM0.1調(diào)用高速計(jì)數(shù)器初始化操作子程序。(這個(gè)結(jié)構(gòu)可以使系統(tǒng)在后續(xù)的掃描過程中不再調(diào)用這個(gè)子程序,從而減少了掃描時(shí)間,且程序更加結(jié)構(gòu)化)。(2)在初始化子程序中,對(duì)相應(yīng)高速計(jì)數(shù)器的控制字節(jié)寫入希望的控制字。如要使用HSC1,則對(duì)SMB47寫入16#F8(2#11111000),表示高速計(jì)數(shù)器運(yùn)行,允許寫入新的當(dāng)前值,允許寫入新的預(yù)置值,可以改變計(jì)數(shù)器方向,置計(jì)數(shù)器的計(jì)數(shù)方向?yàn)樵觯脝?dòng)和復(fù)位輸入為高電平有效(3)執(zhí)行HDEF指令,根據(jù)所選計(jì)數(shù)器號(hào)和運(yùn)行模式將高速計(jì)數(shù)器號(hào)與具體運(yùn)行模式進(jìn)行連接。5.高速計(jì)數(shù)器設(shè)置過程15(4)在所選計(jì)數(shù)器號(hào)對(duì)應(yīng)的當(dāng)前值單元內(nèi)裝入所希望的當(dāng)前值,若裝入0,則清除原當(dāng)前值。(5)在所選計(jì)數(shù)器號(hào)對(duì)應(yīng)的預(yù)置值單元內(nèi)裝有所希望的預(yù)置值。(6)為捕獲高速計(jì)數(shù)器對(duì)應(yīng)的中斷事件(當(dāng)前值等于預(yù)置值、計(jì)數(shù)方向改變、外部復(fù)位),編寫相應(yīng)的中斷程序,并參考中斷事件及其優(yōu)先級(jí)表5-10用ATCH中斷連接指令建立中斷事件和中斷程序的聯(lián)系。(7)執(zhí)行全局中斷允許指令(ENI)來允許高速計(jì)數(shù)器中斷。(8)執(zhí)行HSC指令,使高速計(jì)數(shù)器開始運(yùn)行。(4)在所選計(jì)數(shù)器號(hào)對(duì)應(yīng)的當(dāng)前值單元內(nèi)裝入所希望的當(dāng)前值,若16例:高速計(jì)數(shù)器的應(yīng)用調(diào)用初始化子程序清除HSC1當(dāng)前值設(shè)置HSC1的控制字節(jié)執(zhí)行HSC指令例:高速計(jì)數(shù)器的應(yīng)用調(diào)用初始化子程序清除HSC1當(dāng)前值設(shè)置H17子程序設(shè)置HSC1的工作模式清除HSC1當(dāng)前值設(shè)定HSC1的預(yù)置值建立中斷事件13與INT_0的連接允許全局中斷執(zhí)行HSC指令設(shè)置HSC1的控制字節(jié)返回目錄子程序設(shè)置HSC1的工作模式清除HSC1當(dāng)前值設(shè)定HSC1的18二、高速脈沖輸出高速脈沖輸出功能可以使PLC在指定的輸出點(diǎn)上產(chǎn)生高速的PWM(脈寬調(diào)制)脈沖或輸出頻率可變的PTO脈沖,來實(shí)現(xiàn)對(duì)步進(jìn)電動(dòng)機(jī)和直流伺服電動(dòng)機(jī)的定位控制和調(diào)速。分八個(gè)方面來理解:
高速脈沖輸出指令的格式高速脈沖的輸出方式
輸出端子的連接指令功能相關(guān)的特殊功能寄存器
PWM脈沖輸出設(shè)置
PTO脈沖串輸出設(shè)置
高速脈沖輸出指令應(yīng)用返回目錄二、高速脈沖輸出返回目錄191.高速脈沖輸出指令的格式PLSQSTL指令2.高速脈沖的輸出方式高速脈沖輸出可分為:高速脈沖串輸出(PTO):提供方波輸出,用戶控制脈沖周期和脈沖數(shù)寬度可調(diào)脈沖輸出(PWM):提供連續(xù)、占空比可調(diào)的脈沖輸出,用戶控制脈沖周期和脈沖寬度返回目錄PLSQSTL指令2.高速脈沖的輸出方式返回目錄203.輸出端子的連接每個(gè)CPU有兩個(gè)PTO/PWM發(fā)生器產(chǎn)生高速脈沖串和脈沖寬度可調(diào)的波形,一個(gè)發(fā)生器分配給數(shù)字輸出端Q0.0,另一個(gè)分配在Q0.1。4.指令功能PLS脈沖輸出指令,在EN端口執(zhí)行條件存在,檢測(cè)脈沖輸出特殊存儲(chǔ)器的狀態(tài),然后激活所定義的脈沖,從Q端口指定的輸出端口輸出高速脈沖。操作數(shù)Q為0或15.相關(guān)的特殊功能寄存器為定義和監(jiān)控高速脈沖輸出,系統(tǒng)提供了控制字節(jié)、狀態(tài)字節(jié)和參數(shù)設(shè)置寄存器。寄存器分配如下表所示
3.輸出端子的連接21高速脈沖輸出的特殊寄存器分配Q0.0對(duì)應(yīng)寄存器Q0.1對(duì)應(yīng)寄存器功能描述SMB66SMB76狀態(tài)字節(jié),PTO方式,監(jiān)控脈沖串的運(yùn)行狀態(tài)SMB67SMB77控制字節(jié),定義PTO/PWM脈沖的輸出格式SMW68SMW78設(shè)置PTO/PWM脈沖的周期值,范圍:2~65535SMW70SMW80設(shè)置PWM的脈沖寬度值,范圍:0~65535SMD72SMD82設(shè)置PTO脈沖的輸出脈沖數(shù),范圍:1~4294967295SMB166SMB176設(shè)置PTO多段操作時(shí)的段數(shù)SMW168SMW178設(shè)置PTO多段操作時(shí)包絡(luò)表的起始地址,使用從變量寄存器V0開始的字節(jié)偏移表示高速脈沖輸出的特殊寄存器分配Q0.0對(duì)應(yīng)寄存器Q0.1對(duì)應(yīng)寄22(1)狀態(tài)字節(jié)每個(gè)高速脈沖輸出都有一個(gè)狀態(tài)字節(jié),監(jiān)控Q0.0或者Q0.1是否空閑,是否溢出,當(dāng)采用多個(gè)脈沖串輸出時(shí),輸出終止的原因,這些信息在程序運(yùn)行時(shí),都能使?fàn)顟B(tài)字節(jié)置位或者復(fù)位.具體狀態(tài)字節(jié)功能如下表所示
Q0.0Q0.1狀態(tài)位功能SM66.0~SM66.3SM76.0~SM76.3沒用SM66.4SM76.4PTO包絡(luò)由于增量計(jì)算錯(cuò)誤終止,0(無(wú)錯(cuò)誤),1(有錯(cuò)誤)SM66.5SM76.5PTO包絡(luò)由于用戶命令終止,0(不終止),1(終止)SM66.6SM76.6PTO管線溢出,0(無(wú)溢出),1(溢出)SM66.7SM76.7PTO空閑,0(執(zhí)行中),1(空閑)Q0.0Q0.1狀態(tài)位功能SM66.0~SM66.3SM7623(2)控制字節(jié)(SMB67/SMB77)
通過對(duì)控制字節(jié)的設(shè)置,可以選擇高速脈沖輸出的時(shí)間基準(zhǔn)、具體周期、輸出模式(PTO/PWM)、更新方式等,是編程是初始操作中必須完成的內(nèi)容。下表是各控制位具體功能。(2)控制字節(jié)(SMB67/SMB77)24
Q0.0Q0.1控制位功能SM67.0SM77.0PTO/PWM周期更新允許,0(不更新),1(允許更新)SM67.1SM77.1PWM脈沖寬度值更新允許,0(不更新),1(允許更新)SM67.2SM77.2PTO脈沖數(shù)更新允許,0(不更新),1(允許更新)SM67.3SM77.3PTO/PWM時(shí)間基準(zhǔn)選擇,0(1us/時(shí)基),1(1ms/時(shí)基)SM67.4SM77.4PWM更新方式,0(異步更新),1(同步更新)SM67.5SM77.5PTO單/多段選擇,0(單段管線),1(多段管線)SM67.6SM77.6PTO/PWM模式選擇,0(PTO模式),1(PWM模式)SM67.7SM77.7PTO/PWM脈沖輸出允許,0(禁止脈沖輸出),1(允許脈沖輸出)
高速脈沖輸出控制位功能返回目錄Q0.0Q0.1控制位功能SM67.0SM77.0P256.PWM脈沖輸出設(shè)置(1)PWM脈沖含義及周期、脈寬設(shè)置要求PWM脈沖是指占空比可調(diào)而周期固定的脈沖。其周期和脈寬的增量單位可以設(shè)為微秒(us)或毫秒(ms),周期變化范圍分別為50us~65535us和2ms~65535ms.脈寬變化范圍分別為0us~65535us和0ms~65535ms。當(dāng)脈寬大于等于周期時(shí),占空比為100%,輸出連續(xù)接通,當(dāng)脈寬為0時(shí),占空比為0%,輸出斷開。
6.PWM脈沖輸出設(shè)置26(2)PWM脈沖波形更新方式由于PWM占空比可調(diào),且周期可設(shè)置,所以脈沖連續(xù)輸出時(shí)的波形可以更新。有兩種方法來改變波形的特性。
同步更新:PWM脈沖輸出的典型操作是周期不變而變化脈沖寬度,這時(shí)由于不需要改變時(shí)間基準(zhǔn),可以使用同步更新。
異步更新:若在脈沖輸出時(shí)要改變時(shí)間基準(zhǔn),就要使用異步更新方式。(2)PWM脈沖波形更新方式27(3)PWM脈沖輸出設(shè)置以Q0.0為脈沖輸出端介紹PWM脈沖輸出的設(shè)置步驟。①使用初始化脈沖觸點(diǎn)SM0.1調(diào)用PWM脈沖輸出初始化操作子程序。這個(gè)結(jié)構(gòu)可以使系統(tǒng)在后續(xù)的掃描過程中不再調(diào)用這個(gè)子程序,從而減少了掃描時(shí)間,且程序更為結(jié)構(gòu)化。②在初始化子程序中,將16#D3(2#11010011)寫入SMB67控制字節(jié)中。設(shè)置內(nèi)容為脈沖輸出允許;選擇PWM方式;使用同步更新;選擇以微秒為增量單位;可以更新脈沖寬度和周期。③向SMW68中寫入希望的周期值。④向SMW70中寫入希望的脈沖寬度。⑤執(zhí)行PLS指令開始輸出脈沖。
返回目錄(3)PWM脈沖輸出設(shè)置返回目錄287.PTO脈沖串輸出設(shè)置(1)PTO脈沖串含義及周期、脈沖數(shù)設(shè)置要求。PTO脈沖串輸出占空比為1:1的方波,可以設(shè)置其周期和輸出的脈沖數(shù)量。周期的增量單位可以設(shè)為微秒(us)或毫秒(ms),周期變化范圍分別為50us~65535us和2ms~65535ms.脈沖數(shù)設(shè)置范圍為1~4294967295,若設(shè)置值為0,系統(tǒng)將默認(rèn)為1。7.PTO脈沖串輸出設(shè)置29(2)PTO脈沖串的單段管線和多段管線輸出控制PTO功能允許脈沖串的排隊(duì)輸出,當(dāng)前一個(gè)脈沖串完成時(shí),可以立即開始新的脈沖串輸出,從而形成管線,根據(jù)管線的實(shí)現(xiàn)形式,將PTO分為單段和多段管線兩種。①單段管線。管線中只能存放一個(gè)脈沖串控制參數(shù),一旦啟動(dòng)了一個(gè)脈沖串輸出,就要立即為下一個(gè)脈沖串設(shè)置控制參數(shù),并再次執(zhí)行PLS指令。第一個(gè)脈沖串輸出完畢后,第二個(gè)脈沖串自動(dòng)開始輸出。重復(fù)以上過程就可輸出多個(gè)脈沖串。(2)PTO脈沖串的單段管線和多段管線輸出控制30②多段管線在多段管線方式下,需要在變量存儲(chǔ)區(qū)(V)建立一個(gè)包絡(luò)表。包絡(luò)表中包含各脈沖串的參數(shù)(初始周期.周期增量和脈沖數(shù))以及要輸出脈沖的段數(shù)。使用PLS指令啟動(dòng)輸出后,系統(tǒng)自動(dòng)從包絡(luò)表中讀取每個(gè)脈沖串的參數(shù)進(jìn)行輸出。編程時(shí),必須向SMW168或SMW178裝入包絡(luò)表的起始變量的偏移地址(從V0開始計(jì)算偏移地址),例如包絡(luò)表從VB300開始,則需要向SM168或SM178中寫入十進(jìn)制數(shù)300。包絡(luò)表中的周期增量可以選擇微秒或毫秒,但一個(gè)包絡(luò)表中只能選擇一個(gè)時(shí)間基準(zhǔn),運(yùn)行過程中也不能改變。包絡(luò)表的格式見表5-18。
②多段管線31
從包絡(luò)表開始的字節(jié)偏移地址包絡(luò)表各段描述VBn段數(shù)(1~255),設(shè)為0產(chǎn)生非致命性錯(cuò)誤,不產(chǎn)生PTO輸出VWn+1第1段初始周期(2~65535時(shí)間基準(zhǔn)單位)VWn+3每個(gè)脈沖的周期增量(-32768~32767時(shí)間基準(zhǔn)單位)VDn+5脈沖數(shù)(1~4294967295)VWn+9第2段初始周期(2~65535時(shí)間基準(zhǔn)單位)VWn+11每個(gè)脈沖的周期增量(-32768~32767時(shí)間基準(zhǔn)單位)VDn+13脈沖數(shù)(1~4294967295)……
包絡(luò)表每段的長(zhǎng)度是8個(gè)字節(jié),由周期值(16bit)、周期增量值(16bit)和本段內(nèi)輸出脈沖的數(shù)量(32bit)組成。
包絡(luò)表格式
32注意:一般來說,為了使各脈沖段之間能夠平滑過渡,各段的結(jié)束周期(ECT)與下一段的初始周期(ICT)應(yīng)相等,在各段輸出脈沖數(shù)(Q)確定的情況下,脈沖的周期增量(N)需要經(jīng)過計(jì)算來確定。例如:第1段中的初始周期為500μs,脈沖數(shù)為400個(gè),而第2段的初始周期為100μs,為保證平滑過渡,第1段的結(jié)束周期設(shè)應(yīng)與第2段初始周期相同,則脈沖的周期增量為N=(ECT-ICT)/Q=(100-500)/400=-1。
注意:33(3)PTO脈沖串輸出設(shè)置以Q0.0為輸出端介紹PTO脈沖串輸出設(shè)置步驟。①使用初始化脈沖觸點(diǎn)SM0.1調(diào)用PTO脈沖串輸出初始化操作子程序。這個(gè)結(jié)構(gòu)可以使系統(tǒng)在后續(xù)的掃描過程中不再調(diào)用這個(gè)子程序,從而減少掃描時(shí)間,且程序更為結(jié)構(gòu)化。②在子程序中,若設(shè)置單段操作,則將16#85(2#10000101)寫入SMB67,表示脈沖輸出允許.選擇PTO功能.單段操作.以微秒為增量單位.可以更新脈沖數(shù)和周期值;若設(shè)置多段操作,則將16#A0(2#10100000)寫入SMB67,表示脈沖輸出允許.選擇PTO功能.多段操作.以微秒為增量單位。③單段操作中向SMW68中寫入希望的周期值,向SMD72中寫入希望的脈沖數(shù);多段操作中則要向SMW168中寫入包絡(luò)表的起始變量存儲(chǔ)器偏移地址,然后建立包絡(luò)表。④為捕獲高速脈沖輸出對(duì)應(yīng)的中斷事件(PTO脈沖輸出完成中斷)編寫相應(yīng)的中斷程序,并參考中斷事件及其優(yōu)先級(jí)表5-10,用ATCH中斷連接指令建立中斷事件和中斷程序的聯(lián)系。⑤執(zhí)行PLS指令。返回目錄(3)PTO脈沖串輸出設(shè)置返回目錄347.高速脈沖輸出指令應(yīng)用舉例如圖所示表示出了步進(jìn)電動(dòng)機(jī)起動(dòng)加速、恒速運(yùn)行、減速、停止過程中脈沖頻率-時(shí)間的關(guān)系。編寫控制程序。要求:加速部分在200個(gè)脈沖內(nèi)達(dá)到最大脈沖頻率(10kHZ),減速部分在400個(gè)脈沖內(nèi)完成。7.高速脈沖輸出指令應(yīng)用舉例要求:加速部分在200個(gè)脈沖內(nèi)達(dá)351.計(jì)算周期增量(1)加速部分(第1段):周期增量=(100μs-500μs)/200=-2μs(2)恒速部分(第2段):周期增量=(100μs-100μs)/3400=0μs(3)減速部分(第3段):周期增量=(500μs-100μs)/400=2μs
V存儲(chǔ)器地址參數(shù)值VB5003(總段數(shù))VW501500(1段初始周期)VW503-2(1段周期增量)VD505200(1段脈沖數(shù))VW509100(2段初始周期)VW5110(2段周期增量)VD5133400(2段脈沖數(shù))VW517100(3段初始周期)VW5191(3段周期增量)VD521400(3段脈沖數(shù))做包絡(luò)表1.計(jì)算周期增量V存儲(chǔ)器地址參數(shù)值VB5003(總段數(shù))VW36主程序調(diào)用初始化子程序當(dāng)PTO輸出完成時(shí)接通Q0.5主程序調(diào)用初始化子程序當(dāng)PTO輸出完成時(shí)接通Q0.537子程序設(shè)定PTO控制字節(jié)指定包絡(luò)表的起始地址為V500設(shè)定包絡(luò)表的總段數(shù)為3設(shè)定第1段的起始周期為500ms設(shè)定第1段的周期增量為-2ms設(shè)定第1段的脈沖個(gè)數(shù)為200設(shè)定第2、3的參數(shù)建立PTO輸出完成中斷事件19與中斷程序的連接執(zhí)行PLS指令允許中斷返回目錄子程序設(shè)定PTO控制字節(jié)指定包絡(luò)表的起始地址為V500設(shè)定包38三、PID回路指令
(一).PID算法簡(jiǎn)介PID控制(比例—積分—微分控制)算法在過程控制領(lǐng)域中的閉環(huán)控制中得到了廣泛應(yīng)用。下圖為帶PID控制器的閉環(huán)控制系統(tǒng)圖。PID控制器可調(diào)節(jié)回路輸出,使系統(tǒng)達(dá)到穩(wěn)定狀態(tài)。偏差e是給定值SP和測(cè)量值SP的差值。PID控制器的輸出與輸入的關(guān)系如(5-1)所示:三、PID回路指令PID控制器可調(diào)節(jié)回路輸出,使39(5-1)式中:M(t)—PID回路的輸出,是時(shí)間函數(shù),是比例項(xiàng)、積分項(xiàng)、微分項(xiàng)3項(xiàng)之和;Kc—PID回路的增益;Ki—積分項(xiàng)的系數(shù)e—PID回路的偏差;Kd—微分項(xiàng)的系數(shù)Minitial—PID回路的初始值。數(shù)字計(jì)算機(jī)處理這個(gè)函數(shù)關(guān)系式,必須將連續(xù)函數(shù)離散化,對(duì)偏差周期采樣后,計(jì)算輸出值。式(5-1)的離散形式如(5-2):(5-1)式中:M(t)—PID回路的輸出,是時(shí)間函數(shù),是比40(5-2)式中:Mn—在第N采樣時(shí)刻PID回路輸出的計(jì)算值;Kc—PID回路的增益;en—在第N采樣時(shí)刻的偏差值;en-1—在第N-1采樣時(shí)刻的偏差值(偏差前值)KI——積分項(xiàng)的系數(shù);Minitial—PID回路的初始值;KD——微分項(xiàng)的系數(shù);式(5-2)中,積分項(xiàng)是包括從第一個(gè)采樣周期到當(dāng)前采樣周期的所有誤差的累積值。計(jì)算中,沒有必要保留所有采樣周期的誤差項(xiàng),只需保留積分項(xiàng)前值MX即可。CPU實(shí)際上是使用式(5-3)的改進(jìn)形式的PID算式。(5-2)式中:Mn—在第N采樣時(shí)刻PID回路輸出的計(jì)算值41(5-3)式中:MX—積分前項(xiàng)值(在第N-1采樣時(shí)刻的積分項(xiàng));MPn—第N個(gè)采樣時(shí)刻的比例項(xiàng);MIn—第N個(gè)采樣時(shí)刻的積分項(xiàng);MDn——第N個(gè)采樣時(shí)刻的微分項(xiàng)。1.比例項(xiàng)
比例項(xiàng)MPn是增益Kc(決定輸出對(duì)偏差的靈敏度)和偏差值en的乘積。增益為正的回路為正作用回路,反之為反作用回路。選擇正、反回路的目的是使系統(tǒng)處于負(fù)反饋控制。CPU采用式(5-4)來計(jì)算MPn。(5-4)式中:SPn—第N個(gè)采樣時(shí)刻的給定值;PVn—第N個(gè)采樣時(shí)刻的過程變量值。(5-3)式中:MX—積分前項(xiàng)值(在第N-1采樣時(shí)刻的積分項(xiàng)422.積分項(xiàng)積分項(xiàng)MIn與偏差的和成正比,CPU采用式(5-5)來計(jì)算MIn。(5-5)式中:Ts—采樣周期;TI——積分時(shí)間常數(shù)。積分項(xiàng)前值MX是第N個(gè)采樣周期前所有積分項(xiàng)之和。在每次計(jì)算出MIn之后,都要用MIn去更新MX。在第一次計(jì)算時(shí),MX的初值被設(shè)置為Minitial(初值)。采樣周期TS是每次采樣的時(shí)間間隔,而積分時(shí)間常數(shù)TI控制積分項(xiàng)在控制量計(jì)算中的作用程度。2.積分項(xiàng)(5-5)式中:Ts—采樣周期;積分433.微分項(xiàng)微分項(xiàng)MDn與偏差的變化成正比(5-6)為了避免給定值變化的微分作用而引起的跳變,可設(shè)置給定值不變(SPn=SPn-1)。那么計(jì)算公式可簡(jiǎn)化為式(5-7)。(5-7)式中:Td—微分時(shí)間常數(shù);SPn-1—第N-1采樣時(shí)刻的給定值;PVn-1—第N-1采樣時(shí)刻的過程變量值。3.微分項(xiàng)(5-6)為了避免給定值變化的微分作44所以,PID的輸出為:1.比例項(xiàng):2.積分項(xiàng):3.微分項(xiàng):所以,PID的輸出為:1.比例項(xiàng):2.積分項(xiàng):3.微分項(xiàng):45(二).PID回路指令1.指令格式及梯形圖指令梯形圖與指令格式如下表所示。2.指令功能在EN端口執(zhí)行條件存在時(shí),由回路表中的輸入信息和組態(tài)信息,進(jìn)行PID運(yùn)算。該指令有2個(gè)操作數(shù):TBL和LOOP。其中TBL是回路表的起始地址,操作數(shù)限用VB區(qū)域;LOOP是回路號(hào),可以是0到7的整數(shù)。在程序中最多可以用8條PID指令,PID回路指令不可重復(fù)使用同一回路號(hào)(即使這些指令的回路表不同),否則會(huì)產(chǎn)生不可預(yù)料的結(jié)果。(二).PID回路指令2.指令功能在EN端口執(zhí)行條件存在46回路表包含9個(gè)參數(shù),用來控制和監(jiān)視PID運(yùn)算。這些參數(shù)分別是過程變量當(dāng)前值PVn,過程變量前值PVn-1,給定值SPn,輸出值Mn,增益Kc,采樣時(shí)間Ts,積分時(shí)間TI,微分時(shí)間TD,和積分項(xiàng)前值MX。36個(gè)字節(jié)的回路表格式見表5-11?;芈繁戆?個(gè)參數(shù),用來控制和監(jiān)視PID運(yùn)算。47對(duì)于PID回路的控制,有些控制系統(tǒng)只需要比例、積分、微分其中的一種或兩種控制類型。通過設(shè)置相關(guān)參數(shù)即可選擇所需的回路控制類型。如只需要比例、微分回路控制,可以把積分時(shí)間常數(shù)設(shè)為無(wú)窮大。此時(shí)積分項(xiàng)為初值MX。只需要比例、積分回路控制,可以把微分時(shí)間常數(shù)置為0.只需要積分或微分回路,則可以把回路增益Kc設(shè)為0.0,在計(jì)算積分項(xiàng)和微分項(xiàng)時(shí),系統(tǒng)把回路增益Kc當(dāng)作1.0。對(duì)于PID回路的控制,有些控制系統(tǒng)只需要比例、積分483.PID回路指令控制方式S7-200系列PLC中,PID回路指令沒有控制方式的設(shè)置,只要EN端有效就可以執(zhí)行PID指令。PID指令執(zhí)行稱之為“自動(dòng)”方式,PID指令不運(yùn)行稱之為“手動(dòng)”的方式。當(dāng)EN端檢測(cè)到一個(gè)正跳變(從0到1)信號(hào),PID回路就從手動(dòng)方式無(wú)攏動(dòng)切換到自動(dòng)方式。3.PID回路指令控制方式494.回路輸入輸出變量的數(shù)值轉(zhuǎn)換以及范圍(1)回路輸入變量的轉(zhuǎn)換和標(biāo)準(zhǔn)化。每個(gè)PID回路有2個(gè)輸入變量,給定值SP和過程變量PV。給定值通常是一個(gè)固定的值,如溫度控制中的溫度給定值。過程變量PV則與PID回路輸出有關(guān),并反映了控制的效果。在溫度控制系統(tǒng)中,測(cè)量并轉(zhuǎn)換為標(biāo)準(zhǔn)信號(hào)的溫度值就是過程變量。給定值和過程變量一般都是實(shí)際工程物理量,其數(shù)字大小。范圍和測(cè)量單位都可以不一樣。執(zhí)行PID指令前必須把它們轉(zhuǎn)換成浮點(diǎn)型實(shí)數(shù)值。4.回路輸入輸出變量的數(shù)值轉(zhuǎn)換以及范圍50①回路輸入變量的數(shù)據(jù)轉(zhuǎn)換,把A/D模擬量單元輸出的整數(shù)值轉(zhuǎn)換成浮點(diǎn)型實(shí)數(shù)值。程序如下。ITDAIW0,AC0把待變換的模擬量轉(zhuǎn)換為雙整數(shù)并存入AC0DTRAC0,AC0把32位雙整數(shù)轉(zhuǎn)換為實(shí)數(shù)②實(shí)數(shù)的標(biāo)準(zhǔn)化。把實(shí)數(shù)值進(jìn)一步標(biāo)準(zhǔn)化為0.0~1.0之間的實(shí)數(shù)。標(biāo)準(zhǔn)化的公式為(5-8)式中:Rnoum—標(biāo)準(zhǔn)化的實(shí)數(shù)值;Rraw—未標(biāo)準(zhǔn)化的實(shí)數(shù)值;Offset——補(bǔ)償值或偏值,單極性為0.0,雙極性為0.5;Span—值域大小,為最大允許值減去最小允許值,單極性為32000(典型值),雙極性為64000(典型值)。
①回路輸入變量的數(shù)據(jù)轉(zhuǎn)換,把A/D模擬量單元輸出的整數(shù)值轉(zhuǎn)換51雙極性實(shí)數(shù)標(biāo)準(zhǔn)化程序如下。/R64000.00,AC0累加器中的實(shí)數(shù)值除以64000.00+R0.5,AC0加上偏值,使其在0.0~1.0之間MOVRAC0,VD100標(biāo)準(zhǔn)化的實(shí)數(shù)值存入回路表(2)回路輸出變量的數(shù)據(jù)轉(zhuǎn)換回路輸出變量是用來控制外部設(shè)備的,例如控制水泵的速度。PID運(yùn)算的輸出值是0.0~1.0之間的標(biāo)準(zhǔn)化了的實(shí)數(shù)值,在輸出變量傳送給D/A模擬量單元之前,必須把回路輸出變量轉(zhuǎn)換成相應(yīng)的整數(shù)。這一過程是實(shí)數(shù)標(biāo)準(zhǔn)化的逆過程。雙極性實(shí)數(shù)標(biāo)準(zhǔn)化程序如下。52①回路輸出變量的的刻度化。把回路輸出的標(biāo)準(zhǔn)化實(shí)數(shù)轉(zhuǎn)換成實(shí)數(shù),公式如下。Rscal=(Mn-Offset)Span(5-9)式中:Rscal—回路輸出的刻度實(shí)數(shù)值;Mn—回路輸出的標(biāo)準(zhǔn)化實(shí)數(shù)值;Offset、Span的定義同式(7-8)?;芈份敵鲎兞康目潭然绦蛉缦?。MOVRVD108,AC0將回路輸出值放入累加器-R0.5,AC0對(duì)雙極性輸出,要減0.5的偏值(單極性無(wú)此句)*R64000.0,AC0回路輸出變量的刻度值①回路輸出變量的的刻度化。把回路輸出的標(biāo)準(zhǔn)化實(shí)數(shù)轉(zhuǎn)換成實(shí)數(shù),53②將實(shí)數(shù)轉(zhuǎn)化成整數(shù)(INT)。把回路輸出變量的刻度值轉(zhuǎn)換成整數(shù)(INT)的程序?yàn)椋篟OUNDAC0,AC0實(shí)數(shù)轉(zhuǎn)換為32位整數(shù)DTIAC0,AC0把雙字整數(shù)轉(zhuǎn)換為整數(shù)MOVWAC0,AQW0將輸出值輸出到模擬量輸出寄存器②將實(shí)數(shù)轉(zhuǎn)化成整數(shù)(INT)。把回路輸出變量的刻度值轉(zhuǎn)換成整543.指令應(yīng)用舉例1)控制要求某水箱其出水口流量是變化的,進(jìn)水口流量可通過調(diào)節(jié)水泵轉(zhuǎn)速控制,水位檢測(cè)由差壓變送器完成?,F(xiàn)對(duì)水箱進(jìn)行水位控制,使其水位保持在滿水位的75%。以PLC為主控制器,采用EM235模擬量模塊實(shí)現(xiàn)模擬量和數(shù)字量的轉(zhuǎn)換,差壓變送器送出的水位測(cè)量值通過模擬量輸入通道送入PLC中,PID回路輸出值通過模擬量轉(zhuǎn)化控制變頻器實(shí)現(xiàn)對(duì)水泵轉(zhuǎn)速的調(diào)節(jié)。2)控制程序的實(shí)現(xiàn)在以上要求中,水位測(cè)量值為過程變量PV,滿水位的75%為給定值SP。本例中過程變量PV和回路輸出量標(biāo)準(zhǔn)化采用單極性方案。控制方式采用比例、積分控制,PID參數(shù)采用如下設(shè)置:Kc=0.25,Ts=0.1s,T1=30min。程序如圖5-80所示。3.指令應(yīng)用舉例55S7-200-PLC的功能指令解讀課件56S7-200-PLC的功能指令解讀課件57S7-200-PLC的功能指令解讀課件58交通燈控制控制要求:1.綠燈亮10s2.綠燈閃爍3s3.黃燈亮5s4.紅燈亮10s重復(fù)1、2、3、4這個(gè)過程交通燈控制59ζ4-3S7-200PLC的功能指令一、傳送指令二、數(shù)學(xué)運(yùn)算指令三、邏輯運(yùn)算指令四、移位和循環(huán)移位指令五、數(shù)據(jù)轉(zhuǎn)換指令六、表功能指令七、程序控制指令八、中斷指令九、高速計(jì)數(shù)器指令十、高速脈沖輸出指令十一、PID回路指令ζ4-3S7-200PLC的功能指令一60一、高速計(jì)數(shù)器指令
在控制中,電動(dòng)機(jī)的調(diào)速是常見的控制方式。為實(shí)現(xiàn)對(duì)電動(dòng)機(jī)的精確控制,經(jīng)常使用編碼器將電動(dòng)機(jī)的轉(zhuǎn)速轉(zhuǎn)為高頻脈沖信號(hào),反饋至PLC,通過PLC對(duì)高頻脈沖的計(jì)數(shù)和編程來實(shí)現(xiàn)對(duì)電動(dòng)機(jī)的控制。PLC中普通計(jì)數(shù)器受到掃描周期的影響,對(duì)高速脈沖的計(jì)數(shù)將發(fā)生脈沖丟失現(xiàn)象,導(dǎo)致計(jì)數(shù)不準(zhǔn)確,也就不能實(shí)現(xiàn)精確控制。高速計(jì)數(shù)器(HSC)(HighSpeedCounter)脫離主機(jī)的掃描周期而獨(dú)立計(jì)數(shù),可以對(duì)脈寬小于掃描周期的高速脈沖準(zhǔn)確計(jì)數(shù),高速脈沖頻率最高可達(dá)30KHZ。能夠?qū)崿F(xiàn)對(duì)電動(dòng)機(jī)的精確控制。分五個(gè)方面來理解:
高速計(jì)數(shù)器指令格式
高速計(jì)數(shù)器指令功能
高速計(jì)數(shù)器編號(hào)、運(yùn)行模式及輸入端子分配
高速計(jì)數(shù)器控制位、當(dāng)前值、預(yù)置值及狀態(tài)位定義
高速計(jì)數(shù)器設(shè)置過程
返回目錄一、高速計(jì)數(shù)器指令返回目錄611.高速計(jì)數(shù)器指令高速計(jì)數(shù)器指令包含定義高速計(jì)數(shù)器指令(HDEF)、高速計(jì)數(shù)器指令(HSC)。HDEF、HSC指令的梯形圖及指令表格式如下所示。HDEFHSC,MODESTL指令HSCNSTL指令S7-200系列PLC中有6個(gè)高速計(jì)數(shù)器,由HSCn來表示高速計(jì)數(shù)器的地址,n的取值范圍為0~5。HSCn還表示高速計(jì)數(shù)器的當(dāng)前值(是一個(gè)只讀的32位雙字),可使用數(shù)據(jù)傳輸指令隨時(shí)讀出計(jì)數(shù)當(dāng)前值。不同的CPU模塊中可使用的高速計(jì)數(shù)器是不同的,CPU221、CPU222可以使HSC0、HSC3、HSC4和HSC5;CPU224和CPU226可以使用HSC0~HSC5。返回目錄1.高速計(jì)數(shù)器指令HDEFHSC,MODESTL指令HS622指令功能(1)定義高速計(jì)數(shù)器指令(HDEF):“HSC”端口指定高速計(jì)數(shù)器編號(hào)(0~5),“MODE”端口指定工作模式(0~11,各高速計(jì)數(shù)器至多有12種工作模式)。EN端口執(zhí)行條件存在時(shí),HDEF指令為指定的高速計(jì)數(shù)器選定一種工作模式。在一個(gè)程序中,每一個(gè)高速計(jì)數(shù)器只能使用一次HDEF指令。(2)高速計(jì)數(shù)器指令(HSC):根據(jù)高速計(jì)數(shù)器特殊存儲(chǔ)器位的設(shè)置,按照HDEF指令的工作模式,控制高速計(jì)數(shù)器的工作。操作數(shù)N指定了高數(shù)計(jì)數(shù)器號(hào)(0~5)返回目錄2指令功能返回目錄633.高速計(jì)數(shù)器編號(hào)、運(yùn)行模式及輸入端子分配
每一高速計(jì)數(shù)器都有多種工作模式,所使用的輸入端子也不相同,主要分為脈沖輸入端子、方向控制輸入端子、復(fù)位輸入端子、啟動(dòng)輸入端子等。如高速計(jì)數(shù)器的工作模式及輸入端子分配
表所示。3.高速計(jì)數(shù)器編號(hào)、運(yùn)行模式及輸入端子分配64運(yùn)行模式描述HSC0HSC4I0.0I0.1I0.2I0.3I0.4I0.50帶內(nèi)部方向控制的單相增/減計(jì)數(shù)器計(jì)數(shù)計(jì)數(shù)1計(jì)數(shù)復(fù)位計(jì)數(shù)復(fù)位3帶外部方向控制的單相增/減計(jì)數(shù)器計(jì)數(shù)方向計(jì)數(shù)方向4計(jì)數(shù)方向復(fù)位計(jì)數(shù)方向復(fù)位6帶增減計(jì)數(shù)輸入的雙向計(jì)數(shù)器增計(jì)數(shù)減計(jì)數(shù)增計(jì)數(shù)減計(jì)數(shù)7增計(jì)數(shù)減計(jì)數(shù)復(fù)位增計(jì)數(shù)減計(jì)數(shù)復(fù)位9A/B相正交計(jì)數(shù)器A相計(jì)數(shù)B相計(jì)數(shù)A相計(jì)數(shù)B相計(jì)數(shù)10A相計(jì)數(shù)B相計(jì)數(shù)復(fù)位A相計(jì)數(shù)B相計(jì)數(shù)復(fù)位從表中可以看出,高速計(jì)數(shù)器工作模式主要分為4類運(yùn)行模式描述HSC0HSC4I0.0I0.1I0.2I0.365(1)帶內(nèi)部方向控制的單相增/減計(jì)數(shù)器有一個(gè)計(jì)數(shù)輸入端,沒有外部方向控制輸入信號(hào)。計(jì)數(shù)方向由內(nèi)部控制字節(jié)中的方向控制位來設(shè)置,只能進(jìn)行單向增計(jì)數(shù)或減計(jì)數(shù)。如HSC0的模式0,其計(jì)數(shù)方向控制位為SM37.3,當(dāng)該位為0時(shí)為減計(jì)數(shù),該位為1時(shí)為增計(jì)數(shù)。(2)帶外部方向控制的單相增/減計(jì)數(shù)器有一個(gè)計(jì)數(shù)輸入端,由外部輸入信號(hào)控制計(jì)數(shù)方向,只能進(jìn)行單向增計(jì)數(shù)或減計(jì)數(shù)。如HSC4的模式3,IO.7為0時(shí)為減計(jì)數(shù),IO.4為1時(shí)為增計(jì)數(shù)。運(yùn)行模式描述HSC0HSC4I0.0I0.1I0.2I0.3I0.4I0.50帶內(nèi)部方向控制的單相增/減計(jì)數(shù)器計(jì)數(shù)計(jì)數(shù)1計(jì)數(shù)復(fù)位計(jì)數(shù)復(fù)位3帶外部方向控制的單相增/減計(jì)數(shù)器計(jì)數(shù)方向計(jì)數(shù)方向4計(jì)數(shù)方向復(fù)位計(jì)數(shù)方向復(fù)位(1)帶內(nèi)部方向控制的單相增/減計(jì)數(shù)器運(yùn)行模式描述HSC66(3)帶增減計(jì)數(shù)輸入的雙向計(jì)數(shù)器有兩個(gè)計(jì)數(shù)輸入端,一個(gè)為增計(jì)數(shù)輸入,一個(gè)為減計(jì)數(shù)輸入。增計(jì)數(shù)輸入端有一個(gè)脈沖達(dá)到時(shí),計(jì)數(shù)器當(dāng)前值增加1;減計(jì)數(shù)輸入端有一個(gè)脈沖達(dá)到時(shí),計(jì)數(shù)器當(dāng)前值減少1。若增計(jì)數(shù)脈沖與減計(jì)數(shù)脈沖相隔時(shí)間大于0.3ms,高速計(jì)數(shù)器就能夠正確計(jì)數(shù),若相隔時(shí)間小于0.3ms,高速計(jì)數(shù)器認(rèn)為兩個(gè)脈沖同時(shí)發(fā)生,計(jì)數(shù)器當(dāng)前值不變。運(yùn)行模式描述HSC0HSC4I0.0I0.1I0.2I0.3I0.4I0.56帶增減計(jì)數(shù)輸入的雙向計(jì)數(shù)器增計(jì)數(shù)減計(jì)數(shù)增計(jì)數(shù)減計(jì)數(shù)7增計(jì)數(shù)減計(jì)數(shù)復(fù)位增計(jì)數(shù)減計(jì)數(shù)復(fù)位(3)帶增減計(jì)數(shù)輸入的雙向計(jì)數(shù)器運(yùn)行模式描述HSC0H67(4)A/B相正交計(jì)數(shù)器有兩個(gè)計(jì)數(shù)輸入端A相和B相,A/B相正交計(jì)數(shù)器由兩個(gè)輸入脈沖的相位來確定計(jì)數(shù)方向。A相脈沖上升沿超前于B相脈沖上升沿時(shí)為增計(jì)數(shù),反之為減計(jì)數(shù)。(5)復(fù)位端和啟動(dòng)端當(dāng)復(fù)位輸入有效時(shí),將清除計(jì)數(shù)器當(dāng)前值。當(dāng)啟動(dòng)輸入有效時(shí),則表表示高速計(jì)數(shù)器計(jì)數(shù),啟動(dòng)輸入無(wú)效時(shí),計(jì)數(shù)器忽略計(jì)數(shù)脈沖的輸入,當(dāng)前值保持不變。返回目錄運(yùn)行模式描述HSC0HSC4I0.0I0.1I0.2I0.3I0.4I0.59A/B相正交計(jì)數(shù)器A相計(jì)數(shù)B相計(jì)數(shù)A相計(jì)數(shù)B相計(jì)數(shù)10A相計(jì)數(shù)B相計(jì)數(shù)復(fù)位A相計(jì)數(shù)B相計(jì)數(shù)復(fù)位(4)A/B相正交計(jì)數(shù)器返回目錄運(yùn)行模式描述HSC0H684.高速計(jì)數(shù)器控制位、當(dāng)前值、預(yù)置值及狀態(tài)位定義要正確使用高速計(jì)數(shù)器,還要正確設(shè)置高速計(jì)數(shù)器的控制字節(jié)以及當(dāng)前值與預(yù)置值。狀態(tài)位則表明了高速計(jì)數(shù)器的運(yùn)行狀態(tài),可以作為編程的參考點(diǎn)。(1)高速計(jì)數(shù)器控制字節(jié)各高速計(jì)數(shù)器控制字節(jié)如下表所示HSC0HSC1HSC2HSC3HSC4HSC5SM37SM47SM57SM137SM147SM1574.高速計(jì)數(shù)器控制位、當(dāng)前值、預(yù)置值及狀態(tài)位定義HSC0H69控制字節(jié)的功能如下表所示HSC0控制位功能SM37.0復(fù)位有效電平控制位;0(高電平有效),1(低電平有效)啟動(dòng)有效電平控制位;0(高電平有效),1(低電平有效)SM37.2正交計(jì)數(shù)器計(jì)數(shù)速率選擇,0(4X),1(1X)SM37.3計(jì)數(shù)方向控制位;0(減計(jì)數(shù)),1(增計(jì)數(shù))SM37.4向HSC中寫入計(jì)數(shù)方向;0(不更新),1(更新計(jì)數(shù)方向)SM37.5向HSC中寫入預(yù)置值,0(不更新),1(更新預(yù)置值)SM37.6向HSC中寫入新的當(dāng)前值,0(不更新),1(更新當(dāng)前值)SM37.7HSC允許,0(禁止HSC),1(允許HSC)復(fù)位及啟動(dòng)輸入可設(shè)置為高電平有效還是低電平有效A/B相正交計(jì)數(shù)器模式中可以設(shè)置計(jì)數(shù)器計(jì)數(shù)速率是按外部脈沖速率(1X),還是按4倍外部脈沖速率(4X)可設(shè)置在高速計(jì)數(shù)器運(yùn)行過程中能否修改計(jì)數(shù)方向、當(dāng)前值和預(yù)置值通過最高位還可控制高速計(jì)數(shù)器的運(yùn)行和禁止控制字節(jié)的功能如下表所示HSC0控制位功能SM37.0復(fù)位有70(2)高速計(jì)數(shù)器的當(dāng)前值、預(yù)置值設(shè)置每個(gè)計(jì)數(shù)器都有一個(gè)當(dāng)前值和預(yù)置值。當(dāng)前值和預(yù)置值都是32位帶符號(hào)整數(shù)。必須將當(dāng)前值和預(yù)置值存入下表所示的特殊存儲(chǔ)器中,然后執(zhí)行HSC指令,才能夠?qū)⑿轮邓腿敫咚儆?jì)數(shù)器當(dāng)中。要裝入的值HSC0HSC1HSC2HSC3HSC4HSC5初始當(dāng)前值SMD38SMD48SMD58SMD138SMD148SMD158預(yù)值值SMD42SMD52SMD62SMD142SMD152SMD163(2)高速計(jì)數(shù)器的當(dāng)前值、預(yù)置值設(shè)置要裝入的值HSC0HS71(3)高速計(jì)數(shù)器的狀態(tài)位每個(gè)高速計(jì)數(shù)器都有一個(gè)狀態(tài)字節(jié),如下表所示:HSC0HSC1HSC2HSC3HSC5HSC6SM36SM46SM56SM136SM146SM156狀態(tài)位的功能如下表所示:(3)高速計(jì)數(shù)器的狀態(tài)位HSC0HSC1HSC2HSC3H72HSC0狀態(tài)位功能SM36.0~SM36.4不用SM36.5當(dāng)前計(jì)數(shù)方向狀態(tài)位,0(減計(jì)數(shù));1(增計(jì)數(shù))SM36.6當(dāng)前值等于預(yù)置值狀態(tài)位;0(不等);1(相等)SM36.7當(dāng)前值大于預(yù)置值狀態(tài)位;0(小于等于);1(大于)指出了當(dāng)前計(jì)數(shù)方向當(dāng)前值與預(yù)置值是否相等當(dāng)前值是否大于預(yù)置值的狀態(tài)可以通過監(jiān)視高速計(jì)數(shù)器的狀態(tài)位產(chǎn)生相應(yīng)中斷,完成重要操作。返回目錄HSC0狀態(tài)位功能SM36.0~SM36.4不用SM36.5735.高速計(jì)數(shù)器設(shè)置過程為更好地理解和使用高速計(jì)數(shù)器,下面給出高速計(jì)數(shù)器的一般設(shè)置過程。(1)使用初始化脈沖觸點(diǎn)SM0.1調(diào)用高速計(jì)數(shù)器初始化操作子程序。(這個(gè)結(jié)構(gòu)可以使系統(tǒng)在后續(xù)的掃描過程中不再調(diào)用這個(gè)子程序,從而減少了掃描時(shí)間,且程序更加結(jié)構(gòu)化)。(2)在初始化子程序中,對(duì)相應(yīng)高速計(jì)數(shù)器的控制字節(jié)寫入希望的控制字。如要使用HSC1,則對(duì)SMB47寫入16#F8(2#11111000),表示高速計(jì)數(shù)器運(yùn)行,允許寫入新的當(dāng)前值,允許寫入新的預(yù)置值,可以改變計(jì)數(shù)器方向,置計(jì)數(shù)器的計(jì)數(shù)方向?yàn)樵觯脝?dòng)和復(fù)位輸入為高電平有效(3)執(zhí)行HDEF指令,根據(jù)所選計(jì)數(shù)器號(hào)和運(yùn)行模式將高速計(jì)數(shù)器號(hào)與具體運(yùn)行模式進(jìn)行連接。5.高速計(jì)數(shù)器設(shè)置過程74(4)在所選計(jì)數(shù)器號(hào)對(duì)應(yīng)的當(dāng)前值單元內(nèi)裝入所希望的當(dāng)前值,若裝入0,則清除原當(dāng)前值。(5)在所選計(jì)數(shù)器號(hào)對(duì)應(yīng)的預(yù)置值單元內(nèi)裝有所希望的預(yù)置值。(6)為捕獲高速計(jì)數(shù)器對(duì)應(yīng)的中斷事件(當(dāng)前值等于預(yù)置值、計(jì)數(shù)方向改變、外部復(fù)位),編寫相應(yīng)的中斷程序,并參考中斷事件及其優(yōu)先級(jí)表5-10用ATCH中斷連接指令建立中斷事件和中斷程序的聯(lián)系。(7)執(zhí)行全局中斷允許指令(ENI)來允許高速計(jì)數(shù)器中斷。(8)執(zhí)行HSC指令,使高速計(jì)數(shù)器開始運(yùn)行。(4)在所選計(jì)數(shù)器號(hào)對(duì)應(yīng)的當(dāng)前值單元內(nèi)裝入所希望的當(dāng)前值,若75例:高速計(jì)數(shù)器的應(yīng)用調(diào)用初始化子程序清除HSC1當(dāng)前值設(shè)置HSC1的控制字節(jié)執(zhí)行HSC指令例:高速計(jì)數(shù)器的應(yīng)用調(diào)用初始化子程序清除HSC1當(dāng)前值設(shè)置H76子程序設(shè)置HSC1的工作模式清除HSC1當(dāng)前值設(shè)定HSC1的預(yù)置值建立中斷事件13與INT_0的連接允許全局中斷執(zhí)行HSC指令設(shè)置HSC1的控制字節(jié)返回目錄子程序設(shè)置HSC1的工作模式清除HSC1當(dāng)前值設(shè)定HSC1的77二、高速脈沖輸出高速脈沖輸出功能可以使PLC在指定的輸出點(diǎn)上產(chǎn)生高速的PWM(脈寬調(diào)制)脈沖或輸出頻率可變的PTO脈沖,來實(shí)現(xiàn)對(duì)步進(jìn)電動(dòng)機(jī)和直流伺服電動(dòng)機(jī)的定位控制和調(diào)速。分八個(gè)方面來理解:
高速脈沖輸出指令的格式高速脈沖的輸出方式
輸出端子的連接指令功能相關(guān)的特殊功能寄存器
PWM脈沖輸出設(shè)置
PTO脈沖串輸出設(shè)置
高速脈沖輸出指令應(yīng)用返回目錄二、高速脈沖輸出返回目錄781.高速脈沖輸出指令的格式PLSQSTL指令2.高速脈沖的輸出方式高速脈沖輸出可分為:高速脈沖串輸出(PTO):提供方波輸出,用戶控制脈沖周期和脈沖數(shù)寬度可調(diào)脈沖輸出(PWM):提供連續(xù)、占空比可調(diào)的脈沖輸出,用戶控制脈沖周期和脈沖寬度返回目錄PLSQSTL指令2.高速脈沖的輸出方式返回目錄793.輸出端子的連接每個(gè)CPU有兩個(gè)PTO/PWM發(fā)生器產(chǎn)生高速脈沖串和脈沖寬度可調(diào)的波形,一個(gè)發(fā)生器分配給數(shù)字輸出端Q0.0,另一個(gè)分配在Q0.1。4.指令功能PLS脈沖輸出指令,在EN端口執(zhí)行條件存在,檢測(cè)脈沖輸出特殊存儲(chǔ)器的狀態(tài),然后激活所定義的脈沖,從Q端口指定的輸出端口輸出高速脈沖。操作數(shù)Q為0或15.相關(guān)的特殊功能寄存器為定義和監(jiān)控高速脈沖輸出,系統(tǒng)提供了控制字節(jié)、狀態(tài)字節(jié)和參數(shù)設(shè)置寄存器。寄存器分配如下表所示
3.輸出端子的連接80高速脈沖輸出的特殊寄存器分配Q0.0對(duì)應(yīng)寄存器Q0.1對(duì)應(yīng)寄存器功能描述SMB66SMB76狀態(tài)字節(jié),PTO方式,監(jiān)控脈沖串的運(yùn)行狀態(tài)SMB67SMB77控制字節(jié),定義PTO/PWM脈沖的輸出格式SMW68SMW78設(shè)置PTO/PWM脈沖的周期值,范圍:2~65535SMW70SMW80設(shè)置PWM的脈沖寬度值,范圍:0~65535SMD72SMD82設(shè)置PTO脈沖的輸出脈沖數(shù),范圍:1~4294967295SMB166SMB176設(shè)置PTO多段操作時(shí)的段數(shù)SMW168SMW178設(shè)置PTO多段操作時(shí)包絡(luò)表的起始地址,使用從變量寄存器V0開始的字節(jié)偏移表示高速脈沖輸出的特殊寄存器分配Q0.0對(duì)應(yīng)寄存器Q0.1對(duì)應(yīng)寄81(1)狀態(tài)字節(jié)每個(gè)高速脈沖輸出都有一個(gè)狀態(tài)字節(jié),監(jiān)控Q0.0或者Q0.1是否空閑,是否溢出,當(dāng)采用多個(gè)脈沖串輸出時(shí),輸出終止的原因,這些信息在程序運(yùn)行時(shí),都能使?fàn)顟B(tài)字節(jié)置位或者復(fù)位.具體狀態(tài)字節(jié)功能如下表所示
Q0.0Q0.1狀態(tài)位功能SM66.0~SM66.3SM76.0~SM76.3沒用SM66.4SM76.4PTO包絡(luò)由于增量計(jì)算錯(cuò)誤終止,0(無(wú)錯(cuò)誤),1(有錯(cuò)誤)SM66.5SM76.5PTO包絡(luò)由于用戶命令終止,0(不終止),1(終止)SM66.6SM76.6PTO管線溢出,0(無(wú)溢出),1(溢出)SM66.7SM76.7PTO空閑,0(執(zhí)行中),1(空閑)Q0.0Q0.1狀態(tài)位功能SM66.0~SM66.3SM7682(2)控制字節(jié)(SMB67/SMB77)
通過對(duì)控制字節(jié)的設(shè)置,可以選擇高速脈沖輸出的時(shí)間基準(zhǔn)、具體周期、輸出模式(PTO/PWM)、更新方式等,是編程是初始操作中必須完成的內(nèi)容。下表是各控制位具體功能。(2)控制字節(jié)(SMB67/SMB77)83
Q0.0Q0.1控制位功能SM67.0SM77.0PTO/PWM周期更新允許,0(不更新),1(允許更新)SM67.1SM77.1PWM脈沖寬度值更新允許,0(不更新),1(允許更新)SM67.2SM77.2PTO脈沖數(shù)更新允許,0(不更新),1(允許更新)SM67.3SM77.3PTO/PWM時(shí)間基準(zhǔn)選擇,0(1us/時(shí)基),1(1ms/時(shí)基)SM67.4SM77.4PWM更新方式,0(異步更新),1(同步更新)SM67.5SM77.5PTO單/多段選擇,0(單段管線),1(多段管線)SM67.6SM77.6PTO/PWM模式選擇,0(PTO模式),1(PWM模式)SM67.7SM77.7PTO/PWM脈沖輸出允許,0(禁止脈沖輸出),1(允許脈沖輸出)
高速脈沖輸出控制位功能返回目錄Q0.0Q0.1控制位功能SM67.0SM77.0P846.PWM脈沖輸出設(shè)置(1)PWM脈沖含義及周期、脈寬設(shè)置要求PWM脈沖是指占空比可調(diào)而周期固定的脈沖。其周期和脈寬的增量單位可以設(shè)為微秒(us)或毫秒(ms),周期變化范圍分別為50us~65535us和2ms~65535ms.脈寬變化范圍分別為0us~65535us和0ms~65535ms。當(dāng)脈寬大于等于周期時(shí),占空比為100%,輸出連續(xù)接通,當(dāng)脈寬為0時(shí),占空比為0%,輸出斷開。
6.PWM脈沖輸出設(shè)置85(2)PWM脈沖波形更新方式由于PWM占空比可調(diào),且周期可設(shè)置,所以脈沖連續(xù)輸出時(shí)的波形可以更新。有兩種方法來改變波形的特性。
同步更新:PWM脈沖輸出的典型操作是周期不變而變化脈沖寬度,這時(shí)由于不需要改變時(shí)間基準(zhǔn),可以使用同步更新。
異步更新:若在脈沖輸出時(shí)要改變時(shí)間基準(zhǔn),就要使用異步更新方式。(2)PWM脈沖波形更新方式86(3)PWM脈沖輸出設(shè)置以Q0.0為脈沖輸出端介紹PWM脈沖輸出的設(shè)置步驟。①使用初始化脈沖觸點(diǎn)SM0.1調(diào)用PWM脈沖輸出初始化操作子程序。這個(gè)結(jié)構(gòu)可以使系統(tǒng)在后續(xù)的掃描過程中不再調(diào)用這個(gè)子程序,從而減少了掃描時(shí)間,且程序更為結(jié)構(gòu)化。②在初始化子程序中,將16#D3(2#11010011)寫入SMB67控制字節(jié)中。設(shè)置內(nèi)容為脈沖輸出允許;選擇PWM方式;使用同步更新;選擇以微秒為增量單位;可以更新脈沖寬度和周期。③向SMW68中寫入希望的周期值。④向SMW70中寫入希望的脈沖寬度。⑤執(zhí)行PLS指令開始輸出脈沖。
返回目錄(3)PWM脈沖輸出設(shè)置返回目錄877.PTO脈沖串輸出設(shè)置(1)PTO脈沖串含義及周期、脈沖數(shù)設(shè)置要求。PTO脈沖串輸出占空比為1:1的方波,可以設(shè)置其周期和輸出的脈沖數(shù)量。周期的增量單位可以設(shè)為微秒(us)或毫秒(ms),周期變化范圍分別為50us~65535us和2ms~65535ms.脈沖數(shù)設(shè)置范圍為1~4294967295,若設(shè)置值為0,系統(tǒng)將默認(rèn)為1。7.PTO脈沖串輸出設(shè)置88(2)PTO脈沖串的單段管線和多段管線輸出控制PTO功能允許脈沖串的排隊(duì)輸出,當(dāng)前一個(gè)脈沖串完成時(shí),可以立即開始新的脈沖串輸出,從而形成管線,根據(jù)管線的實(shí)現(xiàn)形式,將PTO分為單段和多段管線兩種。①單段管線。管線中只能存放一個(gè)脈沖串控制參數(shù),一旦啟動(dòng)了一個(gè)脈沖串輸出,就要立即為下一個(gè)脈沖串設(shè)置控制參數(shù),并再次執(zhí)行PLS指令。第一個(gè)脈沖串輸出完畢后,第二個(gè)脈沖串自動(dòng)開始輸出。重復(fù)以上過程就可輸出多個(gè)脈沖串。(2)PTO脈沖串的單段管線和多段管線輸出控制89②多段管線在多段管線方式下,需要在變量存儲(chǔ)區(qū)(V)建立一個(gè)包絡(luò)表。包絡(luò)表中包含各脈沖串的參數(shù)(初始周期.周期增量和脈沖數(shù))以及要輸出脈沖的段數(shù)。使用PLS指令啟動(dòng)輸出后,系統(tǒng)自動(dòng)從包絡(luò)表中讀取每個(gè)脈沖串的參數(shù)進(jìn)行輸出。編程時(shí),必須向SMW168或SMW178裝入包絡(luò)表的起始變量的偏移地址(從V0開始計(jì)算偏移地址),例如包絡(luò)表從VB300開始,則需要向SM168或SM178中寫入十進(jìn)制數(shù)300。包絡(luò)表中的周期增量可以選擇微秒或毫秒,但一個(gè)包絡(luò)表中只能選擇一個(gè)時(shí)間基準(zhǔn),運(yùn)行過程中也不能改變。包絡(luò)表的格式見表5-18。
②多段管線90
從包絡(luò)表開始的字節(jié)偏移地址包絡(luò)表各段描述VBn段數(shù)(1~255),設(shè)為0產(chǎn)生非致命性錯(cuò)誤,不產(chǎn)生PTO輸出VWn+1第1段初始周期(2~65535時(shí)間基準(zhǔn)單位)VWn+3每個(gè)脈沖的周期增量(-32768~32767時(shí)間基準(zhǔn)單位)VDn+5脈沖數(shù)(1~4294967295)VWn+9第2段初始周期(2~65535時(shí)間基準(zhǔn)單位)VWn+11每個(gè)脈沖的周期增量(-32768~32767時(shí)間基準(zhǔn)單位)VDn+13脈沖數(shù)(1~4294967295)……
包絡(luò)表每段的長(zhǎng)度是8個(gè)字節(jié),由周期值(16bit)、周期增量值(16bit)和本段內(nèi)輸出脈沖的數(shù)量(32bit)組成。
包絡(luò)表格式
91注意:一般來說,為了使各脈沖段之間能夠平滑過渡,各段的結(jié)束周期(ECT)與下一段的初始周期(ICT)應(yīng)相等,在各段輸出脈沖數(shù)(Q)確定的情況下,脈沖的周期增量(N)需要經(jīng)過計(jì)算來確定。例如:第1段中的初始周期為500μs,脈沖數(shù)為400個(gè),而第2段的初始周期為100μs,為保證平滑過渡,第1段的結(jié)束周期設(shè)應(yīng)與第2段初始周期相同,則脈沖的周期增量為N=(ECT-ICT)/Q=(100-500)/400=-1。
注意:92(3)PTO脈沖串輸出設(shè)置以Q0.0為輸出端介紹PTO脈沖串輸出設(shè)置步驟。①使用初始化脈沖觸點(diǎn)SM0.1調(diào)用PTO脈沖串輸出初始化操作子程序。這個(gè)結(jié)構(gòu)可以使系統(tǒng)在后續(xù)的掃描過程中不再調(diào)用這個(gè)子程序,從而減少掃描時(shí)間,且程序更為結(jié)構(gòu)化。②在子程序中,若設(shè)置單段操作,則將16#85(2#10000101)寫入SMB67,表示脈沖輸出允許.選擇PTO功能.單段操作.以微秒為增量單位.可以更新脈沖數(shù)和周期值;若設(shè)置多段操作,則將16#A0(2#10100000)寫入SMB67,表示脈沖輸出允許.選擇PTO功能.多段操作.以微秒為增量單位。③單段操作中向SMW68中寫入希望的周期值,向SMD72中寫入希望的脈沖數(shù);多段操作中則要向SMW168中寫入包絡(luò)表的起始變量存儲(chǔ)器偏移地址,然后建立包絡(luò)表。④為捕獲高速脈沖輸出對(duì)應(yīng)的中斷事件(PTO脈沖輸出完成中斷)編寫相應(yīng)的中斷程序,并參考中斷事件及其優(yōu)先級(jí)表5-10,用ATCH中斷連接指令建立中斷事件和中斷程序的聯(lián)系。⑤執(zhí)行PLS指令。返回目錄(3)PTO脈沖串輸出設(shè)置返回目錄937.高速脈沖輸出指令應(yīng)用舉例如圖所示表示出了步進(jìn)電動(dòng)機(jī)起動(dòng)加速、恒速運(yùn)行、減速、停止過程中脈沖頻率-時(shí)間的關(guān)系。編寫控制程序。要求:加速部分在200個(gè)脈沖內(nèi)達(dá)到最大脈沖頻率(10kHZ),減速部分在400個(gè)脈沖內(nèi)完成。7.高速脈沖輸出指令應(yīng)用舉例要求:加速部分在200個(gè)脈沖內(nèi)達(dá)941.計(jì)算周期增量(1)加速部分(第1段):周期增量=(100μs-500μs)/200=-2μs(2)恒速部分(第2段):周期增量=(100μs-100μs)/3400=0μs(3)減速部分(第3段):周期增量=(500μs-100μs)/400=2μs
V存儲(chǔ)器地址參數(shù)值VB5003(總段數(shù))VW501500(1段初始周期)VW503-2(1段周期增量)VD505200(1段脈沖數(shù))VW509100(2段初始周期)VW5110(2段周期增量)VD5133400(2段脈沖數(shù))VW517100(3段初始周期)VW5191(3段周期增量)VD521400(3段脈沖數(shù))做包絡(luò)表1.計(jì)算周期增量V存儲(chǔ)器地址參數(shù)值VB5003(總段數(shù))VW95主程序調(diào)用初始化子程序當(dāng)PTO輸出完成時(shí)接通Q0.5主程序調(diào)用初始化子程序當(dāng)PTO輸出完成時(shí)接通Q0.596子程序設(shè)定PTO控制字節(jié)指定包絡(luò)表的起始地址為V500設(shè)定包絡(luò)表的總段數(shù)為3設(shè)定第1段的起始周期為500ms設(shè)定第1段的周期增量為-2ms設(shè)定第1段的脈沖個(gè)數(shù)為200設(shè)定第2、3的參數(shù)建立PTO輸出完成中斷事件19與中斷程序的連接執(zhí)行PLS指令允許中斷返回目錄子程序設(shè)定PTO控制字節(jié)指定包絡(luò)表的起始地址為V500設(shè)定包97三、PID回路指令
(一).PID算法簡(jiǎn)介PID控制(比例—積分—微分控制)算法在過程控制領(lǐng)域中的閉環(huán)控制中得到了廣泛應(yīng)用。下圖為帶PID控制器的閉環(huán)控制系統(tǒng)圖。PID控制器可調(diào)節(jié)回路輸出,使系統(tǒng)達(dá)到穩(wěn)定狀態(tài)。偏差e是給定值SP和測(cè)量值SP的差值。PID控制器的輸出與輸入的關(guān)系如(5-1)所示:三、PID回路指令PID控制器可調(diào)節(jié)回路輸出,使98(5-1)式中:M(t)—PID回路的輸出,是時(shí)間函數(shù),是比例項(xiàng)、積分項(xiàng)、微分項(xiàng)3項(xiàng)之和;Kc—PID回路的增益;Ki—積分項(xiàng)的系數(shù)e—PID回路的偏差;Kd—微分項(xiàng)的系數(shù)Minitial—PID回路的初始值。數(shù)字計(jì)算機(jī)處理這個(gè)函數(shù)關(guān)系式,必須將連續(xù)函數(shù)離散化,對(duì)偏差周期采樣后,計(jì)算輸出值。式(5-1)的離散形式如(5-2):(5-1)式中:M(t)—PID回路的輸出,是時(shí)間函數(shù),是比99(5-2)式中:Mn—在第N采樣時(shí)刻PID回路輸出的計(jì)算值;Kc—PID回路的增益;en—在第N采樣時(shí)刻的偏差值;en-1—在第N-1采樣時(shí)刻的偏差值(偏差前值)KI——積分項(xiàng)的系數(shù);Minitial—PID回路的初始值;KD——微分項(xiàng)的系數(shù);式(5-2)中,積分項(xiàng)是包括從第一個(gè)采樣周期到當(dāng)前采樣周期的所有誤差的累積值。計(jì)算中,沒有必要保留所有采樣周期的誤差項(xiàng),只需保留積分項(xiàng)前值MX即可。CPU實(shí)際上是使用式(5-3)的改進(jìn)形式的PID算式。(5-2)式中:Mn—在第N采樣時(shí)刻PID回路輸出的計(jì)算值100(5-3)式中:MX—積分前項(xiàng)值(在第N-1采樣時(shí)刻的積分項(xiàng));MPn—第N個(gè)采樣時(shí)刻的比例項(xiàng);MIn—第N個(gè)采樣時(shí)刻的積分項(xiàng);MDn——第N個(gè)采樣時(shí)刻的微分項(xiàng)。1.比例項(xiàng)
比例項(xiàng)MPn是增益Kc(決定輸出對(duì)偏差的靈敏度)和偏差值en的乘積。增益為正的回路為正作用回路,反之為反作用回路。選擇正、反回路的目的是使系統(tǒng)處于負(fù)反饋控制。CPU采用式(5-4)來計(jì)算MPn。(5-4)式中:SPn—第N個(gè)采樣時(shí)刻的給定值;PVn—第N個(gè)采樣時(shí)刻的過程變量值。(5-3)式中:MX—積分前項(xiàng)值(在第N-1采樣時(shí)刻的積分項(xiàng)1012.積分項(xiàng)積分項(xiàng)MIn與偏差的和成正比,CPU采用式(5-5)來計(jì)算MIn。(5-5)式中:Ts—采樣周期;TI——積分時(shí)間常數(shù)。積分項(xiàng)前值MX是第N個(gè)采樣周期前所有積分項(xiàng)之和。在每次計(jì)算出MIn之后,都要用MIn去更新MX。在第一次計(jì)算時(shí),MX的初值被設(shè)置為Minitial(初值)。采樣周期TS是每次采樣的時(shí)間間隔,而積分時(shí)間常數(shù)TI控制積分項(xiàng)在控制量計(jì)算中的作用程度。2.積分項(xiàng)(5-5)式中:Ts—采樣周期;積分1023.微分項(xiàng)微分項(xiàng)MDn與偏差的變化成正比(5-6)為了避免給定值變化的微分作用而引起的跳變,可設(shè)置給定值不變(SPn=SPn-1)。那么計(jì)算公式可簡(jiǎn)化為式(5-7)。(5-7)式中:Td—微分時(shí)間常數(shù);SPn-1—第N-1采樣時(shí)刻的給定值;PVn-1—第N-1采樣時(shí)刻的過程變量值
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年項(xiàng)目進(jìn)度控制與管理手冊(cè)
- 樂山市峨眉第二中學(xué)校2025-2026學(xué)年高二上學(xué)期10月月考物理試題
- 安全生產(chǎn)法律法規(guī)管理制度
- 2025年GCP題庫(kù)題庫(kù)帶答案(模擬題)
- 糞便檢查試題及答案
- 2025年天津市安全員考試題庫(kù)及答案
- 2025會(huì)計(jì)從業(yè)考試匯票試題及答案
- 2025年注冊(cè)藥師《藥品知識(shí)與運(yùn)用》備考試題及答案解析
- 成人本科考試題目及答案
- 2025江蘇省建筑安全員C證考試(專職安全員)題庫(kù)附答案
- 體系培訓(xùn)文件課件9001
- 外科急危重癥護(hù)理
- 生物實(shí)驗(yàn)室樣本管理制度
- 客戶投訴理賠管理制度
- GB/T 45451.1-2025包裝塑料桶第1部分:公稱容量為113.6 L至220 L的可拆蓋(開口)桶
- 文物基礎(chǔ)知識(shí)題庫(kù)單選題100道及答案
- GB/T 44819-2024煤層自然發(fā)火標(biāo)志氣體及臨界值確定方法
- 《風(fēng)力發(fā)電廠調(diào)試規(guī)程》
- 搞笑小品劇本《我的健康誰(shuí)做主》臺(tái)詞完整版-宋小寶徐崢
- 正大天虹方矩管鍍鋅方矩管材質(zhì)書
- 兔子解剖實(shí)驗(yàn)報(bào)告
評(píng)論
0/150
提交評(píng)論