Windows系统是当前面向用户应用最多的操作系统之一,该系统配套有成熟且丰富的软件开发程序,如Eclipse和Visual Studio等。然而,Windows操作系统由其特性决定了其不能保证系统行为的确定性和可预测性,难以直接应用于实时领域,此时,则需要对Windows进行实时扩展。为帮助客户更好地进行开发,北京盟通科技将向您介绍和推荐不同场景下的Windows实施扩展产品,为您的开发提供更多选择。
LxWin 实时Hypervisor:
Windows + Real-time Linux
现今,Linux已经成为最流行的实时操作系统。得益于其确定性的硬实时能力,完善的开发工具和配套的板级硬件驱动和软件的支持,吸引了众多领先的工业控制器制造商使用它开发产品。典型的应用包括带有高实时性需求的PLC、运动控制器、数控系统等。
使用LxWin Hypervisor可以将Windows和非常快速的实时Linux并行运行,面对大量的Linux驱动程序:如现场总线控制器、GigE摄像机系统、通信协议栈(EtherCAT,Profinet,OPC,OPC UA,TSN等)或复杂的软件解决方案(例如CNC控制器或PLC)时,客户可以直接使用这些驱动程序,不需要重新在LxWin下重新进行任何更改。
在上述案例中,客户通常需要构建多种跨操作平台、应用于不同形式对象的应用方案,在这类客户应用方案中客户需要分别部署基于Windows的GUI系统和基于Linux的控制器两个独立的部分,LxWin对此需求的解决方法则是将应用整合到单个硬件上,进而让用户能使用更为熟悉的Eclipse或Microsoft Visual Studio(从VS 2015开始)等软件来完成设计。(点此了解下载Eclipse或者Microsoft Visual Studio )
acontis 公司的Windows实时扩展方案包括两个重要的组成部分。首先,实现环境可以在不同的实时操作系统之间选择。我们推荐用户使用Linux RT Preempt或RTOS-32 Ontime系统作为实时环境。当然客户也可以选择VxWorks、QNX、WinCE以及自行开发实时操作系统作为实时环境。
图1 LxWin设计思想
LxWin 系统预览
图2 实时环境框架图
图2是选择Real Time Linux 作为实时环境的框架示意图。控制器厂商在Windows上开发的非实时应用程序和客户图形界面可以继续保留在Windows系统下,而EtherCAT主站、运动控制算法等实时应用需要运行在Linux RT Preempt实时环境中。图2中同样可以看出,Windows操作系统和实时Linux系统被隔离在不同的CPU核和不同的内存空间中,两个操作系统相互独立,并分别独立控制被分配给其的硬件。隔离带来的好处显而易见,两个系统的隔离可以在一个系统出现异常时,比如Windows被某个应用阻塞或者蓝屏时,实时Linux下的应用程序将继续正常运行而不受Windows故障状态的影响。LxWin方案对实时应用程序部分和非实时Windows部分设置了隔离的方法。 LxWin在hypervisor基础上嵌入了Linux硬实时内核。 该hypervisor环境是关键,可确保实时性能以及与Windows的隔离。
重要特性
LxWin有以下重要特性:
- 支持实时Linux-32位和64位;
- 支持Linux Yocto;
- 可以在一个或多个CPU内核上运行Linux;
- 快速中断处理和极短线程延迟;
- 在Windows蓝屏发生后,Linux继续运行而且没有实时损失;
- 支持Windows 7,8,10-32/64位;
- 可选用英特尔?VT,VT-d硬件虚拟化以增强鲁棒性;
- 第三方Linux应用程序和驱动程序无需修改即可运行;
- 搭建Windows和Linux之间的虚拟网络连接(用于应用程序级TCP/IP通信和本地调试);
- 共享内存,事件,互锁数据访问,可实现应用级高速通信;
- 可以实现更高级别的Windows/Linux通信:管道,消息队列和实时套接字;
- 支持TSN协议栈,集成了acontis technologies的EtherCAT主站协议栈解决方案。
使用LxWin的优势
硬件整合
- 节省了第二个控制系统或者功能扩展卡;
- 随着硬件组件的减少,增加了MTBF(平均无故障时间);
- 可以搭建更紧凑的控制器。
软件整合
- 与Linux完全兼容的快速学习曲线;
- 使用功能强大的开发工具(Visual Studio,Eclipse)对实时应用程序,通信协议和GUI进行编程;
- 可重用现有的Linux软件。
可扩展性
- 将现有Linux应用程序集成到Windows环境中,无需额外的硬件成本;
- 在嵌入式系统上使用相同的Linux应用程序,例如,基于ARM体系结构的应用。
典型应用
- 基于PC的自动控制(PLC,运动控制、其他控制器);
- 实时数据测试和数据采集;
- 在同一台PC上通过添加Windows功能来扩展现有的Linux应用程序;
- Linux原型:在具有完全硬件访问权限的常规PC上开发和测试Linux软件。
LxWin 截图
Windows实时扩展使用Linux RT Preempt作为实时环境,因此这个解决方案被命名为LxWIN。LxWIN包含了已经做过实时性能优化的实时Linux系统,使用Visual Studio作为应用开发IDE,以及图形化配置界面,如图3所示。即使缺乏Linux经验的用户,也可以在较短的时间内开发标准的EtherCAT应用。
图3.LxWIN图形化配置界面
LxWin方案运行如图4:
在Windows启动后启动Linux
在调试终端上打印Linux启动信息
Linux使用虚拟网络作为调试接口
通过Linux控制Intel PRO/1000网卡
图4.LxWin运行过程
架构
图5.LxWIN体系架构
支持与服务
如您对相关产品感兴趣,我们将为您提供专业的技术指导,在您开发控制系统时,如果需要,我们可以为您提供完整的系统集成解决方案,针对性地满足您的差异化需求。
同时,我们可以为您提供方案设计和咨询服务,对您的系统进行性能分析和优化,为您开发最新的以太网网络驱动程序和软件等,欢迎您就具体事宜和具体需求与我们沟通和联系。