S7-300與Carrier冷凍機的Modbus串行通訊
按照以上校驗步驟,編寫(xiě)crc校驗功能子程序fc6(見(jiàn)表3)。
在ob1中調用子程序fc6,計算出db10中的crc校驗值。
call fc 6
db_no :=db10 //發(fā)送數據塊
start_byte :=0 //起始字節
length :=6 //字節個(gè)數
crc_msb :=db10.dbb6 //crc高8位
crc_lsb :=db10.dbb7 //crc低8位
然后在ob1中調用串口數據接收功能塊fb2:
all fb 2,db21
en-r :=m0.0
r :=
laddr :=256
db-n0 :=11
dbb-no :=0
ndr :=
error :=
len :=
status :=
引腳說(shuō)明:
en_r:接收使能
laddr:cp340的邏輯地址
db_no:指定接收db
dbb_no:指定接收db中的起始字節。
ndr:接收新數據輸出一個(gè)脈沖
error:接收失敗輸出1
len:輸出接收字節的長(cháng)度
status:狀態(tài)字
此程序的含義為,在m0.1為1的時(shí)候從cp340接收數據,并把數據存在數據塊db11中。
之后再提取db11中的數據,得到以下冷凍機的實(shí)際運行參數值(見(jiàn)表4)。
7 結束語(yǔ)
本文詳細闡述了如何采用modbus協(xié)議實(shí)現s7-300與冷凍機之間的數據通信。實(shí)現了異種設備之間的連接,為實(shí)現公司的集中監控目標鋪平了道路。
評論