网络型运动控制器
编
程
手
册
目录
1 API函数数据结构
1.1宏定义
1.2 轴参数数据结构类型
2 动态链接库函数
2.1 初始化和参数设置函数
2.1.1 打开运动控制卡函数
2.1.2 关闭运动控制卡函数
2. 1.3 轴参数设定函数
2. 1.4 系统参数设定函数
2. 1.5 分段加减速设定函数
2. 1.6 分段加减速功能开关函数
2. 1.7 轴运动S形加减速设定函数
2. 1.8 设置轴命令位置函数
2. 1.9轴码盘位置计数器清零函数
2. 1.10轴码盘位置计数器清零函数
2.1.11驱动器参数设置函数
2.1.12 驱动器清除错误信息命令函数
2.1.13. 获取网络状态函数
2.2运动控制相关函数
2.2.1 单轴回零函数
2.2.2 单轴绝对运动函数
2.2.3单轴相对运动函数
2.2.4 单轴匀速运动函数
2.2.5 直线联动绝对运动插补函数
2.2.6直线联动相对运动插补函数
2.2.7 3轴直线联动相对位置插补函数
2.2.8 圆弧插补函数
2.2.9 伺服开启函数
2.2.10 伺服关闭函数
2.2.11 轴运动停止函数
2.2.12 轴运动到达检测函数
2.2.13 检测轴回零成功标志函数
2.3 开关量输入/输出控制函数
2.3.1 运动控制卡开关量单路输出函数
2.3.2运动控制卡开关量输入单路读取函数
2.3.3运动控制卡开关量16位输出函数
2.3.4运动控制卡开关量输入16位读取函数
2.3.5 主轴转速读取函数
2.3.6 位置捕捉值读取函数
2.3.7 位置捕捉开启函数
2.3.8 位置捕捉成功标志读取函数
2.4 模拟量函数
2.4.1 模拟量输出函数
2.4.2 读取A/D输入函数
2.5 轴状态读取函数
2.5.1 轴开关量状态字读取函数
2.5.2 命令位置读取函数
2.5.3 反馈位置读取函数
2.5.4 轴运动速度读取函数
2.5..5驱动器错误信息读取函数
3.7.6. 驱动器参数读取函数
2.6 运动位置采集函数
2.6.1 自动采集功能设定函数
2.6.2 采集数据读取函
2.7 软件限位函数
2.7.1 软件限位函数
2.8 轴功能设定函数
2.8.1 轴主从控制功能设定函数
2.9轴定位误差补偿功能函数
2.9.1 轴定位误差补偿设定函数
2.9.2 轴定位误差开启函数
2.10 轴状态信息函数
2.10.1 获取轴运动结束状态信息函数
2.10.2 获取轴错误信息函数
2.11其它功能函数
2.11.1 获取运动控制卡软件版本信息函数(待定)
2.11.2 获取运动控制卡硬件版本信息函数(待定)
2.11.3 DSP芯片复位函数
2.11.4 驱动器重启函数
2.12 补充函数
2.12.1 轴码盘位置计数器清零函数
2.12.2 读取轴码盘位置计数值函数
2.12.3 读取A/D输入值
2.12.4 读取单端计数值函数
2.12.5 单端计数值清零函数
3 动态链接库函数使用说明
3.1 开发 Windows系统下的运动控制系统
3.2开发 Visual C++运动控制程序
3.2.1概述
3.2.2动态链接库函数调用方法
3.2.2.1隐式调用
3.2.2.2显式调用
3.3 初始化和参数设置函数
3.3.1. Nc_OpenDevice 函数
3.3.2. Nc_CloseDevice 函数
3.3.3. AxisParaSetup 函数
3.3.4 SysParaSetup 函数
3.3.5 Nc_SubAccDecSet 函数
3.3.6 Nc_SubAccDecEnbale 函数
3.3.7 Nc_SAccDecSet 函数
3.3.8 Nc_AxisCmdPosSet 函数
3.3.9 Nc_EncodeClr 函数
3.3.10 Nc_Encode_Read 函数
3.3.11 Nc_Set_DriverParamenter() 函数
3.3.12. ClrErr 函数
3.3.13. NC_NET_STATE 函数
3.4 运动控制相关函数
3.4.1 Nc_Home 函数
3.4.2 Nc_Abs_Posi 函数
3.4.3. Nc_Rel_Posi 函数
3.4.4单轴匀速运动函数
3.4.5 Nc_2AxisUnionPa 函数
3.4.6 Nc_2AxisUnionPr 函数
3.4.7 Nc_3AxisUnionPr 函数
3.4.8 Nc_Arc 函数
3.4.9 Nc_Servo_Lock 函数
3.4.10 Nc_Servo_Free 函数
3.4.11 Nc_Stop 函数
3.4.12 Nc_Move_Check 函数
3.4.13 Nc_Home_Check 函数
3.5 输入/输出控制函数
3.5.1 Nc_Io_BitOut 函数
3.5.2 Nc_Io_BitIn 函数
3.5.3 Nc_Io_WOut 函数
3.5.4 Nc_Io_WIn 函数
3.5.5 Nc_Spindle_SpdRead 函数
3.4.6 Nc_Read_PosiCap 函数
3.4.7 Nc_Read_PosCapEnable 函数
3.4.8 NC_Read_PosSuccess 函数
3.6模拟量函数
3.6.1 Nc_Analog_Out 函数
3.6.2 Nc_Read_ADVal 函数
3.7轴状态读取函数
3.7.1 NC_Read_WAxisIoStatus 函数
3.7.2 NC_Read_CmdPos 函数
3.7.3 NC_Read_FeedbackPos 函数
3.7.4 Nc_GetAxisSpd 函数
3.7.5 Nc_Read_ErrCodeVal() 函数
3.7.6. Nc_Read_DriverParamenter() 函数
3.8运动位置采集函数
3.8.1 NC_AutoCollection_Set 函数
3.8.2 NC_Read_ColData 函数
3.9轴软件限位函数
3.9.1 NC_Soft_Limit 函数
3.10轴功能设定函数
3.10.1 AxisModeSetup函数
3.11定位误差补偿功能函数
3.11.1 AxisPosErrComp 函数
3.11.2 AxisPosErrCompEn函数
3.12轴状态信息函数
3.12.1 GetAxisEndStat 函数
3.13其它功能函数
3.13.1 NC_Get_SoftVersion 函数(待定)
3.13.2 NC_Hardware_Version 函数(待定)
3.13.3 ResetChip 函数
3.13.3 NC_ReStartDrive函数
3.14补充函数
3.14.1 Nc_EncodeClr() 函数
3.14.2 Nc_Encode_Read() 函数
3.14.3 Read_ADVal() 函数
3.14.4 NC_Read_SingleCount() 函数
3.14.5 NC_SingleCount_CLS () 函数
4 运动控制卡硬件接口说明
4.1模拟板接口说明:
4.2 IO板接口说明:
typedef unsigned short int Uint16;
typedef unsigned int Uint32;
typedef short int int16;
typedef int int32;
#define STATUS_USER_UNSUCCESS 0
#define STATUS_USER_SUCCESS 1
#define STATUS_DSPINITFAIL 2
#define STATUS_MCCARDCONNETFAIL 3
#define STATUS_OPENDEVICEFAIL 4
typedef struct _STU_AXIS_PARAM
{
float PosSpd; /* 定位速度 */
float PosAcc; /* 定位加速度 */
float PosDec; /* 定位减速度 */
float PosJerk; /* 定位加加速度 */
float OrgSpd; /* 回零高速速度 */
float OrgAcc; /* 回零加速度 */
float OrgDec; /* 回零减速度 */
float OrgJerk; /* 回零加加速度 */
float OrgSlow; /* 回零低速速度 */
float JogSpd; /* JOG速度 */
float JogAcc; /* JOG加速度 */
float JogDec; /* JOG减速度 */
float JogJerk; /* JOG加加速度 */
float ArcSpd; /* Arc速度 */
float ArcAcc; /* Arc加速度 */
float ArcDec; /* Arc减速度 */
float ArcJerk; /* Arc加加速度 */
float CpSpd; /* 联动速度 */
float CpAcc; /* 联动加速度 */
float CpDec; /* 联动减速度 */
float CpJerk; /* 联动加加速度 */
float PulseUnit; /* 脉冲当量 */
Uint16 RatioNum; /* 齿轮比分子 */
Uint16 RatioDen; /* 齿轮比分母 */
Uint16 SlaveID; /*轴对应的ID号*/
Uint16 SlaveType; /*类型:伺服轴(值为0)、I/O(1)、手脉(2)、
PWM(3)*/
Uint16 PosCapNo; /*保留位*/
Uint16 EnCodePortNum; /*码盘输入通道号0~6,
数字0表示该轴无码盘输入
数字1~6表示该轴对应的码盘输入通道号*/
}STU_AXIS_PARAM, *PSTU_AXIS_PARAM;
STDCALL_UINT Nc_OpenDevice(HWND hWnd);
STDCALL_UINT Nc_CloseDevice(void);
STDCALL_UINT AxisParaSetup(Uint16 uiAxis, STU_AXIS_PARAM stuAxisPara);
STDCALL_UINT SysParaSetup(Uint32 ulSysAxis);
STDCALL_UINT Nc_SubAccDecSet(Uint16 uiAxis, Uint16 uiDn, float fLen,
float fAcc, float fDec);
STDCALL_UINT Nc_SubAccDecEnbale(Uint16 uiAxis, Uint16 uiEn);
STDCALL_UINT Nc_SAccDecSet(Uint16 uiAxis, Uint16 uiEn);
STDCALL_UINT Nc_AxisCmdPosSet(Uint16 uiAxis, float fCmdPos);
STDCALL_UINT Nc_EncodeClr(Uint16 uiAxis);
STDCALL_UINT Nc_Encode_Read(Uint16 uiChNo,Uint32 *EnodeNum)
STDCALL_UINT Nc_Set_DriverParamenter(UINT uiDriv,UINT Driv_Write,Uint16 *uiParanum,Uint16 *uiClassNum,int32 *iParaValue,Uint32 *uiDrivStation,int16 *ErrMessage)
STDCALL_UINT ClrErr(UINT uiAxis,UINT *uiAxisStation,int16 *ErrMessage)
函数:
STDCALL_UINT NC_NET_STATE(Uint32 *uiCount)
STDCALL_UINT Nc_Home(Uint16 uiAxis, float fSpd, float fSlowSpd, Uint16 uiHomeType, Uint16 uiHomeMode, float fOffset,Uint16 DelayTime);
STDCALL_UINT Nc_Abs_Posi(Uint16 ulAxis, float fPos, float fSpd);
STDCALL_UINT Nc_Rel_Posi(Uint16 ulAxis, float fLen, float fSpd);
STDCALL_UINT Nc_Jog(Uint16 uiAxis, float fSpd, float fDir);
STDCALL_UINT Nc_2AxisUnionPa(Uint16 uiAxis1, Uint16 uiAxis2,
float fStartPos1, float fEndPos1,
float fStartPos2, float fEndPos2, float fSpd);
STDCALL_UINT Nc_2AxisUnionPr(Uint16 uiAxis1, Uint16 uiAxis2, float fLen1, float fLen2, float fSpd);
STDCALL_UINT Nc_3AxisUnionPr(Uint16 uiAxis1, Uint16 uiAxis2, Uint16 uiAxis3,Uint16 Cp_Flag, float fLen1, float fLen2, float len3, float fSpd);
STDCALL_UINT Nc_Arc(Uint16 uiAxis1, Uint16 uiAxis2, float fStartPos1,
float fStartPos2,float fEndPos1, float fEndPos2,
float fCentrePos1,float fCentrePos2,float fSpd,
Uint16 uiDir);
STDCALL_UINT Nc_Servo_Free(Uint16 uiAxis);
STDCALL_UINT Nc_Servo_Lock(Uint16 uiAxis);
STDCALL_UINT Nc_Stop(Uint16 uiAxis);
STDCALL_UINT Nc_Move_Check(UINT AxisNo, Uint16 *EndSts);
STDCALL_UINT Nc_Home_Check(UINT AxisNo, Uint16 *EndSts);
STDCALL_UINT Nc_Io_BitOut(UINT OutBitNo, BOOLEAN bOutBitSts);
STDCALL_UINT Nc_Io_BitIn(UINT InPotNo, UINT InBitNo,
BOOLEAN *bInBitSts);
STDCALL_UINT Nc_Io_WOut(UINT OutPortNo, Uint16 uiOutStatus);
STDCALL_UINT Nc_Io_WIn(UINT InPortNo, Uint16 *uiInStatus);
STDCALL_UINT Nc_Spindle_SpdRead(Uint16 uiAxis, Uint32 *uiSpindleSpd);
STDCALL_UINT Nc_Read_PosiCap(Uint16 uiAxis, int32 *iPosCapVal);
STDCALL_UINT Nc_Read_PosCapEnable(Uint16 uiAxis);
STDCALL_UINT NC_Read_PosSuccess(Uint16 uiAxis, Uint16 *uiFlg);
STDCALL_UINT Nc_Analog_Out(Uint16 uiChNo, Uint32 ulValue);
STDCALL_UINT Nc_Read_ADVal(Uint16 uiChn, int16 *iADVal)
STDCALL_UINT NC_Read_WAxisIoStatus(UINT AxisNum, Uint16 *uiStatus);
STDCALL_UINT NC_Read_CmdPos(UINT AxisNo, float *fCmdPos);
STDCALL_UINT NC_Read_FeedbackPos(UINT AxisNo, float *fNowPos);
STDCALL_UINT Nc_GetAxisSpd(UINT AxisNum, float *fNowSpd);
STDCALL_UINT Nc_Read_ErrCodeVal(UINT uiAxis,UINT uiAlarmMainCode,UINT *uiAlarmSubCode,UINT *uiWarningCode,UINT *uiAxisStation,int16 *ErrMessage);
STDCALL_UINT Nc_Read_DriverParamenter(UINT uiDriv,UINT A4A5_SET,Uint16 *uiParanum,Uint16 *uiClassNum,int32 *iParaValue,Uint32 *uiDrivStation,int16 *ErrMessage);
STDCALL_UINT NC_AutoCollection_Set(Uint16 uiAxis, Uint16 uiTime,
Uint16 uiNum);
STDCALL_UINT NC_Read_ColData(Uint16 uiAxis, int *iReadZone);
STDCALL_UINT NC_Soft_Limit(UINT AxisNo, float fPLimt, float fNLimt);
STDCALL_UINT AxisModeSetup(UINT MainAxisNo, UINT SlaveAxisNo,
UINT uiStyle);
STDCALL_UINT AxisPosErrComp(Uint16 uiAxis, int16 uiDelta, int16 *uiComp);
STDCALL_UINT AxisPosErrCompEn(Uint16 uiAxis, BOOLEAN bFlag);
STDCALL_UINT GetAxisEndStat(UINT AxisNo, Uint16 *EndSts);
STDCALL_UINT GetAxisErr(UINT AxisNum, Uint16 *ErrSts);
STDCALL_UINT NC_Get_SoftVersion();
STDCALL_UINT NC_Hardware_Version();
STDCALL_UINT ResetChip();
STDCALL_UINT NC_ReStartDrive();
STDCALL_UINT Nc_EncodeClr(Uint16 uiAxis);
STDCALL_UINT Nc_Encode_Read(Uint16 uiAxis,Uint32 *EnodeNum);
STDCALL_UINT Nc_Read_ADVal(Uint16 uiChn, int16 *iADVal);
STDCALL_UINT NC_Read_SingleCount(Uint16 uiChNo,Uint32 *uiCount);
STDCALL_UINT NC_SingleCount_CLS(Uint16 uiChNo);
利用网络型多轴运动控制器的动态链接库(Dynamic Links Library,简称DLL),开发者可以很快开发出 Windows平台下的运动控制系统。 网络型多轴运动控制器动态链接库是标准的 Windows 32 位动态链接库,选用的开发工具应支持 Windows 标准的 32 位 DLL 调用。
在 Windows 系统下使用网络型多轴运动控制器,首先要安装其驱动程序,网络型多轴运动控制器的驱动程序存放在产品配套光盘的 Windows\Driver 文件夹下。运动控制器指令函数动态链接库存放在产品配套光盘的 Windows\VcDll文件夹下。网络型多轴运动控制器动态链接库文件名为 MotionControlDll.dll和MotionControlDll.lib,在 Windows 系统下,用户可以使用任何能够支持动态链接库的开发工具来开发应用程序,例如 Visual C++、Visual Basic 和 Delphi 等开发工具中使用运动控制器的动态链接库。下面主要简述在Visual C++开发工具中使用运动控制器的动态链接库的情况。
用户可以使用 Visual C++6.0 或更高版本开发工具,在 Windows 平台下运动控制系统的开发。在Windows系统下开发运动控制系统,在开发的控制系统中访问DLL,实际上就是利用系统中的导入DLL函数与动态链接库文件中的导出函数进行衔接,在Visual C++开发工具有两种调用动态链接库的方法,使用的文件略有不同。
使用隐式链接DLL开发控制系统程序时,需要将DLL的引入库(.LIB)文件与开发的控制系统程序进行静态链接。隐式调用步骤如下:
(1)安装网络型多轴运动控制器驱动程序及函数库;
(2)启动 Visual C++,新建一个工程;
(3)将安装好的动态链接库“MotionControlDll.dll” 、 “MotionControlDll.lib”和函数声明文件“MotionControlDll.h”复制到工程文件中;
(4)选择“Project”菜单下的“Settings”菜单项;
(5)切换到“Link”标签页,在“Object/library modules”栏中输入“MotionControlDll.lib”文件名;
(6)在应用程序中加入函数库头文件的声明文件“MotionControlDll.h” ;
(7)在应用程序中调用API动态链接库函数。
显式调用方法需要调用 Windows API函数加载和释放动态链接库。方法如下:
(1)调用 Windows API函数 LoadLibrary()动态加载 DLL;
(2)调用 Windows API 函数 GetProcAddress()取得将要调用的 DLL 中
函数的指针;
(3)用函数指针调用 DLL 中函数完成相应功能;
(4)在程序结束时或不再使用 DLL 中函数时,调用 Windows API函数 FreeLibrary()释放动态链接库。
以上在两种方法均为 VC 中调用动态链接库函数的标准方法, 若要获得更具体的调用方法和帮助,请参考微软 Visual Stutio 开发文档 MSDN 或相关 VC++ 参考书籍中相应部分内容。
函数:
STDCALL_UINT Nc_OpenDevice(HWND hWnd)
功能描述:
应用程序通过该函数与连接运动动控制卡
输入参数:
HWND hWnd 接收消息的窗口句柄
输出参数:
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_UNSUCCESS 产生其他错误
STATUS_USER_SUCCESS 打开板卡成功
STATUS_DSPINITFAIL DSP初始化失败
STATUS_MCCARDCONNETFAIL 连接运动控制卡失败
STATUS_OPENDEVICEFAIL PCI驱动连接板卡失败
编程说明:
hWnd变量是应用程序的窗口句柄,其他API函数必须在该函数调用后才能使用。
函数:
STDCALL_UINT Nc_CloseDevice(void)
功能描述:
关闭运动控制卡,释放内存,建议在界面程序退出时调用该函数。
输入变量
无
输出变量
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS
编程说明:
应用程序退出前,必须调用该函数。
函数:
STDCALL_UINT AxisParaSetup(Uint16 uiAxis, STU_AXIS_PARAM stuAxisPara)
功能描述:
通过该函数设置每根轴的基本参数,包括:定位速度、定位加速度;回零速度、回零加速度;通信节点ID号和通道号等参数。
输入变量
Uint16 uiAxis 轴号(1表示1轴,以此类推,最大不得超过16个)
STU_AXIS_PARAM stuAxisPara 轴基本参数(定位速度、定位加速度;回零速度、回零加速度、通信节点ID号和通道号等参数)
输出变量
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
编程说明:
在使用当前轴之前,必须调用该函数进行该轴参数设定,轴设定总数必须与SysParaSetup 函数设定的轴数相等。
在该函数调用之前必须调用SysParaSetup函数。
函数:
STDCALL_UINT SysParaSetup(Uint32 ulSysAxis)
功能描述:
通过该函数设置运动控制卡的通用参数,包括系统加工轴数
输入变量
Uint32 ulSysAxis 通用参数(系统实际加工轴数1-16,最大不得超过16个)
输出变量
无
返回值:
STDCALL_ UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
编程说明:
当调用Nc_OpenDevice成功打开板卡后,一般先调用该函数进行系统设置,再进行其他操作。
函数:
STDCALL_UINT Nc_SubAccDecSet(Uint16 uiAxis, Uint16 uiDn, float fLen, float fAcc, float fDec)
功能描述:
分段加减速设置函数。
输入变量
Uint16 uiAxis; 轴号(1表示一轴,以此类推,最大不得超过16个)
Uint16 uiDn; 段号(1表示第一段,以此类推,最多8段)
float fLen; 运动长度(脉冲数)
float fAcc; 加速度(脉冲数/S2)
float fDec; 减速度(脉冲数/S2)
输出变量
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT Nc_SubAccDecEnbal(Uint16 uiAxis, Uint16 uiEn)
功能描述:
分段加减速使能函数。
输入变量
Uint16 uiAxis 轴号(1表示一轴,以此类推,最大不得超过16个)
Uint16 uiEn 确定是否开启分段设置功能(如果为1,表示开启,为
0表示关闭。)
输出变量
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT Nc_SAccDecSet(Uint16 uiAxis, Uint16 uiEn)
功能描述:
设置轴运动加减速为S曲线加减速函数
输入变量
Uint16 uiAxis 轴号(1表示一轴,以此类推,最大不得超过16个)
Uint16 uiEn 开启S形加减速控制方法设置功能(如果为1,表示开启,为0表示关闭)
输出变量
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT Nc_AxisCmdPosSet(Uint16 uiAxis, float fCmdPos)
功能描述:
设置轴命令位置函数
输入变量
Uint16 uiAxis 轴号(1表示一轴,以此类推,最大不得超过16个)
float fCmdPos 命令值(脉冲数)
输出变量
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT Nc_EncodeClr(Uint16 uiAxis)
功能描述:
轴码盘位置计数器清零函数
输入变量:
Uint16 uiAxis 轴号(1表示一轴,以此类推,最大不得超过16个)
输出变量:
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT Nc_Encode_Read(Uint16 uiChNo,Uint32 *EnodeNum)
功能描述:
读取轴码盘位置计数值函数
输入变量:
Uint16 uiChNo 码盘输入通道号(用数字1~6表示1~6通道)
输出变量:
Uint32 *EnodeNum 读取的码盘位置计数值(脉冲数)存放的地址的指针变量
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT Nc_Set_DriverParamenter(UINT uiDriv,UINT bDriveSet,UINT bWritePattern,Uint16 *uiParanum,Uint16 *uiClassNum,int32 *iParaValue,Uint32 *uiDrivStation,int16 *ErrMessage);
功能描述:
驱动器参数设置,。
输入变量
UINT uiDriv 驱动器号
UINT bDriveSet, 驱动器类型(1为A5,0为A4)
UINT bWritePattern 参数写入方式(1,写入EEPROM,0写入驱动器)
Uint16 *uiParanum, 参数号
Uint16 *uiClassNum 类别号
int32 *iParaValue 参数值
输出变量
Uint32 *uiDrivStation 驱动器参数设置完成状态(0表示完成)
int16 *ErrMessage 信息(1表示成功)
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT ClrErr(UINT uiAxis,UINT *uiAxisStation,int16 *ErrMessage)
功能描述:
驱动器清除错误信息命令。
输入变量:
UINT uiAxis 轴号(1表示一轴,以此类推,最大不得超过16个)
输出变量:
UINT *uiAxisStation 清除错误信息状态(1表示完成清除)
int16 *ErrMessage 错误信息(0表示清除成功;其余数字代表具体的错误信息)
返回值:
STDCALL_UINT int 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT NC_NET_STATE(Uint32 *uiCount)
功能描述:
获取网络状态
输入变量:
无
输出变量:
Uint32 *uiCount 网络状态, 返回1网络正常,5网络异常
返回值:
STDCALL_UINT int 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT Nc_Home(Uint16 uiAxis, float fSpd, float fSlowSpd, Uint16 uiHomeType, Uint16 uiHomeMode, float fOffset,Uint16 DelayTime);
功能描述:
轴码盘位置计数器初始值函数
输入变量
Uint16 uiAxis 轴号(1表示一轴,以此类推,最大不得超过16个)
float fSpd 回零的最大速度(脉冲频率(每秒脉冲数))
float fSlowSpd 最后寻找码盘或光栅零信号时的最大速度(脉冲频
率(每秒脉冲数))
Uint16 uiHomeType 回零方式(0:先到正限位回零,1:先到负限位回
零)
Uint16 uiHomeMode; 回零模式 0:零点传感器,1:正限位,2:负限位,3:零点传感器+码盘零点(推荐使用)
4:码盘回零,5:机械挡块
float fOffset 回零完成后的偏移量(脉冲数)
Uint16 DelayTime 延迟时间
输出变量
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT Nc_Abs_Posi((Uint16 ulAxis, float fPos, float fSpd)
功能描述:
单轴绝对定位运动函数
输入变量
Uint16 ulAxis 轴号(1表示一轴,以此类推,最大不得超过16)
float fPos 绝对位置(脉冲数)
float fSpd 运动速度(脉冲频率(每秒脉冲数))
输出变量
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT Nc_Rel_Posi(Uint16 ulAxis, float fLen, float fSpd)
功能描述:
单轴相对定位运动函数
输入变量
Uint16 ulAxis 轴号(1表示一轴,以此类推,最大不得超过16)
float fLen 相对位置(脉冲数)
float fSpd 运动速度(脉冲频率(每秒脉冲数))
输出变量
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT Nc_Jog(Uint16 uiAxis, float fSpd, float fDir)
功能描述:
单轴匀速运动(JOG)函数
输入变量
Uint16 uiAxis 轴号(1表示一轴,以此类推,最大不得超过16)
float fSpd 运行速度(脉冲频率(每毫秒脉冲数)),速度可变
float fDir; 表明运动方向(0表示正方向,1表示负方向)
输出变量
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT Nc_2AxisUnionPa(Uint16 uiAxis1, Uint16 uiAxis2, float fStartPos1, float fEndPos1,float fStartPos2, float fEndPos2, float fSpd)
功能描述:
2轴直线联动绝对位置插补函数
输入变量
Uint16 uiAxis1 参加联动运动的第一根轴的轴号
Uint16 uiAxis2 参加联动运动的第二根轴的轴号
float fStartPos1 参加联动运动的第一轴的起始位置(脉冲数)
float fEndPos1 参加联动运动的第一轴的目标位置(脉冲数)
float fStartPos2 参加联动运动的第二轴的起始位置(脉冲数)
float fEndPos2 参加联动运动的第二轴的目标位置(脉冲数)
float fSpd; 运动速度(脉冲频率(每秒脉冲数))
输出变量
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT Nc_2AxisUnionPr(Uint16 uiAxis1, Uint16 uiAxis2,
float fLen1, float fLen2, float fSpd)
功能描述:
2轴直线联动相对位置插补函数
输入变量
Uint16 uiAxis1; 参加联动运动的第一根轴的轴号
Uint16 uiAxis2; 参加联动运动的第二根轴的轴号
float fLen1; 参加联动运动的第一根轴的相对运动距离(脉冲数)
float fLen2; 参加联动运动的第二根轴的相对运动距离(脉冲数)
float fSpd; 运动速度(脉冲频率(每秒脉冲数))
输出变量
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
Nc_3AxisUnionPr(Uint16 uiAxis1, Uint16 uiAxis2, Uint16 uiAxis3, Uint16 Cp_Flag, float fLen1, float fLen2, float len3, float fSpd)
功能描述:
3轴直线联动相对位置插补函数
输入变量:
Uint16 axis1; 第一根轴的轴号
Uint16 axis2; 第二根轴的轴号
Uint16 axis3; 第三根轴的轴号
Uint16 Cp_Flag;联动类型标志2/3轴联动
float len1; 第一轴的位移增量,脉冲数
float len2; 第二轴的位移增量,脉冲数
float len3; 第三轴的位移增量,脉冲数
float spd; 最大速度
输出变量:
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT Nc_Arc(Uint16 uiAxis1, Uint16 uiAxis2, float fStartPos1, float fStartPos2,float fEndPos1, float fEndPos2, float fCentrePos1,float fCentrePos2,float fSpd, Uint16 uiDir)
功能描述:
圆弧插补函数
输入变量
Uint16 uiAxis1 参加圆弧插补的第一根轴的轴号
Uint16 uiAxis2 参加圆弧插补的第二根轴的轴号
float fStartPos1 参加圆弧插补的第一根轴的起点坐标(脉冲数)
float fStartPos2 参加圆弧插补的第二根轴的起点坐标(脉冲数)
float fEndPos1 参加圆弧插补的第一根轴的终点坐标(脉冲数)
float fEndPos2 参加圆弧插补的第二根轴的终点坐标(脉冲数)
float fCentrePos1 参加圆弧插补的第一根轴的圆心坐标(脉冲数)
float fCentrePos2 参加圆弧插补的第二根轴的圆心坐标(脉冲数)
float fSpd 速度(脉冲频率(每秒脉冲数))
Uint16 uiDir 圆弧方向(0表示正向,1表示负向)
输出变量
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT Nc_Servo_lock(Uint16 uiAxis)
功能描述:
伺服关闭函数
输入变量
Uint16 uiAxis 轴号(1表示1轴,以此类推,最大不得超过16)
输出变量
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT Nc_Servo_Free(Uint16 uiAxis)
功能描述:
伺服开启函数
输入变量
Uint16 uiAxis 轴号(1表示1轴,以此类推,最大不得超过16)
输出变量
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
编程说明:
当需要轴运动时,必须先调用此函数,否则伺服电机无法运转。
函数:
STDCALL_UINT Nc_Stop(Uint16 uiAxis)
功能描述:
轴运动停止函数
输入变量
Uint16 uiAxis 轴号(1表示1轴,以此类推,最大不得超过16)
输出变量
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT Nc_Move_Check(UINT AxisNo, Uint16 *EndSts)
功能描述:
运动到达检测函数
输入变量
UINT AxisNo 轴号(1表示一轴,以此类推,最大不得超过16)
输出变量
Uint16 *EndSts 运动结束状态信息存放的地址
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
编程说明:
EndSts结束状态信息取值包括:
0x0000 /* 空闲状态 */
0x0001 /* 动作正常终了*/
0x0002 /* 动作异常终了*/
0x0004 /* 动作正在进行*/
函数:
STDCALL_UINT Nc_Home_Check(UINT AxisNo, Uint16 *EndSts)
功能描述:
回零到达检测函数
输入变量
UINT AxisNo 轴号(1表示一轴,以此类推,最大不得超过16)
输出变量
Uint16 *EndSts 回零运动的结束状态信息存放的地址
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
编程说明:
EndSts结束状态信息取值包括:
0x0000 /* 空闲状态 */
0x0001 /* 动作正常终了*/
0x0002 /* 动作异常终了*/
0x0004 /* 动作正在进行*/
函数:
STDCALL_UINT Nc_Io_BitOut(UINT OutBitNo, BOOLEAN bOutBitSts)
功能描述:
运动控制卡开关量单路输出函数
输入变量
UINT OutBitNo 位号(共有32位,分别用数字0~31表示)
BOOLEAN bOutBitSts 输出信息
输出变量
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT Nc_Io_BitIn(UINT InPotNo, UINT InBitNo, BOOLEAN *bInBitSts)
功能描述:
运动控制卡开关量单路读取函数
输入变量
UINT InPotNo 端口号(有三端口,0:0端口、1:1端口、2:2端口)
UINT InBitNo 位号(对应48个位,该参数只需设置数字0~15即可)
输出变量
BOOLEAN *bInBitSts 读取值存放的地址
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
编程说明:
该函数InPotNo赋值端口0, InBitNo赋值0~15,其对应0~15位;
InPotNo赋值端口1, InBitNo赋值0~15,其对应16~31位
InPotNo赋值端口2, InBitNo赋值0~15,其对应32~47位
bInBitSts返回值:
bInBitSts的值对应InBitNo 的状态,0代表无状态,1代表有状态
函数:
STDCALL_UINT Nc_Io_WOut(UINT OutPortNo, Uint16 uiOutStatus)
功能描述:
运动控制卡开关量16位输出函数
输入变量
UINT OutPortNo 端口号(有两端口,0:0端口,对应0~15位
1:1端口,对应16~31位)
Uint16 uiOutStatus 状态值
输出变量
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT Nc_Io_WIn(UINT InPortNo, Uint16 *uiInStatus)
功能描述:
运动控制卡开关量16位读取函数
输入变量
UINT InPortNo 端口号(有三端口,0:0端口,对应0~15位
1:1端口,对应16~31位
2:2端口,对应32~47位)
输出变量
Uint16 * uiInStatus 开关量状态存放的地址
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
编程说明:
输出变量uiInStatus的值对应每个端口的16位状态,每一位状态中0代表无状态,1代表有状态。
函数:
STDCALL_UINT Nc_Spindle_SpdRead(Uint16 uiAxis, Uint32 *uiSpindleSpd)
功能描述:
主轴转速读取函数
输入变量
Uint16 uiAxis 主轴通道号(共有6个通道,用数字1~6来分别表示1~6个通道)
输出变量
Uint32 *uiSpindleSpd 主轴速度存放的地址(该地址存放的是每毫秒脉冲数,需要转换才可得到主轴速度。)
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT Nc_Read_PosiCap (Uint16 uiAxis, int32 *iPosCapVal)
功能描述:
位置捕捉读取函数
输入变量:
Uint16 uiAxis 轴号(1表示一轴,以此类推,最大不得超过16)
输出变量:
int32 *iPosCapVal 捕捉的值存放的地址(捕捉的值为脉冲数)
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT Nc_Read_PosCapEnable(Uint16 uiAxis)
功能描述:
轴位置捕捉开启函数
输入变量
Uint16 uiAxis 轴号(1表示一轴,以此类推,最大不得超过16)
输出变量
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT NC_Read_PosSuccess (Uint16 uiAxis, Uint16 *uiFlg)
功能描述:
读取轴位置捕捉成功标志函数
输入变量
Uint16 uiAxis 轴号(1表示一轴,以此类推,最大不得超过16)
输出变量
Uint16 *uiFlg 捕捉到的标志存放地址(捕捉到的标志值为0和1,0对应失败,1代表成功)
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT Nc_Analog_Out(Uint16 uiChNo, Uint32 ulValue)
功能描述:
模拟量输出函数
输入变量
Uint16 uiChNo 模拟量输出通道号(共有6个通道,用数字1~6来分别表示1~6个通道)
Uint32 ulValue 输出值(输入数字100~200即可,100对应0伏电压
200对应10伏电压
101~199代表0~10伏之间电压值)
输出变量
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
Nc_Read_ADVal(Uint16 uiChn, int16 *iADVal)
功能描述:
读取A/D输入值。
输入变量
Uint16 uiChn A/D通道号(用数字1~6表示1~6通道)
输出变量
int16 *iADVal 读取的A/D值存放的地址
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
编程说明:
A/D表示电压值,数字-32767~+32767代表-10V~+10V。
函数:
STDCALL_UINT NC_Read_WAxisIoStatus(UINT AxisNum, Uint16 *uiStatus)
功能描述:
轴开关状态字函数(16位),包括回零、限位开关、伺服开关、报警和运动中等状态
输入变量:
UINT AxisNum 轴号(1表示一轴,以此类推,最大不得超过16)
输出变量:
Uint16 *uiStatus 状态信息存放的地址
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
编程说明:
状态信息用6位二进制数表示,即:
第0位代表回零运动状态(0:未执行回零运动,1:正在回零)
第1位代表是否到达正限位(0:未到达正限位,1:到达正限位)
第2位代表是否到达负限位状态(0:未到达负限位,1:到达负限位)
第3位代表伺服开关状态(0:伺服关,1:伺服开)
第4位代表警告状态(0:没有警告,1:有警告)
第5位代表运动状态(0:未运动,1:运动中)
函数:
STDCALL_UINT NC_Read_CmdPos(UINT AxisNo, float *fCmdPos)
功能描述:
命令位置读取函数
输入变量
UINT AxisNo 轴号(1表示一轴,以此类推,最大不得超过16)
输出变量
float * fCmdPos 命令位置(脉冲数)存放的地址
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT NC_Read_FeedbackPos(UINT AxisNo, float *fNowPos)
功能描述:
反馈位置(实际位置)读取函数
输入变量
UINT AxisNo 轴号(1表示一轴,以此类推,最大不得超过16)输出变量
float *fNowPos 反馈位置(脉冲数)存放的地址
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT Nc_GetAxisSpd(UINT AxisNum, float *fNowSpd)
功能描述:
读取轴当前运动速度
输入变量
UINT AxisNum 轴号(1表示一轴,以此类推,最大不得超过16)
输出变量
float *fNowSpd 当前运动速度(脉冲数)存放的地址
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
Nc_Read_ErrCodeVal(UINT uiAxis,UINT *uiAlarmMainCode,UINT *uiAlarmSubCode,UINT *uiWarningCode,UINT *uiAxisStation,int16 *ErrMessage)
功能描述:
读取轴的错误信息,包括主轴报警,从轴报警,Warning信息,读取的状态,错误信息。
输入变量
Uint16 uiAxis 轴号(1表示一轴,以此类推,最大不得超过16个)
输出变量
int16 *uiAlarmMainCode(16位数组) 读取的主轴报警信息
int16 *uiAlarmSubCode(16位数组) 读取的从轴报警信息
int16 *uiWarningCode(16位数组) 读取的Warning信息
UINT *uiAxisStation(指针) 读取状态(0表示成功,1表示有错误)
int16 *ErrMessage(16位数组) 错误信息(0表示没有错误;其余数字代表具体的错误信息)
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT Nc_Read_DriverParamenter(UINT uiDriv,UINT A4A5_SET,Uint16 *uiParanum,Uint16 *uiClassNum,int32 *iParaValue,Uint32 *uiDrivStation,int16 *ErrMessage);
功能描述:
驱动器参数读取
输入变量
UINT uiDriv, 驱动器号
UINT A4A5_SET, 驱动器类型 0表示A4,1表示A5
Uint16 *uiParanum, 参数号
Uint16 *uiClassNum, 类别号
输出变量
int32 *iParaValue 参数值
Uint32 *uiDrivStation 驱动器参数状态,0表示完成
int16 *ErrMessage 信息,0表示成功读取,其他为错误信息
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT NC_AutoCollection_Set(Uint16 uiAxis, Uint16 uiTime, Uint16 uiNum)
功能描述:
自动采集功能设定函数
输入变量:
Uint16 uiAxis 轴号(1表示一轴,以此类推,最大不得超过16)
Uint16 uiTime 时间间隔(ms)(即隔多长时间采一次)
Uint16 uiNum 采集次数
输出变量:
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT NC_Read_ColData(Uint16 uiAxis, int *iReadZone)
功能描述:
采集数据读取函数
输入变量
Uint16 uiAxis, 轴号(1表示一轴,以此类推,最大不得超过16)
输出变量
int *iReadZone 采集的数据(脉冲数)存放的首地址
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
编程说明:
在调用该函数时,必须先调用NC_AutoCollection_Set函数。
函数:
STDCALL_UINT NC_Soft_Limit(UINT AxisNo, float fPLimt, float fNLimt)
功能描述:
轴软件限位函数
输入变量
UINT AxisNo 轴号(1表示一轴,以此类推,最大不得超过16)
float fPLimt 正限位(脉冲数)
float fNLimt 负限位(脉冲数)
输出变量
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT AxisModeSetup(UINT MainAxisNo, UINT SlaveAxisNo, UINT uiStyle)
功能描述:
通过该函数设置轴特殊工作模式,包括轴叠加功能、轴主从控制功能。
输入变量
UINT MainAxisNo 主轴号
UINT SlaveAxisNo 从轴号
UINT uiStyle 设置类型:
0x10:设置主从控制模式
0x11:取消主从控制模式
输出变量
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT AxisPosErrComp (Uint16 uiAxis, int16 uiDelta, int16 *uiComp)
功能描述:
定位误差补偿数据设定函数。
输入变量:
Uint16 uiAxis 轴号(1表示一轴,以此类推,最大不得超过16)
int16 uiDelta 位置间隔(脉冲数)
int16 *uiComp 补偿值存放地址(补偿值为脉冲数)
输出变量:
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT AxisPosErrCompEn (Uint16 uiAxis, BOOLEAN bFlag)
功能描述:
定位误差补偿功能开启设定函数。
输入变量:
Uint16 uiAxis; 轴号(1表示一轴,以此类推,最大不得超过16)
BOOLEAN bFlag; 开启标志(true为开启,false为关闭)
输出变量:
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT GetAxisEndStat(UINT AxisNo, Uint16 *EndSts)
功能描述:
获取轴运动结束状态信息。
输入变量
UINT AxisNo 轴号(1表示一轴,以此类推,最大不得超过16)
输出变量
Uint16 *EndSts 结束状态信息存放地址
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
编程说明:
EndSts结束状态信息取值包括:
0x0000 /* 空闲状态 */
0x0001 /* 动作正常终了*/
0x0002 /* 动作异常终了*/
0x0004 /* 动作正在进行*/
函数:
STDCALL_UINT NC_Get_SoftVersion()
功能描述:
获取运动控制卡软件版本信息函数
输入变量
无
输出变量
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT NC_Hardware_Version()
功能描述:
获取运动控制卡硬件版本信息函数
输入变量
无
输出变量
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT ResetChip()
功能描述:
通过该函数DSP复位。
输入变量
无
输出变量
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT NC_ReStartDrive(UINT uiDrive,UINT *uiStation, int16 *iCondMessage)
功能描述:
通过该函数实现驱动器重启,并显示驱动器状态。
输入变量
UINT uiDrive 驱动器号
输出变量
UINT *uiStation , 0表示重启驱动器完成,
int16 *iCondMessage 0表示驱动器重启成功,其他数字为错误信息
返回值:
STDCALL_UINT int 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
STDCALL_UINT Nc_EncodeClr(Uint16 uiAxis)
功能描述:
轴码盘位置计数器清零函数
输入变量:
Uint16 uiAxis 轴号
输出变量:
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
编程说明:
使用该函数前必须保证:
1) 在AxisParaSetup函数中已设定轴对应的码盘号;
2) 将轴所对应的驱动器上的码盘信息输送到模拟板上的对应通道;
3) 模拟板上的对应通道必须与1)中所设码盘号一致。
函数:
STDCALL_UINT Nc_Encode_Read(Uint16 uiAxis,Uint32 *EnodeNum)
功能描述:
读取轴码盘位置计数值函数
输入变量:
Uint16 uiAxis 轴号
输出变量:
Uint32 *EnodeNum 码盘计数值(脉冲数)
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
编程说明:
使用该函数前必须保证:
1) 在AxisParaSetup函数中已设定轴对应的码盘号;
2) 将轴所对应的驱动器上的码盘信息输送到模拟板上的对应通道。
3) 模拟板上的对应通道必须与1)中所设码盘号一致。
函数:
Read_ADVal(Uint16 uiChn, int16 *iADVal)
功能描述:
读取A/D输入值。
输入变量
Uint16 uiChn AD通道号(1~6)
输出变量
int16 *iADVal 读取的AD值(-32767 ~ 32767代表-10V ~ 10V)
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
NC_Read_SingleCount(Uint16 uiChNo, Uint32 *uiCount)
功能描述:
读取单端计数值函数
输入变量
Uint16 uiChNo 通道号(1-6)
输出变量
Uint32 *uiCount 计数值
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
函数:
NC_SingleCount_CLS(Uint16 uiChNo)
功能描述:
单端计数值清零函数
输入变量
Uint16 uiChNo 通道号(1-6)
输出变量:
无
返回值:
STDCALL_UINT UINT 返回值
返回值说明:
STATUS_USER_SUCCESS 调用函数成功
STATUS_USER_UNSUCCESS 调用函数失败
1、码盘输入(DB9:J4~J9)(注:六路引脚定义一致)
通道号 | 电路板标号 |
1 | J4 |
2 | J5 |
3 | J6 |
4 | J7 |
5 | J8 |
6 | J9 |
引脚说明
引脚号 | 功能说明 |
1 | +5V |
2 | A- |
3 | B- |
4 | Z- |
5 | GND |
6 | A+ |
7 | B+ |
8 | Z+ |
9 | GND |
2、单端计数(DB15:J2)(注:不检测的通道接地)
通道号 | 引脚号 |
1 | 10 |
2 | 3 |
3 | 4 |
4 | 5 |
5 | 11 |
6 | 12 |
地 | 2 |
3、高速捕捉(DB15:I_01):(注:不检测的通道接24V)
通道号 | 引脚号 |
1 | 14 |
2 | 6 |
3 | 12 |
4 | 4 |
5 | 10 |
6 | 2 |
地 | 1 |
4、AD(DB15:Analog_IN1):(注:不检测的通道接地)
通道号 | 引脚号 |
1 | 8 |
2 | 7 |
3 | 6 |
4 | 5 |
5 | 4 |
6 | 3 |
地 | 9 |
5、PWM输出(J1):
由外轮廓向内看,从左至右依次是:地、6、5、4、地、3、2、1。
以电路板的标记为准,低电平有效
楼主最近还看过