產(chǎn)品展廳收藏該商鋪

您好 登錄 注冊

當(dāng)前位置:
上海維特銳實業(yè)發(fā)展有限公司>資料下載>三菱 PLC 解密

資料下載

三菱 PLC 解密

閱讀:11090          發(fā)布時間:2012-6-28
提 供 商 上海維特銳實業(yè)發(fā)展有限公司 資料大小 1.9MB
資料圖片 下載次數(shù) 3102次
資料類型 WORD 文檔 瀏覽次數(shù) 11090次
免費下載 點擊下載    

三菱 PLC 三菱PLC FX3U解密研究進(jìn)展

    我是從2010年5月26日開始研究FX3U解密,查遍網(wǎng)絡(luò)找不到只言半語,看來FX3U解密沒人研究,或者研究的人怕人家學(xué),竟然找不到一丁點有用的信息。看來只有靠自力更生了。 雖然目前已經(jīng)研究成功了FX3U解密,免拆機的,讀出正確程序和參數(shù),包括禁止上載的問題也能讀出正確程序和參數(shù)。但我還是想把當(dāng)時研究解密的過程整理出來,供有興趣的朋友參考,我這里所講的過程也是我實踐研究的過程,這當(dāng)中也難免要走彎路的。但zui終是要通往成功的大道的。
   其實 沒必要搞得這么神秘,PLC解密沒那么復(fù)雜。
    1、三菱 PLC FX3U 用的編程軟件必須采用GX Developer8.10以上的版本,我是從網(wǎng)上下載個GX Developer Version8.52E就可以支持FX3U的編程。啟動GX Developer,從幫助菜單就可以看到編程軟件的版本號,如下圖所示。
     從工程菜單,創(chuàng)建新工程,PLC系列中選擇FXCPU,PLC類型中選FX3U(C)就可以對FX3U進(jìn)行編程的各種操作。
    2、FX3U的加密方法是:打開GX Developer 后從菜單 "在線—》登錄關(guān)鍵字—》新建登錄,改變....."進(jìn)入,顯示如下界面:

     FX3U
可以設(shè)置兩個密碼,即關(guān)鍵字和第2關(guān)鍵字,每個有8個字符(字符只能是0-F共16個16進(jìn)制的字符),這樣說明如果兩個關(guān)鍵字都設(shè)定的話密碼總共有16個字符。這樣可以組合多少種密碼呢,即16^16=18446744073709551616.這是個天文數(shù)字,有人想要用窮舉法解密,那是不可能的。
    3、首先隨便編個測試程序,不加密,兩個關(guān)鍵字都不設(shè)定,寫入FX3U,然后用FXWIN軟件選取FX2N型號讀出程式,竟然能讀出正確的程序來。相信三菱FX PLC的FXWIN程軟件大家應(yīng)該很熟悉了。界面如下所示:
    用自編的FX三菱解密軟件連線顯示,F(xiàn)X3U PLC竟然顯示成FX2N版本號為2.41,說明FX3U是FX2N的版本。
    4、繼續(xù)測試,用 GX Developer 只設(shè)定第1關(guān)鍵字,第2關(guān)鍵字為空。
用自編的FX三菱解密軟件(可解FX0N、1N、2N、1S、FX2),進(jìn)行解密。竟然解出密碼來。按FX2N型號進(jìn)行下載也能下載程序,說明當(dāng)只設(shè)一個關(guān)鍵字的時候,F(xiàn)X3U加密機制和FX2N的是一模一樣的。
CP1H解密 FX3U解密 FX3G解密 FPX解密 CP1E解密 CJ1M解密 CP1Eusb口解密 MT6000解密 MT8000解密 GOT1000解密
看看我的FX解密軟件:
    5、繼續(xù)測試,用 GX Developer 同時設(shè)定第1關(guān)鍵字,第2關(guān)鍵字。
這時用老的解密軟件解不出來了,用老的編程軟件FXGP-WIN-C,企圖讀入程序,顯示通信錯誤。
    6、看來只有祭出法寶了,那就是PLC解密通用的法寶串口監(jiān)控軟件。
    先啟用串口監(jiān)控軟件,設(shè)置好開始監(jiān)控,然后運行編程軟件。注意順序要搞對喔。
從菜單-》在線-》傳輸設(shè)置,進(jìn)入傳輸設(shè)置界面,然后“按通信測試”鍵,顯示CPU類型為FX3U,通信成功。
此時從串口監(jiān)控到的數(shù)據(jù)是:
#       Time        Function                        Data ( Hex ) 
1       [00000000]  IRP_MJ_CREATE                   Port Opened - Gppw.exe
2       [00000000]  IOCTL_SERIAL_SET_BAUD_RATE      Baud Rate: 115200
3       [00000000]  IOCTL_SERIAL_SET_LINE_CONTROL   StopBits: 1, Parity: Even, DataBits: 7
4       [00000001]  IRP_MJ_WRITE                    Length: 0001, Data: 05
5       [00000002]  IRP_MJ_READ                     Length: 0001, Data: 06
6       [00000002]  IRP_MJ_WRITE                    Length: 0011, Data: 02 30 30 45 30 32 30 32 03 36 43
7       [00000003]  IRP_MJ_READ                     Length: 0001, Data: 02
8       [00000003]  IRP_MJ_READ                     Length: 0001, Data: 42
9       [00000003]  IRP_MJ_READ                     Length: 0001, Data: 31
10      [00000003]  IRP_MJ_READ                     Length: 0001, Data: 35
11      [00000003]  IRP_MJ_READ                     Length: 0001, Data: 45
12      [00000003]  IRP_MJ_READ                     Length: 0001, Data: 03
13      [00000003]  IRP_MJ_READ                     Length: 0001, Data: 46
14      [00000003]  IRP_MJ_READ                     Length: 0001, Data: 30
15      [00000004]  IRP_MJ_WRITE                    Length: 0011, Data: 02 30 30 45 43 41 30 32 03 38 45
16      [00000004]  IRP_MJ_READ                     Length: 0001, Data: 02
17      [00000004]  IRP_MJ_READ                     Length: 0001, Data: 37
18      [00000004]  IRP_MJ_READ                     Length: 0001, Data: 31
19      [00000004]  IRP_MJ_READ                     Length: 0001, Data: 33
20      [00000004]  IRP_MJ_READ                     Length: 0001, Data: 46
21      [00000004]  IRP_MJ_READ                     Length: 0001, Data: 03
22      [00000004]  IRP_MJ_READ                     Length: 0001, Data: 45
23      [00000004]  IRP_MJ_READ                     Length: 0001, Data: 34
24      [00000005]  IRP_MJ_WRITE                    Length: 0011, Data: 02 30 30 45 30 32 30 32 03 36 43
25      [00000006]  IRP_MJ_READ                     Length: 0001, Data: 02
26      [00000006]  IRP_MJ_READ                     Length: 0001, Data: 42
27      [00000006]  IRP_MJ_READ                     Length: 0001, Data: 31
28      [00000006]  IRP_MJ_READ                     Length: 0001, Data: 35
29      [00000006]  IRP_MJ_READ                     Length: 0001, Data: 45
30      [00000006]  IRP_MJ_READ                     Length: 0001, Data: 03
31      [00000006]  IRP_MJ_READ                     Length: 0001, Data: 46
32      [00000006]  IRP_MJ_READ                     Length: 0001, Data: 30
33      [00000006]  IRP_MJ_WRITE                    Length: 0011, Data: 02 30 30 45 43 41 30 32 03 38 45
34      [00000007]  IRP_MJ_READ                     Length: 0001, Data: 02
35      [00000007]  IRP_MJ_READ                     Length: 0001, Data: 37
36      [00000007]  IRP_MJ_READ                     Length: 0001, Data: 31
37      [00000007]  IRP_MJ_READ                     Length: 0001, Data: 33
38      [00000007]  IRP_MJ_READ                     Length: 0001, Data: 46
39      [00000007]  IRP_MJ_READ                     Length: 0001, Data: 03
40      [00000007]  IRP_MJ_READ                     Length: 0001, Data: 45
41      [00000007]  IRP_MJ_READ                     Length: 0001, Data: 34
42      [00000015]  IRP_MJ_CLOSE                    Port Closed
開始花大量時間來分析這些數(shù)據(jù)吧。
    上述 從串口監(jiān)控到的數(shù)據(jù)是十六進(jìn)制的數(shù)據(jù),還真不好看,先轉(zhuǎn)換成ASC碼,就好看多了。
#       Time        Function                        Data ( String ) 
1       [00000000]  IRP_MJ_CREATE                   Port Opened - Gppw.exe
2       [00000000]  IOCTL_SERIAL_SET_BAUD_RATE      Baud Rate: 115200
3       [00000000]  IOCTL_SERIAL_SET_LINE_CONTROL   StopBits: 1, Parity: Even, DataBits: 7
4       [00000001]  IRP_MJ_WRITE                    Length: 0001, Data:
5       [00000002]  IRP_MJ_READ                     Length: 0001, Data:
6       [00000002]  IRP_MJ_WRITE                    Length: 0011, Data: 00E02026C
7       [00000003]  IRP_MJ_READ                     Length: 0001, Data:
8       [00000003]  IRP_MJ_READ                     Length: 0001, Data: B
9       [00000003]  IRP_MJ_READ                     Length: 0001, Data: 1
10      [00000003]  IRP_MJ_READ                     Length: 0001, Data: 5
11      [00000003]  IRP_MJ_READ                     Length: 0001, Data: E
12      [00000003]  IRP_MJ_READ                     Length: 0001, Data:
13      [00000003]  IRP_MJ_READ                     Length: 0001, Data: F
14      [00000003]  IRP_MJ_READ                     Length: 0001, Data: 0
15      [00000004]  IRP_MJ_WRITE                    Length: 0011, Data: 00ECA028E
16      [00000004]  IRP_MJ_READ                     Length: 0001, Data:
17      [00000004]  IRP_MJ_READ                     Length: 0001, Data: 7
18      [00000004]  IRP_MJ_READ                     Length: 0001, Data: 1
19      [00000004]  IRP_MJ_READ                     Length: 0001, Data: 3
20      [00000004]  IRP_MJ_READ                     Length: 0001, Data: F
21      [00000004]  IRP_MJ_READ                     Length: 0001, Data:
22      [00000004]  IRP_MJ_READ                     Length: 0001, Data: E
23      [00000004]  IRP_MJ_READ                     Length: 0001, Data: 4
24      [00000005]  IRP_MJ_WRITE                    Length: 0011, Data: 00E02026C
25      [00000006]  IRP_MJ_READ                     Length: 0001, Data:
26      [00000006]  IRP_MJ_READ                     Length: 0001, Data: B
27      [00000006]  IRP_MJ_READ                     Length: 0001, Data: 1
28      [00000006]  IRP_MJ_READ                     Length: 0001, Data: 5
29      [00000006]  IRP_MJ_READ                     Length: 0001, Data: E
30      [00000006]  IRP_MJ_READ                     Length: 0001, Data:
31      [00000006]  IRP_MJ_READ                     Length: 0001, Data: F
32      [00000006]  IRP_MJ_READ                     Length: 0001, Data: 0
33      [00000006]  IRP_MJ_WRITE                    Length: 0011, Data: 00ECA028E
34      [00000007]  IRP_MJ_READ                     Length: 0001, Data:
35      [00000007]  IRP_MJ_READ                     Length: 0001, Data: 7
36      [00000007]  IRP_MJ_READ                     Length: 0001, Data: 1
37      [00000007]  IRP_MJ_READ                     Length: 0001, Data: 3
38      [00000007]  IRP_MJ_READ                     Length: 0001, Data: F
39      [00000007]  IRP_MJ_READ                     Length: 0001, Data:
40      [00000007]  IRP_MJ_READ                     Length: 0001, Data: E
41      [00000007]  IRP_MJ_READ                     Length: 0001, Data: 4
42      [00000015]  IRP_MJ_CLOSE                    Port Closed
從上面數(shù)據(jù)看到,其實只有四個回合的數(shù)據(jù)通信,其中還有兩個回合是一模一樣的重復(fù)的數(shù)據(jù)。
分析如下:
電腦發(fā):00E0202      ’查詢D8001的值
PLC回:B15E           ‘回復(fù)為5EB1,回復(fù)的數(shù)據(jù)高位在后、低位在前,所以要對調(diào)個位,
                                       5EB1轉(zhuǎn)為10進(jìn)數(shù)據(jù)值為:24241,24表示PLC型號FX2N或3U,241表示版本號
電腦發(fā):00ECA02碼   ’查詢D8101的值
PLC回:713F            ‘回復(fù)為3F71轉(zhuǎn)為10進(jìn)數(shù)據(jù)值為:16241,16表示PLC型號為FX3U,241表示版本號
 以上這一大段數(shù)據(jù)也就是編程軟件查詢一下PLC的型號,以便接下來按相應(yīng)的通迅協(xié)議進(jìn)行通迅。
    7、接下來就編個簡單的程序,從PLC上載程序,對上載過程的數(shù)據(jù)交換進(jìn)行監(jiān)控,現(xiàn)抄錄如下:
一次完整的FX3U上載程序的數(shù)據(jù)
這上面我標(biāo)明了通迅協(xié)議的注釋,明眼人一看就明白
PLC上載參數(shù)和上載程序采用的命令協(xié)議是什么。
這上載參數(shù)與程序的過程中有一大段是先讀取D區(qū)的數(shù)據(jù),關(guān)于這些D區(qū)數(shù)據(jù)的意思在GX-D里有說明,我也整理出來,有助于大家理解這些參數(shù)的意義。

 


   
到了這一步,我停了好長一段時間沒有研究,因為解密有時是要靠靈感的,沒有靈感是沒辦法找到解密方法的。資料請瀏覽:http://www.200plc.cn
 
經(jīng)過大概半年左右,有個解密的同行,一起再探討此事時說能不能用我們當(dāng)時解松下FPX的方法試一下FX3U,于是又是幾個不眠之夜,終于搞定了,可以上載程序和參數(shù),可是當(dāng)時只能是拆機。但是靈感一旦涌現(xiàn),就會像泉水一樣*,一個又一個的設(shè)想,一次又一次的測試,終于搞定FX3U解密。程序、參數(shù)、內(nèi)存全部OK。
  上面的通迅數(shù)據(jù)中好好研究就有解密的命令喔。
CP1H解密 FX3U解密 FX3G解密 FPX解密 CP1E解密 CJ1M解密 CP1Eusb口解密 MT6000解密 MT8000解密 GOT1000解密
 
NEW CP1H CP1E CP1L解密:全國CP1H解密直讀密碼 所以不存在V1.2版本的功能塊被刪的問題 是目前zui安全的解密方式。網(wǎng)上目前還沒有查到能直讀密碼的。
NEW FX3U FX3UC FX3G解密:通過協(xié)議解FX3U系列PLC密碼 免拆機 可以在機臺上直接解密 安全可靠 也是當(dāng)前PLC解密界比較好的解密方法。包括的禁止上傳的解密。
NEW FPX FPG解密:能原始算出密碼 解決禁止上載的問題保證不破壞原程序和內(nèi)存(FP-X,F(xiàn)PG等,包括禁止上載)。
NEW 臺達(dá)EH2 ES2解密 臺達(dá)EH2 ES2等高加密產(chǎn)品
NEW Koyo(光洋)解密 光洋SH SH1 SM SM1 SN SZ SU SR DL-305 DL-05 DL-06系列PLC 解密。
NEW 艾默生PLC解密 EC10 EC20系列等
NEW 歐姆龍PLC解密 CQM1H CJ1M CJ1G CJ1H CS1D CS1G CS1H CP1L CP1H CP1E解密
NEW 松下GT高加密屏 GT-01 GT-32等
NEW 三菱GOT1000解密 GOT1000全系列解密
NEW 維綸通觸摸屏解密MT6000解密 MT8000解密 MT6056解密 MT6070解密 MT8070解密 MT6100解密 MT8100解密 MT8104解密人機界面解密
NEW 三菱Q系列解密Q00,Q01,Q00J,Q02,Q02H,Q06H,12H等 
 

歐姆龍CP1H解密、CP1E USB口解密以及OMRON CP系列PLC加密方式的交流
 
 歐姆龍CP1H解密、CP1E解密用232口進(jìn)行的早就是已經(jīng)是公開的秘密,USB口的解密現(xiàn)在還是鳳毛麟角,從網(wǎng)上有人號稱“國內(nèi)*USB解密“,到我今天能用USB口解密僅用14天時間,一開始我想從*那了解相關(guān)情況,遇到的都是技術(shù)封鎖,經(jīng)過充分研究后,我現(xiàn)在透露,其實USB解密與232解密是一模一樣的原理。USB發(fā)送的命令其實在232口解密研究時,我就研究過,大家先看看下面這個多年前我寫的的一個軟件界面,用于時序恢復(fù)的。
         因為多年前研究的sysway協(xié)議與ToolBus協(xié)議在我的軟件里早就有了,校驗,命令格式,早就熟悉了,現(xiàn)在一看USB口是同樣的道理,都沒有太大變化就不在活下。下面上個USB口數(shù)據(jù)的截圖,內(nèi)行的工控人士一看就明白了。
       USB傳送的數(shù)據(jù):
         下圖是關(guān)于OMRON USB口的參數(shù)說明的截圖:
        有了上面參數(shù),你再研究一下USB原理關(guān)于URB、IRP、BLUK/INT 、STAK、SUBMIT_URB的說明。
        當(dāng)然還是離不開下面這個軟件:
         只要你弄清楚這些,那么USB接口解密你就不在話下了。
        CP1H、CJM1、232口解密并直讀密碼,是我較早發(fā)布的,還找不到其他有人聲稱直讀密碼,現(xiàn)在,只有USB口的PLC我先試了不要密碼的解密方法已成功了,同樣也能讀出密碼,讀出密碼有什么好處呢,一是可能繞過功能塊,解密安全可靠,另外,當(dāng)你有多臺同一個編程員編的程序,那么密碼相同的可能性是80%,同時觸摸屏的密碼也往往和PLC一樣。這樣搞定一臺就等于搞定全部。何樂而不為呢。
        zui近經(jīng)常有初學(xué)者在網(wǎng)上詢問關(guān)于如何對OMRON CP、CJ、CS系列PLC程序加密保護(hù)的問題,下面就這個問題,我們以CP1H為例共同來探討一下,其他型號是一樣的道理的。
      首先,一個PLC的加密程度,以及破解的難易程度,已經(jīng)在一定程度影響到PLC銷售的*了,特別是近幾年這個現(xiàn)象越來越明顯了,特別是小型機的銷售的影響,所以幾大PLC品牌廠商也在玩起加密的貓捉老鼠游戲來了,比如這個CP1系統(tǒng)的PLC能加多少種密碼呢,細(xì)細(xì)數(shù)來有5個級別的加密。而且加密的復(fù)雜程度比當(dāng)年CPM系列產(chǎn)品成幾何級別的增加。
     我們再來看看這5個級別的加密是什么呢,在CXP編程軟件中這5種加密稱為UM密、任務(wù)密,功能塊密,禁止傳送程到儲存卡,禁止覆蓋,其中前三個加密方式是采用密碼加密,后兩個加密是采用標(biāo)志加密的。下面分析一下這5種密的作用以及如何操作,對一個已加密的PLC我們判定加密情況的方法。
     OMRON PLC編程軟件目前要數(shù)CXP功能zui全,也是國內(nèi)工控人用的zui多的軟件,在這軟件之前,我是從當(dāng)年LLS編程軟件用起的,到后來SSS編程軟件,這是一個中文的界面了,再來就是CPT可能就好多人知曉了,這當(dāng)中還有用過SYSWIN編程軟件,是從歐洲老外那得到了,功能比國內(nèi)流行的CPT好,再來就是這個CXP,CXP的全稱是CX-Programer,我用到的目前版本是9.2,有沒有再高版本我不曉的了。
 
閑話少說,啟動CXP吧!
下面這個界面大家肯定很熟悉,這是直接點擊一個CXP文件,CXP就直接關(guān)連打開到這個界面,我這里是打開了一個叫N多段速cp1h.cxp文件。默認(rèn)情況下CXP左邊這個窗口稱工作區(qū),右邊這個窗口我不曉得,就叫它工作子區(qū),下面的那個窗口叫輸出。
在工作區(qū)窗口里有個新工程,新工程下面有個新PLC1,右擊新PLC1,有個彈出菜單,彈出菜單zui下面有個"屬性(o)"菜單。單擊"屬性(o)"菜單,在PLC屬性界面,選擇“保護(hù)”選項卡,我們來到了加密設(shè)置的地方。如下圖。
在這里你可以設(shè)UM讀取密碼,密碼設(shè)置是8個字符,字符可以是0-9,a-z,A-Z。
任務(wù)讀保護(hù)密碼,同樣密碼設(shè)置是8個字符,字符可以是0-9,a-z,A-Z。
禁止存入內(nèi)存卡和從PLC傳送程序,可以選擇V或不選擇。
禁止覆蓋受保護(hù)程序,可以選擇V或不選擇。
看下圖,是全部選擇加密的zui高等級了。
設(shè)定好退出,必須按按CXP軟件中工具欄PLC設(shè)置
 
保護(hù)到PLC還有如下幾項細(xì)節(jié)必須注意。
1、設(shè)置密碼有離線和在線兩個情況。
離線狀態(tài)下,執(zhí)行 ,這時是保護(hù)程序的任務(wù)密,只在保護(hù)電腦里的文件,并沒有保護(hù)到PLC里,離線狀態(tài)下,按下
CPX程序中有加任務(wù)保護(hù)的程序段就被鎖保護(hù)起來,看不到程序圖了。沒有任務(wù)保護(hù)的程序段就不加鎖。如下圖所示
為什么有的程序加鎖有的不加鎖呢,這是在CP、CJ、CS這些新型OMRON PLC中引入了任務(wù)的概念。
我們一起來看看CP1的編程手冊上怎么講的:
       在 CP1 中,可以將程序按功能、控制對象、工序、等進(jìn)行劃分,分割為稱為「任務(wù)」的執(zhí)行單位,可將用戶程序結(jié)構(gòu)化。因此具有以下優(yōu)點。
1 .可將程序分割由多人共同開發(fā)。
2 .可將程序作為模塊實現(xiàn)標(biāo)準(zhǔn)化。
3 .提高總體的響應(yīng)性能。
4 .修正 · 調(diào)試更加簡便。
5 .程序的內(nèi)務(wù)處理變得容易。
6 .用戶程序的理解變得容易。
CP1系列PLCzui大能管理 288 個任務(wù)程序。 其中周期執(zhí)行任務(wù)32個(NO.0-31) ,中斷任務(wù)256個(NO.0-255)
CPU 單元對周期執(zhí)行任務(wù)按其編號由小到大的順序執(zhí)行。當(dāng)發(fā)生中斷原因時,中止該任務(wù)的執(zhí)行改而執(zhí)行中斷任務(wù)。之后再執(zhí)行被中止的任務(wù)。
上例中新程序1(00)就是周期執(zhí)行任務(wù)0也叫循環(huán)任務(wù)0,新程序2(01)就是循環(huán)任務(wù)1,
如果要對任務(wù)加密保護(hù)就必須右擊該程序名—》屬性—》保護(hù)—》選定任務(wù)讀保護(hù),對于沒有選定任務(wù)讀保護(hù)的程序,當(dāng)在離線執(zhí)行 時,該程序就不加鎖,選定任務(wù)讀保護(hù)的程序,該程序就加鎖。加鎖后程序就看不到。同時PLC屬性—》保護(hù)中的任務(wù)密也就成星號。保存后再打開,也看不到具體的任務(wù)密。
 在線狀態(tài)下,執(zhí)行 ,這時保護(hù)PLC內(nèi)部程序的UM密和任務(wù)密,UM密是首先被激發(fā)的,任務(wù)密加載前提條件是PLC里面的任務(wù)必須有選定任務(wù)讀保護(hù),也就是下載過任務(wù)讀保護(hù)的任務(wù),如果下載的是沒有選定任務(wù)讀保護(hù),那么在線狀態(tài)下,執(zhí)行 ,將提示無法加密任務(wù)密,必須重新下載有任務(wù)保護(hù)的程序。
 2、UM密碼和任務(wù)密zui多可以設(shè)8位字符,包括0-9的數(shù)字,a-Z,26個字母分大小寫不一樣,加載了UM密,PLC里面的程序就被保護(hù),沒有解除密碼,PLC程序?qū)o法上載。加載了任務(wù)密后,PLC程序即使上載了,也會在程序中顯示加鎖狀態(tài),不能看到程序。
3、設(shè)置禁止存入內(nèi)存卡和從PLC傳送程序和禁止覆蓋受保護(hù)程序,必須程序重新傳送到PLC一次,才能生效。
關(guān)于禁止存入內(nèi)存卡和從PLC傳送程序說明,
經(jīng)常有人問內(nèi)存卡什么樣,什么型號,裝在哪里呢。
OMRON儲存卡型號是:CP1W-ME05M
什么樣子,我上個圖,你就明白了。
CP1W-ME05M是容量為8M的儲存卡。
如果沒有勾選“禁止存入內(nèi)存卡”,那么PLC的程序可以傳送到儲存卡里備份,當(dāng)PLC已經(jīng)設(shè)置了UM密、任務(wù)密,傳送到儲存卡里的程序同樣會有UM密、任務(wù)密,如果勾選設(shè)置“禁止存入內(nèi)存卡”,那么PLC的程序就不可以傳送到卡里備份。
關(guān)于禁止覆蓋受保護(hù)程序說明,
如果沒有勾選“禁止覆蓋受保護(hù)程序”,那么如果想清除PLC的程序,可以從PLC的菜單選擇清除PLC,或者傳送一個空白程序到PLC中,
當(dāng)勾選“禁止覆蓋受保護(hù)程序”,同時PLC又有UM密、任務(wù)密時,沒有解除密碼前就清除不了PLC里的程序,想用一個新的程序覆蓋也不行,就是禁止寫入的意思。
當(dāng)采用這種“禁止覆蓋受保護(hù)程序”時,如果你忘記了密碼,又沒有空白的儲存卡,那就非常非常麻煩了,你就是想把程序清空都難。這時只有一個辦法,突然靈感一動想起密碼,哈哈,
用儲存卡清除禁止覆蓋受保護(hù)程序,是把儲存卡里的程序在PLC通電一瞬間傳入覆蓋PLC程序,當(dāng)然原程序就變沒有了,儲存卡里的程序是空白的,這樣就清除了,如果儲存卡里的程序是有密碼的和禁止覆蓋,那么傳送后仍舊是禁止覆蓋和加密的。
還有一種選擇就是能夠?qū)垢采w的PLC程序進(jìn)行恢復(fù),如果你想得到加密的密碼,同樣我們能幫你找到,至于方法嘛,我們的方法是的,解密軟件也是的,不會輕易傳播,請您見諒,我們只提供單次解密的服務(wù)。對于V1。2版本的功能塊也不會影響。
 功能塊密又是怎能回事呢,
首先,我們要理解什么是功能塊,功能塊就相當(dāng)于我們編程中的函數(shù),在功能塊中定義好輸入輸出和變量,然后通過功能塊編程,使的功能塊具有一定的功能,在主程序中,就按需要在多處調(diào)用功能塊,使之產(chǎn)生同樣的功能,當(dāng)然象函數(shù)可以給定變量不同的值,產(chǎn)生的輸出就不同。
功能塊具有很好的移植性能,為了保護(hù)功能塊的程序,可以單獨對每個功能塊加密,密碼是4個字符,加了密的功能塊,就看不到功能塊程序了。
下面談?wù)?,對于一個加密了的CP1 PLC如何判斷是加了那些密碼呢,CP1H操作說明書是這樣說的:
我總結(jié)如下,你查一下A99的值,對照下面說明就一目了然。
A99說明:
A99=
0001表示有UM密
0002表示有任務(wù)密
0003表示有UM密+任務(wù)密
0004表示有禁止覆蓋
0005表示有UM密+禁止覆蓋
0006表示有任務(wù)密+禁止覆蓋
0007表示有UM密+任務(wù)密+禁止覆蓋
0008表示有禁止向卡傳送
0009表示有UM密+禁止向卡傳送
000A表示有任務(wù)密+禁止向卡傳送
000B表示有UM密+任務(wù)密+禁止向卡傳送
000C表示有禁止覆蓋+禁止向卡傳送
000D表示有UM密+禁止覆蓋+禁止向卡傳送
000E表示有任務(wù)密+禁止覆蓋+禁止向卡傳送
000F表示有UM密+任務(wù)密+禁止覆蓋+禁止向卡傳送
100X:X是參考上述的說明,zui高位為1表示不允許解除UM密
200X:zui高位為2表示不允許解除TK密
300X:zui高位為3表示不允許解除UM+TK密

 

 

收藏該商鋪

登錄 后再收藏

提示

您的留言已提交成功!我們將在第一時間回復(fù)您~

對比框

產(chǎn)品對比 產(chǎn)品對比 聯(lián)系電話 二維碼 意見反饋 在線交流

掃一掃訪問手機商鋪
021-32586636
在線留言