西門子老型號的PLC的讀密碼指令:
請用串口軟件以16進制發(fā)送,端口設(shè)置9600;e;8;1
發(fā)送:68 1B 1B 68 02 00 6C 32 01 00 00 00 00 00 0E 00 00 04 01 12 0A 10 02 00 08 00 00 03 00 05 E0 D2 16 意思:要求傳送系統(tǒng)存儲區(qū)05E0位開始的8個字符。
如果通訊無誤,PLC會返回 E5,意思:已經(jīng)收到
那么這時上位機再次發(fā)送指令 10 02 00 5C 5E 16 意思:請執(zhí)行命令。那么這時PLC就真的執(zhí)行命令了返回如下字符:68 1D 1D 68 00 02 08 32 03 00 00 00 00 00 02 00 0C 00 00 04 01 FF 04 00 40 9B 98 02 06 9D 9A 00 76 7D 16
大家看看密碼是多少啊!
PPI協(xié)議
西門子的PPI(Point to Point)通訊協(xié)議采用主從式的通訊方式,一次讀寫操作的步驟包括:首先上位機發(fā)出讀寫命令,PLC作出接收正確的響應,上位機接到此響應則發(fā)出確認申請命令,PLC則完成正確的讀寫響應,回應給上位機數(shù)據(jù)。這樣收發(fā)兩次數(shù)據(jù),完成一次數(shù)據(jù)的讀寫[5]。
其通訊數(shù)據(jù)報文格式大致有以下幾類:
1、讀寫申請的數(shù)據(jù)格式如下:
SD LE LER SD DA SA FC DASP SSAP DU FCS ED
SDStart Delimiter)開始定界符(68H)
LE:(Length)報文數(shù)據(jù)長度
LER:(Repeated Length)重復數(shù)據(jù)長度
SD: (Start Delimiter)開始定界符(68H)
SA:(Source Address)源地址,指該地址的指針,為地址值乘以8
DA:(Destination Address)目標地址,指該地址的指針,為地址值乘以8
FC:(Function Code)功能碼
DSAP:(Destination Service Access Point)目的服務存取點
SSAP:(Source Service Access Point)源服務存取點
DU:(Data Unit)數(shù)據(jù)單元
FCS:(Frame Check Sequence)校驗碼
ED:(End Delimiter)結(jié)束分界符(16H)
報文數(shù)據(jù)長度和重復數(shù)據(jù)長度為自DA至DU的數(shù)據(jù)長度,校驗碼為DA至DU數(shù)據(jù)的和校驗,只取其中的末字節(jié)值。
在讀寫PLC的變量數(shù)據(jù)中,讀數(shù)據(jù)的功能碼為 6CH,寫數(shù)據(jù)的功能碼為 7CH。
2、PLC接收到讀寫命令,校驗后正確,返回的數(shù)據(jù)格式為 E5H
3、確認讀寫命令的數(shù)據(jù)格式為:
SD SA DA FC FCS ED
其中SD為起始符,為10H
SA為數(shù)據(jù)源地址
DA為目的地址
FC為功能碼,取5CH
FCS為SA+DA+FC的和的末字節(jié)
ED為結(jié)束符,取16H
問:目標地址,源地址,數(shù)據(jù), 密碼分別是什么呀