精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

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

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

3天內不再提示

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

autozhineng ? 來源:PLC與自控設備 ? 2023-06-01 10:18 ? 次閱讀

看到一個網友的問題,西門子200PLC采用MODBUS RTU協議采集多功能儀表的數據,接收的數據均是32位的單精度浮點數,我怎么在PLC程序里面實現單精度浮點數與十進制之間的轉換?且問題的配圖如下:

36f9e3aa-ffb1-11ed-90ce-dac502259ad0.jpg

問題配圖結合圖片看了你的問題,其實你的問題就是你接收的到的32位數據是450F9000,而且你知道這個數據其實是單精度浮點數,轉換為10進制的結果是2297,你想知道在西門子200PLC中如何實現這個轉換工程?來說一下解題思路吧:1:你不知道西門子200PLC中如何實現這個轉換,可能的原因是你對16#450F9000如何轉換為2297可能也有點不理解?2:你不知道西門子200PLC中應該用什么樣的指令來實現這個轉換工程!16#450F9000如何轉換為2297?來先看一下計算器中的轉換吧:

370bbef4-ffb1-11ed-90ce-dac502259ad0.jpg

在計算器中先研究一下數據這是我電腦win10系統中的計算器切換到程序員模式,可以看到16進制的450F 9000轉換為十進制數是1158647808,和你的2297是不一樣的!--但是我在BIN就是二進制這里畫了紅線,我想說的是你如果對西門子PLC中32位浮點數的數據格式有清楚的理解的話,你根據這段二進制值就可以推算出這個實數的值是多少,因為我(控制研究控)在之前的問答和文章中有說過這個知識點,所以這里我就不再多說了!---但是我自己計算了一下結果就是2297!

371b972a-ffb1-11ed-90ce-dac502259ad0.jpg

這個圖片就是我計算的過程PLC程序中如何將16進制的450F9000轉換為十進制數?其實西門子PLC中的ROUND指令就是用來取整的將浮點數轉換為整數的,西門子300和200PLC中都有這個指令,所以我都測試了一下!先看一下西門子300PLC執行的結果:

372c10a0-ffb1-11ed-90ce-dac502259ad0.jpg

STEP7項目中做的程序監控圖這個圖片是我在step7項目中建立的一個300CPU項目的簡單程序,可以看到我把16#450F9000這串數據認為是雙正式,通過DI_R指令轉換的結果存儲到MD10中得到的實數值是1.15865e+009,這是一個雙整數轉實數的指令,但是如題目所說開始的16#450F9000它本身就是浮點數格式,因此這里視為雙整數是不對的!而我又用round指令,將16#450F9000這個數據轉換為整數,可以看到MD20的結果就是2297,這個結果才是對的。這里就是已經認定16#450F9000這串數據代表的是32位實數,因此結果正確!再看一下西門子200PLC中的執行結果:

373d011c-ffb1-11ed-90ce-dac502259ad0.jpg

西門子200程序模擬運行截圖這個圖片是我在西門子200的非官方模擬器中做的測試程序,可以看到和西門子300PLC的程序是很相似的,指令都是一樣的DI_R雙整數轉實數,和ROUND取整指令!也可以看到他們執行的結果都是一樣的,最重要的是通過round指令就可以實現將32位浮點數16#450F9000轉換為整數2297,也就是10進制的2297!

審核編輯:湯梓紅

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

    關注

    5008

    文章

    13150

    瀏覽量

    462050
  • 西門子
    +關注

    關注

    93

    文章

    3008

    瀏覽量

    115630
  • MODBUS
    +關注

    關注

    28

    文章

    1760

    瀏覽量

    76833
  • 程序
    +關注

    關注

    116

    文章

    3775

    瀏覽量

    80845
  • 浮點數
    +關注

    關注

    0

    文章

    60

    瀏覽量

    15864

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

文章出處:【微信號:PLC與自控設備,微信公眾號:PLC與自控設備】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    請問怎么將IEEE 754(32位十六進制)轉換為十進制浮點數

    親愛的先生,我需要知道把IEEE 754(32位十六進制)轉換成pic24小數浮點數的方法。例如,如果我要將下面的十六進制數據轉換為浮點數a
    發表于 09-04 06:54

    代碼行如何來測試一個浮點數是否是一個整數

    我用下面的代碼行來測試一個浮點數是否是一個整數……我理解一個浮點數有一個有限的分辨率,并且這些值不會精確地落在整個數字上,但是誤差很小,因此比較起來非常小。這是最好的方法,還是有更好的功能?或者,我
    發表于 05-15 10:42

    浮點數整數解析

    的成員的大小決定,也就是說浮點數或者整數都無所謂了,都一樣,他會自動轉換,那我把浮點數或者更進一步負數,存為char,傳過去過后,以同樣的聯合體來解析即可。原作者:驍騎校尉
    發表于 11-01 11:40

    浮點數的運算怎么轉換整數運算?

    浮點數的運算怎么轉換整數運算
    發表于 10-12 06:31

    modbus 如何讀取浮點數

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

    浮點數在內存中的存儲

    浮點數在內存中的存儲和整數不同,因為整數都可以轉換為一一對應的二進制數據。而浮點數的存儲是由符號
    的頭像 發表于 09-20 10:52 ?4029次閱讀
    <b class='flag-5'>浮點數</b>在內存中的存儲

    python整數浮點數分解

    2.3 python整數浮點數 Python 支持的數字類型有三種:整數浮點數和復數。 1. 整數(Int) 通常被稱為整型,是正或負
    的頭像 發表于 02-18 09:09 ?1841次閱讀

    深度剖析PLC編程中的浮點數

    PLC 必須處理三種主要類型的值:布爾值、整數浮點數。這些最后的浮點值會給程序員和技術人員帶來最大的困惑。
    的頭像 發表于 04-29 16:20 ?1.8w次閱讀
    深度剖析<b class='flag-5'>PLC</b>編程中的<b class='flag-5'>浮點數</b>

    西門子PLC的基本數據類型及其使用

    PLC在處理模擬量時,其輸入和輸出大多是整數,用浮點數來處理這些數據時要進行整數浮點數之間的相
    的頭像 發表于 02-17 10:08 ?2.4w次閱讀

    什么是浮點數

    Python數據類型第一種:字符串(str)。 Python數據類型第二種:整數(int)。 Python數據類型第三種:浮點數
    的頭像 發表于 02-23 14:58 ?4501次閱讀

    解析python整數浮點數不同進制整數

    python數字包括整數浮點數、復數、有理分數等,整數還可以用不同進制表示。
    的頭像 發表于 03-10 10:01 ?1034次閱讀

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

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

    西門子S7-1200PLC數據處理指令:浮點數整數指令

    定義:該指令將輸入 IN 的值解釋為浮點數,并轉換為一個 DINT 數據類型的整數。如果輸入值恰好是在一個偶數和一個奇數之間,則選擇偶數。指令結果被發送到輸出 OUT,可供查詢。
    的頭像 發表于 04-04 09:45 ?7227次閱讀

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

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

    modbus浮點數怎么讀取

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