www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁(yè) > 智能硬件 > 機(jī)器人
[導(dǎo)讀]   在本文中,我們將會(huì)審視在機(jī)器人學(xué)習(xí)中最流行的10種編程語(yǔ)言,深入探討它們各自的優(yōu)缺點(diǎn)以及使用和棄用它們的原因。   這實(shí)際上是個(gè)很有道理的問(wèn)題——畢竟,如果你

  在本文中,我們將會(huì)審視在機(jī)器人學(xué)習(xí)中最流行的10種編程語(yǔ)言,深入探討它們各自的優(yōu)缺點(diǎn)以及使用和棄用它們的原因。

  這實(shí)際上是個(gè)很有道理的問(wèn)題——畢竟,如果你從不付諸實(shí)踐,那為什么要花大量的時(shí)間和精力去學(xué)習(xí)一種新的編程語(yǔ)言呢?如果作為一名機(jī)器人學(xué)新人,你當(dāng)然會(huì)想學(xué)習(xí)一種確實(shí)對(duì)你的職業(yè)生涯很有用的編程語(yǔ)言。

  不幸的是,如果你去問(wèn)一屋子的機(jī)器人學(xué)專(zhuān)家,“什么是機(jī)器人學(xué)中最好編程語(yǔ)言?”,你永遠(yuǎn)不會(huì)得到一個(gè)直接的答案。

  電氣工程師會(huì)從工業(yè)機(jī)器人技術(shù)這個(gè)角度給出不同的答案。計(jì)算機(jī)視覺(jué)程序員給出的答案會(huì)跟認(rèn)知機(jī)器人專(zhuān)家給出的不一樣。而且,每個(gè)人都會(huì)對(duì)什么是最好的編程語(yǔ)言有自己的看法。對(duì)于一個(gè)新入行正在試圖決定要先學(xué)哪種語(yǔ)言的機(jī)器人學(xué)者來(lái)說(shuō),這是一個(gè)相當(dāng)無(wú)用的答案。即使這是最現(xiàn)實(shí)的回答——因?yàn)樗拇_取決于你想要開(kāi)發(fā)的應(yīng)用程序和你在使用的系統(tǒng)。

  對(duì)于機(jī)器人專(zhuān)家來(lái)說(shuō),最重要的事情是開(kāi)拓你的”編程思維”,而不是精通一種特定的編程語(yǔ)言。從很多方面來(lái)說(shuō),從哪種編程語(yǔ)言開(kāi)始學(xué)習(xí)真的無(wú)關(guān)緊要。你學(xué)習(xí)的每種語(yǔ)言提升了你的編程思維,擁有了這種思維,去學(xué)習(xí)一種新編程語(yǔ)言的時(shí)候會(huì)容易不少。

  世界上有1500多種編程語(yǔ)言,都要學(xué)的話是太多了。目前,在機(jī)器人學(xué)中有這10種最流行的編程語(yǔ)言——如果你喜歡的不在這里,請(qǐng)?jiān)诹粞詤^(qū)告訴大家。對(duì)于機(jī)器人學(xué),每種編程語(yǔ)言有不同的優(yōu)點(diǎn)。我只是部分地按照重要程度從低到高對(duì)它們進(jìn)行了排序。

  10、BASIC/Pascal

  BASIC和Pascal是我最早學(xué)過(guò)的兩種編程語(yǔ)言。不過(guò)這并不是我把它們列在這里的原因。對(duì)于幾種工業(yè)機(jī)器人語(yǔ)言,它們是基礎(chǔ),下面說(shuō)明一下。 BASIC是為初學(xué)者設(shè)計(jì)的(BASIC是縮寫(xiě),BeginnersAll-PurposeSymbolicInstrucTIonCode),它讓初學(xué)者可以從一種非常簡(jiǎn)單的編程語(yǔ)言開(kāi)始學(xué)習(xí)。Pascal旨在鼓勵(lì)好的編程習(xí)慣,還引入了結(jié)構(gòu),例如指針,這讓Pascal成為從BASIC到更復(fù)雜語(yǔ)言的一塊“敲門(mén)磚”。如今,這兩種語(yǔ)言如果要說(shuō)是好的“日常使用”程序語(yǔ)言,那是有點(diǎn)過(guò)時(shí)了。不過(guò)如果你準(zhǔn)備做很多底層編碼或是想要熟悉一下其它工業(yè)機(jī)器人編程語(yǔ)言,學(xué)習(xí)一下還是有用的。

  9、工業(yè)機(jī)器人編程語(yǔ)言

  幾乎每一個(gè)機(jī)器人制造商都開(kāi)發(fā)了他們自己專(zhuān)有的機(jī)器人編程語(yǔ)言,這成了工業(yè)機(jī)器人行業(yè)中的一個(gè)問(wèn)題。通過(guò)學(xué)習(xí)Pascal,你會(huì)熟悉它們中的一部分。但是每次開(kāi)始使用新的機(jī)器人時(shí),你還得學(xué)習(xí)一種新的編程語(yǔ)言。

  最近幾年,ROS行業(yè)已經(jīng)開(kāi)始提供更標(biāo)準(zhǔn)化的替代語(yǔ)言給程序員。但是如果是一個(gè)技術(shù)人員,你仍然更可能不得不使用制造商的編程語(yǔ)言。

  8、LISP

  LISP是世界上第二古老的編程語(yǔ)言(FORTRAN更古老,但只早了一年)。相比今天提到很多其它編程語(yǔ)言,它的應(yīng)用并不廣泛。不過(guò)在人工智能編程領(lǐng)域它還是相當(dāng)重要的。ROS的一部分是用LISP寫(xiě)的,雖然你不需要掌握這個(gè)來(lái)使用ROS。

  7、硬件描述語(yǔ)言(HDLs)

  硬件描述語(yǔ)言一般是用來(lái)描述電氣的編程方式。這些語(yǔ)言對(duì)于一些機(jī)器人專(zhuān)家來(lái)說(shuō)是相當(dāng)熟悉的,因?yàn)樗麄兞?xí)慣 FPGAs(FieldProgrammableGateArrays)編程。FPGAs能讓你開(kāi)發(fā)電子硬件而無(wú)需實(shí)際生產(chǎn)出一塊硅芯片,對(duì)于一些開(kāi)發(fā)來(lái)說(shuō),這是更快更簡(jiǎn)易的選擇。如果你沒(méi)有開(kāi)發(fā)電子原型產(chǎn)品,你也許永遠(yuǎn)不會(huì)用HDLs。即便如此,還是有必要了解一下這種編程語(yǔ)言,因?yàn)樗鼈兒推渌幊陶Z(yǔ)言差別很大。一個(gè)重點(diǎn):HDLs所有的操作是并發(fā)的,而不是基于處理器的編程語(yǔ)言的順序操作。

  6、Assembly

  Assembly讓你能在0和1數(shù)位上進(jìn)行編程。基本上這是最底層的編程語(yǔ)言。就在最近,最底層的電子需要Assembly進(jìn)行編程。隨著Arduino和其它如微控制器的崛起,現(xiàn)在你可以使用C/C++在底層方便地編程了。這意味著Assembly對(duì)于大多數(shù)機(jī)器人專(zhuān)家來(lái)說(shuō)也許會(huì)變得更不必要了。

  5、MATLAB

  MATLAB以及和它相關(guān)的開(kāi)源資源,比如Octave,一些機(jī)器人工程師特別喜歡,它被用來(lái)分析數(shù)據(jù)和開(kāi)發(fā)控制系統(tǒng)。還有一個(gè)非常流行的機(jī)器人工具箱 ——MATLAB。我知道一些僅僅使用MATLAB就能開(kāi)發(fā)出整個(gè)機(jī)器人系統(tǒng)的專(zhuān)家。如果你想要分析數(shù)據(jù),產(chǎn)生高級(jí)圖像或是實(shí)施控制系統(tǒng),你也許會(huì)想學(xué)習(xí) MATLAB。

  4、C#/.NET

  C#是微軟提供的專(zhuān)用編程語(yǔ)言。我把C#/.NET放在這里,主要是因?yàn)槲④洐C(jī)器人開(kāi)發(fā)員工作包(Microsoft RoboTIcs Developer Studio),這個(gè)包的主要開(kāi)發(fā)語(yǔ)言是C#。如果你準(zhǔn)備用這個(gè)系統(tǒng),那么你很可能必須要用C#。

  3、Java

  作為一位電子工程師,我總是對(duì)一些計(jì)算機(jī)科學(xué)學(xué)位課程將Java作為第一種編程語(yǔ)言讓學(xué)生們學(xué)習(xí)感到驚訝。Java對(duì)程序員隱藏了底層存儲(chǔ)功能,這讓它比起一些語(yǔ)言(如C語(yǔ)言)來(lái)說(shuō),編寫(xiě)要容易些,但這也意味著你會(huì)更少地理解底層代碼的運(yùn)行邏輯。如果你有計(jì)算機(jī)科學(xué)背景并轉(zhuǎn)到機(jī)器人學(xué)(很多人是這樣的,特別是在研究領(lǐng)域),你也許已經(jīng)學(xué)過(guò)Java。像C#和MATLAB,Java是一種解釋性語(yǔ)言,這意味著它不會(huì)被編譯成機(jī)器代碼。相反,Java虛擬機(jī)在運(yùn)行時(shí)解釋指令。使用Java,理論上讓你可以在不同的機(jī)器上運(yùn)行相同的代碼,這得感謝Java虛擬機(jī)。在實(shí)踐中,這不總是可行的,有時(shí)會(huì)導(dǎo)致代碼運(yùn)行緩慢。但是Java在一部分機(jī)器人學(xué)中非常流行,因此你也許需要它。

  2、Python

  近年來(lái),學(xué)習(xí)Python的人有一個(gè)巨大的回潮,特別是在機(jī)器人領(lǐng)域。其中一個(gè)原因可能是Python(和C++)是ROS中兩種主要的編程語(yǔ)言。與 Java不同,Python的重點(diǎn)是易用性,Python不需要很多時(shí)間來(lái)做常規(guī)的事情,如定義和強(qiáng)制轉(zhuǎn)換變量類(lèi)型。這些在編程里面本是很平常的事。另外,Python還有大量的免費(fèi)庫(kù),這意味著當(dāng)你需要實(shí)現(xiàn)一些基本的功能時(shí)不必“重新發(fā)明輪子”。而且因?yàn)镻ython允許與C/C++代碼進(jìn)行簡(jiǎn)單的綁定。這就意味著代碼繁重部分的性能可以植入這些語(yǔ)言,從而避免性能損失。隨著越來(lái)越多的電子產(chǎn)品開(kāi)始支持“開(kāi)箱即用”Python(與 RaspberryPi一道),我們可能會(huì)在機(jī)器人中看到更多Python。

  注:The Raspberry Pi FoundaTIon:英國(guó)一個(gè)小型的慈善組織,成立的宗旨在于推廣科技,而非以銷(xiāo)售技術(shù)來(lái)營(yíng)利。

  1、C/C++

  最后我們到了排名第1的機(jī)器人編程語(yǔ)言!許多人認(rèn)為C和C++對(duì)新入行的機(jī)器人學(xué)家是一個(gè)很好的起點(diǎn)。為什么?因?yàn)楹芏嘤布?kù)都使用這兩種語(yǔ)言。這兩種語(yǔ)言允許與低級(jí)別的硬件進(jìn)行交互,允許實(shí)時(shí)性能,是非常成熟的編程語(yǔ)言?,F(xiàn)如今,你可能會(huì)使用C++比C多,因?yàn)榍罢呔哂懈嗟墓δ?。C++基本上是C的一種延伸。首先學(xué)一點(diǎn)C會(huì)很有用,特別是當(dāng)你發(fā)現(xiàn)一個(gè)硬件庫(kù)是用C編寫(xiě)的。C/C++并不是像Python或MATLAB那樣簡(jiǎn)單易用。同樣用C來(lái)實(shí)現(xiàn)相同的功能會(huì)需要大量時(shí)間,也將需要更多行代碼。但是,由于機(jī)器人非常依賴實(shí)時(shí)性能,C和C++是最接近我們機(jī)器人專(zhuān)家“標(biāo)準(zhǔn)語(yǔ)言”的編程語(yǔ)言。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動(dòng)電源

在工業(yè)自動(dòng)化蓬勃發(fā)展的當(dāng)下,工業(yè)電機(jī)作為核心動(dòng)力設(shè)備,其驅(qū)動(dòng)電源的性能直接關(guān)系到整個(gè)系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動(dòng)勢(shì)抑制與過(guò)流保護(hù)是驅(qū)動(dòng)電源設(shè)計(jì)中至關(guān)重要的兩個(gè)環(huán)節(jié),集成化方案的設(shè)計(jì)成為提升電機(jī)驅(qū)動(dòng)性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機(jī) 驅(qū)動(dòng)電源

LED 驅(qū)動(dòng)電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個(gè)照明設(shè)備的使用壽命。然而,在實(shí)際應(yīng)用中,LED 驅(qū)動(dòng)電源易損壞的問(wèn)題卻十分常見(jiàn),不僅增加了維護(hù)成本,還影響了用戶體驗(yàn)。要解決這一問(wèn)題,需從設(shè)計(jì)、生...

關(guān)鍵字: 驅(qū)動(dòng)電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動(dòng)電源的公式,電感內(nèi)電流波動(dòng)大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計(jì) 驅(qū)動(dòng)電源

電動(dòng)汽車(chē)(EV)作為新能源汽車(chē)的重要代表,正逐漸成為全球汽車(chē)產(chǎn)業(yè)的重要發(fā)展方向。電動(dòng)汽車(chē)的核心技術(shù)之一是電機(jī)驅(qū)動(dòng)控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機(jī)驅(qū)動(dòng)系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動(dòng)汽車(chē)的動(dòng)力性能和...

關(guān)鍵字: 電動(dòng)汽車(chē) 新能源 驅(qū)動(dòng)電源

在現(xiàn)代城市建設(shè)中,街道及停車(chē)場(chǎng)照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨(dú)特的優(yōu)勢(shì)逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動(dòng)電源 LED

LED通用照明設(shè)計(jì)工程師會(huì)遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動(dòng)電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動(dòng)電源的電磁干擾(EMI)問(wèn)題成為了一個(gè)不可忽視的挑戰(zhàn)。電磁干擾不僅會(huì)影響LED燈具的正常工作,還可能對(duì)周?chē)娮釉O(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來(lái)解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動(dòng)電源

開(kāi)關(guān)電源具有效率高的特性,而且開(kāi)關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機(jī)重量也有所下降,所以,現(xiàn)在的LED驅(qū)動(dòng)電源

關(guān)鍵字: LED 驅(qū)動(dòng)電源 開(kāi)關(guān)電源

LED驅(qū)動(dòng)電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動(dòng)LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動(dòng)電源
關(guān)閉