一、概述
PLC(可編程控制器)應(yīng)用廣泛,其CPU功能較強(qiáng),可靠性高,但在輸入輸出I/O方面,PLC存在價(jià)格過高,擴(kuò)展模塊不隔離,輸入信號還要進(jìn)行編程運(yùn)算來完成采集,品牌繁多,互不兼容,用戶使用起來不方便等缺點(diǎn)。我公司研制生產(chǎn)的S系列I/O產(chǎn)品具有模入(AI)、模出(AO)、開入(DI)、開出(DO)等功能;規(guī)格多樣;工程量值輸出;RS485通訊接口;靈活的通訊協(xié)議;擴(kuò)展簡捷;價(jià)格低廉。但在復(fù)雜控制等應(yīng)用場合較PLC就有所欠缺,而PLC的優(yōu)勢恰恰在此。S系列I/O前端可以方便地與各種PLC構(gòu)成秒級的多點(diǎn)數(shù)據(jù)采集和控制系統(tǒng),并可更快捷地融入已有的采集控制系統(tǒng)當(dāng)中,大大降低系統(tǒng)工程費(fèi)用。二者結(jié)合可以彌補(bǔ)各自的缺陷,使系統(tǒng)達(dá)到良好的性價(jià)比。
下面以施耐德電氣的Twido系列PLC(以型號為TWDLCAE40DRF為例)和S系列I/O前端連接所構(gòu)成的采集控制系統(tǒng)為例,展示這種方案的優(yōu)勢所在:
1.Twido系列PLC支持標(biāo)準(zhǔn)MODBUS主協(xié)議和從協(xié)議,可方便地和上位機(jī)(PC機(jī))和擴(kuò)展模塊(例如S系列I/O前端)通訊,并且無論從硬件上還是軟件上都能做到無縫連接,大大簡化了用戶搭建系統(tǒng)的復(fù)雜程度。Twido系列PLC具備兩個通訊口,一個以太網(wǎng)端口,用戶不必再購置其它設(shè)備即可方便搭建或者升級采集與控制系統(tǒng),大大降低了系統(tǒng)成本。
2.S系列I/O前端與PLC的接口程序軟件由我公司編寫并無償提供給用戶,用戶只要將該段程序嵌入自己的程序中即可。用戶在PLC編程中或在上位機(jī)讀寫S系列I/O前端的輸入輸出數(shù)據(jù)時(shí),只和PLC中的I/O數(shù)據(jù)映射區(qū)(位于%MW內(nèi)存區(qū)內(nèi))打交道,大大減少了用戶工作量和編程復(fù)雜程度。
3.采用PLC的通訊口2(COM2,RS485)與S系列I/O前端連接(RS485總線),方便地?cái)U(kuò)展至少32個模塊。
4.擴(kuò)展系統(tǒng)AI/AO點(diǎn)最多達(dá)512點(diǎn),DI/DO點(diǎn)最多達(dá)1024點(diǎn),極大的拓展了PLC的I/O點(diǎn)數(shù)。
5.現(xiàn)場獨(dú)立安裝,擴(kuò)展靈活,多樣,調(diào)試方便。
6.模擬量為直接工程量值,無需編程運(yùn)算完成采集及輸出。
7.具有通道與通道之間隔離,現(xiàn)場與計(jì)算機(jī)隔離特性。
8.利用PLC的CPU豐富資源,使整套系統(tǒng)具有可編程及PID等控制功能,并可脫離上位機(jī)獨(dú)立運(yùn)行。
9.利用PLC的自帶Ethernet通訊口,使系統(tǒng)簡捷地接入以太網(wǎng)絡(luò)。
10.特別適合于各種場合的秒級采集控制應(yīng)用。
11.特別適合于施耐德體系的工控工程中,擴(kuò)展大量I/O點(diǎn)及降低系統(tǒng)造價(jià)。
二、連接要點(diǎn)及注意事項(xiàng)
●TWDLCAE40DFR具有兩個串行5通訊口和一個Ethernet口,通訊口1(COM1)固定為RS485口,通訊口2(COM2)為RS232/RS485可選,本方案選用COM2為RS485方式與S系列I/O前端的RS485通訊線相連(PLC為主站,S系列I/O前端為從站);通訊口1(COM1)和Ethernet口可與PC機(jī)相連(作為PC機(jī)的從站)。
●通訊口2(COM2)通訊速率定義(在Twidosoft軟件內(nèi))為38400 bps(或者小于38400),8位數(shù)據(jù)位,1位停止位,無奇偶校驗(yàn)。響應(yīng)超時(shí)設(shè)置為1×100ms即可,幀延遲時(shí)間設(shè)置為10ms即可。
●PLC的Ethernet口需要在Twidosoft軟件上設(shè)置IP地址,子網(wǎng)掩碼,網(wǎng)關(guān)設(shè)置為和IP相同即可。
●通訊方式為主從式,PLC為主,S系列I/O前端為從。
●PLC與S系列I/O前端的通訊電纜連接對應(yīng)表(PLC的COM2通訊模塊為TWD NAC 485D,Mini-din連接器)
PLC的RS485連接器------------S系列I/O前端的接線端子
1 ------------ 37 (RS485 A )
2 ------------ 36 (RS485 B)
7 ------------ 35 (RS485 摒蔽地 )
●用戶在使用之前應(yīng)將S系列I/O前端的站址設(shè)置好,并將通訊速率設(shè)置為PLC的COM2口相同的通訊速率,通信協(xié)議為MOBUS(I),S系列I/O前端的其它參數(shù),用戶根據(jù)現(xiàn)場實(shí)際工況自行設(shè)置。
●如果有多個(N個)S系列I/O前端,站址應(yīng)從01開始,依次至N為止,連續(xù)不得跳躍。
●PLC將對各S系列I/O前端不停進(jìn)行循環(huán)采集及控制輸出,1秒之內(nèi)即可將32個S系列I/O前端采集或輸出控制完畢。
采集及輸出控制單元皆存放于固定%MW內(nèi)存區(qū),由用戶讀取或?qū)懭耄M信號讀取或?qū)懭敫袷綖镮NT)。占用內(nèi)存空間從%MW0起始,占用582字,即到%MW581結(jié)束 ,其中%MW0~%MW32為連接S系列I/O前端定義前端個數(shù)及型號定義區(qū);%MW70~%MW581為S系列I/O前端輸入輸出數(shù)據(jù)映射區(qū),每個I/O前端分配16個字,連接32個前端時(shí)共計(jì)為512 字(參見I/O數(shù)據(jù)映射區(qū)說明)。
三、連接程序說明
S系列I/O前端與Twido系列PLC的連接程序包含一個主程序,6個子程序。用戶只要將該段主程序嵌入自己的主程序中,將余下的子程序和中斷服務(wù)程序置入用戶系統(tǒng)程序中,然后修改SR0(用戶設(shè)置子程序),根據(jù)所需連I/O前端的個數(shù)及型號定義%MW0~%MW32內(nèi)存區(qū)即可。
主程序及其說明如下:
LD %S13 // 首次掃描或者冷熱啟動
OR %S0
OR %S1
S %M0 // 啟動通訊脈沖
[ %MW582 := 0 ] // 本系統(tǒng)占用內(nèi)部存儲空間說明
[ %MW34 := 1 ] // 當(dāng)前通訊站號
[ %MW69 := 0 ] // 通訊完成標(biāo)志
[ %MW68 := 1 ] // 上次通訊站號
[ %MD36 := 0 ] // 通訊異常標(biāo)志
SR0 // 由用戶修改的對站數(shù)和各站所對應(yīng)的編號的定義
SR1 // 某站的第一個通訊任務(wù)
LD %M0 // 如果通訊脈沖啟動且通訊口閑置
AND %MSG.D
[ %SW76 := 1000] // 啟動通訊超時(shí)定時(shí)器
SR2 // 根據(jù)站號和通訊任務(wù)號填寫主站命令碼,并發(fā)送
LDN %M0 // 通訊完成并無錯誤
AND %MSG.D
AND [ %SW64 := 0]
[ %MW69 := 1 ] // 置通訊完成標(biāo)志
ST %SW76:X15 // 停止超時(shí)定時(shí)器
SR4 // 將從站(S系列I/O前端)數(shù)據(jù)存入對應(yīng)站號的內(nèi)部存儲子
LD %MSG.E // 通訊異常
AND [ %SW64 > 0 ]
[ %MW69 := 1] // 置通訊完成標(biāo)志
SR5 // 錯誤處理,置對應(yīng)站號的錯誤位
LD [ %MW69 = 1 ] // 通訊結(jié)束
S %M0 // 觸發(fā)下一個通訊任務(wù)脈沖
[ %MW69 := 0 ] // 清楚通訊結(jié)束標(biāo)志
SR3 // 下個站或下個通訊任務(wù)
LD [ %MW68 <> %MW34 ] // 如果是下個站
[ %MW68 := %34 ]
SR1 // 重新取得該站的首次任務(wù)號
LD [ %SW76 = 0 ] // 超時(shí),系統(tǒng)冷啟動
ST %S1
LD %S1
ST %S0
END
四、連接I/O定義區(qū)說明
1.連接S系列I/O前端個數(shù)定義單元: ?。ィ停祝?nbsp; 1 字 (用戶設(shè)置)
2.站址連接S系列I/O前端型號定義單元: %MW1~%MW32 32 字 (用戶設(shè)置)
每個站址所連接的S系列I/O前端的型號均由一個字節(jié)定義,%MW1為01號站址對應(yīng)連接S系列I/O前端型號定義單元 ,%MW32為32號站址對應(yīng)連接S系列I/O前端型號定義單元,用戶通過修改%MW1~%MW32的內(nèi)容(SR0子程序內(nèi))來確定32個站所對應(yīng)S系列I/O前端的型號。
各型S系列I/O前端對應(yīng)代碼如下:
◆ S1104/S1204=0
◆ S1108/S1208/S3108/S3208=1
◆ S1116/S1216/S3116/S3216/S3608=2
◆ S1316/S3316=3
◆ S1332/S3332=4
◆ S1416/S3416=5
◆ S1504/S3504=6
◆ S3508=7
五、I/O數(shù)據(jù)映射區(qū)說明
I/O數(shù)據(jù)映射區(qū): %MW70~%MW582 512 字(每站占16字) (用戶讀寫)
以第1號站址為例,起始I/O數(shù)據(jù)映射區(qū)地址為%MW70;(第N號站址I/O數(shù)據(jù)映射區(qū)起始地址為%MW70+(N-1)×16)
◆ S1104/S1204
4個模擬量輸入占前4個字 (%MW70) 讀
◆ S1108/S1208/S3108/S3208
8個模擬量輸入占前8個字 (%MW70) 讀
◆ S1116/S1216/S3116/S3216
16個模擬量輸入占前16個字 (%MW70) 讀
◆ S1316/S3316
A: 16個開關(guān)量輸入占前 1 字 (%MW70) 讀
B: 8 個開關(guān)量輸出占第 2 字 (%MW71) 寫
C: 8 個線圈狀態(tài)占第 3 字 (%MW72) 讀
◆ S1332/S3332
32個開關(guān)量輸入占前 2 字 (%MW70) 讀
◆ S1416/S3416
A: 16個開關(guān)量輸出占前 1 字 (%MW70) 寫
B: 16個線圈狀態(tài)占后2 字 (%MW71) 讀
◆ S1504/S3504
A: 8 個開關(guān)量輸出占第 1 字 (%MW70) 寫
B: 8 個線圈狀態(tài)占第 2 字 (%MW71) 讀
C: 4個模擬量輸出從第 3 字開始,占4字 (%MW72) 寫
D: 4個保持寄存器從第 7字開始,占4字 (%MW76) 讀
◆ S3508
A: 8個模擬量輸出從第 1字開始,占8字 (%MW70) 寫
B: 8個保持寄存器從第 8字開始,占8字 (%MW78) 讀
六、占用PLC軟件和硬件的資源
1.占用軟件資源
●占用執(zhí)行標(biāo)號:%L0~%L5
●占用子程序標(biāo)號:SR0~SR5
2.占用硬件資源
●占用程序空間:大約16%
●占用內(nèi)部存儲位:%M0
●占用內(nèi)部存儲子:%MW0~%MW582
●占用1毫秒定時(shí)器:%SW76
●占用通訊口2
七、USER_SET子程序舉例說明
該例子為PLC連接5個S系列I/O前端時(shí),修改SR0子程序例子,其中第一個前端(站址為01)型號為S1108,第二個前端(站址為02)型號為S1116,第三個前端(站址為03)型號為S1316,第四個前端(站址為04)型號為S1332,第五個前端(站址為05)型號為S1416。具體設(shè)置如下程序:
SR0:
LD 1
[ %MW0 := 5 ] // 系統(tǒng)站址個數(shù)(S系列I/O前端個數(shù))
[ %MW0 := 1 ] // 01號站址對應(yīng)S系列I/O前端型號為S1108
[ %MW0 := 2 ] // 02號站址對應(yīng)S系列I/O前端型號為S1116
[ %MW0 := 3 ] // 03號站址對應(yīng)S系列I/O前端型號為S1316
[ %MW0 := 4 ] // 04號站址對應(yīng)S系列I/O前端型號為S1332
[ %MW0 := 5 ] // 05號站址對應(yīng)S系列I/O前端型號為S1416
八、連接通訊正常/超時(shí)錯誤標(biāo)志
%MD36為PLC與S系列I/O前端連接通訊正常/超時(shí)錯誤標(biāo)志,共32位(32個站)。%MD36的最低位為01號站的連接通訊正常/超時(shí)錯誤標(biāo)志,%MD36的最高位為32號站的連接通訊正常/超時(shí)錯誤標(biāo)志。在通訊正常的情況下,連接通訊正常/超時(shí)錯誤標(biāo)志全部為0;當(dāng)某一個站址的S系列I/O前端通訊掉線(通訊超時(shí)錯誤)時(shí),此站址對應(yīng)的連接通訊正常/超時(shí)錯誤標(biāo)志位為1。
用戶在PLC的編程中或在上位機(jī)程序里,檢查連接通訊正常/超時(shí)錯誤標(biāo)志,即可判斷PLC與S系列I/O前端的通訊正常與否。
S11xx,S12xx,S31xx,S32xx,S3608系列的I/O前端當(dāng)通訊超時(shí)或掉線時(shí),其輸出顯示值為10004。
S1504,S3504,S3508系列的I/O前端當(dāng)輸出無回應(yīng)時(shí)通道回應(yīng)顯示值10005。
九、S系列I/O前端型號一覽
S1104 4路混接(標(biāo)準(zhǔn)電壓、標(biāo)準(zhǔn)電流、熱阻、熱偶)輸入,工程量值,8路報(bào)警繼電器輸出。
S1108 8路混接(標(biāo)準(zhǔn)電壓、標(biāo)準(zhǔn)電流、熱阻、熱偶)輸入,工程量值,4路報(bào)警繼電器輸出。
S1116 16路混接(標(biāo)準(zhǔn)電壓、標(biāo)準(zhǔn)電流、熱阻、熱偶)輸入,工程量值。
S1204 4路兩線制(4~20mA)變送器專用輸入,直接掛接變送器,工程量值,8路報(bào)警繼電器輸出。
S1208 8路兩線制(4~20mA)變送器專用輸入,直接掛接變送器,工程量值,8路報(bào)警繼電器輸出。
S1216 16路兩線制(4~20mA)變送器專用輸入,直接掛接變送器,工程量值。
S1316 16路開關(guān)信號輸入,8路開關(guān)量信號輸出。
S1332 32路開關(guān)信號輸入。
S1416 16路開關(guān)信號輸出。
S1504 4路隔離模擬信號輸出(4~20mA),8路開關(guān)信號量輸出。
S3508 8路隔離模擬信號輸出(4~20mA)
S3608 8路頻率信號輸入(上傳數(shù)據(jù)加8路記數(shù)器當(dāng)時(shí)數(shù)值)。
注:S3108等同S1108;S3208等同S1208;S3116等同S1116;S3216等同S1216;S3316等同S1316;S3332等同S1332;S3416等同S1416;S3504等同S1504;










