歡迎來到煙臺拓航智能設備有限責任公司!

15853576337

聯系電話:

plc.機器人工程師培訓基地
專業培養冠軍品質工業4.0急缺人才

首頁 >> 公司新聞 >>企業新聞 >> plc編程n步曲
详细内容

plc編程n步曲

煙臺拓航機器人.plc培訓

(僅代表個人觀點)

通過總結諸多學員的學習情況,結合大家實際學習過程中出現的問題,現給大家提幾點學習方面的建議,希望能對大家的學習有實質性的幫助,以優化學習思路,提高學習效率!

對于剛入門的人來說,首先學習CPU本體及硬件系統和擴展模塊是必不可少的最基礎的一步!最好是結合實物去邊操作邊學習,這樣是最直觀有效的!打個比方,如果一個戰士連真槍都沒摸過,槍栓都沒拉過,那即使本身的軍事素養再高,紙上談兵談的再好,真正實戰時又有幾分底氣呢?!

接下來,需要簡單了解下CPU軟件的界面、使用和聯機操作,這個過程牽扯到一些通信方面的基礎知識,通信方面暫時可先不必深究,牽扯的也比較淺,只要按操作一步步的熟練起來,做到能夠獨立、自主地將程序下載到CPU中就好,主要精力暫時放在程序編輯器、符號表、數據塊、狀態表這些主體功能的使用上!盡快地熟練起來并找到竅門,這個短期內是完全可以實現的。

在對硬件系統及編程軟件有所了解的基礎上,開始進一步學習CPU的存儲區分類及CPU對相關存儲區尋址方式,系統地了解CPU內的分區情況以及每種分區的特性、作用及尋址特性,這對于后續的功能指令及編程學習大有益處,這一步必須穩扎穩打,思路拓寬,加深理解!

此后,可以進行基礎指令系統的學習,指令系統先從最基本的位邏輯開始學起,不要盲目追求速度,腳踏實地,學一個就在腦子里記住一個,盡管理解的可能不是很透徹,但是首先記住指令本身是必須的!不要瞎子掰玉米,掰一個扔一個!關于指令這一步,建議初學者先不要花費大量的時間去深入研究指令,拿出2-3天時間去分別做幾個測試,涉獵下就好,初期只要做到理解指令本身所能實現的基本功能就好,因為單純的指令只是作為一種工具,用來體現編程者的思維,單純去研究指令本身,研究的再透徹,不結合實際工程項目去具體地、系統地、深層地挖掘,依舊是水中花鏡中月,中看不中用!反言之,在具體的項目應用中,你會為指令的巧妙應用而拍手叫好,那是你會發現真的是“橫看成嶺側成峰,遠近高低各不同!”。所以說,指令重點還是放在后續的案例中結合應用深入體會!這一點,我想很多自學編程的人都有同感,那就是指令研究了兩三年還是不會編程!問題就在于此。

 Ok,指令的學習說完了,接下來該說說編程的那些事兒了。

西門子的編程,從結構上劃分分為3大塊:主程序、子程序編程、中斷服務程序編程。

從功能體系上又分為以下幾大部分:邏輯編程、功能指令編程、模擬量編程、過程控制PID編程、通信編程、運動控制編程。

當然,這只是一個框架,具體到每一部分,都會有很多實質的內容需要你去挖掘、理解、轉化、吸收!另外,各個部分之間并不是獨立的,而是相互穿插應用的,互為輔助,相輔相成,共同實現一個完整的工藝!

就子程序而言,其理論知識牽扯的點多面廣,不去解決這些知識點,就不能妄談子程序的應用。中斷也一樣,規則多,注意事項多,不按規則套路出牌,就要出幺蛾子,而且是一連串的讓你頭疼的很的幺蛾子。這些不是單純要求你要嚴謹的問題,而是作為優秀的編程者必須深入掌握的核心技能!

至于通信,有人覺得簡單,有人覺得難。學習者的思路和理解也形態萬千。其實,個人認為西門子的通信雖然雜,但不代表難!核心的東西如同程咬金那三板斧,就那么幾下,無非變著法子玩,更多的要求其實是建立在西門子諸多硬件方面的使用和理解上!就通信本身而言,按道兒尋章地走,都有標準例程,多動手搞起來,你也可以成為行家。

關于如何培養編程思路的見解:

很多學員在聽課的時候,聽的頭頭是道,思路也能跟得上,但一讓自己動手設計項目,就開始發蒙(當然思路的好壞和個人悟性不無關系,這里不談這個問題)!他在寫程序的時候,給人的整體感覺是沒有主線,不清楚自己究竟要做什么事情,實現什么功能,這一頭、那一頭,凌亂的思路,天馬行空,沒有軌跡和套路可言。給人的感覺更多是在沒有規則地瞎湊,拿指令去亂卡,卡上就卡上了,卡不上就再換!與其說是在編程,不如說是在玩指令。而且,有這種情況的人不在少數。那么針對這個問題,簡單談一下自己的見解,希望對這樣的朋友有所幫助:

首先一點,編程雖然最終是通過指令堆疊的和穿插去最終實現工藝,但不等于編程的過程是從指令到程序!!!就像我們蓋一棟樓房,那么你覺得是先有整棟樓整體的格局還是先有每個單元的小格局呢?這個我想不言而喻!只有大的格局設計完美了,再去談每個單元的小格局才有意義!也就是說我們需要做的首先是根據工藝要求規劃好整個程序的功能體系(格局),然后進一步具體到每一個功能單元當中去細化、修改!否則結果就是蓋了拆,拆了蓋,搞到最后,一塌糊涂!浪費了人力、物力、財力依舊一事無成!

還有很重要的一點,永遠不要把編程看成單獨的指令羅列!如上所述,確定好整體的功能體系后,此時該進入各個功能單元去編寫程序了!那么是不是說,把每一個功能單元寫完就完事了?當然不是!不要忘了我們之前提過的“西門子的編程,從結構上劃分分為3大塊:主程序、子程序編程、中斷服務程序編程。”這句話!每一個功能單元該定義成全局性的,還是可移植的?每個功能單元的調用執行條件是什么?中斷執行的條件是什么?功能單元執行完以后輸出什么結果?輸出的結果在整個程序體系中如何起作用?是否有干擾?諸如此類問題,都是我們編程者需要系統去思考和布局的!這些問題不是單純靠指令系統能夠解決的!

上述2大問題,一旦解決,ok,剩下的就是順藤摸瓜了,用到什么就取什么出來用!這個不用多說了。

另外,學習編程,建議不要養成信手拈來、養成拿來就用的習慣(當然,當你實在思考不出來的時候可以適當地參考下別人的思路,無可厚非!)。別人直接給你的程序和你自己經過摸索、碰壁、糾結、掉坑、反復思考編寫出來的程序,就學習效果而言絕對是不是一個層次的!試問:有多少人在吃水餃的時候會去琢磨水餃要怎么一步步做出來?大多數人頂多想到皮包餡,其他的……自己動手包一次,才知道鹽要放多少,菜和肉的比例不同分別是什么口味,切菜時要小心不要割到手,餃子皮加點堿會更結實……編程也一樣,實踐出真知,實踐是檢驗理論的最高標準!不要養成思維惰性!

最后一點,很多人問起200,300的區別,ok,略談一二。200學編程思路,300學結構化編程,兩者息息相關,側重點不同,誰也代替不了誰!但是有一點,深厚的200功底無疑為300的學習掃清了相當大的障礙!簡言之,200是進一步學習300的不可撼動的根基!當然,你直接學300可能也能學會,就像練武一樣,如果說300是招式,那么200就是內力,一拳打出去,缺乏內力的招式終究是軟弱的,有花架子的嫌疑!所以不建議盲目追求高度和層次,腳踏實地。

先說這些吧。個人淺薄之見!不到之處,海涵。


技术支持: 搜訊傳媒 | 管理登录
亚洲另类午夜色情小说网