版權(quán)歸原作者所有,如有侵權(quán),請(qǐng)聯(lián)系我們

簡思 CAN 擴(kuò)展之 PLC 開關(guān)量輸出擴(kuò)展方式

楊咩咩
原創(chuàng)
自動(dòng)化案例分享,您身邊的自動(dòng)化案例專家
收藏

【支持 RO-擴(kuò)展的 PLC 系列】

三代 2424 四軸,兩軸(型號(hào):SFm-2424A4-RO,SFm-2424A2-RO);

新 三 代 雙 485 通 信 的 所 有 系 列 ( 型 號(hào) : SFa-0804MR/T ,

SFa-1008MR/T,SFa-1412MR/T,SFa-1616MR/T,SFa-1008A2MT,

SFa-1412A2MT,SFa-1616A2MT);

ES 升級(jí)版(型號(hào):ES-1212MR/T,ES-2424MR/T);

觸摸屏一體機(jī)(型號(hào):JS-SUP070-SFA32,JS-SUP070-SFA48)。

【PLC 擴(kuò)展方式】

能擴(kuò)展的 PLC 機(jī)身均帶有 CAN 擴(kuò)展功能,我司是通過采用 CAN 擴(kuò)展方式實(shí)現(xiàn) PLC

點(diǎn)位的擴(kuò)增?,F(xiàn)有的 PLC 支持的 CAN 擴(kuò)展距離長達(dá) 8 米,也就是 PLC 與 PLC 之

間的通信距離在 8 米以內(nèi)。(如果需要更長的距離,我司支持定做)CAN 的接線

方式均通用:端子接線:H-H,L-L。以手拉手的方式用線纜連接就行。(線纜多

采用 0.75 方的,其他粗細(xì)可以自己評(píng)估 ,建議電線不要太細(xì)小,有條件的話可

以全部采用屏蔽線)

【示例:PLC 開關(guān)量點(diǎn)位擴(kuò)展】一拖三的擴(kuò)展方式,以 SFm-2424A4-RO

這款 PLC 作為主機(jī),另外三臺(tái)同款 PLC 作為從機(jī) PLC。(其他型號(hào)操作方式一樣)

與 PLC 之間的連接示意圖:

PLC 編程軟件上的設(shè)置說明:1)編輯主機(jī)程序:新建一個(gè)程序文件,在軟件左

側(cè) CAN 擴(kuò)展位置處編輯擴(kuò)展指令,然后用一個(gè)時(shí)序環(huán)觸發(fā)擴(kuò)展程序的使能標(biāo)志。

①如下圖所示,在通信配置-CAN 總線擴(kuò)展位置編程:每一個(gè)從機(jī)對(duì)應(yīng)兩條指令。

比如序號(hào) 0-1,表示擴(kuò)展從機(jī) 1 的指令設(shè)置;序號(hào) 2-3,表示擴(kuò)展從機(jī) 2 的指令

設(shè)置;序號(hào) 4-5,表示擴(kuò)展從機(jī) 3 的指令設(shè)置。(擴(kuò)展的從機(jī)越多,指令就以此

類推)

指令的屬性設(shè)置:選中指令,右側(cè)會(huì)自動(dòng)彈出對(duì)應(yīng)的屬性框,再填寫

對(duì)應(yīng)的擴(kuò)展信息。

屬性設(shè)置說明:

*使能標(biāo)志:M76,啟動(dòng)從機(jī)接收指令的一個(gè)標(biāo)志(這個(gè)標(biāo)志無特別說明,任選一

個(gè) M,嚴(yán)禁與錯(cuò)誤標(biāo)志相同)。*傳送方向:接收方向表示 X 端(序號(hào) 0 表示擴(kuò)

展 X 指令);發(fā)送方向表示 Y(序號(hào) 1 表示擴(kuò)展 Y 指令)。(養(yǎng)成習(xí)慣先添加擴(kuò)

展輸入端)*擴(kuò)展功能:擴(kuò)展輸入/輸出端口。每條指令表示一種擴(kuò)展的對(duì)象。*

擴(kuò)展地址:需要擴(kuò)展的輸入輸出點(diǎn)位,主機(jī)上要增加的點(diǎn)位從本身最后一個(gè)點(diǎn)位

開始計(jì)算:(請(qǐng)注意:PLC 是 8 進(jìn)制,端口沒有含 8/9 的點(diǎn)位)比如 24 進(jìn)出 PLC

最后的點(diǎn)位是 X27 和 Y27,那么增加的端口就是從 X30 和 Y30 開始,擴(kuò)展地址就

從 3 開始寫。以 24 進(jìn)出 PLC 擴(kuò)展 24 進(jìn)出 PLC 為例,我們不計(jì)算含 8-9 的兩個(gè)端

口,那么主機(jī)的擴(kuò)展端口就是從 X30 和 Y30 開始。所以 X[3*10],表示擴(kuò)展第一

臺(tái)從機(jī)的 X0-X7,X10-X17,X20-X27 這 24 個(gè)輸入端口,那對(duì)應(yīng)到主機(jī)的點(diǎn)位,

就是從 X30 開始,X30-X37,X40-X47,X50-X57;第二臺(tái)從機(jī)則是從 X[6*10],

表示擴(kuò)展第二臺(tái)從機(jī)的 X0-X7,X10-X17,X20-X27 這 24 個(gè)輸入端口,那對(duì)應(yīng)到

主機(jī)的點(diǎn)位,就是從 X60 開始,X60-X67,X70-X77,X80-X87;注意擴(kuò)展地址不

能寫 4 或者 5,因?yàn)榈谝慌_(tái)從機(jī)占用 4-5 開頭的端口,所以第二臺(tái)只能從 6 開

始。

第三臺(tái)從機(jī)則是從 X[9*10],表示擴(kuò)展第三臺(tái)從機(jī)的 X0-X7,X10-X17,

X20-X27 這 24 個(gè)輸入端口,那對(duì)應(yīng)到主機(jī)的點(diǎn)位,就是從 X90 開始,X90-X97,

X100-X107,X110-X117。注意擴(kuò)展地址不能寫 7 或者 8,因?yàn)榈诙_(tái)從機(jī)占用 7-8

開頭的端口,所以第三臺(tái)只能從 9 開始。同理,設(shè)置輸出端 Y 也是一樣的。擴(kuò)展

點(diǎn)位的范圍主要是看從機(jī) PLC 本身支持點(diǎn)位數(shù)。*匹配 STDID:主從機(jī)設(shè)置的對(duì)

ID,從機(jī)也需要設(shè)置對(duì)應(yīng)的 ID,才能保證數(shù)據(jù)的正確傳送,每個(gè)指令的 ID 都是

不一樣的,不能重復(fù)。*數(shù)據(jù)長度:擴(kuò)展的點(diǎn)位容量,對(duì)應(yīng)到前面的擴(kuò)展地址,

每 1 個(gè)長度表示 0-7,共 8 個(gè)點(diǎn)位,程序里面是用 10 表示,所以 3*10,就是擴(kuò)

展 3 組,端口號(hào)分別是 0-7,10-17,20-27。*錯(cuò)誤標(biāo)志:指令自帶,默認(rèn)。

②設(shè)置完主機(jī)擴(kuò)展程序之后,需要在軟件左側(cè)參數(shù)-型號(hào)處,修改主機(jī)的輸入輸

出端口號(hào)數(shù)量。4 臺(tái) 24 進(jìn)出的 PLC,按每臺(tái)輸入端口 30 個(gè)總數(shù)計(jì)算,輸入點(diǎn)位

就寫 4*30=120,輸出點(diǎn)位也是同理寫 120。不管是擴(kuò)展多少點(diǎn)位的 PLC,都按照

點(diǎn)位最近的整數(shù)計(jì)算,比如擴(kuò)展 16 點(diǎn)位的 PLC,則這個(gè) PLC 按照 20 個(gè)點(diǎn)位計(jì)算。

如下圖所示:

③用一個(gè)空白的時(shí)序環(huán)或者組合幀,觸發(fā)擴(kuò)展程序中的使能標(biāo)志 M76,這樣才能

使用擴(kuò)展程序。

以上設(shè)置僅限擴(kuò)展程序設(shè)置,作為設(shè)置模板,其他的應(yīng)用控制程序,可以在時(shí)序

環(huán)或者組合幀編輯。所有控制指令均在主機(jī)程序完成。擴(kuò)展設(shè)置完成之后 ,軟

件內(nèi)部會(huì)自動(dòng)生成擴(kuò)展的輸入輸出端口號(hào),例如 24 進(jìn) 24 出的 PLC,擴(kuò)展了一組

輸入輸出,輸入端口選擇處就會(huì)增加 X30-X37 的選項(xiàng),輸出端口初就是增加Y30-Y37 的選項(xiàng)。主機(jī)中輸入端口選擇:

主機(jī)中輸出端口選擇:

2)編輯從機(jī) 1 程序:另外新建一個(gè)從機(jī)程序文件,不能在主機(jī)程序上操作,程

序命名:從機(jī) 1。新建程序文件后,先在軟件左側(cè) CAN 擴(kuò)展位置處編輯與主機(jī)相

呼應(yīng)的擴(kuò)展指令,然后在一個(gè)空白的時(shí)序環(huán),觸發(fā)從機(jī)的使能標(biāo)志,設(shè)置步驟同

主機(jī)設(shè)置類似,但是要注意到編程細(xì)節(jié)有所不一樣。①如下圖所示,從機(jī) 1 在通

信配置-CAN 總線擴(kuò)展位置要寫上跟主機(jī)相呼應(yīng)的兩條擴(kuò)展指令。

在右側(cè)屬性設(shè)置每個(gè)對(duì)應(yīng)擴(kuò)展要求。*使能標(biāo)志:M79,啟動(dòng)從機(jī)接收指令的一個(gè)

標(biāo)志(這個(gè)標(biāo)志無特別說明,任選一個(gè) M,嚴(yán)禁與錯(cuò)誤標(biāo)志相同)。*傳送方向:

發(fā)送方向表示 X 端(序號(hào) 0 表示擴(kuò)展 X 指令);接收方向表示 Y 端(序號(hào) 1 表示

擴(kuò)展 Y 指令)。這個(gè)方向設(shè)置跟主機(jī)程序的設(shè)置是個(gè)相反的過程,比如主機(jī)那邊

發(fā)送的指令到了從機(jī)這里就是給從機(jī)接收的,所以從機(jī)設(shè)置的 Y 端為接收,X 為

發(fā)送。*擴(kuò)展功能:擴(kuò)展輸入/輸出端口。*擴(kuò)展地址:需要擴(kuò)展的輸入輸出點(diǎn)位,

從機(jī)點(diǎn)位只能 X0 或 Y0 開始,所以擴(kuò)展地址寫 0。我們不計(jì)算含 8-9 的兩個(gè)端口。

從機(jī)的端口數(shù)都是從 0 開始,比如 X0 或者 Y0,所以填寫擴(kuò)展地址為 X[0*10]。*

匹配 STDID:主從機(jī)設(shè)置的對(duì) ID,主機(jī)里面擴(kuò)展的輸入端指令 ID 是“1”,輸出

端指令 ID 是“2”,那么在從機(jī)里面分別寫上對(duì)應(yīng)的 ID。*數(shù)據(jù)長度:擴(kuò)展的點(diǎn)

位容量,對(duì)應(yīng)到前面的擴(kuò)展地址。每 1 個(gè)長度表示 0-7,共 8 個(gè)點(diǎn)位,程序里面

是用 10 表示,所以 3*10,就是擴(kuò)展 3 組,端口號(hào)分別是 0-7,10-17,20-27。*

錯(cuò)誤標(biāo)志:指令自帶,默認(rèn)。

②設(shè)置完擴(kuò)展程序之后,從機(jī)程序不需要在軟件左側(cè)參數(shù)-型號(hào)處,修改 PLC 點(diǎn)

位,這個(gè)僅限主機(jī)設(shè)置。只需要用一個(gè)空白的時(shí)序環(huán)或者組合幀,觸發(fā)擴(kuò)展程序

中的使能標(biāo)志 M79,這樣才能保證擴(kuò)展有效使用。

3)編輯從機(jī) 2 程序:繼續(xù)新建一個(gè)從機(jī)程序文件,程序命名:從機(jī) 2。新建程

序文件后,先在軟件左側(cè) CAN 擴(kuò)展位置處編輯與主機(jī)相呼應(yīng)的擴(kuò)展指令,然后在

一個(gè)空白的時(shí)序環(huán),觸發(fā)從機(jī)的使能標(biāo)志。①如下圖所示,從機(jī) 2 在通信配置-CAN

總線擴(kuò)展位置要寫上跟主機(jī)相呼應(yīng)的兩條擴(kuò)展指令。

在右側(cè)屬性設(shè)置每個(gè)對(duì)應(yīng)擴(kuò)展要求。*使能標(biāo)志:M79,啟動(dòng)從機(jī)接收指令的一個(gè)

標(biāo)志(這個(gè)標(biāo)志無特別說明,任選一個(gè) M,嚴(yán)禁與錯(cuò)誤標(biāo)志相同)。*傳送方向:

發(fā)送方向表示 X 端(序號(hào) 0 表示擴(kuò)展 X 指令);接收方向表示 Y 端(序號(hào) 1 表示

擴(kuò)展 Y 指令)。這個(gè)方向設(shè)置跟主機(jī)程序的設(shè)置是個(gè)相反的過程,比如主機(jī)那邊

發(fā)送的指令到了從機(jī)這里就是給從機(jī)接收的,所以從機(jī)設(shè)置的 Y 端為接收,X 為

發(fā)送。*擴(kuò)展功能:擴(kuò)展輸入/輸出端口。*擴(kuò)展地址:需要擴(kuò)展的輸入輸出點(diǎn)位,

從機(jī)點(diǎn)位只能 X0 或 Y0 開始,所以擴(kuò)展地址寫 0。我們不計(jì)算含 8-9 的兩個(gè)端口。

從機(jī)的端口數(shù)都是從 0 開始,比如 X0 或者 Y0,所以填寫擴(kuò)展地址為 X[0*10]。*

匹配 STDID:主從機(jī)設(shè)置的對(duì) ID,主機(jī)里面擴(kuò)展的輸入端指令 ID 是“3”,輸出

端指令 ID 是“4”,那么在從機(jī)里面分別寫上對(duì)應(yīng)的 ID。*數(shù)據(jù)長度:擴(kuò)展的點(diǎn)

位容量,對(duì)應(yīng)到前面的擴(kuò)展地址。每 1 個(gè)長度表示 0-7,共 8 個(gè)點(diǎn)位,程序里面

是用 10 表示,所以 3*10,就是擴(kuò)展 3 組,端口號(hào)分別是 0-7,10-17,20-27。*

錯(cuò)誤標(biāo)志:指令自帶,默認(rèn)。

②用一個(gè)空白的時(shí)序環(huán)或者組合幀,觸發(fā)擴(kuò)展程序中的使能標(biāo)志 M79,這樣才能

保證擴(kuò)展有效使用。

4)編輯從機(jī) 3 程序:最后新建一個(gè)從機(jī)程序文件,程序命名:從機(jī) 3。新建程

序文件后,先在軟件左側(cè) CAN 擴(kuò)展位置處編輯與主機(jī)相呼應(yīng)的擴(kuò)展指令,然后在

一個(gè)空白的時(shí)序環(huán),觸發(fā)從機(jī)的使能標(biāo)志。①如下圖所示,從機(jī) 3 在通信配置-CAN

總線擴(kuò)展位置要寫上跟主機(jī)相呼應(yīng)的兩條擴(kuò)展指令。

在右側(cè)屬性設(shè)置每個(gè)對(duì)應(yīng)擴(kuò)展要求。

*使能標(biāo)志:M79,啟動(dòng)從機(jī)接收指令的一個(gè)標(biāo)志(這個(gè)標(biāo)志無特別說明,任選一

個(gè) M,嚴(yán)禁與錯(cuò)誤標(biāo)志相同)。*傳送方向:發(fā)送方向表示 X 端(序號(hào) 0 表示擴(kuò)

展 X 指令);接收方向表示 Y 端(序號(hào) 1 表示擴(kuò)展 Y 指令)。這個(gè)方向設(shè)置跟主

機(jī)程序的設(shè)置是個(gè)相反的過程,比如主機(jī)那邊發(fā)送的指令到了從機(jī)這里就是給從

機(jī)接收的,所以從機(jī)設(shè)置的 Y 端為接收,X 為發(fā)送。*擴(kuò)展功能:擴(kuò)展輸入/輸出

端口。*擴(kuò)展地址:需要擴(kuò)展的輸入輸出點(diǎn)位,從機(jī)點(diǎn)位只能 X0 或 Y0 開始,所

以擴(kuò)展地址寫 0。我們不計(jì)算含 8-9 的兩個(gè)端口。從機(jī)的端口數(shù)都是從 0 開始,

比如 X0 或者 Y0,所以填寫擴(kuò)展地址為 X[0*10]。*匹配 STDID:主從機(jī)設(shè)置的對(duì)

ID,主機(jī)里面擴(kuò)展的輸入端指令 ID 是“5”,輸出端指令 ID 是“6”,那么在從

機(jī)里面分別寫上對(duì)應(yīng)的 ID。*數(shù)據(jù)長度:擴(kuò)展的點(diǎn)位容量,對(duì)應(yīng)到前面的擴(kuò)展地

址。每 1 個(gè)長度表示 0-7,共 8 個(gè)點(diǎn)位,程序里面是用 10 表示,所以 3*10,就

是擴(kuò)展 3 組,端口號(hào)分別是 0-7,10-17,20-27。*錯(cuò)誤標(biāo)志:指令自帶,默認(rèn)。

②用一個(gè)空白的時(shí)序環(huán)或者組合幀,觸發(fā)擴(kuò)展程序中的使能標(biāo)志 M79,這樣才能

保證擴(kuò)展有效使用。


以上設(shè)置,就是主機(jī)到三臺(tái)從機(jī)的設(shè)置方式,請(qǐng)嚴(yán)格按照模板設(shè)置。此

為主機(jī)一拖三的設(shè)置方式,如果只要擴(kuò)展 1 臺(tái)或者是 3 臺(tái)以上,只需按照順序添

加或者減少主機(jī)的擴(kuò)展指令就行。需要注意的是,匹配 ID 一定要一致。