鳝变的男人
真正的大师都怀着一颗学徒的心
级别: 论坛先锋
精华主题: 0
发帖数量: 97 个
工控威望: 1037 点
下载积分: 1094 分
在线时间: 56(小时)
注册时间: 2017-04-05
最后登录: 2021-11-23
查看鳝变的男人的 主题 / 回贴
楼主  发表于: 2018-08-09 10:09
学习C#有一段时间了,结合网上资料,也完成了一两个小游戏。之前看别人用这个做工控,现在我想学习一下这方面,但是不知道该从何入手,比如说,拿到一个机器,将IO,轴之类的分好,动作流程了解清楚,这个程序该从哪里开始入手。求大佬分享一下经验,或者分享一两个实例,感激不尽
真正的大师都怀着一颗学徒的心
deanpc
级别: 探索解密
精华主题: 0
发帖数量: 70 个
工控威望: 147 点
下载积分: 726 分
在线时间: 41(小时)
注册时间: 2018-05-04
最后登录: 2023-12-20
查看deanpc的 主题 / 回贴
1楼  发表于: 2018-08-09 11:16
一般会使用状态机switch case 来处理, 例如下面Run运行后...

void Run(void)
{
....
switch( step )

    case 0: 
        if( IsRunning() ) break;           //检测所有运动结束,否则继续检测 
        MoveXYZ( data[I].x, data[I].y, data[I].z …… ); 
        Step ++; 
        Break; 
    Case 1: 
        If( IsRunning() ) break;          // 同上 
        I++;                                        // 准备下一段数据,之所以放在此处,是需要考虑在运行过程中,有外部的暂停和继续操作。 
        Step = 0;                               // 准备运行新的数据 
        Break; 

...
}
楼主留言:
感谢大佬,能否分享一个小程序学习一下
deanpc
级别: 探索解密
精华主题: 0
发帖数量: 70 个
工控威望: 147 点
下载积分: 726 分
在线时间: 41(小时)
注册时间: 2018-05-04
最后登录: 2023-12-20
查看deanpc的 主题 / 回贴
2楼  发表于: 2018-08-09 18:30
封存.zip (3 K) 下载次数:166

这个是使用研华的BASIC语法的架构给你参考。  跟C#差异只是API不一样。
楼主留言:
感谢大佬
本帖最近评分记录:
  • 下载积分:+2(1992sd) 感谢分享!