但是机器人的快速发展也为该领域的研究与开发人员带来了巨大的挑战。机器人领域的著名科学家David Barrett博士(曾任iRobot公司副总裁、迪士尼梦幻工程公司主管,现任美国Olin学院SCOPE项目主管,)在2009年NIWeek图形化系统设计会议上总结了当前机器人开发所面临的三大挑战:创造更小、更轻、更强大的电池;创造更小、更轻、更强大的执行机构;需要一个工业级的、并且具有良好兼容性的软件开发平台。这些挑战也获得了业内其他领导者的响应:Segway思维车的发明人、FIRST机构及DEKA研发公司的创始人Dean Kamen表达了对机器人开发中传统嵌入式方法的顾虑;美国国防部地面机器人和自主系统主管Ellen Purdy关注于自主系统的进一步标准化和持久性(电池能力)需要;韩国浦项智能机器人研究所的Hee Chang Moon博士强调了对于集成的嵌入式系统以及直观式开发软件的需求。认识到这些挑战,世界各地的业内人士都在努力寻求这些挑战的解决之道:Dean Kamen的团队选择NI LabVIEW软件和NI CompactRIO嵌入式硬件平台用于FIRST项目中的机器人自主控制系统开发;TORC科技公司从传统的编程工具转而使用NI LabVIEW软件平台设计其复杂的自主系统,其CEO Michael Fleming在NIWeek会议上特别谈到了TORC如何从功能强大的高级软件中获益,从而有助于简化系统设计中的复杂问题。
接下来我们将展开分析这些挑战,并探寻相应的应对方法。
图1 FIRST机器人竞赛平台采用NI LabVIEW软件和嵌入式硬件CompactRIO,在这些工具的帮助下即使是高中学生也能解决机器人设计中的复杂问题
挑战一. 创造更小、更轻、更强大的电池
许多机器人需要在野外或严苛的环境中长时间独立工作,需要可长时间独立供电的电源。目前全世界有多家公司和研究机构致力于这方面研究。许多厂商选择NI平台用于设计仿真、生产优化、验证测试等各个环节,推动其创新产品的研发、生产和应用,这些创新产品包括新型燃料电池、太阳能电池、基于小型移动平台的高效发电和蓄能装置等。
能够长时间独立运行的机器人系统不仅需要更高效的新型电池,还需要对能源的使用进行优化,例如通过增加电源管理功能有效地监测电量消耗并选择不同的节电模式,这样才能真正发挥出新型电池的效能优势。NI计划对其嵌入式硬件平台CompactRIO和SingleBoard RIO增加内置电源自诊断和监视功能,使机器人开发人员可以通过相应的API直接访问电池状态,从而设计更优化的待机和节电模式。NI希望通过这些努力最终消除电源问题对机器人发展的制约。 2. 软件必须具备与硬件的良好集成性
每个自主系统都必须感知或察觉周围世界的环境并做出反应。感知系统需要外部传感器(如激光测距仪、声纳传感器等),做出反应则要依靠不同类型的执行机构完成。因此软件工具必须能够直接驱动各种传感器和执行机构。除了感知系统和执行控制,往往还需要在真实硬件上实现决策规划,这意味着软件必须具有与实时系统、实时嵌入式硬件、甚至FPGA的强大交互性。目前的许多机器人软件开发包缺乏类似功能,它们能够仿真并在开发机器上运行,但不具备在实时硬件目标上的执行能力。
图5 基于NI嵌入式硬件平台CompactRIO搭建成的机器人原型,从仿真到最终系统实现的软件平台均为NI LabVIEW
3. 软件必须具备良好的交互性
完成机器人设计并不简单,它需要反复修改和原型设计。因此机器人领域的研发人员需要一款可以轻松调试的软件包,既可进行直观的仿真,又能在实时硬件系统上快速实现,从而测试算法和真实I/O。每次硬件实验之后都可能再回到开发环境,对代码进行进一步优化或调整。这些都要求软件开发工具具有极佳的交互性。
针对上述三点需求,NI LabVIEW软件是一款理想的机器人开发软件。LabVIEW图形化编程方式使其天然具备直观性。最新的LabVIEW机器人模块还集成了常用的搜索、蔽障、路径规划、以及动力学算法,可以最大程度地帮助机器人开发人员快速实现应用。此外,与硬件的无缝集成也是LabVIEW的一大特点。通过LabVIEW软件本身就可以连接各种传感器和执行机构。完成算法仿真的LabVIEW代码可以直接下载到NI嵌入式实时硬件平台CompactRIO或SingleBoard RIO执行,从而实现真正的与硬件无缝集成。LabVIEW机器人模块中还提供了多种机器人常用传感器在实时硬件平台下的现成驱动程序,从而使机器人的开发更为简单。最后,LabVIEW提供交互式的调试环境和丰富的界面设计工具,各种算法都可在实时嵌入式硬件上直接实现,并可方便地反复修改验证,满足了机器人研究人员的调试需要。SCOPE项目主管Barrett博士称LabVIEW正是工业界所需的软件:“我花了15年时间力图探寻最佳机器人编程语言,NI LabVIEW无愧殊荣。它能够处理各类传感器、多种执行机构、复杂动态控制算法,并能在实时环境下轻松进行验证调试,完成系统实现。”
除了上述优点,NI LabVIEW还具有高度的灵活性和开放性。例如,LabVIEW机器人模块已经提供一些成熟的路径搜索算法,用户可重用这些算法,同时用户也可以基于这些基本的搜索算法添加他们的创新或最新研究成果,从而创建新型的搜索算法。用户也可以将这些算法与LabVIEW中提供的其他算法或第三方技术集成从而开发更多的创新应用,如机器人救援或医疗辅助应用。LabVIEW是一个开放的软件,它支持许多厂商的硬件平台或自定义设备,并且支持调用多种第三方开发工具产生的代码或模型,使其应用范围拓展到机器人应用的各个领域。结论
随着机器人领域的快速发展,开发人员面临着多方面的挑战。全世界的研究机构和相关厂商都在研究应对这些挑战的办法。事实上,现在已经有一些工具可以帮助机器人领域的研发人员应对这些挑战,比如NI LabVIEW软件和嵌入式硬件平台。我们深信专业知识不该成为创造机器人创新应用的瓶颈,未来每个工程师都应该能借助功能强大的设计工具从容地开发高端机器人。随着技术的创新和进步,许多问题将被解决,同时又会出现新的问题,但只要有灵活开放的开发工具,就能够不断解决这些问题,使机器人领域的发展不断达到新的高度。
参考文献
[1] http://www.roboticsbusinessreview.com/
本文已刊登与EE Times China 2010年4月刊
评论
查看更多