雨天神
級(jí)別: 探索解密
![]() |
![]() 1.我這邊是從機(jī),客戶(hù)那邊發(fā)命令到我的PLC中,比如客戶(hù)那邊發(fā)開(kāi)機(jī)的命令,如果我這邊的機(jī)器沒(méi)有問(wèn)題,就返回一個(gè)數(shù)據(jù),如果我的設(shè)備上有故障,就返回故障信息。 2.因?yàn)槲疫@邊是從機(jī),是不是只能是客戶(hù)那邊有發(fā)數(shù)據(jù),我這邊才能返回?cái)?shù)據(jù)? 我說(shuō)一下 我的思路: 1.下行通信幀:幀頭 站號(hào) 命令 數(shù)據(jù) 校驗(yàn) 幀尾 2.上行通信幀:幀頭 站號(hào) 命令 數(shù)據(jù) 校驗(yàn) 幀尾 當(dāng)我用INPUT 指令接數(shù)到下行的數(shù)據(jù)時(shí),是不是先判斷站號(hào),然后再把接收到的數(shù)據(jù)求出校驗(yàn),如果校驗(yàn)碼與發(fā)下來(lái)的一樣,那么我就把相應(yīng)的數(shù)據(jù)返回給上位機(jī),不 知我的思路對(duì)嗎? 因?yàn)槲疫@邊是從機(jī),所以我要寫(xiě)一份通信協(xié)議,讓客戶(hù)的上位機(jī)根據(jù)他的需求來(lái)寫(xiě)/讀操作,如寫(xiě)開(kāi)機(jī)、關(guān)機(jī) 信號(hào),讀報(bào)警信息。 ![]() 有哪位大哥大姐做過(guò)相應(yīng)的程序呀,能幫幫忙嗎,謝謝了!! |
---|---|
|
wangk0
人都有點(diǎn)過(guò)去~
級(jí)別: 工控俠客
![]() |
雖然沒(méi)搞過(guò),但我覺(jué)得用中斷寫(xiě)會(huì)方便很多。接收到信息后中斷,把接收到的信息存到D里,通過(guò)比較D來(lái)判斷執(zhí)行哪一路程序。 |
---|---|
|
雨天神
級(jí)別: 探索解密
![]() |
我也想用中斷,但是QJ71C24N 這個(gè)模塊,有接收讀取請(qǐng)求的信號(hào),當(dāng)這個(gè)信號(hào)為ON時(shí),就可以接收上位機(jī)發(fā)來(lái)的數(shù)據(jù),轉(zhuǎn)移動(dòng)D區(qū)里,然后就先判斷站號(hào),如果是對(duì)的,再判斷命 令,如果是對(duì)的,然后再算校驗(yàn)碼,校驗(yàn)碼相等時(shí),就從D里提取數(shù)據(jù),同時(shí)返回相應(yīng)的數(shù)據(jù)給上位機(jī)。 不知我的想法可行嗎,因?yàn)橐郧拔铱吹竭^(guò)有些單片機(jī)通信程序是這樣做的,而在PLC里,寫(xiě)從站的協(xié)議是否也可以這樣做,或者有更好的方法? |
---|---|
|