单核低速四轮微微鼠全数字导航伺服控制器及其控制方法_3

文档序号:9452510阅读:来源:国知局
制器捕捉到,然后在此位置可以对微微鼠进行精确补偿,这对于复杂迷宫计算至关重要,如果没有此智能补偿的话,微微鼠在复杂迷宫中的累计误差足以使求解迷宫失败。因此本控制器采用图6中的结构来求解迷宫,以确保迷宫的准确性。
[0056]为了提高四轮微微鼠导航伺服系统的运算速度和数字化程度,保证微微鼠系统的稳定性和可靠性,本发明在基于STM32F407的控制器中引入多轴集成专用驱动芯片L6207D,此控制器充分考虑电池在这个系统的作用,把控制系统中工作量最大的五轴伺服系统、人机界面、迷宫探知、在线输出、数据存储、I/O控制等功能交给STM32F407完成,并实时使能L6207D。
[0057]如图所示,单核低速四轮微微鼠全数字导航伺服控制器,包括底盘,所述底盘上设有电池装置、传感器装置、陀螺仪装置、真空抽吸装置和控制单元模块,所述底盘两侧连接两对运动轮,其中一对位于底盘的中部,另一对位于底盘的尾部;所述陀螺仪装置包括陀螺仪Gl和加速度计Al,所述陀螺仪Gl为三轴陀螺仪用于测量三个转动方向运动,所述加速度计Al为三轴加速度计用于测量三个平移运动的加速度;所述传感器装置包括位于两侧的红外传感器SI和S6,位于前端的红外传感器S2和S5,所述传感器S1、S6共同作用判断前方挡墙,传感器S2判断其左边挡墙的存在,传感器S5判断其右边挡墙的存在,同时S2和S5合作为直线运动提供导航依据;所述电池装置分别电连接控制单元模块、电机X、电机Y、电机Z、电机R和电机M,所述传感器装置和陀螺仪装置分别信号连接控制单元模块,所述控制单元模块分别信号连接电机X、Y、Z、R和M ;所述控制单元模块包括上位机程序模块和运动控制程序模块,所述上位机程序模块包括STM32F407处理器,所述运动控制程序模块包括两片两轴驱动控制芯片L6207D,所述L6207D芯片处理四轴行走伺服控制和单轴真空吸附伺服控制,所述STM32F407处理器电性连接L6207D芯片,所述四轴行走伺服控制单元信号连接单轴真空吸附伺服控制单元。
[0058]为了保护大电流对电池装置的冲击,还包括有电压传感器Vl,所述电压传感器Vl电连接电池装置,信号连接控制单元模块的STM32F407处理器。
[0059]为了减少和杜绝外界光源对传感器的干扰,从而影响整个系统的使用,还包括光补偿传感器LI,所述光补偿传感器LI信号连接控制单元模块的STM32F407处理器。
[0060]为了进一步使得本发明的伺服控制器精确控制微微鼠的前进和转向,还包括有电流传感器Cl、C2、C3和C4,所述电流传感器Cl、C2、C3和C4信号连接STM32F407处理器。
[0061]为进一步拓展两核处理器的处理能力,做到分工明确,工作不受干扰,所述STM32F407通过I/O 口连接L6207D芯片,从而使能控制两轴驱动控制芯片L6207D。
[0062]为了进一步提高微微鼠的性能,所述电机X、Y、Z和R为高速永磁直流电机,所述电机M为微型直流电机。
[0063]为进一步消除红外传感器之间的干扰,提高传感器装置的感应精度,所述红外传感器SI和S2信号发射方向间的夹角为75°?90°角,所述红外传感器S5和S6信号发射方向间的夹角为75°?90°角。
[0064]本发明是如下工作的:
I)为了能够实现分时四驱,驱动四轴微微鼠进行运动,本控制系统引入了两片L6207D,但是通过I/O 口与STM32F407连接,由STM32F407通过使能端控制四个独立电机的开通和关断。
[0065]2)打开电源瞬间,STM32F407会对电池电压进行检测,如果低压的话,将禁止两片L6207D使能,0UT1A、0UT2A、OUTlB和0UT2B均为低电平,直流电机X、电机Y、电机Z和电机R不能启动,同时电压传感器Vl将工作,并发出报警信号。如果系统电压正常,控制器首先开启真空抽吸电机M,通过抽吸装置先对微型真空吸盘抽吸,使真空吸盘对地面具有一定的吸附力,控制器并实时检测,如果地面不干净,系统会自动调节电机M加大真空吸盘对地面的吸附力。
[0066]3)在微微鼠导航过程中,传感器S1、S2、S5、S6 (四个独立的红外发射管0PE5594A发出的红外光经四个独立的红外接收器TSL262接受后转化为周围迷宫的信息)判断周围的环境并送给STM32F407,STM32F407把这些环境参数转化为微微鼠前后左右四轮要运行的距离、速度和加速度指令值,然后由STM32F407结合光电编码器和电流传感器C1~C4的反馈生成微微鼠速度-时间运动梯形图,这个梯形包含的面积就是微微鼠电机X、电机Y、电机Z和电机R要运行的距离Y。STM32F407然后根据这个梯形图的加速度和速度距离参数生成驱动四轴直流电机的PWM波,由L6207D驱动四个独立电机运动,此时控制器实时检测电机X、电机Y、电机Z和电机R的光电编码器的数值,并根据其速度大小自动调节电机M改变真空吸盘对地面的吸附力。
[0067]4)在微微鼠导航过程中如果控制器发现迷宫求解出现死循环将向STM32F407发出中断请求,STM32F407会对中断做第一时间响应,如果STM32F407的中断响应没有来得及处理,微微鼠的电机X、电机Y、电机Z和电机R将原地自锁;
5)装在电机X、电机Y、电机Z和电机R上的光电编码器会输出其位置信号A和位置信号B,光电编码器的位置信号A脉冲和B脉冲逻辑状态每变化一次,STM32F407内的位置寄存器会根据左右轮的运行方向加I或者是减I ;
6 )光电编码器的位置信号A脉冲和B脉冲和Z脉冲同时为低电平时,就产生一个INDEX信号给STM32F407寄存器,记录电机的绝对位置,然后换算成微微鼠在迷宫中的具体位置,并储存当前迷宫信息。
[0068]7)导航伺服控制器根据微微鼠在迷宫的具体位置,送相应的加速度、速度和位置数据等给STM32F407作为参考值,然后STM32F407根据外围干扰情况计算出微微鼠需要更新的实际加速度、速度和位置信号。控制器根据微微鼠实际的速度信号确定如何调整电机M的伺服控制,进而改变微微鼠在不同速度下与地面的摩擦系数,满足实际要求。
[0069]8)STM32F407根据实际外围传感信号确定电机X (或者电机Y、电机Z和电机R)正反转信号,然后通过控制INl和IN2(或者是IN3和IN4)的电平高低来实现电机的方向控制,进而实现微微鼠系统电机X (或者是电机Y、电机Z和电机R)的方向控制。
[0070]9)当传感器S2、S5和陀螺仪G1、加速度计Al共同作用探测到微微鼠处于正常直线匀速行驶时,STM32F407 一般会禁止后助力轮驱动芯片L6207D工作,释放微微鼠的后轮电机Z和电机R,采用电机X和电机Y中置驱动的方式。
[0071]10)微微鼠一旦加速、减速、路面灰尘较多时,STM32F407会自动使能后助力轮驱动芯片L6207D工作,把微微鼠需求扭矩部分配给电机Z和电机R,微微鼠自然切换到四轮驱动状态,增强了微微鼠的附着力和操控性。
[0072]11)在微微鼠向前运动过程中,传感器S2和S5会对左右的挡墙进行判断,并记录储存当前迷宫挡墙信息,微微鼠根据前进方向左右挡墙的迷宫信息进入单墙导航模式或者是双墙导航模式:当传感器S2、S5探测到左右均有挡墙时,全数字微微鼠进入双墙导航模式,此时传感器S2、S5会把探测到的迷宫信息输入到数字导航伺服控制器,控制器把红外实时探测的值与预设定值相比较。当微微鼠快速行走时受到外界干扰脱离了设定中心位置时,探测值将与设定值产生较大偏差,此时陀螺仪Gl和加速度计Al记录下当前微微鼠的运动速度和位置,数字导航伺服控制器开始进行实时补偿并微调四轴电机的PWM波输入,通过此方式可以重新调整微微鼠的姿态,使其重新回到设定中心位置;当传感器S2探测到左侧面有挡墙而S5探测到右侧无挡墙时,全数字微微鼠进入左墙导航模式,此时传感器S2会把探测到的迷宫信息输入到数字导航伺服控制器,控制器会把实时探测的值与预设定值想比较,当微微鼠快速行走时受到外界干扰脱离了设定中心位置时,探测值将与设定值产生一定偏差,此时陀螺仪Gl和加速度计Al记录下当前微微鼠的运动加速度、速度和位置,数字导航伺服控制器开始进行实时补偿并微调四轴电机的PWM波输入,通过此方式可以重新调整微微鼠的姿态,使其重新回到设定中心位置;当传感器S5探测到右侧面有挡墙而S2探测到左侧无挡墙时时,全数字微微鼠进入右墙导航模式,此时传感器S5会把探测到的迷宫信息输入到数字导航伺服控制器,控制器会把实时探测的值与预设定值想比较,当微微鼠快速行走时受到外界干扰脱离了设定中心位置时,探测值将与设定值产生一定偏差,此时陀螺仪Gl和加速度计Al记录下当前微微鼠的运动速度和位置,数字导航伺服控制器开始进行实时补偿并微调四轴电机的PWM波输入,通过此方式可以重新调整微微鼠的姿态,使其重新回到设定中心位置;
当四轮微微鼠在陀螺仪的控制下运动到新地址时,微处理器将更新其坐标,并判断其坐标是不是(F,F)、(F,10)、( 10,F)、( 10,10)其中的一个,如果不是将继续更新其坐标,如果是的话通知控制器已到达目标,然后置返航探索标志为1,微微鼠准备返程探索;
12)为了能够实现微微鼠在导航时准确的坐标计算,微微鼠
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1