工控網首頁
>

應用設計

>

S7-200與梅特勒-托利多IND231或IND236稱重顯示儀通訊

S7-200與梅特勒-托利多IND231或IND236稱重顯示儀通訊

2016/10/28 13:44:16

  本項目涉及到的PLC為西門子200系列的CPU224XP CN,稱重儀表是梅特勒-托利多IND231或IND236稱重顯示儀。此稱重儀表配有RS485第二通訊選件,二者通過RS485通訊,西門子S7-200將Port0口設置為自由口通訊協議。

  稱重儀表的參數設置如下:

  1.將F4.2.1協議/模式設置為連續輸出模式,將原來的RPr int 改為Cont in;

  連續輸出格式說明如下

  1)ASCII文本開始字符(0X02),始終發送。

  2)顯示的重量??梢允敲鼗騼糁?。六位,沒有小數點或符號。不足六位前補空格

  3)皮重。六位皮中數據。字段中沒有小數點。

  4)ASCII回車字符(0X0D)

  5)校驗和啟用時才發送校驗位。校驗和用于檢測數據發送中的錯誤。

  2.F4.2.3.1中設定波特率 1200 2400 4800 9600 19200 38400 57600 115200   默認模式為9600 不用修改

  3.F4.2.3.2 中設置數據位及奇偶校驗位  8 NONE  7odd  7 even

  默認模式為8位無校驗位

  4.F4.2.3.3 流量控制位 默認為OFF

  5.F4.2.3.4 RS類型 將原來默認的RS232設置為RS485

  儀表中數據位如下:

  SB-A字節中定義如下:

  SB-B狀態字節位定義

  西門子S7-200端接Port0口,程序如下:

  主程序調用子程序(SBR0 通信)

  SBR0通信程序如下:

  此段為設置每3秒采集一次稱重數據存到首地址為VB100,數據格式和稱重儀表的數據位相對應

  本段程序是設置S7-200的Port0端口為自有協議,詳情請參照S7-200幫助文件,SMB30的值為09H,說明為“自由口協議,波特率9600,8個數據位,無校驗位”; SMB87的值為BOH,說明“接收信息使能被使能,使用SMB88數值檢測信息開始,使用SMB89數值檢測信息結束,使用SMB90數據檢測空閑條件,使用SMB92超出時間段,信息終止,使用SMB94最大接收字符數”,這些參數的設置與上述稱重顯示儀的參數設置一致。

  此段程序是中斷中的,讀數從VB100開始,與稱重儀表數據位對應如下:

  所以從將VB105至VB110所存的數據存至VB300至VB305中,然后通過將這些字節的字符串組轉換為雙整型賦值給VD310,再將VD310轉換成實數型賦給VD120,方便下面程序進行計算。

  下面這段程序是確認小數點的位置,小數點位置存在了VB102中,程序中將VB102的前三個位傳給了VB130通過判斷前三位來斷定小數點的位置(參考稱重儀表中的狀態字SB-A中定義)。VB103.1為稱重儀表中SB-B中數位1,代表符號是正還是負。

投訴建議

提交

查看更多評論
其他資訊

查看更多

新大陸自動識別精彩亮相2024華南國際工業博覽會

派拓網絡被Forrester評為XDR領域領導者

智能工控,存儲強基 | ??低晭砭手黝}演講

展會|Lubeworks路博流體供料系統精彩亮相AMTS展會

中國聯通首個量子通信產品“量子密信”亮相!