1、通过在室内的某些位置布置适当的节点,采集回来室内的温湿度以及空气质量等实际参数。首先对室内空间建模,用一个无限细化的三维矩阵来模拟出室内的温度分布情况,针对采集回来的数据,采用插值法和适当次数的拟合函数的拟合,得出三维矩阵的实际值的分布,最后结合 matlab 软件绘制出计算出的温度场的三维图像。一 数据的采集与处理因为影响人的舒适感的温度层只是室内的某一高度范围内的温度,而温度传感器虽然是布置在一个平面内,但是采用插值法和拟合函数法是可以大致再现出影响人的舒适感的温度层的温度变化的。同时,在构建出的三维模型中,用第三维表示传感器层面的温度。在传感器层面,传感器分布矩阵如下:X=【7.5 36
2、.5 65.5】 (模型内单位为 cm)Y=【5.5 32.5 59.5】Z=【 z1 z2 z3;z4 z5 z6;z7 z8 z9;】 (传感器采集到的实时参数)采用 meshgrid(xi,yi,zi, )产生网格矩阵;首先按照人的最小温度分辨值,将室内的分布矩阵按照同样的比例细化,均分,使取值点在坐标一定程度上也是接近于连续变化的,从而才能最大程度上使处理数据得来的分布值按最小分辨值连续变化!根据人体散热量计算公式:C=hc(tb-Ta )其中 hc 为对流交换系数;结合 Gagge 教授提出的 TSENS 热感觉指标可以计算出不同环境下人的对环境温度变化时人体温度感知分辨率,作为插值
3、法的一个参考量,能使绘制出的温度场更加的符合人体的温度变化模式。例如按照 10cm 的均差产生网格矩阵(实际上人对温度的分辨率是远远 10cm 大于这个值的,但是那样产生的网格矩阵也是异常庞大的,例如以 0.5cm 为例,那么就可以获得116*108=12528 个元素,为方便说明现已 10cm 为例):xi yi=meshgrid(7.5:10:65.5,5.5:10:59.5)xi =7.5000 17.5000 27.5000 37.5000 47.5000 57.50007.5000 17.5000 27.5000 37.5000 47.5000 57.50007.5000 17.50
4、00 27.5000 37.5000 47.5000 57.50007.5000 17.5000 27.5000 37.5000 47.5000 57.50007.5000 17.5000 27.5000 37.5000 47.5000 57.50007.5000 17.5000 27.5000 37.5000 47.5000 57.5000yi =5.5000 5.5000 5.5000 5.5000 5.5000 5.500015.5000 15.5000 15.5000 15.5000 15.5000 15.500025.5000 25.5000 25.5000 25.5000 25.5
5、000 25.500035.5000 35.5000 35.5000 35.5000 35.5000 35.500045.5000 45.5000 45.5000 45.5000 45.5000 45.500055.5000 55.5000 55.5000 55.5000 55.5000 55.5000产生网格矩阵之后,就可以在测得的实时数据的基础上,通过相关的温度场的专业的估算函数,以及相关的数值处理函数来估计整个分布面(有最小的分辨率)上的温度了。即在这些函数的基础之上,对参数进行一些必要的处理。然后,加上室内的预设温度,扩大温度数值矩阵,例如预设温度为 21,采用一组试验中测得的温度值,
6、如下:z =21 21 21 21 2121 19 18 17 2121 18 16 19 2121 16 15 14 2121 21 21 21 21此时再结合 matlab 中定义的 spline(三次样条差值法)和 interp2(二维插值法)这两个函数来估算预定分辨率上的温度场的分布。因为在实际中温度的变化必然是连续的,故而得到的温度场中通过任意点的截面截出的曲线必然是连续可导的,故而必须使用 spline(三次样条插值法)得到光滑的插值分布曲线。同时又因为该温度场现实的是传感器分布面上的温度分布,故而必须采用interp2(二维插值法) ,同时用第三维的高度值的变化和连续变化的颜色来
7、显示温度的连续变化。Zi=interp2(x, y,z ,xi,yi, spline)zi =19.0000 4.5173 15.2048 16.7822 -6.7326 -16.95097.1027 -91.1872 -15.4389 -11.6435 -191.3871 -266.889018.9402 6.1945 18.1887 11.8409 -29.5509 -44.303511.4135 -68.5455 -25.7034 8.1347 -40.1338 -69.1854-19.6972 -344.0942 -148.6804 -37.1340 -325.8118 -477.33
8、36-12.7095 -278.7121 -114.6136 -28.6166 -283.7157 -414.3010由此得出网格矩阵的元素值之后,采用 matlab 自定义的三维曲面绘制函数,绘制出得到的温度场。Surf(xi,yi ,zi)经过一定的图像处理之后可得到温度场的分布如下:从图中坐标也可以看出,分辨率设置的过大之后,插值法会出现较大的误差甚至是错误。然而当分辨率设置的较为合理之后,二维插值结合三次线条插值能较好地吻合实际的温度场的分布。在上图中可以看出温度场变化很突兀,设置较高的人体温度感知分辨率之后图像如下:下图为温度场分布曲面在传感器分布面上的投影的等高线图,可以比较直观的反映室内的温度变化情况。【c , h】=contour(x,y,z) ;Clabel(c,h ) ;参考文献: