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
    +关注

    关注

    4

    文章

    3697

    浏览量

    93237
  • 应用程序
    +关注

    关注

    38

    文章

    3342

    浏览量

    59929

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

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

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    PYQT 应用程序框架及开发工具

    大家好,本团队此次分享的内容为开发过程中使用到的PYQT 应用程序框架及开发工具。 pYqt 是一个多平台的 python 图形用户界面应用程序框架,由于其面向对象、 易扩展(可
    发表于 10-29 07:15

    请问STM32如何移植Audio框架

    最近在学习音频解码,想用一下Audio框架。 1、这个该如何移植到自己创建的BSP并对接到device框架中?看了官方移植文档没有对没有对该部分的描述。 2、我只想实现一个简单的播放功能,只用一个DAC芯片(比如CS4344)是
    发表于 09-25 07:17

    ESP32-S3的MicroPython开发环境搭建

    本文通过搭建Thonny IDE开发环境,了解了如何给ESP32-S3烧录MircoPython固件和MircoPython应用程序
    的头像 发表于 09-11 16:02 941次阅读
    ESP32-S3的MicroPython开发环境<b class='flag-5'>搭建</b>

    迅为RK3576开发板NPUrknn-toolkit2环境搭建和使用docker环境安装

    迅为RK3576开发板NPUrknn-toolkit2环境搭建和使用docker环境安装
    的头像 发表于 06-18 15:22 965次阅读
    迅为RK3576开发板NPUrknn-toolkit<b class='flag-5'>2</b>环境<b class='flag-5'>搭建</b>和使用docker环境安装

    迅为RK3576开发板NPU例程测试-rknn-toolkit2环境搭建和使用

    迅为RK3576开发板NPU例程测试-rknn-toolkit2环境搭建和使用
    的头像 发表于 06-17 13:46 1277次阅读
    迅为RK3576开发板NPU例程测试-rknn-toolkit<b class='flag-5'>2</b>环境<b class='flag-5'>搭建</b>和使用

    openstack搭建详细步骤

    openstack搭建详细步骤
    的头像 发表于 05-07 14:05 1615次阅读

    STM32如何移植Audio框架

    最近在学习音频解码,想用一下Audio框架。 1、这个该如何移植到自己创建的BSP并对接到device框架中?看了官方移植文档没有对没有对该部分的描述。 2、我只想实现一个简单的播放功能,只用一个DAC芯片(比如CS4344)是
    发表于 04-01 08:08

    使用myCobot 280机械臂结合ROS2系统搭建机械分拣站

    这篇文章是来自Automatic Addison的开源项目,已获作者授权转载自github。本项目的主要内容是使用myCobot 280机械臂结合ROS2系统搭建机械分拣站。
    的头像 发表于 01-15 09:22 1918次阅读
    使用myCobot 280机械臂结合ROS<b class='flag-5'>2</b>系统<b class='flag-5'>搭建</b>机械分拣站

    使用华为云 Flexus 云服务器 X 搭建部署茶叶商城小程序 uniapp

    在当今数字化时代,小程序以其便捷、高效的特点成为了众多商家拓展业务的重要渠道。 本文将详细介绍如何使用新购买的华为云 Flexus 云服务器 X 搭建,一个带商品采集功能、H5 积分商城、集合拼团
    的头像 发表于 01-13 13:35 763次阅读
    使用华为云 Flexus 云服务器 X <b class='flag-5'>搭建</b>部署茶叶商城小<b class='flag-5'>程序</b> uniapp

    AI开发框架集成介绍

    随着AI应用的广泛深入,单一框架往往难以满足多样化的需求,因此,AI开发框架的集成成为了提升开发效率、促进技术创新的关键路径。以下,是对AI开发框架集成的介绍,由AI部落小编整理。
    的头像 发表于 01-07 15:58 936次阅读

    OpenHarmony程序分析框架论文入选ICSE 2025

      近日,ICSE 2025软件工程实践Track放榜,面向OpenAtom OpenHarmony(以下简称“OpenHarmony”)的ArkTS程序分析基础框架--方舟程序分析器(论文题目为
    的头像 发表于 01-02 13:41 1857次阅读
    OpenHarmony<b class='flag-5'>程序</b>分析<b class='flag-5'>框架</b>论文入选ICSE 2025

    搭建简易云电脑,搭建简易云电脑教程

    简易云电脑教程。    搭建简易云电脑的步骤    1.选择云服务提供商:选择一个适合的云服务提供商。    2.注册账号并下载客户端:在云服务提供商的平台上注册账号,并下载相应的云电脑客户端。    3.配置云电脑:根据个人需求选
    的头像 发表于 12-26 13:24 842次阅读
    <b class='flag-5'>搭建</b>简易云电脑,<b class='flag-5'>搭建</b>简易云电脑教程

    SSM框架的源码解析与理解

    MVC模式,使得开发Web应用程序变得更加高效和简单。 1. Spring框架 基本功能: Spring是一个开源的Java平台,它提供了全面的基础设施支持,以便开发Java应用程序。Spring
    的头像 发表于 12-17 09:20 1419次阅读

    SSM开发环境的搭建教程 SSM与Spring Boot的区别

    SSM开发环境的搭建教程 SSM(Spring+SpringMVC+MyBatis)开发环境的搭建涉及多个步骤,以下是详细的教程: 创建Maven项目 : 使用Maven工具创建一个新的Maven
    的头像 发表于 12-16 18:13 1822次阅读

    SSM框架在Java开发中的应用 如何使用SSM进行web开发

    (full-stack)的应用程序框架,它提供了全面的基础设施建设支持,能够帮助开发者构建出企业级的应用程序。Spring的核心是控制反转(I
    的头像 发表于 12-16 17:28 2138次阅读