Kithara RealTime Suite
用于基于PC自动化控制系统的Windows实时拓展
Kithara实时套件是Windows操作系统实时拓展模块。通过该套件用户可以高效的在其提供的实时环境中开发各种工业自动化应用,机械设备控制程序,图像处理程序等。
实时套件提供的绝大部分功能接口可以在Windows内核层和应用层调用,这样开发人员就可以根据应用需求来决定,是在应用层直接访问硬件,还是为在内核层来访问硬件以确保实时性能。
为了让编写的应用程序获得"硬"实时能力,必须把代码加载到Windows系统内核空间中运行,这通过Kithara软件就可以实现。对于加载到内核中的代码,所采用的编程语言必须能够生成本机x86,x64代码,如C/C++或Delphi。一个工程中直接访问硬件以及有实时性要求的代码必须编写成一个DLL模块,并直接加载到Kithara内核的实时上下文中。这样,.NET环境也得到了支持,因此应用程序的绝大部分代码(非实时部分)可以采用C#语言编写。
一个代码可以生成32位和64位的应用程序。这两个版本源代码都是完全兼容的——通过使用一个特殊的模块(KiK64)甚至可以实现二进制兼容。
Kithara RealTime Suite为下面列出的编程语言和编译器提供了可立即访问的程序框架。立即下载免费
试用版!
其一些特点如下
模块
Kithara RealTime Suite由各种模块组成。该软件可以由客户特定地由这些模块组成。基本/内核模块始终是必需的。下图说明了模块之间的关系。
基本功能
Base/Kernel模块
-
支持以下操作系统:Windows 10和11(32位和64位)、Windows Server 2016,2019 和 2022、每个都有专用模式
-
支持多核处理器,超线程和NUMA多处理器PC
-
功能为:打开驱动程序、在内核级别实现实时代码、实时内存管理、设备处理、版本信息、调试支持、系统信息
-
应用程序线程、事件、回调、共享内存、数据和消息管道、快速互斥对象
更多信息 …
System模块
-
系统事件的截取,例如故障和内核级的系统崩溃(如防故障处理程序/“蓝屏处理程序”)
更多信息 …
定时器和多任务
Clock模块
-
在不同的时间和用户特定的格式监测系统时间,分辨率高达0.1 μs
-
高精度的短的时间延迟
-
系统时钟的长期同步,与EtherCAT分布式时钟(DC)和IEEE 1588 同步。
更多信息 …
RealTime模块
-
高度精确的实时定时器由系统最高优先级编程
-
最大可编程频率>20 kHz时,抖动在微秒范围
更多信息 …
MultiTasking模块
-
基于优先级的抢占式实时多任务
-
最大255优先级,避免优先级倒置的按优先级继承,动态优先级调整
-
事件、信号量、定时器、支持多种CPU内核、任务可以被分配
-
实时操作一个或多个CPU内核以避免Windows影响
-
最大任务频率高达20kHz以上、在专用模式下抖动小于1μs
-
Speedloop模式可在特定硬件上高精度循环执行最高达1MHz的实时代码
更多信息 …
PTP模块
-
多个网络参与者的精确同步
-
精确的时间戳,偏差在亚微秒范围内
-
可配置的BMCA(最佳主时钟算法)
-
手动设置主站和从站
更多信息 …
通信
Network模块
-
使用任何协议(例如IP),以太网每秒高达千兆比特
-
原始以太网以及UDP/TCP(服务器和客户端协议)
-
事件和请求驱动控制,通过ARP支持自动确定内存地址
-
IP和MAC组播,广播,巨型帧根据使用的控制器
-
支持Intel或RealTek网络控制器(可根据要求提供硬件支持)
-
Support for BroadR-Reach (100BASE-T1)
更多信息 …
USB RealTime模块
-
通过直接和独家访问XHCI(可扩展主机控制器接口),与USB设备进行USB 3.1通信
-
快速的反应时间和最大的数据吞吐量
-
控制,批量,中断和等时传送
-
对即插即用以及电源管理事件的反应
更多信息 …
USB Driver模块
-
与USB设备进行通信,包括USB 3.1
-
低速,全速,高速
-
控制,批量,中断和等时传送
-
响应所有即插即用和电源管理事件
更多信息 …
Serial/UART模块
-
通过UART16550兼容硬件上的特殊硬件驱动程序实时串行通信
-
可以直接控制信号和握手线
-
用于实时的所有接口事件的处理器
更多信息 …
Device模块
-
包含通信设备的Windows编程接口(ReadFile, WriteFile, DeviceIoControl)
-
任何可能的设备名称,例如虚拟COM端口
更多信息 …
硬件访问
IoPort模块
-
访问PC应用程序或DLL的所有I / O寄存器
-
PCI配置数据和资源数据的测定
更多信息 …
Memory模块
-
访问外部物理内存(双端口RAM)
-
提供用于外部硬件的PC存储器(DMA存储器)
更多信息 …
Interrupt模块
-
在应用程序或内核级别处理硬件中断
-
使用操作系统机制进行中断处理
-
通过使用PCI或PCIe硬件的实时模块处理中断
更多信息 …
MultiFunction模块
-
实时访问多功能扩展卡
-
用于控制和数据采集的A/D、D/A和数字I/O的功能,模拟单值和序列
-
适用于各种制造商的卡的统一API
更多信息 …
自动化
EtherCAT模块
-
实时EtherCAT主站
-
专有开发的软件
-
自动辨识EtherCAT拓扑结构;通过XML文件或SII协议进行同步。
-
过程和服务数据通信(PDO + SDO)以及邮箱通信
-
CoE, EoE, FoE, SoE, DC, Safety-over-EtherCAT (TwinSAFE)
更多信息 …
EtherCAT自动化协议
-
EtherCAT®自动化协议
-
自动化系统领域的新连接水平
-
以传输速度为例,可以达到1000 Mbit/s甚至高达100 Gbit/s
更多信息 …
CANopen模块
-
实时CANopen®主站,自动识别CANopen拓扑结构
-
处理数据和服务数据通信(PDO + SDO)以及邮箱通信
更多信息 …
图像处理
Camera模块
-
通过GigEVision和USB3 Vision相机实时采集图像。
-
多台摄像机同时使用,热插拔,错误处理,根据GenlCam® 2.0配置
更多信息 …
Vision模块
-
图像处理实时
-
支持Halcon版本10,11,12,13和18.11
-
支持OpenCV 3
更多信息 …
数据存储
Storage模块
-
通过具有最新容量的NVMe SSD实时存储数据
-
高速读写速度超过2 Gbyte/s
-
UDF数据系统
更多信息 …
PCAPng模块
-
Real-time data storage in Wireshark-compatible PCAPng format
-
Retrieving of data sets such as measurement data or image data for later analysis
更多信息 …
MDF模块
-
测量数据格式(MDF)中的实时数据存储
-
评估记录和计算的数据,用于测量后分析或存储
更多信息 …
汽车电子
FlexRay模块
-
实时FlexRay通信
-
WindowsPC用作FlexRay的节点
-
分配为主导或跟随节点
更多信息 …
CAN模块
-
通过CAN进行实时通信(控制器区域网络)
-
支持的板卡来自:Peak, Star Cooperation (Eberspächer), EMS Dr. Wünsche, ESD, Ixxat和Kvaser(可根据要求提供硬件)
-
支持CAN FD(灵活数据速率)
更多信息 …
LIN模块
-
LIN(本地互联网络)上的实时通信
-
通过UART通信(根据要求提供硬件支持)
更多信息 …
库
Library模块
-
C standard library in real time
-
Mathematical/trigonometrical and string/memory functions
-
Supports application and kernel level
-
Support for external libraries for image processing and machine learning
更多信息 …
Halcon扩展
-
使用Halcon进行实时图像处理
-
自动并行化
-
集成开发环境HDevelop
-
对处理后的图像数据的立即控制反应,例如EtherCAT或CANopen
更多信息 …
OpenCV扩展
-
使用OpenCV进行实时图像处理
-
自动并行化
-
对处理后的图像数据的立即控制反应,例如EtherCAT或CANopen
更多信息 …
根据客户需求定制软件包
对于每个特定的用户可以自由的选择需要的软件功能模块,或者也可以直接联系山东易码智能科技股份有限公司的Kithara技术支持,来协助您来选择。这种定制Kithara软件包的方式给了客户极大的灵活性,其有如下几个特点:
-
该软件可以任意组合模块,各模块几乎无依赖性
-
可以定制开发和运行时文件的名称
-
安装简单(无需手动修改注册表)
-
不需要任何修改,就能进行版本升级
-
购买的模块附带有模块应用开发的Licence
-
可以最大限度的降低运行时的Licence的价格
-
首次购买后的12个月内提供了多个更新,以供下载
-
可以随时拓展其他模块(只需要支付增加的模块的价格,此外相应的Licence价格也可能有所变化)
-
提供4中不同的服务支持包(3、6或12月),为开发人员提供软件的开发支持。
我们的 支持 团队将为您把Kithara软件集成到您的应用项目中,提供最好的服务,此外我们也可以帮助您解决Kithara软件之外的问题!山东易码智能科技股份有限公司(LinkControl)作为Kithara在中国的唯一代理,我们有大量的工业自动化软硬件开发经验,也将为您提供个性化的服务咨询。
平台
实时功能只能在内核级别上实现。为此,需要一种能够生成本地机器码的编程语言,例如C/C++或者Delphi。当然,
Kithara实时套件支持各种平台,例如.NET环境。解决方案是将时间关键型代码转换成一个DLL,该DLL将直接加载到内核级别的实时上下文中。Kithara实时套件可以提供所有这些功能。上述平台的即时可用程序框架是每个软件交付的一部分。
系统要求
Kithara实时套件产品支持广泛的硬件和软件的组合。如果你有关于系统支持的疑问,请与我们
联系!(Kithara中国技术支持邮箱:ezcode_kithara@163.com)
操作系统
该软件支持以下操作系统:
-
Windows 10和11(32位和64位), dedicated mode
-
Windows Server 2016,2019 和 2022, dedicated mode
硬件环境
该软件在以下硬件上运行:
-
CPU:AMD(Athlon)或Intel(Pentium 2),32 位或64位
-
双核或多核;可选的超线程多核,目前多达48个逻辑CPU,可根据要求提供更高的性能
-
推荐的ACPI(Advanced Control and Power Interface),
-
PC必须能够支持PAE(页面地址扩展)
-
使用高达100 Gbit/s的千兆以太网,通常支持Intel和RealTek的控制器
编译器
Kithara提供如下编程语言/编译器编写的程序框架(其他编程语言可以根据用户需要提供支持):
-
Visual Studio的20xx年的C++ MFC用户界面(提供 VS 2010/12/13/15/17/19工程文件)
-
C++ Builder(Embarcadero公司,原Borland公司)VCL用户界面
-
Delphi(Embarcadero公司,原Borland公司)VCL用户界面
-
Visual Studio的20XX C#WPF用户界面(实时代码采用C++ DLL,提供 VS 2010/12/13/15/17/19工程文件)
对于在实时上下文中执行代码,一般情况下,任何能够以DLL形式生成本地机器代码的编译器都可以使用。另外,不在实时层执行的Windows应用程序可以采用其他语言,如C#。
EtherCAT®与Safety over EtherCAT®是由德国倍福自动化有限公司(
Beckhoff Automation GmbH )授权许可的注册商标和获得专利保护的技术。
CANopen®是
CAN in Automation e. V.的一个注册商标。
GigE Vision®是
Automated Imaging Association的一个注册商标。
USB3 Vision®是
Automated Imaging Association的一个注册商标。