问题标签 [robotics]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
25 回答
9310 浏览

robotics - 文本与图形编程语言

我是一个高中机器人团队的一员,关于使用哪种语言对我们的机器人进行编程存在一些争论。我们在 C(或者可能是 C++)和 LabVIEW 之间进行选择。每种语言都有优点。

C(++):

  • 被广泛使用的
  • 为未来做好准备(大多数编程职位都需要基于文本的程序员。)
  • 我们可以从去年开始扩展我们的 C 代码库
  • 让我们更好地了解我们的机器人在做什么。

LabVIEW

  • 更容易可视化程序流程(块和连线,而不是代码行)
  • 更容易教(据说......)
  • “编程的未来是图形化的。” (也这样觉得?)
  • 更接近一些新成员可能拥有的 Robolab 背景。
  • 不需要亲密地知道发生了什么。只需告诉模块找到红球,不需要知道如何。

这对我们来说是一个非常艰难的决定,我们已经争论了一段时间。基于每种语言的这些优点,以及你所拥有的经验,你认为更好的选择是什么?请记住,我们不一定要追求纯粹的效率。我们也希望让我们的程序员为未来的编程做好准备。

还:

  • 您认为 LabVEIW 等图形语言是编程的未来吗?
  • 图形语言比文本语言更容易学习吗? 我认为他们应该同样具有学习挑战性。
  • 鉴于我们部分植根于帮助人们学习,我们应该在多大程度上依赖预先编写的模块,以及我们应该尝试自己编写多少? (“优秀的程序员写出优秀的代码,优秀的程序员复制优秀的代码。”但首先成为一名优秀的程序员不值得吗?)

感谢您的建议!


编辑:我想更加强调这个问题:队长认为LabVIEW更好,因为它易于学习和教学。 真的吗? 我认为 C 可以很容易地教授,初学者级别的任务仍然可以使用 C。我真的很想听听您的意见。 输入 while{} 是否比创建“while 框”更困难? 程序逐行流动,仅由 ifs 和循环修改,这不是很直观,因为程序流过线路很直观,仅由 ifs 和循环修改!?

再次感谢!


编辑:我刚刚意识到这属于“语言辩论”的主题。我希望它没问题,因为它是关于什么最适合特定的编程分支,有特定的目标。如果不是……对不起……

0 投票
2 回答
463 浏览

artificial-intelligence - 如何在 Microsoft Robotics Studio 2.0 中创建新类型的实体?

我试图用 MRS 做的是自学一些基本的人工智能;我想做的是制作一个火箭实体,包括矢量排气和分级。任何人都知道如何制作一个可以飞行的实体?还是我只需要不断地向上施加力?

0 投票
6 回答
17621 浏览

signal-processing - 集成陀螺仪和加速度计读数

可能重复:
结合陀螺仪和加速度计数据

我已经阅读了很多关于Kalman filters.

我有一个系统,其中包含一个三轴加速度计和一个陀螺仪,用于测量围绕加速度计轴之一的旋转。该系统设计为由人手持,大部分时间陀螺仪将测量围绕重力矢量或接近重力矢量的旋转。(在同一行业工作的人可能会从中认出我在说什么;))我意识到这是不受约束的。

陀螺仪似乎具有近乎恒定的偏差,对于系统的每个实例都略有不同。当系统倾斜时,我将如何编写过滤器以使用加速度计读数来校准陀螺仪,因此陀螺轴与重力不共线,并且围绕陀螺轴旋转?似乎应该有足够的信息来做到这一点,但被告知没有,为什么也会是一个答案:)

0 投票
1 回答
319 浏览

windows-ce - Microsoft Robotics Developer Studio 是否适用于 CE 6?

我有一个我创建的 DSS 服务(对于 Microsoft Robotics Studio)。然后我按照文档使其成为一个紧凑的框架服务并创建了一个部署包。然后我将它部署到 CE 6 设备...

MSRS 服务是否适用于 CE 6?该文档讨论了 CE 5。如果我运行它应该看什么?我希望看到类似于在 Windows 上运行 DSSHost 的东西......但我只看到一个空白屏幕,所以我不知道该服务是否正在运行。该文档指出,第一次确实需要时间(EBOX-2300 上 +/- 30 秒)。我离开了一段时间,但仍然是一个空白屏幕!

我应该看点什么吗?我也尝试使用网络浏览器访问该服务,但没有运气。另外,如何设置安全设置以允许分布式节点?


我还没有完全隔离问题,但我有一个解决方法!!!

我最初尝试使用 MSRS 2008 (CTP) + Visual Studio 2008 创建我的服务,但没有任何成功!!!

我现在使用 MSRS 1.5 Refresh + Visual Studio 2005 做了同样的事情,它工作 100%

如果是 VS 2008 与 VS 2005 或 MSRS 1.5 与 MSRS 2008,我将尝试隔离

PS。我还在 CE 5 和 CE 6 上尝试过,两者都有效!!!

0 投票
12 回答
4817 浏览

simulation - 机器人模拟环境

我想列出一个出色的机器人模拟环境,包括它们的优点和缺点。我知道的一些例子是WebotsPlayer/Stage

0 投票
2 回答
672 浏览

api - 您是否会将下一代火星探测器的控制 API 构建为 RESTful 而不是 RPC?

如果这几乎是一个“讨论”问题,请原谅我,但我真的很感激是/否的答案,并有适当的解释。

假设你必须为机器人设计和实现一个控制 API,比如下一代火星探测器。您是根据 RESTful 原则构建此 API,还是使用经典的 RPC,例如 XMLRPC?

我问这个是因为我必须做类似的事情,尽管“机器人”是虚拟机的集合。一位颇有说服力的工程师(一位著名的 REST 倡导者)敦促我让 API 成为 RESTful。我从未使用过 REST 原则,并且我正在努力了解它们如何适合设计低级进程间 API。REST 似乎融入了与可修改的数据存储库交互的主题,通常距离很远。我正在尝试做的事情更像是在密切控制一个机器人。我可以看出人们如何争辩说,抽象地说,机器人只是一个数据存储库——“PUT 左转”、“PUT 行进 100 米”、“获取外部温度”。但这似乎是一个相当做作的模型。我当然不会从缓存或代理中获得任何好处(“你好,喷气推进实验室?这是堪培拉的 Akamai co-lo。我们现在要接管 Rover,好吗?”)

那么,RESTful 架构在这里有用吗?即使交互如此狭窄,它仍然优于 RPC 吗?

0 投票
6 回答
10175 浏览

.net - 什么是最好的 .NET Micro Framework 开发板,价格低于 300 美元?

我正在寻找用于个人机器人项目的相对便宜的 .NET Micro Framework 开发板。I/O 不需要太多,但我至少需要一个串行端口和一个以太网端口。

我宁愿不必在董事会上花费超过 300 美元,但如果有明显的理由要获得更好的董事会,我会很灵活。

目前我正在研究SJJ Embedded Micro Solutions 的这款设备。有没有人使用过这个设备?

0 投票
5 回答
2091 浏览

robotics - 用于构建自动 CD 加载臂的定制机器人

你会建议我在哪里找到一家公司来开发或购买类似于:http ://www.dextimus.com/ 的 CD/DVD 装载臂

最好通过 USB 进行编程,但如果我只能得到一个带有串行接口的接口就可以了。驱动程序无关紧要 - 我可以直接与设备交互,因为我的情况非常独特。

0 投票
14 回答
2969 浏览

artificial-intelligence - 如何创造现实生活中的机器人?

甚至在我学习编程之前,我就对机器人的工作方式很着迷。现在我知道如何编写底层编程指令,但我不明白的是机器人如何遵循这些指令。

例如,如果我写了这段代码:

CPU 将如何跟踪该程序以使机器人执行向左看、移动手臂等物理动作?它主要是用二进制语言/ASM 完成的吗?

最后,如果我想学习如何创建机器人,我会去哪里?

0 投票
7 回答
12156 浏览

programming-languages - Lego Mindstorms Programming - 您使用/推荐哪种语言/IDE?

我是新手,目前正在使用 Lego Mindstorms IDE 使用的可视化流程图之类的语言。我对图表语言的可读性印象深刻,但缺少实际代码的灵活性。我正在想象我想尝试的复杂项目,但我并不想将它们实现为一个巨大的流程图!哈哈 :)

我知道您可以使用其他语言/IDE,但不确定它们是什么或使用哪个。对于 Lego Mindstorms 项目的编程,你推荐什么 IDE/语言?

我更喜欢一个仍然允许我点击运行并通过蓝牙将程序发送到 NXT 砖并立即运行的 IDE。

更新:我最终选择了lejos。主要是因为我刚开始在工作中学习 Java,这与我已经熟悉的 C# 非常相似。我会推荐 Lejos,因为 Java 是一种很棒的高级、功能丰富的语言,并且有很好的 IDE。Eclipse 是一个很棒的 IDE,lejos 有一个插件,并且 ant 构建脚本使构建您的项目,将其加载到 NXT 砖并在设备上运行它是一步过程。Lejos 确实需要在您的 NXT 积木上安装特殊固件,但效果很好,如果您愿意,以后可以随时重新打开旧的 Mindstorms 固件。

如果您想查看其他语言和 IDE 选项,我强烈推荐我偶然发现的这张图表http ://www.teamhassenplug.org/NXT/NXTSoftware.html