MPC014微型运动控制器 使 用 说 明 系统概述 MPC014微型运动控制器采用高性能控制芯片制作而成。集成普通IO,模拟量输出,步进电机和伺服电机控制。性能稳定可靠,使用简单方便,可代替运动控制器,运动控制卡用于各中小型机械设备。 ◆ RS485通讯,简单可靠,可多个控制器组网工作。 ◆ 7路光耦隔离输入,9路光耦隔离晶体管集电极开路输出。 ◆ 最大脉冲输出频率为2MHz,脉冲输出使用脉冲+方向方式。 ◆ 二路0-10v模拟量输出。 ◆ 输入输出口都带有独立指示灯,运行状况一目了然。 ◆ 四轴独立运动控制,任意两轴直线插补,任意两轴圆弧插补。 ◆ 每轴可设一路硬件回原点,两路电机信号输出。 ◆ 在线运行方式带1000级指令缓存深度,指令先进先出,控制器与PC端无需高速实时通讯。 ◆ 提供DLL动态链接函数库,可用于Window2000/XP/7平台二次开发。控制器仅有21条函数指令,易学易用。 ◆ 单电源12V-24V直流供电。 ◆ 控制器体积小巧,可安装于狭小空间。 电气性能 | | | | | | | -134,217,728~+134,217,727 (28 位) | | | | | | | | | | | | |
端口排列 接线方法 MPC014控制器的输入信号采用光藕隔离共阳接口形式,输出采用晶体管极电极开路输出。 输出最大电流200MA.输入端和输出端外接电压最大24V。 输出接线图: 输入接线图: COM$ w! U L5 g, X* J6 o4 H
|
与电机驱动器接线图: 指示灯 MPC014控制器的每个端口都对应有一个指示灯。上电后,第1位和第2位的指示灯在在线工作模式下快速闪烁。输入口X0-X6分别对应第6位到第12位的指示灯。输出口Y0-Y8分别对应第21位到第13位的指示灯。输出口Y0,Y2,Y4,Y6只能作为电机脉冲输出口,不能作为普通输出口控制。当有脉冲输出时,对应的指示灯会快速闪烁。当通讯时,A和B端口对应的指示灯点亮,通讯结束后指示灯熄灭。 当DA1,DA2有电压输出时,对应的指示灯会点亮。当电压输出为0时,对应的指示灯熄灭。 运动控制函数编程开发 MPC014微型可编程控制无需安装任何驱动便可使用。可用RS485转接头分别接入控制器A,B接口和电脑串口,也可直接使用USB转RS485转换头。控制器与电脑串口通讯速率为115200bps,数据位为8位,停止位0位,无校验。使用函数前先将mpc.dll导入开发工具中。 函数定义如下: unsigned char inp_move(unsigned char cardno,unsigned char no1 ,unsigned char no2 , long pulse1 ,long pulse2 ,unsigned char mode ) 函数名: inp_move 功能:二轴直线插补 参数: cardno 卡号 no1 X轴轴号 no2 Y轴轴号 pulse1,pulse2 X-Y轴移动的距离,范围(-8388608~+8388607) mode 0:相对坐标 1:绝对坐标 返回值: 0 失败 1 成功 注意:二轴插补的速度以X轴速度为基准, Y无须设定。 unsigned char inp_arc(unsigned char cardno ,unsigned char no1,unsigned char no2, long X , long y, long i, long j,unsigned char mode ) 函数名: inp_arc 功能:二轴圆弧插补 参数: cardno 卡号 no1 参与插补X轴的轴号 no2 参与插补Y轴的轴号 x,y 圆弧插补的终点位置(相对于起点),范围(-8388608~+8388607) i,j 圆弧插补的圆心点位置(相对于起点),范围(-8388608~+8388607) mode 0:顺时针插补 1:逆时针插补 返回值: 0 失败 1 成功 注意:X-Y插补的速度以X轴速度为基准,Y无须设定。 unsigned char set_speed(unsigned char cardno ,unsigned char axis ,unsigned int acc ,unsigned int dec ,unsigned int startv ,unsigned int speed ) 函数名: set_speed 功能:设置轴速度 参数: cardno 卡号 axis 轴号(1-6) acc 加速时间(ms) dec 减速时间(ms) startv 启动频率(*100Hz) speed 运行频率(*100Hz) 返回值: 0 失败 1 成功 unsigned char set_soft_limit(unsigned char cardno ,unsigned char axis ,unsigned char mode, long pulse1 , long pulse2 ) 函数名: set_soft_limit 功能:设置轴软件限位 参数: cardno 卡号 axis 轴号(1-6) pulse1 负方向限位脉冲值,范围(-8388608~0) pulse2 正方向限位脉冲值,范围(0~+8388607) 返回值: 0 失败 1 成功 unsigned char pmove(unsigned char cardno ,unsigned char axis,long pulse , unsigned char mode) 函数名: pmove 功能:单轴运行 参数: cardno 卡号 axis 轴号(1-6) pulse 输出的脉冲数 >0:正方向移动 <0:负方向移动 范围(-268435455~+268435455) mode 0:相对位置 1:绝对位置 返回值: 0 失败 1 成功 unsigned char wait_delay(unsigned char cardno ,unsigned int value) 函数名: wait_delay 功能:等待延时数 参数: cardno 卡号 value 延时量(1-10000)MS 返回值: 0 失败 1 成功 unsigned char set_command_pos(unsigned char cardno ,unsigned char axis, long value ) 函数名: set_command_pos 功能:设置轴逻辑位置 参数: cardno 卡号 axis 轴号(1-6) pulse 位置脉冲数,范围(-268435455~+268435455) 返回值: 0 失败 1 成功 unsigned char wait_pulse(unsigned char cardno ,unsigned char axis, long value ) 函数名: wait_pulse 功能:等待轴脉冲数 参数: cardno 卡号 axis 轴号(1-6) pulse 位置脉冲数,范围(-268435455~+268435455) 返回值: 0 失败 1 成功 unsigned char write_bit(unsigned char cardno , unsigned char number, unsigned char value) 函数名: write_bit 功能:写输出口状态 参数: cardno 卡号 number 端口号(0-8) Y0-Y8 value 状态(0,1) 0 输出低电平 1 输出高电平 返回值: 0 失败 1 成功 unsigned char sudden_stop(unsigned char cardno ,unsigned char axis) 函数名: sudden_stop 功能:轴停止 参数: cardno 卡号 axis 停止的轴号(1-6) 返回值: 0 失败 1 成功 unsigned char wait_in( unsigned char cardno, unsigned char number, unsigned char value) 函数名: wait_in 功能:等待输入口状态 参数: cardno 卡号 number 端口号(0-6) X0-X6 value 状态(0,1) 0 输入低电平 1 输入高电平 返回值: 0 失败 1 成功 unsigned char wait_stop(unsigned char cardno ,unsigned char axis) 函数名: wait_stop 功能:等待轴停止 参数: cardno 卡号 axis 需要停止的轴号 返回值: 0 失败 1 成功 unsigned long get_number(unsigned char cardno ) 函数名: get_number 功能:获取唯一序列号 参数: cardno 卡号 返回值: 32位序列号 unsigned char get_status( unsigned char cardno) 函数名: get_status 功能:获取各轴工作状态 参数: cardno 卡号 返回值: 8位二进制,1-6位分别代表1-6轴状态,0表示停止中,1表示运行中。 unsigned long get_command_pos( unsigned char cardno, unsigned char axis) 函数名: get_command_pos 功能:获取轴逻辑位置 参数: cardno 卡号 axis 轴号 返回值: 位置脉冲数,范围(-268435455~+268435455) unsigned char set_cardno(unsigned char cardno) 函数名: set_cardno 功能:设置卡号 参数: cardno 卡号(1-255) 返回值: 0 失败 1 成功 unsigned char no_link (void) 函数名: no_link 功能:取消通讯连接 返回值: 0 失败 1 取消连接成功 unsigned char link (void) 函数名: link 功能:通讯连接 返回值: 0 失败 1 通讯连接成功 unsigned char read_bit(unsigned char cardno, unsigned char number) 函数名: read_bit 功能:读单个输入点 参数: cardno 卡号 number 输入点(0-6) 返回值: 0 失败 1 成功 Unsigned int read_fifo_count(unsigned char cardno) 函数名: read_fifo_count 功能:读剩下缓冲数 参数: cardno 卡号 返回值 剩下缓冲数 unsigned char set_da (unsigned char cardno, unsigned char number, unsigned int value) 函数名: set_da 功能:设置Da输出电压 参数: cardno 卡号 number 输出通道(1-2) value (0-10000)mv 返回值: 0 失败 1 成功 unsigned char get_out(unsigned char cardno, unsigned char number) 函数名: get_out 功能:读单个输出点 参数: cardno 卡号 number 输出点(0-6) 返回值: 0 低电平 1 高电平 |