上位机控制程序编写:
-
界面编写,考虑要实现的功能,注意控件命名,此外还需要整理控件之间的逻辑。
-
实时曲线设置。此处借用QCustomPlot控件。
-
导入固高控制卡的动态链接库,驱动器配置文件,运动程序文件(考虑电机运动程序在控制卡中实现,还是上位机中实现)。
-
定时器响应,实时读取编码器数据,编码器数据保存。
控制卡完成哪些初始设置?
short
rtn;
TPid
pid;
int
i,j;
for(i=0;i<CARDNUM;i++)
{
rtn=GT_Open(i);//打开
printf("GT_Open(%dcard)=%d\n",i,rtn);
rtn=GT_Reset(i);//复位
printf("GT_Reset(%dcard)=%d\n",i,rtn);
char str[]="GTS800_zhao.cfg";//12.14添加,是否影响下载该文件
rtn=GT_LoadConfig(i,str);
printf("GT_LoadConfig(%dcard)=%d\n",i,rtn);
//
rtn=GT_ClrSts(i,1,8);//清楚报警和限位
printf("GT_ClrSts(%dcard)=%d\n",i,rtn);
for(j=1;j<=AXISNUM;j++)
{
rtn=GT_GetPid(i,j,
1, &pid);//Pid设置
printf("%dcardGT_GetPid(%d)=%d\n",i,j,rtn);
pid.kp=1;
rtn=GT_SetPid(i,j,1,&pid);
printf("%dcardGT_SetPid(%d)=%d\n",i,j,rtn);
}
}
特别注意:
rtn=GT_LoadConfig(i,"GTS800_zhao.cfg");
warning:ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
消除警告的方法
char
str[]="GTS800_zhao.cfg";
rtn=GT_LoadConfig(i,str);
printf("GT_LoadConfig(%dcard)=%d\n",i,rtn);
在应用程序输出窗口查看返回值。
指令返回值:
返回值 | 意义 |
0 | 指令执行成功 |
1 | 指令执行错误 |
2 | License不支持 |
7 | 指令参数错误 |
-1 | 主机和控制器通讯失败 |
-6 | 打开控制器失败 |
-7 | 运动控制器没有响应 |