S7-200與梅特勒-托利多IND231或IND236稱重顯示儀通訊
本項(xiàng)目涉及到的PLC為西門子200系列的CPU224XP CN,稱重儀表是梅特勒-托利多IND231或IND236稱重顯示儀。此稱重儀表配有RS485第二通訊選件,二者通過RS485通訊,西門子S7-200將Port0口設(shè)置為自由口通訊協(xié)議。
稱重儀表的參數(shù)設(shè)置如下:
1.將F4.2.1協(xié)議/模式設(shè)置為連續(xù)輸出模式,將原來的RPr int 改為Cont in;
連續(xù)輸出格式說明如下
1)ASCII文本開始字符(0X02),始終發(fā)送。
2)顯示的重量。可以是毛重或凈重。六位,沒有小數(shù)點(diǎn)或符號。不足六位前補(bǔ)空格
3)皮重。六位皮中數(shù)據(jù)。字段中沒有小數(shù)點(diǎn)。
4)ASCII回車
5)校驗(yàn)和啟用時(shí)才發(fā)送校驗(yàn)位。校驗(yàn)和用于檢測數(shù)據(jù)發(fā)送中的錯(cuò)誤。
2.F4.2.3.1中設(shè)定波特率 1200 2400 4800 9600 19200 38400 57600 115200 默認(rèn)模式為9600 不用修改
3.F4.2.3.2 中設(shè)置數(shù)據(jù)位及奇偶校驗(yàn)位 8 NONE 7odd 7 even
默認(rèn)模式為8位無校驗(yàn)位
4.F4.2.3.3 流量控制位 默認(rèn)為OFF
5.F4.2.3.4 RS類型 將原來默認(rèn)的RS232設(shè)置為RS485
儀表中數(shù)據(jù)位如下:
SB-A字節(jié)中定義如下:
SB-B狀態(tài)字節(jié)位定義
西門子S7-200端接Port0口,程序如下:
主程序調(diào)用子程序(SBR0 通信)
SBR0通信程序如下:
此段為設(shè)置每3秒采集一次稱重?cái)?shù)據(jù)存到首地址為VB100,數(shù)據(jù)格式和稱重儀表的數(shù)據(jù)位相對應(yīng)
本段程序是設(shè)置S7-200的Port0端口為自有協(xié)議,詳情請參照S7-200幫助文件,SMB30的值為09H,說明為“自由口協(xié)議,波特率9600,8個(gè)數(shù)據(jù)位,無校驗(yàn)位”; SMB87的值為BOH,說明“接收信息使能被使能,使用SMB88數(shù)值檢測信息開始,使用SMB89數(shù)值檢測信息結(jié)束,使用SMB90數(shù)據(jù)檢測空閑條件,使用SMB92超出時(shí)間段,信息終止,使用SMB94最大接收字符數(shù)”,這些參數(shù)的設(shè)置與上述稱重顯示儀的參數(shù)設(shè)置一致。
此段程序是中斷中的,讀數(shù)從VB100開始,與稱重儀表數(shù)據(jù)位對應(yīng)如下:
所以從將VB105至VB110所存的數(shù)據(jù)存至VB300至VB305中,然后通過將這些字節(jié)的字符串組轉(zhuǎn)換為雙整型賦值給VD310,再將VD310轉(zhuǎn)換成實(shí)數(shù)型賦給VD120,方便下面程序進(jìn)行計(jì)算。
下面這段程序是確認(rèn)小數(shù)點(diǎn)的位置,小數(shù)點(diǎn)位置存在了VB102中,程序中將VB102的前三個(gè)位傳給了VB130通過判斷前三位來斷定小數(shù)點(diǎn)的位置(參考稱重儀表中的狀態(tài)字SB-A中定義)。VB103.1為稱重儀表中SB-B中數(shù)位1,代表符號是正還是負(fù)。
提交
新大陸自動識別精彩亮相2024華南國際工業(yè)博覽會
派拓網(wǎng)絡(luò)被Forrester評為XDR領(lǐng)域領(lǐng)導(dǎo)者
智能工控,存儲強(qiáng)基 | ??低晭砭手黝}演講
展會|Lubeworks路博流體供料系統(tǒng)精彩亮相AMTS展會
中國聯(lián)通首個(gè)量子通信產(chǎn)品“量子密信”亮相!