1.控制系统详细流程
整个控制系统的控制过程包括:串口通信、指令译码、PMAC控制、状态显示四个部分。PMAC与主机既可以通过PC/104总线进行通信,还可以通过RS-232串口进行通信,为方便连线,本文采用RS-232进行PMAC和主机之间的通信。首先检测RS-232串口是否可以正常收发数据,成功后检测主处理器能否与PMAC进行正常通信,若通信成功,则进行PMAC和其他部分的初始化工作;在得到无线接收模块通过串口发送的数据之后,经过主处理器进行处理,在无线接收模块接到遥控器指令之后,通过RS-232串口发送给主处理器,主处理器经过译码处理,通过RS-232串口发送给PMAC,由PMAC对电机进行控制,可以将速度和位置信息读取并显示在显示器屏幕上。控制系统的详细流程如图4-22。
图4-22 基于PMAC的运动程序详细流程
2.PMAC控制方法
由于PMAC自带闭环,硬件上如果有编码器与之相连,只需要在软件里面设置好PMAC的编码器脉冲频率、PID等参数,就可以实现闭环控制,无需重新编写控制算法。这样一来,利用PMAC可以大大减轻用户的编程工作量。
Delta Tau Data System公司提供了PMAC动态链接库(DLL)供用户自主开发控制程序,用户也可以借此开发自己的动态链接库。为调用方便,本实验室对动态链接库进行了二次开发,定义了一些常用的函数,如表4-6所示。(www.xing528.com)
表4-6 PMAC操作需要用到函数
表4-6中,函数AGV_PMACConfigure用以对PMAC进行初始化,初始化内容包括:建立主处理器与PMAC的串口通信,对伺服时钟频率、编码器参数的设置,激活电机,PMAC输出模式的设置等;通过函数AGV_OpenPMAC判断电机是否激活;通过函数AGV_Set Velocity将速度信息转换成PMAC能够识别的形式发送给PMAC,由PMAC控制电机运动;函数AGV_Stop用来停止电机运动;函数AGV_CarSpeed用来读取编码器脉冲值进行速度的计算进而得到机器人实际运行的速度;函数AGV_CarPos用来读取机器人当前位置;函数AGV_SetParameter用来设置机器人的结构参数,包括机器人的长、宽、轮毂轴线与辊子轴线的夹角;函数AGV_ClosePMAC用来停止电机和禁止电机激活。
利用以上一系列函数,可以实现通过PMAC对电机的控制,进而完成全方位移动机器人各种运动模式的运动。Windows XP下对PMAC的操作流程如图4-23。
图4-23 Windows XP下的PMAC操作流程
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。