
前幾天自己在家哄孩子,給孩子做飯,由于自己不留神造成忘記關火,鍋被干燒的事故,雖然事后發(fā)現(xiàn)得早,但是當時我就想做一個防止干燒的小裝置.

模擬值的處理:
模擬量信號模塊可以提供輸入信號,或等待表示電壓范圍或電流范圍的輸出值。這些范圍是
±10 V、±5 V、±2.5 V 或 0 - 20 mA。模塊返回的值是整數(shù)值,其中,0 到 27648 表示電流的額定范圍,-27648 到 27648 表示電壓的額定范圍。任何該范圍之外的值即表示上溢或下溢。
在控制程序中,很可能需要以工程單位使用這些值,例如表示體積、溫度、重量或其它數(shù)量
值。要以工程單位使用模擬量輸入,必須首先將模擬值標準化為由 0.0 到 1.0 的實數(shù)(浮點)
值。然后,必須將其標定為其表示的工程單位的最小值和最大值。對于要轉換為模擬量輸出值的以工程單位表示的值,應首先將以工程單位表示的值標準化為 0.0 和 1.0 之間的值,然后將其標定為 0 到 27648 之間或 -27648 到 27648 之間(取決于模擬模塊的范圍)的值。
例如,假設模擬量輸入的電流范圍為 0 - 20 mA。模擬量輸入模塊返回的測量值介于 0 和 27648 之間。在此示例中,假設使用此模擬量輸入值測量 50 °C 到 100 °C 的溫度。幾個采樣值的含義如下:
0 ---50 °C
6192 ---62.5 °C
12384--- 75 °C
18576 ---87.5 °C
27648 ---100 °C
在 PLC 應用中,典型的方法是將模擬量輸入值標準化為 0.0 至 1.0 之間的浮點值。然后,需要將得到的值換算為工程單位范圍內的浮點值。為簡單起見,以下 LAD 指令使用常數(shù)值表示范圍;實際上可能選擇使用變量:


比如我們在烘干爐程序中使用的FC106


UNSCALE功能接收一個以工程單位表示、且標定于下限和上限(LO_LIM和HI_LIM)之間的實型輸入值(IN),并將其轉換為一個整型值。將結果寫入OUT。UNSCALE功能使用以下等式:
OUT = [ ((IN朙O_LIM)/(HI_LIM朙O_LIM)) * (K2朘1) ] + K1,并根據(jù)輸入值是BIPOLAR還是UNIPOLAR設置常數(shù)K1和K2。
BIPOLAR:假定輸出整型值介于 -27648和27648之間,因此,K1 = -27648.0,K2 = +27648.0
UNIPOLAR:假定輸出整型值介于0和27648之間,因此,K1 = 0.0,K2 = +27648.0
如果輸入值超出LO_LIM和HI_LIM范圍,輸出(OUT)將鉗位于距其類型(BIPOLAR或UNIPOLAR)的指定范圍的下限或上限較近的一方,并返回一個錯誤。
實例:


審核編輯 :李倩
-
plc
+關注
關注
5051文章
14615瀏覽量
487146 -
西門子
+關注
關注
98文章
3320瀏覽量
120433 -
模擬量
+關注
關注
5文章
558瀏覽量
27675
原文標題:我想發(fā)明一個防干鍋的裝置-西門子PLC的模擬量控制
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應用】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
西門子300 MPI PLC遠程控制
西門子PLC模擬量線性變換子程序的編寫
西門子PLC S7-200 SMART PID控制功能分享
西門子PLC模擬量控制在變頻調速的應用
西門子S7-1200 PLC如何通過模擬量控制變頻器
西門子plc數(shù)字量和模擬量的區(qū)別
西門子S7-1200和S7-1500 PLC系列模擬量傳感器怎么接線
我想發(fā)明一個防干鍋的裝置-西門子PLC的模擬量控制
評論