什么是OOP
面向對象程序設計(Object Oriented Programming,以下簡稱OOP)是一種計算機編程架構,在高級語言編程環境中 (如C++, C#, Pythons等) 有著非常廣泛的應用。它的特點是盡可能模擬人類的思維方式,使得軟件的開發方法與過程盡可能接近人類認識世界、解決現實問題的方法和過程。OOP實現了軟件工程的三個主要目標:重用性、靈活性和擴展性,從而使得代碼開發模塊化,更易維護和修改,增強代碼的復用性,可靠性和靈活性。這降低了軟件開發的門檻,大大提高了編程效率。
博世自主編程框架OpconPlus
博世智能制造解決方案軟件研發團隊創造性地將OOP的編程概念引入到了PLC編程領域,并推出了基于倍福Twincat3和博世自主軟件平臺OES的新一代編程框架OpconPlus。
OpconPlus編程框架
為了實現這一編程理念,首先就是要將設備所有最基本執行單元(氣缸,伺服電機,機械手,io模塊等)的控制代碼模塊化。在OpconPlus里面我們將這些模塊化的代碼稱之為Object。Object里面包含了其對應執行單元的所有控制功能,這些功能并不是依托某一特定項目而開發的,因此它具有普遍適用性。
另外得益于OpconPlus高度標準化,開發Object的流程和框架是統一的。所以不同的Object在實例化后,除了設備特定的參數不一樣,其執行調用的代碼都是一致的,而在其他高級語言里(如C#,C++),類的開發往往沒有統一的標準,開發人員的個人風格和編程的規范性極大地決定了類的使用難易程度。因此從應用層面來看OpconPlus大大降低了使用者的理解難度,提高了編程效率,這一點而言它比其他高級語言要方便的多。
在開發團隊的不斷努力之下,現有的Object數量已經基本涵蓋了我們常用的各種硬件。隨著博世智能制造解決方案事業部在全球范圍內逐漸培養自己的Object開發團隊,我們相信更多的Object也會逐漸適應不斷變化的市場需求,并更好地實現本土化。
多樣化的Object
OpconPlus的編寫流程
有了這些基礎的Object之后,下一步我們要將整臺設備劃分層次,生成不同的控制單元,這些單元通常都是由各個基礎的Object(氣缸,伺服,機械手等) 組成,它們的作用就是控制這些Object執行相應的動作指令,完成對應的裝配,測試,焊接等各種工藝。
在OpconPlus的基本概念里,我們通常會根據工位來劃分不同的控制單元,每一個劃分出來的單元也都是獨立的Object,將這些控制單元再組合在一起就完成了對一臺設備的層次劃分。因此一臺設備在OpconPlus概念里面只不過是一個更大的Object。
在給設備劃分層次的時候,如果某個控制單元在多個設備或者項目上反復使用,那么我們就可以將這部分的控制單元做成一個標準機構。相應的我們可以在軟件上將該控制單元所有功能按照OpconPlus的規則封裝成一個標準整體,我們將其稱之為Functional Object。而且這些組合的Functional Object在使用方法上和氣缸,伺服等基礎Object一致,可以快速靈活的運用在其他的項目上。這不僅縮短了軟件的編程調試時間,也相應的提高了機械設計部門的工作質量和效率。正是因為我們看到了OpconPlus在這方面的優勢,所以博世智能制造解決方案事業部在去年正式成立了專門負責設計標準模組的部門。
目前我們開發了像托盤運勢系統(Palletizer),PPU(Pick&Place)等標準機構已經在各個項目上有了廣泛的應用。隨著我們在標準化戰略上的投入不斷加大,相信廣大用戶能在不久的將來不斷接觸到博世智能制造更多的優質產品。
按照OpconPlus的規則封裝成一個標準整體
當設備層次劃分結束后我們就進入了編程階段。當我們編寫設備流程時,總是先從最底層的單元開始,然后一步一步往上層編寫,最終完成整站的邏輯控制。整個過程就像搭積木一樣,從底層開始一層一層往上堆,這樣編程方式邏輯清楚,層次鮮明。同時也將面向對象的程序設計優勢發揮的淋漓盡致。
OOP的未來應用
隨著OpconPlus不斷的應用推廣,許多客戶還有一些同行也越來越認同它的整個理念,逐漸發現它的先進性。尤其是它衍生出來的各種產品(APP)更是受到了客戶的青睞。但是我們的研發團隊并不滿足于此,他們正積極的探索將OpconPlus的整套框架移植到其他的平臺上(如西門子)。這對于正在不斷開拓外部市場的博世而言可謂是極大的利好消息,我們始終致力于提供行業領先的制造設備和完善的軟件解決方案,也希望在不久的將來我們能夠在其他平臺上使用這套框架。
審核編輯 :李倩
-
軟件開發
+關注
關注
0文章
625瀏覽量
27469 -
計算機
+關注
關注
19文章
7549瀏覽量
88720 -
智能設備
+關注
關注
5文章
1068瀏覽量
50768
原文標題:博智 | 如何讓智能設備擁有更高級的語言?
文章出處:【微信號:rbacinternalevents,微信公眾號:博世蘇州】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
自然語言處理與機器學習的關系 自然語言處理的基本概念及步驟
大語言模型開發語言是什么
如何讓設備巡檢維護更高效——智能巡檢系統
![如何<b class='flag-5'>讓</b><b class='flag-5'>設備</b>巡檢維護<b class='flag-5'>更高</b>效——<b class='flag-5'>智能</b>巡檢系統](https://file1.elecfans.com/web2/M00/B6/F7/wKgaomWCnqCAVALtAAAoP02go7w921.png)
MCU編程語言和開發環境介紹
精密空調—機房電氣規劃,讓IT設備運轉更高效!
![精密空調—機房電氣規劃,<b class='flag-5'>讓</b>IT<b class='flag-5'>設備</b>運轉<b class='flag-5'>更高</b>效!](https://file1.elecfans.com/web2/M00/BE/9A/wKgZomWzjTiAb-44AADNkahYq7M828.png)
暢享無線投屏新體驗,USB連接讓設備更兼容
南芯科技發布單芯片車載攝像頭PMIC系列,為更高級別的智能駕駛提供支持
![南芯科技發布單芯片車載攝像頭PMIC系列,為<b class='flag-5'>更高級</b>別的<b class='flag-5'>智能</b>駕駛提供支持](https://file1.elecfans.com/web2/M00/08/B9/wKgZomb6PDGAAm9MAAGX5XkTNOs156.png)
智能升級,樓宇自控系統讓辦公更高效
協議轉換器&網關,帶你了解智能設備間的“語言橋梁”!
![協議轉換器&網關,帶你了解<b class='flag-5'>智能</b><b class='flag-5'>設備</b>間的“<b class='flag-5'>語言</b>橋梁”!](https://file1.elecfans.com/web2/M00/06/3A/wKgaombZCfuAFU4XAAIyKiiUbRc923.png)
物聯網高級智能網關是什么
![物聯網<b class='flag-5'>高級</b><b class='flag-5'>智能</b>網關是什么](https://file1.elecfans.com//web2/M00/FE/96/wKgaomaeDjyAQ1h0AAPVgT1WpFg649.png)
評論