% 设置参数
stroke = 330; % 活塞行程,单位:mm
L1 = 150; % 连杆长度,单位:mm
L2 = 200; % 连杆长度,单位:mm
R = 100; % 曲柄半径,单位:mm
% 初始化图形窗口
figure('Position', [100, 100, 800, 500]);
axis equal;
axis([-L1-L2-R-50, L1+L2+R+50, -stroke-50, stroke+50]);
grid on;
hold on;
% 绘制抽水唧筒机构简图
ground = line([-L1-L2-R-50, L1+L2+R+50], [0, 0], 'Color', 'k', 'LineWidth', 2);
crank = line([-R, 0], [0, 0], 'Color', 'r', 'LineWidth', 6);
connecting_rod = line([0, 0], [0, 0], 'Color', 'b', 'LineWidth', 6);
piston = rectangle('Position', [-50, -stroke/2, 100, stroke], 'FaceColor', 'g', 'EdgeColor', 'none');
% 创建动画
theta = linspace(0, 2*pi, 100);
for i = 1:length(theta)
updateAnimation(theta(i), crank, connecting_rod, R, L1, L2, stroke);
pause(0.02); % 设置帧之间的间隔时间,单位为秒
end