欢迎来到培训无忧网!

全国切换

咨询热线 400-001-5729

位置:培训无忧网 > 新闻资讯 > 电脑/IT > 程序开发 >  基于PC实时环境的程序开发

基于PC实时环境的程序开发

来源:www.pxwy.cn 发布人:彭二胖

2022-01-09 11:14:51|已浏览:208次

       一.目前行业主流的基于PC的控制器方案

       目前行业内主流的基于PC的机器控制方案,通过运动控制卡实现,它的程序运行原理是:用户程序运行在Windows上,线程由Windows分配给程序,对于要求线程稳定的机器,难以满足需求,因为Windows系统不具备实时性,是属于通用型操作系统,它更注重于系统的吞吐量而不是系统响应时间,虽然它大部分的时间是稳定的,但是线程以及性能容易受到Windows上别的软件或者操作的影响,导致有几个周期的响应时间变得很慢。

       此图是我们使用某款运动控制卡,在Windows下写的程序,动作是输出一个IO,然后把输出IO接到控制卡的输入去,等待控制卡接收到输入,然后把这段时间进行计时,得出的结果。

       可以看到大部分的时间是在1-2ms之间的,但是一旦电脑上在进行一些其他的操作,或者长时间运行,这个时间就会变得不可控制,波动范围很大。 

       二.ProCon是基于实时系统的开发与执行框架

       用户使用高级语言和Visual Studio可以开发基于实时系统的程序。
       上面介绍过在Windows系统上运行的程序的弊端,基于实时系统的开发框架ProCon,可以解决程序运行时的响应时间波动的问题。
       基于之前IO反转的实验,不同点是程序运行在实时系统中,我们得到以下的实验数据: 
       通过数据可以看到,无论Windows负载如何,且在长时间的运行情况下,从输出到输入的波动始终是在1-2ms之间,这个实验我们采用了ProU的运动控制库配合倍福的EtherCAT IO在实时系统的环境下做的测试。

       使用ProCon框架下的运动控制功能,实时系统会把本来由Windows完全管理的intel CPU分出一个核直接管理,所以即使Windows蓝屏,或者在电脑上使用大量的计算工作(如图像处理),都不会影响机器的运动和逻辑控制程序的执行效率。

       三.实时系统下的开发流程

       ① 先安装并授权实时系统开发版:http://www.ProU.cn/manual/20ProH/02Intime.html,如果要调试代码则需要开发的硬件狗,或者向公司申请临时的开发授权。
       ②安装之后在Visual Studio里会多出一个插件,打开vs,选择新建工程。 
       ③选择 A“Hello World”,然后点击ok,再ok,再ok直到新建工程完成 
       ④添加头文件,YKCat.h,文件放在D:\YouKong\ProH\YKCat目录下 
       ⑤配置预处理器,将YKCat.h中的FUNS_EXPORTS 配置到预处理器,点击应用,确定 
       ⑥配置lib文件,文件在D:\YouKong\ProH\YKCat\Intime\V64 
       ⑦配置包含目录,将ykcat.lib放到包含目录下 
       ⑧  程序中引用 ”windows.h”, ”ykcat.h”头文件,注意顺序
       编写总线初始化函数。其中调用的文件生成方式在下章节讲解 
       ⑨主流程,流程包括
       输出字符"Hello, World!"
       调用初始化总线函数
       循环执行控制IO输出,两段绝对定位运动,并判断是否定位完成,并输出当前位置。
       编译程序,待生成成功 
       ⑩将D:\YouKong\ProH\YKCat\Intime\V64目录下的InLib.rta和YKCat.rsl放到生成目录下
       注:rsl相当于Windows的dll。注:rta相当于Windows的exe。

       ①是我们生成的应用程序 ②是YKCAT的调用程序 ③是YKCAT的执行函数文件 

       四.生成总线的配置文件

       ①打开ProU,新建ProU程序默认选项即可,点击确定 

       ②右键添加ECAT主站,选择伺服驱动,找到Virtual Servo(本案例使用虚拟轴),点击添加 

       ③打开ProH,然后点击下载按钮,选择选择所有,点击执行,然后一直确定即可。 

       ④关闭ProH,然后就会生成配置信息ecat.bin以及config.txt。 

       五.运行

       ①编译好程序,插上开发加密狗或者临时开发狗,按F5运行即可。 

       六.结论

       基于ProCon实时开发与执行框架,用户可以通过高级语言开发基于实时系统的机器程序,避免机器运行受到Windows计算任务的影响,实现比运动控制卡方案更加稳定的机器控制。同时继续保持运动控制卡方案与Windows平台上如机器视觉、人机界面等应用整合的优势(相较于脱机的运动控制器),是比较理想的PC based控制方案。

       本文由培训无忧网长沙牛耳教育课程顾问老师整理发布,希望能够对想在长沙参加影视动漫培训的学生有所帮助。更多课程信息可关注培训无忧网电脑IT培训频道或添加老师微信:15033336050

      注:尊重原创文章,转载请注明出处和链接 https://www.pxwy.cn/news-id-13980.html 违者必究!部分文章来源于网络由培训无忧网编辑部人员整理发布,内容真实性请自行核实或联系我们,了解更多相关资讯请关注程序开发频道查看更多,了解相关专业课程信息您可在线咨询也可免费申请试课。关注官方微信了解更多:150 3333 6050

留下你的信息,课程顾问老师会一对一帮助你规划更适合你的专业课程!
  • 姓名:

  • 手机:

  • 地区:

  • 想学什么:

  • 培训无忧网
免 费 申 请 试 听
提交申请,《培训无忧网》课程顾问老师会一对一帮助你规划更适合你的专业课程!