#1 楼
这取决于-要素地图中的地标数量,您愿意花多少时间来调整算法的速度,以及可能无法为给定应用程序控制的其他参数。编辑:作为一项思想实验,我认为它在理论上足够强大,可以在非常人为的环境中(例如,带有几个圆锥体的运动场中心)进行极其简单的近实时SLAM。出发。它可能需要从Kinect中获取一条扫描线并更新低分辨率的2D内部地图,并定期进行更新(例如每10秒更新一次)。
Uno的2K RAM可能会破坏交易,但是Mega可能有足够的(8K),并且有将其升级到520K的技巧。
实际上,在8位处理器上进行浮点矩阵计算不是一个好主意。
#2 楼
Arduino一直以来的功能不足。比arduino功能强大。它显示了四旋翼稳定和Reprap风格的g代码执行是arduino被迫远远超出其功能的两个主要领域。 (ardrupilot项目需要三个arduino。)希望teensy / due / leaflabs之类的东西将有助于使ARM开发更加友好。许多新的/更好的项目,例如冰沙,openpilot等也都取得了进步。
评论
$ \ begingroup $
毫无疑问,同意!我在1980年的老式电子商店买了一个简单的机械臂。该控制器的主频为19MHz,而Arduino的为16MHz,RAM为3倍!从1980年开始!可悲的是,人们对这个小小的蓝板的吸引力做出了反应。 Arduino很像Java,虽然很酷,但是却出于任何原因而功能不足和使用过度。
$ \ endgroup $
–克里斯
2012年11月28日在8:12
$ \ begingroup $
@Chris,公平地说,我怀疑机械臂在1980年的价格仅为24美元(即使在今天,要找到便宜又不算垃圾的机械臂也很难)。我也怀疑它有庞大的社区用户和庞大的免费软件库。硬件的价值不仅仅是时钟速度和内存。许多产品之所以失败,是因为即使技术上优越,它们在使用不足时也被高估了。
$ \ endgroup $
–塞林
2015年4月11日,0:11
#3 楼
Arduino微控制器的原始规格列出了高达16或20 MHz的时钟速度-大约是1990年代中期的Intel 386计算机的速度。这听起来很有希望,除非您考虑到它本身不支持浮点数学这一事实-比较大多数CPU的“ FLOPS”度量。我看过一些arduino演示,它们以大约60 kFLOPS的速度计算Arduino的速度,而Intel 386在20 MHz时的速度类似于170 kFLOPS(根据此页面)。请注意,Arduino执行8位数学运算,而386执行16位和32位数学运算。 DSP板可能更适合这种数据采集,但是我在这方面无能为力。
使该代码在Arduino可能这样的受限环境中工作,但需要大量的优化。使用功能更强大的CPU来实现这些算法会更好。确保它们可以在功能强大的CPU上工作,然后尝试针对性能较弱的CPU进行优化。
评论
$ \ begingroup $
但是您必须记住,Apple II具有6502(8位,1MHz)和16K RAM。 AppleSoft BASIC是浮点数,其“杀手级应用”是VisiCalc链接。仅需有限的硬件,您就可以做很多事情。 (整个行业都在后面)
$ \ endgroup $
– Paul Williams
2012年11月27日在16:29
$ \ begingroup $
您正在比较微控制器和微处理器。 386没有六通道PWM硬件生成器,ADC,模拟比较器,其两个设备意味着两个不同的工作。另外,如果有人需要高浮点吞吐量,他们可能会使用带有FPU的单元,但是我做了很多不需要浮点的项目,在某些情况下,这是优化的问题。 ATMega在20Mhz时达到接近20MIPS,而386在33 MHz时达到9.9 MIPS。
$ \ endgroup $
–迭戈·纳西门托(Diego C Nascimento)
2014年1月24日19:43
$ \ begingroup $
这个问题与SLAM有关,因此FLOPS是用于比较这两个处理单元的唯一相关指标。
$ \ endgroup $
–伊恩
2014年1月25日20:25
#4 楼
对于Arduino Uno或更低的价格,最新的替代品是TI Stellaris Launchpad,价格为12.99美元(包括全球FedEx):Arm Cortex M4具有出色的内置库集StellarisWare,它位于ROM上-因此您的Flash和RAM仍可免费供应用程序使用。#5 楼
的确,既然人们受到Raspberry Pis的欢迎,Arduino的功能似乎就开始不足,但是我认为它更多地取决于应用程序。我喜欢arduino,因为代码真的很容易编写,很容易刷新新代码,也很容易连接新传感器。我不会将它用于kinect或网络摄像头之类的视觉应用程序,但它不仅可以与伺服器对话,而且还能做很多事情。 segway类型的应用程序就是一个很好的例子。 arduino非常适合与加速度传感器进行对话,进行3D空间数学运算,然后与伺服器对话以保持平衡。评论
$ \ begingroup $
我认为在这里将苹果与苹果进行比较并将Uno的ATMega芯片与其他微控制器进行比较非常重要。 Raspberry Pi中的700MHz ARM是橙色的。话虽这么说,Arduino Due / LeafLabs Maple中的ARM Cortex-M3芯片和Digilent chipKIT板中的PIC32芯片等都在相同的编程环境下将Uno彻底从计算中淘汰了。
$ \ endgroup $
–乔·贝克(Joe Baker)
2012年11月30日10:14
评论
$ \ begingroup $
好吧,所以您说的是,即使是使用Arduino尝试2D SLAM也将有些困难。谢谢。
$ \ endgroup $
– golmschenk
2012年11月27日16:20