【技术实现步骤摘要】
一种无人特种车辆控制系统代码生成方法
[0001]本专利技术属于计算机
,涉及一种无人特种车辆控制系统代码生成方法
。
技术介绍
[0002]无人特种车辆控制系统是其关键技术之一,控制系统的开发是一项复杂且耗时的任务,通常需要手动编写大量的代码,开发周期长,且容易出错
。
而且,系统需求和功能的变化也需要频繁地修改和更新代码,这进一步增加了开发和维护的成本
。
[0003]中国专利申请:车辆控制系统代码自动生成方法
、
装置
、
存储介质和电子设备
(
申请号:
202211017489.4)
公开了一种车辆控制系统代码自动生成方法,解析并识别系统描述文件,利用命令脚本组合进行自动化生成代码,该方法仅考虑了车辆底盘控制系统代码,并未涉及任务模块代码生成
。
[0004]中国专利申请:一种基于通讯
CAN
的自动代码生成方法
、
工具及电子设备
(
申请号
202211441716.6)
公开了一种
CAN
通信的自动代码生成方法,解析
DBC
文件,图形化一对一关联
CAN
信号,利用代码模板生成关联后的
CAN
通信
C
语言源代码
。
该方法仅考虑了
CAN
通信的解析与封装,未考虑
TCP/IP
等 ...
【技术保护点】
【技术特征摘要】
1.
一种无人特种车辆控制系统代码生成方法,其特征在于:包括以下步骤:
S1
:构造作业任务
、
无人特种车辆模型与控制协议的描述文件;
S2
:将任务库
、
作业流程
、
车辆模型
、
算法参数进行关联,得到与底层通信协议无关的中间配置文件;
S3
:将中间配置文件中各阶段任务的车辆动作在指定通信协议下做指令映射;将各指令进行封装与解析,根据相应通信协议的描述生成源代码,最后生成主函数,并生成相应
CMake
文件和
launch
启动文件
。2.
根据权利要求1所述的无人特种车辆控制系统代码生成方法,其特征在于:步骤
S1
中,所述作业任务包括静态任务与动态任务,并分为业务场景任务
Task
busi
、
交通场景任务
Task
trav
和第三方任务
Task
other
;所述业务场景任务要素包括起点
Pos
start
、
终点
Pos
end
、
行驶路线的全局路径段
S
global
=
{S1,S2,S3,...,S
k
}
以及各路段参考速度
V
refer
=
{V1,V2,V3,...,V
k
}
,并使用任务类型
Task
type
和任务号
Task
id
;所述业务场景任务由一个六元组描述:
Task
busi
=
{Task
type
,Teak
id
,Pos
start
,Pos
end
,S
global
,V
refer
}
所述交通场景任务的要素包括任务区间
Task
section
、
停止点
Point
stop
、
场景状态
State
i
,并使用任务类型
Task
type
和任务号
Task
id
,交通场景任务由一个五元组描述:
Task
traffic
=
{Task
type
,Task
id
,Task
section
,Point
stop
,State
i
}
其中,交通场景分为交通灯
、
道闸以及停车场景,场景状态根据不同场景被描述为不同的状态集合,分别为绿灯剩余时间
{Task
green
}、
闸门序号和闸门状态
{Gate
id
,Gate
state
}、
道路宽度
、
车位长度和车位宽度
{C
L
,S
L
,S
W
}
;所述第三方任务的要素包括任务区间
Task
section
、
任务类型
Task
type
、
任务号
Task
id
、
触发条件
Cond
以及第三方系统提供的任务实现
Func
,第三方任务由一个五元组描述:
Task
other
=
{Task
type
,Task
id
,Task
section
,Cond,Func}。3.
根据权利要求1所述的无人特种车辆控制系统代码生成方法,其特征在于:车辆模型描述文件包括运动学模型
Modle
kin
、
横向控制算法参数
Lat
p
、
纵向控制算法参数
Lon
p
;车辆模型描述由一个三元组表示:
System
=
{Modle
kin
,Lat
p
,Lon
p
}
其中,车辆运动学模型参数集合包括车长
、
车宽
、
轴距
、
轮距以及轮胎半径,依次表示为
{Length
vel
,Width
vel
,Wheelbase
vel
,Wheeltread
vel
,Radius
tire
}
;横向控制参数集合包括
ROS
操作系统中全局跟踪路径的话题
、
定位信息的话题
、
转向比以及转向速度,依次表示为:
{Topic
tra
,Topic
loc
,Steeringangle
vel
,Turning...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。