99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

西門子PLC讀取的儀表數(shù)據(jù)(浮點數(shù))如何轉(zhuǎn)換為整數(shù)

autozhineng ? 來源:PLC與自控設(shè)備 ? 2023-06-01 10:18 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

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

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

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

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

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

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

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

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

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

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

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

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • plc
    plc
    +關(guān)注

    關(guān)注

    5031

    文章

    13857

    瀏覽量

    473520
  • 西門子
    +關(guān)注

    關(guān)注

    98

    文章

    3151

    瀏覽量

    118079
  • MODBUS
    +關(guān)注

    關(guān)注

    28

    文章

    2087

    瀏覽量

    79306
  • 程序
    +關(guān)注

    關(guān)注

    117

    文章

    3825

    瀏覽量

    82739
  • 浮點數(shù)
    +關(guān)注

    關(guān)注

    0

    文章

    61

    瀏覽量

    16109

原文標(biāo)題:西門子PLC讀取的儀表數(shù)據(jù)(浮點數(shù))如何轉(zhuǎn)換為整數(shù)

文章出處:【微信號:PLC與自控設(shè)備,微信公眾號:PLC與自控設(shè)備】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    labview數(shù)據(jù)類型與PLC 數(shù)據(jù)類型之間的轉(zhuǎn)換(來自于寫入浮點數(shù)到匯川 PLC中的數(shù)據(jù)轉(zhuǎn)換關(guān)鍵的修改)

    本帖最后由 ironflag 于 2025-6-26 21:09 編輯 Labview通過Modbus庫函數(shù),寫入浮點數(shù)到匯川PLC,正常操作如下: 1、將labview浮點數(shù),強制
    發(fā)表于 02-24 19:01

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

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

    浮點數(shù)整數(shù)解析

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

    浮點數(shù)的運算怎么轉(zhuǎn)換整數(shù)運算?

    浮點數(shù)的運算怎么轉(zhuǎn)換整數(shù)運算
    發(fā)表于 10-12 06:31

    modbus 如何讀取浮點數(shù)

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

    浮點數(shù)在內(nèi)存中的存儲

    浮點數(shù)在內(nèi)存中的存儲和整數(shù)不同,因為整數(shù)都可以轉(zhuǎn)換為一一對應(yīng)的二進制數(shù)據(jù)。而浮點數(shù)的存儲是由符號
    的頭像 發(fā)表于 09-20 10:52 ?4368次閱讀
    <b class='flag-5'>浮點數(shù)</b>在內(nèi)存中的存儲

    python整數(shù)浮點數(shù)分解

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

    西門子PLC的基本數(shù)據(jù)類型及其使用

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

    什么是浮點數(shù)

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

    解析python整數(shù)浮點數(shù)不同進制整數(shù)

    python數(shù)字包括整數(shù)浮點數(shù)、復(fù)數(shù)、有理分?jǐn)?shù)等,整數(shù)還可以用不同進制表示。
    的頭像 發(fā)表于 03-10 10:01 ?1343次閱讀

    西門子PLC 64位浮點數(shù)轉(zhuǎn)32位浮點數(shù)程序分享

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

    西門子S7-1200PLC數(shù)據(jù)處理指令:浮點數(shù)轉(zhuǎn)整數(shù)指令

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

    西門子PLC浮點數(shù)程序案例分享

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

    modbus浮點數(shù)怎么讀取

    Modbus是一種通信協(xié)議,常用于工業(yè)自動化系統(tǒng)中的設(shè)備之間的通信。它支持多種數(shù)據(jù)類型,包括整數(shù)、浮點數(shù)、字符串等。浮點數(shù)在工業(yè)領(lǐng)域中廣泛應(yīng)用,因此了解如何
    的頭像 發(fā)表于 12-28 14:38 ?7941次閱讀

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

    的方法。 第1步: 添加 PLC 設(shè)備。 選擇西門子 CPU 1214C DC/DC/DC。 設(shè)置 IP 地址:192.168.0.1。 子網(wǎng)掩碼:255.255.255.0 圖1添加 PLC 設(shè)備 第2
    的頭像 發(fā)表于 01-06 10:07 ?714次閱讀
    <b class='flag-5'>西門子</b>TIA Portal如何比較兩個<b class='flag-5'>浮點數(shù)</b>相等