一、 高速計數器的介紹 01 高速計數器功能的概要 高速計數器是使用CPU模塊的通用輸入端子及高速脈沖輸入輸出模塊,對普通計數器無法計測的高速脈沖的輸入數進行計數的功能。 根據所用輸入(模塊),高速計數器的各功能有以下限制。
02 高速計數器功能的動作模式 (1)普通模式 作為一般的高速計數器使用。 (2)脈沖密度測定模式 測定從輸入脈沖數開始到指定時間內的脈沖數。 (3)轉速測定模式 測定從輸入脈沖數開始到指定時間內的轉速。 03 高速計數器的專用指令 高速計數器的計測使用高速計數器用的HIOEN/DHIOEN指令進行計數的開始、停止指示等。 04 其它高速計數器的用指令 還有DHSCS指令、DHSCR指令、DHSZ指令(以下稱高速比較指令)等高速計數器用指令。 05 高速計數器功能的執行步驟 (1)確認高速計數器的規格。 確認高速計數器的類型、最高頻率等規格。 (2)與外部設備連接。 關于與外部設備的配線的詳細內容,參照MELSEC iQ-F FX5U用戶手冊(硬件篇)。 (3)設置參數。 進行高速計數器的通道設置等參數設置。 (4)創建程序。 創建使用高速計數器所需的程序。 (5)執行并調試程序。 二、 高速計數器的規格 01 高速計數器的類型 (1)1相1輸入計數器(S/W)--受掃描周期影響 1相1輸入計數器(S/W)的計數方法如下所示。
(2)1相1輸入計數器(H/W)--受硬件輸入影響 1相1輸入計數器(H/W)的計數方法如下所示。
(3)1相2輸入計數器 1相2輸入計數器的計數方法如下所示。
(4)2相2輸入計數器[1倍頻] 2相2輸入計數器[1倍頻]的計數方法如下所示。
(5)2相2輸入計數器[2倍頻] 2相2輸入計數器[2倍頻]的計數方法如下所示。
(6)2相2輸入計數器[4倍頻] 2相2輸入計數器[4倍頻]的計數方法如下所示。
(7)內部時鐘 內部時鐘的計數方法如下所示。
內部時鐘始終以1Mhz的時鐘進行計數遞增/遞減。不使用來自外部的輸入。 1Hz,即在單位時間內完成振動的次數,單位為赫茲(1赫茲=1次/秒)。 1MHz=1000kHz(1百萬赫茲,即每秒振動1百萬次)。 02 高速計數器的形式與計數范圍 根據環長設置,高速計數器的形式為環形計數器。 (1)設置了鏈接長度時
(2)未設置鏈接長度時(環形計數器)
03 高速計數器的最高頻率 各類高速計數器的可計數最高頻率如下所示。 關于各輸入分配的最高頻率,參照【高速計數器的各輸入分配的最高頻率】。
注意:最高頻率會受到輸入電路的限制。
04 高速計數器的一致輸出性能 (1)CPU模塊 使用高速比較指令(DHSCS、DHSCR、DHSZ指令)、高速比較表、多點輸出高速比較表輸出到Y0~Y17時,脈沖的輸入→計數值的比較(一致)→輸出至Y為止的時間為5μs+輸入響應時間。 輸出到Y20以后時,從脈沖的輸入到輸出為止的時間將受到通信及用戶中斷的影響。 (2)高速脈沖輸入輸出模塊 高速比較表的一致輸出只能是自身模塊內的輸出。 輸入脈沖→比較計數值(一致)→輸出至Y所花費的時間是5μs+輸入響應時間。 (3)動作圖 動作圖如下所示。(比較值:5)
三、 高速計數器的分配 01 高速計數器的輸入分配 高速計數器的輸入軟元件的分配通過參數進行設置。 通過參數對各通道設置各自的功能時,即確定與之對應的分配。 使用內部時鐘時,為與1相1輸入(S/W)相同的分配,不使用A相。 高速計數器的輸入分配如下所示。 A:A相輸入 P:外部預置輸入 E:外部使能輸入 B:B相輸入(但是,1相1輸入(H/W)時,變為方向切換輸入。)
02 高速脈沖輸入輸出模塊 各輸入的□是各高速脈沖輸入輸出模塊的起始輸入編號。
要點 高速脈沖輸入輸出模塊的通道編號分配如下。按距離CPU模塊的順序排列,從近到遠分別為第1臺、第2臺……。 1)高速脈沖輸入輸出模塊 第1臺:通道9、通道10 2)高速脈沖輸入輸出模塊 第2臺:通道11、通道12 3)高速脈沖輸入輸出模塊 第3臺:通道13、通道14 4)高速脈沖輸入輸出模塊 第4臺:通道15、通道16 03 高速計數器的各輸入分配的最高頻率 高速計數器的各輸入分配的最高頻率如下所示。 (1)FX5U-32M□ 、FX5UC-32M□ X6~X17為止的輸入頻率與最高頻率的值無關,最高為10kHz。 預置輸入、使能輸入的輸入頻率與最高頻率的值無關,最高為10kHz。 A:A相輸入、B:B相輸入、P:外部預置輸入、E:外部使能輸入
(2)FX5U-64M□、FX5U-80M□、FX5UC-64M□、FX5UC-96M□ X10~X17為止的輸入頻率與最高頻率的值無關,最高為10kHz。 預置輸入、使能輸入的輸入頻率與最高頻率的值無關,最高為10kHz。
(3)高速脈沖輸入輸出模塊 X□+6、X□+7為止的輸入頻率與最高頻率的值無關,最高為10kHz。 預置輸入、使能輸入的輸入頻率與最高頻率的值無關,最高為10kHz。 各輸入的□是各高速脈沖輸入輸出模塊的起始輸入編號。 A:A相輸入、B:B相輸入、P:外部預置輸入、E:外部使能輸入
四、高速計數器的參數 01 參數的概要 高速計數器的設置、高速比較表、多點輸出高速比較表、輸入響應時間的設置通過參數進行。 可通過參數設置的主要項目如下所示。 (1)基本設置 (2)高速比較表的設置 (3)多點輸出高速表的設置 (4)輸入響應時間的設置 02 參數設置詳細 (1)高速計數器(普通模式)。 (2)高速計數器(脈沖密度測定模式)。 (3)高速計數器(轉速測定模式)。 (4)高速比較表。 (5)多點輸出高速比較表。 (6)輸入響應時間的設置。 要點: 參數在CPU模塊的電源ON時或復位時變為有效。此外,也將同時向特殊繼電器、特殊寄存器傳送值,通過用程序更改該值,可執行與參數設置不同的動作。 關于高速計數器的特殊繼電器、特殊寄存器,參照【特殊繼電器一覽】、【特殊寄存器一覽】。 (1)高速計數器(普通模式) 作為一般的高速計數器使用時使用普通模式。 1)參數設置 通過高速計數器的參數,將動作模式設置為普通模式。 進行要使用的通道的詳細設置。 CPU模塊的參數設置位置:導航窗口[參數]→[FX5UCPU]→[模塊參數]→[高速I/O]→“輸入功能” →“高速計數器”→“詳細設置”→“基本設置”。
2)設置步驟: ①通道啟用:可選擇[使用]或者[不使用];
②設置[運行模式];
③設置[脈沖輸入模式];
④設置[預置輸入]和[預置值];
⑤設置[使能輸入]; 對應高速計數器的 E:外部使能輸入; 設定禁用,E信號對應的硬件信號無效,不需使能輸入; 設定啟動,需要E信號輸入才可使用高速計數器。
⑥設置[鏈接長度];
3)開始/停止高速計數器的計測: 高速計數器僅通過設置參數無法進行計數。 要開始/停止計數,需要通過HIOEN/DHIOEN指令執行開始/停止。 4)讀取/寫入高速計數器的當前值 高速計數器的當前值按每個通道存儲在特殊寄存器中,通過監視該值可確認當前值。但是,特殊寄存器會因END處理而被更新,因此有可能與實際的值不同。 希望讀取最新的值時,可使用HCMOV/DHCMOV指令讀取最新的值。 五、高速計數器的專用指令 01 16位數據高速輸入輸出功能的開始/停止: (1)HIOEN(P)指令:控制高速輸入輸出功能的開始/停止。 (2)指令格式
(3)功能編號S1的值 *1:動作中使高速計數器(功能編號: K0)停止時,雖然功能仍處于工作狀態,但因計數器停止,因此將變為無處理。 *2:使多點輸出高速比較表(功能編號: K30)停止時,相同通道的高速計數器也將同時停止。
(4)S2和S3的值 ①功能編號S1為K0的情況 可對每個高速計數器的通道,分別控制計數器的開始、停止。 通道1~通道8變為CPU模塊,通道9~通道16變為高速脈沖輸入輸出模塊。
例如: 要啟用通道3時,應在(s2)中設置04H。要停止時,在(s3)中設置04H。 要啟用通道1、通道4、通道5時,應在(s2)中設置19H。要停止時,在(s3)中設置19H。 要啟用通道1、通道4、停止通道5時,應在(s2)中設置09H、在(s3)中設置10H。 ②功能編號S1為K10的情況 可對每個高速計數器的通道,分別控制脈沖密度測定(轉速測定)的開始、停止。
③功能編號S1為K20~K24的情況 設置將啟用、停止的高速比較表編號位設為ON的值。 CPU模塊(K20)時,可以使用b0~b15。 高速脈沖輸入輸出模塊(K21~K24)時,可以使用b0~b14。
④功能編號S1為K30的情況 在多點輸出高速比較表的情況下,無需指定通道。 啟用時,在(s2)中設置01H。停止時,在(s3)中設置01H。
⑤功能編號S1為K40、K50的情況 可對每個通道,分別控制脈沖寬度測定及PWM的開始、停止。 通道1~通道4變為CPU模塊,通道5~通道12變為高速脈沖輸入輸出模塊。
(5)HIOEN(P)指令編程示例 使用高速計數器[普通模式]時,則(s1)設為K0; 設定CH1、CH3通道開啟計數時,則(s2)設為H5; 設定CH4、CH6通道關閉計數時,則(s3)設為H28。
02 32位數據高速輸入輸出功能的開始/停止: (1)DHIOEN(P)指令:控制高速輸入輸出功能的開始/停止。 (2)指令格式
(3)與16位指令HIOEN不同的地方在于 當s1為K20時,s2、s3需使用32位的數據。
03 讀取/寫入高速計數器的當前值: 高速計數器的當前值按每個通道存儲在特殊寄存器中,通過監視該值可確認當前值。但是,特殊寄存器會因END處理而被更新,因此有可能與實際的值不同。 希望讀取最新的值時,可使用HCMOV/DHCMOV指令讀取最新的值。 (1)32位數據高速當前值傳送 DHCMOV(P)指令:以高速計數器/脈沖寬度測定/PWM/定位用特殊寄存器為對象,進行讀取或寫入(更新)操作時使用該指令。 (2)指令格式
(3)功能 將(s)中指定的軟元件值傳送至(d)中指定的軟元件。此時, 如果(n)的值為K0,則保留(s)的值。 如果(n)的值為K1,傳送后將(s)的值清零。僅在高速計數器的當前值SD軟元件或作為高速計數器使用FX3兼容高速計數器時的LC軟元件時執行清除。 (4)要點 ①(s)為支持高速傳送的軟元件時 執行DHCMOV指令時,獲取高速計數器當前值等的最新值后,傳送至(d)。 ②(d)為支持高速傳送的軟元件時 執行DHCMOV指令時,可以更改高速計數器當前值等值。 (4)高速計數器對應的特殊存儲器編號 R/W表示可讀可寫。
六、應用實例 1、使用FX-5U的高速計數器功能,對增量式編碼器進行計數,讀取計數值。2、編碼器的介紹(1)選用的編碼器規格: ① 4線的增量式編碼器:A相、B相、24V、0V; ②每轉脈沖數:400P/R,即編碼器旋轉一圈發出400個脈沖; ③編碼器輸出類型:NPN,即A/B相輸出的電壓為0V。 (2)編碼器的接線
3、FX-5U的高速計數器參數設置(1)[CH1]使用高速計數器; (2)運行模式設置為[普通模式]; (3)脈沖數入模式設置為[2相1倍頻]; (4)預置輸入設置為[禁用],則預置值無效; (5)使能輸入設置為[禁用]; (6)鏈接長度設置為[禁用],則對應計數范圍為-2147483648~+2147483747; (7)運行模式為[普通模式],[測定的單位時間]和[每轉的脈沖數]無效。
4、程序編程(1)啟用/停止高速計數器計數功能,指令HIOEN ①高速計數器的普通模式,則S1為K0; ②啟用CH1,則S2為2#0000 0000 0000 0001,即H0001; ③未使用CH16~CH2,停止功能無需設置,則S3為2#0000 0000 0000 0000,即H0000。 ? (2)讀取高速計數器的當前值,指令DHCMOV ①?將CH1的當前值SD4501、SD4500傳送給D1001、D1000 ② n的值設為為K0,則傳送完成后保留s的值。
(3)設置輸入響應時間 將X0和X1的輸入響應時間由10ms修改為10μs,保證能夠獲取全部的高速脈沖輸入信號。
(4)查看SD4500、SD4501的值,D1001、D1000的值 ①打開監視功能,在程序中查看SD4500、SD4501的值,D1001、D1000的值 ②打開【監看窗口】,查看SD4500、SD4501的值,D1001、D1000的值
責任編輯:xj
文章出處:【微信公眾號:工業機器人前沿】歡迎添加關注!文章轉載請注明出處。
-
plc
+關注
關注
5016文章
13388瀏覽量
465432 -
計數器
+關注
關注
32文章
2261瀏覽量
94996
原文標題:三菱FX 5U PLC高速計數器基礎及模擬量
文章出處:【微信號:robotqy,微信公眾號:機械自動化前沿】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論