目录

  • 1 项目1 智能网联汽车认知与开发调试环境配置
    • 1.1 任务1.1  智能网联汽车认知与安全操作
    • 1.2 任务1.2 智能网联汽车技术开发环境搭建与基本使用
    • 1.3 任务1.3 智能网联汽车技术开发环境搭建与基本使用实践
  • 2 项目2 智能网联汽车传感器认知与数据获取
    • 2.1 任务2.1 雷达传感器的认知与数据获取
    • 2.2 任务2.2 视觉传感器认知与数据获取
    • 2.3 任务2.3 定位传感器认知与数据获取
    • 2.4 任务2.4 高精地图数据组成与制作
  • 3 项目3 智能网联汽车定位、感知与路径规划综合调试
    • 3.1 任务3.1 智能网联汽车定位、感知与路径规划仿真调试
    • 3.2 任务3.2智能网联汽车定位、感知与路径规划实车调试
    • 3.3 任务3.3智能网联汽车深度学习目标检测数据集制作
  • 4 项目4 智能网联汽车线控底盘控制与CAN通信调试
    • 4.1 任务4.1   智能网联汽车线控系统组成原理与CAN通信调试
  • 5 拓展学习资源与常见报错汇总
    • 5.1 学习资源汇总
    • 5.2 常见错误汇总
任务4.1   智能网联汽车线控系统组成原理与CAN通信调试

       任务4.1   智能网联汽车线控系统组成原理与CAN通信调试 

学习目标

知识目标:

  • 掌握线控驱动、制动和转向系统的结构组成和工作原理;

  • 掌握CAN通信矩阵识读方法与CAN通信调试软件的使用方法;

能力目标:

  • 能根据CAN通信协议文件资料和CAN调试软件完成CAN报文的获取解析与发送并对车辆的线控功能进行调试。

任务描述

线控底盘作为智能网联汽车的执行部件,需要完成来自决策控制系统的运动命令,实现各种车辆控制意图。在这一章节,你将学习各个线控系统的原理,在此基础上进一步学习CAN通信相关知识完成线控底盘的控制调试工作。需要说明的是,本章节不过于关注CAN的基础知识,而是结合CAN调试的实际工作过程进行学习。

任务准备

1.资料学习


文档中的视频:




2.任务准备

//CAN驱动底层驱动,与硬件有关,这里不演示

#include <XXXXXXX.h>


void setup()

{

  Serial.begin(115200);


  // 初始化MCP2515运行在16MHz,波特率为500kb/s,掩码和过滤器禁用.

  if(CAN0.begin(MCP_ANY, CAN_500KBPS, MCP_16MHZ) == CAN_OK) 

  Serial.println("MCP2515 Initialized Successfully!");

  else Serial.println("Error Initializing MCP2515...");


  CAN0.setMode(MCP_NORMAL);   // 更改为普通模式以允许发送消息

}

unsigned char speed_data[8] = {0x00, 0x00,0x00, 0x00,0x00,0x00, 0x00, 0x00};//发送数据

unsigned char speed_data_lsb,speed_date_msb;//EngSpeed占用两个字节

folat EngSpeed=a;//速度物理值,有上位机解算得到


void loop()

{

  

  speed_data_lsb=(EngSpeed/0.0001525)&0xff;//取低八位,信号的真实物理值 = 信号值 * 精度+偏移量

  speed_data_msb=(EngSpeed/0.0001525)&>>8;//取高八位,

  speed_data[3]=speed_data_lsb;

  speed_data[4]=speed_data_msb;

// send data:  ID = 0x100, Standard CAN Frame, shu'ju'chas, 'data' = array of data bytes to send

  byte sndStat = CAN0.sendMsgBuf(0x100, 0, 8, speed_data);

  if(sndStat == CAN_OK){

    Serial.println("Message Sent Successfully!");

  } else {

    Serial.println("Error Sending Message...");

  }

  delay(100);   // send data per 100ms

}


任务实施

尝试编写其它数据的CAN通信代码

任务拓展

CAN 基础学习资料:https://wenku.baidu.com/view/7701528a6529647d2728520f.html