固高运动卡的使用 <6> 自动回零(限位回零、Home回零、Index回零以及各种混合回零)

 

理论篇:

以下信息来自固高官方文档:

代码:

ps:以下自动回原点代码仅限于固高运动控制卡型号:GTS-400-PG、GTS-400-PV、GTS-800-PG、GTS-800-PV

前台设计:就一个butto按钮直接触发以下代码:

代码:

 //自动回零
        private void button2_Click(object sender, EventArgs e)
        {
            for (short i = 1; i <= 3; i++)
            {
                //打开使能
                GTS.GT_AxisOn(_cardNum, i);
                //设置回原点参数
                GTS.THomePrm prm = new GTS.THomePrm();
                //获取home参数
                GTS.GT_GetHomePrm(_cardNum, i, out prm);
                //回原点模式
                prm.mode = 10;
                //搜索原点时的运动方向,1正向,0负方向
                prm.moveDir = -1;
                //搜索index的运动方向,1正向,0负方向
                //prm.indexDir = 1;
                // 设置捕获沿:0-下降沿,1-上升沿 
                prm.edge = 0;
                //用于设置触发器:取值-1 和[1,8],i
                //-1 表示 使用的触发器和轴号对应,其它值表示使 用其它轴的触发器,
                //触发器用于实现高速 硬件捕获,默认设置为-1 即可 
                prm.triggerIndex = i;
                //回原点运动的高速速度
                prm.velHigh = 50;
                //回原点运动的低速速度
                prm.velLow = 5;
                //回原点运动的加速度
                prm.acc = 0.1;
                // 回原点运动的减速
                prm.dec = 0.1;
                // 回原点运动的平滑时间:取值[0,50],单位:ms,
                //具体含义与 GTS 系列控制器点位运动相似
                prm.smoothTime = 25;
                // 设定的搜索 Home 的搜索范围,0 表示 搜索距离为 805306368 
                prm.searchHomeDistance = 0;
                // 设定的搜索 Index 的搜索范围, 0 表示 搜索距离为 805306368 
                prm.searchIndexDistance = 0;
                // 采用“限位回原点” 方式时,反方向离开 限位的脱离步长 
                prm.escapeStep = 1000;
                //没有限位开关则取消限位,取消限位信息
                //GTS.GT_LmtsOn(_cardNum, i, 0);
                //清除轴状态
                GTS.GT_ClrSts(_cardNum, i, 1);
                //
                GTS.GT_ZeroPos(_cardNum, i, 1);
                //启动自动回原点
                GTS.GT_GoHome(_cardNum, i, ref prm);
                GTS.THomeStatus status = new GTS.THomeStatus();
                do
                {
                    GTS.GT_GetHomeStatus(_cardNum, i, out status);
                    int num = status.run;
                } while (Convert.ToBoolean(status.run));
            }
        }

关于回原点模式切换以及回原点参数介绍:

  • 5
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
2.1.1 Visual C++ 6.0 中的使用 (1) 启动Visual C++ 6.0,新建一个工程; (2) 将下载的动态链接库压缩包里VC文件夹中的动态链接库、头文件和lib文件复制到工程文件 夹中; 第 2 章 运动控制器函数库的使用 15 © 1999-2019 固高科技版权所有 (3) 选择“Project”菜单下的“Settings…”菜单项; (4) 切换到“Link”标签页,在“Object\library modules”栏中输入lib文件名,例如gts.lib; (5) 在应用程序文件中加入函数库头文件的声明,例如:#include “gts.h”; 至此,用户就可以在Visual C++中调用函数库中的任何函数,开始编写应用程序。 对于步骤(4),还有一种比较简便的方法,那就是在应用程序文件里面添加包含链接文件的声 明,例如:#pragma comment ( lib,"gts.lib" ) 。 上述关于Visual C++ 6.0调用GTS库函数的方法同样适用于使用Visual Studio平台开发。 2.1.2 Visual Basic 6.0 中的使用 (1) 启动Visual Basic,新建一个工程; (2) 将下载的动态链接库压缩包里VB6.0文件夹中的动态链接库和函数声明文件复制到工程文 件夹中; (3) 选择“工程”菜单下的“添加模块”菜单项; (4) 切换到“现存”标签页,选择函数声明文件,例如gts.bas,将其添加到工程当中; 至此,用户就可以在Visual Basic中调用函数库中的任何函数,开始编写应用程序。 2.1.3 Delphi 中的使用 (1) 启动Delphi,新建一个工程; (2) 将下载的动态链接库压缩包里Delphi文件夹中的动态链接库和函数声明文件复制到工程文 件夹中; (3) 选择“Project”菜单下的“Add to Project…”菜单项; (4) 将函数声明文件添加到工程当中; (5) 在代码编辑窗口中,切换到用户的单元文件; (6) 选择“File”菜单下的“Use Unit…”菜单项,添加对函数声明文件的引用; 至此,用户就可以在Delphi中调用函数库中的任何函数,开始编写应用程序。 2.1.4 VB.NET 中的使用 (1) 启动Visual Studio,按照“File”->"New",选择建立VB工程; (2) 将下载的动态链接库压缩包里VB.NET文件夹中的动态链接库和函数声明文件复制到工程 文件夹中,注意:gts.dll应复制到"..\bin"文件夹中的debug或者release文件夹中; (3) 选择“project”菜单下的“Add existing Item”菜单项,选择函数声明文件,如gts.vb,将其添加 到工程当中; 至此,用户就可以在Visual Studio中使用VB.NET模块调用函数库中的任何函数,开始编写应用 程序。 第 2 章 运动控制器函数库的使用 16 © 1999-2019 固高科技版权所有 2.1.5 Visual C#中的使用 (1) 启动Visual Studio,按照“File”->"New",选择建立C#工程; (2) 将下载的动态链接库压缩包里C#文件夹中的动态链接库和函数声明文件复制到工程文件夹 中,注意:gts.dll应复制到"..\bin"文件夹中的debug或者release文件夹中; (3) 选择“project”菜单下的“Add existing Item”菜单项,选择函数声明文件,如gts.cs,将其添加 到工程当中; 至此,用户就可以在Visual Studio中使用C#模块调用函数库中的任何函数,开始编写应用程序。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值