CN116540744B - 一种无人叉车系统 - Google Patents
一种无人叉车系统 Download PDFInfo
- Publication number
- CN116540744B CN116540744B CN202310809633.6A CN202310809633A CN116540744B CN 116540744 B CN116540744 B CN 116540744B CN 202310809633 A CN202310809633 A CN 202310809633A CN 116540744 B CN116540744 B CN 116540744B
- Authority
- CN
- China
- Prior art keywords
- module
- fork
- task
- unmanned forklift
- laser radar
- 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.)
- Active
Links
- 238000001514 detection method Methods 0.000 claims description 74
- 238000002360 preparation method Methods 0.000 claims description 33
- 230000015654 memory Effects 0.000 claims description 25
- 238000004891 communication Methods 0.000 claims description 20
- 238000000034 method Methods 0.000 claims description 20
- 238000005259 measurement Methods 0.000 claims description 17
- 230000008569 process Effects 0.000 claims description 12
- 230000002159 abnormal effect Effects 0.000 claims description 7
- 238000012544 monitoring process Methods 0.000 claims description 7
- 238000005516 engineering process Methods 0.000 claims description 5
- 239000013013 elastic material Substances 0.000 claims description 4
- 230000004044 response Effects 0.000 claims description 4
- 238000011084 recovery Methods 0.000 claims description 3
- 238000004458 analytical method Methods 0.000 claims description 2
- 230000008859 change Effects 0.000 abstract description 2
- 238000003860 storage Methods 0.000 description 9
- 238000011065 in-situ storage Methods 0.000 description 7
- 238000011160 research Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000012827 research and development Methods 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000036461 convulsion Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003466 welding Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0214—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0257—Control of position or course in two dimensions specially adapted to land vehicles using a radar
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Aviation & Aerospace Engineering (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Forklifts And Lifting Vehicles (AREA)
Abstract
本发明涉及自动驾驶领域,公开了一种无人叉车系统,系统包括:无人叉车、云平台和客户端;客户端用于发送复杂任务指令到云平台;云平台用于接收客户端发送的复杂任务指令,并对复杂任务指令进行分析和拆解,将复杂任务指令按照时间顺序拆解为若干基础任务的组合,并依次下发基础任务到无人叉车,基础任务是循迹任务、装载任务、卸载任务、泊车任务、充电任务和取消任务中的一个,基础任务是云平台中预先部署的任务程序,能够通过无人叉车直接运行;无人叉车用于接收云平台发送的基础任务,并运行基础任务。本发明解决了因无人叉车任务场景频繁变化导致的无人叉车使用效率低的问题。
Description
技术领域
本发明涉及自动驾驶领域,具体涉及一种无人叉车系统。
背景技术
叉车广泛应用于室内外托盘、货物的装卸载、短途运输和堆垛。无人叉车替代传统叉车可降低人工成本、减少安全隐患、提高生产效率,存在研究价值。在实际应用场景中,往往存在不同的复杂任务,为此,针对每一类任务都需要单独为叉车部署独一无二的任务执行程序,从而显著增加了无人叉车的在实际应用场景下的应用难度,需要购买叉车的用户频繁联系研发人员参与其使用场景,及时开发对应的任务执行程序来实现复杂的叉车任务。例如:用户需要使用无人叉车从A地点装料到B地点卸料然后返回A地点,从而对应开发一个独立的任务程序;在一段时间后,用户对B地点进行了改造,此时用户需要使用无人叉车从A地点装料再到B地点卸料,然后令无人叉车在B地点充电,充电完成再去C地点装料到D地点卸料,又需要联系研发人员重新开发一个独立的任务程序。因研发人员开发无人叉车的任务程序需要一段时间,从而导致无人叉车使用效率不能最大化,降低了任务处理效率。
发明内容
有鉴于此,本发明提供了一种无人叉车系统,以解决因无人叉车任务场景频繁变化导致的无人叉车使用效率低的问题。
第一方面,本发明提供了一种无人叉车系统,系统包括:无人叉车、云平台和客户端;客户端用于发送复杂任务指令到云平台;云平台用于接收客户端发送的复杂任务指令,并对复杂任务指令进行分析和拆解,将复杂任务指令按照时间顺序拆解为若干基础任务的组合,并依次下发基础任务到无人叉车,基础任务是循迹任务、装载任务、卸载任务、泊车任务、充电任务和取消任务中的一个,基础任务是云平台中预先部署的任务程序,能够通过无人叉车直接运行;无人叉车用于接收云平台发送的基础任务,并运行基础任务。
在一种可选的实施方式中,无人叉车包括处理器、存储器、惯性测量单元、多线激光雷达、通信元件、第一固态激光雷达、第二固态激光雷达、第一单线激光雷达、第二单线激光雷达、拉线编码器、到位开关、叉间传感器、激光测距仪和触边开关;存储器、惯性测量单元、多线激光雷达、通信元件、第一固态激光雷达、第二固态激光雷达、第一单线激光雷达、第二单线激光雷达、拉线编码器、到位开关、叉间传感器、激光测距仪和触边开关均与处理器通信连接;通信元件用于和云平台建立通信连接,从而接收云平台发送的基础任务,并将基础任务存入存储器;处理器用于执行存储器中的基础任务,并根据基础任务的流程调用惯性测量单元、多线激光雷达、通信元件、第一固态激光雷达、第二固态激光雷达、第一单线激光雷达、第二单线激光雷达、拉线编码器、到位开关、叉间传感器、激光测距仪和触边开关;惯性测量单元和多线激光雷达安装在无人叉车的顶部,用于给处理器提供执行SLAM定位技术的数据来实现无人叉车定位;拉线编码器的一端固定在无人叉车的后方下端,另一端固定在无人叉车的货叉门架上端,当无人叉车的货叉上下移动时,拉线编码器的线被拉长,用于测量货叉的上下移动高度;第一固态激光雷达安装在货叉中间,可随货叉上下移动,用于无人叉车的后方障碍物检测、托盘位置检测;第二固态激光雷达安装在无人叉车的顶部前方,用于无人叉车的前方及侧面障碍物识别;第一单线激光雷达位于无人叉车的中部左后方,第二单线激光雷达位于无人叉车的中部右前方,第一单线激光雷达和第二单线激光雷达用于障碍物的辅助识别;到位开关位于货叉根部,用于识别货叉是否完全插入托盘;叉间传感器位于货叉的尖端,用于测量货叉尖端与前方物体的距离;激光测距仪位于货叉的内部侧面,用于测量两货叉之间的距离,触边开关的外层是弹性材料,内层包括压力传感器,触边开关包围在无人叉车的正面及侧面,用于无人叉车的碰撞防护,并在发生碰撞时,反馈碰撞信号到处理器。
在一种可选的实施方式中,存储器中预先部署了用于处理器执行的软件模块,软件模块包括:车辆主控模块、业务决策模块、定位模块、托盘检测模块、路径规划模块、货叉控制模块、防护模块、充电模块、控制模块和驱动模块;车辆主控模块用于将接收的基础任务转发到业务决策模块,还用于上报无人叉车信息到云平台;业务决策模块用于解析基础任务,并根据解析得到的流程调用定位模块、托盘检测模块、路径规划模块、货叉控制模块、防护模块、控制模块和驱动模块中的一个或多个;驱动模块用于和惯性测量单元、多线激光雷达、第一固态激光雷达、第二固态激光雷达、第一单线激光雷达、第二单线激光雷达、拉线编码器、到位开关、叉间传感器、激光测距仪、触边开关和无人叉车的底盘进行通信,以下发硬件指令和读取硬件数据;定位模块用于根据驱动模块上传的惯性测量单元数据和多线激光雷达数据计算无人叉车位置信息;托盘检测模块用于根据驱动模块上传的第一固态激光雷达数据、到位开关数据和叉间传感器数据确定托盘位置信息;路径规划模块用于根据业务决策模块从基础任务中解析的任务地点、驱动模块上传的第二固态激光雷达数据、第一单线激光雷达数据、第二单线激光雷达数据和定位模块计算的位置信息进行路径规划,得到目标路径;货叉控制模块用于根据驱动模块上传的拉线编码器数据、激光测距仪数据和托盘检测模块确定的托盘位置信息计算货叉的调整高度和调整宽度;防护模块用于根据驱动模块上传的触边开关数据下发停车指令到驱动模块;控制模块用于根据无人叉车的底盘特征和目标路径计算无人叉车的底盘运动信息,并下发底盘运动信息到驱动模块,以使驱动模块根据底盘运动信息控制无人叉车的底盘运动。
在一种可选的实施方式中,路径规划模块包括全局规划模块和局部规划模块;全局规划模块用于根据业务决策模块从基础任务中解析的任务地点进行路径规划,得到初始全局路径;局部规划模块用于通过驱动模块上传的第二固态激光雷达数据、第一单线激光雷达数据、第二单线激光雷达数据和定位模块计算的无人叉车位置信息在初始全局路径中计算无人叉车实际行驶的目标路径。
在一种可选的实施方式中,软件模块还包括:充电模块,用于根据业务决策模块从基础任务中解析的充电子任务下发充电指令到驱动模块,并解析驱动模块上报的充电机信息和电池信息;调试界面模块,用于显示车辆信息和手动调试控件,以通过手动调试控件接收调试指令;安全监控模块,用于监控其他软件模块,并发送异常信息到车辆主控模块,以通过车辆主控模块上报异常信息到云平台。
在一种可选的实施方式中,在循迹任务、装载任务、卸载任务、泊车任务、充电任务和取消任务的基础任务之间,均间隔了原地旋转任务。
在一种可选的实施方式中,当云平台下发的基础任务是循迹时,处理器执行基础任务包括:将基础任务通过车辆主控模块转发至业务决策模块,并通过业务决策模块根据基础任务中记录的托盘位置信息确定准备点,准备点表示从托盘位置向外直线延伸预设距离的点位;通过业务决策模块将准备点发送至全局规划模块,并通过全局规划模块根据准备点规划第一路径;通过全局规划模块将第一路径发送至业务决策模块,并通过业务决策模块根据第一路径计算第一旋转姿态;通过业务决策模块将第一旋转姿态发送到局部规划模块,并通过局部规划模块根据第一旋转姿态发送旋转指令到控制模块,以使控制模块调用驱动模块调整无人叉车的角度;当通过业务决策模块接收到控制模块反馈的第一旋转姿态调整结果时,通过业务决策模块发送第一路径到局部规划模块;通过局部规划模块在第一路径中计算无人叉车实际行驶的第二路径,并生成第二路径对应的第一循迹指令;通过局部规划模块下发第一循迹指令到控制模块,以使控制模块调用驱动模块将无人叉车运动到准备点。
在一种可选的实施方式中,当云平台下发的基础任务是装载时,处理器执行基础任务包括:将基础任务通过车辆主控模块转发至业务决策模块,并通过业务决策模块响应于所述基础任务计算第二旋转姿态,将第二旋转姿态发送到局部规划模块;通过局部规划模块根据第二旋转姿态发送旋转指令到控制模块,以使控制模块调用驱动模块调整无人叉车朝向托盘插孔的方向;当通过业务决策模块接收到控制模块反馈的第二旋转姿态调整结果时,通过业务决策模块调用托盘检测模块和货叉控制模块对货叉位置进行一次调整,使货叉和托盘插孔对齐;通过业务决策模块根据基础任务中记录的托盘位置信息确定目标点,目标点表示货叉插入托盘时无人叉车的点位;通过业务决策模块将目标点发送至全局规划模块,并通过全局规划模块规划从准备点到目标点的第三路径;通过全局规划模块将第三路径发送至业务决策模块,并通过业务决策模块将第三路径发送到局部规划模块;通过局部规划模块在第三路径中计算无人叉车实际行驶的第四路径,并生成第四路径对应的第二循迹指令;通过局部规划模块下发第二循迹指令到控制模块,以使控制模块调用驱动模块将无人叉车运动到目标点;在无人叉车运动到目标点的过程中,同时通过业务决策模块接收托盘检测模块反馈的托盘位置信息,并在托盘位置信息表征无人叉车与托盘的距离小于预设阈值时,通过业务决策模块发送停车指令到驱动模块,以控制无人叉车暂停行驶;通过业务决策模块调用托盘检测模块和货叉控制模块对货叉位置进行二次调整,使货叉和托盘插孔对齐;通过业务决策模块发送恢复指令到驱动模块,以控制无人叉车恢复行驶,直至行驶到目标点;通过所述业务决策模块发送抬升指令到所述货叉控制模块。
在一种可选的实施方式中,通过业务决策模块调用托盘检测模块和货叉控制模块对货叉位置进行一次调整,包括:通过业务决策模块下发标准高度到货叉控制模块,以使货叉控制模块根据当前货叉高度发送第一调整指令到驱动模块,标准高度通过业务决策模块从基础任务中提取;通过业务决策模块下发宽度检测指令到托盘检测模块;通过业务决策模块接收托盘检测模块根据宽度检测指令反馈的托盘插孔中心间距;通过业务决策模块下发托盘插孔中心间距到货叉控制模块,以使货叉控制模块根据当前货叉间距和托盘插孔中心间距的差异发送第二调整指令到驱动模块。
在一种可选的实施方式中,通过业务决策模块调用托盘检测模块和货叉控制模块对货叉位置进行二次调整,包括:通过业务决策模块下发高度检测指令到托盘检测模块;通过业务决策模块接收托盘检测模块根据高度检测指令反馈的货叉上表面到插孔上沿的下表面高度差值;通过业务决策模块下发高度差值到货叉控制模块,以使货叉控制模块根据高度差值发送第三调整指令到驱动模块。
本申请提供的技术方案具有如下优点:
本申请提供的技术方案,通过无人叉车、云平台和客户端部署了一套无人叉车系统,针对用户使用客户端发送的任意复杂任务指令,云平台接收客户端发送的复杂任务指令,并对复杂任务指令进行分析和拆解,将复杂任务指令按照时间顺序拆解为若干基础任务的组合,并依次下发基础任务到无人叉车,其中基础任务是循迹任务、装载任务、卸载任务、泊车任务、充电任务和取消任务中的一个,是云平台中预先部署的任务程序,能够通过无人叉车直接运行,无需研发人员额外调整和开发;之后,无人叉车接收云平台发送的基础任务,并运行基础任务。通过这一方式,客户端发出的任何复杂任务指令均可以由基础任务组合而成,云平台可通过参数配置的形式下发不同类型的基础任务,灵活性和可扩展性更好,针对不同的应用场景,用户可自定义无人叉车的使用方式,不需要研发人员二次参与研发,能够显著提高无人叉车响应复杂任务的及时性,提高无人叉车在不同应用场景转换的灵活性,提高无人叉车的使用效率。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例的一种无人叉车系统的结构示意图;
图2是根据本发明实施例的一种拆分复杂任务指令为基础任务的结构示意图;
图3是根据本发明实施例的一种无人叉车的结构示意图;
图4是根据本发明实施例的一种无人叉车的另一个结构示意图;
图5是根据本发明实施例的软件模块的结构示意图;
图6是根据本发明实施例的处理器执行循迹任务的流程示意图;
图7是根据本发明实施例的处理器执行装载任务的流程示意图;
图8是根据本发明实施例的无人叉车确定准备点的场景示意图;
图9是根据本发明实施例的无人叉车原地旋转后对准托盘的场景示意图;
图10是根据本发明实施例的无人叉车停止在预设阈值位置并二次调整货叉的场景示意图;
图11是根据本发明实施例的无人叉车行驶至目标点的场景示意图;
图12是根据本发明实施例的无人叉车行驶至退出点的场景示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
如图1所示,在本实施例中提供了一种无人叉车系统,包括:无人叉车001、云平台002和客户端003。
具体地,云平台002是分布式云控系统,包括但不限于边缘云和中心云,客户端003是用户用于发出复杂任务指令的设备,包括但不限于笔记本电脑、手机、平板电脑、个人台式计算机,是用户能够在无人叉车应用场景为无人叉车001下达指令的便携式设备,例如:用户可通过客户端003下发从A地点装载货物到B地点的复杂任务指令。其中,云平台002中预先部署了多种基础任务,基础任务是任务程序,是研发人员预先开发好的代码,能够通过无人叉车001直接运行;基础任务可以是循迹任务、装载任务、卸载任务、泊车任务、充电任务和取消任务中的任意一个,循迹任务是命令无人叉车001从一个地点行驶到另一个地点的任务,装载任务是通过货叉插入托盘并抬升托盘的任务,卸载任务是通过货叉放下托盘并从托盘抽出货叉的任务,泊车任务是命令无人叉车001以预设姿态停靠到停车位的任务,充电任务是命令无人叉车001进入充电位启动充电的任务,取消任务是用于中断取消上述任意任务的任务。
基于此,当无人叉车001需要执行作业时,客户端003发送复杂任务指令到云平台002;从而云平台002接收客户端003发送的复杂任务指令,并对复杂任务指令进行分析和拆解,将复杂任务指令按照时间顺序拆解为若干基础任务的组合,并依次下发基础任务到无人叉车001;之后无人叉车001用于接收云平台002发送的基础任务,并运行基础任务。通过这一方式,客户端003发出的任何复杂任务指令均可以由基础任务组合而成,例如图2所示,当用户下发补料、返库的复杂任务指令时,云平台002将该指令依次拆分为循迹、装载、循迹、卸载4个基础任务,当用户下发切料的复杂任务指令时,云平台002将该指令依次拆分为装载、卸载、装载、卸载、泊车5个基础任务,针对充电、泊车以及自定义的任务实例1、任务实例2等复杂任务指令,均可以通过循迹任务、装载任务、卸载任务、泊车任务、充电任务和取消任务自由组合来实现。一个具体的例子:用户想利用无人叉车001将一段很长的电线缠绕在两个立柱上,用户下发将电线缠绕在地点A和地点B的立柱上的复杂任务指令,从而云平台002将该指令拆分为循迹1(顺时针从地点A运动到地点B)、循迹2(顺时针从地点B运动到地点A)、循迹1、循迹2、循迹1、…,往复多次(例如100次),直至将电线缠绕在地点A和地点B的立柱上。类似于上述特殊实施例,实际应用场景几乎很少出现,研发人员通常不会预先开发此类任务程序,故这类任务必须通知研发人员进行二次开发,用户才能在上述场景中使用无人叉车001。而通过本发明实施例提供的方案,云平台002可通过参数配置的形式下发不同类型的基础任务,灵活性和可扩展性更好,针对不同的应用场景,用户可随意自定义无人叉车001的使用方式,不需要研发人员二次参与研发,自定义的任务程序均可以由基础任务组成,能够显著提高无人叉车001响应复杂任务的及时性,提高无人叉车001在不同应用场景转换的灵活性,提高无人叉车001的使用效率。
在一些可选地实施方式中,如图3和图4所示,本发明实施例提供的无人叉车001包括处理器004、存储器005、惯性测量单元006、多线激光雷达007、通信元件008、第一固态激光雷达009、第二固态激光雷达010、第一单线激光雷达011、第二单线激光雷达012、拉线编码器013、到位开关014、叉间传感器015、激光测距仪016和触边开关017。存储器005、惯性测量单元006、多线激光雷达007、通信元件008、第一固态激光雷达009、第二固态激光雷达010、第一单线激光雷达011、第二单线激光雷达012、拉线编码器013、到位开关014、叉间传感器、激光测距仪016和触边开关017均与处理器004通信连接;
通信元件008用于和云平台002建立通信连接,从而接收云平台002发送的基础任务,并将基础任务存入存储器005。具体地,在本发明实施例中,通信元件008可采用3G\4G\5G等射频模块与云平台002进行通信连接。存储器005可以包括易失性存储器,例如,随机存取存储器;存储器005也可以包括非易失性存储器,例如,快闪存储器,硬盘或固态硬盘;存储器005还可以包括上述种类的存储器的组合。
处理器004用于执行存储器005中的基础任务,并根据基础任务的流程调用惯性测量单元006、多线激光雷达007、通信元件008、第一固态激光雷达009、第二固态激光雷达010、第一单线激光雷达011、第二单线激光雷达012、拉线编码器013、到位开关014、叉间传感器015、激光测距仪016和触边开关017。具体地,处理器004可以是中央处理器,网络处理器或其组合。其中,处理器004还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路,可编程逻辑器件或其组合。上述可编程逻辑器件可以是复杂可编程逻辑器件,现场可编程逻辑门阵列,通用阵列逻辑或其任意组合。
在本发明实施例中,惯性测量单元006(Inertial Measurement Unit,IMU)和多线激光雷达007(包括但不限于4线、16线、32线激光雷达)安装在无人叉车001的顶部,用于给处理器004提供执行SLAM定位技术的数据,来实现无人叉车001定位。与相关无人叉车001技术采用超宽带 (Ultra Wide-Band,UWB)定位的方案相比,本申请的定位方案无需在室内布置定位标签,成本更低、配置更容易,且可以将无人叉车001的应用场景引申到一些特殊的室外场景。
在本发明实施例中,拉线编码器013的一端固定在无人叉车001的后方下端,另一端固定在无人叉车001的货叉门架上端,当无人叉车001的货叉上下移动时,拉线编码器013的线被拉长,从而能够测量货叉的上下移动高度。通过拉线编码器013为货叉高度的准确调节奠定了基础,配合货叉调整算法,能够避免货叉因没有准确插入托盘从而对托盘和货物造成损坏。
在本发明实施例中,第一固态激光雷达009安装在货叉中间,可随货叉上下移动,用于无人叉车001的后方障碍物检测、托盘位置检测。具体地,一方面为无人叉车001的路径规划提供了可靠的视觉数据,避免无人叉车001与障碍物相撞,另一方面,对托盘的位置、托盘插孔的位置提供了可靠的视觉数据,从而令货叉高度调整与视觉数据相匹配,提高了货叉调整的准确度。固态激光雷达可以一次性实现全局成像来完成探测,无需考虑运动补偿;不需要扫描器件,成像速度更快,机械结构少集成度更高,体积小;并且对于受环境光的影响更小,探测精度能更高。
在本发明实施例中,第二固态激光雷达010安装在无人叉车001的顶部前方,用于无人叉车001的前方及侧面障碍物识别。通过第二固态激光雷达010进一步提高无人叉车001周围障碍物的识别准确率,从而提高无人叉车001路径规划的准确率。
在本发明实施例中,第一单线激光雷达011位于无人叉车001的中部左后方,第二单线激光雷达012位于无人叉车001的中部右前方,第一单线激光雷达011和第二单线激光雷达012用于障碍物的辅助识别。具体地,为了进一步提高无人叉车001识别周围障碍物的准确率,从而提高无人叉车001路径规划的准确率,还在无人叉车001的中部右前方和中部左后方安装了单线激光雷达,以辅助识别无人叉车001侧面的障碍物。
在本发明实施例中,将到位开关014安装在货叉根部位,到位开关014具体可采用压力传感器实现,当货叉完全插入托盘时,托盘边缘能够抵触到位开关014,到位开关014受到压力从而传输压力信号到处理器004,使处理器004准确识别货叉已经完全插入托盘,保证了托盘的稳定性,进而确保了货物移动过程中的稳定性。
在本发明实施例中,叉间传感器015位于货叉的尖端,用于测量货叉尖端与前方物体的距离。一方面,通过距离检测可以防止货叉的尖端与其他物体太近,造成设备损坏,另一方面,后续软件模块可通过检测的距离在货叉与托盘距离较近时控制无人叉车001停止,并对货叉的位置进行二次调整,来提高货叉插入托盘的准确率。
在本发明实施例中,激光测距仪016位于货叉的内部侧面,用于测量两货叉之间的距离,从而无人叉车001的货叉可以根据激光测距仪016测得的距离知晓货叉的宽度是否与托盘插孔的间距相匹配,从而指导处理器004灵活调整无人叉车001的货叉宽度,进一步提高货叉插入托盘的准确率。
在本发明实施例中,触边开关017的外层是弹性材料,例如橡胶,内层包括压力传感器,触边开关017在无人叉车001的正面及侧面包围一周,用于通过弹性材料降低无人叉车001的碰撞力度,达到碰撞防护的效果。同时,在发生碰撞时,通过触边开关017内的压力传感器反馈碰撞信号到处理器004,以使处理器004控制无人叉车001及时停车,将伤害降到最低。
在本发明实施例中,叉车侧面还装有一个充电刷和一个光电传感器018,光电传感器018安装在无人叉车001的侧面,用于判断无人叉车001在充电时是否准确停入充电位并符合充电条件,充电刷用于连接通电接口给无人叉车001进行充电。
如图5所示,在一些可选地实施方式中,存储器中还预先部署了用于处理器执行的软件模块,软件模块包括:车辆主控模块、业务决策模块、定位模块、托盘检测模块、路径规划模块、货叉控制模块、防护模块、充电模块、控制模块和驱动模块。通过上述软件模块,可以根据基础任务的流程进一步对基础任务进一步划分和排布,能够显著降低复杂任务指令的耦合性,对用户发出的复杂任务指令解耦,从而提高无人叉车作业的灵活性。
具体地,车辆主控模块(Vehicle control system,VCS)用于将接收的基础任务转发到业务决策模块,还用于上报无人叉车信息到云平台;
具体地,业务决策模块用于解析基础任务,并根据解析得到的任务流程调度定位模块、托盘检测模块、路径规划模块、货叉控制模块、防护模块、控制模块和驱动模块中的一个或多个,从而实现作业流程和其他场景相关功能(例如示廓灯、语音播报、状态灯、电子围栏等)。
具体地,驱动模块用于和惯性测量单元、多线激光雷达、第一固态激光雷达、第二固态激光雷达、第一单线激光雷达、第二单线激光雷达、拉线编码器、到位开关、叉间传感器、激光测距仪、触边开关和无人叉车的底盘进行通信,驱动模块即上述各种传感器设备的驱动程序总称,用于下发硬件指令和读取硬件数据。
具体地,定位模块用于根据驱动模块上传的惯性测量单元数据和多线激光雷达数据计算无人叉车位置信息。在本实施例中,计算方法采用SLAM定位技术,详细代码流程为现有技术,本实施例不再赘述。
具体地,托盘检测模块用于根据驱动模块上传的第一固态激光雷达数据、到位开关数据和叉间传感器数据确定托盘位置信息。具体通过第一固态激光雷达扫描托盘在空间中的具体位置和托盘插孔下表面高度,从而确定托盘坐标和托盘插孔高度,通过到位开关数据和叉间传感器数据能够准确计算托盘与货叉的实际距离。托盘检测模块即下达检测指令(例如命令第一固态激光雷达扫描重点扫描托盘下表面,而不是扫描前方全部环境)、接收数据、处理数据(例如进行单位转换、坐标转换等处理)和转发上述数据的软件模块。
具体地,路径规划模块用于根据业务决策模块从基础任务中解析的任务地点、驱动模块上传的第二固态激光雷达数据、第一单线激光雷达数据、第二单线激光雷达数据和定位模块计算的位置信息进行路径规划,得到目标路径。例如路径规划模块通过基础任务中解析出任务地点A和B,需要规划出从地点A到地点B的一条路径,从而根据第二固态激光雷达数据、第一单线激光雷达数据、第二单线激光雷达数据检查出的无人叉车周围障碍出,规划出一条能够躲避障碍且准确从地点A到地点B的目标路径。在本实施例中,路径规划算法包括但不限于加加速度算法、A星算法,上述路径规划算法为现有技术,本发明实施例不再赘述。
具体地,货叉控制模块用于根据驱动模块上传的拉线编码器数据、激光测距仪数据和托盘检测模块确定的托盘位置信息计算货叉的调整高度和调整宽度。本发明实施例提供的货叉控制模块,用于接收驱动模块上传的拉线编码器数据、激光测距仪数据,从而测量货叉的当前高度和当前宽度。同时,还接受托盘检测模块确定的托盘位置信息(包括托盘高度和托盘插孔中间间距),从而货叉控制模块可通过计算,确定货叉的当前高度和当前宽度需要的调整量,以使调整后的货叉高度和货叉宽度分别与托盘高度和托盘插孔中间间距相匹配,能够显著提高货叉插入托盘的准确度。
具体地,防护模块用于根据驱动模块上传的触边开关数据下发停车指令到驱动模块,起到对无人叉车的应急防护效果。
具体地,控制模块是单独对车辆底盘特征进行计算的软件程序,用于控制无人叉车的底盘运动,具体根据无人叉车的底盘特征和目标路径计算无人叉车的底盘运动信息(包括但不限于车辆轮速和转角),并下发底盘运动信息到驱动模块,以使驱动模块根据底盘运动信息控制无人叉车的底盘运动。
在一些可选地实施方式中,上述路径规划模块包括全局规划模块和局部规划模块。
在本实施例中,全局规划模块用于根据业务决策模块从基础任务中解析的任务地点进行路径规划,得到初始全局路径。具体地,全局规划模块是在不考虑无人叉车周围障碍物的条件下,只考虑起点和终点的路径规划程序,从而快速计算一个初始全局路径。
局部规划模块用于通过驱动模块上传的第二固态激光雷达数据、第一单线激光雷达数据、第二单线激光雷达数据和定位模块计算的无人叉车位置信息在初始全局路径中计算无人叉车实际行驶的目标路径。具体地,局部规划模块是结合第二固态激光雷达数据、第一单线激光雷达数据、第二单线激光雷达数据所检测的障碍物,在初始全局路径的基础上,以躲避障碍物为约束对初始全局路径进行微调,从而得到无人叉车实际行驶的目标路径。通过这一方式,可以在无人叉车行驶之前,快速计算出初始全局路径,减少无人叉车的等待时间,使无人叉车更快进入行驶状态。之后,在无人叉车行驶过程中,局部规划模块根据障碍物信息对初始全局路径进行微调的计算量会显著降低,提高了无人叉车一边行驶一边进行路径规划的实时性,不会因为无人叉车更早进入行驶状态导致路径规划不准确的问题出现。
在一些可选地实施方式中,上述软件模块还包括:
充电模块,用于根据业务决策模块从基础任务中解析的充电子任务下发充电指令到驱动模块,并解析驱动模块上报的充电机信息和电池信息。具体地,充电模块确保了无人叉车的充电任务准确执行,并根据上报的充电机信息和电池信息实现了充电问题溯源。
调试界面模块,用于显示车辆信息和手动调试控件,以通过手动调试控件接收调试指令。具体地,调试界面模块是无人叉车显示屏的UI图形模块,用于无人叉车与用户的交互,便于用户通过调试界面模块对无人叉车进行程序设置,例如显示车辆信息并搭载错误状态复位、手动充电等功能。
安全监控模块,用于监控其他软件模块,并发送异常信息到车辆主控模块,以通过车辆主控模块上报异常信息到云平台。具体地,通过安全监控模块采集无人叉车各个部件的异常信息,进一步确保无人叉车的可靠性。
在一些可选地实施方式中,本发明实施例对循迹任务、装载任务、卸载任务、泊车任务、充电任务和取消任务的基础任务之间,均间隔了原地旋转任务。具体地,考虑到室内空间有限,为了确保无人叉车执行每个基础任务时均能够正确朝向任务地点,在每个基础任务之间均添加原地旋转任务以调整无人叉车的角度,更适用于无人叉车在作业区附近调整车头方向,而不是大角度的转弯,提高无人叉车在室内空间作业的可靠性。
在一些可选地实施方式中,如图6所示,当云平台下发循迹任务时,处理器执行基础任务包括:
步骤a1,将基础任务通过车辆主控模块转发至业务决策模块,并通过业务决策模块根据基础任务中记录的托盘位置信息确定准备点,准备点表示从托盘位置向外直线延伸预设距离的点位。
步骤a2,通过业务决策模块将准备点发送至全局规划模块,并通过全局规划模块根据准备点规划第一路径;
步骤a3,通过全局规划模块将第一路径发送至业务决策模块,并通过业务决策模块根据第一路径计算第一旋转姿态;
步骤a4,通过业务决策模块将第一旋转姿态发送到局部规划模块,并通过局部规划模块根据第一旋转姿态发送旋转指令到控制模块,以使控制模块调用驱动模块调整无人叉车的角度;
步骤a5,当通过业务决策模块接收到控制模块反馈的第一旋转姿态调整结果时,通过业务决策模块发送第一路径到局部规划模块;
步骤a6,通过局部规划模块在第一路径中计算无人叉车实际行驶的第二路径,并生成第二路径对应的第一循迹指令;
步骤a7,通过局部规划模块下发第一循迹指令到控制模块,以使控制模块调用驱动模块将无人叉车运动到准备点。
同时,如图7所示,当云平台下发装载任务时,处理器执行基础任务包括:
步骤a8,将基础任务通过车辆主控模块转发至业务决策模块,并通过业务决策模块计算第二旋转姿态,将第二旋转姿态发送到局部规划模块;
步骤a9,通过局部规划模块根据第二旋转姿态发送旋转指令到控制模块,以使控制模块调用驱动模块调整无人叉车朝向托盘插孔的方向;
步骤a10,当通过业务决策模块接收到控制模块反馈的第二旋转姿态调整结果时,通过业务决策模块调用托盘检测模块和货叉控制模块对货叉位置进行一次调整,使货叉和托盘插孔对齐;
步骤a11,通过业务决策模块根据基础任务中记录的托盘位置信息确定目标点,目标点表示货叉插入托盘时无人叉车的点位;
步骤a12,通过业务决策模块将目标点发送至全局规划模块,并通过全局规划模块规划从准备点到目标点的第三路径;
步骤a13,通过全局规划模块将第三路径发送至业务决策模块,并通过业务决策模块将第三路径发送到局部规划模块;
步骤a14,通过局部规划模块在第三路径中计算无人叉车实际行驶的第四路径,并生成第四路径对应的第二循迹指令;
步骤a15,通过局部规划模块下发第二循迹指令到控制模块,以使控制模块调用驱动模块将无人叉车运动到目标点;
步骤a16,在无人叉车运动到目标点的过程中,同时通过业务决策模块接收托盘检测模块反馈的托盘位置信息,并在托盘位置信息表征无人叉车与托盘的距离小于预设阈值时,通过业务决策模块发送停车指令到驱动模块,以控制无人叉车暂停行驶;
步骤a17,通过业务决策模块调用托盘检测模块和货叉控制模块对货叉位置进行二次调整,使货叉和托盘插孔对齐;
步骤a18,通过业务决策模块发送恢复指令到驱动模块,以控制无人叉车恢复行驶,直至行驶到目标点;
步骤a19,通过所述业务决策模块发送抬升指令到所述货叉控制模块。
具体地,在叉车作业现场可能存在同种货物托盘因载货重量不同,插孔焊接位置不同所导致的插孔间宽度及高度不一致的情况,相关技术均是指示无人叉车的货叉使用预设的插孔宽度和高度进行插货,这一方案可能导致货叉与托盘发生碰撞,存在安全隐患。基于此,当无人叉车需要对行驶到目标地点并对目标地点的托盘进行装载时,本发明实施例通过循迹任务和装载任务两个基础任务完成。在本发明实施例中,配置的循迹任务是命令无人叉车从起始点行驶到托盘附近的准备点,而不直接命令无人叉车行驶到货叉插入托盘的目标点,准备点是业务决策模块根据实际托盘位置坐标从托盘位置向外直线延伸预设距离后计算的点位。一方面,在无人叉车装载货物之前,能够在准备点的位置对货叉进行二次调整,提高货叉插入托盘插孔的准确率,另一方面,如果没有设置准备点,可能车辆行驶到距离托盘很近的位置时托盘检测模块还来不及工作,等托盘检测模块工作时导致固态激光雷达无法完全照到托盘,从而检测失败。确定准备点后,本发明实施例通过全局规划模块规划从车辆起点到准备点的第一路径,然后将第一路径反馈给业务决策模块,业务决策模块可初步校验第一路径的数据是否存在问题,然后转发第一路径到局部规划模块,以使无人叉车先按照第一路径开始行驶,尽快进入行驶状态。在将第一路径发送到局部规划模块之前,本发明实施例还并通过业务决策模块根据第一路径(例如根据第一路径的终点和整体趋势)计算第一旋转姿态,同时通过业务决策模块将第一旋转姿态发送到局部规划模块,并通过局部规划模块根据第一旋转姿态发送旋转指令到控制模块,以使控制模块计算相应的轮胎速度和转角等底盘运动信息,然后通过控制模块调用驱动模块来调整无人叉车的角度,便于无人叉车在行驶之前先原地旋转到准备点的朝向,避免无人叉车在行驶过程中出现大角度转弯,不适应室内小场地环境。当通过业务决策模块接收到控制模块反馈的第一旋转姿态调整结果,表征无人叉车旋转完成时,再通过业务决策模块发送第一路径到局部规划模块。之后,局部规划模块实时接收无人叉车遇到的障碍物信息,并根据无人叉车附近的障碍物信息在第一路径的基础上实时对第一路径进行微调,从而计算无人叉车实际行驶的第二路径,值得注意的是,第二路径是实时生成的局部路径。局部规划模块按照第二路径生成对应的第一循迹指令,在这一过程中,通过局部规划模块实时下发第一循迹指令到控制模块,以使控制模块调用驱动模块将无人叉车运动到准备点。通过本发明实施例提供的方案,不仅令无人叉车尽早进入行驶状态,提高作业效率,还通过微调第一路径的低计算量保证了行驶任务和路径规划任务同时进行的实时性。
具体地,循迹任务完成后,处理器继续执行装载任务,本实施例提供的装载任务对货叉的位置多次调整,来保证货叉能够准确插入托盘插孔。在执行装载任务时,首先执行一次原地旋转任务,以使无人叉车在准备点位置能够准确朝向目标点的位置,避免大幅度转弯。具体通过业务决策模块计算第二旋转姿态,将第二旋转姿态发送到局部规划模块,通过局部规划模块根据第二旋转姿态发送旋转指令到控制模块,以使控制模块调用驱动模块调整无人叉车朝向托盘插孔的方向,详细过程可参考上述关于第一旋转姿态的解释,在此不再赘述。
之后,先通过业务决策模块调用托盘检测模块和货叉控制模块对货叉位置进行一次调整,使货叉和托盘插孔初步对齐(例如将货叉的宽度或高度先调整到预设标准位置)。然后规划从准备点到目标点的路径,控制无人叉车从准备点行驶到目标点。路径规划的原理与上述控制无人叉车从起始点到准备点的原理相同,在此不再赘述。需要注意的是,本发明实施例在通过局部规划模块下发第二循迹指令到控制模块以控制无人叉车运动到目标点的过程当中,同时通过业务决策模块接收托盘检测模块反馈的托盘位置信息,用来识别无人叉车的货叉和托盘之间的距离,当托盘位置信息表征无人叉车与托盘的距离小于预设阈值时(例如5cm~10cm),直接通过业务决策模块发送停车指令到驱动模块,以控制无人叉车暂停行驶,进而通过业务决策模块调用托盘检测模块和货叉控制模块对货叉位置进行二次调整,使货叉和托盘插孔完全对齐。当货叉和托盘插孔完全对齐时,再通过业务决策模块发送恢复指令到驱动模块,以控制无人叉车恢复行驶,直至行驶到目标点。需要注意的是,本发明实施例在检测到无人叉车与托盘的距离小于预设阈值时,不通过控制模块停止无人叉车,而直接通过驱动模块暂停车辆,这是因为局部规划停车为缓停控制,控制模块需要几个周期的响应才能令无人叉车停下,并不适用于急停,而直接将停车指令发送到驱动模块,停车响应会更快,更适用于需要货叉二次调整的场景。
如图7所示,在本发明实施例中,上述步骤a10,包括:
步骤b1,通过业务决策模块下发标准高度到货叉控制模块,以使货叉控制模块根据当前货叉高度发送第一调整指令到驱动模块,标准高度通过业务决策模块从基础任务中提取;
步骤b2,通过业务决策模块下发宽度检测指令到托盘检测模块;
步骤b3,通过业务决策模块接收托盘检测模块根据宽度检测指令反馈的托盘插孔中心间距;
步骤b4,通过业务决策模块下发托盘插孔中心间距到货叉控制模块,以使货叉控制模块根据当前货叉间距和托盘插孔中心间距的差异发送第二调整指令到驱动模块。
如图7所示,在本发明实施例中,上述步骤a17,包括:
步骤c1,通过业务决策模块下发高度检测指令到托盘检测模块;
步骤c2,通过业务决策模块接收托盘检测模块根据高度检测指令反馈的货叉上表面到插孔上沿的下表面高度差值;
步骤c3,通过业务决策模块下发高度差值到货叉控制模块,以使货叉控制模块根据高度差值发送第三调整指令到驱动模块。
具体地,考虑到同一型号的托盘之间插孔高度通常存在细微差别,插孔宽度差别更大。因此,在货叉一次调整时,本发明实施例通过云平台下发标准插孔高度,先令无人叉车将火车调整到标准高度,同时通过业务决策模块下发宽度检测指令到托盘检测模块。托盘检测模块响应于宽度检测指令,通过驱动模块调用第一固态激光雷达检测到托盘插孔中心间距,然后反馈托盘插孔中心间距给业务决策模块。之后通过业务决策模块下发托盘插孔中心间距到货叉控制模块,以使货叉控制模块根据激光测距仪读取当前货叉间距,并计算当前货叉间距和托盘插孔中心间距的差异,从而发送第二调整指令到驱动模块,调整到货叉间距与托盘插孔中心间距相匹配。之后,在货叉二次调整时,托盘检测模块响应于高度检测指令,以货叉上表面作为基准值,通过驱动模块调用第一固态激光雷达检测到托盘插孔中心间距检测货叉上表面与插孔上沿的距离,在二次托盘检测后根据检测结果上下微调货叉高度,消除托盘差异带来的影响。
在装载任务的最后,本发明实施例还通过业务决策模块发送抬升指令到货叉控制模块,货叉控制模块响应于抬升指令会通过驱动模块控制无人叉车抬升货物。之后,按照规划准备点的方式规划到退出点的退出路径,通过全局规划模块、局部规划模块和控制模块,控制无人叉车行驶到退出点。其中,无人叉车行驶到退出点的过程与行驶到准备点的控制方法相同,详细流程可参考图7与上述实施例路径规划的相关描述,在此不再赘述。
为了便于理解,下面以一个具体地循迹任务和装载任务应用实施例对本申请的技术方案进行描述:
第一步:如图8所示,处理器根据云平台给出的托盘大概位置计算出准备点位姿,并请求全局规划路径。图中x、y、 分别托盘在车身坐标系下的横坐标、纵坐标和方向角,L是准备点到托盘的距离。
第二步:原地旋转。
第三步:行驶至准备点。
第四步:原地旋转。
第五步:如图9所示,调整货叉高度为标准高度,根据托盘检测模块的检测数据调整货叉宽度。
第六步:如图10所示,请求全局规划路径,从准备点行驶至目标点,同时在托盘面前d=5cm-10cm处暂停车辆。
第七步:请求二次托盘检测,获取货叉上沿与插孔上沿间距离,并根据托盘检测返回结果及货叉当前高度重新调整货叉高度。
第八步:如图11所示,恢复行驶,无人叉车行驶到目标点,将货叉插入托盘。
第九步:货叉抬升至云控下发的装载高度。
第十步:如图12所示,叉车带货沿直线行驶至退出点,完成装载任务,图中字母l表示退出点到托盘的距离。
本发明实施例提供的方案,与相关技术相比,本申请中的任务颗粒度更小,基础任务的流程通用性好,拆解后的软件模块可以做到算法与场景解耦,更方便扩展迁移,组合实现复杂业务场景。同时对叉车装载作业流程进行了优化,增加了插孔高度和插孔宽度的识别。另外,本发明实施例增加了货叉根据以上数据进行二次调节的流程,减小现场同款托盘非标准化(插孔宽度和高度存在差异)导致的插取失败风险。
本发明实施例还提供了一种计算机可读存储介质,上述根据本发明实施例的方法可在硬件、固件中实现,或者被实现为可记录在存储介质,或者被实现通过网络下载的原始存储在远程存储介质或非暂时机器可读存储介质中并将被存储在本地存储介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件的存储介质上的这样的软件处理。其中,存储介质可为磁碟、光盘、只读存储记忆体、随机存储记忆体、快闪存储器、硬盘或固态硬盘等;进一步地,存储介质还可以包括上述种类的存储器的组合。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件,当软件或计算机代码被计算机、处理器或硬件访问且执行时,实现上述实施例示出的方法。
虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
Claims (6)
1.一种无人叉车系统,其特征在于,所述系统包括:无人叉车、云平台和客户端;
所述客户端用于发送复杂任务指令到所述云平台;
所述云平台用于接收客户端发送的复杂任务指令,并对所述复杂任务指令进行分析和拆解,将所述复杂任务指令按照时间顺序拆解为若干基础任务的组合,并依次下发所述基础任务到所述无人叉车,所述基础任务是循迹任务、装载任务、卸载任务、泊车任务、充电任务和取消任务中的一个,所述基础任务是云平台中预先部署的任务程序,能够通过所述无人叉车直接运行;
所述无人叉车用于接收所述云平台发送的基础任务,并运行所述基础任务;
所述无人叉车包括处理器、存储器、惯性测量单元、多线激光雷达、通信元件、第一固态激光雷达、第二固态激光雷达、第一单线激光雷达、第二单线激光雷达、拉线编码器、到位开关、叉间传感器、激光测距仪和触边开关;
所述存储器、惯性测量单元、多线激光雷达、通信元件、第一固态激光雷达、第二固态激光雷达、第一单线激光雷达、第二单线激光雷达、拉线编码器、到位开关、叉间传感器、激光测距仪和触边开关均与所述处理器通信连接;
所述通信元件用于和所述云平台建立通信连接,从而接收所述云平台发送的基础任务,并将所述基础任务存入所述存储器;
所述处理器用于执行所述存储器中的基础任务,并根据所述基础任务的流程调用所述惯性测量单元、多线激光雷达、通信元件、第一固态激光雷达、第二固态激光雷达、第一单线激光雷达、第二单线激光雷达、拉线编码器、到位开关、叉间传感器、激光测距仪和触边开关;
所述惯性测量单元和所述多线激光雷达安装在所述无人叉车的顶部,用于给所述处理器提供执行SLAM定位技术的数据来实现无人叉车定位;
所述拉线编码器的一端固定在无人叉车的后方下端,另一端固定在无人叉车的货叉门架上端,当无人叉车的货叉上下移动时,所述拉线编码器的线被拉长,用于测量货叉的上下移动高度;
所述第一固态激光雷达安装在所述货叉中间,可随所述货叉上下移动,用于无人叉车的后方障碍物检测、托盘位置检测;
所述第二固态激光雷达安装在所述无人叉车的顶部前方,用于无人叉车的前方及侧面障碍物识别;
所述第一单线激光雷达位于无人叉车的中部左后方,所述第二单线激光雷达位于无人叉车的中部右前方,所述第一单线激光雷达和所述第二单线激光雷达用于障碍物的辅助识别;
所述到位开关位于所述货叉根部,用于识别货叉是否完全插入托盘;
所述叉间传感器位于所述货叉的尖端,用于测量货叉尖端与前方物体的距离;
所述激光测距仪位于所述货叉的内部侧面,用于测量两货叉之间的距离,
所述触边开关的外层是弹性材料,内层包括压力传感器,所述触边开关包围在无人叉车的正面及侧面,用于无人叉车的碰撞防护,并在发生碰撞时,反馈碰撞信号到所述处理器;
所述存储器中预先部署了用于所述处理器执行的软件模块,所述软件模块包括:车辆主控模块、业务决策模块、定位模块、托盘检测模块、路径规划模块、货叉控制模块、防护模块、充电模块、控制模块和驱动模块;
所述车辆主控模块用于将接收的所述基础任务转发到所述业务决策模块,还用于上报无人叉车信息到云平台;
所述业务决策模块用于解析所述基础任务,并根据解析得到的流程调用定位模块、托盘检测模块、路径规划模块、货叉控制模块、防护模块、控制模块和驱动模块中的一个或多个;
所述驱动模块用于和惯性测量单元、多线激光雷达、第一固态激光雷达、第二固态激光雷达、第一单线激光雷达、第二单线激光雷达、拉线编码器、到位开关、叉间传感器、激光测距仪、触边开关和无人叉车的底盘进行通信,以下发硬件指令和读取硬件数据;
所述定位模块用于根据驱动模块上传的惯性测量单元数据和多线激光雷达数据计算无人叉车位置信息;
所述托盘检测模块用于根据驱动模块上传的第一固态激光雷达数据、到位开关数据和叉间传感器数据确定托盘位置信息;
所述路径规划模块用于根据业务决策模块从所述基础任务中解析的任务地点、驱动模块上传的第二固态激光雷达数据、第一单线激光雷达数据、第二单线激光雷达数据和所述定位模块计算的位置信息进行路径规划,得到目标路径;
所述货叉控制模块用于根据驱动模块上传的拉线编码器数据、激光测距仪数据和所述托盘检测模块确定的托盘位置信息计算货叉的调整高度和调整宽度;
所述防护模块用于根据驱动模块上传的触边开关数据下发停车指令到所述驱动模块;
所述控制模块用于根据无人叉车的底盘特征和所述目标路径计算无人叉车的底盘运动信息,并下发所述底盘运动信息到所述驱动模块,以使所述驱动模块根据所述底盘运动信息控制无人叉车的底盘运动;
所述路径规划模块包括全局规划模块和局部规划模块;
所述全局规划模块用于根据业务决策模块从所述基础任务中解析的任务地点进行路径规划,得到初始全局路径;
所述局部规划模块用于通过驱动模块上传的第二固态激光雷达数据、第一单线激光雷达数据、第二单线激光雷达数据和所述定位模块计算的无人叉车位置信息在所述初始全局路径中计算无人叉车实际行驶的所述目标路径;
当所述云平台下发的基础任务是循迹任务时,所述处理器执行所述基础任务用于将所述无人叉车运动到准备点;
当所述云平台下发的基础任务是装载任务时,所述处理器执行所述基础任务包括:通过所述业务决策模块调用所述托盘检测模块和所述货叉控制模块对货叉位置进行一次调整,使货叉和托盘插孔对齐;通过所述业务决策模块根据所述基础任务中记录的托盘位置信息确定目标点,所述目标点表示货叉插入托盘时无人叉车的点位;通过所述业务决策模块将所述目标点发送至所述全局规划模块,并通过所述全局规划模块规划从所述准备点到所述目标点的第三路径;通过所述全局规划模块将所述第三路径发送至所述业务决策模块,并通过所述业务决策模块将所述第三路径发送到所述局部规划模块;通过所述局部规划模块在所述第三路径中计算无人叉车实际行驶的第四路径,并生成所述第四路径对应的第二循迹指令;通过所述局部规划模块下发所述第二循迹指令到所述控制模块,以使所述控制模块调用所述驱动模块将所述无人叉车运动到所述目标点;在所述无人叉车运动到所述目标点的过程中,同时通过所述业务决策模块接收所述托盘检测模块反馈的托盘位置信息,并在托盘位置信息表征无人叉车与托盘的距离小于预设阈值时,通过所述业务决策模块发送停车指令到所述驱动模块,以控制无人叉车暂停行驶;通过所述业务决策模块调用所述托盘检测模块和所述货叉控制模块对货叉位置进行二次调整,使货叉和所述托盘插孔对齐;通过所述业务决策模块发送恢复指令到所述驱动模块,以控制无人叉车恢复行驶,直至行驶到所述目标点;通过所述业务决策模块发送抬升指令到所述货叉控制模块;
通过所述业务决策模块调用所述托盘检测模块和所述货叉控制模块对货叉位置进行一次调整,包括:通过所述业务决策模块下发标准高度到所述货叉控制模块,以使所述货叉控制模块根据当前货叉高度发送第一调整指令到所述驱动模块,所述标准高度通过所述业务决策模块从基础任务中提取;通过所述业务决策模块下发宽度检测指令到所述托盘检测模块;通过所述业务决策模块接收所述托盘检测模块根据所述宽度检测指令反馈的托盘插孔中心间距;通过所述业务决策模块下发所述托盘插孔中心间距到所述货叉控制模块,以使所述货叉控制模块根据当前货叉间距和所述托盘插孔中心间距的差异发送第二调整指令到所述驱动模块。
2.根据权利要求1所述的系统,其特征在于,所述软件模块还包括:
充电模块,用于根据业务决策模块从所述基础任务中解析的充电子任务下发充电指令到所述驱动模块,并解析所述驱动模块上报的充电机信息和电池信息;
调试界面模块,用于显示车辆信息和手动调试控件,以通过所述手动调试控件接收调试指令;
安全监控模块,用于监控其他软件模块,并发送异常信息到所述车辆主控模块,以通过所述车辆主控模块上报异常信息到所述云平台。
3.根据权利要求1所述的系统,其特征在于,在所述循迹任务、装载任务、卸载任务、泊车任务、充电任务和取消任务的基础任务之间,均间隔了原地旋转任务。
4.根据权利要求3所述的系统,其特征在于,当所述云平台下发的基础任务是循迹任务时,所述处理器执行所述基础任务包括:
将所述基础任务通过所述车辆主控模块转发至所述业务决策模块,并通过所述业务决策模块根据所述基础任务中记录的托盘位置信息确定准备点,所述准备点表示从托盘位置向外直线延伸预设距离的点位;
通过所述业务决策模块将所述准备点发送至所述全局规划模块,并通过所述全局规划模块根据所述准备点规划第一路径;
通过所述全局规划模块将所述第一路径发送至所述业务决策模块,并通过所述业务决策模块根据所述第一路径计算第一旋转姿态;
通过所述业务决策模块将所述第一旋转姿态发送到所述局部规划模块,并通过所述局部规划模块根据所述第一旋转姿态发送旋转指令到所述控制模块,以使所述控制模块调用所述驱动模块调整无人叉车的角度;
当通过所述业务决策模块接收到所述控制模块反馈的第一旋转姿态调整结果时,通过所述业务决策模块发送所述第一路径到所述局部规划模块;
通过所述局部规划模块在所述第一路径中计算无人叉车实际行驶的第二路径,并生成所述第二路径对应的第一循迹指令;
通过所述局部规划模块下发所述第一循迹指令到所述控制模块,以使所述控制模块调用所述驱动模块将所述无人叉车运动到所述准备点。
5.根据权利要求3所述的系统,其特征在于,在所述通过所述业务决策模块调用所述托盘检测模块和所述货叉控制模块对货叉位置进行一次调整之前,还包括:
将所述基础任务通过所述车辆主控模块转发至所述业务决策模块,并通过所述业务决策模块响应于所述基础任务计算第二旋转姿态,之后将所述第二旋转姿态发送到所述局部规划模块;
通过所述局部规划模块根据所述第二旋转姿态发送旋转指令到所述控制模块,以使所述控制模块调用所述驱动模块调整无人叉车朝向托盘插孔的方向;
当通过所述业务决策模块接收到所述控制模块反馈的第二旋转姿态调整结果时,执行所述通过所述业务决策模块调用所述托盘检测模块和所述货叉控制模块对货叉位置进行一次调整的步骤。
6.根据权利要求1所述的系统,其特征在于,所述通过所述业务决策模块调用所述托盘检测模块和所述货叉控制模块对货叉位置进行二次调整,包括:
通过所述业务决策模块下发高度检测指令到所述托盘检测模块;
通过所述业务决策模块接收所述托盘检测模块根据所述高度检测指令反馈的货叉上表面到插孔上沿的下表面高度差值;
通过所述业务决策模块下发所述高度差值到所述货叉控制模块,以使所述货叉控制模块根据所述高度差值发送第三调整指令到所述驱动模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310809633.6A CN116540744B (zh) | 2023-07-04 | 2023-07-04 | 一种无人叉车系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310809633.6A CN116540744B (zh) | 2023-07-04 | 2023-07-04 | 一种无人叉车系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116540744A CN116540744A (zh) | 2023-08-04 |
CN116540744B true CN116540744B (zh) | 2023-09-08 |
Family
ID=87454485
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310809633.6A Active CN116540744B (zh) | 2023-07-04 | 2023-07-04 | 一种无人叉车系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116540744B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117950393A (zh) * | 2024-03-27 | 2024-04-30 | 江苏瀚天智能科技股份有限公司 | 基于LoRa技术的叉车作业控制优化方法及装置 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109062202A (zh) * | 2018-07-24 | 2018-12-21 | 北京京东尚科信息技术有限公司 | 基于物联网驱动的智能仓储配送系统 |
CN111796589A (zh) * | 2019-04-04 | 2020-10-20 | 上海快仓智能科技有限公司 | 导航控制方法、智能仓储系统和自动引导车 |
CN111913483A (zh) * | 2020-07-24 | 2020-11-10 | 江苏智库智能科技有限公司 | 一种用于四向穿梭车上的调度系统及其方法 |
CN113104459A (zh) * | 2021-02-24 | 2021-07-13 | 江苏安方电力科技有限公司 | 一种基于信息汇聚的仓储设备管控平台 |
CN114648177A (zh) * | 2022-04-27 | 2022-06-21 | 广东龙眼数字科技有限公司 | 一种叉车智能任务管理方法及系统 |
CN115108498A (zh) * | 2022-05-13 | 2022-09-27 | 浙江中力机械股份有限公司 | 一种自动堆垛的仓储叉车机器人系统的控制方法及系统 |
CN115576331A (zh) * | 2022-12-07 | 2023-01-06 | 深圳海星智驾科技有限公司 | 工程机械的自动驾驶作业方法、装置、电子设备及系统 |
CN115826580A (zh) * | 2022-12-26 | 2023-03-21 | 未来机器人(深圳)有限公司 | 货物装卸方法及装置、设备、存储介质 |
CN115924798A (zh) * | 2022-12-20 | 2023-04-07 | 广东嘉腾机器人自动化有限公司 | 一种基于视觉识别的叉车agv取货车货物方法及系统 |
-
2023
- 2023-07-04 CN CN202310809633.6A patent/CN116540744B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109062202A (zh) * | 2018-07-24 | 2018-12-21 | 北京京东尚科信息技术有限公司 | 基于物联网驱动的智能仓储配送系统 |
CN111796589A (zh) * | 2019-04-04 | 2020-10-20 | 上海快仓智能科技有限公司 | 导航控制方法、智能仓储系统和自动引导车 |
CN111913483A (zh) * | 2020-07-24 | 2020-11-10 | 江苏智库智能科技有限公司 | 一种用于四向穿梭车上的调度系统及其方法 |
CN113104459A (zh) * | 2021-02-24 | 2021-07-13 | 江苏安方电力科技有限公司 | 一种基于信息汇聚的仓储设备管控平台 |
CN114648177A (zh) * | 2022-04-27 | 2022-06-21 | 广东龙眼数字科技有限公司 | 一种叉车智能任务管理方法及系统 |
CN115108498A (zh) * | 2022-05-13 | 2022-09-27 | 浙江中力机械股份有限公司 | 一种自动堆垛的仓储叉车机器人系统的控制方法及系统 |
CN115576331A (zh) * | 2022-12-07 | 2023-01-06 | 深圳海星智驾科技有限公司 | 工程机械的自动驾驶作业方法、装置、电子设备及系统 |
CN115924798A (zh) * | 2022-12-20 | 2023-04-07 | 广东嘉腾机器人自动化有限公司 | 一种基于视觉识别的叉车agv取货车货物方法及系统 |
CN115826580A (zh) * | 2022-12-26 | 2023-03-21 | 未来机器人(深圳)有限公司 | 货物装卸方法及装置、设备、存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116540744A (zh) | 2023-08-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110974088B (zh) | 扫地机器人控制方法、扫地机器人及存储介质 | |
US20200229344A1 (en) | Visual obstacle avoidance method for robot mower, robot, control device, and storage medium | |
US9563204B2 (en) | Mower with object detection system | |
US10291765B2 (en) | Mobile device, robot cleaner, and method for controlling the same | |
CN116540744B (zh) | 一种无人叉车系统 | |
US20100070179A1 (en) | Providing an autonomous position of a point of interest to a lifting device to avoid collision | |
EP3627461A1 (en) | Information processing method and apparatus, electronic device, and storage medium | |
CN106462161A (zh) | 自主型移动机器人 | |
EP3950566B1 (en) | High-position robot, method for calibrating return of storage container, and storage medium | |
CN111123964B (zh) | 一种无人机降落方法、设备以及计算机可读介质 | |
US20220292444A1 (en) | Inventory checking apparatus, backend apparatus, inventory checking management system, and inventory checking method | |
CN111990930B (zh) | 一种测距方法、装置、机器人和存储介质 | |
CN108767933A (zh) | 一种用于充电的控制方法及其装置、存储介质和充电设备 | |
CN110189546A (zh) | 一种车辆定位方法及车辆定位系统 | |
CN108282011A (zh) | 一种机器人充电方法、机器人和充电桩 | |
CN112886670A (zh) | 机器人的充电控制方法、装置、机器人及存储介质 | |
US9156167B2 (en) | Determining an autonomous position of a point of interest on a lifting device | |
EP4206849A1 (en) | Autonomous mobile device and method for controlling same | |
CN116358522A (zh) | 局部地图生成方法和装置、机器人、计算机可读存储介质 | |
CN114879691A (zh) | 自行走机器人的控制方法、存储介质和自行走机器人 | |
CN114947627A (zh) | 扫地机imu初始化的判定方法、装置、设备及存储介质 | |
CN114550488A (zh) | 一种基于机器人的空车位巡逻方法及装置 | |
CN111759231A (zh) | 清洁设备的控制方法与清洁设备 | |
WO2023246688A1 (zh) | 异常区域标定方法及相关装置 | |
CN114633826B (zh) | 一种足式机器人腿部磕碰处理的方法及足式机器人 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |