原文:西門子博途編程-模擬量批量處理一

博途的間接尋址和S 大不一樣。博途中的間接尋址主要用peek poke指令,peek poke指令不能用於優化的數據塊。優化數據塊可以用數組類尋址。這次的控制任務是模擬類的批量處理,s 模擬量批量處理很繁瑣。 控制任務 把數量不定的模擬量轉換成工程量,然后保存到指定的數據塊中。這里我們為了測試,不讀取PIW中的模擬值,而用MW代替。 象這樣的控制任務,我們一般用SCL來寫會比較方便。請看下面的程序 ...

2017-09-01 10:15 0 4641 推薦指數:

查看詳情

西門子編程模擬量批量處理三(最終版)

經多位西門子工業論壇的大神建議, 程序最終如下: 下面是自定義類型: 簡單理一下思路, 這次的程序和上次比, 改動較大. 新建了一個自定義數據類型, analogToDigit。其中,channelNo 是模擬量通道 ...

Tue Sep 12 04:34:00 CST 2017 0 3137
西門子編程模擬量批量處理二(重構版)

重構這個詞是PC編程中的術語,意思是當寫第一遍程序時,因對程序邏輯不甚明白,程序邏輯有點亂,寫完后重新理了一下思路,對程序的結構、變量命名等以更好的方式重新了一遍,這個過程叫重構。第二遍的程序邏輯清晰易懂。 和西門子論壇的幾位版主討論后,他們提供了很好的建議,我重構了這個模擬量程序,比以前更簡單 ...

Mon Sep 04 20:20:00 CST 2017 0 1335
西門子編程模擬量斷線超量程處理(中值法)

溫度PID控制時, 有多個溫度測量點, 但最終只有一個溫度作為反饋值參與PID控制, 我們有時會采用平均值法, 計算所有溫度的平均值來作為PID的反饋值. 但在某一路溫度探頭斷線的情況下, 溫度值為零, 這時平均值就會小很多. 像這種情況下中值法比較有效. 原理如下: 對於一組溫度, 模擬量 ...

Sat Sep 16 03:18:00 CST 2017 0 2004
西門子PLC模擬量信號讀取

FC105的塊名叫“scale”,中文的意思的模擬量輸入的便准化。Scale功能接受一個整型值(IN),並將其轉換為以工程單位表示的介於下限(LO_LIM)和上限(HI_LIM)之間的實型值。將結果寫入out,“縮放”指令將按以下公式進行計算: OUT = [((FLOAT ...

Sun Jun 16 00:16:00 CST 2019 0 1080
西門子編程-泛型和變長數組編程

我們知道在高級語言中普遍使用泛型,那么在PLC中是否可以使用泛型呢?可以,但羅嗦。。 控制要求 求數組中的最大值,數值類型包括Real和Int,我們這里選擇兩種類型,控制代碼。 控制程序 一 array是傳進來的數組,可以是Int或Real類型。但有大小限制,長度必須小於 ...

Mon Jul 17 22:54:00 CST 2017 4 3187
西門子編程 - 分揀器設計一

此次我們的任務是設計一個分撿器,控制難度逐漸加深,會用上我們以前的所有技術。任務參考《IEC 61131-3編程語言及應用基礎》第281頁,但我們使用了更好的設計方案。控制任務摘抄如下: 為分選不同大小的工件,可采用分選器。它從大的工件中選出小工件,將大的工件送到 ...

Sun Oct 15 22:37:00 CST 2017 0 1083
西門子編程 - 變頻器控制

這次我們編寫一個變頻器控制任務。我們選擇標准報文2PZD。 這里我們簡要講一下狀態字中的第二個字,返回的是頻率的百分比,-100% 到 +100% 相對應的范圍為-16384 到 ...

Mon Oct 02 01:21:00 CST 2017 1 2735
西門子編程 - 另類步進法

前面我們寫了《PLC狀態機編程第二篇-負載均衡》這篇博客,用的RS指令來表達各步狀態, 今天呢我們用MOVE指令來表示各狀態, 最后看看兩種辦法的優劣。任務還是描述的那個狀態機。 程序比較簡單, 直接上程序了。 這里聲明了一個currentStep變量來存儲當前狀態, 用IDLE ...

Mon Sep 18 03:23:00 CST 2017 0 1351
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM