西門子S7-1200CPU1214C中央處理器西門子中國總代理 西門子授權(quán)代理商西門子S7-1200CPU1214C中央處理器西門子中國總代理 西門子授權(quán)代理商西門子S7-1200CPU1214C中央處理器西門子中國總代理 西門子授權(quán)代理商西門子PLC編程中如何使用好符號表?西門子PLC編程中如何使用好符號表?在PLC編程軟件規(guī)范里,變量命名本身就是一門學(xué)問。
西門子S7-200PLC的符號表就是做變量命名工作的,毫不夸張的說,每一個(gè)使用S7-200的人都應(yīng)該熟練掌握它,如果你對它不屑一顧,覺得自己從來不用它也同樣可以做得很好,那么,你還不能算一個(gè)真正的程序員。
使用符號表,有程序可讀性更好,資源分配一目了然,修改靈活,輸入糾錯(cuò)等優(yōu)點(diǎn)。
不喜歡使用符號表的,我猜測原因之一可能是怕麻煩,速度慢。
其實(shí)這是認(rèn)識上的誤區(qū),熟練使用符號表后輸入速度反而要快。
不相信吧?1.符號表具有自動完成功能,當(dāng)有幾個(gè)變量頻繁交替使用時(shí),不需要記憶地址區(qū)別,只需要鍵入符號名的前幾個(gè)字母,就會自動提示,所以輸入反而要快。
2.做過指法強(qiáng)化訓(xùn)練的人應(yīng)該有體會,當(dāng)一個(gè)單詞或漢字編碼中有連續(xù)字符需要用同一只手甚至同一個(gè)指頭輸入時(shí)嚴(yán)重的影響輸入速度,如果一篇文章中的漢字大多數(shù)編碼都依次分布在左右兩只手上,輸入速度會高很多,而且不容易出錯(cuò)。
比如地址變量VW3234,六個(gè)字符全部使用左手輸入,速度慢,且易出錯(cuò)。
直接地址出錯(cuò)后較難檢查出來,符號名出錯(cuò)的話立即會有在線提示,而且編譯不會通過。
符號名降低出錯(cuò)率實(shí)際上是提高了速度。
兩個(gè)符號名使用的小技巧:一.快速修改變量地址(在另一帖中已貼過)1.符號名使用中(否則,先CTRL Y切換)2.在符號表中直接修改符號對應(yīng)的變量地址3.OK用符號表修改址有有個(gè)好處是數(shù)據(jù)塊中的地址也會同時(shí)修改,這個(gè)比查找替換好用(數(shù)據(jù)塊中不能選中某部分后在局部范圍內(nèi)全部替換)二、快速修改符號名(比如符號名S1已在多處使用,現(xiàn)在想將它改成S2)1.符號名未使用(如正在使用,先CTRL Y切換)2.在符號表中直接修改符號名字3.CTRL Y,符號名有效4.OK注意上面兩個(gè)小技巧中,符號名是否使用中的條件正好是相反的。
正是因?yàn)樯厦鎯蓷l快速修改的技巧,后期內(nèi)存規(guī)劃非常方便。
在編程前可以不考慮內(nèi)存位置安排,只定義符號名,內(nèi)存地址可以隨便輸入(當(dāng)然不要重疊),這樣著重于功能實(shí)現(xiàn)與調(diào)試,完成后按內(nèi)存規(guī)劃要求,將符號名剪切粘貼調(diào)整排序,最后用Excel填充功能連續(xù)生成地址,一個(gè)程序使用到哪些內(nèi)存,看看符號表一目了然。
增加一個(gè)比較另類的“技巧”,有時(shí)用這個(gè)方法比搜索準(zhǔn)確高效有時(shí)需要快速判斷某變量或定時(shí)器是否重復(fù)使用,比如VW1001.假設(shè)VW100的符號名是S1(如果沒用定義一個(gè)),令符號名使用中2.直接修改符號名為一個(gè)未用的符號(如后面隨便加一個(gè)后綴)為S1_ttttt3.編碼代碼(不是全部編譯),下面輸出窗口提示錯(cuò)誤數(shù)(如果為1則只存在1處引用)4.滾動輸出窗口,雙擊錯(cuò)誤提示行,可快速定位到引用處5.切換到符號表里撤銷修改這個(gè)方法在需要查連續(xù)查看多個(gè)變量引用數(shù)時(shí)比較方便,界面不需要切換(用查找法會不斷變化當(dāng)前光標(biāo)).西門子PLC的CPU模塊啟動特性( STARTUP)設(shè)定打開該設(shè)定對象,顯示窗分為“啟動的允許與啟動時(shí)對輸出的處理”、“電源接通時(shí)的啟動方式( Startup after Power On)”、“監(jiān)控時(shí)間設(shè)定(Mo
nitoring Time for)”三個(gè)區(qū)域(參見圖14-2.3)。
(1)啟動的允許與啟動時(shí)對輸出的處理設(shè)定該區(qū)有如下三個(gè)選項(xiàng):配置的硬件與實(shí)際硬件不同時(shí)的啟動( Startup when expected/actual co
nfiguration differ):可以選擇如果STEP7中配置的硬件與實(shí)際安裝不符,是否需要進(jìn)行啟動,當(dāng)選中該選項(xiàng)后,出現(xiàn)以上情況同樣可以進(jìn)行啟動。
熱啟動時(shí)清除輸出( Reset outputs hot restart):可以選擇在plc熱啟動時(shí)是否將輸出狀態(tài)清除,當(dāng)選中該選項(xiàng)后,熱啟動時(shí)將清除輸出狀態(tài)。
禁止操作員或通信方式的熱啟動( Disable hot restart by operator or communication job):通過選擇選項(xiàng),可以禁止用編程器或MPI接口通信等方式對PLC的熱啟動。
(2)電源接通時(shí)的啟動方式(Startup after Power On)設(shè)定該區(qū)有如下三個(gè)選項(xiàng):選項(xiàng)“Hot restart”:用于選擇“熱啟動”方式;選項(xiàng)“Warm restart”:用于選擇“暖啟動”方式;選項(xiàng)“Clod restart”:用于選擇“冷啟動”方式。
熱啟動( Hot restart)、暖啟動(Warm restart)、冷啟動(Clod restart)為S7系列PLC根據(jù)EN61131標(biāo)準(zhǔn)定義的、在PLC-CPU重新啟動時(shí)(如將CPU的工作模式開關(guān)從STOP轉(zhuǎn)到RUN或接通電源)的三種新的啟動方式名稱。
在S7系列PLC中,三種啟動方式的啟動過程與區(qū)別如下:熱啟動( Hot restart):在PLC-CPU重新啟動時(shí),執(zhí)行主循環(huán)OB1前,首先處理組織塊OB101。
啟動時(shí)全部CPU數(shù)據(jù)均被備份,所有數(shù)據(jù)區(qū)(包括定時(shí)器、計(jì)數(shù)器、標(biāo)志寄存器等,不分保持區(qū)與非保持區(qū))的內(nèi)容全部被保留。
暖啟動(Warm restart):在PLC-CPU重新啟動時(shí),執(zhí)行主循環(huán)OB1前,首先處理組織塊OB100。
啟動時(shí)全部PLC數(shù)據(jù)塊(DB)的內(nèi)容保留;保持型定時(shí)器、計(jì)數(shù)器、標(biāo)志寄存器的內(nèi)容保持不變;非保持區(qū)的定時(shí)器、計(jì)數(shù)器、標(biāo)志寄存器內(nèi)容被清除。
冷啟動(Clod restart):在PLC-CPU重新啟動時(shí),執(zhí)行主循環(huán)OB1前,首先處理組織塊08102。
啟動時(shí)全部PLC數(shù)據(jù)塊(DB)的內(nèi)容被清除,并重新從裝載存儲器(Load Memory)輸入原始設(shè)定值;CPU的全部定時(shí)器、計(jì)數(shù)器、標(biāo)志寄存器的內(nèi)容均被清除(不分保持區(qū)與非保持區(qū))。
(3)監(jiān)控時(shí)間設(shè)定(Mo
nitoring Time for)設(shè)定該區(qū)有如下三個(gè)選項(xiàng):模塊檢測完成時(shí)間(“Finished”message by modules):用于設(shè)定“模塊配置檢測完成”信號的回答時(shí)間,當(dāng)超過該時(shí)間未接收到完成信號時(shí),視為實(shí)際硬件配置與STEP7配置不符。
該時(shí)間設(shè)定單位為lOOms,默認(rèn)設(shè)定為650。
參數(shù)傳送到模塊的時(shí)間( Transfer of parameters to modules):用于設(shè)定CPU中的參數(shù)傳送到各模塊的最大允許時(shí)間,時(shí)間設(shè)定單位為lOOms,默認(rèn)設(shè)定為100。
對于有PROFIBUS-DP主站接口的CPU,可以通過本參數(shù)來檢測從站的啟動情況。
同樣當(dāng)超過本設(shè)定時(shí)間后尚未完成參數(shù)的傳送,視為實(shí)際硬件配置與STEP7配置不符。
熱啟動時(shí)間(Hot restart):用于設(shè)定CPU的熱啟動時(shí)間,本參數(shù)只有在選擇熱啟動方式時(shí)才能進(jìn)行設(shè)定。