2.2 全局定位模块
机器人当前位置的确定至关重要,为机器人路径规划提供必不可少的信息,目前定位传感器有全球定位系统(GPS),旋转电位计,光电编码器,磁罗盘,电子罗盘,加速度计等。针对使用环境,本模块采用长春第一光学有限公司生产的光电编码器和电子罗盘相结合的方法来确定机器人的当前的坐标点¹。光电编码器经光电转换,将轴的角度位移转换成电脉冲信号,6通过放大电路输出到S3C44B0X的计数器T1,把在特定时间采集的脉冲进行存储,脉冲信号与轮子的转过的圈数成正比,因而可以计算在设定机器人的实际路程。电子罗盘采用霍尼维尔低成本的HMR3100平面电子罗盘,内部有HMC1022二轴磁传感器,,角度测量精度可达5度,电子罗盘可以确定机器人相对北极的绝对方向,可以精确测出机器人的运动方向与理论方向之间的偏差,从而纠正机器人运动轨迹。
2.3 程序下载模块和电机驱动模块
程序下载模块主要完成启动程序和应用程序的下载,本系统提供两种下载方式,串口下载和并口下载。串口下载通过RS232串口线连接板上COM1与PC进行通讯,并口下载通过并口线与JTAG调试接口连接完成PC与S3C44B0的通讯。
电机驱动模块的精度对整个系统精度的影响很大,考虑各种因素本模块选用一种基于双通道、高压、高速栅极驱动方式的集成驱动器IR2110。IR2110驱动芯片能将输入的逻辑信号转化成同相位的低阻抗输出驱动信号,可驱动同一桥臂上的 2路输出,驱动能力强,响应速度快,工作电压高,成本低等特点提高了系统的精度和可靠性。电机采用普通大功率直流减速电机,使用大功率H桥驱动电路,电路原理如图3所示。
图3电路驱动原理图
电路中IR2110作为前置驱动,四个IRFP250组成H桥驱动电路。当IN1端加上PWM信号,IN2端加上低电平时Q2,Q5导通,Q3,Q4截止,驱动电机正转;当IN2端加上PWM信号,IN1端加上低电平时Q3,Q4导通,Q2,Q5截止,驱动电机反转。调节PWM脉冲宽度可以调节电机转速。为了使电机运行平稳,PWM信号的频率不低于1KHZ。
3 系统软件实现
软件部分的实现是基于移植到S3C44B0X的实时多任务操作系统µC/OS-II,它是基于优先级,抢占式实时内核,具有源代码公开,可移植性好,可剪裁,多任务等特点,可以管理64个任务,应用程序可达56个任务。它主要完成任务管理,时间管理,信号量管理,内存管理等功能。
该机器人主要完成避障检测与信息传输,位置获取,路径规划,运行控制功能,因此,该系统共创建了4个任务,任务1:避障检测与信息传输,任务2:位置获取,任务3:路径规划,任务4:电机驱动控制。任务的优先级依次降低,任务之间通过油箱传递信息。移动机器人在完成初始化系统后,驱动电机执行任务4按照预定的路径向目标点前进,同时单片机SPCE061A控制的传感器工作,当传感器探测周围有障碍物时,任务1进入就绪态,由于任务1的优先级高,就抢占CPU的使用权,完成障碍信息的处理与传输。通过信号量的传递,任务2进入就绪态,完成目前位置的计算,为路径规划提供依据。任务3根据任务1提供的障碍信息和任务2提供的信息位置信息启动导航算法进行路径规划,新的路径规划完成之后,任务4进入运行状态,从而完成最终规定任务。