当前位置:  首页  >  PHP资讯  >  业界资讯

分享GTS800二次开发流程步骤

1、打开控制器GT_Open2、启动伺服使能  GT_ClrSts3、轴规划位置清零GT_SetPrfPos4、轴运动模式GT_PrfTrap5、轴目标位置GT_SetPos6、轴转动速度GT_SetVel7、启动轴GT_Update8、关闭
1、打开控制器         GT_Open
2、启动伺服使能        GT_ClrSts
3、轴规划位置清零       GT_SetPrfPos
4、轴运动模式         GT_PrfTrap
5、轴目标位置         GT_SetPos
6、轴转动速度         GT_SetVel
7、启动轴           GT_Update
8、关闭使能          GT_AxisOff
9、关闭控制器         GT_Close
C#: using System; using System.Collections.Generic; using System.Linq; using System.Text; using gts; namespace GTS { class Program { static void command(string sz, short nR) { Console.WriteLine(sz + " = " + nR); } static void Main(string[] args) { short mAxis = 2; short nR = mc.GT_Open(0, 1); if (nR != 0) { command("GT_Open", nR); Console.WriteLine("Open error"); return; } command("GT_Open", nR); // 清除各轴的报警和限位 command("GT_ClrSts", mc.GT_ClrSts(mAxis, 1)); // 伺服使能 command("GT_AxisOn", mc.GT_AxisOn(mAxis)); // 位置清零 command("GT_ZeroPos", mc.GT_ZeroPos(mAxis, 1)); // 轴规划位置清零 command("GT_SetPrfPos", mc.GT_SetPrfPos(mAxis, 0)); // 设置指定轴为点位运动模式。 command("GT_PrfTrap", mc.GT_PrfTrap(mAxis)); // 设置点位运动参数 mc.TTrapPrm trap = new mc.TTrapPrm(); trap.acc = 0.25; trap.dec = 0.125; trap.smoothTime = 25; command("GT_SetTrapPrm", mc.GT_SetTrapPrm(mAxis, ref trap)); // 设置轴的目标位置 command("GT_SetPos", mc.GT_SetPos(mAxis, 50000)); // 设置轴的目标速度 command("GT_SetVel", mc.GT_SetVel(mAxis, 25)); // 启动轴运动 command("GT_Update", mc.GT_Update(1 <
C++源码: #include "stdafx.h" #include "windows.h" #include "conio.h" #include "gts.h" #define AXIS 1 // 该函数检测某条GT指令的执行结果,command为指令名称,error为指令执行返回值 void commandhandler(char *command, short error) { // 如果指令执行返回值为非0,说明指令执行错误,向屏幕输出错误结果 if(error) { printf("%s = %d\n", command, error); } } int main(int argc, char* argv[]) { short sRtn; TTrapPrm trap; long sts; double prfPos; // 打开运动控制器 sRtn = GT_Open(); // 指令返回值检测,请查阅例2-1 commandhandler("GT_Open", sRtn); // 配置运动控制器 // 注意:配置文件取消了各轴的报警和限位 sRtn = GT_LoadConfig("test.cfg"); commandhandler("GT_LoadConfig ", sRtn); // 清除各轴的报警和限位 sRtn = GT_ClrSts(1, 8); commandhandler("GT_ClrSts", sRtn); // 伺服使能 sRtn = GT_AxisOn(AXIS); commandhandler("GT_AxisOn", sRtn); // 位置清零 sRtn = GT_ZeroPos(AXIS); commandhandler("GT_ZeroPos", sRtn); // AXIS轴规划位置清零 sRtn = GT_SetPrfPos(AXIS, 0); commandhandler("GT_SetPrfPos", sRtn); // 将AXIS轴设为点位模式 sRtn = GT_PrfTrap(AXIS); commandhandler("GT_PrfTrap", sRtn); // 读取点位运动参数 sRtn = GT_GetTrapPrm(AXIS, &trap); commandhandler("GT_GetTrapPrm", sRtn); trap.acc = 0.25; trap.dec = 0.125; trap.smoothTime = 25; // 设置点位运动参数 sRtn = GT_SetTrapPrm(AXIS, &trap); commandhandler("GT_SetTrapPrm", sRtn); // 设置AXIS轴的目标位置 sRtn = GT_SetPos(AXIS, 50000L); commandhandler("GT_SetPos", sRtn); // 设置AXIS轴的目标速度 sRtn = GT_SetVel(AXIS, 50); commandhandler("GT_SetVel", sRtn); // 启动AXIS轴的运动 sRtn = GT_Update(1<<(AXIS-1)); commandhandler("GT_Update", sRtn); do { // 读取AXIS轴的状态 sRtn = GT_GetSts(AXIS, &sts); // 读取AXIS轴的规划位置 sRtn = GT_GetPrfPos(AXIS, &prfPos); printf("sts=0x%-10lxprfPos=%-10.1lf\r", sts, prfPos); }while(sts&0x400); // 等待AXIS轴规划停止 // 伺服关闭 sRtn = GT_AxisOff(AXIS); printf("\nGT_AxisOff()=%d\n", sRtn); getch(); return 0; }

以上就是分享GTS-800二次开发流程步骤的详细内容,更多请关注其它相关文章!

内容推荐:免费高清PNG素材下载
吐了个 "CAO" !
扫码关注 PHP1 官方微信号
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved PHP1.CN 第一PHP社区 版权所有 京ICP备19059560号-4