如何在 STEP 7 (TIA Portal) 中使用符號方式按位,字節,或字訪問非結構數據類型?
對于S7-1200 和 S7-1500,可以按1位,8位,16位和32位的長度訪問已經聲明的變量。
描述
為了按字節、字和雙字數據類型訪問變量,需要:
對于S7-1200(固件V2.0及以上)需要 STEP 7 (TIA Portal)V11+SP1+Update 2 (或更高版本)
對于S7-1500需要 STEP 7 (TIA Portal)V12 (或更高版本)
將存儲區(例如Byte或Word )劃分為更小的存儲區(例如Bool )也稱為存儲器分片。圖01所示使用符號方式對操作數按位、字節、字進行訪問。
圖.1
使用片訪問可以提供更高的編程效率并且無需在變量表里進行額外的聲明。
下例所示使用符號方式按位訪問。"x"代表在字或字節中按位訪問并且其后的數字表示相關位的偏移量。
圖. 2
圖03為按字節訪問的例子。這里"b"代表按字節訪問并且其后面的數字表示相關字節的偏移量。
圖. 3
"w"代表按字進行訪問并且其后的數字表示相關字的偏移量。
圖.4
在某些技術應用上,只需要一個字節變量的前4位或前6位(分別對應于位0至位3或位0至位5)的值用于轉換字節數據類型到一個實數數據類型的值。例如,一個二進制數(二進制編碼字節)轉換成十進制數(實數)。字節的最低位代表數值2-5。這不是小數點后的位數,但是可以自動計算出十進制數據。
位5 | 位4 | 位3 | 位2 | 位1 | 位0 |
1 | 1 | 0 | 0 | 1 | 0 |
20 | 2-1 | 2-2 | 2-3 | 2-4 | 2-5 |
1,0 | 0,5 | 0,25 | 0,125 | 0,0625 | 0,03125 |
1*1,0=1,0 | 1*0,5=0,5 | 0*0,25=0 | 0*0,125=0 | 1*0,0625=0,0625 | 0*0,03125=0 |
總計= 1.5625.
如下SCL程序的前兩行將不需要的位設為“false”。然后,根據變化得到2-5進行數據類型轉換后的數值。
圖.5
注意
從STEP 7 (TIA Portal) V13 以后,語法規則從 "Variable.X0" 改為 "Variable.%X0"。如上所述示例中輸入"inByte.X0"后,STEP 7 (TIA Portal) V13 之后的版本會自動修改為"inByte.%X0"。
審核編輯:劉清
-
存儲器
+關注
關注
38文章
7625瀏覽量
166256 -
二進制
+關注
關注
2文章
803瀏覽量
42112 -
S7-1200
+關注
關注
11文章
333瀏覽量
18416
原文標題:如何在 STEP 7 (TIA Portal) 中使用符號方式按位,字節,或字訪問非結構數據類型?
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應用】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
【跟我學單片機C語言】C51數據類型
LabVIEW的數據類型、存儲格式
LabVIEW的數據類型、存儲格式
如何在stm8s003中使用64位數據類型
C語言基本數據類型,變量和常量
如何訪問所有256字節?
TensorFlow教程|張量的階、形狀、數據類型
STM32中常用數據類型及取值相關資料推薦
CMSIS中數據類型
STM32中常用數據類型及取值

plc位、字節、字、雙字、有符號、無符號數據類型的關系

評論