0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

机器人研发中使用的十大最流行的编程语言详解

OaXG_jingzhengl 2017-12-11 17:05 次阅读

在本文中,我们将介绍机器人研发中使用的十大最流行的编程语言。我们将讨论他们的缺点和优点,以及使用或者不使用它们的理由。世界上有超过1500种编程语言你可以学习。下面列出的是目前机器人中十种最流行的编程语言。每种语言都有不同的优势,作者根据自身经验,按照优先级从低到高排序。

这个问题大多数新的机器人专家在他们的职业生涯中至少会思考一次。不幸的是,这也是一个没有直接答案的问题。

如果你在 Stack Overflow、Quora、Trossen、Reddit 或 Research Gate 等机器人专家或者社区论坛上提问“机器人最好的编程语言是什么?” 你会得到不同的答案。正如我们在文章中讨论的基本机器人技能一样,对于机器人学家来说最关键的是建立“ 编程思维 ”,而不是用一种特定的语言来衡量。在很多方面,你首先学习哪种编程语言并不重要,重要的是在通过编程思维来不断提高自身的技能。

回归主题,在本文中,我们将介绍机器人研发中使用的十大最流行的编程语言。我们将讨论他们的缺点和优点,以及使用或者不使用它们的理由。世界上有超过1500种编程语言你可以学习。下面列出的是目前机器人中十种最流行的编程语言。每种语言都有不同的优势,作者根据自身经验,按照优先级从低到高排序。

10. BASIC / Pascal

BASIC和Pascal是我曾经学过了的两种主要的编程语言。但这并不是我把它们放在榜单上的原因。相反,它们是运用于工业机器人编程上很好的语言。BASIC 针对初学者设计,这使它可以成为开发者简单的入门语言。

Pascal的目的是提高编程实践,并提出像指针这样的构建,这使得它成为一个从 BASIC 到更多编程语言的奠基石。如今,这两种语言对于“日常运用”来说有些过时了。但是普通情况下,您要进行相当程度的底层编码,或者需要熟悉其他工业机器人语言,那么了解它们会对您有所帮助。

9.工业机器人语言

实际上,每一个机器人制造商都已经建立了自己特定的限制性机器人编程语言,这一直是工业机器人领域的一个问题。通过学习Pascal,你会熟悉他们的一部分。但是,当你开始在另一个机器人平台编码时,都必须使用另一种语言。

机械臂领域实力强劲的 ABB 公司,用的语言系统叫做 RAPID;来自于德国的 KUKA,语言和公司名字一样也叫做 KUKA;Comau 利用 PDL2;Yaskawa 利用 Advise 和 Kawasaki 利用 AS。在这一点上,Fanuc 机器人利用 Karel,Staubli 机器人利用 VAL3 和 Widespread Robots 利用 URScript。

最近,像 ROS 这样的行业已经开始为程序员提供更加标准化的语言选择。尽管如此,作为一个技术人员,你仍需要使用制造商的编程语言。

8. LISP

LISP是世界上第二古老的编程语言(FORTRAN更为古老,但只差一年)。相比与其他语言,它使用得并不是很广泛,但是在人工智能编程领域还是很最重要的。ROS的一部分是用 LISP 编写的,事实上,你并不需要知ROS是怎么编写的。

7.硬件描述语言(HDL)

硬件描述语言基本上是描绘电气的编程方法。这些语言对于一些机器人专家来说是非常普遍的,因为他们习惯用 FPGAs(Field Programmable Gate Arrays)编程。FPGA可以不用硅芯片便能开发出电子硬件,这使得它们成为一种开发的更快,更低要求的改进选择。如果你不模拟硬件,你可能永远不会使用HDL。

存在即是合理,你还是需要了解一下HDL的,并且它们和其他编程语言也不太一样。HDL的所有的操作都是并行完成的,而不是像基于处理器的语言那样顺序操作。

6.Assembly

Assembly 可以让你用“0和1”进行编程,这是最底层的编程。在过去,大多数底层硬件需要在 Assembly 中进行编程。随着 Arduino 和其他类似微控制器的兴起,你现在可以利用C / C ++在底层进行有效的编程,这意味着 Assembly 对于一般的机器人专家来说可能会不那么重要。

5. MATLAB

MATLAB和它的开源亲戚(例如Octave)在一些机器人专家中非常有名,是他们负责调查数据和创建控制系统常用的语言。还有一个非常有名的MATLAB机器人 工具箱。我知道使用MATLAB单独创建整个机器人系统的人员。所以,如果您需要分解数据,创建高级图表或执行控制系统,那就很可能需要学习MATLAB。

4. C#/.NET

C#是微软提供的一种限制性编程语言。C#/ .NET很大程度上是为微软机器人工程师工作室(Microsoft Robotics Studio Studio)提供的,微软机器人工程师工作室将其作为基本语言。如果你将使用这个框架,你就必须学习 C#。尽管如此,首先学习C / C ++,也可以提高自身的编码能力。

3. Java

作为一个电子设计工程师,我很惊讶一些软件工程学院将 JAVA 作为他们第一个学习的编程语言。

Java把对程序员的底层存储功能“隐藏了”,这使得对Java程序的要求不那么高,而且也意味着你对代码的处理方式了解得不多。从软件工程的基础到探索机器人的未来,你很可能已经学习了Java。

像C#和MATLAB一样,Java是一种解释性语言,这意味着它不会被合并到机器语言代码中。相反,Java虚拟机在运行时解释指令。理论上来说,基于Java虚拟机,使用Java可以在不同机器上使用类似的代码。但实际上,这并不普遍使用,有时会导致代码运行缓慢。但是Java编程语言在机器人研究中非常流行,所以你可能需要它。

2. Python

在机器人研究领域,Python 占据了重要地位。其中一个原因很可能是 Python(和C ++)是ROS中的两种主要编程语言。像Java一样,它是一种解释性语言。但也不同于Java,Python 语言主要集中在可用性上。Python不需要花大量的时间来做常规的事情,例如定义和强制转换变量类型。此外,还有大量免费的库,这意味着当你不得不实现一些基本的功能时,你不需要“重新造轮子”。而且由于它允许与C / C ++代码之间可以进行简单的绑定,这意味着执行代码繁重部分的性能可以植入这些语言,从而避免性能损失。随着越来越多的电子产品开始使用“开箱即用”的Python(像Raspberry Pi那样),我们可能会在机器人中看到更多的Python。

1. C/C++

机器人研发第一编程语言—c++。许多人都认为 C 和 C ++ 对机器人科学家来说是一个很好的开端。为什么?因为相当多的硬件库使用这些语言。它们适用于低级别的硬件,允许实时性能,是非常成熟的编程语言。

现在,你可能会更多地使用C ++,因为C++具有更强大的实用性。C ++是C的一个扩展。从基础的C学习,你也可以得到很多收获,尤其是当你发现一个硬件库是用 C 编写的时候。C / C ++不像Python或MATLAB那么容易学习的。使用C来执行类似的功能可能需要相当长的时间,并且需要更多的代码。尽管如此,但机器人极其依赖实时性能,所以它们仍然是机器人科学家心中的“标准”机器人编程语言。

那学习哪一个比较好呢?

我列举了机器人十大热门编程语言,并不意味着你每一个都需要去学习。最重要的是发现一种适合你的语言,当然,也适用于你的机器人硬件。您需要一种可以让你快速有效地创建程序的语言,你可以更专注于实用性。

因此,我建议先学习Python。这是我根据自己的自身经验来说,当然你也可以先学习适合你的语言。无论如何,Python是一门简单易学的语言它有许多有效的库可供学习,而且功能非常强大。我听过很多经验丰富的程序员在几天内就学会了Python,并且很快就运用到了大部分编程需求里面。在你学会了 Python 之后,我会建议学习 C,再由C ++来牵引。因为你需要将它与机器人硬件驱动程序的巨大主导接口进行交互。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 人工智能
    +关注

    关注

    1773

    文章

    43356

    浏览量

    230123
  • python
    +关注

    关注

    51

    文章

    4657

    浏览量

    83377

原文标题:进行人工智能机器人研发,应该选择哪种编程语言?

文章出处:【微信号:jingzhenglizixun,微信公众号:机器人博览】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    变色龙机器人DARPA研发出可变色硅胶机器人

    `变色龙机器人DARPA研发出可变色硅胶机器人`
    发表于 08-20 17:36

    扫地机器人十大排名!了解扫地机器人哪个牌子好

    的扫地机器人生产基地之一,集智能机器人研发、生产、销售为一体的国际化、专业化高新技术企业  4、福玛特  北京利而浦电器有限责任公司,福玛特,扫地机器人
    发表于 01-20 12:04

    全球十大超酷机器人!简直不可思议!

    。  3 乐高机器人调酒师:为你倒饮料的机器人 机器人调酒师理解自然的语言,就跟真的调酒师一样接受客人的点酒。它有一个鸡尾酒酒谱资料库。客人一进来,它会提供饮料。客人可以选择任何的鸡尾
    发表于 01-20 14:15

    扫地机器人如何选购?

    作为一个朝九晚五的上班狗。每天累死累活。家里都快成猪窝了。有大神推荐下扫地机器人么?我刚看了另一个帖子扫地机器人十大排名什么的。还是懵里懵懂,求选购小技巧哈。。。
    发表于 01-21 09:42

    家用机器人出了扫地机器人还有那些类型啊?

    如题。在论坛有看到家用机器人的2014年度十大款类型。比较感兴趣,不知道有没有大神了解比较全面的家用机器人知识?
    发表于 02-11 11:16

    当前最实用的十大医疗机器人

    胸透时,可能存在医生没有察觉的细微情况。而这些机器人能提供更多特定的诊断功能。5. RP-VITARP-VITA是由iRobot和InToch Heath公司联合研发的远程医疗机器人。作为远程医疗助手
    发表于 03-02 15:05

    C语言教学机器人

    教学方法的局限,解决了C程序设计课程抽象、枯燥、难学和学习效果差的老大难问题。C语言教学机器人可作为“C程序设计”课程的日常教学实训,也可以作为工程训练、编程类课程的课程设计项目器材,同时还可以供广大希望从事嵌入式系统开发和C
    发表于 03-28 11:24

    自己开发的机器人图形化编程软件

    自己开发的机器人图形化编程软件从2005年起就开始搞机器人教学了,至今每年夏天都举行机器人夏令营。10年来一直尝试做一款简单稳定好用的机器人
    发表于 07-02 20:15

    物流机器人“驾到” 这个行业是要变天了!

    机器人也已正式上线了。近日,国内知名的机器人企业,深圳十大机器人企业之一中智科创机器人有限公司(简称中智科创)与国内最大的物流公司之一达成协
    发表于 04-14 17:45

    六轴工业机器人的主要特点

    ,而且还具有记忆能力、语言理解能力、图像识别能力、推理判断能力等人工智能,这些都是微电子技术的应用,特别是计算机技术的应用密切相关。六轴关节工业机器人研发设计及制造已经有好几年的历
    发表于 08-08 11:30

    机器人10大流行编程语言对比,你学会了哪种?

    有超过1500种编程语言,要学的话太多了。今天我们学习的是目前机器人技术中种最流行编程
    发表于 12-05 16:42

    机器人编程的区别

    在前一篇文章中讲了机器人编程的区别,但总感觉讲的比较空泛,这篇文章继续讲讲那些区别。计算机编程机器人编程最大的区别就是一个是控制虚拟的,
    发表于 09-01 07:12

    Motoman机器人离线编程

    欢迎关注Jungle的Motoman机器人离线编程专栏系列文章:Motoman机器人离线编程——Motocom32开发简介Motoman机器人
    发表于 09-07 07:33

    机器人研发十大热门编程语言:Java、C/C ++、Python

    流水的编程语言,铁打的 Java、C/C++。 进行人工智能机器人研发,应该选择哪种编程语言
    发表于 11-28 10:01 4934次阅读

    机器人的最佳编程语言是什么?机器人十大流行编程语言汇总

    机器人的主要特点之一是其通用性,是机器人具有可编程能力是实现这一特点的重要手段。机器人编程必然涉及机器人
    的头像 发表于 05-01 17:32 3.4w次阅读