近期调试机器人时发现控制芯片HCTL1100使用时存在一个问题,在这里向大家请教,请多多指点。 HCTL1100工作在梯形速度模式下:芯片复位,初始化数字滤波器,Timer, 进入点控制模式,然后写入加速度,最高速度,目的坐标,向标志寄存器写入08H进入梯形速度模式(读R007H寄存器已确定是工作在梯形速度模式下),MC0-MC7输出DA信号控制DC伺服电机转动。但我发现一个问题,不管我如何改变加速度,最高速度的值,都无法改变DA信号电压输出大小(即无法改变电机转动的速度),只在改小目的坐标的值时(如:final position=80),DA信号电压才会变小。我以前也有用过MAX314AS做运动控制,只需改变加速度,最高速度,范围等值即可达到目的。 请问各位大侠是否有遇到相似的情况,还是HCTL1100在梯形速度模式下,根本就无法改变速度,请各位大侠提出宝贵的建议哦!以下是部分的程式: RST=0; delay_us(200);//复位 RST=1; w110(0x05,1);//进入初始化模式 delay_us(200);
w110(0x20,218);//A218 设置数字滤波器 timer w110(0x21,254);//B254 w110(0x22,20); //K20 w110(0x0f,20); //Timer20
w110(0x15,0x00);//设置电子尺实际位置 w110(0x16,0x00); w110(0x17,0x00);
z_cmdp=0; //设置命令位置 z_cmdp_set();
w110(0x05,3);//进入控制模式
w110(0x27,0x00);//acc msb 加速度 w110(0x26,0x01);//acc lsb w110(0x28,0x01);//max velocity 最高速度
w110(0x2b,0xfe);//final position msb 目的坐标 w110(0x2a,0xf0);//2nd w110(0x29,0x01);//lsb
w110(0x00,0x08);//moving falg 进入梯形速度模式开始运行 |