Quanser系统的大多数用户都非常了解QUARC,也就是快速控制原型软件。与Simulink®无缝集成,QUARC显著加快了控制设计和实现过程。但是很少有人意识到Quanser的实时控制可以追溯到很久以前。可以追溯到Simulink发布以及微软Windows普及之前。
你是否还记得DOS?
由Quanser的创始人兼首席技术官Jacob Apkarian博士开发的基于DOS的实时控制应用程序,是第一次尝试将控制设计和实际硬件实时连接起来。尽管它运作的很好,但对实验室里的学生来说,学习起来显得异常困难。Quanser的工程总监Paul Karam从他的研究生时期依旧很清晰的记得这些。
当实时控制遇到了Windows
当Simulink代码生成首次发布的时候,仍然没有办法完成实时编码。但是,Simulink生成C代码的能力为Quanser的软件开发人员带来了新的机会。他们推出了新版WinCon2.0,这意味着没有更多的预装控制器。与Simulink集成,WinCon2.0自动生成控制代码并在硬件上实时运行。事实上,Quanser是第一个从Simulink生成实时代码并和硬件连接的。
WinCon在Windows连续几个版本运行良好,但随着时间的推移,在Windows上提供实时性能的技术挑战也随之增长。那是软件软对将WinCon转移到RTX实时内核上的时候。随着对新设备和更多功能的需求的增长,WinCon的架构开始显得力不从心。
一场实时革命
那时Dan决定要彻底重写软件,创建一个新的范例。实时控制软件的下一个版本QUARC,拓展了其前身WinCon的范围,并与Simulink更好的兼容。
在设计QUARC时,主要关注的是为QNX操作系统生成硬实时代码。随着我们的团队发现在Windows上调试比在一个远程QNX机器上容易的多,基于Windows的QUARC开始进入测试阶段。事实证明,Windows版的QUARC运行良好,足以提供软实时控制,而且考虑到在学术界普遍存在的Windows操作系统以及支持新设备的便利性,面向Windows的系统开始占据主导地位。
然而,支持多个操作系统的设计方法被证明是非常有用的。使用抽象操作系统的“封装图层”,让QUARC在每一个操作系统下的编码方面看起来都一样。它意味着用户可以保持一贯的体验,并让之后的Linux支持更加容易。
从最开始,就没有对QUARC进行过多的修改和重构。从主模块到语音识别和远程自主目标,特征集一直处于一个平稳的扩展和增长。这展示了基础和原始代码是多么的稳定,稳健和可靠。
因此,QUARC是一场实时革命:多功能,便携,灵活且可验证。有了QUARC将仿真和实时控制无缝结合。这确保了它在教学和基础与先进研究中都能拥有很好的表现。
案例
有很多的案例突显了QUARC的能力。以多伦多康复研究所挑战性环境评估实验室(CEAL)为例。以实验室大脑存在的QUARC,结合大型运动平台和多个先进的模拟器,得以重现不同的真实世界的环境和情况。他允许TRI的团队进行快速设计和开发模型并将它们部署到分布式计算机网络中,实时运行这个高级研究应用程序的所有系统组件的同步。没有QUARC,这样一个复杂的环境几乎不可能有效管理。
先进的遥操作架构是另一个使用QUARC作为快速原型开发和集成环境的例子,用于非常先进的分布式系统,包括具有大量传感和沉浸式触觉遥操作的多个控制器。
但是,QUARC的灵活性和扩展性以及其体系结构质量的最好的例子和证明是,它总是能够轻松适应新的需求、新兴的应用程序和技术。我们的团队可以轻松的构建QUARC及其架构的基础层,不仅支持先进图像处理,人工智能或机器学习,还可以扩展并构建与其他现有已经成熟的环境如(Python和ROS)之间的桥梁。
Author Bio
在Quanser营销团队工作了12年,一直致力于与社区分享优秀的客户故事.