新疆維吾爾族自治區西門子授權供應商---西門子電機巴音郭楞蒙古自治州總代理
| 更新時間 2024-11-23 08:00:00 價格 請來電詢價 西門子PLC 西門子伺服電機 西門子觸摸屏 西門子電纜 西門子變頻器 西門子模塊 聯系電話 13510737515 聯系手機 13185520415 聯系人 董海波 立即詢價 |
詳細介紹
一、流程描述
四、地址分配
五、程序思路及編寫1.因有的十進制小數轉化為二進制存儲時會無限循環,而200SMART只能存儲23位單精度浮點數的小數位,當前一個累積值比較大,而現時流量瞬時值較小時,兩者相加會因舍棄小數值造成誤差,累積次數越多,誤差越大。為減小誤差,可采用將采集的瞬時值分解成整數和小數兩部分,整數部分相加,小數部分相加,兩者的和再相加即為累積值,這樣可極大的減小累積誤差。
總結
1.一個200SMART模擬量輸入模塊采集流量瞬時值,通過模擬量轉換指令轉換為工程量;
2.初始化相關變量地址并啟用定時器中斷;
3.中斷程序內實現流量累計計算;
4.累積到一定值后,復位清空所有數據,重新開始累計。
2.模擬量輸入模塊:EMAE04(4AI)6ES7 288-1AE04-0AA0。
四、地址分配
V區地址 | 注釋 | 其它地址 | 注釋 |
VD0 | 工程瞬時值 | M0.0 | 工程量轉換允許信號 |
VD4 | 流量/每分鐘 | M0.1 | 復位信號 |
VD8 | 流量整數部分 | AIW16 | 模擬量通道 |
VD12 | 流量小數部分 | ||
VD100 | 整數和 | ||
VD104 | 小數和 | ||
VD108 | 累積和 |
五、程序思路及編寫1.因有的十進制小數轉化為二進制存儲時會無限循環,而200SMART只能存儲23位單精度浮點數的小數位,當前一個累積值比較大,而現時流量瞬時值較小時,兩者相加會因舍棄小數值造成誤差,累積次數越多,誤差越大。為減小誤差,可采用將采集的瞬時值分解成整數和小數兩部分,整數部分相加,小數部分相加,兩者的和再相加即為累積值,這樣可極大的減小累積誤差。
2.首先調用模擬量轉換指令將采集到的模擬量通道值轉換為實際工程值,假設工程值的上下限分別為0.0、50.0,如圖1所示:
圖1
3.接下來調用初始化指令,目的是每200MS采集一次瞬時流量值,因此需要建立定時中斷,還需清空所有存儲數據的變量地址,如圖2所示:
圖2
4.在定時中斷程序中做數據的處理,先將瞬時流量分解為整數和小數,然后整數與前一次的整數累計和相加,小數和前一次的小數累積和相加,再將兩者的和相加即為當前流量的累積值,需注意整數即整數和也需轉化為浮點數,以便于和小數和相加,如圖3所示:
圖3
5.為不使累積值超出變量地址的存儲范圍,過一段時間后需將存儲數據的地址清零,再從頭開始累計,具體時間可根據現場實際要求而定,如圖4所示:
圖4
總結
該程序采用將浮點數分離為整數和小數兩部分,各自求和后再分別相加,得出當前流量累積值,大大減小了累積誤差,適用于要求精度不是很高的場合
相關產品
產品分類
聯系方式
- 電 話:13510737515
- 聯系人:董海波
- 手 機:13185520415
- 微 信:13185520415