一种自动驾驶汽车的控制系统、方法及微控制器与流程

文档序号:11198487阅读:1429来源:国知局
一种自动驾驶汽车的控制系统、方法及微控制器与流程

本发明涉及汽车技术领域,尤其涉及一种自动驾驶汽车的控制系统、方法及微控制器。



背景技术:

无人驾驶汽车技术在现阶段还不够成熟,在实际操作中还有诸多限制,当汽车处于无人驾驶状态行驶时,其可自动检测驾驶环境的变化,以判断是否退回人工驾驶模式,驾驶员无需一直对汽车的控制系统进行监视。

专利公开号为cn201387545的专利公开了一种技术方案:设计了一种电动汽车智能控制装置,包括工业控制计算机(后面简称:工控机)和电子线路控制,当工控机通过can总线和can路由器同时作用于汽车内的can总线时,工控机作为常规使用,can路由器作为备用,与can总线和can路由器连接的器件包括:助力转向器、动力驱动器、电力管理器、安全器以及其它可扩展应用器等。工控机通过can总线连接的传感器即时采集数据,对汽车各部分设备进行实时监测和控制。该专利公开的技术方案有这些不足:虽然汽车可以采集数据,但是汽车上与can总线连接的设备很多,各工控机与汽车的各设备之间都通过can总线进行通讯,导致工控机与各设备之间的通讯负载大,通讯周期长,进而导致工控机处理数据的时间开销相应增大,对汽车的控制周期变长,不利于无人驾驶这样的复杂控制以及危险情形下的实时控制。



技术实现要素:

本发明所要解决的技术问题在于,提供一种自动驾驶汽车的控制系统、方法及微控制器,以降低上位机系统与微控制器之间的通讯负荷,提高上位机系统与微控制器及车辆内连接到can总线的各设备之间的通讯效率。

为解决上述技术问题,本发明提供的一种自动驾驶汽车的微控制器,其特征在于,包括:主处理器、协处理器以及can控制器,其中:

所述can控制器与所述协处理器、所述主处理器通信连接,用于接收can报文并转发至所述协处理器;

所述协处理器用于中断接收所述can控制器转发的所述can报文及来自i/o接口的i/o输入信号,并解析所述can报文及i/o输入信号得到对应的控制信息,且将所述控制信息输送至所述主处理器;

所述主处理器用于将所述控制信息进行处理得到对应的控制输出指令,并将所述控制输出指令通过i/o接口发送至用于控制自动驾驶汽车的声光、启动及电子驻车的第二车辆控制器,或者将所述控制输出指令通过所述can控制器发送至用于控制自动驾驶汽车行驶的第一车辆控制器。

本发明提供的一种自动驾驶汽车的控制系统,包括有:第一can收发器、硬线信号输入电路以及微控制器,其中:所述第一can收发器用于接收上位机系统或遥控装置发送的can报文,并将所述can报文发送至所述微控制器;

所述硬线信号输入电路与所述微控制器通信连接,用于将自动驾驶汽车上的按键行为转化为所述微控制器可识别的硬线信号,并将所述硬线信号作为i/o输入信号通过i/o接口输入至所述微控制器;

所述微控制器包括:主处理器、协处理器以及can控制器,其中:

所述can控制器与所述协处理器、所述主处理器通信连接,用于接收所述第一can收发器发送的can报文并将其转发至所述协处理器;

所述协处理器用于中断接收所述can控制器转发的所述can报文及来自i/o接口的i/o输入信号,并解析所述can报文及i/o输入信号得到对应的控制信息,且将所述控制信息输送至所述主处理器;

所述主处理器,用于将所述控制信息进行处理得到对应的控制输出指令,并将所述控制输出指令通过i/o接口发送至用于控制自动驾驶汽车的声光、启动及电子驻车的第二车辆控制器,或者将所述控制输出指令通过所述can控制器发送至用于控制自动驾驶汽车行驶的第一车辆控制器。

优选地,所述硬线信号输入电路包括有:驻车组合开关电路、转向灯组合开关电路以及一键启动开关电路;

所述驻车组合开关电路用于将自动驾驶汽车上的电子驻车开关按键行为转化为对应的电子驻车控制组合信号,并将所述电子驻车控制组合信号输出至所述微控制器;所述协处理器用于中断接收所述电子驻车控制组合信号,并解析所述电子驻车控制组合信号得到对应的电子驻车控制组合信息,且将所述电子驻车控制组合信息输出至所述主处理器;所述主处理器对所述电子驻车控制组合信息进行处理,得到对应的电子驻车控制组合指令,并将所述电子驻车控制组合指令发送至用于控制驻车控制器的驻车状态的驻车控制连接模块;

所述转向灯组合开关电路用于将自动驾驶汽车上的转向灯开关按键行为转化为对应的转向灯信号,并将所述转向灯信息输出至所述微控制器;所述协处理器用于中断接收所述转向灯信号,并解析所述转向灯信号得到对应的转向灯控制信息,且将所述转向灯控制信息输出至所述主处理器;所述主处理器对所述转向灯控制信息进行处理,得到对应的转向灯控制输出指令,并将所述转向灯控制输出指令发送至用于对自动驾驶汽车声光进行控制的声光控制模块

一键启动开关电路用于将自动驾驶汽车上的一键启动按键行为生成对应的启动钥匙信号,并将所述启动钥匙信号输出至所述微控制器;所述协处理器用于中断接收所述启动钥匙信号,并解析所述启动钥匙信息得到对应的启动钥匙控制信息,且将所述启动钥匙信息输出至所述主处理器;所述主处理器对所述启动钥匙控制信息进行处理,得到对应的启动钥匙控制输出指令,并将所述启动钥匙控制输出指令发送至用于控制自动驾驶汽车启动的启动驱动电路。

优选地,所述硬线信号输入电路还包括有:

驾驶模式切换开关电路,用于将自动驾驶汽车上的驾驶模式切换按键行为转化为对应的驾驶模式切换信号,并将所述驾驶模式切换信号输出至所述微控制器;

所述协处理器用于中断接收所述驾驶模式切换信号,并解析所述驾驶模式切换信号得到对应的驾驶模式切换控制信息,且将所述驾驶模式切换控制信息输出至所述主处理器;

所述主处理器还用于根据所述驾驶模式切换控制信息切换到对应的驾驶模式,其中,驾驶模式包括有:自主驾驶模式、人工驾驶模式、遥控驾驶模式,当处于自主驾驶模式时,所述主处理器按照预设的自主驾驶运算逻辑对来自上位机系统的控制信息进行处理,当处于人工驾驶模式时,所述主处理器按照预设的人工驾驶运算逻辑对来自i/o接口的控制信息进行处理,当处于遥控驾驶模式时,所述主处理器按照预设的遥控驾驶运算逻辑对来自遥控装置的遥控信息进行处理。

优选地,还包括:

第二can收发器,用于通过所述can控制器接收所述控制输出指令,并将所述控制输出指令发送至所述第一车辆控制器,还用于通过所述can控制器接收所述第一车辆控制器所采集的自动驾驶汽车信息并转发至所述协处理器;

所述协处理器还用于中断接收来自所述第二can收发器的can报文并解析得到对应的自动驾驶汽车信息,且将该自动驾驶汽车信息发送至所述主处理器;

所述主处理器还用于在自主驾驶模式下,将该自动驾驶汽车信息进行分类打包后发送至所述can控制器,所述can控制器通过所述第一can收发器将分类打包后的自动驾驶汽车信息发送至上位机系统。

优选地,所述硬线信号输入电路还包括有:

泊车启动开关电路,用于将自动驾驶汽车上的泊车功能启动按键行为转化为对应的泊车功能启动信号输出至所述微控制器;

所述协处理器用于中断接收所述泊车功能启动信号及自动驾驶汽车与目标物之间的距离信号,解析所述泊车功能启动信号及所述距离信号得到对应的泊车功能启动控制信息及自动驾驶汽车与目标物之间的距离信息,且将所述泊车功能启动控制信息及所述距离信息输出至所述主处理器;

所述主处理器还用于在自主驾驶模式下,根据所述泊车功能启动控制信息,对所述距离信息进行解析得到自动驾驶汽车侧面到目标物的距离以及自动驾驶汽车当前位置及车位信息,并判断该距离是否满足车位长度,若满足,则根据自动驾驶汽车当前位置及车位信息计算得到对应的停车轨迹,且根据该停车轨迹生成对应的停车控制指令并打包发送至所述can控制器,所述can控制器将打包后的停车控制指令通过所述第二can收发器发送至所述第一车辆控制器,以控制所述第一车辆控制器根据该停车轨迹自动泊车。

优选地,所述主处理器还用于根据所述第一车辆控制器回传的自动驾驶汽车信息判断所述第一车辆控制器是否有故障,若是,则发送停止泊车指令至所述can控制器;所述can控制器将所述停止泊车指令通过所述第二can收发器发送至所述第一车辆控制器,以控制所述第一车辆控制器停止泊车。

优选地,所述硬线信号输入电路还包括有:

急停开关电路,用于将自动驾驶汽车上的急停按键行为转化为自动模式急停信号输出至所述微控制器;所述协处理器用于中断接收所述自动模式急停信号,解析所述自动模式急停信号得到对应的急停控制信息,且将所述急停控制信息输出至所述主处理器;

所述主处理器用于根据所述急停控制信息生成对应的急停控制指令打包发送至所述can控制器,所述can控制器通过所述第二can收发器将打包后的急停控制指令发送至所述第一车辆控制器中的整车控制器。

本发明还提供一种自动驾驶汽车的控制方法,应用于上述的自动驾驶汽车的控制系统中,包括下述步骤:

第一can收发器接收来自上位机系统或遥控装置的can报文,并将所述can报文发送至微控制器;

硬线信号输入电路将自动驾驶汽车上的按键行为转化为所述微控制器可识别的硬线信号,并将所述硬线信号作为i/o输入信号通过i/o接口输入至所述微控制器;

can控制器接收所述第一can收发器发送的can报文并将其转发至协处理器;

所述协处理器中断接收所述can控制器转发的所述can报文及来自i/o接口的i/o输入信号,并解析所述can报文及i/o输入信号得到对应的控制信息,且将所述控制信息输送至主处理器;

所述主处理器将所述控制信息进行处理得到对应的控制输出指令,并将所述控制输出指令通过i/o接口发送至用于控制自动驾驶汽车的声光、启动及电子驻车的第二车辆控制器,或者将所述控制输出指令通过所述can控制器发送至用于控制自动驾驶汽车行驶的第一车辆控制器。

优选地,还包括下述步骤:

所述can控制器通过第二can收发器接收所述第一车辆控制器所采集的自动驾驶汽车信息并转发至所述协处理器;

所述协处理器中断接收来自所述第二can收发器的can报文并解析得到对应的自动驾驶汽车信息,且将该自动驾驶汽车信息发送至所述主处理器;

所述主处理器在自主驾驶模式下,将该自动驾驶汽车信息进行分类打包后发送至所述can控制器,所述can控制器通过所述第一can收发器将分类打包后的自动驾驶汽车信息发送至上位机系统。

优选地,还包括下述步骤:

所述硬线信号输入电路中的泊车启动开关电路将自动驾驶汽车上的泊车功能启动按键行为转化为对应的泊车功能启动信号输出至所述微控制器;

所述协处理器中断接收所述泊车功能启动信号及自动驾驶汽车与目标物之间的距离信号,解析所述泊车功能启动信号及所述距离信号得到对应的泊车功能启动控制信息及自动驾驶汽车与目标物之间的距离信息,且将所述泊车功能启动控制信息及所述距离信息输出至所述主处理器;

所述主处理器在自主驾驶模式下,根据所述泊车功能启动控制信息,对所述距离信息进行解析得到自动驾驶汽车侧面到目标物的距离以及自动驾驶汽车当前位置及车位信息,并判断该距离是否满足车位长度,若满足,则根据自动驾驶汽车当前位置及车位信息计算得到对应的停车轨迹,且根据该停车轨迹生成对应的停车控制指令并打包发送至所述can控制器,所述can控制器将打包后的停车控制指令通过所述第二can收发器发送至所述第一车辆控制器,以控制所述第一车辆控制器根据该停车轨迹自动泊车。

优选地,还包括下述步骤:

所述硬线信号输入电路中的驾驶模式切换开关电路将自动驾驶汽车上的驾驶模式切换按键行为转化为对应的驾驶模式切换信号,并将所述驾驶模式切换信号输出至所述微控制器;

所述协处理器中断接收所述驾驶模式切换信号,并解析所述驾驶模式切换信号得到对应的驾驶模式切换控制信息,且将所述驾驶模式切换控制信息输出至所述主处理器;

所述主处理器根据所述驾驶模式切换控制信息切换到对应的驾驶模式,其中,驾驶模式包括有:自主驾驶模式、人工驾驶模式、遥控驾驶模式,当处于自主驾驶模式时,所述主处理器按照预设的自主驾驶运算逻辑对来自所述上位机系统的控制信息进行处理,当处于人工驾驶模式时,所述主处理器按照预设的人工驾驶运算逻辑对来自i/o接口的控制信息进行处理,当处于遥控驾驶模式时,所述主处理器按照预设的遥控驾驶运算逻辑对来自遥控装置的遥控信息进行处理。

优选地,还包括下述步骤:

所述主处理器根据所述第一车辆控制器回传的自动驾驶汽车信息判断所述第一车辆控制器是否有故障,若是,则发送停止泊车指令至所述can控制器;所述can控制器将所述停止泊车指令通过所述第二can收发器发送至所述第一车辆控制器,以控制所述第一车辆控制器停止泊车。

优选地,还包括下述步骤:

所述硬线信号输入电路中的急停开关电路将自动驾驶汽车上的急停按键行为转化为自动模式急停信号输出至所述微控制器;所述协处理器用于中断接收所述自动模式急停信号,解析所述自动模式急停信号得到对应的急停控制信息,且将所述急停控制信息输出至所述主处理器;

所述主处理器根据所述急停控制信息生成对应的急停控制指令打包发送至所述can控制器,所述can控制器通过所述第二can收发器将打包后的急停控制指令发送至所述第一车辆控制器中的整车控制器。。

实施本发明,具有如下有益效果:

本发明将不属于控制车辆行驶的控制指令(例如按键的操作)生成对应的i/o输入信号输入至微控制器,避免了自动驾驶汽车行驶时,所有的控制信息都来自上位机系统,而造成控制周期长、控制实时性不高的问题;并且微控制器生成对应的控制输出指令后,通过i/o接口和can收发器分别将对应的控制输出指令输出至对应的车辆控制器,也避免了通过can收发器将所有的控制输出指令发送至对应的车辆控制器,因此本发明降低了微控制器与上位机系统及车辆控制器之间的通讯负荷,也降低了上位机系统与连接到can总线的各设备之间的通讯负荷,提高了上位机系统与微控制器及汽车内连接到can总线的各设备之间的通讯效率,从而缩短了对汽车的控制周期。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明提供的自动驾驶汽车的微控制器的原理框图。

图2是本发明提供的自动驾驶汽车的控制系统的原理框图。

图3是本发明提供的自动驾驶汽车的控制系统的硬线信号输入电路的原理框图。

图4是本发明提供的自动驾驶汽车的控制系统的另一实施例的结构图。

图5是本发明提供的自动驾驶汽车的控制系统的又一实施例的结构图。

图6是本发明提供的自动驾驶汽车的控制方法的另一实施例的流程图。

图7是本发明提供的自动驾驶汽车的控制方法的另一实施例的驾驶模式切换逻辑图。

具体实施方式

本发明提供一种自动驾驶汽车的微控制器100,如图1所示,该微控制器100包括:主处理器110、协处理器120以及can控制器130。

其中,can控制器130与协处理器120、主处理器110通信连接,用于接收can报文并转发至协处理器120。

协处理器120用于中断接收can控制器130转发的can报文及来自i/o接口400的i/o输入信号,并解析can报文及i/o输入信号得到对应的控制信息,且将控制信息输送至主处理器110。

主处理器110用于将控制信息进行处理得到对应的控制输出指令,并将控制输出指令通过i/o接口400发送至用于控制自动驾驶汽车的声光、启动及电子驻车的第二车辆控制器500,或者将控制输出指令通过can控制器130发送至用于控制自动驾驶汽车行驶的第一车辆控制器300。

本发明还提供一种自动驾驶汽车的控制系统,如图2所示,该系统包括有:第一can收发器210、硬线信号输入电路800以及微控制器100,其中:第一can收发器210用于接收上位机系统600或遥控装置700发送的can报文,并将can报文发送至微控制器100。

其中,遥控装置700包括有:遥控发射端710及遥控接收模块720,上位机系统600可以是工业控制计算机。遥控发射端710用于接收用户输入的控制指令生成对应的遥控指令并输出至遥控接收模块720;遥控接收模块720与遥控发射端710通信连接,用于接收来自遥控发射端710的遥控指令并将其转至第一can收发器210。上位机系统600发送的控制指令,或遥控发射端710发送的遥控指令中包含有对应的控制信息,例如:对地扭矩请求,行车制动程度、方向盘转角等信息。

硬线信号输入电路800通过i/o接口400与微控制器100通信连接,用于将自动驾驶汽车上的按键行为转化为微控制器100可识别的硬线信号,并将硬线信号作为i/o输入信号通过i/o接口400输入至微控制器100。

微控制器100包括:主处理器110、协处理器120以及can控制器130。

其中,can控制器130与协处理器120、主处理器110通信连接,用于接收第一can收发器210发送的can报文并将其转发至协处理器120。

协处理器120用于中断接收can控制器130转发的can报文及来自i/o接口400的i/o输入信号,并解析can报文及i/o输入信号得到对应的控制信息,且将控制信息输送至主处理器110。

主处理器110用于将控制信息进行处理得到对应的控制输出指令,并将控制输出指令通过i/o接口400发送至用于控制自动驾驶汽车的声光、启动及电子驻车的第二车辆控制器500,以控制第二车辆控制器500的工作,或者将控制输出指令通过can控制器130发送至用于控制自动驾驶汽车行驶的第一车辆控制器300,以控制第一车辆控制器300的工作。其中,控制车辆的声光,也既是控制车辆的转向灯以及喇叭。

进一步地,如图3所示,硬线信号输入电路800包括有:驻车组合开关电路810、转向灯组合开关电路820以及一键启动开关电路830。

驻车组合开关电路810用于将自动驾驶汽车上的电子驻车开关按键行为转化为对应的电子驻车控制组合信号,并将电子驻车控制组合信号输出至微控制器100;协处理器120用于中断接收电子驻车控制组合信号,并解析电子驻车控制组合信号得到对应的电子驻车控制组合信息,且将电子驻车控制组合信息输出至主处理器110;主处理器110对电子驻车控制组合信息进行处理,得到对应的电子驻车控制组合指令,并将电子驻车控制组合指令发送至用于控制驻车控制器的驻车状态的驻车控制连接模块。

转向灯组合开关电路820用于将自动驾驶汽车上的转向灯开关按键行为转化为对应的转向灯信号,并将转向灯信息输出至微控制器100;协处理器120用于中断接收转向灯信号,并解析转向灯信号得到对应的转向灯控制信息,且将转向灯控制信息输出至主处理器110;主处理器110对转向灯控制信息进行处理,得到对应的转向灯控制输出指令,并将转向灯控制输出指令发送至用于对自动驾驶汽车声光进行控制的声光控制模块。

一键启动开关电路830用于将自动驾驶汽车上的一键启动按键行为生成对应的启动钥匙信号,并将启动钥匙信号输出至微控制器100;协处理器120用于中断接收启动钥匙信号,并解析启动钥匙信息得到对应的启动钥匙控制信息,且将启动钥匙信息输出至主处理器110;主处理器110对启动钥匙控制信息进行处理,得到对应的启动钥匙控制输出指令,并将启动钥匙控制输出指令发送至用于控制自动驾驶汽车启动的启动驱动电路。

主处理器110可以通过控制i/o输出激活启动驱动电路、声光控制模块控制子部件,或者作为硬线信号输出至驻车控制连接模块,通过驻车控制连接模块对驻车控制器进行控制。

在另一实施例中,一键启动按键用于模拟车钥匙档位控制,当用户想要启动车辆时,可以按下一键启动按键,以启动车辆。例如,车钥匙的档位有4个:key_off,key_acc,key_on,key_start。依据用户按压一键启动按键的次数与按压该按键的持续时间这两个信号量组合,实现4个车钥匙档位的输入检测与输出控制。具体实现方式:默认状态下车钥匙档位处于key_off档,acc、ig1、ig2、start控制的继电器断开,按压该按键一次进入key_acc挡,此时,acc控制的继电器吸合,ig1、ig2、start控制的继电器断开;按压该按键两次进入key_on挡,acc、ig1、ig2继电器吸合;按压该按键三次时,若每次按压该按键的持续时间大于一定量,则进入key_start挡,若该持续时间不足,则退回key_off档;进入key_start档,再按压该按键一次,则退回key_off档。在key_start档,acc、ig1、ig2、start控制的继电器吸合。

在另一实施例中,为防止汽车溜坡,对汽车进行电子驻车。所用的驻车控制器epb有3种状态,分别是拉紧(拉索拉紧)、放松(拉索松开)、常态(电子驻车控制器epb进行状态切换前,拉索保持的状态)。依据驻车控制器epb的特性,设计了如表1所示的驻车控制器epb的线路节点通断逻辑。驻车控制器epb控制的工作过程如下:微控制器mcu检测到拉紧请求(该拉紧请求来自i/o接口或can总线),微控制器mcu控制相应的i/o输出,驻车控制器epb电路连接关系控制模块依据微控制器mcu管脚的输出选择接通驻车控制器的线路,拉索拉紧,开始计时,时间持续5s后,微控制器mcu又再次控制i/o输出使得驻车控制器进入常态,但拉索一直保持拉紧,不会松开。如果持续时间不足5s,则拉索拉紧后又会立即松开。松开的过程亦是如此,驻车控制器放松状态持续时间为3s。

表1epb控制线路节点通断逻辑表

进一步地,硬线信号输入电路800还包括有:驾驶模式切换开关电路840。

驾驶模式切换开关电路840用于将自动驾驶汽车上的驾驶模式切换按键行为转化为对应的驾驶模式切换信号,并将驾驶模式切换信号输出至微控制器100。

协处理器120用于中断接收驾驶模式切换信号,并解析驾驶模式切换信号得到对应的驾驶模式切换控制信息,且将驾驶模式切换控制信息输出至主处理器110。

主处理器110还用于根据驾驶模式切换控制信息切换到对应的驾驶模式,其中,驾驶模式包括有:自主驾驶模式、人工驾驶模式、遥控驾驶模式,当处于自主驾驶模式时,主处理器110按照预设的自主驾驶运算逻辑对来自上位机系统600的控制信息进行处理,当处于人工驾驶模式时,主处理器110按照预设的人工驾驶运算逻辑对来自i/o接口400的控制信息进行处理,当处于遥控驾驶模式时,主处理器110按照预设的遥控驾驶运算逻辑对来自遥控装置700的遥控信息进行处理。

例如,在人工驾驶模式下受控于驾驶员,可以像普通车辆一样驾驶,协处理器120检测并接收来自i/o接口400的i/o输入信号,解析该i/o输入信号中所包含的声光信息(声音控制信息以及转向灯控制信息),生成对应的声光控制指令并通过i/o接口400硬线输出至声光控制模块。在自主驾驶模式或者遥控驾驶模式下,协处理器120接收来自第一can收发器210的can报文,解析该can报文中所包含的声光信息,生成对应的声光控制指令通过i/o接口400硬线输出至声光控制模块,声光控制模块根据接收到的声光控制指令对车辆的声光进行控制。

遥控驾驶模式主要用于无人驾驶汽车遇紧急情况,例如:需要远程干预的情形,按下遥控发射端710上的“紧急制动”按键控制车辆刹车,进入遥控模式,可以远程控制车辆以一定速度前进后退,左转右转以及启停。

在另一实施例中,微控制器共连接有2路can收发器,一路连接有新能源原车的pcan收发器,另一路连接有与上位机系统和rc遥控接收模块通信连接的can0收发器。

自主驾驶模式下,微控制器的协处理器中断接收来自can0收发器的can0报文并进行解析,解析所得的信息包括有对地扭矩请求,行车制动程度,方向盘转角等信息,将解析所得的信息根据pcan收发器节点上各控制器所需信息类别进行分类打包,转向控制器eps所需的转向信息为一帧(供转向控制器eps使用),其它控制器所需的控制信息为另外一帧(供整车控制器vcu使用),微控制器中的主处理器将分类打包好的信息发送至pcan收发器,通过pcan收发器将打包好的信息通过can总线发送至执行件控制器,相应的执行件控制器依据所收到的信息控制对应的执行件工作,在此过程中,微控制器的协处理器又通过pcan收发器中断接收新能源原车各执行件控制器反馈的多类行车信息,例如:当前车速、当前对地扭矩、当前制动程度、当前方向盘转角、当前故障信息等,根据行车信息的类别打包成多帧can0报文并发送至上位机系统,供上位机系统决策使用,在遥控驾驶模式下,则不需要将行车信息打包成多帧can0报文发送至上位机系统。

进一步地,自动驾驶汽车的控制系统还包括:第二can收发器220,第二can收发器220,用于通过can控制器130接收控制输出指令,并将控制输出指令发送至第一车辆控制器300,还用于通过can控制器130接收第一车辆控制器300所采集的自动驾驶汽车信息以及速度采集模块900所采集的自动驾驶汽车的速度信息并转发至协处理器120。

第一车辆控制器300包括有:制动控制器、整车控制器、转向控制器。

整车控制器用于接收来自微控制器100的控制输出指令进行工作。

转向控制器用于控制车辆的转向,并采集转向结果信息,且将转向结果信息发送至第二can收发器220,第二can收发器220通过can控制器130将转向结果信息发送至协处理器120。

制动控制器用于对车辆进行制动操作,并采集制动结果信息,且将制动结果信息发送至第二can收发器220,第二can收发器220通过can控制器130将制动结果信息发送至协处理器120。

协处理器120还用于中断接收来自第二can收发器220的can报文并解析得到对应的自动驾驶汽车信息,且将该自动驾驶汽车信息发送至主处理器110。

主处理器110还用于在自主驾驶模式下,将该自动驾驶汽车信息进行分类打包后发送至can控制器130,can控制器130通过第一can收发器210将分类打包后的自动驾驶汽车信息发送至上位机系统600,供上位机系统600决策使用。

进一步地,硬线信号输入电路800还包括有:泊车启动开关电路850。

泊车启动开关电路850用于将自动驾驶汽车上的泊车功能启动按键行为转化为对应的泊车功能启动信号输出至微控制器100。

协处理器120用于中断接收泊车功能启动信号及自动驾驶汽车与目标物之间的距离信号,解析泊车功能启动信号及距离信号得到对应的泊车功能启动控制信息及自动驾驶汽车与目标物之间的距离信息,且将泊车功能启动控制信息及距离信息输出至主处理器110。

其中,自动驾驶汽车与目标物之间的距离信号由与微控制器100通信连接的雷达测距模块1000采集,雷达测距模块1000在采集了该距离信息后通过i/o接口400发送至微控制器100。

主处理器110还用于在自主驾驶模式下,根据泊车功能启动控制信息,对距离信息进行解析得到自动驾驶汽车侧面到目标物的距离以及自动驾驶汽车当前位置及车位信息,并判断该距离是否满足车位长度,若满足,则根据自动驾驶汽车当前位置及车位信息计算得到对应的停车轨迹,且根据该停车轨迹生成对应的停车控制指令并打包发送至can控制器130,can控制器130将打包后的停车控制指令通过第二can收发器220发送至第一车辆控制器300,以控制第一车辆控制器300根据该停车轨迹自动泊车。

进一步地,主处理器110还用于根据第一车辆控制器300回传的自动驾驶汽车信息判断第一车辆控制器300是否有故障,若是,则发送停止泊车指令至can控制器130;can控制器130将停止泊车指令通过第二can收发器220发送至第一车辆控制器300,以控制第一车辆控制器300停止泊车。

在自动停车过程中,主处理器110还根据第一车辆控制器300回传的车辆信息,动态调整停车控制指令,控制车辆准确平稳泊车车位。其中,车位的类型包括有垂直、平行、斜列三种,停车控制指令中包含有:车速、制动程度、方向盘转角等控制指令信息。自主驾驶模式下的自动泊车不需要上位机系统600的干预,车辆具有高度的智能。

进一步地,硬线信号输入电路800还包括有:急停开关电路860。

急停开关电路860用于将自动驾驶汽车上的急停按键行为转化为自动模式急停信号输出至微控制器100;协处理器120用于中断接收自动模式急停信号,解析自动模式急停信号得到对应的急停控制信息,且将急停控制信息输出至主处理器110。

主处理器110用于根据急停控制信息生成对应的急停控制指令打包发送至can控制器130,can控制器130通过第二can收发器220将打包后的急停控制指令发送至第一车辆控制器300中的整车控制器;整车制动器根据接收到的急停控制指令发送制动控制指令至制动控制器;制动控制器根据制动控制指令控制自动驾驶汽车急停。

另一实施例中,在自主驾驶模式下,有一种无人驾驶汽车的情形(汽车里可以有人,但该人没有驾驶汽车,或者汽车内没有人),难免会遇到需要急停的情况,如果车内有人员,可以按下车内“急停按键”,如果车内无人员,则可按下遥控发射端710的“急停按键”。微控制器100检测到此任一种请求,都会通过can总线通知新能源原车的整车控制器对制动进行决策控制。

优选地,自动驾驶汽车的控制系统还包括有:电源芯片1100。

电源芯片1100与微控制器100连接,用于为微控制器100稳定供电;主处理器110还可以通过i/o接口400输出关电源控制输出指令至电源芯片1100,电源芯片1100根据该关电源控制输出指令,停止为微控制器100供电。

在本发明提供的自动驾驶汽车的控制系统的另一实施例中,如图4所示,硬线信号输入电路800包括有:epb驻车组合开关电路、转向灯组合开关电路、一键启动开关电路、手/自切换开关电路、泊车启动开关电流、急停开关电路,epb驻车组合开关电路响应对应的按键行为后输出epb组合信号至微控制器mcu,转向灯组合开关电路输出左转灯信号及右转灯信号至微控制器mcu,一键启动开关电路输出启动钥匙信号至微控制器mcu,手/自切换开关电路输出驾驶模式切换信号至微控制器mcu,泊车启动开关电路输出泊车功能启动信息至mcu,急停开关电路输出自动模式急停信号至mcu。

mcu根据启动钥匙信号输出对应的start信号、acc信号、ig1信号、ig2信号至一键启动输出继电器驱动电路,一键启动输出继电器驱动电路根据start信号、acc信号、ig1信号、ig2信号操作相应的继电器。

mcu将epb控制输出组合信号对应输出至驻车控制器epb电路连接关系控制模块,驻车控制器epb电路连接关系控制模块通过驻车控制器epb来控制电子驻车。

mcu将左转灯信号对应输出至声光控制bcm模块,声光控制bcm控制左转灯亮或右转灯亮。

上位机系统发送自动驾驶模式下多种控制指令,mcu根据这些指令又分别多整车控制器vcu、转向控制器eps进行控制。整车控制器vcu将采集的关于车辆的多种信息通过pcan收发器发送至mcu,转向控制器eps将转向结果通过pcan收发器发送至mcu,制动控制器evb将制动结果发送至mcu,速度采集模块将车速信息发送至mcu,mcu又将这些信息发送至上位机系统。

在本发明提供的自动驾驶汽车的控制系统的又一实施例中,如图5所示,该系统包含有:左转灯继电器11、右转灯继电器12,通过控制这两个继电器来控制左转灯及右转灯是否开启。通过acc继电器5、ig1继电器6、ig2继电器7、start继电器8来控制车辆开启。通过i/o输入接口4202接收i/o输入信号,通过i/o输出接口4104将双核微控制器1001输出的控制输出指令输出至与i/o输出接口4104通信连接的第二车辆控制器500。从附图5中还可以看到,包括一个16m的晶振18、雷达时序控制继电器10、rc无线转can模块14,晶振18为双核微控制器1001提供时钟信号,雷达时序控制继电器10用于控制雷达测序模块开始工作,rc无线转can模块14作为遥控装置700发送遥控信号。

本发明还提供一种自动驾驶汽车的控制方法,应用于上述的自动驾驶汽车的控制系统中,包括下述步骤:

第一can收发器210接收来自上位机系统600或遥控装置700的can报文,并将can报文发送至微控制器100;

硬线信号输入电路800将自动驾驶汽车上的按键行为转化为微控制器100可识别的硬线信号,并将硬线信号作为i/o输入信号通过i/o接口400输入至微控制器100;

can控制器130接收第一can收发器210发送的can报文并将其转发至协处理器120;

协处理器120中断接收can控制器130转发的can报文及来自i/o接口400的i/o输入信号,并解析can报文及i/o输入信号得到对应的控制信息,且将控制信息输送至主处理器110;

主处理器110将控制信息进行处理得到对应的控制输出指令,并将控制输出指令通过i/o接口400发送至用于控制自动驾驶汽车的声光、启动及电子驻车的第二车辆控制器500,或者将控制输出指令通过can控制器130发送至用于控制自动驾驶汽车行驶的第一车辆控制器300。

进一步地,自动驾驶汽车的控制方法还包括下述步骤:

can控制器130通过第二can收发器220接收第一车辆控制器300所采集的自动驾驶汽车信息并转发至协处理器120;

协处理器120中断接收来自第二can收发器220的can报文并解析得到对应的自动驾驶汽车信息,且将该自动驾驶汽车信息发送至主处理器110;

主处理器110在自主驾驶模式下,将该自动驾驶汽车信息进行分类打包后发送至can控制器130,can控制器130通过第一can收发器210将分类打包后的自动驾驶汽车信息发送至上位机系统600。

进一步地,自动驾驶汽车的控制方法还包括下述步骤:

硬线信号输入电路800中的泊车启动开关电路850将自动驾驶汽车上的泊车功能启动按键行为转化为对应的泊车功能启动信号输出至微控制器100;

协处理器120中断接收泊车功能启动信号及自动驾驶汽车与目标物之间的距离信号,解析泊车功能启动信号及距离信号得到对应的泊车功能启动控制信息及自动驾驶汽车与目标物之间的距离信息,且将泊车功能启动控制信息及距离信息输出至主处理器110;

主处理器110在自主驾驶模式下,根据泊车功能启动控制信息,对距离信息进行解析得到自动驾驶汽车侧面到目标物的距离以及自动驾驶汽车当前位置及车位信息,并判断该距离是否满足车位长度,若满足,则根据自动驾驶汽车当前位置及车位信息计算得到对应的停车轨迹,且根据该停车轨迹生成对应的停车控制指令并打包发送至can控制器130,can控制器130将打包后的停车控制指令通过第二can收发器220发送至第一车辆控制器300,以控制第一车辆控制器300根据该停车轨迹自动泊车。

进一步地,自动驾驶汽车的控制方法还包括下述步骤:

硬线信号输入电路800中的驾驶模式切换开关电路840将自动驾驶汽车上的驾驶模式切换按键行为转化为对应的驾驶模式切换信号,并将驾驶模式切换信号输出至微控制器100;

协处理器120中断接收驾驶模式切换信号,并解析驾驶模式切换信号得到对应的驾驶模式切换控制信息,且将驾驶模式切换控制信息输出至主处理器110;

主处理器110根据驾驶模式切换控制信息切换到对应的驾驶模式,其中,驾驶模式包括有:自主驾驶模式、人工驾驶模式、遥控驾驶模式,当处于自主驾驶模式时,主处理器110按照预设的自主驾驶运算逻辑对来自上位机系统600的控制信息进行处理,当处于人工驾驶模式时,主处理器110按照预设的人工驾驶运算逻辑对来自i/o接口400的控制信息进行处理,当处于遥控驾驶模式时,主处理器110按照预设的遥控驾驶运算逻辑对来自遥控装置700的遥控信息进行处理。

进一步地,自动驾驶汽车的控制方法还包括下述步骤:

主处理器110根据第一车辆控制器300回传的自动驾驶汽车信息判断第一车辆控制器300是否有故障,若是,则发送停止泊车指令至can控制器130;can控制器130将停止泊车指令通过第二can收发器220发送至第一车辆控制器300,以控制第一车辆控制器300停止泊车。

进一步地,自动驾驶汽车的控制方法还包括下述步骤:

硬线信号输入电路800中的急停开关电路860将自动驾驶汽车上的急停按键行为转化为自动模式急停信号输出至微控制器100;协处理器120用于中断接收自动模式急停信号,解析自动模式急停信号得到对应的急停控制信息,且将急停控制信息输出至主处理器110;

主处理器110根据急停控制信息生成对应的急停控制指令打包发送至can控制器130,can控制器130通过第二can收发器220将打包后的急停控制指令发送至第一车辆控制器300中的整车控制器。

在本发明提供的自动驾驶汽车的控制方法的另一实施例中,其方法流程如图6所示,依次执行:初始化硬件、初始化软件、协处理器开启中断接收模式,协处理器中断接收i/o输入信号,以及中断接收来自pcan收的can0报文,还中断接收来自其他can收发器(连接有工控机及rc无线转can模块)的can4报文数据,协处理器将解析后得到的状态数据输出至主处理器,主处理器进行模式选择,判断当前是处于手动模式还是遥控模式,或者自主模式,然后再选择对应的控制逻辑进行运算,将结果通过i/o接口或者can总线输出。

在本发明提供的自动驾驶汽车的控制方法的另一实施例中,驾驶模式切换的逻辑如图7所示,有手动模式(对应人工驾驶模式)、自主模式(对应自主驾驶模式)、遥控模式(对应遥控驾驶模式)三种。在手动模式下,转向控制器eps、驻车控制器epb、制动控制器evb、车灯均有人来进行控制,车辆的执行档位为机械档位;在自主模式下,eps、epb、evb、车灯和车辆的档位均为上位机系统决定;遥控模式下,eps、epb、evb、车灯和车辆的档位均由遥控器(对应遥控发射端)决定。

例如,当自动驾驶汽车处于自主模式时,当执行下列操作之一时,车辆切换至手动模式:1、人工转动方向盘;2、人工切换档位至非空档;3、按下手自动按钮。当自动驾驶汽车处于手动模式,当执行下列操作时,自动驾驶汽车切换至自主模式:按下“手/自切换”按钮,并且机械档位为空档。当自动驾驶汽车处于手动模式时,按下“紧急制动”按钮,且机械档为空档时,手动模式切换至遥控模式;当自动驾驶汽车处于遥控模式时,按下“遥控退出”按钮,且保存手自指示灯信号位于手动状态,遥控模式切换至手动模式。当自动驾驶汽车处于自主模式时,按下“紧急制动”,自主模式切换至遥控模式;当处于遥控模式时,按下“遥控退出”按钮,且保存手自指示灯信号位于自主状态,遥控模式切换至自主模式。三种模式之间的切换逻辑,具体地可以参见附图7。

综上所述,本发明的自动驾驶汽车的控制系统、方法及微控制器,通过协处理器120中断接收来自第一can收发器210的can报文进行解析,以及中断接收来自i/o接口400的i/o输入信息进行解析,将解析后得到的控制信息发送至主处理器110,主处理器110根据预设的运算逻辑对该控制信息进行处理,得到对应的控制输出指令,将该控制输出指令发送至can控制器130,can控制器130通过第二can收发器220将控制输出指令发送至接入与第二can收发器220通信连接的控制器,对与第二can收发器220通信连接的控制器进行控制,或者主处理器110直接通过i/o接口400将控制输出指令输出至与i/o接口400连接的控制器,对与i/o接口400连接的控制器进行控制。

本发明中将不属于控制车辆行驶的控制指令(例如按键的操作)通过硬线信号输入电路800生成对应的i/o输入信号输入至微控制器100,例如驻车组合控制信息、左转灯信号、右转灯信号、启动钥匙信号、泊车功能启动信号、自动模式急停信号等,避免了无人驾驶汽车行驶时,所有的控制信息都来自上位机系统600,而造成控制周期长、控制实时性不高的问题;并且微控制器100生成对应的控制输出指令后,通过i/o接口400和第二can收发器220分别将对应的控制输出指令输出至对应的车辆控制器,避免了所有的控制输出指令都通过can总线发送至对应的车辆控制器,因此本发明降低了上位机系统600与微控制器100之间的通讯负荷,也降低了上位机系统600与连接到can总线的各设备之间的通讯负荷,提高了上位机系统600与微控制器100及车辆内连接到can总线的各设备之间的通讯效率,进而上位机系统600获取车辆信息的时间减少,对汽车的控制周期也变短了,上位机系统600对汽车控制的实时性和可靠性得到提高。

进一步地,本发明除了上位机系统600和自动驾驶汽车上的按键,还可以通过遥控发射端710对车辆上的控制器进行控制,使用户可以选择对应的自主驾驶模式、人工驾驶模式,还可以选择遥控驾驶模式,并且主处理器110还可以根据来自i/o接口400的驾驶模式切换信息进行不同驾驶模式的切换,当其中一种驾驶模式出现故障,还可以立即切换至其他的驾驶模式,可有效保护乘员及车辆的安全,也有利于无人驾驶汽车进行实车测试实验。

进一步地,本发明的微控制器100在自主驾驶模式下,还可以通过i/o接口400接收来雷达测距信号,进行自动泊车,不需要上位机系统600的干预,具有高度的智能,也丰富了驾驶汽车的功能,并且该自动泊车功能不需要上位机系统600干预,符合功能模块化的设计理念,便于后期的开发与维护。

以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1