请选择 进入手机版 | 继续访问电脑版
查看: 5813|回复: 3

好物推荐 | 基于S32K142的汽车电机控制参考设计板

[复制链接]
  • TA的每日心情
    开心
    2024-3-26 15:16
  • 签到天数: 266 天

    [LV.8]以坛为家I

    3298

    主题

    6545

    帖子

    0

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    32001
    最后登录
    2024-4-9
    发表于 2019-12-2 09:31:04 | 显示全部楼层 |阅读模式
    随着汽车电子技术的发展,以及消费者对汽车驾驶舒适性及智能自动驾驶技术的需求日益增长,汽车电子中出现了越来越多基于电机控制的应用,比如发动机燃油泵、机油泵、冷却风扇、空调压缩机、座椅调节、门窗控制器等。同时,这些应用正由传统有刷直流电机(DC-Motor)升级为三相交流控制的无刷直流(BLDC)和永磁同步(PMSM)电机,因为BLDC和PMSM拥有以下优势:


    更高效,节能,从而降低汽车排放

    无刷工作寿命更长,噪声小,舒适性好


    但是,控制BLDC和PMSM电机需要用到复杂的矢量控制(FOC)算法,因此需要更高性能的CPU内核的微控制器。
    6.png
    S32K14x系列高性能通用汽车级微控制器使用可支持32-bit单精度的硬件浮点数处理单元(FPU),运行高达112MHz主频(HSRUN模式)的ARM Cortex M4F内核,并配备了16通道的DMA、支持CAN-FD的FlexCAN模块和用于BLDC/PMSM电机控制的dual 12-bit高速 ADC、支持灵活配置的FlexTimer定时器(产生中间对齐带死区插入的PWM信号)。


    S32K14x系列MCU框图如下↓↓↓
    7.png
    为了加速用户基于S32K14x系列MCU的通用汽车电子应用开发,NXP应用工程师团队专门开发了基于S32K142和MC33GD3000 MOSFET预驱动芯片的S32K142-MC24 RDB(Reference Design Board,参考设计板),该参考设计板提供以下特性:


           支持24V系统(同时兼容12V系统)输出800W功率的FOC BLDC/PMSM电机控制应用;
           支持多种电机的直接参数调节;
           支持CAN/LIN/PWM电机控制输入;
           支持双电阻和三电阻采样;
           支持过压(OV)、欠压(UV)、过流(OC)、过温(OT)和短路等诊断和保护;
           实现了堵转检测和弱磁控制等高级电机控制算法。


    S32K142-MC24参考设计板一览↓↓↓
    8.png
    S32K42-MC24 RDB硬件系统设计


    S32K42-MC24 RDB的硬件系统功能框图如下↓↓↓
    9.png
    8~36V的VBAT电源输入首先通过防反接保护电路获得Vin作为DC-DC电源转换器的输入和MC33GD3000及三个H桥驱动电路的功率电源,产生7V的Vpre,然后再经过两个LDO电压调节器产生两路5V电源分别给S32K142主控MCU和TJA1043T及TJA1021T收发器供电,并为高精度模拟电路提供参考电压。

    SWD接口用于S32K142的程序下载和调试,TRGMUX接口可以将FOC算法的触发信号输出辅助调试,同时设计了一个TTL电平的UART接口用于与上位机的FreeMASTER MCAT电机参数调节GUI工作通信。

    为了支持位置和速度传感器,预留了一个HALL传感器和一个编码器接口从而实现有传感器的FOC算法,信号调理和放大电路保证了BLDC/PMSM电机的三相电流采集和无传感器FOC算法反电动势采集。


    整个参考设计板对外的接口分布如下图↓↓↓
    10.png
    各个接口的信号分配如下表↓↓↓
    11.png
    S32K42-MC24 RDB软件系统设计


    S32K142-MC24 RDB提供了一个基于NXP S32K1xx SDK RTM3.0.0和AMMCLIB 1.1.15的软件支持包,其软件架构如下图所示↓↓↓
    12.png
    为了加快用户的应用程序开发,S32K142-MC24 RDB的软件支持包中提供了所有板上外设模块的板级支持包(BSP),在应用层,除了电机控制,用户还可以基于BSP提供的API接口添加自己的应用程序和通信协议栈。

    S32K142-MC24 RDB的软件支持包提供了一个电机控制的样例工程,帮助客户使用S32K142-MC24 RDB快速验证和评估S32K142的BLDC/PMSM电机控制性能,该软件包提供的功能特性如下:


          可以提供FreeMASTER MCAT实现开箱(Out-of-Box)电机控制和参数调节;
          支持无传感器 (Sensorless) FOC BLDC/PMSM电机控制;
          支持基于Hall和Encoder的有传感器FOC BLDC/PMSM电机控制;
          支持丰富的电机控制诊断和保护:过压(OV)、欠压(UV)、过流(OC)、过温(OT)和短路;
          实现了弱磁控制(FW)及堵转检测高级电机控制算法;
          支持基于双电阻和三电阻采样的FOC算法;
          集成CAN/LIN/PWM通信的BSP层API;
         提供S32DS IDE应用工程和Makefile编译工程,从而支持多种工具链——GCC、IAR和GHS以及多种调试器——Lauterbach、U-Multilink 和J-LINK。


    S32K142-MC24 RDB软件支持包提供的电机控制的样例工程工作流程图如下↓↓↓
    13.png
    S32K142-MC24 RDB软件支持包提供的电机控制的样例工程工作流程图如下↓↓↓
    14.png
    上电复位后, MCU将在Startup过程中完成SRAM的ECC初始化,RAM初始化,在main()函数最开始增加200ms的延迟以保证MC33GD3000能够正常初始化。

    然后调用BSP_Init()完成电机控制相关外设和CAN/LIN/PWM接口的初始化,调用FMSTR_Init()完成FreeMASTER通信的初始化。最后调用App_MotorControl_Init()完成MCAT变量、电机控制状态机及FOC算法参数的初始化并打开FTM3的PWM通道输出开始电机控制。

    在主循环中,周期调用—— FMSTR_Poll()轮询与FreeMASTER MCAT的数据通信、App_Motor_Fault_Error_Handle()处理电机控制错误、App_Communication_Handle()完成CAN/LIN/PWM电机控制命令接口和状态反馈。

    用户可以使用以下方法控制电机RUN/STOP和转速:   


           FreeMASTER MCAT GUI (J2的TTL UART或者J3/4的SWD调试接口);
           PWM信号输入(J10);
           CAN (via J9, 500Kbit/s CAN 2.0标准帧) and LIN (via J8, 19200bit/s LIN with 增强型校验和)总线,CAN控制速度,LIN控制RUN/STOP。

    Tips


    用户可以通过Sources/Application.h:中的宏定义Motor_SpeedControl_Method完成方法b)和方法c)的切换。

    性能测试与结论

    1.存储器资源使用


    S32K142-MC24 RDB软件支持包提供的电机控制的样例工程使用S32DS for ARM v2018.R1 IDE,开启-O1的优化等级的编译结果如下↓↓↓
    15.png
    使用的S32K142存储器资源如下表↓↓↓
    16.png
    2.外设资源使用


    S32K142-MC24 RDB使用的S32K142 MCU外设资源如下表↓↓↓
    17.png
    3.FOC算法关键代码执行时间


    FOC算法是BLDC和PMSM电机控制的关键算法,使用如下配置:


    ① CPU内核运行在RUN模式(@80MHz),总线频率40MHZ, Flash时钟26.667MHz,内核Cache使能,32-bit 单精度FPU使能。


    ② CPU内核运行在HSRUN模式(@112MHz),总线频率56MHZ, Flash时钟28MHz,内核Cache使能,32-bit 单精度FPU使能。


    同时针对GCC 6.3 (S32DS for ARM v2018.R1中集成的支持S32K1xx SDK RTM3.0.0的编译器版本) 的不同编译器优化等级((-O0: 无任何优化, -O1:开启一级优化)和不同的相电流采样方法(双电阻/Daul-shunt和三电阻/Tri-shunt)配置,测试结果如下表↓↓↓
    18.png
    4.功率输出与温度测试


    随着S32K142-MC24 RDB输出功率的增加,板子的温度也会不但上升,下图为功率输出与温度变化曲线,可以看到,在不超过110摄氏度(S32K142支持的最高工作环境温度为125摄氏度(M温度等级器件))的情况,该参考设计板的功率输出可以达到800W的设计目标↓↓↓
    19.png
    总结

    S32K142-MC24 RDB是一块针对24V(兼容12V)汽车通用电机控制应用的参考设计板,它可以支持无传感器/有传感器、双电阻/三电阻采样电路的FOC BLDC/PMSM电机控制,通过丰富的板载硬件外设资源和成熟软件支持包(含样例工程),用户可以开箱即用、快速评估和验证基于32K14x系列MCU的BLDC/PMSM电机控制应用。

    S32K142-MC24 RDB提供的软硬件设计资源如下:   
    快速上手指南(QSG);
    选型手册(Fact Sheet);
    硬件用户指南(HWUG);
    软件用户指南(SWUG);
    硬件设计原理图和PCB Layout文件(Schematic & Gerber file)
    电机控制软件支持包:
    S32DS for ARM v2018.R1 IDE样例工程;
    支持GCC、IAR和GHS的Makefile编译工程支持Lauterbach、PEMicro U-Multink和J-LINK调试器/编程器;
    基于FreeMASTER 2.5de MCAT电机控制和参数调剂GUI。   

    小提示

    S32K142-MC24 RDB资料下载、详细信息获取,以及购买,请访问NXP官方产品网页



    作者:NXP                    文章出处:NXP客栈


    签到签到
    回复

    使用道具 举报

  • TA的每日心情
    难过
    2023-9-6 15:15
  • 签到天数: 211 天

    [LV.7]常住居民III

    34

    主题

    805

    帖子

    0

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    2033
    最后登录
    2024-3-21
    发表于 2019-12-2 10:49:15 | 显示全部楼层
    800W的功率真厉害!
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    0

    主题

    2

    帖子

    0

    新手上路

    Rank: 1

    积分
    28
    最后登录
    2019-12-16
    发表于 2019-12-2 22:06:08 | 显示全部楼层
    这个是汽车上面的电机用的。价格肯定不便宜。看看就好了。
    不过板子耐温125℃,应该不是芯片的耐温吧。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    0

    主题

    1

    帖子

    0

    新手上路

    Rank: 1

    积分
    10
    最后登录
    2022-9-21
    发表于 2022-9-20 16:43:00 | 显示全部楼层
    S32K142-MC24 RDB,您好我想请问一下上述软件包我在官网上没有找到
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2024-4-19 07:31 , Processed in 0.136587 second(s), 23 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

    快速回复 返回顶部 返回列表