斯特林发动机设计报告

1 设计过程与方案概述

任务要求为设计一个斯特林发动机,大部分零件采用金属加工的方式,最后能够提供0.5w的功率输出。有以下方面的目标:设计一个能够满足做功要求的气缸,设计与之配套的连杆机构,设计动力输出装置。

针对以上要求,我们先采用β型发动机作为模板进行设计,先设计气缸,后进行相关的理论计算和仿真,最后根据计算和仿真结果对设计进行修改,对修改好的设计进行加工,经过实地组装测试之后再对出现的问题进行分析和修改,最后得到能够满足要求的发动机。

中途进行测试的时候发现β型气缸相对于α来说加工有一定难度,即满足公差设计的加工也可能由于做功活塞和配气活塞之间的差距导致漏气,使得整体运行时存在一定的气体溢出,并未能推动活塞做功。所以我们后续改用了β,α两种发动机并行设计的方式,先在α型上测试成功后,再利用吸取到的经验和设计方式来完成β的设计。

最终测试结果如下:β发动机不能够正常运行,但是气缸的密封基本完成,α型发动机能正常运转,且能够点亮一个额定功率为0.5w的电灯泡,经电表测试约为一个3.2V的电压源,但在实际测试时,没有能够达到0.5W的输出功率。

2 气缸设计与加工设计

2.1 气缸设计与做功计算

单独对气缸进行分析和设计时,采用的计算方式是先估算转速和单个做功冲程所能做的功,作为一个机械功的功率来源,要先保证功率来源大概约为0.5w的3到5倍,使得为后续机械装置带动发动机皮带留够足够的功率。

气缸的设计关键在于密封性,体现在加工方面就是公差的设计,如果产生的偏差导致气缸和活塞的成品配合不好,则在加热过程中气体就会溢出,使得整个气缸无法产生较大的温差,使得内外压强之间的差距很小,自然无法推动活塞对外做功。在进行气缸设计时,气缸的直径也是一个关键的指标,如果直径过大,加热时间过长,则无法充分受热,无法产生推力,当直径过小时,压强产生的推力会小很多,影响最终的输出功率,我们根据之前学长的发动机进行了简单的估算,直径在1cm-2cm为宜,而公差设计要求气缸为负公差-0.02mm,活塞为正公差+0.02mm,即使加工得没有特别准确,也可以保证通过简单的手动打磨和不断测试可以使得气缸和活塞刚好匹配。

由于高度对称的模型气缸设计,可以建立温度随模型位置的函数t(x),以及空气密度随温度变化的函数ρ(t),则根据理想气体方程PV=nRT,进行变形,得到PV=ρSX/MRT,调整位置得到,PV=S/MR*(ρXT),变为微分形式可得到,PSdx=S/MR*(ρ(x)T(x)dx),变形得,FSdx=S/MR*(ρ(x)T(x)dx)即dw=S/MR*(ρ(x)T(x)dx),由于该过程恒处于大气压下,将各物理常数,代入积分后可直接得到结果。

以下为matlab计算步骤:先根据图进行采样,计算并拟合出温度位置曲线T(x),再代入公式进行计算,β型的计算过程过程如下图:

则单次做功冲程能够对活塞做功1.07J,也就是说在转速约为5-8转每秒时,完全可以提供足够的功率带动后续的传动装置和发电机。

对于α的计算如下图:

S]GBCPA@4I\$DN0RWP4A%X(2_tmb{width=”5.759722222222222in”
height=”2.3715277777777777in”}

则单次做功冲程能够对活塞做功0.9152J,也就是说在转速约为8-12转每秒时,完全可以提供足够的功率带动后续的传动装置和发电机。

2.2 密封、公差、轴承、振动的设计

2.2.1 振动

在经过组装测试后,我们观察了其运动时的振动情况,并对振动来源进行分析,从而提出了一些减少振动的方案。

对于β型的振动分析:

IMG_256{width=”2.42882217847769in”
height=”3.2392957130358706in”}

可以看到,主要振动的来源在于两连杆间半个周期收活塞的推力传导产生对于中轴形成的错位的力矩,此外,飞轮转动使得由角动量产生的对抗上述力矩的回正力矩(类似惯性力)。综合上述过程,整体振动的来源就是上述周期性力矩的合力矩,但由于存在相互抵消的部分,只要飞轮和连杆的设计配合比较好,就能减小振动的影响,即飞轮设计的大一些,连杆的宽度设计得小一些。

对于β型的振动分析:

可以看到由于α冷热缸分开且加入回热器后,会由于气体做功出现两组相反的周期性旋转力矩,且时间错开,这导致会产生一个稳定的围绕支撑杆的左右转动进而引起振动,且最终呈现的合力矩会使在如上图方向时使发动机整体逆时针旋转,对整体的稳定性产生极大的影响。对此我们采用了相应的解决方案,在下部固定橡胶的减震底座,使底座与地面摩擦力增大,不使其绕固定轴进行旋转,同时减少其振动。

阅读更多

课题:斯特林发动机机械系统动力学仿真

一、初始设计参数与热力学计算

对于我们设计的β型斯特林发动机,提出了如下的设计目标:

物理参数 数值(单位)
输出功率 0.5W

在我们初步设计的斯特林发动机(模型如下图所示)中,相关的尺寸参数如下:

物理参数 数值(单位)
排气活塞行程h1 42mm
做功活塞行程h2 45mm
相位角α 85°
气缸内径r 10mm
排气活塞半径r0 8mm
气缸内气体压强最小值Pmin 101300Pa(与环境大气压一致)

图1:设计三维概念模型

将设计好的模型导入Ansys软件中进行静态热力学的仿真(如下图所示),可以得到气体温度的状态参数如下:

压缩空间气体温度Tc 439K
膨胀空间气体温度Te 611K

图2:Ansys静态热力学仿真

根据史密特理论的相关计算公式,可以编写相应程序,由以上参数为基础计算并绘制P-V图以及单次循环所作功,代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
afa=2*85*pi/360;
theta=0:0.01:pi*2;
tc=439;
te=611;
l1=0.021;
h1=l1*2;
l2=0.0225;
h2=l2*2;
r=0.01;
r0=0.008;
vse=r0*r0*pi*h1;
vsc=r*r*pi*h2;
ve=vse.*(1-cos(theta))./2;
vb=(vse+vsc)./2-sqrt((vse.*vse+vsc.*vsc)./4-vse.*vsc.*cos(afa)./2);
vc=vse.*(1+cos(theta))./2+vsc.*(1-cos(theta-afa))./2-vb;
vr=(r*r-r0*r0)*0.02*pi;
tao=tc/te;
k=vsc/te;
xb=vb/vse;
x=vr/vse;
fai=atan(k.*sin(afa)./(1-tao-k.*cos(afa)));
s=tao+4.*tao.*x./(1+tao)+k+1-2.*xb;
b=sqrt(tao.*tao+2.*k.*(tao-1).*cos(afa)+k.*k-2.*tao+1);
deta=b./s;
pmin=101300;
p=pmin.*(1+deta)./(1-deta.*cos(theta-fai));
plot(rad2deg(theta),p);
xlabel('角度θ(°)');
ylabel('压强P(Pa)');
title('α=85°时θ-P图线');
v=ve+vr+vc;
figure;
plot(rad2deg(theta),v);
xlabel('角度θ(°)');
ylabel('体积V(m^3)');
title('α=85°时θ-V图线');
figure;
plot(v,p);
xlabel('体积V(m^3)');
ylabel('压强P(Pa)');
title('α=85°时P-V图线');
w=10000000*pmin.*vse.*pi.*deta.*(1-tao).*sin(fai).*sqrt(1-deta)./((1+sqrt(1-deta.*deta)).*sqrt(1+deta));
disp(w);

通过运行上述代码,可绘制出如下热力学数据图线,并计算出单次循环做功为**0.0523J**。

图3:α=85°时θ-P图线

图4:α=85°时θ-V图线

图5:α=85°时P-V图线

因此,若要达到设计目标的0.5W功率要求,需要转速达到rmin=0.5*60/0.0523≈573.6rpm

此外,以上设计参数所得到的P-V图线偏扁圆形,与常见的P-V图线形状有一定差异,这主要是与设定的初始相位角有关,若将相位角改为45°,则可以得出如下P-V图线,并可计算得出此时对应的单次循环做功为0.0608J,较先前有所提高;但在β型斯特林发动机中,相位角是由相关零件的设计直接确定的,故在后面的仿真中仍然保持相位角α=85°的设定。

图6:α=45°时P-V图线


二、Adams动力学仿真

在不考虑各类摩擦的情况下,对于基本的曲柄连杆传动机构来说,有如下基本公式:

图7:转矩公式

根据此公式可得到如下代码,绘制转矩变化曲线如下图:

1
2
3
4
5
6
7
8
9
10
ap=pi*l2*l2;
fp=ap.*(p-pmin);
tq=(sin(theta)-cos(theta)).*fp.*r;
t_qm=w/2/pi;
t_qm_(1,1:629)=t_qm;
figure;
plot(rad2deg(theta),tq,rad2deg(theta),t_qm_);
xlabel('角度θ(°)');
ylabel('转矩');
title('转矩变化曲线');

图8:转矩变化曲线,红线为力矩平均值

根据如下仿真步骤,将Fusion360建模软件中建立完成的模型导出为STEP格式,进入Adams仿真软件中进行进一步的动力学仿真。

图9:仿真步骤

在第一次仿真时,仅仅将原有模型中设计到传动的部分保留,并将简化后的模型导入仿真,主要反映出两大问题,第一时间进行了修改(以上给的参数均为该次修改后确定的):

(1)传动部分设计失误,主要表现为各个曲柄的转动不同轴而导致角速度不一致,从而无法达到稳定的压缩与膨胀之间的状态转换,即活塞体系无法完成循环;

阅读更多

课题:斯特林发动机热力循环计算及分析

根据选定的斯特林发动机类型确定具体的传动机构,开展斯特林发动机的热力循环计算;从最大化斯特林发动机单次循环的输出功角度出发,优化斯特林发动机系统所涉及的传动机构、相位角等参数

一、背景介绍

通过学习本课程,我们需要完成斯特林发动机的设计与制造过程,在此过程中掌握工程设计全流程中的基本技能。之所以选择斯特林发动机,是因为能够将热能转化为机械能,并具有以下特点:

  1. 效率高:斯特林发动机的热效率相对较高,与理论上最高热效率的卡诺循环相同,实际中可以达到30%以上,远高于传统内燃机;
  2. 噪音低:斯特林发动机工作过程中没有爆炸过程,工作过程相对平滑,噪音和振动较小;
  3. 热源多:斯特林发动机作为一种外燃机,可以直接利用任何可用热源,如太阳能、地热能与生物质能等可再生能源;
  4. 排放少:斯特林发动机在工作过程中没有直接燃烧,为闭口系统,工质环境友好,没有任何有害物排放;
  5. 寿命长:连续运行,安全可靠,对高温侧材料要求较高。

斯特林发动机的概念可以追溯到19世纪初,但由于技术限制和市场竞争,长期以来并没有像内燃机那样广泛应用。最近,随着对环保和能源效率的关注不断增加,斯特林发动机再次引起了一些研究兴趣,在水下动力、太阳能动力、空间站动力、热泵空调动力,车用混合推进动力等方面得到了广泛的研究与重视,并且已得到了一些成功的应用。

斯特林发动机按照结构可分为α型、β型和γ型三类,其中α型又称为双动力活塞式发动机,β型和γ型又称为配气活塞式发动机。

通过对于三种类型发动机的基本结构和工作原理的分析与比较,我们最终选择β型斯特林发动机进行实际设计制作。同时考虑到整体项目要求、制作难度与成本等方面,选择单作用斯特林发动机进行制作。

β型斯特林发动机属于配气活塞式发动机,基本结构中包含配气与动力(做功)两种活塞。其中,配气活塞只起到配气作用,并不对外做功,其上下两端压力一致,用于使工质在循环回路中来回流动;动力活塞上、下两腔气压差很大,必须进行密封处理。

斯特林发动机的基本工作原理为斯特林循环。理想的斯特林循环主要包括定温压缩、定容吸热、定温膨胀和定容放热共四个过程,其中两个为定温过程,两个为定容过程:

  1. 定温压缩:工作气体在活塞的压力作用下被压缩,使得气体温度降低;
  2. 定容吸热:压缩后的工作气体通过外部热源加热,吸收热能,温度升高;
  3. 定温膨胀:加热后的工作气体在活塞的推动下膨胀,产生机械功,带动发电机等设备工作;
  4. 定容放热:膨胀后的工作气体通过冷却器冷却,使其温度降低,回到压缩前的状态。

上述四个过程循环往复,共同构成斯特林循环。为了确定并验证我们所初步设计的发动机模型能否满足课题要求的最大输出功率达到0.5W,我们需要分析研究在设定条件(与实际设计结构一致)下单次斯特林循环的输出功,并通过计算结果返回迭代传动结构、尺寸与相位角等参数的设计与确定,以实现斯特林发动机单次循环输出功的最大化。


二、物理模型

本报告将给出根据我们目前设计的具体结构参数计算的单次斯特林循环输出功,并建立目标函数通过优化相位角等参数最大化单次循环输出功。

传动机构

传动机构方面,我们采用曲柄连杆机构,基本的物理模型图与我们的设计建模图如下:

上述设计的相关参数如下:

【1】连杆比λ:

通过实际加热测试测定,四个过程状态下活塞的位置参数大致如下:

(1)定温压缩

(2)定容吸热

阅读更多

课题:发动机驱动部件的制作(气缸)

一、需求分析

β型斯特林发动机是一种热机,通过气体的循环膨胀和压缩过程来产生功。气缸作为该发动机的核心部件之一,承担了容纳工作气体和推动活塞的重要职责,将工质气体受热膨胀的能量转化为机械功。本文旨在分析β型斯特林发动机气缸的工作原理及相关参数的确定与结构设计以满足一定的性能要求,同时在此过程中提升对气体膨胀做功及整个过程中密封、摩擦、公差设计、基本加工工艺、材料传热性能乃至动力学等的认识。

广义的设计要求

  1. 高热效率: 气缸必须具备高效的热传导和隔热性能,以确保最小的热能损失和高工作效率。
  2. 耐高温性: 由于斯特林发动机工作温度较高,气缸的材料需要能够承受高温环境,同时保持结构稳定。
  3. 公差精度: 在气缸的内径、外径和活塞直径等关键尺寸上需要达到高精度的公差,以确保气缸和活塞的匹配度。
  4. 耐腐蚀性: 考虑到工作气体可能包含腐蚀性物质,气缸的材料应耐腐蚀,以延长使用寿命。
  5. 轻量化: 尽量降低气缸的质量,以减小发动机的整体质量,提高机动性。
  6. 制造工艺: 采用精密的机械加工工艺,以确保气缸内外表面的平滑度和尺寸精度。
  7. 热传导设计: 优化气缸的热传导设计,以提高热能的传递效率。

具体的设计要求

针对最终需要完成的斯特林发动机,需要满足如下几条设计指标与功能要求:

  1. 最大输出功率: 不小于0.5W
  2. 热源:普通酒精灯
  3. 连续运行时间:不小于30分钟
  4. 密封性能: 气缸必须能够有效密封工作气体,具有良好的密封性能以确保高效的热循环过程。
  5. 材料选择: 选择常用的适当材料与零部件以满足高温环境下的性能需求。

满足这些需求将有助于确保β型斯特林发动机的性能优越,同时提高其在各种应用领域的适用性。制作气缸需要综合考虑这些需求,并在制造过程中严格控制相关参数,以获得卓越的产品性能。


二、方案提出

1. 加工方式——机加工

选用机加工方法制作缸筒与活塞的理由如下:

  1. 精确尺寸控制:机加工可以实现非常高的尺寸精确度,确保气缸内径和活塞直径的精确匹配。这是确保气缸与活塞之间的紧密密封以及减少能量损失的关键。精确尺寸控制也有助于降低磨损,延长气缸和活塞的寿命。
  2. 表面质量:机加工可以产生平滑、光洁的表面,减少摩擦和磨损。这对于斯特林发动机的效率至关重要,因为高效的热循环需要最小的摩擦损失。
  3. 公差控制:机加工允许对关键尺寸的公差进行严格控制,确保气缸和活塞的尺寸在允许范围内,从而确保它们可以良好地配合。公差控制还有助于提高气缸和活塞的互换性,降低制造成本。
  4. 材料选择:机加工允许使用各种高强度、耐高温材料,如高温合金或陶瓷,以满足斯特林发动机在高温工作环境下的要求。这有助于提高耐高温性,确保气缸和活塞在极端条件下保持结构稳定。
  5. 加工复杂几何形状:斯特林发动机的气缸和活塞通常具有复杂的几何形状,以实现最佳性能。机加工可以实现这些复杂形状,包括内部凹凸和特殊的密封表面,以确保气缸能够有效地容纳工作气体。

总的来说,机加工满足了精确性、表面质量、公差控制、材料选择和复杂几何形状等多个需求,这些需求都对斯特林发动机的性能和产品质量产生显著影响。通过机加工,可以确保气缸和活塞能够稳定、高效地工作,从而提高发动机的性能和可靠性。

2. 装置主要部件确定

β型斯特林发动机是一种热机,其原理基于气体的周期性膨胀和压缩过程,使发动机能够执行其热循环,将热能转化为机械能。基于实际的需求与制造情况,为方便后期接入整个斯特林发动机,考虑到β型斯特林发动机的基本工作原理,本驱动部件主要由如下四个主要部分构成:

  1. 气缸:气缸是β型斯特林发动机的关键组成部分,用于容纳和引导工作气体,包括热源和冷源。在工作过程中,气体会经历周期性的膨胀和压缩,这需要一个容器来容纳和引导气体。因此,气缸是必不可少的。
  2. 排气活塞:排气活塞是β型斯特林发动机的重要组成部分,它在工作过程中与冷源接触,以帮助气体压缩。排气活塞的运动导致气体的压缩,从而提供负功。它的存在有助于形成热循环,从而使发动机能够持续工作。
  3. 做功活塞:做功活塞是另一个重要的部件,它与热源接触,推动气体膨胀,从而提供正功。做功活塞的运动是热机的关键部分,因为它将热能转化为机械功,实现发动机的工作。
  4. 散热片:散热片在β型斯特林发动机中的必要性主要取决于工作条件和设计要求。由于发动机工作时产生热量,散热片用于冷却气缸和活塞,以确保它们不过热。如果不进行散热,发动机温度将升高,可能导致性能下降、部件损坏或设备故障。因此,散热片在保持发动机温度稳定和可控的情况下是必要的。

这些部件共同协作,构成了发动机的关键部分,使β型斯特林发动机能够将热能转化为机械能,并提供功率输出。

3. 材料选择

基于需求分析与相关指标的要求,综合考虑各材料的导热性能与相关参数,基于这两种材料的特性和性能在斯特林发动机应用中的相对优势,最终选择**不锈钢-304材料用于制作活塞、铝合金-0001材料用于制作气缸**,理由如下:

  1. 不锈钢-304用于活塞制作
    • 高耐磨性和耐腐蚀性:不锈钢-304是一种耐磨性和耐腐蚀性较高的材料,这在活塞的应用中是非常重要的。不锈钢的表面抵抗摩擦和腐蚀,有助于提高活塞的寿命。
    • 高强度:不锈钢-304具有相对较高的强度,这对于承受活塞运动和高压力的应力非常重要。这有助于确保活塞的结构稳定性。
    • 高温稳定性:不锈钢-304在一定温度范围内表现出良好的稳定性,这对于斯特林发动机在高温环境下的应用非常有利。
    • 可加工性:不锈钢-304相对容易加工,使其适合制作复杂几何形状的活塞,以满足特定的设计需求。
  2. 铝合金-0001用于气缸制作
    • 轻质高导热性:铝合金-0001具有较低的密度,因此相对轻便,有助于降低整个发动机的质量。此外,铝合金具有良好的导热性,其导热系数相对于其他材料而言更高,可以有效地传导热量,有利于优化发动机的热传导性能。
    • 耐高温性:虽然铝合金的熔点较低,但在典型的斯特林发动机工作温度范围内,铝合金-0001表现出足够的耐高温性。此外,铝合金在高温下也能保持较好的强度。
    • 可加工性:铝合金易于加工,因此可以比较容易地制造气缸的复杂几何形状,以确保其密封性和热性能。

这样的选择有助于确保活塞和气缸能够在高温、高压和高效率的工作环境下稳定运行,并且提高了产品的寿命和性能。 除此之外,考虑到成本、加工难度与加工时间等客观限制条件因素,这两种材料也易于获取与加工,有效控制了整个制造过程的经济与时间成本。

4. 散热片的型号选择与相关尺寸的确定

散热片的主要作用是从热源(如电子元件、发动机、LED等)吸收热量,并将其有效地散发到周围环境中。使用散热片的主要原因:

  1. 保持温度稳定:散热片有助于保持热源的温度在可接受范围内。过高的温度可能导致设备故障或元件损坏,因此散热片对于稳定运行至关重要。
  2. 延长寿命:有效的散热可以延长设备和元件的寿命。高温环境可能导致元件老化,降低其寿命。通过散热片,可以有效地冷却元件并延长其寿命。
  3. 提高性能:在高温环境下,设备性能通常下降。通过散热片,可以确保设备在更长时间内保持高性能,以满足连续运行时间的需求。
  4. 安全性:一些应用中,如电子设备,高温可能导致火灾或其他安全问题。散热片有助于维持较低的温度,减少了潜在的安全风险。

考虑到制造过程的时间和经济成本有限,计划设计的大致尺寸均较小;同时为了提升散热效率,决定选用现成的特定型号的散热片,并根据散热片的相关尺寸参数确定设计的气缸与活塞的具体尺寸数据。如下图1所示,是本项目中所选用的散热片,其外径为32mm,内径为17mm,厚度为10mm。

图1:散热片型号选择

图1:散热片型号选择

在确定了选用的散热片内径为17mm后,计划制造的气缸外径也随之确定为17mm。为尽可能地提高传热效率,气缸的侧壁厚应尽量小,在此设定为2mm。于是做功活塞的外径也随之确定为17-2=15mm。除此之外,排气活塞的圆柱长杆半径也应与做工活塞的孔洞内径保持一致,设定为5mm;排气活塞的活塞头半径应大于圆柱长杆半径且小于气缸内径,在此设定为12mm。

阅读更多

课题:典型建筑墙体的稳态传热分析

一、背景介绍

建筑墙体作为建筑的重要组成部分,在维护室内舒适温度和能源效率方面起着重要作用,研究其作用及在传热过程中的特性对生态建筑的可持续发展具有重要的指导意义。发展生态节能建筑最终的目标就是要在满足室内居住者的热舒适基础上降低建筑的能耗,对实际居住者而言较关注的是如何以较低的能耗获得舒适的建筑室内热环境。考虑到当前大部分大型公共建筑、工业建筑与高层住宅的主要承重构件包括梁、板、柱等均采用钢筋混凝土结构,因此本文将着重针对此种结构简化模型的传热过程进行分析。

稳态传热是指传热系统中各点的温度仅随位置而变化,不随时间而改变的传热过程,对于这一传热过程的分析有助于评估墙体在不同环境条件下的隔热性能,其中一个关键参数是环境空气流速。本研究旨在分析单位面积上典型建筑墙体的稳态散热过程,特别关注墙体散热量随环境空气流速的变化关系。


二、物理模型

钢筋混凝土墙体结构的物理模型如下图1、2、3所示。

图1:钢筋结构图解

图1:钢筋结构图解

图2:墙体结构物理模型

图2:墙体结构物理模型

图3:墙体处传热物理模型

图3:墙体处传热物理模型

在上述简化模型中,选取房间中心为坐标原点,定义有如下参数:

(1)室内方墙高宽比为Ar=L/H;

(2)模型左端设有厚度为s的墙体;

(3)墙体内侧空气流速为V1,墙体外侧空气流速为V2;

(4)墙体内侧温度为Tf1,墙体外侧温度为Tf2,且由于研究室内散热过程,默认Tf1>Tf2;

(5)钢筋混凝土结构内表面温度为Tw1,钢筋混凝土结构外表面温度为Tw2,且由于研究室内散热过程,默认Tw1>Tw2。

注意:模型中方腔右侧墙体及上、下墙体均为绝热且不考虑厚度。


三、传热过程分析

该简化传热过程主要可以分为以下三个环节:

(1)墙体内侧的对流换热

该过程为热对流过程,由牛顿冷却公式可得:单位面积墙体上的对流传热量Q1=hΔT1

其中,h为表面对流换热系数,通过查询相关文献与手册(《民用建筑热工设计规范》 GB 50176-2016)可得,当Ar=L/H<=0.3时,空气在钢筋混凝土内表面的对流换热系数约为8.7W/m^2-K;当Ar=L/H>0.3时,空气在钢筋混凝土内表面的对流换热系数约为7.6W/m^2-K(如图4所示)。ΔT1为室内空气温度Tf1与钢筋混凝土内表面的温度Tw1之差。

图4:内表面换热系数αi和内表面换热阻Ri

图4:内表面换热系数αi和内表面换热阻Ri

(2)通过墙壁的导热(散热)过程

该过程为热传导过程,由傅里叶定律可得:单位面积墙体上的传导热量Q2=λΔT2/Δx

阅读更多

基于ROS(机器人操作系统)的数据展示系统

tips:请在使用该系统前安装好相应的库文件(详见附录二),并在不同控制台分别运行roscore(ros操作系统内核)、rosbag play –loop –pause all.bag(ros数据包展示)和rosrun gmapping slam_gmapping(任务四建图处理进程)

该系统程序名为final_system,使用以下命令克隆git仓库:

1
git clone https://github.com/Asgard-Tim/ROS-Coding.git

安装好相关库文件后可通过以下命令运行系统程序:

1
2
3
4
5
6
7
8
9
10
11
12
13
//项目构建

cd /home/ubuntu/project/catkin_ws

catkin_make

//程序运行

source /home/ubuntu/project/catkin_ws/devel/setup.bash

cd /home/ubuntu/project/catkin_ws

rosrun final_system final_system

完整代码已上传至Github平台,URL地址:Asgard-Tim/ROS-Coding: 重庆大学明月科创实验班软件设计课程作业 (github.com)

Bilibili同步上传系统演示视频Demo,链接:重庆大学明月科创实验班软件设计作业–ROS数据展示系统_哔哩哔哩_bilibili

程序主要结构与算法分析

在**main()**函数中:

  • 创建ROS节点和节点句柄。

  • 调用**initialize()**函数显示初始菜单:提示用户选择登录、注册或退出系统。

  • 定义一个user类,用于保存用户的用户名和密码信息;根据用户选择执行不同的操作:

    • 登录:要求用户输入用户名和密码,然后检查是否匹配存储在文件中的用户信息。
    • 注册:要求用户输入新的用户名和密码,然后将用户信息保存到文件中。
    • 退出系统:结束程序运行。
  • 如果登录成功,调用**systeminitialize()**函数显示登录成功后的菜单:提示用户选择不同的数据可视化选项或退出系统。

  • 根据用户选择执行不同的数据可视化操作:

任务一:用命令行窗口显示小车的IMU和里程计(odometry)数据
    • IMU数据:订阅IMU数据的ROS话题,将数据传递给回调函数callback1进行处理。

    • 回调函数callback1,处理IMU数据:

      • 从接收到的IMU消息中获取线性加速度和角速度信息。
      • 使用std::cout打印出线性加速度和角速度信息。
    • 里程计数据:订阅里程计数据的ROS话题,将数据传递给回调函数callback2进行处理。

    • 回调函数callback2,处理里程计数据:

      • 从接收到的里程计消息中获取位置和姿态信息。
      • 使用std::cout打印出位置和姿态信息。
任务二:用图形界面显示颜色相机和深度相机的数据(利用OpenCV库)
    • 颜色相机数据:订阅颜色相机数据的ROS话题,将数据传递给回调函数callback3进行处理。

    • 回调函数callback3,处理颜色相机数据:

      • 将接收到的彩色图像消息转换为OpenCV的图像格式。
      • 使用OpenCV的窗口显示彩色图像。
    • 深度相机数据:订阅深度相机数据的ROS话题,将数据传递给回调函数callback4进行处理。

    • 回调函数callback4,处理深度相机数据:

      • 将接收到的深度图像消息转换为OpenCV的图像格式。
      • 使用OpenCV的窗口显示深度图像。
任务三:用图形界面显示激光雷达的点云数据(利用PCL库)
    • 点云数据:订阅点云数据的ROS话题,将数据传递给回调函数callback5进行处理。

    • **pcl::visualization::CloudViewer viewer(“Cloud Viewer”);**:创建一个PCL点云可视化器。

    • 回调函数callback5,处理点云数据:

      • 将接收到的点云消息转换为PCL的点云格式。
      • 使用PCL的可视化器显示点云。
任务四:自行选择一种高级算法(例如语义分割、三维重建、导航定位(SLAM)等),实现该算法(可以直接利用第三方库),将其集成到系统中
    • 选择Gmapping算法(一个基于2D激光雷达使用RBPF(Rao-Blackwellized Particle Filters)算法完成二维栅格地图构建的SLAM算法)
    • 占据栅格地图数据:订阅占据栅格地图数据的ROS话题,将数据传递给回调函数callback6进行处理。
    • 回调函数callback6,处理占据栅格地图数据:
        • 从接收到的占据栅格地图消息中获取分辨率、宽度和高度等信息。
        • 创建一个OpenCV的图像对象,用于绘制地图。
        • 遍历地图的每个栅格,根据栅格的值绘制不同的颜色圆点。
        • 使用OpenCV的窗口显示地图。

各功能部分构建过程与实现效果

1.系统界面
(1)登录界面

1

(2)功能选择界面

2

2.各部分功能

整体架构思路(以imu数据显示为例,其余任务基本一致):

(1)在运行rosbag后利用rostopic list指令查看当前开放的所有话题

3

(2)找到所需数据所对应的话题(如imu数据对应的是/imu/data_raw这一topic),利用rostopic info指令查看其消息类型(如图中Type所示)

阅读更多

小车路径规划

本项目全部代码已同步上传至Github,仓库链接:Asgard-Tim/Path-Planning: 重庆大学明月科创实验班定量工程设计方法课程项目 (github.com)

一、设计要求


在本部分的课程项目中,要求我们运用LD14雷达扫描地图,在MATLAB中进行人工势场添加并对STM32小车进行路径规划,在一规定的场地中让小车避开两个矩形障碍物并以尽可能短的路径最终抵达圆形目标位置。


二、系统方案


2.1 移动底盘分析

小车为履带式小车,左右履带分别由一枚直流电机进行驱动,运动模式类似常规双轮小车,通过左右两枚电机转动的差速实现转向。该小车相对来说较为容易进行控制,只需要控制两个驱动轮的速度存在差异,即两轮差速,即可控制机器人实现无滑动摩擦的旋转,也可实现零半径转弯。

图2-1 双轮履带小车外观图

1

图2-2 两轮差速式机器人运动学分析图

2

对小车移动底盘的运动学分析(如上图2-2所示):

小车的速度控制主要是控制 X 轴(前后方向)和 Z 轴(旋转方向)的速度, 以 Vx 和 Vz 来指代,单位分别是 m/s 和弧度/s。X 轴方向以前进记为正,Z 轴方向以右转记为正。车轮速度是使用编码器来计算和得出,读取编码器计数后再转化成车轮的速度。Vz则是通过左右电机转动的差速计算得到的。

图中参数分别代表:

3

2.2 电机特性分析

在本次项目中,我们采用带有减速器与编码器的直流电机驱动小车前进。

直流电机的物理模型图如下图2-3所示。其中,固定部分有磁铁,这里称作主磁极;固定部分还有电刷。转动部分有环形铁心和绕在环形铁心上的绕组。 (其中 2 个小圆圈是为了方便表示该位置上的导体电势或电流的方向而设置的) 它的固定部分(定子)上,装设了一对直流励磁的静止的主磁极 N 和S,在旋转部分(转子)上装设电枢铁心。在电枢铁心上放置了两根导体连成的电枢线圈, 线圈的首端和末端分别连到两个圆弧形的铜片上,此铜片称为换向片。换向片之间 互相绝缘,由换向片构成的整体称为换向器。换向器固定在转轴上,换向片与转轴 之间亦互相绝缘。在换向片上放置着一对固定不动的电刷 B1 和 B2,当电枢旋转时,电枢线圈通过换向片和电刷与外电路接通。在电刷上施加直流电压 U,电枢线圈中的电流流向为:N 极下的有效边中的电流总是一个方向,而 S 极下的有效边中的电流总是另一个方向。这样两个有效边所受的洛伦兹力的方向一致(可以根据左手法则判定),电枢开始转动。具体来说就是,把上图中的+和-分别接到电池的正极和负极,电机即可转动;如果是把上图中的+和-分别接到电池的负极和正极,则电机会反方向转动。电机的转速可以理解为和外接的电压是正相关的(实际是由电枢电流决定)。

总而言之,如果我们可以调节施加在电机上面的直流电压大小,即可实现直流 电机调速,改变施加电机上面直流电压的极性,即可实现电机换向。

图2-3 直流电机的物理模型

4

在具体的使用过程中,我们需要通过在特定的引脚之间(如本次项目所用电机为1/6引脚)接上一个直流电源,电机即可转动,且改变电压大小即可改变电机转速。接线方式说明如下图2-4所示。

5

2.3 电机控制策略以及PID特性分析

小车电机驱动器芯片使用 AT8236,具有过流保护功能,并可设置电流阈值。驱动芯片只需两个逻辑输入,便可达到调速和正反转的功能,本小车中,每个电机使用两路PWM进行调速(实际上一个普通 IO 和一路 PWM 即可进行正反转 和调速)。

电机的速度使用 13 线霍尔编码器输出 AB 相进行测量,电机减速比为 1:30,使用 STM32 的编码器测量功能,并初始化为脉冲上升沿和下降沿都进行计数,可实现轮子转一圈输出 1560 个计数。

电机调速框图如下图2-5所示。

阅读更多

具有一定扶正能力的船舶设计

本项目定量分析部分Matlab代码已同步上传至Github,仓库链接:Asgard-Tim/QEA-Boat: 重庆大学明月科创实验班定量工程设计方法课程项目 (github.com)

一、项目介绍


在该项目中,我们需要设计制造一艘小船,该小船需要满足以下条件:该艘船的倾覆角度须满足在120°至140°的范围之内,即在倾斜角度到达120°之前都能够回正,同时在超过140°之后不再具有扶正的能力;此外,船体具备一定的载重能力(两罐听装可乐),不会沉没或者有太大(平衡位置甲板与水面夹角超过10°的倾斜)。为了达到以上的指标要求,我们将使用Matlab软件进行相应的定量分析设计,并以木板为材料进行加工制作。具体的呈现详见下文。


二、第一性原理分析


1

2

在明确需要达成的指标之后,我们需要使用第一性原理对需要解决的问题进行回归、逐层拨开,回到基本的数学物理公式之中,以便进行较为精确的定量化设计。深入过程见上图。


三、船体设计


3.1设计方向
3.1.1第一性原理的实现

倾覆角度(120°~140°)实现:

设计灵感来源于鱼漂(鱼漂主要分为漂尾、漂身、漂脚,三部分。漂脚大致分为碳脚、竹脚、钢脚等,漂脚的材质不同,自身的重量就不相同,漂脚越重整支鱼漂的重心就会偏下,使鱼漂入水后翻身站立的时间缩短,也就是我们常说的翻身快。)鱼漂的结构恰好可以很好地解决90°以上倾覆角回正的问题,即“头轻脚重”。通过为船体加装舰岛等提供浮力的模块以及合理调节船体各部分高度来进一步精确化满足倾覆角区间。

载重能力(约700g)实现:

除去船体本身的重量将实现700g左右的载重。船体设计将在船体舰岛中为所载货物预留空间,并且预留出排水体积(即预留最大吃水深度),以满足载重要求。

稳定性实现:

当船舶受到外力倾斜时,其重力的大小位置不发生变化,浮力的大小也不变,但浮力的中心位置会发生偏移。我们知道浮力作用的中心是水下体积的中心,当船舶倾斜时,水下体积形状发生改变,倾斜下沉一侧的水下体积会增加,此时浮力的作用中心会向倾斜的一侧移动,浮力和重力不在同一条直线上,他们形成的力矩和倾斜力矩相反,这就是船舶的复原力矩。只要船舶倾斜,船舶的复原力矩就必然出现,方向永远和船舶的倾斜方向相反,这就是船舶拥有稳性的原因。我们将船舶这种受到外力矩(如风浪等)的作用而发生倾斜,在外力矩消失后自行恢复到原来平衡位置的能力,称为船舶的稳性。

我们对船的剖面演示分析可以发现。当船发生倾斜时,浮心位置改变,我们将浮心所在的垂线于船体中心线交点称为稳心。当稳心在船舶的重心之上时,船舶可以回正。当稳心在重心之下,船舶就发生了倾覆。那么船舶横摇的角度达到多大的时候,我们的船会发生倾覆呢?我们分析研究稳性力臂随着船身倾斜角度变化的曲线。当稳心与重心等高时,也就是这条曲线由正变为负的时候,所对应的船身倾斜角度叫做稳性消失角。当船体的倾斜超过了这个角度,船就会翻。也就是说船舶倾斜在稳性消失角之前,稳心的位置比重心高,稳性力臂为正,复原力矩值也就为正,这时即使船体倾斜,也会回复到船舶原有的平衡位置。当船舶倾斜角度超过了这个稳性消失角,稳心位置就比重心低,稳性力臂比为负,复原力矩值也就为负数,那么这个时候就会发生翻船。这样就解释了船受到外力作用会在海中左右摇摆,随着外力的增加摇摆的更加激烈,船的横摇由于复原力矩的存在,能使其回正,但若超过了稳定消失角这个值,就会发生倾覆。

提高船体稳定性一是降低船体的重心来提高船舶的稳性。例如比赛帆船,通过加中竖龙骨的方法来降低它的重心,使其稳性消失角能够达到150度~170度的角度,接近于永不颠覆的船。另外,增加船宽也可以使船舶获得更高的稳性。例如对安全性要求较高的原油运输船,船体会比较宽,船型比较的矮胖。其他还有多种方式可以抵御船舶倾覆的风险。

动力实现:

动力大致分为驱动和电控两个模块,以及电池,螺旋桨的装配,选取适当控制模块来实现。

3.1.2船体造型与其他功能的实现

本次项目设计船舶计划设计类似军舰外形的船体,并且达到船体轻巧,航速较快的目标,在此基础上可以实现节能,造价低廉的非硬性目标。

3.2船体初步设计方案

3

阅读更多

进销存管理系统

本项目全部代码已同步上传至Github,仓库链接:Asgard-Tim/Vendition: 重庆大学明月科创实验班软件设计课程作业 (github.com)

一、需求分析


1.1 进销存管理业务概述

随着近年来世界各方面的发展进步和物联网时代的到来及其不断发展,货物销售行业发生了翻天覆地的巨大变革,随着从卖方市场向买方市场的转变,我国的零售行业迅速崛起,并且时时刻刻面临着日益激烈并不断变化的竞争环境。因此,提高进销存管理水平,探索降低成本的方法成为提高企业竞争力的必然选择[1]。

伴随着企业规模的不断扩大和企业效益的进一步发展,原先的管理已经不能跟上企业的发展步伐,更无法满足企业对管理工作快速、准确的要求。在销售业务不断增长的同时,公司日常所需要处理的数据量不断增长,公司内部运转周转的中间传递环节也逐渐增多,进而发展到非常的复杂的经营管理模式,同时,现在复杂多变的市场,人工管理等传统的方法方式在相关方面已无法应对。更为重要的是商品的进销存方面缺乏实时处理的相关分析,管理人员对及时传递资料和命令的需求得无法实现。最后发现如果能够在面对不同种类的货物信息时,能够让管理人员实时掌握销售流程及销售情况,进而支持管理人员对相关商品销售的运营并且可以有效地加速的周转率,从而可以进一步提高行业的服务质量。这时可以组建一个记录、更新、保存数据信息的数据库以建立和支持一个合理高效的软件项目[2]。

具体而言,进销存管理业务的核心是对于商品流动信息的储存与管理,主要涉及到商品品类的新增与删除、进货、商品销售与盘点、平库等相互关联的诸多业务流程。因此,在进销存管理系统中,我们需要让这些业务流程在系统中有所体现,从而达到高效管理的目的。

1.2 功能性需求
1.2.1 商品信息管理

在进销存管理系统中,需要提供渠道给操作管理人员以录入或删除商品信息,同时对于日常的进货与销售过程予以记录,并在需要的时候对库存中已有的商品种类与数量进行盘点,必要时还需要进行平库操作。这些流程会涉及到公司内的诸多部门,诸如采购部、市场部、财务部等,组织架构的复杂性也对软件系统设计的联动能力与处理效率提出了较高的要求。因此,我们不仅需要通过程序设计实现与实际操作对应的相关功能,对于操作人员在系统中输入的文本信息进行读取与必要的处理以模拟上述诸多对于商品实体的实际操作流程,同时还需要建立与实际仓库所对应的商品的数据库,通过对于所有商品的编号、名称、单价、库存数量与计量单位等具体信息进行存储,并在管理人员进行操作的过程中对库中存储的商品信息进行与实际情况同步的改动,实现更加高效的管理。

1.2.2 系统安全

对于公司而言,系统的安全性是软件系统设计过程中一个至关重要的考虑因素,由于系统缺乏维护管理与必要的保护措施所造成的损失与影响将是不可估量且难以弥补的。在进销存管理系统中,系统安全的问题主要可能出现在操作权限与非法输入等方面。基于这样的考虑,软件系统在处理数据时,需要对于非法的输入进行区分并给予用户一定的操作提示;在功能上,需要通过账户密码匹配的机制以对于操作人员的权限进行一定的限制从而保证系统的安全性;在存储数据时,应对于存入的数据在写入文件的同时进行一定的加密操作,防止外部人员盗取或进行修改;同时在用户进行操作时,需要同步保留用户的操作记录,在必要时以供核查。

1.3 非功能性需求
1.3.1 性能需求

1.系统必须具备高可用性,能够保证系统长时间连续运行的需求;

​ 2.系统的响应时间应尽可能的短,系统登陆、信息保存等操作响应时间小于1.5秒,信息查询等复杂操作时间小于2秒;

​ 3.数据库容量要大,能够满足商品采购、销售、库存管理等详细信息长时间保存的需求;

​ 4.可供多个用户分时使用该系统平台。

1.3.2 易用性需求

1.系统的相关提示信息一致,如进货、销售、删除、查询等操作功能,应尽可能使人容易理解;

​ 2.有明确的输入限制提示信息;

​ 3.中英文对应正确。

1.3.3 可扩展性需求

在系统底层设计时,需要强化系统的配置和扩展能力,主要体现在以下方面:

​ 1.系统底层支持的可扩展性;

​ 2.系统数据结构可搭建;

​ 3.系统信息展示的可配置性。


二、系统设计

阅读更多

寻迹小车

一、绪论


1.1 实验背景
1.1.1 问题的情景

长期以来,由于我国是人口大国而且工业基础薄弱,因此早期在我国机器人的发展受到一定的限制。然而随着制造业工人的人力成本的不断上升与社会自动化程度的不断提高,我国也开始着重于发展机器人,并且也取得了较大的进步。在 1995 年,我国沈阳自动化所开始研制HT—100A点焊机器人,是我国较早的机器人了,如图1所示;此后,沈阳新松公司研发出了6 kg弧焊机器人,此机器人不仅实用,而且轻便,如图 2 所示;之后,哈尔滨工业大学机器 人研究所也研发出了便携式机器人,此机器人具有 6 自由度,增强了焊接能力,成为在恶劣环境中实现焊接功能的重要设备。总之,在国家“863 计划”与“十一五”计划的指导下,我国机器人的设计取得了飞速发 展,甚至在机器人的某些关键部件的设计已经接近于世界先进水平,并在世界工业机器人领域已经占有一席之地了。

1

2

1.1.2 实验的目的

目前,机器人的发展趋势非常的迅猛,机器人可以替代人类去从事高危险的工作,减轻了人类的劳动强度。本文通过对机器人的发展史进行简要的介绍,阐明了我国发展机器人的必要性。同时,对于我国的发展而言,我国正处于工业化进程的关键时期,将来的高强度、高危险行业的工人数量将会急剧的下降,机器人将会迎来新的“春天”,所以机器人的发展仍拥有巨大的发展空间。同时,由于我国各机器人的厂商对于机器人的研发能力与金钱投资的不同,在我国的机器人市场上的竞争也会愈演愈烈,最终也将形成我国的机器人研发市场。总之,在未来的几十年里,相信重点发展机器人将会成为社会的发展趋势,不久机器人将会引领未来,加入到我国现代化建设的行列中。小车,也就是轮式机器人,作为以学科交叉、产品创新为特色的明月班同学,切入这个产业不失为优秀的选择,故而选取小车为切入点了解相关知识。

1.2 实验内容
1.2.1 使用51单片机控制及其元器件

STC89C52控制板芯片、1.5V干电池x4、L298N电机驱动板x1、红外循迹模块、直流电机x2以及搭建材料若干;

3

1.2.2使用FPGA开发板控制及其元器件

Cyclonell EP2C5T144控制板芯片1.5V干电池x4、L298N电机驱动板x1、红外循迹模块、直流电机x2以及搭建材料若干;

4


二、实现过程


2.1 总体工作原理简释
2.1.2 红外循迹模块

第一步,位于小车前端的红外模块会释放红外线探测下方是否为黑色区域,并将相应的高低电平信号传递至控制模块(51单片机/FPGA开发板)处理,控制模块随后将发送信息至L298N电机驱动的控制模块,并由此控制左右两轮的转动速度以及转动方向,从而实现对黑线的反应和循迹。

作为电机的驱动模块,该模块对控制小车移动有着重要且直接的作用。

5

利用红外发射器向地面发射红外线,并用传感器接收由地面反射的红外线。当红外接收模块下方为黑色轨迹时,红外线被黑色轨迹吸收,传感器没有接收到红外线,红外循迹模块输出低电平到单片机。反之,传感器接收到红外线,红外循迹模块输出高电平到单片机。可通过红外循迹模块输出的信号来判断小车是否偏离轨迹。可调电阻可以调节传感器的灵敏度,易于调试。使用红外循迹模块方案也易于实现,红外循迹方案相比于摄像循迹成本更加便宜,软件设计更加简单,设计制作周期短,具备一定可靠性。

对于左电机,共有输入ENA、IN1、IN2,输出OUT1(黑线)、OUT2(红线)、其信号与运动对应如下:(0,X,X)停止、(1,0,0)停止、(1,1,0)正传、(1,0,1)反转、(1,1,1)停止;

对于右电机,共有输入ENB、IN3、IN4,输出OUT3(黑线)、OUT4(红线),其信号与运动对应如下:(0,X,X)停止、(1,0,0)停止、(1,1,0)反传、(1,0,1)正转、(1,1,1)停止。

2.1.3 L298N电机驱动模块

6

阅读更多