0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

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

伺服与运动控制 来源:机器之心ProU 作者:机器之心ProU 2022-11-01 14:29 次阅读

大家好,通过前面的几次实验,相信大家已经看到了YKCAT2在NoTime模式下,相较于运动控制卡方案带来的设备效率和稳定提升。

那么在这一集,我们来解答几个大家经常问到的问题:

1、如何搭建NoTime基本程序框架,同一套程序框架能否兼容YKCAT2 NoTime和Windows模式,甚至是其他的运动控制卡。

2、实时系统上的机器控制程序如何与Windows上的程序交互,以及如何调试他们。

首先,我们来看运控部分的封装结构。

如图所示,我们抽象出运控基类,不同运控品牌基于运控基类做不同的实现,这样在运控品牌切换的时候,调用代码不用做任何更改,做到多运控品牌的兼容。

我们继续看这张图,我们将设备的自动运行逻辑单独封装出来,分别在Windows和console控制台应用程序当中引用,console控制台应用程序是运行在实时系统下面的,Windows这边就和常规的运控的调用是一样的,分别在这两边对我们的自动运行逻辑做引用,即可实现实时系统与Windows系统的兼容。

接下来我们看一下用户程序的运行与调试,在Windows下的运行与调试,与常规的运控开发没有差别,那我们重点讲一下实时系统下的程序的运行与调试。

首先我们来看一下这张图,我们需要在Windows端,调用LoadNoTimeAPP接口,传入编译生成的运行在实时系统下的控制台应用程序,生成的可执行文件的全路径名,传到这个接口里面作为参数,然后我们的控制台应用程序就可以在实时系统下运行起来。Windows程序与实时程序的(数据)交互是基于共享内存实现。

共享内存是需要在实时程序这边创建,然后为我们创建的共享内存命名,然后在Windows这边打开,传入的名字就是我们创建的名字,这样我们的实时程序和Windows程序就会访问同一段内存,这样我们的交互通道就已经打通了,另外,共享内存,我们可以利用结构体,做一下结构化的封装,这样就省去了我们用户需要自己去做地址偏移之类的繁琐的事情。

运行在实时系统下的console控制台的应用程序的调试呢,我们可以在Windows下调试,调试正常之后,再load到实时系统下就行。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • WINDOWS
    +关注

    关注

    3

    文章

    3475

    浏览量

    87512
  • 应用程序
    +关注

    关注

    37

    文章

    3172

    浏览量

    57097

原文标题:YKCAT2全实时程序框架与兼容解决方案讲解

文章出处:【微信号:伺服与运动控制,微信公众号:伺服与运动控制】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    鸿蒙Ability Kit(程序框架服务)【应用启动框架AppStartup】

    `AppStartup`提供了一种更加简单高效的初始化组件的方式,支持异步初始化组件加速应用的启动时间。使用启动框架应用开发者只需要分别为待初始化的组件实现`AppStartup`提供
    的头像 发表于 06-10 18:38 407次阅读

    【从0开始创建AWTK应用程序】编译应用到嵌入式Linux平台运行

    AWTK是基于C语言开发的跨平台GUI框架。本系列文章介绍如何从0开始创建AWTK应用程序,包括搭建开发调试环境、使用AWTK创建Hello工程并在模拟器上运行、将AWTK应用程序移植
    的头像 发表于 12-07 12:08 401次阅读
    【从0开始创建AWTK应用<b class='flag-5'>程序</b>】编译应用到嵌入式Linux平台运行

    springboot框架主要用来做什么

    Spring Boot是一个用来简化Spring应用开发的框架,它使得开发人员能够快速搭建起一个独立的、可执行的、基于Spring的应用程序。Spring Boot的设计目的是为了让开发团队能够更加
    的头像 发表于 12-03 15:14 1186次阅读

    搭建ssm框架的详细流程

    随着互联网的快速发展,Web应用程序的开发越来越受到重视。而在Java开发领域,SSM框架(Spring + SpringMVC + MyBatis)已经成为非常流行的一种开发架构。SSM框架能够
    的头像 发表于 12-03 14:52 2352次阅读

    javaweb的三大框架有哪些

    : Spring是目前最受欢迎和广泛使用的Java应用程序开发框架之一。它提供了一种轻量级的方式来构建企业级应用程序。Spring框架主要包括以下模块: Spring核心模块:提供了I
    的头像 发表于 12-03 11:47 1285次阅读

    嵌入式框架Zorb Framework状态机的实现

    Zorb Framework是一个基于面向对象的思想来搭建一个轻量级的嵌入式框架
    的头像 发表于 11-29 09:33 624次阅读
    嵌入式<b class='flag-5'>框架</b>Zorb Framework状态机的实现

    Spring布能用来搭建基础架构吗

    Spring Boot 是一个用于简化 Spring 应用程序开发的框架,它利用 Spring 框架的强大功能,使得基础架构的搭建变得更加简单、轻量级、易于维护。在本文中,我们将详细讨
    的头像 发表于 11-16 10:56 264次阅读

    【从0开始创建AWTK应用程序】开发及调试环境搭建

    AWTK是基于C语言开发的跨平台GUI框架。本系列文章介绍如何从0开始创建AWTK应用程序,包括搭建开发调试环境、使用AWTK创建Hello工程并在模拟器上运行、将AWTK应用程序移植
    的头像 发表于 11-11 10:00 419次阅读
    【从0开始创建AWTK应用<b class='flag-5'>程序</b>】开发及调试环境<b class='flag-5'>搭建</b>

    嵌入式框架Zorb Framework搭建方案

    Zorb Framework是一个基于面向对象的思想来搭建一个轻量级的嵌入式框架
    的头像 发表于 11-05 17:08 1153次阅读
    嵌入式<b class='flag-5'>框架</b>Zorb Framework<b class='flag-5'>搭建</b>方案

    非常实用,推荐一种面向对象思维的单片机程序框架

    非常实用,推荐一种面向对象思维的单片机程序框架
    的头像 发表于 10-24 18:03 360次阅读
    非常实用,推荐一种面向对象思维的单片机<b class='flag-5'>程序</b><b class='flag-5'>框架</b>

    从单片机基础到程序框架介绍

    单片机应用的核心技术是什么?是按键,数码管,流水灯,串口。是它们的程序框架。按键和数码管是输入是人机界面,把它们的程序框架研究透了,以后做彩屏或者更花销的显示界面,
    发表于 09-27 06:01

    AN1292与电机控制应用程序框架对比分析

    文档对AN1292软件与motorBench™开发套件随附的MC应用程序框架之间的差异进行了分 析,旨在回顾全新MC应用程序框架代码相对于AN1292的参考应用笔记软件的改进和限制。
    发表于 09-22 17:37 2次下载
    AN1292与电机控制应用<b class='flag-5'>程序</b><b class='flag-5'>框架</b>对比分析

    深度学习框架连接技术

    深度学习框架连接技术 深度学习框架是一个能够帮助机器学习和人工智能开发人员轻松进行模型训练、优化及评估的软件库。深度学习框架连接技术则是需要使用深度学习模型的应用程序必不可少的技术,通
    的头像 发表于 08-17 16:11 576次阅读

    在Ubuntu上搭建OpenVINO C++程序开发环境

    这种集成开发环境,为了在 Ubuntu 上也能拥有类似 Visual Studio 的开发体验,笔者探索出基于 Anaconda 和 VS Code,搭建 OpenVINO C++ 程序开发环境的方式。
    发表于 08-09 09:42 711次阅读
    在Ubuntu上<b class='flag-5'>搭建</b>OpenVINO C++<b class='flag-5'>程序</b>开发环境

    手把手教你单片机程序框架 几种常见的单片机编程框架解析

    什么是框架程序框架其实就类似一个文件大纲或者模板。因为写程序就类似于写文章,如果没有大纲或者模板那么你写起来就会比较费劲。 为什么要有框架
    的头像 发表于 07-17 19:55 1926次阅读
    手把手教你单片机<b class='flag-5'>程序</b><b class='flag-5'>框架</b> 几种常见的单片机编程<b class='flag-5'>框架</b>解析