GTS-800二次开发的示例分析
发表于:2025-11-06 作者:千家信息网编辑
千家信息网最后更新 2025年11月06日,这篇文章将为大家详细讲解有关GTS-800二次开发的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1、打开控制器 GT_Open2、启动伺服使能 GT_C
千家信息网最后更新 2025年11月06日GTS-800二次开发的示例分析
这篇文章将为大家详细讲解有关GTS-800二次开发的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
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 << mAxis - 1)); mc.GT_Close(); Console.ReadKey(); } }}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二次开发的示例分析"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
位置
运动
指令
点位
目标
规划
控制器
伺服
控制
参数
模式
篇文章
速度
报警
示例
分析
开发
更多
结果
错误
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
苹果手机天气服务器崩溃
软件开发需要英语基础吗
保密观网络安全题库
宽带卡显示服务器错误
电脑wps怎么登陆服务器
英雄联盟安装数据库
网络安全建设调研
恒生网络技术公司
网络安全对现代生活的影响论文
媒体服务器是不是就是解码器
如皋无忧网络技术质量保证
浙大城市学院网络安全学院
内外部网络安全威胁
江苏信创服务器生产商
电脑网络安全黑板报插画
网络安全的态度
涉农信用信息数据库说明
洋州网络技术
数据库未开启或连接错误
卓越游戏软件开发工作室
开放大学数据库应用技术
网络安全师需要了解什么
计算机软件开发公司相关法律
街头篮球云服务器在哪
方舟端游服务器怎么开麦
场站端网络安全监测装置指南
服务器如何与app建立联系
小学网络安全活动主题
数据库设计主数据文件的扩展名
数据库內容如何计算