一区二区三区成人-一区二区三区www-一区二区三区 日韩-一区二区日韩欧美-一区二区日韩精品中文字幕-一区二区日韩

h30631
級別: 略有小成
精華主題: 0
發帖數量: 90 個
工控威望: 230 點
下載積分: 812 分
在線時間: 339(小時)
注冊時間: 2012-09-05
最后登錄: 2018-04-17
查看h30631的 主題 / 回貼
樓主  發表于: 2012-12-26 07:54
請問MX Component  使用vb 來寫,要用哪個指令抓取32位d值?
怎麼是都抓16位而已,求助~
[ 此帖被h30631在2013-01-03 17:01重新編輯 ]
h30631
級別: 略有小成
精華主題: 0
發帖數量: 90 個
工控威望: 230 點
下載積分: 812 分
在線時間: 339(小時)
注冊時間: 2012-09-05
最后登錄: 2018-04-17
查看h30631的 主題 / 回貼
1樓  發表于: 2013-01-02 09:20
求助~

有人知道取得32位的方式嗎?
litung
臺灣-李同在
級別: VIP會員
精華主題: 2 篇
發帖數量: 578 個
工控威望: 3224 點
下載積分: 14494 分
在線時間: 405(小時)
注冊時間: 2009-06-06
最后登錄: 2024-11-16
查看litung的 主題 / 回貼
2樓  發表于: 2013-01-02 09:53
指令的話,使用 【ReadDeviceBlock2】
但要特別處理,才能讀到。
詳細,請參考mx內附的程式範例。

祝好運
簡單的心,是真正有福
單純的心,是真正的快樂    
T480 i5-8250U,32GB,SSD:2TB+256G
h30631
級別: 略有小成
精華主題: 0
發帖數量: 90 個
工控威望: 230 點
下載積分: 812 分
在線時間: 339(小時)
注冊時間: 2012-09-05
最后登錄: 2018-04-17
查看h30631的 主題 / 回貼
3樓  發表于: 2013-01-02 10:26
大師您好~
小的只差在這個"特別處裡"
目前用範例程式ModemSample 來修改
裡面有使用到ReadDeviceBlock 指令,但是必須修改成ReadDeviceBlock2
請問要怎麼修改才不會出錯~感謝了~!!
h30631
級別: 略有小成
精華主題: 0
發帖數量: 90 個
工控威望: 230 點
下載積分: 812 分
在線時間: 339(小時)
注冊時間: 2012-09-05
最后登錄: 2018-04-17
查看h30631的 主題 / 回貼
4樓  發表于: 2013-01-02 11:29
目前把範例程式裡的
lReturnValue = ActEasyIF1.ReadDeviceBlock(szDeviceName, lSize, lData(0))

改成
lReturnValue = ActEasyIF1.ReadDeviceBlock2(szDeviceName, lSize, lData(0))

顯示出來的數據會有 "- "號,應該是進位了,但是還是顯示不出和MELSOFT一樣的數據
litung
臺灣-李同在
級別: VIP會員
精華主題: 2 篇
發帖數量: 578 個
工控威望: 3224 點
下載積分: 14494 分
在線時間: 405(小時)
注冊時間: 2009-06-06
最后登錄: 2024-11-16
查看litung的 主題 / 回貼
5樓  發表于: 2013-01-02 14:50
好人作到底,給你完整的code
自己測試看看,有問題再討論

=====================================
Option Explicit
'/*****************************************************/
'/*撰寫者:李同在                                     */
'/*日期:2009/09/07 V1.0                              */
'/*用途:讀取三荾PLC的資料                            */
'/*****************************************************/
Dim bufferBit As udtBitInteger        '使用者自定型態 for 32bit Integer
Dim bufferInteger As udtInteger
Public lRet As Long                   'PLC回傳值
Const MAX_SIZE_OF_ARRAY = 20          'Size of array for reading/writing 'Word' data to the PLC
'Data for reading/writing to the PLC
Private Type udtInteger
  iarrInteger(MAX_SIZE_OF_ARRAY - 1) As Integer
End Type
'資料位元
Private Type udtBitInteger
  l32Bit As Long
End Type

'/**************************************************************/
'/*功能:連續讀取32BIT PLC D值的資料                           */
'/*用法:Call Read32Bit("D0", "D2", "D4", "D6", "D8")          */
'/**************************************************************/
Public Function Read32Bit(ParamArray PLC_Data()) As String()
  Dim sRead32BitData() As String    '存放資料用
  Dim iCnt As Integer               '迴圈計算
 
  ReDim sRead32BitData(UBound(PLC_Data))
  For iCnt = LBound(PLC_Data) To UBound(PLC_Data)
    lRet = frmPLC.PLC.ReadDeviceBlock2(UCase(PLC_Data(iCnt)), CLng(2), bufferInteger.iarrInteger(0))
    LSet bufferBit = bufferInteger    '複製'bufferInteger'到 '32bit Integer'
    sRead32BitData(iCnt) = CStr(bufferBit.l32Bit)
  Next
  Read32Bit = sRead32BitData
End Function
簡單的心,是真正有福
單純的心,是真正的快樂    
T480 i5-8250U,32GB,SSD:2TB+256G
h30631
級別: 略有小成
精華主題: 0
發帖數量: 90 個
工控威望: 230 點
下載積分: 812 分
在線時間: 339(小時)
注冊時間: 2012-09-05
最后登錄: 2018-04-17
查看h30631的 主題 / 回貼
6樓  發表于: 2013-01-02 16:33
感謝大師~正在努力了解中~!
h30631
級別: 略有小成
精華主題: 0
發帖數量: 90 個
工控威望: 230 點
下載積分: 812 分
在線時間: 339(小時)
注冊時間: 2012-09-05
最后登錄: 2018-04-17
查看h30631的 主題 / 回貼
7樓  發表于: 2013-01-02 17:13
大師您好~
目前我是用一個按鈕 和list
有一段我改成 lRet = ActEasyIF1.ReadDeviceBlock2  用gx 仿真來測試

Private Sub Command1_Click()
Call Read32Bit("D236", "D238", "D240", "D242", "D244")
List1.AddItem (Read32Bit)
End Sub

這樣會錯誤....

麻煩指點一下,謝謝~
litung
臺灣-李同在
級別: VIP會員
精華主題: 2 篇
發帖數量: 578 個
工控威望: 3224 點
下載積分: 14494 分
在線時間: 405(小時)
注冊時間: 2009-06-06
最后登錄: 2024-11-16
查看litung的 主題 / 回貼
8樓  發表于: 2013-01-02 21:54
你不是臺灣來的嗎?怎麼不在臺灣那邊發問?

你的CALL有問題,CALL回來的東西要放那裡?誰(程式)會知道?
當然就錯誤了。

一樣,直接給你現成的CODE,有問題再討論
VB語法不懂的,請自行找資料了解。
================================================
'讀取sv位置資料
Public Sub ReadSVData(iSVAxis As Integer)
  Dim arrData As Variant
  Dim iCnt As Integer

  Select Case iSVAxis
    Case 1:
      arrData = Read32Bit("D1000", "D1002", "D1004", "D1006", "D1008", "D1010", "D1012")
      For iCnt = LBound(arrData) To UBound(arrData)
        lblAxis1Poistion(iCnt).Caption = arrData(iCnt)
      Next iCnt
    Case 2:
      arrData = Read32Bit("D1018", "D1020", "D1024", "D1026", "D1028", "D1030", "D1032")
      For iCnt = LBound(arrData) To UBound(arrData)
        lblAxis2Poistion(iCnt).Caption = arrData(iCnt)
      Next iCnt
    Case 3:
      arrData = Read32Bit("D1034", "D1036", "D1038", "D1040", "D1042", "D1044", "D1046", "D1048", "D1050")
      For iCnt = LBound(arrData) To UBound(arrData)
        lblAxis3Poistion(iCnt).Caption = arrData(iCnt)
      Next iCnt
    Case 4:
      arrData = Read32Bit("D1054", "D1056", "D1058", "D1060", "D1062", "D1064", "D1066", "D1070", "D1072", "D1074", "D1076", "D1078", "D1080")
      For iCnt = LBound(arrData) To UBound(arrData)
        lblAxis4Poistion(iCnt).Caption = Format(arrData(iCnt) / 100, "##00.00")
      Next iCnt
  End Select
End Sub
簡單的心,是真正有福
單純的心,是真正的快樂    
T480 i5-8250U,32GB,SSD:2TB+256G
litung
臺灣-李同在
級別: VIP會員
精華主題: 2 篇
發帖數量: 578 個
工控威望: 3224 點
下載積分: 14494 分
在線時間: 405(小時)
注冊時間: 2009-06-06
最后登錄: 2024-11-16
查看litung的 主題 / 回貼
9樓  發表于: 2013-01-03 15:43
若問題解決了,煩請改一下標題分類。
簡單的心,是真正有福
單純的心,是真正的快樂    
T480 i5-8250U,32GB,SSD:2TB+256G
h30631
級別: 略有小成
精華主題: 0
發帖數量: 90 個
工控威望: 230 點
下載積分: 812 分
在線時間: 339(小時)
注冊時間: 2012-09-05
最后登錄: 2018-04-17
查看h30631的 主題 / 回貼
10樓  發表于: 2013-01-03 17:00
感謝大師協助~

目前已經弄出一點東西了

真的非常感謝~!!

主站蜘蛛池模板: 亚洲天堂男人| 欧美人与日本人xx在线视频| 精品综合| 五月色婷婷久久综合| 欧美一级特黄刺激大片视频| 动漫美女被吸乳| 欧乱色国产精品兔费视频| 久久永久视频| 97精品国产高清在线看入口| 亚洲精品第二页| 国外欧美一区另类中文字幕| 日韩毛片高清在线看| 97青草香蕉依人在线播放| 无遮18禁在线永久免费观看挡 | 久久免费国产| 日本高清视频在线免费观看| 欧美草逼视频| 91久久综合九色综合欧美98| 精品无码一区二区三区中文字幕| 亚洲国产视频一区| 九九大香尹人视频免费| 国产好痛疼轻点好爽的视频| 精品国产mmd在线观看| 三级全黄的视频| 無码一区中文字幕少妇熟女H| 欧美性4khd720| 亚洲国产美女精品久久| 精品一区二区视频| 爱情岛论坛亚洲永久入口口| 成人在线视频在线观看| 色妞视频一级毛片| 每天都要睡男人(nph)| 都市风流贵妇激情| 禁欲天堂| 久久全国免费观看视频| 日韩精品一区二区三区免费视频| 午夜影院c绿象| 黑人巨大精品战中国美女| 国产肥臀| 1313午夜精品理伦片| 51国产|