CN105137978A - 双核高速四轮微微鼠探索控制器 - Google Patents
双核高速四轮微微鼠探索控制器 Download PDFInfo
- Publication number
- CN105137978A CN105137978A CN201510520909.4A CN201510520909A CN105137978A CN 105137978 A CN105137978 A CN 105137978A CN 201510520909 A CN201510520909 A CN 201510520909A CN 105137978 A CN105137978 A CN 105137978A
- Authority
- CN
- China
- Prior art keywords
- motor
- sensor
- slight mouse
- stm32f407
- mouse
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Motorcycle And Bicycle Frame (AREA)
Abstract
本发明公开了双核高速四轮微微鼠探索控制器,包括主板、电池、第一传感器S1、第二传感器S2、第三传感器S5、第四传感器S6、第一电机X、第二电机Y、第三电机R、第四电机Z、第五电机M、三轴陀螺仪G1、三轴加速度计A1、真空装置等,它们均安装在主板上。采用了这个结构后,提高了运算速度,时刻对微微鼠的运行状态进行监测和运算,利用四个传感器探测既减少了干扰又能够准确对周边环境进行准确监测,能够根据运行状态校正运动姿态、能够重新分配扭矩、把更多的扭矩分配在未失速的驱动轮上使系统迅速脱离不稳定状态且自动调节真空装置对地面的吸附能力,彻底消除了微微鼠在复杂迷宫高速探索时的打滑现象。
Description
技术领域
本发明涉及一种微微鼠(PICOMOUSE)的自动控制系统,属于微型迷宫机器人领域。
背景技术
微电脑鼠是使用嵌入式微控制器、传感器和机电运动部件构成的一种智能行走机器人,在国外已经竞赛了将近30年,其常采用两轮结构,两轮微电脑鼠二维结构如图1所示。微电脑鼠可以在不同“迷宫”中自动记忆和选择路径,采用相应的算法,快速地到达所设定的目的地,图2中便是微电脑鼠求解的迷宫中的一种。
随着微电子技术、计算机控制技术的不断进步,国外专家在微电脑鼠求解迷宫的技术基础之上提出了一种更具有挑战性的迷宫机器人---微微鼠,为了增强迷宫复杂程度以及求解迷宫的难度,迷宫挡墙由原有的180mm变成了90mm,原有的迷宫由16*16格变成了32*32格,新的迷宫二维结构如图3所示。电源一旦打开,微微鼠全程完全依靠自身携带的传感器自动导航,并求解由1024个迷宫格组成的各种复杂迷宫,能够快速从起点找到一条到达设定目标点的最佳路径,然后以最快的速度冲刺到终点。作为一种自助导航智能机器人,因为通过无线装置可以向控制器输入迷宫信息,微微鼠或者微电脑鼠比赛国际准则拒绝使用无线装置,为了能够得到微微鼠或者是微电脑鼠探索、冲刺后的信息,只能通过算法快速寄存并储存其行走信息,当完成任务后通过控制器的232串口或者是USB等接口读取存储信息。
微微鼠在迷宫中行走过程中要时刻判断周围的环境,然后传输参数到控制器,由控制器反复控制其在迷宫方格中精确的加速和减速进行运动。一只优秀的微微鼠必须具备良好的感知能力,有良好的行走能力,优秀的智能算法,否则将无法完成探索任务。微微鼠探索迷宫技术综合了多学科知识,对于提升在校学生的动手能力、团队协作能力和创新能力,促进学生课堂知识的消化和扩展学生的知识面都非常有帮助,并且微微鼠探索迷宫技术的开展可以培养大批相关领域的人才,进而促进相关领域的技术发展和产业化进程。
微微鼠求解迷宫是国际新兴的一门技术,由于微微鼠探索迷宫技术的难度较高以及迷宫设计的复杂性,导致国内还没有研发此机器人的单位。如果认为微微鼠只是微电脑鼠的简单拷贝,按照微电脑鼠技术来设计微微鼠,在实践中发现设计出的微微鼠存在下列问题:
1、由于求解迷宫数目的大量增加,原有的微电脑鼠求解迷宫技术无法用于微微鼠求解现有的复杂迷宫。
2、由于微微鼠的尺寸相较于微电脑鼠的尺寸大幅减少,如果微微鼠采用图1中微电脑鼠的六组传感器技术探测迷宫,经常出现传感器相互干扰的状况,导致其读取迷宫信息失败。
3、基于轮式的微微鼠只能被动的适应迷宫地面的打滑程度,随着微微鼠速度的提高,其打滑概率也极大增加,导致求解迷宫失败。
4、由于微电脑鼠伺服系统采用的都是比较低级的算法,如果直接将这些算法套用在微微鼠上,使得微微鼠在迷宫当中的探索一般都要花费较长的时间,这使得在真正的大赛中无法取胜。
5、由于迷宫挡墙尺寸的减少,使得微微鼠相较于微电脑鼠单格运行的距离减少,频繁的刹车和启动加重了单片机的工作量,采用现有技术微电脑鼠的单一的单片机技术已经无法满足快速启动和停车的要求。
6、由于受单片机容量和算法影响,微微鼠对迷宫的信息没有存储,当遇到掉电情况时所有的信息将消失,这使得整个探索过程要重新开始。
7、由于受单片机容量影响,现有的微电脑鼠基本上都只有两个动力驱动轮、采用两轮差速方式行驶,使得系统对两轴的伺服要求较高,特别是直线导航时,要求速度和加速度要追求严格的一致,否则直线导航将会失败,将现有的微电脑鼠直接用于微微鼠容易导致微微鼠出现撞墙的现象发生。
8、两轮驱动系统在加速时由于重心后移,使得前部轻飘,即使在良好的路面上微微鼠也会打滑,有可能导致撞墙的现象出现,不利于高速微微鼠的发展。
9、两轮如果设计不当会造成重心前偏,正常行驶时将导致驱动轮上承受的正压力减小,使得运动时更加容易打滑、也更容易走偏,导致导航失败。同时重心侧偏将导致两个驱动轮承受的正压力不同,在快速启动时两轮打滑程度不一致,瞬间就偏离轨迹,转弯时,其中正压力小的轮子可能打滑,导致转弯困难。
10、采用两个动力轮驱动,为了满足复杂状态下的加速和减速,使得单个驱动电机的功率较大,不仅占用的空间较大,而且有时候在一些相对需求能量较低的状态下造成“大马拉小车”的现象出现,不利于微型化发展和系统能源的节省。
11、微电脑鼠采用的都是一些体积比较大的插件元器件,直接将这些用于微微鼠的设计使得微微鼠的体积和重量相对都比较大,无法满足快速探索的要求。
12、由于受周围环境不稳定因素干扰,单片机控制器经常会出现异常,引起微微鼠失控,抗干扰能力较差。
13、在运行过程中,一旦遇到撞墙情况都会发生电机堵转情况,造成电机瞬间电流过大,严重时烧坏电机。
发明内容
本发明的目的是解决的借助现有的先进控制技术以及先进控制芯片提供一种双核高速四轮微微鼠探索控制器,解决现有技术中的诸多问题问题。
本发明采用如下技术方案:双核高速四轮微微鼠探索控制器,包括主板、电池、第一传感器S1、第二传感器S2、第三传感器S5、第四传感器S6、第一电机X、第二电机Y、第三电机R、第四电机Z、第五电机M、三轴陀螺仪G1、三轴加速度计A1、电压传感器V1、第一电流传感器C1、第二电流传感器C2、第三电流传感器C3、第四电流传感器C4、真空装置、STM32F407处理器和FPGA芯片,它们均安装在主板上;它还包括四轴行走伺服控制单元和单轴真空抽吸附伺服控制单元;
所述STM32F407处理器电性连接FPGA芯片,所述电池、第一传感器S1、第二传感器S2、第三传感器S5、第四传感器S6、三轴陀螺仪G1、三轴加速度计A1、电压传感器V1、第一电流传感器C1、第二电流传感器C2、第三电流传感器C3和第四电流传感器C4均与STM32F407处理器信号连接,FPGA芯片与第一电机X、第二电机Y、第三电机R、第四电机Z和第五电机M信号连接;
所述四轴行走伺服控制单元与真空吸附伺服控制单元信号连接,所述第一电机X、第二电机Y、第三电机R和第四电机Z与四轴行走伺服控制单元信号连接,所述第五电机M与真空吸附伺服控制单元信号连接;
第一传感器S1、第二传感器S2、第三传感器S5和第四传感器S6中的两个信号发射方向与车轮行进方向相同、另外两个信号发射方向与车轮行进方向间有一定夹角,第一电机X、第二电机Y、第三电机R和第四电机Z分别与位于微微鼠两侧的四轮一一对应、其中两个电机设置在主板中部两侧、另外两个电机设置在主板后端两侧使得它们与四个轮子的位置一一对应构成中驱加后驱的复合结构;第一电流传感器C1、第二电流传感器C2、第三电流传感器C3和第四电流传感器C4分别与控制微微鼠的四个轮子的电机一一对应;所述第五电机M与真空装置连接;
在电源打开状态下微电脑鼠先进入自锁状态,当所述微电脑鼠放在迷宫起始点时、所述STM32F407处理器处理后与FPGA处理器通讯进而使得FPGA处理器首先控制第五电机M使得真空装置开启,第一传感器S1、第二传感器S2、第三传感器S5和第四传感器S6根据实际导航环境将参数传输给STM32F407处理器,STM32F407处理器处理参数后与FPGA芯片通讯,由FPGA芯片处理第一电机X、第二电机Y、第三电机R和第四电机Z伺服控制实现四轴行走伺服控制、且FPGA芯片处理第五电机M实现单轴真空抽吸附伺服控制,且FPGA芯片把处理数据通讯给STM32F407处理器、由STM32F407处理器继续处理后续的运行状态。
由于微微鼠体积的大幅度降低,如果还是采用如图1所示微电脑鼠的结构、传感器2和3间以及传感器4和5间经常产生相互干扰,同时由于每组传感器采集迷宫挡墙参数都需要一定的时间,加重了采样周期,导致采样频率降低,延长了处理器STM32F407的处理时间。因此想到进行改进,如图4所示,传感器S1、传感器S6共同作用判断前方挡墙,传感器S2判断其左边挡墙的存在,传感器S5判断其右边挡墙的存在,同时传感器S2和传感器S5合作为微微鼠直线运动提供导航依据,STM32F407把外界环境转化后向FPGA发送位置、速度、加速度等指令值,FPGA将指令值再结合光电编码器、第一电流传感器C1、第二电流传感器C2、第三电流传感器C3和第四电流传感器C4的反馈生成四轴伺服系统的偏差信号,以FPGA为处理核心来产生四轴伺服系统PWM波,经驱动桥放大后驱动微微鼠快速前进。采用这种方式STM32F407从复杂的工作当中解脱出来,实现部分的信号处理算法和FPGA的控制逻辑,并响应中断,实现数据通信和存储实时信号。为了使用智能算法计算迷宫挡墙信息,在使用前可以对微微鼠进行校正,校正时微微鼠放在迷宫不同设定位置,传感器S1、传感器S2、传感器S5和传感器S6发出的信号经侧挡墙反馈后分别被传感器S1、传感器S2、传感器S5和传感器S6接收(在传感器S1、传感器S2、传感器S5和传感器S6均包括红外发射传感器OPE5594A和红外接收器TSL262的情况下,第一传感器S1、第二传感器S2、第三传感器S5和第四传感器S6的红外发射传感器OPE5594A发射出的红外光经挡墙反馈后会被对应的红外接收器TSL262接收),接收值经控制器计算后作为当前位置的设定阀值,然后微微鼠使用时在行走过程中通过与这些阀值比较得到其迷宫信息。
为了进一步提高四轮微微鼠在探索迷宫时的稳定性,本发明在微微鼠伺服硬件系统中加入了三轴陀螺仪G1和三轴加速度计A1,控制器舍弃了原有只在转弯时才开启陀螺仪的模式。在微微鼠行走迷宫期间全程开启陀螺仪和加速度计,三轴陀螺仪G1用来测量微微鼠三个转动方向运动,三轴加速度计用来测量微微鼠三个平移运动的加速度。控制器根据测得的加速度信号计算出微微鼠的速度和位置数据,利用陀螺仪G1短时测量准确的优势和加速度计A1长时稳定的特点,两者结合,得到即能短时稳定又能长时稳定的倾斜角度,用陀螺仪测量短时内角度变化,把加速度计传感器当作倾角传感器测量倾角,并在一个长时间范围内,迫使陀螺仪得到的倾角慢慢匹配加速度传感器得到的倾角。陀螺仪和加速度计时刻记录微微鼠的瞬时参数并输送给控制器,当微微鼠的姿态发生变化超过设定阀值时,在一个新的采样周期就立即对其位置补偿,避免了微微鼠远远偏离中心位置现象的发生,提高了其快速行走时的稳定性。
为了进一步提高微微鼠在探索迷宫时的稳定性,防止微微鼠在高速探索时打滑导致微微鼠迷宫信息错误,本发明在两轮微微鼠探索控制器的硬件系统中加入了微型直流电机M,真空装置具体的可以采用包括真空抽吸装置和位于两轮微微鼠下表面的微型真空吸盘的方式设置(当然也可以采用其他结构实现),在微微鼠运动过程中,电机M通过真空抽吸装置不停抽吸微型真空吸盘内的空气,使微型真空吸盘的内外压力不一样从而产生一定的负压,使微微鼠对地面产生一定的吸附力,并且随着微微鼠探索速度的增加,微型电机M自动会调节真空吸盘对地面的吸附力,增加对地面的摩擦系数,彻底防止微微鼠在高速探索时时因地面打滑造成的探索失败现象的再次发生。
作为本发明的进一步改进:所述第一传感器S1的传感器信号发射方向与第二传感器S2的传感器信号发射方向间的夹角大于等于75°且小于等于90°、第三传感器S5、第四传感器S6的传感器信号发射方向间的夹角大于等于75°且小于等于90°。采用这种方式,传感器间的干扰少、测量更为准确。在夹角大于等于75°小于90°的情况下,而且传感器S2和传感器S5可以精确测量到迷宫从有挡墙到无挡墙以及无挡墙到有挡墙的变化,传感器S2和传感器S5还可以精确测量到从有挡墙到无挡墙的变化以及从无挡墙到有挡墙的变化、挡墙发生变化的位置的传感器信号变化可以被控制器捕捉到、然后可以对微微鼠进行精确补偿。而在夹角等于90°时则着重于对两侧的探测、且杜绝了传感器间的干扰,并能够进行智能补偿。总之夹角的设置对于复杂迷宫计算至关重要,如果没有智能补偿的话,微微鼠在复杂迷宫中可能会产生累计误差使探索失败。
作为本发明的进一步改进:第一电机X、第二电机Y、第三电机R和第四电机Z均为永磁直流电机,第五电机M为直流电机,第一电机X、第二电机Y、第三电机R和第四电机Z中设置在主板中部的两个电机比另外两个电机的电机功率大。只有在动力需求较高时才启动后驱,起到助力作用、节约电量且能够按迷宫地面和周围环境状态不同而将需求扭矩按不同比例分布在前后所有的轮子上,以提高微微鼠的行驶能力。
作为本发明的进一步改进:第一电机X、第二电机Y、第三电机R、第四电机Z和第五电机M上的均设有光电编码器。光电编码器的能够输出A脉冲和B脉冲和Z脉冲,根据脉冲的电平记录电机的绝对位置,换算成微微鼠在迷宫中的具体位置,定位更加准确。
作为本发明的进一步改进:第一传感器S1、第二传感器S2、第三传感器S5和第四传感器S6均包括红外发射传感器OPE5594A和红外接收器TSL262。第一传感器S1、第二传感器S2、第三传感器S5和第四传感器S6均包括的红外发射传感器OPE5594A发射出的红外光经挡墙反馈后会被对应的红外接收器TSL262接收。
双核高速四轮微微鼠探索控制器的控制方法的,包括以下步骤:
1、系统初始化:将微微鼠放置在迷宫起点,打开电源开关瞬间STM32F407处理器会对电源电路、传感器电路、时钟电路等进行检测,如果电池处于低压的将禁止所有FPGA芯片工作,同时电压感应器V1将工作并提示报警信号,如果电压正常,系统将检测传感器电路和时钟电路,如果传感器电路和时钟电路出现故障,系统将自动复位,重新检测,如有问题将报警,确定系统硬件无异样后,等待STM32F407发出的探索命令;
2、抓地控制:当接收微微鼠探索启动的瞬间,开启开启第五电机M、三轴陀螺仪G1、三轴加速度计A1和真空抽吸装置,真空抽吸装置使微微鼠对地面具有一定的吸附力,第一传感器S1、第二传感器S2、第三传感器S5和第四传感器S6判断周围的环境并将环境参数送给STM32F407处理器,STM32F407把这些环境参数按照四轴行走伺服控制单元速度和加速度要求转化为微微鼠要运行的距离、速度和加速度指令值并与FPGA芯片通讯,由FPGA芯片根据这些参数再结合电机的光电编码器、第一电流传感器C1、第二感应器C2、第三感应器C3和第四感应器C4的反馈生成驱动第一电机X、第二电机Y、第三电机R和第四电机Z的PWM波以及方向和速度——时间运动梯形图,STM32F407处理器根据外部环境要求控制FPGA芯片进而控制第一电机X、第二电机Y、第三电机R和第四电机Z中的两个或者全部工作,PWM波经驱动桥放大后驱动两个电机或者四个电机使得微微鼠运动;
3、转向与直行控制:第一传感器S1、第二传感器S2、第三传感器S5和第四传感器S6判断周围的环境并将环境参数送给STM32F407处理器,在微微鼠向前运动过程中如果有迷宫挡墙进入前方的运动范围,则判断左右是否有挡墙,若至少一侧无挡墙则转弯,若两侧均有挡墙则微微鼠将存储此时坐标,根据第一传感器S1和第四传感器S6的反馈计算出向前运动停车的位置参数,并把向停车的位置参数参数传输给STM32F407处理器,然后STM32F407处理器会把此参数按照时间要求转化为位置参数、速度参数以及加速度参数传输并使能FPGA芯片,FPGA芯片根据参数生成PWM控制信号,控制第一电机X、第二电机Y、第三电机R和第四电机Z停车,同时控制器通过调整电机M的伺服控制来加大对地面的摩擦,然后在陀螺仪G1和加速度计A1的帮助下,微微鼠实现在设置停车点停车,然后STM32F407处理器使能FPGA芯片,微微鼠掉头;在微微鼠向前运动过程显示前方有若干格直线坐标内没有挡墙、判断出前方的运动范围没有阻挡则微微鼠将存储其现在的坐标,处理器把向前运动若干格的位置参数传递给STM32F407,然后FPGA芯片控制第一电机X、第二电机Y、第三电机R和第四电机Z使得微微鼠向前冲刺,陀螺仪G1、加速度计A1会时刻记录已经移动的距离并输送给STM32F407处理器;
4、运动补偿控制:在微微鼠运动过程中三轴陀螺仪G1用来测量微微鼠转弯或直线运动,三轴加速度计A1用来测量微微鼠运动的加速度,陀螺仪测量短时内角度变化并结合加速度计传感器测量倾角,并将陀螺仪得到的倾角匹配加速度传感器得到的倾角,当微微鼠的姿态发生变化超过设定倾角阀值时发出信号控制使得第一电机X、第二电机Y、第三电机R和第四电机Z对位置进行补偿,避免了微微鼠行走时偏离中心位置现象的发生;
5、位置判断:当微微鼠控制下运动若干格距离到达新地址时,控制器将更新其坐标为并判断其坐标是不是终点,如果不是将继续更新其坐标,如果是的话通知控制器已经探索到目标,然后设置返航探索标志,微微鼠准备返程探索。
作为本发明的进一步改进:转向与直行控制步骤中包括误差校正步骤,误差校正方法如下:微微鼠第一传感器S1、第二传感器S2、第三传感器S5和第四传感器S6时刻对周围的迷宫挡墙进行探测,如果信号发生了较大数值的跃变,STM32F407会根据微微鼠当前运行状态精确补偿,彻底消除微微鼠在复杂迷宫中已经累计的误差;
转向时采用的方法:转弯时,STM32F407首先把转入前行驶距离按照冲刺条件的不同转化为不同的速度参数以及加速度参数然后根据地面状况把指令值传输给控制的FPGA,FPGA会根据这些参数再结合光电编码器、第一电流传感器C1、第二电流传感器C2、第三电流传感器C3和第四电流传感器C4的反馈生成驱动前后左右轮的PWM波形和方向,控制第一电机X、第二电机Y、第三电机R和第四电机Z中的2个或4个实现转向;
返程探索过程如下:在微微鼠进入迷宫返程探索时,传感器S1、S2、S5、S6将工作,并把反射回来的光电信号送给STM32F407处理器、控制器判断后送给FPGA芯片、由FPGA芯片运算后与STM32F407处理器进行通讯,然后由STM32F407处理器送控制信号给第一电机X、第二电机Y、第三电机R和第四电机Z进行确定,如果进入已经搜索的区域将进行快速前进,STM32F407会加大控制电机的占空比,以快速通过已知区域,减少二次探索时间,如果是未知返回区域则采用正常速度搜索,在运动过程中,控制器时刻检测微微鼠运行状态并实时调整电机M进行摩擦力调整且时刻更新其坐标并判断其坐标是不是起点。
本发明具有的有益效果是:
1、在运动过程中,充分考虑了电池在这个系统中的作用,基于STM32F407+FPGA控制器时刻都在对微微鼠的运行状态进行监测和运算,同时第一电流传感器C1、第二电流传感器C2、第三电流传感器C3、第四电流传感器C4一直在对电流进行检测和反馈,避免了大电流的产生,所以从根本上解决了大电流对电池的冲击,避免了由于大电流放电而引起的电池过度老化现象的发生。
2、采用第一传感器S1、第二传感器S2、第三传感器S5和第四传感器S6探索迷宫技术替代原有的六组传感器探索迷宫技术不仅减少了系统中各传感器组的干扰,并提高了迷宫挡墙采集频率,有利于提高系统的运算速度。
3、为了充分提高微微鼠系统的稳定性和行驶能力,并兼顾两轮中置转向的优点,本发明舍弃了传统实时四驱结构,采用中驱+后驱的复合结构:中置驱动的电机功率功率较大,后置驱动的两个个电机功率较小,只有在动力需求较高时才启动后驱,起到助力作用。由于采用四轮驱动技术,微微鼠前后轮都有动力,可按迷宫地面和周围环境状态不同而将需求扭矩按不同比例分布在前后所有的轮子上,以提高微微鼠的行驶能力。
4、根据需要实现分时四驱。在正常行驶环境下,由于需求功率不是很大,中驱的两个电机就能满足,为了节省能量,微微鼠一般会采用释放后轮,采用中置轮驱动的方式;而一旦遇到路面灰尘较多或加速状况时,STM32F407会自动检测并立即将微微鼠需求扭矩分配给后置两个助力驱动轮,同时控制器改变电机M的伺服控制,微微鼠系统自然切换到四轮驱动状态,增强了微微鼠的附着力和操控性。
5、由于采用中驱+后驱的复合四轮驱动方式,当需要加速行驶时,把动力分配到四个电机,一旦一个动力轮由于地面、机械结构等造成暂时离开地面,STM32F407可以重新分配扭矩,把更多的扭矩分配在未失速的驱动轮上,使系统迅速脱离不稳定状态,重新回到四轴动力平衡状态,使得微微鼠具有更好的直线行走功能。
6、微微鼠转向时,为了保证旋转的稳定性,采用中置的两驱动轮实现转弯,并释放后置的两助力驱动轮。
7、四轮微微鼠系统在正常行驶时如果设计不当造成重心前偏,将导致后侧驱动轮上承受的正压力减小,STM32F407会自动调整后侧的动力分配,使系统处于一种新的平衡状态,防止微微鼠打滑。
8、四轮微微鼠系统在正常行驶时如果设计不当造成重心侧偏,将导致一侧驱动轮上承受的正压力减小,STM32F407会自动调整这一侧的动力分配,使系统处于一种新的平衡状态,防止微微鼠打滑。
9、在微微鼠探索迷宫过程中中,控制器实时对其行走速度、地面等状况进行检测,并通过调节电机M的伺服控制来有效调节真空装置对地面的吸附力,增加了微微鼠与地面的摩擦系数,彻底消除了微微鼠在行走时打滑现象的发生。
10、在此微微鼠系统引入了陀螺仪G1和加速度计A1,可以精确测量出微微鼠时候的动态参数,并实现微微鼠的速度大小和方向的独立控制,实现全程导航和二次补偿,有利于提高微微鼠的稳定性和动态性能。
11、由FPGA处理微微鼠的五只直流电机的独立伺服控制,充分发挥FPGA控制方面的特长以及程序移植功能,使得控制比较简单,大大提高了运算速度,解决了单片机软件运行较慢的瓶颈,缩短了开发周期短,并且程序可移植能力强。
12、由于本控制器采用FPGA处理五轴直流电机伺服系统大量的数据与算法,把STM32F407从繁重的工作量中解脱出来,有效地防止了程序的“跑飞”,抗干扰能力大大增强。
13、由FPGA输出PWM调制信号和方向信号,通过驱动电路可以直接五轴驱动直流电机,不仅减轻了STM32F407的负担,简化了接口电路,而且省去了STM32F407内部编写位置、速度控制程序,以及各种PID算法的麻烦,使得系统的调试简单。
14、在微微鼠探索迷宫过程中,STM32F407会对第一电机X、第二电机Y、第三电机R和第四电机Z的转矩进行在线辨识并利用电机力矩与电流的关系进行补偿,减少了电机转矩抖动对微微鼠快速探索的影响。
15、在控制算法中,STM32F4079可以根据第一传感器S1、第二传感器S2、第三传感器S5和第四传感器S6的采集值与预设值之间的偏差大小自动调整FPGA内部的PID参数,轻松实现分段P、PD、PID控制和非线性PID控制,使系统具有一定的自适应。
16、FPGA的中断命令可以很好的解决微微鼠在运行过程中遇到撞墙情况发生的电机堵转,利用中断命令可在输出超出设定值时STM32F407立即停止输出并发出中断指令,从而有效地解决了堵转问题。
17、为了更好的保护电池,当系统在探索过程中遇到低压时,微微鼠上的低压报警传感器V1会自动开启,并限制放电电流,保证微微鼠可以完成整个探索,在探索完成回到起点时,会自动锁死在当前位置,并记录下迷宫信息,提示更换电池,由于具有存储功能,这使得微微鼠掉电后可以轻易的调取已经探索好的迷宫信息,使二次探索的时间和路径大大降低。
18、本发明基本实现全贴片元器件材料,不仅节省了控制板占用空间,而且有利于体积和重量的减轻,有利于提高微微鼠的稳定性和动态性能。
附图说明
图1为二轮驱动微电脑鼠二维图。
图2为微电脑鼠16*16迷宫示意图。
图3为微微鼠32*32迷宫示意图。
图4为四眼微微鼠二维原理图。
图5为本发明的原理框图。
图6为两轮微微鼠探索程序框图。
图7为微微鼠前进示意图。
图8为微微鼠后退示意图。
图9为微微鼠右转意义图。
图10为微微鼠左转示意图。
图11为速度-时间运行梯形图。
具体实施方式
下面结合附图,对本发明做进一步的说明。
为了便于解释,微微鼠中部指的是微微鼠中线处、微微鼠后部指的是远离第一传感器S1、第二传感器S2、第三传感器S5和第四传感器S6的微微鼠一侧,具体位置参照附图。微微鼠下表面指的是与设有电池、第一传感器S1、第二传感器S2、第三传感器S5、第四传感器S6等所在的面相反的面。第一电机X、第二电机Y、第三电机R、第四电机Z分别与X轮、Y轮、R轮、Z轮对应,X轮和Z轮位于微微鼠右侧、Y轮和R轮位于微微鼠的左侧,X轮和Y轮位于微微鼠中部、R轮和Z轮位于微微鼠后部。第五电机M指的是与真空装置对应的电机,电机X、电机Y、电机R、电机Z和电机M分别为第一电机X、第二电机Y和第三电机M的简写,传感器S1、传感器S2、传感器S5和传感器S6分别为第一传感器S1、第二传感器S2、第三传感器S5和第四传感器S6的简写。电流传感器C1、电流传感器C2、电流传感器C3和电流传感器C4分别为第一电流传感器C1、第二电流传感器C2、第三电流传感器C3和第四电流传感器C4简写。X轴和Y轴指的是图中3中所示的X轴和Y轴,为了方便描述,给出了具体的起点坐标和终点坐标,例如起点坐标(0,0),例如终点坐标(F,F)、(F,10)、(10,F)、(10,10),在实际应用中可能会发生改变。单墙导航模式指的时微微鼠两侧只有其中一侧有挡墙时进入的模式,单墙导航模式分为左单墙导航模式和右单墙导航模式;双墙导航模式指的时微微鼠两侧均有挡墙时进入的模式。这些定义仅为了本领域技术人员能够理解本申请内容,不应视为对保护范围或使用方法的限定。
本发明为克服单一单片机不能满足微微鼠行走的稳定性和快速性的要求,舍弃了国产微微鼠所采用的单一单片机工作模式,在吸收国外先进控制思想的前提下,自主发明了基于STM32F407+FPGA的全新控制模式,形成基于STM32F407+FPGA的全新五轴直流伺服控制器,以FPGA为处理核心,以光电编码器、电流传感器为反馈元件来构成五轴直流电机同步伺服系统,来完成微微鼠五轴位置环、速度环、电流环的三闭环调节功能,从而把控制系统中工作量最大的五轴直流电机同步伺服系统(四轴微微鼠探索伺服系统+单轴真空抽吸电机伺服控制)由FPGA处理,充分发挥FPGA数据处理速度较快的特点,而人机界面、迷宫探知、迷宫存储、加速度、速度和位置数据存储、I/O控制等功能交给STM32F407完成,这样就实现了STM32F407与FPGA的分工,STM32F407从复杂的工作当中解脱出来、实现部分的信号处理算法和FPGA的控制逻辑,并响应中断,同时二者之间也可以进行通讯,实时进行数据交换和调用。
参照附图,本申请具体的功能实现如下:
1)打开电源开关,STM32F407会对电源电路、传感器电路、时钟电路等进行检测,确定系统硬件无异样后,控制器首先开启真空抽吸电机M,通过抽吸装置先对微型真空吸盘抽吸,使真空吸盘对地面具有一定的吸附力,控制器并实时检测,如果地面不干净,系统会自动调节电机M加大真空吸盘对地面的吸附力。微微鼠未接到探索命令之前,它一般会在起点坐标(0,0)等待STM32F407发出的探索命令,一旦启动开关启动后,微微鼠会沿着起点开始向终点(F,F)、(F,10)、(10,F)、(10,10)探索,微微鼠在探索过程会中时刻检测电池电压,当系统出现低压时,传感器V1将开启并发出报警提示,有效地保护了电池。
2)微微鼠接到探索命令后其前方的传感器S1、S6和会对前方的环境进行判断,确定有没有挡墙进入运动范围,如存在挡墙将向STM32F407发出中断请求,STM32F407会对中断做第一时间响应,然后禁止FPGA工作,FPGA封锁微微鼠的电机X、电机Y、电机Z和电机R的PWM驱动信号,使其静止在原地,然后二次判断迷宫确定前方信息,防止信息误判。
3)如果一切正常,在微电脑探索启动瞬间,传感器S1、S2、S5、S6(四个独立的红外发射管OPE5594A发出的红外光经接收器TSL262接受后转化为周围迷宫的信息)判断周围的环境并送给STM32F407,STM32F407把这些环境参数转化为微微鼠前后左右四轮要运行的位置、速度和加速度指令值,然后STM32F407与FPGA通讯,由FPGA根据这些参数再结合光电编码器、电流传感器C1~C4的反馈生成驱动四轴直流电机的PWM波控制器信号。PWM波经驱动桥后驱动电机X、电机Y、电机Z和电机R,完成加速过程直到达到探索设定速度。微微鼠在加速探索行走过程中,控制器实时对陀螺仪G1、加速计A1、地面状况等进行检测,陀螺仪G1和加速计A1实时检测微微鼠探索时的瞬时运动加速度、速度和位置并反馈,当微微鼠快速探索脱离了设定中心位置时,控制器根据离开中心位置的偏差大小借助陀螺仪G1和加速计A1开始进行实时补偿,微调电机的PWM波输入,通过此方式可以精确调整微微鼠在直道的位置和姿态,使其重新回到设定中心位置;控制器根据地面状况通过调节电机M的伺服控制来有效调节真空吸盘对地面的吸附,并把处理数据通讯给STM32F407,由STM32F407继续处理后续的运行状态,然后根据探索速度确定是否要禁止后驱的两轴PWM控制信号,进而释放电机Z和电机R。
4)在微微鼠沿着Y轴向前运动,在任何一个方格的中心如果确定没有挡墙进入前方的运动范围,则微微鼠将存储其坐标(X,Y),并把向前运动一格的位置参数传输给STM32F407,根据探索控制器速度和加速度的要求,由STM32F407生成两轴直流电机三闭环伺服系统的指令给定值并传输给FPGA,然后FPGA再结合光电编码器以及电流传感器C1、C2的反馈生成驱动直流电机运动的PWM波,PWM波通过驱动桥放大后推动微微鼠向前运动。在微微鼠向前运动过程中,控制器通过陀螺仪和加速度计时刻记录运动的距离S并储存,在微微鼠沿着当前迷宫格向前探索过程中,传感器S2和S5会对左右的迷宫挡墙进行判断,并记录储存当前迷宫挡墙信息,微微鼠根据左右挡墙的迷宫信息确定其进入单墙导航模式、双墙导航模式或者是惯性导航模式。当微微鼠在陀螺仪的控制下运动一格距离到达新地址时,将更新其坐标为(X,Y+1),在Y+1<1F的前提下,判断其坐标是不是(F,F)、(F,10)、(10,F)、(10,10)其中的一个,如果不是将继续更新其坐标,如果是的话通知控制器已经搜索到目标,然后置返航探索标志为1,微微鼠准备返程探索。
5)在微微鼠沿着Y轴向前运动过程中如果有迷宫挡墙进入前方的运动范围,并且此时左右的传感器S2、S5判断左右都有挡墙时,微微鼠将存储此时坐标(X,Y),根据传感器S1和S6的反馈计算出向前运动停车的位置参数S1,并把向前运动停止的位置参数S1传输给STM32F407,然后STM32F407会把此参数按照时间要求转化为位置参数、速度参数以及加速度参数传输给FPGA,FPGA根据这些参数再结合光电编码器、电流传感器C1~C4的反馈生成驱动前后左右轮的PWM控制信号,控制前后左右四轮的电机X、电机Y、电机Z和电机R停车,同时控制器通过调整电机M的伺服控制来加大对地面的摩擦,防止微微鼠因为探索速度过快而撞到前方的迷宫挡墙。在微微鼠向前停车过程中,传感器S2、S5实时对左右的挡墙进行判断,并反馈当前迷宫挡墙信息,微微鼠进入双墙导航模式,然后在陀螺仪G1和加速计A1的帮助下,微微鼠实现在设置停车点停车。然后STM32F407禁止后驱的两路PWM控制信号输出,使得电机X和电机Y运动方向相反,微微鼠原地由陀螺仪G1和加速计A1控制调转180度,然后准备沿着Y轴反向运动。
在微微鼠沿着Y轴反向向前运动,在任何一个方格的中心如果确定没有挡墙进入前方的运动范围,则微微鼠将存储其坐标(X,Y),并把向前运动一格的位置参数传输给STM32F407,根据探索控制器速度和加速度的要求,由STM32F407生成两轴直流电机三闭环伺服系统的指令给定值并传输给FPGA,然后FPGA再结合光电编码器以及电流传感器C1、C2的反馈生成驱动直流电机运动的PWM波,PWM波通过驱动桥放大后推动微微鼠向前运动。,在微微鼠向前运动过程中,控制器通过陀螺仪和加速度计时刻记录运动的距离S并储存,传感器S2和S5会对左右的迷宫挡墙进行判断,并记录储存当前迷宫挡墙信息,微微鼠根据左右挡墙的迷宫信息确定其进入单墙导航模式、双墙导航模式或者是惯性导航模式。如果在探索运动过程中,微微鼠出现驱动轮失速或者是灰尘较多的状况时,控制器立刻通过调节电机M的伺服控制来有效调节真空吸盘对地面的吸附力,控制器使能后驱的两路PWM控制信号,STM32F407把剩余的距离转化为新的参考指令值传输给FPGA,FPGA根据这些参数再结合光电编码器和电流传感器C1~C4的反馈生成驱动电机X、电机Y、电机Z、电机R的PWM驱动信号,经驱动桥放大后控制电机X、电机Y、电机Z、电机R向前运动;当微微鼠在陀螺仪的控制下运动一格距离到达新地址时,将更新其坐标为(X,Y-1),在Y-1<1F的前提下,判断其坐标是不是(F,F)、(F,10)、(10,F)、(10,10)其中的一个,如果不是将继续更新其坐标,如果是的话通知控制器已经搜索到目标,然后置返航探索标志为1,微微鼠准备返程探索。
6)在微微鼠沿着Y轴向前运动过程中如果有挡墙进入前方的运动范围,并且此时左右的传感器S2、S5判断左方有挡墙而右方没有挡墙或左方无挡墙而右方有挡墙时,微微鼠将存储此时坐标(X,Y),根据传感器S1和S6的反馈计算出向前运动停车的位置参数,根据探索控制器速度和加速度的要求,由STM32F407生成四轴直流电机三闭环伺服系统的指令给定值并传输给FPGA,FPGA根据这些参数再结合光电编码器、电流传感器C1~C4的反馈生成驱动前后左右轮的PWM控制信号,控制前后左右四轮的电机X、电机Y、电机Z和电机R停车,同时控制器通过调整电机M的伺服控制来加大对地面的摩擦,防止微微鼠因为探索速度过快而撞到前方的迷宫挡墙。在微微鼠向前停车过程中,传感器S2实时对左挡墙进行判断或传感器S5实时对右挡墙进行判断,并反馈当前迷宫挡墙信息,微微鼠进入单墙导航模式,然后在陀螺仪G1和加速计A1的帮助下,微微鼠实现在设置停车点停车。然后STM32F407禁止后驱的两路PWM控制信号输出,使得电机X和电机Y运动方向相反,微微鼠原地由陀螺仪控制向右旋转180度,然后准备沿着X轴正向运动。
在微微鼠沿着X轴正向向前运动(即右转)或在微微鼠沿着X轴反向向前运动(即做转)时,在任何一个方格的中心如果确定没有挡墙进入前方的运动范围,则微微鼠将存储其坐标(X,Y),并把向前运动一格的位置参数传输给STM32F407,根据探索控制器速度和加速度的要求,由STM32F407生成两轴直流电机三闭环伺服系统的指令给定值并传输给FPGA,然后FPGA再结合光电编码器以及电流传感器C1、C2的反馈生成驱动直流电机运动的PWM波,PWM波通过驱动桥放大后推动微微鼠向前运动。,在微微鼠向前运动过程中,控制器通过陀螺仪和加速度计时刻记录运动的距离S并储存,在微微鼠沿着当前迷宫格向前探索过程中,控制器实时对其行走速度、地面等状况进行检测,并通过调节电机M的伺服控制来有效调节真空吸盘对地面的吸附,传感器S2和S5会对左右的迷宫挡墙进行判断,并记录储存当前迷宫挡墙信息,微微鼠根据左右挡墙的迷宫信息确定其进入单墙导航模式、双墙导航模式或者是惯性导航模式。当微微鼠在陀螺仪的控制下运动一格距离到达新地址时,将更新其坐标为(X+1,Y)或将更新其坐标为(X-1,Y),在X+1<1F的前提下或在X-1<1F的前提下,判断其坐标是不是(F,F)、(F,10)、(10,F)、(10,10)其中的一个,如果不是将继续更新其坐标,如果是的话通知控制器已经搜索到目标,然后置返航探索标志为1,微微鼠准备返程探索。
7)当微微鼠到达(F,F)、(F,10)、(10,F)、(10,10)准备返程探索时,控制器会调出其已经存储的迷宫,然后根据快速迷宫算法计算出可能存在的最佳路径,返程开始进入其中认为最优的一条。
8)在微微鼠进入迷宫正常返航运行时,并其导航的传感器S1、S2、S5、S6将工作,并把反射回来的光电信号送给STM32F407,经STM32F407判断后送给FPGA,由FPGA运算后与STM32F407进行通讯,然后由控制器送控制信号给导航的电机X和电机Y进行确定:如果进入已经搜索的区域将进行快速前进,如果是未知返回区域则采用正常速度搜索,并时刻更新其坐标(X,Y),并判断其坐标是不是(0,0),如果是的话置返航探索标志为0,微电脑鼠进入冲刺阶段,并置冲刺标志为1。
9)为了能够实现微微鼠在探索时准确的坐标计算,微微鼠左右的传感器S2和S5会时刻对周围的迷宫挡墙和柱子进行探测,如果S2或者S5发现传感器信号发生了较大数值的跃变,则说明微微鼠进入了从有迷宫挡墙到无迷宫挡墙(或者是从无迷宫挡墙到有迷宫挡墙)状态的变化,STM32F407会根据微微鼠当前运行状态精确补偿,彻底消除微微鼠在复杂迷宫中探索时已经累计的误差。
10)如果微微鼠在探索过程中遇到因机械结构造成的轮子失速或者是读错迷宫信息时,有时会出现撞墙的现象,此时电机的电流将增大,当电流传感器的值超过设定值时,此时STM32F407会立即控制FPGA停止工作,不仅减少有效地解决了堵转问题,而且也减少了对系统硬件的破坏。
11)在微微鼠运行过程中,STM32F407会对电机的转矩进行在线辨识,当电机的转矩受到外界干扰出现较大抖动时,控制器会利用电机力矩与电流的关系进行时候补偿,减少了电机转矩抖动对微微鼠快速探索的影响,保证了探索时迷宫的准确性。
12)当微微鼠完成整个探索过程回到起始点(0,0),STM32F407将响应FPGA的四个中断响应控制四个电机同时减速使微电脑中心点停车,然后重新调整FPGA的四路PWM波输出,封锁后驱的两路PWM波,使电机X和电机Y以相反的方向运动,并在陀螺仪的控制下原地旋转180度,然后停车1秒。控制器调取迷宫信息,然后根据改进蚁群算法(Improvedantcolonyalgorithm)求解出最佳路径,然后置冲刺标志为1,系统进入快速冲刺阶段。
本领域技术人员应当知晓,本发明的保护方案不仅限于上述的实施例,还可以在上述实施例的基础上进行各种排列组合与变换,例如在主板上设置补偿传感器L1,微微鼠整个运动过程中,补偿传感器L1会时刻对外界干扰光源进行采集,然后传输给STM32F407,STM32F407根据补偿传感器L1传输的数据自动补偿外界干扰,减少了外界干扰光源对系统的干扰。例如电池为锂电子电池。总之在不违背本发明精神的前提下,对本发明进行的各种变换均落在本发明的保护范围内。
Claims (7)
1.双核高速四轮微微鼠探索控制器,包括主板,其特征在于:还包括电池、第一传感器(S1)、第二传感器(S2)、第三传感器(S5)、第四传感器(S6)、第一电机(X)、第二电机(Y)、第三电机(R)、第四电机(Z)、第五电机(M)、三轴陀螺仪(G1)、三轴加速度计(A1)、电压传感器V1、第一电流传感器(C1)、第二电流传感器(C2)、第三电流传感器(C3)、第四电流传感器(C4)、真空装置、STM32F407处理器和FPGA芯片,它们均安装在主板上;它还包括四轴行走伺服控制单元和单轴真空抽吸附伺服控制单元;
所述STM32F407处理器电性连接FPGA芯片,所述电池、第一传感器(S1)、第二传感器(S2)、第三传感器(S5)、第四传感器(S6)、三轴陀螺仪(G1)、三轴加速度计(A1)、电压传感器V1、第一电流传感器(C1)、第二电流传感器(C2)、第三电流传感器(C3)和第四电流传感器(C4)均与STM32F407处理器信号连接,FPGA芯片与第一电机(X)、第二电机(Y)、第三电机(R)、第四电机(Z)和第五电机(M)信号连接;
所述四轴行走伺服控制单元与真空吸附伺服控制单元信号连接,所述第一电机(X)、第二电机(Y)、第三电机(R)和第四电机(Z)与四轴行走伺服控制单元信号连接,所述第五电机(M)与真空吸附伺服控制单元信号连接;
第一传感器(S1)、第二传感器(S2)、第三传感器(S5)和第四传感器(S6)中的两个信号发射方向与车轮行进方向相同、另外两个信号发射方向与车轮行进方向间有一定夹角,第一电机(X)、第二电机(Y)、第三电机(R)和第四电机(Z)分别与位于微微鼠两侧的四轮一一对应、其中两个电机设置在主板中部两侧、另外两个电机设置在主板后端两侧使得它们与四个轮子的位置一一对应构成中驱加后驱的复合结构;第一电流传感器(C1)、第二电流传感器(C2)、第三电流传感器(C3)和第四电流传感器(C4)分别与控制微微鼠的四个轮子的电机一一对应;所述第五电机(M)与真空装置连接;
在电源打开状态下微电脑鼠先进入自锁状态,当所述微电脑鼠放在迷宫起始点时、所述STM32F407处理器处理后与FPGA处理器通讯进而使得FPGA处理器首先控制第五电机(M)使得真空装置开启,第一传感器(S1)、第二传感器(S2)、第三传感器(S5)和第四传感器(S6)根据实际导航环境将参数传输给STM32F407处理器,STM32F407处理器处理参数后与FPGA芯片通讯,由FPGA芯片处理第一电机(X)、第二电机(Y)、第三电机(R)和第四电机(Z)伺服控制实现四轴行走伺服控制、且FPGA芯片处理第五电机(M)实现单轴真空抽吸附伺服控制,且FPGA芯片把处理数据通讯给STM32F407处理器、由STM32F407处理器继续处理后续的运行状态。
2.根据权利要求1所述的双核高速四轮微微鼠探索控制器,其特征在于:所述第一传感器(S1)的传感器信号发射方向与第二传感器(S2)的传感器信号发射方向间的夹角大于等于75°且小于等于90°、第三传感器(S5)、第四传感器(S6)的传感器信号发射方向间的夹角大于等于75°且小于等于90°。
3.根据权利要求1所述双核高速四轮微微鼠探索控制器,其特征在于:第一电机(X)、第二电机(Y)、第三电机(R)和第四电机(Z)均为永磁直流电机,第五电机(M)为直流电机,第一电机(X)、第二电机(Y)、第三电机(R)和第四电机(Z)中设置在主板中部的两个电机比另外两个电机的电机功率大。
4.根据权利要求1所述双核高速四轮微微鼠探索控制器,其特征在于:第一电机(X)、第二电机(Y)、第三电机(R)、第四电机(Z)和第五电机(M)上的均设有光电编码器。
5.根据权利要求1所述双核高速四轮微微鼠探索控制器,其特征在于:第一传感器(S1)、第二传感器(S2)、第三传感器(S5)和第四传感器(S6)均包括红外发射传感器OPE5594A和红外接收器TSL262。
6.一种双核高速四轮微微鼠探索控制器的控制方法,其特征在于包括以下步骤:
系统初始化:将微微鼠放置在迷宫起点,打开电源开关瞬间STM32F407控制器会对电源电路、传感器电路、时钟电路等进行检测,如果电池处于低压的将禁止所有FPGA芯片工作,同时电压感应器V1将工作并提示报警信号,如果电压正常,系统将检测传感器电路和时钟电路,如果传感器电路和时钟电路出现故障,系统将自动复位,重新检测,如有问题将报警,确定系统硬件无异样后,等待STM32F407发出的探索命令;
抓地控制:当接收微微鼠探索启动的瞬间,开启开启第五电机(M)、三轴陀螺仪(G1)、三轴加速度计(A1)和真空抽吸装置,真空抽吸装置使微微鼠对地面具有一定的吸附力,第一传感器(S1)、第二传感器(S2)、第三传感器(S5)和第四传感器(S6)判断周围的环境并将环境参数送给STM32F407处理器,STM32F407把这些环境参数按照四轴行走伺服控制单元速度和加速度要求转化为微微鼠要运行的距离、速度和加速度指令值并与FPGA芯片通讯,由FPGA芯片根据这些参数再结合电机的光电编码器、第一电流传感器(C1)、第二感应器(C2)、第三感应器(C3)和第四感应器(C4)的反馈生成驱动第一电机(X)、第二电机(Y)、第三电机(R)和第四电机(Z)的PW(M)波以及方向和速度——时间运动梯形图,STM32F407处理器根据外部环境要求控制FPGA芯片进而控制第一电机(X)、第二电机(Y)、第三电机(R)和第四电机(Z)中的两个或者全部工作,PW(M)波经驱动桥放大后驱动两个电机或者四个电机使得微微鼠运动;
转向与直行控制:第一传感器(S1)、第二传感器(S2)、第三传感器(S5)和第四传感器(S6)判断周围的环境并将环境参数送给STM32F407控制器,在微微鼠向前运动过程中如果有迷宫挡墙进入前方的运动范围,则判断左右是否有挡墙,若至少一侧无挡墙则转弯,若两侧均有挡墙则微微鼠将存储此时坐标,根据第一传感器(S1)和第四传感器(S6)的反馈计算出向前运动停车的位置参数,并把向停车的位置参数参数传输给STM32F407控制器,然后STM32F407控制器会把此参数按照时间要求转化为位置参数、速度参数以及加速度参数传输并使能FPGA芯片,FPGA芯片根据参数生成PW(M)控制信号,控制第一电机(X)、第二电机(Y)、第三电机(R)和第四电机(Z)停车,同时控制器通过调整电机(M)的伺服控制来加大对地面的摩擦,然后在陀螺仪(G1)和加速度计(A1)的帮助下,微微鼠实现在设置停车点停车,然后STM32F407控制器使能FPGA芯片,微微鼠掉头;在微微鼠向前运动过程显示前方有若干格直线坐标内没有挡墙、判断出前方的运动范围没有阻挡则微微鼠将存储其现在的坐标,处理器把向前运动若干格的位置参数传递给STM32F407,然后FPGA芯片控制第一电机(X)、第二电机(Y)、第三电机(R)和第四电机(Z)使得微微鼠向前冲刺,陀螺仪(G1)、加速度计(A1)会时刻记录已经移动的距离并输送给STM32F407控制器;
运动补偿控制:在微微鼠运动过程中三轴陀螺仪(G1)用来测量微微鼠转弯或直线运动,三轴加速度计(A1)用来测量微微鼠运动的加速度,陀螺仪测量短时内角度变化并结合加速度计传感器测量倾角,并将陀螺仪得到的倾角匹配加速度传感器得到的倾角,当微微鼠的姿态发生变化超过设定倾角阀值时发出信号控制使得第一电机(X)、第二电机(Y)、第三电机(R)和第四电机(Z)对位置进行补偿,避免了微微鼠行走时偏离中心位置现象的发生;
位置判断:当微微鼠控制下运动若干格距离到达新地址时,微处理器将更新其坐标为并判断其坐标是不是终点,如果不是将继续更新其坐标,如果是的话通知控制器已经探索到目标,然后设置返航探索标志,微微鼠准备返程探索。
7.根据权利要求6所述的一种双核高速四轮微微鼠探索控制器的控制方法,其特征在于:
转向与直行控制步骤中包括误差校正步骤,误差校正方法如下:微微鼠第一传感器(S1)、第二传感器(S2)、第三传感器(S5)和第四传感器(S6)时刻对周围的迷宫挡墙进行探测,如果信号发生了较大数值的跃变,STM32F407会根据微微鼠当前运行状态精确补偿,彻底消除微微鼠在复杂迷宫中已经累计的误差;
转向时采用的方法:转弯时,STM32F407首先把转入前行驶距离按照冲刺条件的不同转化为不同的速度参数以及加速度参数然后根据地面状况把指令值传输给控制的FPGA,FPGA会根据这些参数再结合光电编码器、第一电流传感器(C1)、第二电流传感器(C2)、第三电流传感器(C3)和第四电流传感器(C4)的反馈生成驱动前后左右轮的PW(M)波形和方向,控制第一电机(X)、第二电机(Y)、第三电机(R)和第四电机(Z)中的2个或4个实现转向;
返程探索过程如下:在微微鼠进入迷宫返程探索时,传感器(S1)、(S2)、(S5)、(S6)将工作,并把反射回来的光电信号送给STM32F407控制器、控制器判断后送给FPGA芯片、由FPGA芯片运算后与STM32F407控制器进行通讯,然后由STM32F407控制器送控制信号给第一电机(X)、第二电机(Y)、第三电机(R)和第四电机(Z)进行确定,如果进入已经搜索的区域将进行快速前进,STM32F407会加大控制电机的占空比,以快速通过已知区域,减少二次探索时间,如果是未知返回区域则采用正常速度搜索,在运动过程中,控制器时刻检测微微鼠运行状态并实时调整电机(M)进行摩擦力调整且时刻更新其坐标并判断其坐标是不是起点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510520909.4A CN105137978A (zh) | 2015-08-24 | 2015-08-24 | 双核高速四轮微微鼠探索控制器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510520909.4A CN105137978A (zh) | 2015-08-24 | 2015-08-24 | 双核高速四轮微微鼠探索控制器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105137978A true CN105137978A (zh) | 2015-12-09 |
Family
ID=54723353
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510520909.4A Pending CN105137978A (zh) | 2015-08-24 | 2015-08-24 | 双核高速四轮微微鼠探索控制器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105137978A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105911935A (zh) * | 2016-07-01 | 2016-08-31 | 江苏若博机器人科技有限公司 | 一种双核三轴四轮变结构高速微微鼠冲刺控制器 |
CN105929832A (zh) * | 2016-07-01 | 2016-09-07 | 江苏若博机器人科技有限公司 | 一种双核三轴四轮变结构高速微微鼠全数字伺服控制器 |
CN105974923A (zh) * | 2016-07-01 | 2016-09-28 | 江苏若博机器人科技有限公司 | 一种双核三轴四轮变结构高速微微鼠探索控制器 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060238156A1 (en) * | 2005-04-25 | 2006-10-26 | Lg Electronics Inc. | Self-moving robot capable of correcting movement errors and method for correcting movement errors of the same |
CN201886351U (zh) * | 2010-10-25 | 2011-06-29 | 陕西科技大学 | 一种用于迷宫冲刺的电脑鼠 |
CN103472840A (zh) * | 2013-09-16 | 2013-12-25 | 苏州工业园区职业技术学院 | 基于arm9四轮微电脑鼠探索控制器 |
CN103472835A (zh) * | 2013-09-16 | 2013-12-25 | 苏州工业园区职业技术学院 | 基于双核四轮微电脑鼠快速冲刺控制器 |
CN204086988U (zh) * | 2014-09-05 | 2015-01-07 | 西安建筑科技大学 | 一种用于迷宫解算的迷宫机器鼠系统 |
-
2015
- 2015-08-24 CN CN201510520909.4A patent/CN105137978A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060238156A1 (en) * | 2005-04-25 | 2006-10-26 | Lg Electronics Inc. | Self-moving robot capable of correcting movement errors and method for correcting movement errors of the same |
CN201886351U (zh) * | 2010-10-25 | 2011-06-29 | 陕西科技大学 | 一种用于迷宫冲刺的电脑鼠 |
CN103472840A (zh) * | 2013-09-16 | 2013-12-25 | 苏州工业园区职业技术学院 | 基于arm9四轮微电脑鼠探索控制器 |
CN103472835A (zh) * | 2013-09-16 | 2013-12-25 | 苏州工业园区职业技术学院 | 基于双核四轮微电脑鼠快速冲刺控制器 |
CN204086988U (zh) * | 2014-09-05 | 2015-01-07 | 西安建筑科技大学 | 一种用于迷宫解算的迷宫机器鼠系统 |
Non-Patent Citations (1)
Title |
---|
PETER HARRISON: "Minos 2015 Presentations", 《MICROMOUSE ONLINE》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105911935A (zh) * | 2016-07-01 | 2016-08-31 | 江苏若博机器人科技有限公司 | 一种双核三轴四轮变结构高速微微鼠冲刺控制器 |
CN105929832A (zh) * | 2016-07-01 | 2016-09-07 | 江苏若博机器人科技有限公司 | 一种双核三轴四轮变结构高速微微鼠全数字伺服控制器 |
CN105974923A (zh) * | 2016-07-01 | 2016-09-28 | 江苏若博机器人科技有限公司 | 一种双核三轴四轮变结构高速微微鼠探索控制器 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105334853A (zh) | 双核高速四轮微微鼠冲刺控制器 | |
CN105116897A (zh) | 双核高速四轮微微鼠全数字导航伺服控制器 | |
CN105137975A (zh) | 六轮双核全自动高速灭火机器人伺服控制器 | |
CN103529831B (zh) | 基于双核的四轮微电脑鼠全数字伺服系统控制器 | |
CN105005249A (zh) | 一种全自动四轮双核高速灭火机器人伺服控制器 | |
CN203535477U (zh) | 基于arm9的四轮微电脑鼠冲刺控制器 | |
CN103472839A (zh) | 一种基于双核四轮微电脑鼠快速探索控制器 | |
CN105137983A (zh) | 双核高速两轮微微鼠冲刺控制器及其控制方法 | |
CN105137988A (zh) | 单核低速两轮微微鼠全数字导航伺服控制器及控制方法 | |
CN105137978A (zh) | 双核高速四轮微微鼠探索控制器 | |
CN103529846B (zh) | 基于双核四轮高速微电脑鼠连转冲刺伺服系统 | |
CN105005308A (zh) | 基于stm32f407六轮灭火机器人伺服控制器 | |
CN105116898A (zh) | 单核低速两轮微微鼠冲刺控制器 | |
CN105116891A (zh) | 双核中速两轮微微鼠冲刺控制器及其控制方法 | |
CN105204502A (zh) | 双核中速六轮微微鼠探索控制器及其控制方法 | |
CN105137979A (zh) | 双核中速六轮微微鼠冲刺控制器及其控制方法 | |
CN105302133A (zh) | 单核低速六轮微微鼠全数字导航伺服系统控制器 | |
CN105137981A (zh) | 单核低速四轮微微鼠探索控制器及其控制方法 | |
CN105068558A (zh) | 一种单轮双核高速灭火机器人伺服控制系统 | |
CN105137991A (zh) | 单核低速两轮微微鼠探索控制器 | |
CN105159323A (zh) | 六轮单核全自动低速灭火机器人伺服控制器 | |
CN105320147A (zh) | 一种单轮双核中低速灭火机器人伺服控制系统 | |
CN105116896A (zh) | 单核低速六轮微微鼠探索控制器 | |
CN105137985A (zh) | 双核中速四轮微微鼠探索控制器 | |
CN103472831B (zh) | 基于双核四轮微电脑鼠超快速探索控制器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20151209 |
|
RJ01 | Rejection of invention patent application after publication |