Ⅰ 工業用的編程語言有哪些
1.C/C++
首先排名第1的機器人編程語言——C/C++,許多人認為C和C++對新入行的機器人學家是一個很好的起點。為什麼?因為很多硬體庫都使用這兩種語言。這兩種語言允許與低級別的硬體進行交互,允許實時性能,是非常成熟的編程語言。現如今,你可能會使用C++比C多,因為前者具有更多的功能。C++基本上是C的一種延伸。首先學一點C會很有用,特別是當你發現一個硬體庫是用C編寫的。C/C++並不是像Python或MATLAB那樣簡單易用。同樣用C來實現相同的功能會需要大量時間,也將需要更多行代碼。但是,由於機器人非常依賴實時性能,C和C++是最接近我們機器人專家「標准語言」的編程語言。
2.Python
近年來,學習Python的人有一個巨大的回潮,特別是在機器人領域。其中一個原因可能是Python(和C++)是ROS中兩種主要的編程語言。與Java不同,Python的重點是易用性,Python不需要很多時間來做常規的事情,如定義和強制轉換變數類型。這些在編程裡面本是很平常的事。另外,Python還有大量的免費庫,這意味著當你需要實現一些基本的功能時不必「重新發明輪子」。而且因為Python允許與C/C++代碼進行簡單的綁定。這就意味著代碼繁重部分的性能可以植入這些語言,從而避免性能損失。隨著越來越多的電子產品開始支持「開箱即用」Python(與RaspberryPi一道),我們可能會在機器人中看到更多Python。
3.Java
作為一位電子工程師,我總是對一些計算機科學學位課程將Java作為第一種編程語言讓學生們學習感到驚訝。Java對程序員隱藏了底層存儲功能,這讓它比起一些語言(如C語言)來說,編寫要容易些,但這也意味著你會更少地理解底層代碼的運行邏輯。如果你有計算機科學背景並轉到機器人學(很多人是這樣的,特別是在研究領域),你也許已經學過Java。像C#和MATLAB,Java是一種解釋性語言,這意味著它不會被編譯成機器代碼。相反,Java虛擬機在運行時解釋指令。使用Java,理論上讓你可以在不同的機器上運行相同的代碼,這得感謝Java虛擬機。在實踐中,這不總是可行的,有時會導致代碼運行緩慢。但是Java在一部分機器人學中非常流行,因此你也許需要它。
4.C#/.NET
C#是微軟提供的專用編程語言。我把C#/.NET放在這里,主要是因為微軟機器人開發員工作包(),這個包的主要開發語言是C#。如果你准備用這個系統,那麼你很可能必須要用C#。
5.MATLAB
MATLAB以及和它相關的開源資源,比如Octave,一些機器人工程師特別喜歡,它被用來分析數據和開發控制系統。還有一個非常流行的機器人工具箱——MATLAB。我知道一些僅僅使用MATLAB就能開發出整個機器人系統的專家。如果你想要分析數據,產生高級圖像或是實施控制系統,你也許會想學習MATLAB。
Ⅱ 工控行業一般VB語言用在哪些方面,要怎麼學
n年前用VB做過幾個不同形式的工控系統。
1)VB很適合作上位機的用戶界面(UI)
2)一般地,上位機與現場設備或現場控制設備之間,採用RS232C/485/422通信。所以,掌握串列通信原理,比如,什麼是同步傳輸,什麼是非同步傳輸,什麼是奇偶校驗,什麼是CRC校驗,什麼是面向字元(位元組)的傳輸,什麼是透明傳輸,等等,這些概念對構建一個上位系統非常重要。對於VB6而言,就是掌握MSCOMM控制項;對於VB.NET而言,掌握SerialPort
3)有的時候,上位機於現場設備之間的通信,採用特定的介面板塊。例如,在上位機PCI卡槽中插入特定功能的介面版。VB通過操縱這些介面版,與設備通信。通常,介面版製造商提供DLL形式的編程介面,VB調用這些DLL即可操縱這些介面版。所以,需要掌握VB調用DLL的知識。
4)工業乙太網得到越來越多的應用,VB可以通過工業乙太網操縱設備。這需要掌握Socket編程。對vb6而言,就是WinSock控制項;對VB.NET就是SOCKET類
Ⅲ 為什麼工業控制軟體用C++編寫,而不用java
為什麼工作控制軟體用C++編寫,而不用java寫的原因主要有以下幾點:
底層,CC++寫底層的東西是最理想的,比如Window操作系統就是用CC++ 匯編這些寫的。肯定不會使用java寫的。
穩定和安全,事實證明CC++是最穩定,最可靠的,最安全的。
數據類型豐富,它可以滿足各種層次的工業需求。
另外java主要應用於商業和移動設備的眾多。而CC++開發應用系統效率低,開發成本大。
Ⅳ 從工業角度用什麼編程語言最好
從工業控制角度編程上講,使用 C 語言和計算機匯編語言的混合編程最好。實際上在 C 語言中,也有調用匯編語言的介面,完全可以做到;主體上還是以 C 語言編程為主,只有在涉及到和硬體底層打交道的時候,使用匯編語言的語句對指定的硬體設備埠進行讀數據(或者是寫數據)更方便。
Ⅳ 工業中的自動控制,是用什麼語言編的程式
機械手的工作是通過單片機控制的,單片機中的程序是通過匯編語言或單片機sc語言或單片機c語言編輯的,由於匯編語言的移植性比較差,現在用單片機sc語言或單片機c語言編輯的比較普遍,尤其單片機c語言比較流行。
Ⅵ 單片機,PLC,計算機軟體編程,以上三個主流的編程語言各是什麼在工業應用最多的語言是什麼
單片機是C語言和匯編語言。PLC有專門的語言,有梯形圖、指令、sfc等。計算機軟體編程就太多了,得看具體的了。工業應用最多的應該是PLC了
Ⅶ 電腦控制PLC用什麼編程語言比較常用
電腦控制PLC編程。常用的編程語言是梯形圖和語句表。
根據國際電工委員會制定的工業控制編程語言標准(IEC1131-3)。PLC的編程語言包括以下五種:梯形圖語言(LD)、指令表語言(IL)、功能模塊圖語言(FBD)、順序功能流程圖語言(SFC)及結構化文本語言(ST)。
1、梯形圖語言(LD)
梯形圖語言是PLC程序設計中最常用的編程語言。它是與繼電器線路類似的一種編程語言。由於電氣設計人員對繼電器控制較為熟悉,因此,梯形圖編程語言得到了廣泛的歡迎和應用。
梯形圖編程語言的特點是:與電氣操作原理圖相對應,具有直觀性和對應性;與原有繼電器控制相一致,電氣設計人員易於掌握。
2、指令表語言(IL)
指令表編程語言是與匯編語言類似的一種助記符編程語言,和匯編語言一樣由操作碼和操作數組成。在無計算機的情況下,適合採用PLC手持編程器對用戶程序進行編制。同時,指令表編程語言與梯形圖編程語言圖一一對應,在PLC編程軟體下可以相互轉換。
指令表表編程語言的特點是:採用助記符來表示操作功能,具有容易記憶,便於掌握;在手持編程器的鍵盤上採用助記符表示,便於操作,可在無計算機的場合進行編程設計;與梯形圖有一一對應關系。其特點與梯形圖語言基本一致。
3、功能模塊圖語言(FBD)
功能模塊圖語言是與數字邏輯電路類似的一種PLC編程語言。採用功能模塊圖的形式來表示模塊所具有的功能,不同的功能模塊有不同的功能。
功能模塊圖編程語言的特點:功能模塊圖程序設計語言的特點是:以功能模塊為單位,分析理解控制方案簡單容易;功能模塊是用圖形的形式表達功能,直觀性強,對於具有數字邏輯電路基礎的設計人員很容易掌握的編程;對規模大、控制邏輯關系復雜的控制系統,由於功能模塊圖能夠清楚表達功能關系,使編程調試時間大大減少。
4、 順序功能流程圖語言(SFC)
順序功能流程圖語言是為了滿足順序邏輯控制而設計的編程語言。編程時將順序流程動作的過程分成步和轉換條件,根據轉移條件對控制系統的功能流程順序進行分配,一步一步的按照順序動作。每一步代表一個控制功能任務,用方框表示。在方框內含有用於完成相應控制功能任務的梯形圖邏輯。這種編程語言使程序結構清晰,易於閱讀及維護,大大減輕編程的工作量,縮短編程和調試時間。用於系統的規模校大,程序關系較復雜的場合。
順序功能流程圖編程語言的特點:以功能為主線,按照功能流程的順序分配,條理清楚,便於對用戶程序理解;避免梯形圖或其他語言不能順序動作的缺陷,同時也避免了用梯形圖語言對順序動作編程時,由於機械互鎖造成用戶程序結構復雜、難以理解的缺陷;用戶程序掃描時間也大大縮短。
5、結構化文本語言(ST)
結構化文本語言是用結構化的描述文本來描述程序的一種編程語言。它是類似於高級語言的一種編程語言。在大中型的PLC系統中,常採用結構化文本來描述控制系統中各個變數的關系。主要用於其他編程語言較難實現的用戶程序編制。
結構化文本編程語言採用計算機的描述方式來描述系統中各種變數之間的各種運算關系,完成所需的功能或操作。大多數PLC製造商採用的結構化文本編程語言與BASIC語言、PASCAL語言或C語言等高級語言相類似,但為了應用方便,在語句的表達方法及語句的種類等方面都進行了簡化。
結構化文本編程語言的特點:採用高級語言進行編程,可以完成較復雜的控制運算;需要有一定的計算機高級語言的知識和編程技巧,對工程設計人員要求較高。直觀性和操作性較差。
不同型號的PLC編程軟體對以上五種編程語言的支持種類是不同的,早期的PLC僅僅支持梯形圖編程語言和指令表編程語言。目前的PLC對梯形圖(LD)、指令表(STL)、功能模塊圖(FBD)編程語言都以支持。