CN105137977A - 一种四轮双核高速灭火机器人伺服控制器 - Google Patents
一种四轮双核高速灭火机器人伺服控制器 Download PDFInfo
- Publication number
- CN105137977A CN105137977A CN201510519642.7A CN201510519642A CN105137977A CN 105137977 A CN105137977 A CN 105137977A CN 201510519642 A CN201510519642 A CN 201510519642A CN 105137977 A CN105137977 A CN 105137977A
- Authority
- CN
- China
- Prior art keywords
- sensor
- motor
- firefighting robot
- brushless motor
- speed
- 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
- Manipulator (AREA)
Abstract
本发明公开了一种四轮双核高速灭火机器人伺服控制器,包括:供电装置、STM32F407芯片、FPGA芯片、传感组件、三轴加速度计传感器、陀螺仪、方向传感器和电机组件,所述供电装置电性连接所述STM32F407芯片和所述FPGA芯片,所述STM32F407芯片通讯连接所述FPGA芯片且使能所述FPGA芯片。通过上述方式,本发明四轮双核高速灭火机器人伺服控制器采用方向传感器、陀螺仪和加速度传感器为控制器实时提供机器人位置、速度和加速度反馈,基于直流电机的真空吸附技术有效解决了机器人行走打滑,结构新颖、控制简单、速度提升、节省空间、调速平稳、抗干扰能力强、稳定性高,在四轮双核高速灭火机器人伺服控制器的普及上有着广泛的市场前景。
Description
技术领域
本发明涉及机器人控制器领域,特别是涉及一种四轮双核高速灭火机器人伺服控制器。
背景技术
灭火机器人是一中模拟现实生活中人类发现有害火源并能够自动熄灭火源的一种新型智能机器人。一般情况下,比赛型灭火机器人能够在一间平面结构房子模型里运动,在操作规则指导下以最短的时间找到代表火源的一根蜡烛并将它熄灭。模拟现实家庭中机器人处理火警的过程。蜡烛代表家里燃起的火源,机器人必须找到并熄灭火源。蜡烛火焰的底部将离地面15~20cm高。蜡烛是直径1-2cm的白蜡烛。蜡烛火焰的确切高度和尺寸是不确定的、变化的,而且由蜡烛条件和周围的环境所决定。蜡烛将随机地放在比赛场地的一个房间里,比赛开始后不管火焰具体是什么尺寸,都要求机器人能发现蜡烛。
在真正的比赛中,为了加大比赛难度,比赛场地被分为n*n格的标准模式,最常采用的是8*8格的均匀模式,其比赛场地二维结构如图2所示,灭火机器人将在64格房间里寻找火源并熄灭。在图2的二维搜寻火源地图中,墙的材料是木质一般且可以反光,每块挡墙的长度为60cm长,高度在27-34cm。比赛场地地面是光滑的,场地的地板是黑色的。场地上的任意缝隙都刷成黑色。场地的缝隙不超过5mm。一些机器人可能用泡沫,粉末或者其他的物质来熄灭蜡烛的火焰。由于每一个机器人比赛后清洗场地的好坏直接影响到地面情况,故地面不保证在整个比赛过程中都保持绝对黑色。一旦启动,灭火机器人必须在没有人的干预下自己控制导航,而非人工控制,为了考验灭火机器人在搜寻火源过程中的稳定性,其不可以碰撞或接触墙壁,否则将被受到处罚。
一台完整的灭火机器人大致分为以下几个部分:
1)电机:执行电机是灭火机器人的动力源,它根据微处理器的指令来执行灭火机器人在二维平面上行走的相关动作。
2)算法:算法是灭火机器人的灵魂。灭火机器人必须采用一定的智能算法才能准确快速的从一个房间到达另外一格房间的运动,然后发现火源,并开启自身携带的干冰控制器,扑灭火源。
3)微处理器:微处理器是灭火机器人的核心部分,是灭火机器人的大脑。灭火机器人所有的信息,包括房间墙壁信息,火源位置信息,和电机状态信息等都需要经过微处理器处理并做出相应的判断。
灭火机器人结合了多学科知识,对于提升在校学生的动手能力、团队协作能力和创新能力,促进学生课堂知识的消化和扩展学生的知识面都非常有帮助。国内研发此机器人的单位较多,但是研发的机器人比较落后,研发的灭火机器人结构如图1,长时间运行发现存在着很多安全问题,即:
(1)作为灭火机器人的执行机构采用的多是步进电机,经常会遇到丢失脉冲造成电机失步现象发生,导致对位置的记忆出现错误,灭火机器人无法寻求到火源,或者是灭火后机器人无法回到起始点。
(2)由于采用步进电机,使得机体发热比较严重,有的时候需要进行加装散热装置,使得机器人整体重量增加。
(3)由于采用步进电机,使得系统运转的机械噪声大大增加,不利于环境保护。
(4)由于采用步进电机,使得系统一般不适合在速度较高的场合运行,高速运动时容易产生振动,有时候可能会接触墙壁,导致寻找火源失败。
(5)由于灭火机器人要频繁的刹车和启动,加重了单片机的工作量,单一的单片机无法满足灭火机器人快速启动和停止的要求。
(6)相对采用的都是一些体积比较大的插件元器件,使得灭火机器人控制系统占用较大的空间,重量相对都比较重。
(7)由于受周围环境不稳定因素干扰,单片机控制器经常会出现异常,引起灭火机器人失控,抗干扰能力较差。
(8)对于两轮灭火机器人寻找火源过程来说,一般要求其两个电机的PWM控制信号要同步,由于受单片机计算能力的限制,单一单片机伺服系统很难满足这一条件,使得灭火机器人行走导航很难控制,特别是对于快速行走时情况更糟糕。
(9)由于采用两个动力轮驱动,为了满足快速搜寻火源时的加速和减速,使得单个驱动电机的功率较大,不仅占用的空间较大,而且有时候在一些相对需求能量较低的状态下造成“大马拉小车”的现象出现,不利于灭火机器人系统能源的节省。
(10)基于单核控制的灭火机器人,特别是对于多轮的灭火机器人,由于处理器处理的算法较多,运算速度不是很快,不利于高速运转。
(11)在有些条件下,为了增加运算速度,在单核控制器中引入专用运动芯片处理部分伺服控制算法,但是受到专用芯片本身能力的影响,运算速度虽然得到了一定的提高,但是还不是很理想。
相对于两轮承载结构,四轮结构具有承载能力更强、移动速度快、控制性能优异、工作效率高等优点。为了能够更好的提高灭火机器人对复杂环境的适应能力,可用四轮结构替代原有的两轮结构,因此,需要对现有的基于单核控制器+专用运动芯片的两轮灭火机器人控制器进行重新设计,寻求一种经济适用的能够在现实中的使用高速双核四轮灭火机器人伺服系统。
发明内容
本发明主要解决的技术问题是提供一种四轮双核高速灭火机器人伺服控制器,在基于STM32F407的控制器中舍弃了专用精密运动控制专用芯片,而引入FPGA,形成基于STM32F407+FPGA的全新双核控制器,同时引入真空吸附技术和加速度计传感器,进一步提高其行走时的稳定性和精准性,充分考虑电池在这个系统的作用,把控制系统中工作量最大的四轴直流无刷伺服和单轴直流伺服组成的五轴混合伺服控制交给FPGA处理,充分发挥FPGA数据处理速度相对较快的特点,把STM32F407从复杂的五轴伺服控制中解脱出来,实现人机界面、房间读取、房间存储、坐标定位等简单功能,在四轮双核高速灭火机器人伺服控制器的普及上有着广泛的市场前景。
为解决上述技术问题,本发明提供一种四轮双核高速灭火机器人伺服控制器,包括:供电装置、STM32F407芯片、FPGA芯片、传感组件、三轴加速度计传感器、陀螺仪、方向传感器和电机组件,
所述供电装置电性连接所述STM32F407芯片和所述FPGA芯片,所述STM32F407芯片通讯连接所述FPGA芯片且使能所述FPGA芯片,所述传感组件、所述三轴加速度计传感器、所述陀螺仪和所述方向传感器均通讯连接所述FPGA芯片,所述三轴加速度计传感器、所述陀螺仪和所述方向传感器为所述四轮双核高速灭火机器人伺服控制器实时提供灭火机器人的位置、速度和加速度反馈以便进行位置补偿,所述FPGA芯片的输出端通讯连接并驱动控制所述电机组件,所述电机组件包括微型电机,所述微型电机连接有真空抽吸装置和微型真空吸盘,所述微型电机通过所述真空抽吸装置抽吸所述微型真空吸盘内的空气,使所述微型真空吸盘产生内外压力差形成负压,以增加吸附能力、防止打滑。
在本发明一个较佳实施例中,所所述供电装置为锂电池。
在本发明一个较佳实施例中,所所述传感组件包括第一传感器、第二传感器、第三传感器、第四传感器、第五传感器、第六传感器和光电传感器,所述第一传感器、第二传感器、第三传感器、第四传感器、第五传感器、第六传感器均为超声波传感器。
在本发明一个较佳实施例中,所所述第一传感器与所述第六传感器配合使用感应判断前方的障碍,所述第二传感器与所述第三传感器配合使用感应判断左方的障碍,所述第四传感器与所述第五传感器配合使用感应判断右方的障碍,所述第二传感器与所述第三传感器在不同位置精确测量到房间左侧从有挡墙到无挡墙或者无挡墙到有挡墙的变化,所述第四传感器与所述第五传感器在不同位置精确测量到房间右侧从有挡墙到无挡墙或者无挡墙到有挡墙的变化,并将所述信号传送至所述FPGA芯片进行精确补偿。
在本发明一个较佳实施例中,所所述电机组件还包括前左轮电机、前右轮电机、后左轮电机和后右轮电机,所述前左轮电机、前右轮电机、后左轮电机和后右轮电机分别连接控制所述灭火机器人的前左轮、前右轮、后左轮和后右轮的运动。
在本发明一个较佳实施例中,所所述前左轮电机、前右轮电机、后左轮电机、后右轮电机和微型电机均为直流无刷电机,所述前左轮电机和所述前右轮电机的功率大于所述后左轮电机和所述后右轮电机,所述前左轮电机和所述前右轮电机独立工作或者所述前左轮电机、所述前右轮电机、所述后左轮电机和所述后右轮电机共同工作。
在本发明一个较佳实施例中,所还包括光电编码器,所述光电编码器分别设置在所述前左轮电机、前右轮电机、后左轮电机、后右轮电机和微型电机上。
在本发明一个较佳实施例中,所所述电机组件与所述FPGA芯片之间设置有信号放大装置。
在本发明一个较佳实施例中,所所述FPGA芯片驱动所述电机组件的信号均为PWM波控制信号。
在本发明一个较佳实施例中,所所述FPGA芯片的内部还设置有上位机系统和运动控制系统,所述上位机系统包括房间探索模块、房间存储模块、路径读取模块、人机界面模块和在线输出模块,所述运动控制系统包括基于FPGA五轴同步直流无刷和直流混合伺服控制模块、坐标定位模块和I/O控制模块,其中,所述基于FPGA五轴同步直流无刷和直流混合伺服控制模块包括基于四轴直流无刷电机灭火机器人搜寻伺服控制模块和单轴真空吸盘吸附伺服控制模块,所述基于四轴直流无刷电机灭火机器人搜寻伺服控制模块驱动控制所述单轴真空吸盘吸附伺服控制模块。
本发明的有益效果是:本发明四轮双核高速灭火机器人伺服控制器具有结构新颖、控制简单、速度提升、节省空间、调速平稳、抗干扰能力强、稳定性高等优点,在四轮双核高速灭火机器人伺服控制器的普及上有着广泛的市场前景。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图,其中:
图1是现有技术基于单片机控制的两轮灭火机器人的原理图;
图2是本发明的四轮双核高速灭火机器人伺服控制器一较佳实施例的房间示意图;
图3是本发明的四轮双核高速灭火机器人一较佳实施例的结构示意图;
图4是本发明的四轮双核高速灭火机器人一较佳实施例的原理图;
图5是本发明的四轮双核高速灭火机器人伺服控制器一较佳实施例的程序图;
图6是本发明的四轮双核高速灭火机器人一较佳实施例的运行方向示意图;
图7是本发明的四轮双核高速灭火机器人一较佳实施例的右转示意图;
图8是本发明的四轮双核高速灭火机器人一较佳实施例的左转示意图。
具体实施方式
下面将对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
请参阅图2-图8,本发明实施例包括:
一种四轮双核高速灭火机器人伺服控制器,包括:供电装置、STM32F407芯片、FPGA芯片、传感组件、三轴加速度计传感器、陀螺仪、方向传感器和电机组件,
所述供电装置电性连接所述STM32F407芯片和所述FPGA芯片,所述STM32F407芯片通讯连接所述FPGA芯片且使能所述FPGA芯片,所述传感组件、所述三轴加速度计传感器、所述陀螺仪和所述方向传感器均通讯连接所述FPGA芯片,所述三轴加速度计传感器、所述陀螺仪和所述方向传感器为所述四轮双核高速灭火机器人伺服控制器实时提供灭火机器人的位置、速度和加速度反馈以便进行位置补偿,所述FPGA芯片的输出端通讯连接并驱动控制所述电机组件,所述电机组件包括微型电机,所述微型电机连接有真空抽吸装置和微型真空吸盘,所述微型电机通过所述真空抽吸装置抽吸所述微型真空吸盘内的空气,使所述微型真空吸盘产生内外压力差形成负压,以增加吸附能力、防止打滑。
优选地,所所述供电装置为锂电池。
优选地,所所述传感组件包括第一传感器、第二传感器、第三传感器、第四传感器、第五传感器、第六传感器和光电传感器,所述第一传感器、第二传感器、第三传感器、第四传感器、第五传感器、第六传感器均为超声波传感器。
优选地,所所述第一传感器与所述第六传感器配合使用感应判断前方的障碍,所述第二传感器与所述第三传感器配合使用感应判断左方的障碍,所述第四传感器与所述第五传感器配合使用感应判断右方的障碍,所述第二传感器与所述第三传感器在不同位置精确测量到房间左侧从有挡墙到无挡墙或者无挡墙到有挡墙的变化,所述第四传感器与所述第五传感器在不同位置精确测量到房间右侧从有挡墙到无挡墙或者无挡墙到有挡墙的变化,并将所述信号传送至所述FPGA芯片进行精确补偿。
优选地,所所述电机组件还包括前左轮电机、前右轮电机、后左轮电机和后右轮电机,所述前左轮电机、前右轮电机、后左轮电机和后右轮电机分别连接控制所述灭火机器人的前左轮、前右轮、后左轮和后右轮的运动。
优选地,所所述前左轮电机、前右轮电机、后左轮电机、后右轮电机和微型电机均为直流无刷电机,所述前左轮电机和所述前右轮电机的功率大于所述后左轮电机和所述后右轮电机,所述前左轮电机和所述前右轮电机独立工作或者所述前左轮电机、所述前右轮电机、所述后左轮电机和所述后右轮电机共同工作。
优选地,所还包括光电编码器,所述光电编码器分别设置在所述前左轮电机、前右轮电机、后左轮电机、后右轮电机和微型电机上。
优选地,所所述电机组件与所述FPGA芯片之间设置有信号放大装置。
优选地,所所述FPGA芯片驱动所述电机组件的信号均为PWM波控制信号。
优选地,所所述FPGA芯片的内部还设置有上位机系统和运动控制系统,所述上位机系统包括房间探索模块、房间存储模块、路径读取模块、人机界面模块和在线输出模块,所述运动控制系统包括基于FPGA五轴同步直流无刷和直流混合伺服控制模块、坐标定位模块和I/O控制模块,其中,所述基于FPGA五轴同步直流无刷和直流混合伺服控制模块包括基于四轴直流无刷电机灭火机器人搜寻伺服控制模块和单轴真空吸盘吸附伺服控制模块,所述基于四轴直流无刷电机灭火机器人搜寻伺服控制模块驱动控制所述单轴真空吸盘吸附伺服控制模块。
STM32F4系列除引脚和软件兼容高性能的F2系列外,F4的主频(168MHz)高于F2系列(120MHz),并支持单周期DSP指令和浮点单元、更大的SRAM容量(192KB,F2为128KB)、512KB-1MB的嵌入式闪存以及影像、网络接口和数据加密等更先进的外设。STM32F4系列基于最新的ARMCortexM4内核,在现有出色的STM32微控制器产品组合中新增了信号处理功能,并提高了运行速度;STM32F405x集成了定时器、3个ADC、2个DAC、串行接口、外存接口、实时时钟、CRC计算单元和模拟真随机数发生器在内的整套先进外设。STM32F407在STM32F405产品基础上增加了多个先进外设。这些性能使得F4系列可以较容易满足控制和信号处理功能混合的数字信号控制需求。高效的信号处理功能与Cortex-M4处理器系列的低能耗、低成本和易于使用的优点的组合,使得其可以为多轴电动机控制提供灵活解决方案。这些特点使得STM32F407特别适合多轴灭火机器人伺服系统的信号处理。
FPGA是英文FieldProgrammableGateArray的缩写,即现场可编程门阵列,是在PAL、GAL、EPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,即解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
FPGA采用了逻辑单元阵列LCA(LogicCellArray)这样一个新概念,内部包括可配置逻辑模块CLB(ConfigurableLogicBlock)、输出输入模块IOB(InputOutputBlock)和内部连线(Interconnect)三个部分。FPGA的基本特点主要有:
1)采用FPGA设计ASIC电路,用户不需要投片生产,就能得到合用的芯片。
2)FPGA可做其它全定制或半定制ASIC电路的中试样片。
3)FPGA内部有丰富的触发器和I/O引脚。
4)FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一。
5)FPGA采用高速CHMOS工艺,功耗低,可以与CMOS、TTL电平兼容。
可以说,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。
上述特点使得用户可以根据自己的设计需要,通过特定的布局布线工具对其内部进行重新组合连接,在最短的时间内设计出自己的专用集成电路,这样就减小成本、缩短开发周期。由于FPGA采用软件化的设计思想实现硬件电路的设计,这样就使得基于FPGA设计的系统具有良好的可复用和修改性。这种全新的设计思想已经逐渐应用在高性能的直流电机和交流电机驱动控制上,并快速发展。
为了能够精确探寻房间,本发明采用六组传感器探测房间模式,所发明的灭火机器人二维结构如图3所示:传感器S1、S6共同作用判断前方挡墙,传感器S2和S3共同合作判断其左边挡墙的存在,传感器S4和S5共同合作判断其右边挡墙的存在,同时S2、S3、S4、S5合作为灭火机器人直线运动提供导航依据。由于在比赛现场,太阳光有可能直射进来,这样红外传感器就不能在使用,本发明采用超声波传感器代替了红外传感器。在这种结构设置中,S2和S3可以在不同位置精确测量到房间左侧从有挡墙到无挡墙或者无挡墙到有挡墙的变化,S4和S5可以在不同位置精确测量到房间右侧从有挡墙到无挡墙或者无挡墙到有挡墙的变化,这个位置的传感器信号阶跃变化可以被控制器捕捉到,然后在此位置可以对灭火机器人进行精确补偿,这对于灭火机器人求解房间找到火源并返回到起点计算至关重要,如果没有此智能补偿的话,灭火机器人有可能在复杂房间中的累计误差足以使其无法求解此房间地图,导致无法回到房间起点。
为了能够更好的提高灭火机器人对复杂环境的适应能力,本发明采用四轮结构替代了原有的两轮结构:为了兼顾两轮中置转向的优点,本发明采用中置+后驱的四轮驱动结构:中置驱动的两个直流无刷电机功率较大,后置驱动的两个直流无刷电机电机功率较小,只有在动力需求较高时才启动,起到助力作用。由于采用四轮驱动技术,灭火机器人前后轮都有动力,可按探索地面和周围环境状态不同而将需求扭矩按不同比例分布在前后所有的轮子上,以提高灭火机器人的行驶能力。
为了提高四轮灭火机器人在寻找火源过程中行走导航的稳定性,本发明在灭火机器人伺服硬件系统中加入了三轴加速度计传感器A1。在灭火机器人行走房间期间全程开启加速度计传感器A1、陀螺仪G1和方向传感器D1,加速度计传感器A1、陀螺仪G1和方向传感器D1用来测量灭火机器人三个前进方向的瞬时加速度、速度和角度信息。控制器根据测得的角度信得到其偏离位置和角度。当灭火机器人的姿态发生变化超过设定阀值时,在一个新的采样周期控制器就立即对其位置补偿,避免灭火机器人远远偏离中心位置而出现撞墙现象的发生,提高了其快速行走导航的稳定性。
为了提高灭火机器人全数字伺服系统的稳定性,防止灭火机器人在高速行走时打滑导致灭火机器人房间信息错误,本发明在灭火机器人伺服硬件系统中加入了微型直流电机M,在灭火机器人运动过程中,电机M通过真空抽吸装置不停抽吸微型真空吸盘内的空气,使微型真空吸盘的内外压力不一样,产生一定的负压,使其对房间地面产生一定的吸附能力,即使房间地板受到了上一组选手的破坏产生了一定变化,灭火机器人也不会受到影响,有效防止了灭火机器人在高速行走时的地面打滑。
本发明为克服单片机不能满足两轴灭火机器人行走的稳定性,进一步提高灭火机器人行走的速度,舍弃了国产灭火机器人所采用的单一单片机工作模式,在吸收国外先进控制思想的前提下,自主发明了基于STM32F407+FPGA的四轮双核全新控制模式。控制板以FPGA为处理核心,实现四轴直流无刷电机和单轴直流电机的五轴伺服控制的数字信号实时处理,并响应各种中断,实现数据信号的实时存储。双核控制器把STM32F407从复杂的工作当中解脱出来,实现房间信息读取、房间存储、I/O控制等简单部分的信号处理,并响应FPGA中断,实现二者之间的数据通信和存储实时信号。
为达上述目的,本发明采取以下技术方案,为了提高运算速度,保证四轮灭火机器人系统的稳定性和可靠性,本发明在基于STM32F407的控制器中舍弃了专用精密运动控制专用芯片,而引入FPGA,形成基于STM32F407+FPGA的全新双核控制器。双核控制器同时引入真空吸附技术和加速度计传感器,进一步提高其行走时的稳定性和精准性。此控制器充分考虑电池在这个系统的作用,把控制系统中工作量最大的四轴直流无刷伺服和单轴直流伺服组成的五轴混合伺服控制交给FPGA处理,充分发挥FPGA数据处理速度相对较快的特点,把STM32F407从复杂的五轴伺服控制中解脱出来,实现人机界面、房间读取、房间存储、坐标定位等简单功能。
参照图5,具体实施步骤是:
对于本文设计的STM32F407+FPGA控制器,在电源打开状态下,灭火机器人先进入自锁状态。控制器首先开启真空抽吸电机M,通过抽吸装置先对微型真空吸盘抽吸,使真空吸盘对地面具有一定的吸附能力。灭火机器人通过超声波传感器S1、S6判断前方运动环境,实际导航环境被转化为控制参数传输给FPGA,FPGA把这些环境参数转化为灭火机器人直流无刷电机X和直流无刷电机Y、直流无刷电机Z和直流无刷电机R要运行的位置、速度和加速度指令值,FPGA再结合电流传感器C1~C4和电机光电编码器的反馈生成控制直流无刷电机X和直流无刷电机Y、直流无刷电机Z和直流无刷电机R的PWM控制信号,控制信号经驱动桥放大后驱动直流无刷电机X和直流无刷电机Y、直流无刷电机Z和直流无刷电机R向前运动,加速度计A1、陀螺仪G1、方向传感器D1和光电编码器实时把测得的信号反馈给FPGA,由FPGA二次校正迷宫机器人的姿态。灭火机器人在运动过程中,FPGA根据灭火机器人运动速度自动通过电机M调节真空装置对地面的吸附能力,增加有效摩擦,防止灭火机器人快速行走打滑,STM32F407实时储存房间信息。当控制器发现火源后自动开启干冰灭火器电磁阀,通过喷洒干冰灭火,灭火完毕后STM32F407立即调出灭火机器人已经储存的房间信息,通过洪水算法找出返程最短路径,并开启四轮加速模式迅速回到起点等待一下条寻求火源命令。
参照图4、图5,图6、图7、图8,其具体的功能实现如下:
1)为了能够驱动四轮灭火机器人运动并解决高速探寻房间打滑问题,本控制系统引入了FPGA,由其产生四路控制直流无刷电机和一路控制直流电机的PWM波控制信号,FPGA通过I/O口与STM32F407进入实时通讯,由STM32F407控制其开通和关断。
2)打开电源瞬间,STM32F407会对电池电压进行检测,如果低压的话,FPGA将封锁直流无刷电机X和直流无刷电机Y、直流无刷电机Z和直流无刷电机R的PWM波控制信号,电机不能启动,同时电压传感器V1将工作,并发出报警信号。如果系统电压正常,FPGA将开启真空抽吸电机M的PWM波控制信号,通过抽吸装置先对微型真空吸盘抽吸,使真空吸盘对地面具有一定的吸附能力,满足灭火机器人探寻火源的速度要求。
3)在灭火机器人未接到探索命令之前,它一般会在起点坐标(0,0)等待控制器发出的探索命令,一旦接到任务后,会沿着起点开始为了寻找火源而进行全宫探索。
4)灭火机器人放在起点坐标(0,0),一般情况下,灭火机器人按照图6中北的方向(计算机编程代码为0)放置,接到任务后其前方的传感器S1、S6和会对前方的环境进行判断,确定有没有挡墙进入运动范围,如存在挡墙将向STM32F407发出存储命令,STM32F407会对中断做第一时间响应,然后通过调整FPGA禁止后驱的两轮PWM波输出,使能中驱的两路PWM输出,控制直流无刷电机X正转,直流无刷电机Y反转,灭火机器人在加速度传感器A1、陀螺仪G1和方向传感器D1的控制下向右旋转90度,灭火机器人首先沿着X轴正向(东的方向,计算机编程代码为2)搜寻火源。
5)在灭火机器人运动过程中,装在直流无刷电机X和直流无刷电机Y、直流无刷电机Z和直流无刷电机R上的光电编码器会输出其位置信号A和位置信号B并反馈给FPGA,光电编码器的位置信号A脉冲和B脉冲逻辑状态每变化一次,FPGA的位置寄存器会根据直流无刷电机X和直流无刷电机Y、直流无刷电机Z和直流无刷电机R的运行方向加1或者是减1;
6)在灭火机器人运动过程中,装在直流无刷电机X和直流无刷电机Y、直流无刷电机Z和直流无刷电机R上的光电编码器的位置信号A脉冲和B脉冲和Z脉冲同时为低电平时,就产生一个INDEX信号给FPGA寄存器,记录电机的绝对位置,然后换算成灭火机器人在房间中的具体位置。
7)为了能够实现灭火机器人准确的坐标计算功能,灭火机器人左右的传感器S2、S3和S4、S5会时刻对运动方向左右的房间挡墙和柱子进行探测,如果S2、S3或者S4、S5发现传感器信号发生了跃变,则说明灭火机器人进入了从有房间挡墙到无房间挡墙(或者是从无房间挡墙到有房间挡墙)状态的变化,STM32F407会根据灭火机器人当前运行状态精确补偿,彻底消除灭火机器人在复杂房间中探寻火源时已经累计的误差。
8)在灭火机器人沿着任何一个方向向前运动,在任何一个方格的中心如果确定没有挡墙进入前方的运动范围,则灭火机器人将存储其坐标(X,Y),并把向前运动一格的位置参数送给FPGA,FPGA把向前一格参数转化为灭火机器人直流无刷电机X和直流无刷电机Y要运行的位置、速度和加速度指令值,FPGA再结合电流传感器C1、C2和电机光电编码器的反馈生成控制直流无刷电机X和直流无刷电机Y的PWM控制信号,控制信号经驱动桥放大后驱动直流无刷电机X和直流无刷电机Y向前运动。在灭火机器人沿着当前房间格向前探索过程中,传感器S2、S3和S4、S5会对左右的挡墙进行判断,并记录储存当前搜寻房间挡墙信息,灭火机器人根据前进方向左右挡墙的房间信息进入单墙导航模式或者是双墙导航模式,然后再结合设定的左右挡墙导航阀值,加速度计A1、陀螺仪G1和方向传感器D1记录灭火机器人实时的加速度、速度和角度信号并送给控制器,FPGA记录储存灭火机器人的瞬时加速度、速度和位置信息,当灭火机器人快速探索脱离了设定中心位置时,微处理器根据离开中心位置的偏差由FPGA转化为灭火机器人直流无刷电机X和直流无刷电机Y要运行的新的位置、速度和加速度指令值,FPGA再结合电流传感器C1、C2、电机光电编码器、加速计传感器A1、陀螺仪G1和方向传感器D1的反馈,微调直流无刷电机X和直流无刷电机Y的PWM控制信号,控制信号经驱动桥放大后驱动电机X和电机Y向前运动。通过此方式可以精确调整灭火机器人的姿态,使其重新回到设定中心位置。如果灭火机器人搜寻火源过程中出现失速或者房间地面灰尘较多的情况,FPGA会调节M加大灭火机器人与地面的摩擦并使能后驱的两轮PWM波控制信号,控制器开启直流无刷电机Z和直流无刷电机R,系统进入四轮驱动状态,FPGA根据时间和速度要求,把剩余的距离D转化为灭火机器人直流无刷电机X、直流无刷电机Y、直流无刷电机Z、直流无刷电机R要运行的新的位置、速度和加速度指令值,FPGA再结合电流传感器C1~C4、电机光电编码器的反馈,生成直流无刷电机X、直流无刷电机Y、直流无刷电机Z、直流无刷电机R的PWM控制信号,控制信号经驱动桥放大后驱动直流无刷电机X、直流无刷电机Y、直流无刷电机Z、直流无刷电机R向前运动。灭火机器人在四驱状态下依旧按照原有的导航模式前进,加速度计A1、陀螺仪G1和方向传感器D1记录灭火机器人实时的加速度、速度和角度信号并送给控制器,FPGA记录储存灭火机器人的瞬时加速度、速度和位置信息,当灭火机器人四轮探索脱离了设定中心位置时,微处理器根据离开中心位置的偏差由FPGA转化为灭火机器人直流无刷电机X、直流无刷电机Y、直流无刷电机Z、直流无刷电机R要运行的新的位置、速度和加速度指令值,FPGA再结合电流传感器C1~C4、电机光电编码器、加速计传感器A1、陀螺仪G1和方向传感器D1的反馈,微调直流无刷电机X、直流无刷电机Y、直流无刷电机Z、直流无刷电机R的PWM控制信号,控制信号经驱动桥放大后驱动电机X和电机Y向前运动。通过此方式可以精确调整灭火机器人的姿态,使其重新回到设定中心位置;当灭火机器人在加速度计A1的控制下运动一格距离到达新地址时,微处理器将更新其坐标信息。
如果在坐标(X,Y)时的方向为北,在更新其坐标为(X,Y+1),新坐标方向依旧为北;如果在坐标(X,Y)时的方向为东,在更新其坐标为(X+1,Y),新坐标方向依旧为东;如果在坐标(X,Y)时的方向为南,在更新其坐标为(X,Y-1),新坐标方向依旧为南;如果在坐标(X,Y)时的方向为西,在更新其坐标为(X-1,Y),新坐标方向依旧为西;
光电传感器S7开始工作,对新坐标下的光源进行判断,如果光电传感器捕捉到信号将通知控制器发现目标,控制器会让光电传感器禁止工作2秒工作,2秒后重新开启光电传感器,如果再次捕捉到光电信号,控制器会开启携带的干冰灭火器的电磁阀,开始对蜡烛进行喷洒干冰直至光源消失,然后STM32F407调出灭火机器人已经搜索的路径,并舍弃未搜寻的目标,通过洪水算法找出已经搜寻过房间的最佳路径,然后灭火机器人按照此路径快速回到搜寻起点;
如果光电传感器S7没有捕捉到新坐标下的光源,灭火机器人将离开目前房间格,将继续搜寻并更新其坐标;
9)在灭火机器人沿着当前方向向前运动过程中如果传感器S1和S6判断前方有挡墙进入运动范围,并且此时传感器S2、S3、S4、S5分别判断左右都有挡墙时,灭火机器人将存储此时坐标(X,Y),根据传感器S1和S6的反馈计算出向前运动停车的位置参数YS1,由FPGA根据探索控制器速度和加速度要求把向前停车距离参数转化为灭火机器人直流无刷电机X、直流无刷电机Y、直流无刷电机Z、直流无刷电机R要运行的位置、速度和加速度指令值,FPGA再结合电流传感器C1~C4和电机光电编码器的反馈生成控制直流无刷电机X、直流无刷电机Y、直流无刷电机Z、直流无刷电机R的PWM控制信号,控制信号经驱动桥放大后驱动直流无刷电机X、直流无刷电机Y、直流无刷电机Z、直流无刷电机R向前运动。在灭火机器人沿着当前房间格向前探索过程中,传感器S2、S3和S4、S5对左右挡墙进行判断,并记录储存当前搜寻房间挡墙信息,灭火机器人根据前进方向左右挡墙的房间信息进入双墙导航模式,然后再结合设定的左右挡墙导航阀值,加速度计A1、陀螺仪G1和方向传感器D1记录灭火机器人实时的加速度、速度和角度信号并送给控制器,FPGA记录储存灭火机器人的瞬时加速度、速度和位置信息,当灭火机器人快速停车脱离了设定中心位置时,微处理器根据离开中心位置的偏差由FPGA转化为灭火机器人直流无刷电机X、直流无刷电机Y、直流无刷电机Z、直流无刷电机R要运行的新的位置、速度和加速度指令值,FPGA再结合电流传感器C1~C4、电机光电编码器、加速计传感器A1、陀螺仪G1和方向传感器D1的反馈,微调直流无刷电机X、直流无刷电机Y、直流无刷电机Z、直流无刷电机R的PWM控制信号,控制信号经驱动桥放大后驱动直流无刷电机X、直流无刷电机Y、直流无刷电机Z、直流无刷电机R向前运动。通过此方式可以精确调整灭火机器人的姿态,使其重新回到设定中心位置。灭火机器人实现在设置停车点停车。FPGA重新调整灭火机器人四个电机的PWM波输出,首先禁止后轮的两路PWM波工作,同时使能中驱的两轮PWM波输出,使中驱直流无刷电机X和直流无刷电机Y运动方向相反,灭火机器人原地在加速计传感器A1的控制下实现精确的原地180度转向,然后灭火机器人沿着原先相反的方向运动。
如果在坐标(X,Y)时的方向为北,则更新其坐标为(X,Y),新坐标方向为南;如果在坐标(X,Y)时的方向为东,则更新其坐标为(X1,Y),新坐标方向为西;如果在坐标(X,Y)时的方向为南,则更新其坐标为(X,Y),新坐标方向为北;如果在坐标(X,Y)时的方向为西,则更新其坐标为(X,Y),新坐标方向为东;
12)在灭火机器人沿着当前方向向前运动过程中如果有挡墙进入前方的运动范围,并且此时传感器S2和S3判断左边有挡墙,而S4、S5判断右方没有挡墙时,灭火机器人将存储此时坐标(X,Y),然后灭火机器人将按照图7的曲线行走;为了充分发挥FPGA的快速处理数据能力,舍弃了基于LM629的三段法转入法,为了使转弯更逼近于实际情况,本发明采用五段法完成转弯:转入前直线校正R90_Leading,转入弧度校正ARC11,转入弧度ARC12,转出弧度校正ARC13,转出直线校正R90_Passing。
在右转弯时,FPGA首先把行走直线很短的距离R90_Leading按照控制器不同搜寻速度和加速度要求生成灭火机器人直流无刷电机X、直流无刷电机Y、直流无刷电机Z、直流无刷电机R要运行的位置、速度和加速度指令值,FPGA再结合电流传感器C1~C4和电机光电编码器的反馈生成控制直流无刷电机X、直流无刷电机Y、直流无刷电机Z、直流无刷电机R的PWM控制信号,控制信号经驱动桥放大后驱动直流无刷电机X、直流无刷电机Y、直流无刷电机Z、直流无刷电机R向前运动。在灭火机器人沿着当前房间格向前探索过程中,传感器S2、S3会对左挡墙进行判断,并记录储存当前搜寻房间挡墙信息,灭火机器人根据前进方向左挡墙的房间信息进入单左墙导航模式,然后再结合设定的左挡墙导航阀值,加速度计A1、陀螺仪G1和方向传感器D1记录灭火机器人实时的加速度、速度和角度信号并送给控制器,FPGA记录储存灭火机器人的瞬时加速度、速度和位置信息,当灭火机器人快速探索脱离了设定中心位置时,微处理器根据离开中心位置的偏差由FPGA转化为灭火机器人直流无刷电机X、直流无刷电机Y、直流无刷电机Z、直流无刷电机R要运行的新的位置、速度和加速度指令值,FPGA再结合电流传感器C1~C4、电机光电编码器、加速计传感器A1、陀螺仪G1和方向传感器D1的反馈,微调直流无刷电机X、直流无刷电机Y、直流无刷电机Z、直流无刷电机R的PWM控制信号,控制信号经驱动桥放大后驱动直流无刷电机X、直流无刷电机Y、直流无刷电机Z、直流无刷电机R向前运动。通过此方式可以精确调整灭火机器人的姿态,使其重新回到设定中心位置。
当到达既定目标时,传感器参考值R90_FrontWallRef开始工作,防止外界干扰开始做误差补偿。误差补偿结束后,控制器释放后驱的两个直流无刷电机,通过中驱的两个直流无刷电机进行转弯。控制器开始调整直流无刷电机X和直流无刷电机Y速度使其完成弧度ARC的运动曲线.
FPGA首先把弧度ARC11按照控制器不同搜寻速度和加速度要求转化为灭火机器人直流无刷电机X和直流无刷电机Y要运行的位置、速度和加速度指令值,FPGA再结合电流传感器C1、C2和电机光电编码器的反馈生成控制电机X和电机Y的PWM控制信号,PWM波控制信号通过驱动桥放大后推动灭火机器人完成转弯搜寻。在灭火机器人转弯搜寻过程中,传感器S2、S3、S4、S5无法为系统提供位置参考,系统依靠方向传感器D1进行位置修正。在灭火机器人快速搜寻转弯过程中方向传感器D1实时记录其瞬时角度,控制器然后与设定位置的角度对比,当灭火机器人快速搜寻脱离了设定位置时,在新的采样周期内,FPGA把偏差大小转化为灭火机器人直流无刷电机X和直流无刷电机Y要运行的新的位置、速度和加速度指令值,FPGA再结合电流传感器C1、C2、电机光电编码器、加速计传感器A1、陀螺仪G1和方向传感器D1的反馈,微调直流无刷电机X和直流无刷电机Y的PWM控制信号,两轴伺服系统开始进行实时补偿来调整灭火机器人的姿态,使其完成弧度ARC11;
当完成ARC11转入前校正后,FPGA首先把弧度ARC12按照控制器不同搜寻速度和加速度要求转化为灭火机器人直流无刷电机X和直流无刷电机Y要运行的位置、速度和加速度指令值,FPGA再结合电流传感器C1、C2和电机光电编码器的反馈生成控制电机X和电机Y的PWM控制信号,PWM波控制信号通过驱动桥放大后推动灭火机器人完成转弯搜寻。在灭火机器人转弯搜寻过程中,系统依靠方向传感器D1进行位置修正。在灭火机器人快速搜寻转弯过程中方向传感器D1实时记录其瞬时角度,控制器然后与设定位置的角度对比,当灭火机器人快速搜寻脱离了设定位置时,在新的采样周期内,FPGA把偏差大小转化为灭火机器人直流无刷电机X和直流无刷电机Y要运行的新的位置、速度和加速度指令值,FPGA再结合电流传感器C1、C2、电机光电编码器、加速计传感器A1、陀螺仪G1和方向传感器D1的反馈,微调直流无刷电机X和直流无刷电机Y的PWM控制信号,两轴伺服系统开始进行实时补偿来调整灭火机器人的姿态,使其完成弧度ARC12;
当完成弧度ARC12转弯后,灭火机器人为弧度转出做准备。FPGA把弧度ARC13按照控制器不同搜寻速度和加速度要求转化为灭火机器人直流无刷电机X和直流无刷电机Y要运行的位置、速度和加速度指令值,FPGA再结合电流传感器C1、C2和电机光电编码器的反馈生成控制电机X和电机Y的PWM控制信号,PWM波控制信号通过驱动桥放大后推动灭火机器人完成转弯搜寻。在灭火机器人转弯转出过程中,系统依靠方向传感器D1进行位置修正。在灭火机器人快速搜寻转弯过程中方向传感器D1实时记录其瞬时角度,控制器然后与设定位置的角度对比,当灭火机器人快速搜寻脱离了设定位置时,在新的采样周期内,FPGA把偏差大小转化为灭火机器人直流无刷电机X和直流无刷电机Y要运行的新的位置、速度和加速度指令值,FPGA再结合电流传感器C1、C2、电机光电编码器、加速计传感器A1、陀螺仪G1和方向传感器D1的反馈,微调直流无刷电机X和直流无刷电机Y的PWM控制信号,两轴伺服系统开始进行实时补偿来调整灭火机器人的姿态,使其完成弧度ARC13;
当到达既定目标后,系统依靠传感器S2、S3开始导航,控制器把直线行走很短的距离R90_Passing按照控制器不同搜寻速度和加速度要求生成灭火机器人直流无刷电机X、直流无刷电机Y、直流无刷电机Z、直流无刷电机R要运行的位置、速度和加速度指令值,FPGA再结合电流传感器C1~C4和电机光电编码器的反馈生成控制直流无刷电机X、直流无刷电机Y、直流无刷电机Z、直流无刷电机R的PWM控制信号,控制信号经驱动桥放大后驱动直流无刷电机X、直流无刷电机Y、直流无刷电机Z、直流无刷电机R向前运动。在灭火机器人沿着当前房间格向前探索过程中,传感器S2、S3会对左挡墙进行判断,并记录储存当前搜寻房间挡墙信息,灭火机器人根据前进方向左挡墙的房间信息进入单左墙导航模式,然后再结合设定的左挡墙导航阀值,加速度计A1、陀螺仪G1和方向传感器D1记录灭火机器人实时的加速度、速度和角度信号并送给控制器,FPGA记录储存灭火机器人的瞬时加速度、速度和位置信息,当灭火机器人快速探索脱离了设定中心位置时,微处理器根据离开中心位置的偏差由FPGA转化为灭火机器人直流无刷电机X、直流无刷电机Y、直流无刷电机Z、直流无刷电机R要运行的新的位置、速度和加速度指令值,FPGA再结合电流传感器C1~C4、电机光电编码器、加速计传感器A1、陀螺仪G1和方向传感器D1的反馈,微调直流无刷电机X、直流无刷电机Y、直流无刷电机Z、直流无刷电机R的PWM控制信号,控制信号经驱动桥放大后驱动直流无刷电机X、直流无刷电机Y、直流无刷电机Z、直流无刷电机R向前运动。通过此方式可以精确调整灭火机器人的姿态,使其重新回到设定中心位置。当到达既定目标后完成整个右转弯的轨迹曲线运动,然后控制其开始更新其坐标和方向。
如果在坐标(X,Y)时的方向为北,则更新其坐标为(X+1,Y),新坐标方向为东;如果在坐标(X,Y)时的方向为东,则更新其坐标为(X,Y-1),新坐标方向为南;如果在坐标(X,Y)时的方向为南,则更新其坐标为(X-1,Y),新坐标方向为西;如果在坐标(X,Y)时的方向为西,则更新其坐标为(X,Y+1),新坐标方向为北;
光电传感器S7开始工作,对新坐标下的光源进行判断,如果光电传感器捕捉到信号将通知控制器发现目标,控制器会让光电传感器禁止工作2秒工作,2秒后重新开启光电传感器S7,如果再次捕捉到光电信号,控制器会开启携带的干冰容器的电磁阀,开始对蜡烛进行喷洒干冰直至光源消失;如果光电传感器S7没有捕捉到新坐标下的光源,灭火机器人将离开目前房间格,将继续搜寻并更新其坐标;
10)在灭火机器人沿着当前方向向前运动过程中如果有挡墙进入前方的运动范围,并且此时左右的传感器S2和S3判断左边无挡墙,而S4、S5判断右方有挡墙时,灭火机器人将存储此时坐标(X,Y),然后灭火机器人将按照图8的曲线行走;为了充分发挥FPGA的快速处理数据能力,舍弃了基于MC58113和LM629的三段法转入法,为了使转弯更逼近于实际情况,本发明采用五段法完成转弯:转入前直线校正L90_Leading,转入弧度校正ARC21,转入弧度ARC22,转出弧度校正ARC23,转出直线校正L90_Passing。
在左转弯时,控制器控制电机行走规律与右转类似,当通过五段法到达既定目标后完成整个左转弯的轨迹曲线运动,然后控制器按照图6的设置开始更新其坐标和方向。
如果在坐标(X,Y)时的方向为北,则更新其坐标为(X-1,Y),新坐标方向为西;如果在坐标(X,Y)时的方向为东,则更新其坐标为(X,Y+1),新坐标方向为北;如果在坐标(X,Y)时的方向为南,则更新其坐标为(X+1,Y),新坐标方向为东;如果在坐标(X,Y)时的方向为西,则更新其坐标为(X,Y-1),新坐标方向为南;
光电传感器S7开始工作,对新坐标下的光源进行判断,如果光电传感器捕捉到信号将通知控制器发现目标,控制器会让光电传感器禁止工作2秒工作,2秒后重新开启光电传感器S7,如果再次捕捉到光电信号,控制器会开启携带的干冰容器的电磁阀,开始对蜡烛进行喷洒干冰直至光源消失;如果光电传感器S7没有捕捉到新坐标下的光源,灭火机器人将离开目前房间格,将继续搜寻并更新其坐标;
11)当灭火机器人搜到光源,并喷洒干冰完成灭火后,灭火机器人会停在目标点,然后控制器调出灭火机器人已经搜索的路径,并舍弃未搜寻的目标,通过洪水算法找出已经搜寻过房间的最佳路径,然后灭火机器人按照此路径快速回到搜寻起点;
12)在灭火机器人行走过程总,控制器并实时检测灭火机器人的行走速度,并根据地面情况系统会自动调节电机M加大真空吸盘对地面的吸附能力。
13)在灭火机器人房间搜寻过程中,FPGA会对高速直流无刷电机X、直流无刷电机Y、直流无刷电机Z、直流无刷电机R、直流电机M的转矩进行在线辨识,由于系统采用的是三闭环伺服控制,如果转矩出现脉动,控制器会利用直流电机力矩与电流的关系对干扰进行线性补偿,有效减少了电机转矩抖动对灭火机器人快速探索时导航的影响,增加了其抗干扰能力。
14)当灭火机器人完成整个返程过程回到起始点(0,0),STM32F407将控制FPGA使得灭火机器人中心点停车,并重新调整FPGA驱动信号,使得直流无刷电机X和直流无刷电机Y以相反的方向运动,灭火机器人加速度计传感器A1、陀螺仪G1和方向传感器D1的控制下,原地旋转180度,原地自锁,等待下一个搜寻命令。
本发明四轮双核高速灭火机器人伺服控制器的有益效果是:
1、在运动过程中,充分考虑了电池在这个系统中的作用,基于STM32F407+FPGA控制器时刻都在对灭火机器人的运行状态进行监测和运算,并且在电池提供电源的过程中,电流传感器C1~C5时刻对电池的电流进行观测并送给控制器进行保护,避免了大电流的产生,所以从根本上解决了大电流对锂离子电池的冲击,避免了由于大电流放电而引起的锂离子电池过度老化现象的发生。
2、用直流无刷电机替代了步进电机,使得电机无机械摩擦,无磨损,无电火花,且免维护,而且直流无刷电机的效率高,功率和转矩密度高,使得系统的效率更高。
3、由FPGA处理灭火机器人的四只直流无刷电机X和直流无刷电机Y、直流无刷电机Z和直流无刷电机R、单轴吸附控制直流电机M的伺服控制,使得控制比较简单,大大提高了运算速度,解决了单片机软件运行较慢的瓶颈,缩短了开发周期短,并且程序可移植能力强。
4、本发明基本实现全贴片元器件材料,实现了单板控制,不仅节省了控制板占用空间,而且有利于灭火机器人体积和重量的减轻。
5、由于采用直流无刷电机,使得系统带载能力更强,调速范围比较宽,调速比较平稳。
6、由于本控制器采用FPGA处理五轴伺服大量的数据与算法,有效地防止了程序的“跑飞”,抗干扰能力大大增强。
7、在灭火机器人实际运动过程中,FPGA可以根据机器人外围运行情况适时调整其内部伺服控制的PID参数,实现分段P、PD、PID控制和非线性PID控制,使系统满足中低速运行时速度的切换。
8、在此四轮灭火机器人系统引入了三轴加速度计A1、陀螺仪G1和方向传感器D1,可以准确得到灭火机器人的加速度、速度和角度信息,实现了灭火机器人在房间探索时的瞬时加速度、速度和位置的直接检测,并利用反馈实现全程导航和二次补偿,有利于提高灭火机器人的稳定性和动态性能。
9、在四轮灭火机器人运行过程中,FPGA会对高速直流无刷电机X、直流无刷电机Y、直流无刷电机Z、直流无刷电机R和直流电机M的转矩进行在线辨识并利用电机力矩与电流的关系进行补偿,减少了电机转矩抖动对灭火机器人快速探寻火源的影响。
10、通过调节直流电机M可以有效调节真空吸盘对地面的吸附力,消除了灭火机器人在高速探寻火源时打滑现象的发生。
11、由FPGA根据探索火源的速度、加速度要求把外界偏差转化为各个电机控制的位置、速度和加速度给定,再结合光电编码器和电流传感器的反馈输出PWM调制信号和方向信号,通过驱动电路可以直接驱动电机,不仅减轻了STM32F407的负担,简化了接口电路,而且极大的提高了运算速度。
12、根据灭火机器人搜寻功率需要实现分时四驱。在正常搜寻时,由于所求功率较小,灭火机器人一般通过FPGA禁止后轮驱动直流无刷电机Z和直流无刷电机R的PWM波控制波形输出,采用中置动力的两轮驱动方式;而一旦遇到路面灰尘较多或加速状况时,STM32407会自动检测并立即将灭火机器人需求扭矩分配给后置两个助力直流无刷电机Z和直流无刷电机R,同时控制器改变电机M的伺服控制,灭火机器人系统自然切换到四轮驱动状态,增强了灭火机器人的搜寻时的可靠性。
13、由于采用中驱+后驱的复合四轮驱动方式,当需要加速探寻或者是返回起点时,控制器把动力分配到四个直流无刷电机,一旦一个动力轮由于地面、机械结构等造成暂时离开地面,STM32407可以重新分配扭矩,通过FPGA重新调整四路电机PWM波输出,把更多的扭矩分配在未失速的驱动轮上,使系统迅速脱离不稳定状态,重新回到四轴动力平衡状态,使得灭火机器人具有更好的探寻行走功能。
14、灭火机器人转向时,为了保证旋转的稳定性,采用中置的两直流无刷电机实现搜寻转弯,并释放后置的两助力直流无刷电机。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种四轮双核高速灭火机器人伺服控制器,其特征在于,包括:供电装置、STM32F407芯片、FPGA芯片、传感组件、三轴加速度计传感器、陀螺仪、方向传感器和电机组件,
所述供电装置电性连接所述STM32F407芯片和所述FPGA芯片,所述STM32F407芯片通讯连接所述FPGA芯片且使能所述FPGA芯片,所述传感组件、所述三轴加速度计传感器、所述陀螺仪和所述方向传感器均通讯连接所述FPGA芯片,所述三轴加速度计传感器、所述陀螺仪和所述方向传感器为所述四轮双核高速灭火机器人伺服控制器实时提供灭火机器人的位置、速度和加速度反馈以便进行位置补偿,所述FPGA芯片的输出端通讯连接并驱动控制所述电机组件,所述电机组件包括微型电机,所述微型电机连接有真空抽吸装置和微型真空吸盘,所述微型电机通过所述真空抽吸装置抽吸所述微型真空吸盘内的空气,使所述微型真空吸盘产生内外压力差形成负压,以增加吸附能力、防止打滑。
2.根据权利要求1所述的四轮双核高速灭火机器人伺服控制器,其特征在于,所述供电装置为锂电池。
3.根据权利要求1所述的四轮双核高速灭火机器人伺服控制器,其特征在于,所述传感组件包括第一传感器、第二传感器、第三传感器、第四传感器、第五传感器、第六传感器和光电传感器,所述第一传感器、第二传感器、第三传感器、第四传感器、第五传感器、第六传感器均为超声波传感器。
4.根据权利要求3所述的四轮双核高速灭火机器人伺服控制器,其特征在于,所述第一传感器与所述第六传感器配合使用感应判断前方的障碍,所述第二传感器与所述第三传感器配合使用感应判断左方的障碍,所述第四传感器与所述第五传感器配合使用感应判断右方的障碍,所述第二传感器与所述第三传感器在不同位置精确测量到房间左侧从有挡墙到无挡墙或者无挡墙到有挡墙的变化,所述第四传感器与所述第五传感器在不同位置精确测量到房间右侧从有挡墙到无挡墙或者无挡墙到有挡墙的变化,并将所述信号传送至所述FPGA芯片进行精确补偿。
5.根据权利要求1所述的四轮双核高速灭火机器人伺服控制器,其特征在于,所述电机组件还包括前左轮电机、前右轮电机、后左轮电机和后右轮电机,所述前左轮电机、前右轮电机、后左轮电机和后右轮电机分别连接控制所述灭火机器人的前左轮、前右轮、后左轮和后右轮的运动。
6.根据权利要求5所述的四轮双核高速灭火机器人伺服控制器,其特征在于,所述前左轮电机、前右轮电机、后左轮电机、后右轮电机和微型电机均为直流无刷电机,所述前左轮电机和所述前右轮电机的功率大于所述后左轮电机和所述后右轮电机,所述前左轮电机和所述前右轮电机独立工作或者所述前左轮电机、所述前右轮电机、所述后左轮电机和所述后右轮电机共同工作。
7.根据权利要求5所述的四轮双核高速灭火机器人伺服控制器,其特征在于,还包括光电编码器,所述光电编码器分别设置在所述前左轮电机、前右轮电机、后左轮电机、后右轮电机和微型电机上。
8.根据权利要求1所述的四轮双核高速灭火机器人伺服控制器,其特征在于,所述电机组件与所述FPGA芯片之间设置有信号放大装置。
9.根据权利要求1所述的四轮双核高速灭火机器人伺服控制器,其特征在于,所述FPGA芯片驱动所述电机组件的信号均为PWM波控制信号。
10.根据权利要求1所述的四轮双核高速灭火机器人伺服控制器,其特征在于,所述FPGA芯片的内部还设置有上位机系统和运动控制系统,所述上位机系统包括房间探索模块、房间存储模块、路径读取模块、人机界面模块和在线输出模块,所述运动控制系统包括基于FPGA五轴同步直流无刷和直流混合伺服控制模块、坐标定位模块和I/O控制模块,其中,所述基于FPGA五轴同步直流无刷和直流混合伺服控制模块包括基于四轴直流无刷电机灭火机器人搜寻伺服控制模块和单轴真空吸盘吸附伺服控制模块,所述基于四轴直流无刷电机灭火机器人搜寻伺服控制模块驱动控制所述单轴真空吸盘吸附伺服控制模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510519642.7A CN105137977A (zh) | 2015-08-24 | 2015-08-24 | 一种四轮双核高速灭火机器人伺服控制器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510519642.7A CN105137977A (zh) | 2015-08-24 | 2015-08-24 | 一种四轮双核高速灭火机器人伺服控制器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105137977A true CN105137977A (zh) | 2015-12-09 |
Family
ID=54723352
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510519642.7A Pending CN105137977A (zh) | 2015-08-24 | 2015-08-24 | 一种四轮双核高速灭火机器人伺服控制器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105137977A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109240306A (zh) * | 2018-10-26 | 2019-01-18 | 深圳市三宝创新智能有限公司 | 一种机器人外卖送餐系统及方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11276618A (ja) * | 1998-03-31 | 1999-10-12 | Nohmi Bosai Ltd | 消火ロボット及びその管理方法 |
CN201711969U (zh) * | 2010-07-09 | 2011-01-19 | 华南理工大学 | 一种自带真空源的负压吸附模块 |
KR20130098592A (ko) * | 2012-02-28 | 2013-09-05 | 한서대학교 산학협력단 | 자율 주행 로봇 및 그 제어 방법 |
CN103472839A (zh) * | 2013-09-16 | 2013-12-25 | 苏州工业园区职业技术学院 | 一种基于双核四轮微电脑鼠快速探索控制器 |
CN103529832A (zh) * | 2013-09-24 | 2014-01-22 | 苏州工业园区职业技术学院 | 基于双核四轮高速微电脑鼠对角线冲刺系统 |
-
2015
- 2015-08-24 CN CN201510519642.7A patent/CN105137977A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11276618A (ja) * | 1998-03-31 | 1999-10-12 | Nohmi Bosai Ltd | 消火ロボット及びその管理方法 |
CN201711969U (zh) * | 2010-07-09 | 2011-01-19 | 华南理工大学 | 一种自带真空源的负压吸附模块 |
KR20130098592A (ko) * | 2012-02-28 | 2013-09-05 | 한서대학교 산학협력단 | 자율 주행 로봇 및 그 제어 방법 |
CN103472839A (zh) * | 2013-09-16 | 2013-12-25 | 苏州工业园区职业技术学院 | 一种基于双核四轮微电脑鼠快速探索控制器 |
CN103529832A (zh) * | 2013-09-24 | 2014-01-22 | 苏州工业园区职业技术学院 | 基于双核四轮高速微电脑鼠对角线冲刺系统 |
Non-Patent Citations (3)
Title |
---|
张国营 等: "以STM32F103为核心的智能灭火机器人", 《单片机与嵌入式系统应用》 * |
张飞飞 等: "基于STM32的智能灭火机器人设计", 《甘肃科技》 * |
胡光武: "基于STM32控制的智能灭火机器人设计", 《自动化应用》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109240306A (zh) * | 2018-10-26 | 2019-01-18 | 深圳市三宝创新智能有限公司 | 一种机器人外卖送餐系统及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105137975A (zh) | 六轮双核全自动高速灭火机器人伺服控制器 | |
CN105005249A (zh) | 一种全自动四轮双核高速灭火机器人伺服控制器 | |
CN105159325A (zh) | 一种基于stm32f407和fpga两轮高速灭火机器人伺服控制器 | |
CN105116918A (zh) | 一种双核两轮中速灭火机器人伺服控制器 | |
CN105334853A (zh) | 双核高速四轮微微鼠冲刺控制器 | |
CN105045289A (zh) | 一种单轮全自动高速灭火机器人伺服控制系统 | |
CN105137974A (zh) | 六轮双核全自动中速灭火机器人伺服控制器 | |
CN105169610A (zh) | 基于两轮高速全自动灭火机器人的双核伺服控制系统 | |
CN105045288A (zh) | 一种单轮全自动中速灭火机器人伺服控制系统 | |
CN105320146A (zh) | 一种单轮双核中速灭火机器人伺服控制系统 | |
CN105005308A (zh) | 基于stm32f407六轮灭火机器人伺服控制器 | |
CN105116897A (zh) | 双核高速四轮微微鼠全数字导航伺服控制器 | |
CN103472840A (zh) | 基于arm9四轮微电脑鼠探索控制器 | |
CN105159323A (zh) | 六轮单核全自动低速灭火机器人伺服控制器 | |
CN105137983A (zh) | 双核高速两轮微微鼠冲刺控制器及其控制方法 | |
CN105068558A (zh) | 一种单轮双核高速灭火机器人伺服控制系统 | |
CN105159324A (zh) | 六轮双核中速灭火机器人伺服控制器 | |
CN105320147A (zh) | 一种单轮双核中低速灭火机器人伺服控制系统 | |
CN105116891A (zh) | 双核中速两轮微微鼠冲刺控制器及其控制方法 | |
CN105137979A (zh) | 双核中速六轮微微鼠冲刺控制器及其控制方法 | |
CN105116898A (zh) | 单核低速两轮微微鼠冲刺控制器 | |
CN105138017A (zh) | 基于两轮中速全自动灭火机器人的双核伺服控制系统 | |
CN205055285U (zh) | 基于两轮高速全自动灭火机器人的双核伺服控制系统 | |
CN105137976A (zh) | 一种四轮双核中速灭火机器人伺服控制器 | |
CN205055284U (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20151209 |