在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

西門子TIA Portal如何比較兩個浮點數相等

工控論壇 ? 來源:工控論壇 ? 2025-01-06 10:07 ? 次閱讀

概述:

由于浮點數的定義規則,導致浮點數不能通過二進制精確表示,所以在浮點數計算過程中,會出現兩個值一樣的浮點數進行比較相等計算時結果并不相等的情況。下面先設計一個實例說明該問題,并給出解決問題的方法。

第1步:

添加 PLC 設備。

選擇西門子 CPU 1214C DC/DC/DC

設置 IP 地址:192.168.0.1。

子網掩碼:255.255.255.0

951bfcc6-c912-11ef-9310-92fbcf53809c.jpg


圖1添加 PLC 設備

第2步:

1. 添加全局數據塊。命名為:GdbData。

9534e01a-c912-11ef-9310-92fbcf53809c.png


圖 2 浮點數全局數據塊

在以上全局數據塊中添加浮點數類型變量,tagA、tagB、tagC 和 tagSum,分別設置起始值 0.02、0.03、0.05 和 0.0。

2. 在主程序 Main 中添加接口變量。

95444528-c912-11ef-9310-92fbcf53809c.png

圖 3 主程序 Main 的接口變量

3. 編寫程序,進行浮點數加法計算并將結果進行相等比較。

955178c4-c912-11ef-9310-92fbcf53809c.png


圖 4 編寫程序

可以看到浮點數 tagA + tagB = 0.05,和 tagC = 0.05 作相等比較,比較結果并不相等。

4. 在監控表中監視變量值。

9566206c-c912-11ef-9310-92fbcf53809c.png


圖 5 變量監視 - 浮點數

956a47d2-c912-11ef-9310-92fbcf53809c.png


圖 6 變量監視 - 十六進制

可以看到監視到變量 tagSum 和 tagC 的浮點數值均為 0.05,值相等,而十六進制數值卻為 16#3D4C CCCC 和 16#3D4C CCCD,值不相等。在以上程序中浮點數相等的比較過程中實際上比較的是十六進制數,所以得到的結果并不相等。

第3步:

鑒于以上原因,在進行兩個浮點數相等比較計算時,可以先計算兩個數的差值,然后判斷該差值是否在一個很小的數值范圍以內,比如在 ±1.0E-6 以內,則認為這 兩個浮點數相等。

9579b500-c912-11ef-9310-92fbcf53809c.png


圖 7 比較兩個浮點數相等

第4步:

功能封裝。

定義一個 FC,命名為:RealEqual, 對以上功能進行封裝,在以后浮點數相等判斷時方便直接調用。

95819072-c912-11ef-9310-92fbcf53809c.png


圖 8 功能封裝

封裝后的調用結果。

959cb776-c912-11ef-9310-92fbcf53809c.png


圖 9 功能調用

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • plc
    plc
    +關注

    關注

    5013

    文章

    13321

    瀏覽量

    463979
  • 西門子
    +關注

    關注

    94

    文章

    3046

    瀏覽量

    116029
  • 浮點數
    +關注

    關注

    0

    文章

    61

    瀏覽量

    15875

原文標題:西門子 TIA Portal 如何比較兩個浮點數相等

文章出處:【微信號:gkongbbs,微信公眾號:工控論壇】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    點數浮點數的區別是什么

    的傅里葉變換后的數據,那么,選擇正確的處理方式時,首先要解決的是定點數浮點數的問題。如果使用過單片機的同學,一定會知道定點運算和浮點運算兩個概念,那么,定點運算和
    發表于 02-21 07:22

    浮點數的表示方法

    浮點數的表示方法  浮點數,是指小數點在數據中的位置可以左右移動的數據。它通常被表示成:    N = M* RE  這里的M(Mantissa)被稱為浮點數
    發表于 10-13 17:13 ?1.6w次閱讀
    <b class='flag-5'>浮點數</b>的表示方法

    浮點數常用的編碼方法

    浮點數常用的編碼方法  前面已經說到,在計算機內,浮點數被表示為如下格式:    通常情況
    發表于 10-13 17:21 ?4503次閱讀
    <b class='flag-5'>浮點數</b>常用的編碼方法

    modbus 如何讀取浮點數

    本文為大家介紹modbus讀取浮點數兩個程序設計。
    發表于 02-08 10:03 ?1.5w次閱讀

    三菱PLC浮點數運算指令

    二進制浮點數比較指令ECMP(FNC110) DECMP(P)指令的使用如圖1所示,將兩個源操作數進行比較比較結果反映在目標操作數中。如果
    發表于 03-23 14:14 ?1.7w次閱讀
    三菱PLC<b class='flag-5'>浮點數</b>運算指令

    談一談浮點數的精度問題

    還是要從浮點數的存儲和標識出發來處理該問題,既然浮點數天然就存在一定的誤差,而有時候計算又無法獲得唯一的數值,如下圖所示,浮點數計算出來的實軸上的值都會因為浮點數無法存儲標識而近似到其
    的頭像 發表于 08-11 14:28 ?4641次閱讀
    談一談<b class='flag-5'>浮點數</b>的精度問題

    什么是浮點數浮點數在內存中的存儲

    浮點型簡單講就是實數的意思。浮點數在計算機中用以近似表示任意某個實數。
    的頭像 發表于 11-09 11:07 ?5437次閱讀
    什么是<b class='flag-5'>浮點數</b>?<b class='flag-5'>浮點數</b>在內存中的存儲

    什么是浮點數

    Python數據類型第一種:字符串(str)。 Python數據類型第二種:整數(int)。 Python數據類型第三種:浮點數浮點數的英文名是float,浮點數沒有簡寫。
    的頭像 發表于 02-23 14:58 ?4659次閱讀

    西門子PLC 64位浮點數轉32位浮點數程序分享

    西門子S7-200測試通過,程序網上而來,獻給有需要的各位!
    的頭像 發表于 03-29 09:39 ?2580次閱讀

    西門子PLC讀取的儀表數據(浮點數)如何轉換為整數

    看到一網友的問題,西門子200PLC采用MODBUS RTU協議采集多功能儀表的數據,接收的數據均是32位的單精度浮點數,我怎么在PLC程序里面實現單精度浮點數與十進制之間的轉換?且
    的頭像 發表于 06-01 10:18 ?5702次閱讀
    <b class='flag-5'>西門子</b>PLC讀取的儀表數據(<b class='flag-5'>浮點數</b>)如何轉換為整數

    西門子PLC浮點數程序案例分享

    64位浮點數保存于VB0開始的存儲區中,轉換得出的32位浮點數保存于VD100中。
    發表于 10-27 17:07 ?3374次閱讀
    <b class='flag-5'>西門子</b>PLC<b class='flag-5'>浮點數</b>程序案例分享

    單精度和雙精度浮點數的區別

    在計算機科學和數值計算中,浮點數是一種用于表示實數的數據類型。浮點數種精度級別:單精度和雙精度。這種精度級別在表示范圍、精度和存儲空間等方面都有所不同。本文將詳細介紹單精度和雙精
    的頭像 發表于 12-13 10:55 ?1.1w次閱讀

    單精度和雙精度浮點數的區別

    單精度和雙精度是計算機中表示浮點數種不同的精度。在計算機中,浮點數用來表示帶有小數部分的實數,而單精度和雙精度用來表示浮點數的精確程度不同。在以下文章中,我將詳細介紹單精度和雙精度
    的頭像 發表于 12-15 10:25 ?5491次閱讀

    modbus浮點數怎么讀取

    Modbus是一種通信協議,常用于工業自動化系統中的設備之間的通信。它支持多種數據類型,包括整數、浮點數、字符串等。浮點數在工業領域中廣泛應用,因此了解如何讀取和處理Modbus浮點數是非
    的頭像 發表于 12-28 14:38 ?6467次閱讀

    一文帶你秒懂IEEE 754浮點數

    一、簡介1、常見的浮點數表示方式是IEEE754標準,它規定了浮點數的存儲格式和運算規則,這個標準定義了浮點數表示:單精度和雙精度。2、任何一
    的頭像 發表于 03-18 08:09 ?8898次閱讀
    一文帶你秒懂IEEE 754<b class='flag-5'>浮點數</b>
    主站蜘蛛池模板: 中国美女乱淫免费看视频| 手机国产看片| 国模大尺度在线| 国产在线播| 爱爱动态视频免费视频| 夜夜福利| 亚洲人成电影| 99热精品久久只有精品30| 亚洲综合精品香蕉久久网97| 婷婷99| 日韩a毛片| 久久亚洲免费视频| 国产高清在线免费| 午夜视频在线观看www中文| 国产日本在线播放| 99久久99久久久99精品齐| 五月天婷婷网站| 国产综合第一页在线视频| 91av在线视频观看| 一级毛片日韩| 三级五月天| 国模龙园园私拍337p| 在线观看免费高清| 国产精品资源网站在线观看| 久久精品国产大片免费观看| 五月激情啪啪网| 亚洲狼色专区| 天堂网2021天堂手机版| 免费网站日本| 最新激情网站| 午夜视频免费在线观看| 就爱干草视频| 91视频看看| 亚洲国产婷婷香蕉久久久久久| 日本久久久| www.xxx日本人| 国产综合在线播放| 欧美日韩亚洲一区| 色窝视频| www.三级.com| 国产精品bdsm在线调教|