⑴ 搞定西門子博途功能塊的加密和清除只需這一招
目前博途的CPU或者功能塊的加密都是無法破解的。必須知道密碼才能清楚加密。密碼不能忘!那又如何實現功能塊的加密和清楚呢?
新建功能塊
新建個FB塊
右鍵,查看屬性,選擇保護屬性,如圖所示:
選擇保護屬性
點選保護按鈕,在彈出的窗口輸入新密碼111和確認密碼111,點擊確定
新建密碼
此時塊已加密
FB塊的狀態已變為加密
雙擊加密的FB塊
彈出輸入密碼提示框
此時,再點擊FB屬性,查看保護屬性,發現保護按鈕不可被選中,這是為什麼呢???
無法點擊,清除密碼
原來是我們把加密的FB塊打開了,所以不可以更改保護屬性了。
關閉被保護的FB塊
再次查看保護屬性,保護可以點選。
按圖上文字操作,密碼取消成功
⑵ 博圖V14項目如何加密防止別人更改程序
加密分為兩種方式:程序塊加密和CPU加密。這里以14版本的軟體為例,不同版本的方法都差不太多。
首先我來介紹一下如何對程序塊進行加密。打開軟體,進入項目視圖,到「程序塊」內找到想要加密的程序塊,單擊右鍵,選擇屬性。3在彈出的塊屬性窗口下,選擇常規列表裡的「保護」選項,單擊保護選項內的「保護」按鈕,彈出「專有技術保護」對話框。默認情況下,塊是沒有保護的,這時你單擊「定義」按鈕,就可以給塊添加相應的密碼保護了。在這里還可以將塊綁定到固定的CPU或存儲卡上,防止別人拷貝。4那麼如何取消塊的保護呢?這里設置的比較隱晦。還是打開剛剛加保護的塊,單擊保護選項內的「保護」按鈕,彈出「專有技術保護」對話框。這時你會發現它勾選了一個「隱藏代碼(專有技術保護)」選項。你需要勾掉這個選項,然後輸入密碼,點擊確定,這樣保護就取消了5如何對CPU加保護呢打開軟體,進入「項目視圖」,選擇「設備視圖」。在」設備視圖」內找到需要加密的PLC,雙擊後,能看到這個PLC的常規選項。6找到常規選項下的,防護與安全,單擊後你可以在這里設置CPU的密碼。密碼分為四級保護,默情況認下是無任何保護的,具體每一級的作用程序內都有相應的說明。在「防護與安全「 選項下還可以設置通訊的保護功能這里就不一一介紹了,感興趣的同學可以自己研究一下。
⑶ iec_timer數據類型怎麼用博圖打出來
用vhdl實現4位加減法計數器
博途IEC TIME數據類型_用最簡單的講解讓你明白西門子博途編程基本指令集之計數器的使用...
S7-1200的計數器為IEC計數器,用戶程序中可以使用的計數器數量僅受CPU的存儲器容量限制。
這里所說的是軟體計數器,最大計數速率受所在OB的執行速率限制。指令所在OB的執行頻率必須足夠高,以檢測輸入脈沖的所有變化,如果需要更快的計數操作,請參考高速計數器(HSC)。
註:S7-1200的IEC計數沒有計數器號(即沒有C0、C1這種帶計數器號的計數器)。
S7-1200的計數器包含3種計數器,指令位置參見圖1:
1.計數器(CTU)
2.減計數器(CTD)
3.加減計數器(CTUD)
圖1 指令位置
對於每種計數器,計數值可以是任何整數數據類型,並且需要使用每種整數對應的數據類型的DB結構(見表1)或背景數據塊來存儲計數器數據。計數器引腳參考表2,計數器使用及時序圖參考表3(本文均以INT計數器為例)。
表1 計數器類型及范圍
表2 計數器引腳匯總
表3計數器使用及時序圖
表3計數器使用及時序圖
表3計數器使用及時序圖
S7-1200 計數器創建
S7-1200計數器創建有以下幾種方法:
1. 指令直接拖入塊中,自動生成計數器的背景數據塊,該塊位於「系統塊>程序資源」中,參見圖2。需要在指令中修改計數值類型。
圖2 自動生成計數器的背景數據塊
2. 指令直接拖入FB塊中,生成多重背景,參見圖3。多重背景的數據類型在TIA博途V14之前是IEC_COUNTER類型,從TIA博途V14開始是CTU_INT、CTD_INT、CTUD_INT等類型(取決於指令)。
圖3 多重背景
3. 指令直接拖入FB、FC塊中,生成參數實例,從TIA博途V14開始,參見圖4。
圖4 參數實例
4. 在DB塊、FB的靜態變數、FC和FB的INOUT變數中新建IEC_COUNTER、CTU_INT、CTD_INT、CTUD_INT類型變數,在程序中將計數器指令拖入塊中時,在彈出的「調用選項」頁面點擊「取消」按鈕,之後將該建好的變數填入指定位置。
(1) DB塊中新建IEC_COUNTER等類型變數(LAD/FBD),如果是IEC_COUNTER等類型變數的數組,S7-1200從V2.0版本開始支持,參見圖5、6。
圖5 DB塊中的定義
圖6 計數器使用
(2) FB的靜態變數中新建IEC_COUNTER等類型變數(LAD/FBD),如果是IEC_COUNTER等類型變數的數組,S7-1200從V2.0版本開始支持,參見圖7。
圖7 靜態變數中定義
(3) FC和FB的INOUT變數中新建IEC_COUNTER等類型變數(LAD/FBD),如果是IEC_COUNTER等類型變數的數組,S7-1200從V2.0版本開始支持,從TIA博途V14開始支持IEC_COUNTER等類型變數的變長數組(ARRAY[#]),參見圖8。
圖8 INOUT中定義
4) 以上三種方法的SCL版本,參見圖9
圖9 SCL中使用
從以上四個示例可以看出,IEC_COUNTER、CTU_INT、CTD_INT、CTUD_INT四種數據類型沒有本質的區別,可以互換使用,為使得程序明確,建議只使用計數器對應名字的數據類型。
5. 在插入DB時,選擇IEC_COUNTER類型的數據塊,將該數據塊填在指令上方。此種方法生成的數據塊等同於第一種的背景數據塊,位於「系統塊>程序資源」中,從TIA博途V11開始,參見圖10.
圖10 新建IEC_COUNTER類型DB
S7-1200 計數器常見問題
1. 為什麼計數器不計數?
答:可能原因如下:
(1)計數器的輸入位(CU、CD)需要有電平信號的跳變,計數器才會計數。如果保持不變的信號作為輸入位是不會開始計數的。
(2)計數器的背景數據塊重復使用。
2. 如何編程自復位計數器並產生脈沖?
答:正確答案見圖11,錯誤答案見圖12、13。
圖11 正確程序
圖12 錯誤程序1
圖13 錯誤程序2
正確原因:當計數值達到10,"DB77".Static_15(False)作為計數器R的輸入,並沒有復位,Q輸出"DB77".Static_15為True,在下一周期時執行復位指令,使得計數值清零,之後Q輸出"DB77".Static_15為False,實現自復位計數器並產生脈沖。
錯誤1原因:當計數值達到10,首先置位"數據塊_2".QU,緊接著"數據塊_2".QU作為計數器R的輸入,使得計數值清零,同時復位"數據塊_2".QU,在下一網路段"DB77".Static_15依然是False,無法實現脈沖。
錯誤2原因:當計數值達到10,"數據塊_2".CV=10,緊接著"數據塊_2".CV與"數據塊_2".PV的比較結果(True)作為計數器R的輸入,使得計數值清零,同時復位"數據塊_2".QU,在下一網路段"DB77".Static_15依然是False,無法實現脈沖。
從例子可知,計數器的執行是先處理輸入,再處理輸出,在指令塊執行過程中,內部變數(例如QU、CV)可能出現多次變化。
用法與我前面文章寫道的定時器的用法基本一致,可以參照看看。S7-1200指令講解之定時器指令S7-1200調用定時器和計數器指令時如何減少背景數據塊的使用
⑷ 博途v16添加乙太網路由
操作如下:
博途v16添加乙太網路由操作如下:
1、首先組態一個PLC,並設定好IP地址和名稱,並下載到模擬器中去。
2、在線查看設備名稱和IP地址。
3、下面進入主題,通過程序修改IP地址和名稱。
4、修改CPU網路組態為「在設備中直接設定IP地址」。
5、編譯,然後整體下載項目。
6、項目下載完成後,展開數據塊DB2的3個變數。
7、建立一個監控表來修改IP地址。
⑸ 博途v15下載如何不下載注釋
不能哦,博途的理念就是Tag(標簽)優先,博途不允許沒有變數名稱的Tag出現。即使沒有,博途會自動添加Tag。如果你是想知識產權保護,可以考慮程序塊加密。PLC加密,以及程序塊綁定CPU序列號等方法實現。
⑹ 博途里怎麼找不到打開數據塊這個指令(就是下面這個東東)
看不清那個字母是啥
⑺ 求助,西門子PLC FC 功能塊怎麼加密
如果使用的是博途軟體,右鍵功能塊,專有技術保護,設置一個密碼即可