qiang2751290
級別: 家園常客
|
各位我之前用的是歐姆龍的PLC, 現在由于工作需要要用西門子300PLC, 主要有幾個問題實在不慎理解, 也看了不少書,看的也是云里霧里的。 疑問如下: 1. 關于S7-300中 FC 沒有存儲區(qū), 就是講在FC中編寫程序是只能編寫一些邏輯控制量, 像時間繼電器或計數器、還有數據傳送指令等,就不能在里面編寫。 在我理解中FC就好像歐姆龍中 功能塊。 是嗎? 請解答。 2. 還有300中FB 有存儲區(qū), 就是講像有數據類型的例如時間繼電器或計數器、還有數據傳送指令等,就可以在里面編寫。 FB和DB是對應著使用。 那么在OB1中調用FB時是不是每調用一個都要 建立一個DB塊, 如果一個DB能不能多次調用呀??? 以上請各位大俠回答, 小弟在此感謝了。 |
---|---|
|
烏龜船長
級別: 網絡英雄
|
S7-300plc中的FB和FC的分別?FB帶有自己的背景DB而FC沒有自己的背景DB, 用FC 和FB 有什么分別呢,他們都能實現控制功能,到底該用FB還是該用FC,什么時候用FB什么時候用FC? FB與FC沒有太大的差別,FB帶有背景數據塊,而FC沒有。所以FB帶上不同的數據塊,就可以帶上不同的參數值。這樣就可以用同一FB和不同的背景數據塊,被多個對象調用。 FC和FB像C中的函數,只不過FB可以生成靜態(tài)變量,在下次函數調用時數據可以保留,而FC的變量只在調用期內有效,下次調用又重新更換。 每次調用FC的I/O區(qū)域必須要自己每次手動輸入,而FB就不要,省去不少麻煩,如果在上位機控制直接輸入DB控制地址就可以。 舉個例子來說,有50臺電機需要控制,這些電機除了參數不一樣,控制流程上是一樣的,每個 電機需要不同的參數去運行,運行中的過程參數要參與到下一次的控制過程中。 這個要求,用FC做的話,你需要針對不同的電機分配好DB塊,來逐一的確認參數地址,不能混 淆,保存和調用不能出錯,可以想象會有多麻煩。如果用FB來做呢?寫好控制過程和定義的參 數的調用就可以了。針對電機重復調用同一個FB,每次調用指定一個獨立的DB作為背景數據塊 ,完全不必理會背景DB中的數據是怎么存儲的。如果功能需要修改,只要修改該FB就行了。 還有其他的例子,比如PID、比如流量累計等等。 |
---|---|
|