S7-200與梅特勒-托利多IND231或IND236稱重顯示儀通訊
本項目涉及到的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回車
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展會
中國聯通首個量子通信產品“量子密信”亮相!