
这个问题很多新的机器人专家在职业生涯中都会至少问一次. 不幸的是,这也是一个没有简单答案的问题. 在本文中,我们将研究机器人技术中最流行的10种编程语言,并探讨它们各自的优缺点以及使用和丢弃它们的原因. 这实际上是一个非常合理的问题,毕竟,如果您从未实践过,那么为什么要花费大量的时间和精力来学习一种新的编程语言?如果您是菜鸟新手,那么您当然想学习一种对您的职业真正有用的编程语言. 为什么“取决于...”是一个无用的答案. 不幸的是,如果您问一个机器人技术专家的房间或在Stack Overflow,Quora,Trossen,Reddit,Research Gate之类的论坛上问“什么?这是机器人技术中最好的编程语言吗?”. 您将永远无法获得直接答案. 从工业机器人技术的角度来看,电气工程师将给出不同的答案. 计算机视觉程序员给出的答案将与认知机器人专家给出的答案不同. 而且,每个人对于什么是最好的编程语言都有自己的看法. 最后,大多数人都同意的答案是“取决于……”. 对于试图决定首先学习哪种语言的新进入者来说,这是一个毫无用处的答案. 即使这是最现实的答案,因为它实际上取决于您要开发的应用程序和所使用的系统.

◆◆◆我应该首先学习哪种编程语言?也许更合适的问题应该是首先学习哪种编程语言?您仍然会有不同的意见,但是许多机器人专家会同意从一种关键的编程语言入手. 正如我们在文章“机器人的必要技能”中所讨论的那样,对于机器人专家而言,最重要的事情是发展您的“编程思维”,而不是精通特定的编程语言. 从很多方面来说,开始使用哪种编程语言都没有关系. 您学习的每种语言都会改善您的编程思维. 通过这种思考,学习一种新的编程语言会容易得多. ◆◆◆机器人技术中最流行的10种编程语言. 世界上有超过1500种编程语言. 有太多东西要学. 当前,机器人技术中有这10种最流行的编程语言-如果您不喜欢这里的一种,请在消息区域告诉所有人. 对于机器人技术,每种编程语言都有不同的优势. 我只是按照重要性从低到高的顺序对它们进行了部分排序. 10. BASIC / Pascal BASIC和Pascal是我学到的前两种编程语言. 但这不是为什么我在这里列出它们. 对于几种工业机器人语言,它们是基础,下面将对其进行说明. BASIC是为初学者设计的(BASIC是初学者的通用符号指令代码的缩写),它使初学者可以从非常简单的编程语言中学习.

Pascal旨在鼓励良好的编程习惯,并引入了诸如指针之类的结构,这使Pascal成为了从BASIC到更复杂的语言的“垫脚石”. 今天,如果要说这两种语言是很好的``日常使用''编程语言,这两种语言已经有些过时了. 但是,如果您打算进行许多低级编码或想熟悉其他工业机器人编程语言,那么学习它会很有用. 9.工业机器人编程语言几乎每个机器人制造商都开发了自己的专有机器人编程语言,这已成为工业机器人行业的一个问题. 通过学习Pascal,您将熟悉其中的一些. 但是,每当您开始使用新的机器人时,就必须学习一种新的编程语言. 近年来,ROS行业已开始为程序员提供更多标准化的替代语言. 但是,如果您是技术人员,则您仍然更有可能必须使用制造商的编程语言. 8. LISPLISP是世界上第二古老的编程语言(FORTRAN较旧,但仅早一年). 与今天提到的许多其他编程语言相比,它的应用并不广泛. 但是它在人工智能编程领域仍然非常重要. ROS的一部分是用LISP编写的,尽管使用ROS不需要掌握它. 7.硬件描述语言(HDL)通常用于描述电气编程. 这些语言对于某些机器人专家来说是相当熟悉的,因为它们被用于FPGA(现场可编程门阵列)编程.

FPGA使您无需实际生产硅芯片即可开发电子硬件,这对于某些开发而言是一种更快,更容易的选择. 如果您尚未开发电子原型产品,则可能永远不会使用HDL. 即使这样,还是有必要了解这种编程语言,因为它们与其他编程语言有很大的不同. 重要的一点: HDL中的所有操作都是并发的,而不是基于基于处理器的编程语言的顺序操作. 6. AssemblyAssembly允许您以0和1位数字进行编程. 基本上,这是最低级的编程语言. 就在最近,最底层的电子设备要求对装配进行编程. 随着Arduino和其他诸如微控制器的兴起,现在您可以使用C / C ++在底部轻松编程. 这意味着对于大多数机器人专家来说,组装可能甚至变得不必要. 5.一些机器人工程师特别喜欢MATLABMATLAB及其相关的开源资源,例如Octave. 它用于分析数据和开发控制系统. 还有一个非常流行的机器人工具箱-MATLAB. 我认识一些专家,他们可以仅使用MATLAB来开发整个机器人系统. 如果要分析数据,生成高级图像或实现控制系统,则可能需要学习MATLAB. 4. C#/. NETC#是Microsoft提供的一种特殊编程语言. 我将C#/. NET放在这里,主要是因为Microsoft Robotics Developer Studio. 该软件包的主要开发语言是C#.

如果计划使用此系统,则可能必须使用C#. 3. Java作为一名电子工程师,我总是对某些计算机科学学位课程使用Java作为学生学习的第一门编程语言感到惊讶. Java对程序员隐藏了底层存储功能,这使得它比某些语言(例如C语言)更容易编写,但是这也意味着您将对底层代码的操作逻辑有所了解. 如果您具有计算机科学背景并且转而使用机器人技术(很都从事过,尤其是在研究领域),那么您可能已经学习过Java. 与C#和MATLAB一样,Java是一种解释型语言,这意味着它不会被编译成机器代码. 相反,Java虚拟机在运行时解释指令. 理论上,由于使用Java虚拟机,使用Java可以使您在不同的计算机上运行相同的代码. 实际上,这并不总是可行的,有时会导致代码运行缓慢. 但是Java在某些机器人技术中非常流行,因此您可能需要它. 2. Python近年来,学习Python的人们大量兴起,尤其是在机器人技术领域. 原因之一可能是Python(和C ++)是ROS中的两种主要编程语言. 与Java不同,Python的重点是易用性. Python不需要花费很多时间来执行常规的事情,例如定义和强制变量类型. 这些是编程中非常常见的事情.
此外,Python有大量的免费库,这意味着当您需要实会: 英国的一个小型慈善组织,旨在促进技术发展,而不是为了牟利而出售技术. 1. C / C ++终于我们达到了排名第一的机器人编程语言!许认为C和C ++是新机器人专家的良好起点. 为什么?因为许多硬件库都使用这两种语言. 这两种语言允许与低级硬件交互,允许实时性能,并且是非常成熟的编程语言. 如今,您可能会比C使用更多的C ++,因为前者具有更. C ++本质上是C的扩展. 首先学习C是很有用的,尤其是当您发现用C编写硬件库时. C/ C ++不如Python或MATLAB容易使用. 同样,在C中实现相同功能将花费大量时间,并且还将需要更多代码行. 但是,由于机器人严重依赖实时性能,因此C和C ++是最接近我们机器人专家的``标准语言''的编程语言.
◆◆◆您应该按什么顺序学习它们?尽管我们在这里列出了10种语言,但这并不意味着您必须学习所有这些语言. 最重要的是找到一种感觉自然且适合机器人硬件的语言. 您需要一种可以轻松快速地开发程序的语言. 这样,您可以将更多精力放在开发功能上. 有鉴于此,我建议您首先学习Python. 当然,这只是我个人的看法. 如果另一种语言对您更有意义,则选择该语言. 但是,Python是一种非常简单易学的语言. 由于其庞大且方便的库,Python非常强大. 我听说,有很多编程经验的程序员可以在短期学习Python之后立即使用Python满足所有编程需求. 就像有人说的那样: 我可以使用Python快速输入有用的代码. 在精通使用Python之后,我个人建议您先学习C,然后再学习C ++. 在对大多数机器人硬件驱动程序接口进行编程时,将需要它. 原始发布时间: 2016-03-19本文来自云栖社区的合作伙伴“大数据文摘”. 有关相关信息,请遵循“ BigDataDigest”微信公众号
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/shumachanpin/article-291871-1.html
东海和北海舰队赴西太平洋演习