一、运动控制部分MFC主要功能
1、实现简单PID的直接修改 完成
有两种:一种是写入mechaware的,函数是修改对应的块参数(自带实例);另一种是固有固件更改PID参数,用到filter 对象(参考张工程序)。
2、电机的使能和取消
mpiMotorAmpEnableGet(MPIMotor motor, MPI_BOOL *ampEnable)
long mpiMotorAmpEnableSet(MPIMotor motor, MPI_BOOL ampEnable)
事例:
mpiMotorAmpEnableSet(mpiObjects->MpiMotor(i),1); 使能
mpiMotorAmpEnableSet(mpiObjects->MpiMotor(i),0); 取消
3、实现运动 完成
mpiMotionSimpleTrapezoidalMove(mpiObjects->MpiMotion(i),GOALPOSITION,MOTIONVELOCITY,MOTIONACC,MOTIONDEC)
4、速度设置
4、退出结束
附加功能:
清除错误 mpiMotorAmpFaultClear
主要问题:
常见操作:
MATLAB .mdl MFC文件属性设置,每次新建都要设置
1、C/C++
常规->附加包含目录
$(MEI_MDK_DIR)\MPI\Include;$(MEI_MDK_DIR)\MPI\apputil;$(MEI_MDK_DIR)\MechaWare\include
预处理器->预处理器定义
NDEBUG
_WINDOWS
MPI_ASSERT
MPI_PLATFORM_WIN32
MPI_DECL1=__declspec(dllimport)
MPI_DECL2=__stdcall
2、链接器:
常规,附加库目录
$(MEI_MDK_DIR)\MechaWare\lib\Win32\VS2010\Debug;$(MEI_MDK_DIR)\MPI\lib\Win32\VS2010\debug;$(MEI_MDK_DIR)\Win32
输入,附加依赖项
mpivc100d.lib
apputil.lib
mpiapplib.lib
mechaware.lib
1、 文件写入控制卡:设置工作目录为文件所在位置,工作区输入 mwload 文件名.mdl。
2、 查看文件夹中的.map文件,可以知道每个模块的block标号,这个标号在编程时用到,而且每次修改mdl文件,都会发生变化。
3、 运行程序后,采用加buffer的形式,查看每个模块的实时值。
2、打开motionconsole。修改标号,运行mfc程序。