產地類別 | 進口 |
---|
產品簡介
詳細介紹
歡迎進入上海金靈祥自動化科技有限公司
上海金靈祥自動化科技有限公司是一家多年從事大型系統備件(集散式控制系統、可編程控制器、冗余容錯控制系統、機器人控制系統、大型伺服控制系統)等進口自動化系統備件、模塊銷售及系統集成的。對西門子自動化產品有著強大的優點與趨勢, 公司在與德國 SIEMENS公司自動化與驅動部門的長期緊密合作過程中,建立了良好的相互協作關系。 上海金靈祥自動化科技有限公司本著、誠信、合作、共贏、的經營理念,竭誠為客戶提供好的服務,好的價格;歡迎來電垂詢。西門子PLC CPU S7-300模塊西門子PLC CPU S7-300模塊
一、高速計數器的模擬控制
高速計數器的模擬控制是用S7-200 PLC的高速計數器來累計來自模擬量/頻率轉換器(A/F)的脈沖來模擬電壓值的。假設頻率轉換器將輸入電壓(0-10V)轉換為矩形脈沖信號(0-2000Hz),再將此信號送入CPU 高速記數器的輸入端并累計脈沖數。當預置的間隔時間到后,通過累計脈沖數,計算出被測模擬電壓值。
主程序:

主程序中在第一個掃描周期調用初始化程序SBR0,僅在第一個掃描周期標志位SM0.1=ON時由子程序實現初始化。
子程序:

在子程序中,首先把高速計數器HSC1的控制字節SMB47置為16#FC,其含義是:加計數,可更新預置值(PV),可更新當前值(CV),用指令HDEF把高速計數器HSC1置成工作模式0,即沒有復位或起始輸入,也沒有外部的方向選擇。當前值SMD48復位為0,預置值SMD52置為FFFF(十六進制),定時中斷0間隔時間SMB34置為100ms,用ATCH指令將中斷程序0分配給中斷事件10,即定時中斷0,并用ENI指令允許中斷,用指令HSC啟動高速計數器HSC1。
中斷程序:

因為定時中斷0間隔時間SMB34置為100ms,所以每100ms調用一次中斷程序0,讀出高速計數器的數值存到VD100,后將其置零。案例是通過頻率轉換器將輸入電壓(0-10V)轉換為矩形脈沖信號(0-2000Hz),通過HSC1的計數值及變換關系(0-2000kHz對應于0-10V)來求被測的模擬電壓值。SHR-DW為右移指令,將VD100的二進制位右移一位,相當于是除于2,也就是將VD100的脈沖數除以2,然后將低位的VB103輸出到QB0,以便通過Q0.0~Q0.7的LED來顯示被測的電壓值,顯示值與10倍真實電壓值相對應。
關于計算部分,我們舉例計算一下,假如計數值為200,200除以2是100,那么被測的模擬電壓值就是10.0V。因為計數器100ms內共有200個計數脈沖,這正好與2000Hz-10V相對應, 假設計數值為104,則實際電壓值應為5.2V。注意:定時中斷間隔時間可在5-255ms的范圍內變化,我們可以通過設立一個標志,可根據需要來延長高速計數器的求值和復位時間,這樣就有更長的掃描間隔,以便提高精確度,同時也會帶來更長的更新時間。
二、高速計數器的測速控制
高速計數器的測速控制是利用高速計數器來實現測量轉速,比如說測電機的轉速。其中會利用到脈沖數和電機轉速的計算。設計思路是主程序中調用子程序進行初始化,子程序中做高速計數器及中斷的定義,中斷程序中做轉化計算部分,下面我們詳細看一下程序。
主程序:

在PLC上電運行的第一個掃描周期執行一次子程序,用于程序運行的初始化設置。
子程序:


在子程序中,首先對VB0和VD0進行清零,VB0用于記錄累加數據的次數,VD0累加數據的中間變量。接著設置高速計數器HSC0的控制字節為16#F8,即更新當前值,加計數,用指令HDEF把高速計數器HSC0置成工作模式0,為單相計數輸入,沒有外部控制功能。當前值SMD38復位為0,定時中斷0間隔時間SMB34置為50ms,用ATCH指令將中斷程序0分配給中斷事件10,即定時中斷0,并用ENI指令允許中斷,用指令HSC啟動高速計數器HSC0。
中斷程序:

中斷程序是每隔50ms掃描刷新一次,采用加法指令將高速計數器HC0的當前計數值和累加數據變量VD0相加一次,用于數據的累加,同時用遞增指令對VB9進行加1,即記錄累加的次數,這里再執行一次HSC指令是為了將初始值寄存器SMD38再次寫入高速計數器HC0,使當前值為0,以便于下一次的定時采樣。

當累加數據的次數等于32次時,執行運算指令,除法指令除以32是計算出累計脈沖數的平均值,乘以100是將平均值轉化成以轉/分單位的數據,并存到VD4中,用DI_I指令是將雙整數轉換成整數,存儲到VW10中,VW10就是電機的轉速,后面的傳送指令是對VB0和VD0進行清零,用于下一次重新開始累加。