大家都曉得,很多品牌PLC的程序都能夠經(jīng)過(guò)軟件解密,那么一旦解密后程序就十分透明的顯現(xiàn)在了他人的眼中,而將設(shè)備賣給他人又將PLC程序整個(gè)鎖死的話又不實(shí)在際,甲方會(huì)無(wú)法維護(hù);而失密和維權(quán)更是中國(guó)市場(chǎng)經(jīng)久不衰的話題,其實(shí)德國(guó)的工程師歷來(lái)不會(huì)給本人的程序整體加密,而是運(yùn)用其他方式,既不影響發(fā)作毛病時(shí)的診斷,又能夠維護(hù)本人的中心秘密。今天給大家引見(jiàn)一下這些方式,供大家參考。
一、運(yùn)用西門子平安PLC或者博途的KNOWHOW功用
西門子平安PLC作為西門子主打平安功用的一款產(chǎn)品,它的性能無(wú)須置疑,而且平安PLC的程序塊加密后無(wú)法破解;能夠很好的維護(hù)中心。而博途PLC作為西門子的最新產(chǎn)品,其版權(quán)維護(hù)也是它的主要功用之一,KNOWHOW功用是軟硬件雙重加密,不加密的塊能夠正常監(jiān)控,沒(méi)有密碼的話以至無(wú)法下載到其他PLC;因而運(yùn)用博途的KNOWHOW功用既能夠?qū)⒊绦蚪唤o甲方便當(dāng)維護(hù),又能夠維護(hù)本人的中心程序不被竊取。
二、采用高級(jí)言語(yǔ)編寫(xiě)局部重要的工藝程序
西門子除了最根底的LAD梯形圖編程,F(xiàn)BD功用塊編程和STL語(yǔ)句表編程還有很多其他的方式,比方說(shuō)PCS7的CFC,SFC; 除此之外還有SCL,S7-GRAPH等等。關(guān)于這些言語(yǔ),普通的工控人員很難全部通曉,因而仿制難度大大提升,因而十分關(guān)鍵的工藝程序能夠由這些言語(yǔ)編寫(xiě),也能夠很好的維護(hù)本人的中心。
1.編程方式的采用
a)采用模塊化的程序構(gòu)造,采用符號(hào)名,參數(shù)化來(lái)編寫(xiě)子程序塊
b)盡量采用背景數(shù)據(jù)塊和多重背景的數(shù)據(jù)傳送方式
c)多采用間接尋址的編程方式
d)復(fù)雜系統(tǒng)的控制程序特別是一些帶有次第控制或配方控制的程序,能夠思索采用數(shù)據(jù)編程的方式,即經(jīng)過(guò)數(shù)據(jù)的變化來(lái)改動(dòng)系統(tǒng)的控制邏輯或控制次第。
用戶應(yīng)該盡量采用以上幾種高級(jí)層次的編程方式,這樣編出來(lái)的程序中嵌入系統(tǒng)的維護(hù)加密程序,才不容易被發(fā)現(xiàn)而仿制。
2.主動(dòng)維護(hù)辦法
a)應(yīng)用系統(tǒng)的時(shí)鐘
b)應(yīng)用程序卡或者CPU的ID號(hào)和序列號(hào)
c)應(yīng)用EEPROM的反寫(xiě)入功用,及一些需求設(shè)置的內(nèi)存堅(jiān)持功用 d)應(yīng)用系統(tǒng)提供的累時(shí)器功用
e)在用戶程序的數(shù)據(jù)塊中設(shè)置密碼
f)軟件上設(shè)置邏輯圈套
g)能夠反向應(yīng)用本人在編程時(shí)犯的錯(cuò)誤
3.被動(dòng)維護(hù)辦法
a)在內(nèi)存容量應(yīng)用答應(yīng)的條件下,不要?jiǎng)h除被以為是無(wú)用的程序
b)在數(shù)據(jù)塊里留下開(kāi)發(fā)者的標(biāo)識(shí),以便于未來(lái)遭到侵權(quán)時(shí)能夠取證
4.應(yīng)用反竊取技術(shù)的留意事項(xiàng)
a)在用戶程序中嵌入維護(hù)程序要顯得自然一些,不能很突兀的加出一段程序來(lái),代碼要盡量精簡(jiǎn),變量符號(hào)名應(yīng)與被嵌入程序段的變量堅(jiān)持分歧
b)常常一種維護(hù)加密手腕是不夠的,應(yīng)該多種辦法并用,并且這些維護(hù)程序一旦激活后對(duì)系統(tǒng)形成的結(jié)果也應(yīng)該盡量不同,形成所謂的“地雷效應(yīng)”,從而增加程序被竊取的難度,時(shí)間與本錢,短時(shí)間內(nèi)讓剽竊者一籌莫展,
c)維護(hù)好程序的原代碼,假如需求托付程序的,在不影響用戶對(duì)設(shè)備維護(hù)的前提下,應(yīng)對(duì)托付的程序做恰當(dāng)?shù)募夹g(shù)處置,如刪除局部符號(hào)名,采用上載的程序或數(shù)據(jù)塊
d)做好嚴(yán)厲的測(cè)試,以防止維護(hù)程序的不完善惹起的誤動(dòng)作而帶來(lái)的不用要的費(fèi)事,同時(shí)也能降低售后效勞的的費(fèi)用。
三、 運(yùn)用通訊功用
在實(shí)踐應(yīng)用中,常常會(huì)遇到一些系統(tǒng)間需求數(shù)據(jù)交流的問(wèn)題(多個(gè)PLC之間,PLC與第三方儀表之間),無(wú)論是西門子產(chǎn)品之間還是西門子產(chǎn)品與第三方產(chǎn)品之間,倡議運(yùn)用通訊的計(jì)劃來(lái)替代模仿量或開(kāi)關(guān)量之間的信號(hào)互連的計(jì)劃。關(guān)于前者,仿制者只能看見(jiàn)一條硬件的通訊線,至于有幾數(shù)據(jù)是如何經(jīng)過(guò)通訊交流的,仿制者必需要花精神研討詳細(xì)的用戶程序才干搞分明;而關(guān)于后者,開(kāi)發(fā)者是省心省力了,仿制者也是了如指掌,盡收眼底。
關(guān)于一些變頻器或者伺服電機(jī)等的程序設(shè)計(jì),普通有多種方式,能夠線路直接控制還能夠通訊控制,那么運(yùn)用通訊的方式的話會(huì)使得程序增加了仿制的難度,比方說(shuō)PLC關(guān)于伺服驅(qū)動(dòng)器的控制有多種,簡(jiǎn)單一些的能夠是脈沖直接控制或者模仿量控制,這種方式就容易仿制,假如換成通訊控制,則會(huì)使得程序復(fù)雜很多,加上仿制者假如對(duì)報(bào)文不熟習(xí),很難去仿制。
有時(shí)分控制系統(tǒng)會(huì)由多個(gè)子控制系統(tǒng)構(gòu)成,由此構(gòu)成多CPU加人機(jī)界面的網(wǎng)絡(luò),西門子S7-200產(chǎn)品常見(jiàn)的是PPI網(wǎng)絡(luò),S7-300400產(chǎn)品常見(jiàn)的是MPI網(wǎng)絡(luò),通常是人機(jī)界面與CPU之間的數(shù)據(jù)交流,而我們也可在CPU的用戶程序中添加一些無(wú)須組態(tài)的S7根本通訊功用(S7-200可用NETRNETW指令,S7-300400能夠用X_PUTX_GET指令),定時(shí)或不定時(shí)地在CPU之間停止少量數(shù)據(jù)交流,經(jīng)過(guò)這些數(shù)據(jù)完成子系統(tǒng)控制邏輯的互鎖。關(guān)于這樣的系統(tǒng),仿制者要剖析某一子系統(tǒng)的程序也不是件非常容易事情。
四、采用面板類型的人機(jī)界面
盡量在自動(dòng)化系統(tǒng)中運(yùn)用面板類型的人機(jī)界面來(lái)替代單一的按鈕指示燈,很多人機(jī)界面沒(méi)有源程序的話只要備份和恢復(fù)功用,完整能夠完成維護(hù)功用還失密了HMI這一層的程序,而關(guān)于一個(gè)PLC系統(tǒng)而言,即便具有了源程序但是缺失了HMI局部的標(biāo)志也是很難仿制的。
而且開(kāi)發(fā)者能夠在面板的畫(huà)面上加上明顯的廠家標(biāo)識(shí)和聯(lián)絡(luò)方式等信息,仿制者就不能原樣照抄。
假如就使得假如仿制者想要復(fù)制程序的話,就必需重新編寫(xiě)操作面板的程序以至于PLC的程序,而開(kāi)發(fā)者則可應(yīng)用面板和PLC數(shù)據(jù)接口的一些特殊功用區(qū)(如西門子面板的區(qū)域指針,或VB腳本)來(lái)控制PLC的程序執(zhí)行。這樣的PLC程序在沒(méi)有HMI源程序的狀況下只能靠猜想和在線監(jiān)視來(lái)獲取PLC內(nèi)部變量的變化邏輯,費(fèi)時(shí)費(fèi)力,極大的增加了仿制剽竊的難度。
五、采用非規(guī)范的人機(jī)界面
德國(guó)工程師都愿意運(yùn)用這種方式。在中國(guó),大多數(shù)工程師都愿意運(yùn)用WINCC,INTOUCH或者組態(tài)王等等,但其實(shí)除了這些軟件,還有一種愈加高大上的編寫(xiě)方式,那就是應(yīng)用VB本人寫(xiě)程序,而關(guān)于軟件與PLC的接口,大家能夠選擇LIBNODAVE或者其他庫(kù)等,這種方式寫(xiě)出來(lái)的人機(jī)界面有著很多益處,首先沒(méi)有版權(quán)問(wèn)題,由于VB軟件是免費(fèi)的,而且關(guān)于WINDOW系統(tǒng)的晉級(jí)來(lái)說(shuō)只需求簡(jiǎn)單的添加幾個(gè)文件即可完成,不像WINCC那樣,假如window晉級(jí)了,需求大量修正文件。
普通人都無(wú)法修正,更別提仿制了;沒(méi)有很好的計(jì)算機(jī)編程功底的話就不敢隨便修正,而僅僅有計(jì)算機(jī)功底又沒(méi)有PLC或者工藝根底的話也是無(wú)法更改的。