一、加载设置文件
通过网盘分享的文件:GTS运动控制.zip
链接: https://pan.baidu.com/s/1wxH9aklmesyxtcS53B2ylQ?pwd=437g 提取码: 437g
二、设置C#项目
- 将 gts.dll 和 GTS800.cfg 放入运行程序中的 Debug目次
- 将 gts.cs 放入项目下
三、调用方法
- using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms;using static gts.mc;
- namespace _04插补运动{ public partial class Form1 : Form { short rtn; public Form1() { InitializeComponent(); } /// <summary> /// 验证调用方法的状态 /// </summary> /// <param name="str"></param> /// <param name="rtn"></param> private void CommanPrint(string str, short rtn) { Console.WriteLine($"调用方法:{str},调用状态:{rtn}"); } //初始化控制器 private void button1_Click(object sender, EventArgs e) { //打开控制器 rtn = GT_Open(0, 1); CommanPrint("GT_Open" + "打开控制器", rtn); //复位运动控制器 rtn = GT_Reset(); CommanPrint("GT_Reset" + "复位运动控制器", rtn); //加载设置好的设置文件 rtn = GT_LoadConfig("GTS800.cfg"); CommanPrint("GT_LoadConfig" + "加载设置文件", rtn); //清除状态 rtn = GT_ClrSts(1, 8); CommanPrint("GT_ClrSts" + "清除各轴的报警和限位", rtn); } private void button2_Click(object sender, EventArgs e) { TCrdPrm crdPrm = new TCrdPrm(); //设置坐标系的维度 crdPrm.dimension = 2; // 坐标系为二维坐标系 crdPrm.synVelMax = 500; // 最大合成速度:500pulse/ms crdPrm.synAccMax = 3; // 最大加快度:1pulse/ms^2 crdPrm.evenTime = 10; // 最小匀速时间:50ms //设置坐标系规划的轴 crdPrm.profile1 = 1; // 规划器1(即profile[0])对应到X轴(即1) crdPrm.profile2 = 2; // 规划器2(即profile[1])对应到Y轴(即2 //设置原点 crdPrm.setOriginFlag = 1; // 表示需要指定坐标系的原点坐标的规划位置 crdPrm.originPos1 = 100; // 坐标系的原点坐标的规划位置为(100, 100) crdPrm.originPos2 = 100; rtn = GT_SetCrdPrm(1, ref crdPrm); CommanPrint("GT_SetCrdPrm" + " 设置坐标系参数", rtn); } //斜线插补 private void button3_Click(object sender, EventArgs e) { GT_CrdClear(1, 0); //定义了一个直线插补 rtn = GT_LnXY(1, 10000, 10000, 4, 0.1, 0, 0); CommanPrint("GT_LnXY" + " 定义一个直线插补", rtn); //再加入插补 rtn = GT_LnXY(1, 200, 200, 4, 0.1, 0, 0); CommanPrint("GT_LnXY" + " 定义一个直线插补", rtn); //启动插补运动 rtn = GT_CrdStart(1, 0); CommanPrint("GT_CrdStart" + " 启动插补运动", rtn); } //圆弧插补 private void button4_Click(object sender, EventArgs e) { GT_CrdClear(1, 0);//清除缓存 //描述一段圆弧插补 GT_LnXY(1,1000,1000,4,0.1,0,0); //描述整个园 GT_ArcXYC(1,5000,5000,10000,10000,0,4,0.5,0,0); //GT_ArcXYR(1,5000,0,5000,1,5,0.2,0,0); //启动插补运动 GT_CrdStart(1,0); } private void button5_Click(object sender, EventArgs e) { rtn = GT_Stop(1 << (1 - 1), 0); rtn = GT_Stop(1 << (2 - 1), 0); CommanPrint("GT_Stop" + "停止运动", rtn); } }}
复制代码 压缩包中有利用手册,可以根据手册上的详细代码举行编辑
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |