本文来自知乎 Erick-Chiang, 欢迎关注作者。
1 引言
1)电机外特性曲线是什么?
source: 增程式混合动力洗扫车能量管理策略研究
二 电机外特性曲线绘制的详细步骤
前面也讲过,电机外特性曲线就是功率或转矩随转速变化的曲线,那么其实很简单,转速(Rpm)就是自变量X,功率(kW)就是因变量Y1,转矩(N.m)就是因变量Y2。
步骤1:记录标定好数据的转速(Rpm)、功率(kW)、转矩(N.m)点,如下所示:
步骤3:在matlab中的新建脚本,编写绘制图形的代码
figure; % 创建一个新图形窗口
plot(Rpm, Torque, 'r-'); % 绘制第1组数据
yyaxis left %因为有两个纵轴,一左一右都需要显示并且表示出物理意义
ylabel('扭矩:N.m');
hold on; %因为有两条曲线,所以画完一条曲线后,需要用这条语句,在原先的图上再画一条
plot(Rpm, P, 'b--');
yyaxis right %
grid on;
ylim([0 200])
%%
xlabel('转速:Rpm'); % x轴标签
ylabel('功率:kW'); % y轴标签
title('XXX电机外特性曲线'); % 图标题
绘制的外特性曲线如下所示:
有时候甚至要画低电压、额定电压、高电压的三条曲线,如下:
三 结语
汽车研发交流群,有兴趣的朋友请添加群主:prOmiseyes,备注:公司+职务入群。仅限汽车从业人员。
最后附上Chatgpt(知乎直达)的答案:使用Matlab脚本绘制电机外特性曲线,具体步骤:
1. 准备数据
2. 创建变量
步骤1:记录数据
MATLAB 复制代码
Rpm = [0, 1000, 2000, 3000, 4000, 5000]; % 转速 (单位: rpm)
Torque = [0, 50, 100, 150, 200, 250]; % 转矩 (单位: N.m)
Power = [0, 10, 20, 30, 40, 50]; % 功率 (单位: kW)
3. 编写绘制图形的代码
MATLAB 复制代码
% 创建一个新的图形窗口
figure;
% 绘制转矩随转速变化的曲线
plot(Rpm, Torque, 'r-'); % 使用红色实线
ylabel('扭矩 (N.m)'); % 设置左侧y轴标签
% 添加第二个y轴
yyaxis right;
plot(Rpm, Power, 'b--'); % 使用蓝色虚线
ylabel('功率 (kW)'); % 设置右侧y轴标签
% 其他设置
xlabel('转速 (rpm)'); % 设置x轴标签
title('电机外特性曲线'); % 设置图标题
grid on; % 显示网格
ylim([0 250]); % 设置y轴范围
4. 运行脚本
5. 多条曲线绘制
示例:绘制三条不同电压下的曲线
MATLAB 复制代码
% 创建一个新的图形窗口
figure;
% 绘制低电压下的曲线
plot(Rpm, Torque_low, 'r-', 'DisplayName', '低电压');
hold on;
% 绘制额定电压下的曲线
plot(Rpm, Torque_nominal, 'b--', 'DisplayName', '额定电压');
% 绘制高电压下的曲线
plot(Rpm, Torque_high, 'g:', 'DisplayName', '高电压');
% 添加第二个y轴
yyaxis right;
plot(Rpm, Power_low, 'r-');
plot(Rpm, Power_nominal, 'b--');
plot(Rpm, Power_high, 'g:');
% 其他设置
xlabel('转速 (rpm)');
ylabel('扭矩 (N.m)');
title('不同电压下的电机外特性曲线');
grid on;
ylim([0 250]);
legend; % 显示图例
6. 曲线拟合
示例:多项式拟合
MATLAB 复制代码
% 进行多项式拟合
p = polyfit(Rpm, Torque, 3); % 三次多项式拟合
Torque_fit = polyval(p, Rpm);
% 绘制拟合曲线
figure;
plot(Rpm, Torque, 'ro', 'DisplayName', '原始数据');
hold on;
plot(Rpm, Torque_fit, 'b-', 'DisplayName', '拟合曲线');
xlabel('转速 (rpm)');
ylabel('扭矩 (N.m)');
title('电机外特性曲线拟合');
grid on;
legend;
7. 使用Curve Fitting Tool
步骤1:打开Curve Fitting Tool
MATLAB 复制代码
cftool