YKCAT2如何搭建NoTime基本程序框架

大家好,通过前面的几次实验,相信大家已经看到了ykcat2在notime模式下,相较于运动控制卡方案带来的设备效率和稳定提升。
那么在这一集,我们来解答几个大家经常问到的问题:
1、如何搭建notime基本程序框架,同一套程序框架能否兼容ykcat2 notime和windows模式,甚至是其他的运动控制卡。
2、实时系统上的机器控制程序如何与windows上的程序交互,以及如何调试他们。
首先,我们来看运控部分的封装结构。
如图所示,我们抽象出运控基类,不同运控品牌基于运控基类做不同的实现,这样在运控品牌切换的时候,调用代码不用做任何更改,做到多运控品牌的兼容。
我们继续看这张图,我们将设备的自动运行逻辑单独封装出来,分别在windows和console控制台应用程序当中引用,console控制台应用程序是运行在实时系统下面的,windows这边就和常规的运控的调用是一样的,分别在这两边对我们的自动运行逻辑做引用,即可实现实时系统与windows系统的兼容。
接下来我们看一下用户程序的运行与调试,在windows下的运行与调试,与常规的运控开发没有差别,那我们重点讲一下实时系统下的程序的运行与调试。
首先我们来看一下这张图,我们需要在windows端,调用loadnotimeapp接口,传入编译生成的运行在实时系统下的控制台应用程序,生成的可执行文件的全路径名,传到这个接口里面作为参数,然后我们的控制台应用程序就可以在实时系统下运行起来。windows程序与实时程序的(数据)交互是基于共享内存实现。
共享内存是需要在实时程序这边创建,然后为我们创建的共享内存命名,然后在windows这边打开,传入的名字就是我们创建的名字,这样我们的实时程序和windows程序就会访问同一段内存,这样我们的交互通道就已经打通了,另外,共享内存,我们可以利用结构体,做一下结构化的封装,这样就省去了我们用户需要自己去做地址偏移之类的繁琐的事情。
运行在实时系统下的console控制台的应用程序的调试呢,我们可以在windows下调试,调试正常之后,再load到实时系统下就行。


华为P10青春lite阉割版:万年不变外观+麒麟650,惹怒网友!
松下4K一体化摄像机AW-UE83满足多种拍摄需求
随着本土FPGA开始崛起 FPGA领域终于迎来了中国军团
格力电器家用空调对老用户提供以旧换新服务
手机实现各功能所需要的传感器是什么
YKCAT2如何搭建NoTime基本程序框架
全球电池专利分析分析报告 如何扼住能源咽喉?
自动驾驶将给我们的驾驶体验带来诸多便利
北京君正收购北京矽成重大资产重组收购案尘埃落定 将直接及间接合计持有北京矽成100%股权
台工研院表示5G时代下未来所有的运算都只在云端
缓存系统的三座大山
MCU8051的泥石流—>RISCV32的商业启示
中国是全球最大新能源汽车市场,政策执行带动中国市场销量变化
Linux系统中触摸库报错怎么解决
基于3D NAND的闪存存储技术为视频监控领域带来哪些好处
Ansys宣布推出其最新的基于人工智能(AI)的技术—Ansys SimAI
安华高宣布66亿美元现金收购存储芯片商LSI
JEETAIR真无线蓝牙耳机评测 音质秒杀同级别耳机
无人驾驶进入“量产时代” 破晓的黎明前要更加的小心
柔宇科技发布电信版折叠屏手机,同时宣布成立“中国电信·柔宇科技融合创新实验室”