一种基于BIM的光伏电站自动化布置方法与流程

文档序号:21979479发布日期:2020-08-25 19:14阅读:653来源:国知局
一种基于BIM的光伏电站自动化布置方法与流程

本发明涉及一种基于bim的光伏电站自动化布置方法,属于光伏电站的三维数字化设计与仿真技术领域。



背景技术:

目前对于一些大型地面区域或者屋顶的的光伏组建布置,如果仍旧通过传统的三维建模,其工作量十分巨大,每块光伏组件都需要导入并按照尺寸进行排布,需要每个组件的尺寸、空间相对位置、组件数量等大量数据,然后按照数据进行一一排布,费时又费力,而且工程的效率和准确性也无法保证,并且对于用户对方案的变更也不能及时做出响应。基于本算法能够实现光伏电站的高效设计及系统优化。



技术实现要素:

为了解决上述技术难题,本发明提供了一种基于bim的光伏电站自动化布置方法。

本发明的技术方案如下:

一种基于bim(建筑信息模型,buildinginformationmodeling)的光伏电站自动化布置方法,包括如下步骤:

(1)、获取su(草图大师软件,sketchup)或者revit(autodesk公司开发的bim软件)模型中进行排布的对象平面的顶点坐标,所述顶点坐标包括排布平面的外边界顶点和内部障碍物的顶点;

(2)、通过平行线算法进行预留边界的平行收缩和扩张,对外边界进行收缩变换,对障碍物进行扩张变换,通过平行线算法得到实际可用于布置的有效区域;

(3)、根据步骤(2)所得到的实际可用于布置的有效区域,建立起关于边界和障碍物的四维数组;

(4)、根据各顶点坐标选取多个布置起点,并获得所有起点所对应的的组件布置方案,并从中选取最优的方案;

(5)、根据步骤(4)所得到的最优的布置方案,在su或者revit模型上进行组件的排布。

优选地,上述步骤(2)中的平行线算法的具体步骤如下:

(2-1)、从(1)中所获取的所有的顶点中,获取y坐标最大的一个点,记为a;

(2-2)、获取a的前后两个点,记为b和c,得到通过向量相减得到两个向量分别为n1(n1=a-b)和n2(n2=a-c),通过以下公式可以求得n1和n2夹角的度数:

式中:x1,y1:向量n1的x坐标和y坐标;

x2,y2:向量n2的x坐标和y坐标;

l1,l2:向量n1和n2的长度;

(2-3)、d为预留间距(即各边向内等距收缩的距离),通过计算得到n1和n2向量所对应的向量n3和n4;

(2-4)、可求得经过转换的坐标点d=a+n3+n4;

(2-5)、改变a点,向下一个顶点移动,重复步骤(2-2),(2-3),(2-4),多次重复得到所有经过收缩后的点的坐标。

优选地,上述步骤(3)中关于边界和障碍物的四维数组的建立方法如下:

四维数组是对于所有的边界线条建立的而不是针对边界点,其每个维度为:第一维度为线条的斜率;第二维度为线条的截距:第三维度为线条的y最大值;第四维度为线条的最小值。

优选地,上述步骤(4)中扫描线算法的具体步骤如下:

(4-1)、确定布置的起点,布置的起点的确定决定最终的方案的数量,起点的范围ymin<y起点<ymin+wsolar+dy;

式中:ymin:边界的最小y值;

wsolar:组件在y方向上的投影;

dy:组件布置时,组件与组件之间在y方向上的间距;

(4-2)、进行双线扫描,一条线为当前扫描值y,另一条扫描值为y+wsolar;确定扫描值后开始进行扫描;

(4-3)、通过双线扫描得到关于两个扫描值的交点数组,其中y值所对应的交点数组为底部数组,y+wsolar值所对应的交点数组为顶部数组。结合底部数组和顶部数组两个数组通过数组叠加算法可以得到一个可布置范围数组;

(4-4)、通过可布置范围数组得到当前扫描值下能够布置的组件的数量和坐标;

(4-5)、更换扫描值,不断增加至y最大值时停止,不断重复(4-2)、(4-3)、(4-4)步骤得到当前起点的布置方案;

(4-6)、改变起点,产生多种布置方案,对比各个布置方案得到最优化布置方案。

优选地,上述步骤(4-3)中数组叠加的算法如下:

所述算法分为两个叠加方向,一个方向是向外扩张,另外一个为向内收缩,

方向一:从步骤(4-2)中扫描的得到的底部数组和顶部数组所得到的数组的元素都是一一配对的,共偶数个元素,所以将排序后两个相邻的元素作为一组;数组是指多个元素所组成的集合,组是指从数组中所选取的两个元素为一组,即前面所述的组。

(a)在底部数组中取出一组,在顶部数组取出一组,两组叠加;

(b)叠加的数组和已有的结果数组合并,清除相同元素;

(c)换下一组底部数组,所选取顶部数组不变;

(d)所有的底部数组使用一次后,更改选取的顶部数组,直至全部选用一次;

方向二:在底部数组中选取一组,在顶部数组中找到所选组的两个元素所在的位置(w1和w2),将位置改为位置除以二后的商(s1和s2,s1≤s2)和余数(r1和r2);

所包含的所有情况及处理方式如下:

情况一:s1=s2,r1=r2=0

将当前所选组直接与顶部数组叠加;

情况二:s1≠s2,r1=r2=0

在底部数组中将w1+1和w2之间的所有元素清除,并将当前所选组与顶部数组叠加;

情况三:s1=s2,r1=r2=1

不做任何改变;

情况四:s1≠s2,r1=r2=1

在底部数组中将w1+1和w2之间的所有元素清除,并将当前所选组与顶部数组叠加;

情况五:r1=0,r2=1

在底部数组中将w1+1和w2之间的所有元素清除,并将当前所选组与顶部数组叠加;

情况六:r1=1,r2=0

在底部数组中将w1+1和w2之间的所有元素清除,并将当前所选组与顶部数组叠加;

本发明所达到的有益效果:

本发明的方法可以实现光伏组件自动布置在在建筑表面、大型地面、山地、丘陵等各种复杂地形上。通过对比不同的布置方案,实现组件的最优化布置以获取最大的光伏电站经济效益。本方法是实现基于bim(建筑信息模型)的光伏电站数字化设计与仿真关键技术环节。结合自动布置算法,对组件的安装倾角、安装间距及朝向等进行优化,能够有效提高现有光伏阵列区域组件表面所获得的全年辐射量及未来产生的电量,从而提升电站自动化及优化设计水平。

附图说明

图1是双线扫描交点值的情形一的示意图;

图2是双线扫描交点值的情形二的示意图;

图3是双线扫描交点值的情形三的示意图;

图4是双线扫描交点值的情形四的示意图;

图5是双线扫描交点值的情形五的示意图。

具体实施方式

下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。

一种基于bim的光伏电站自动化布置方法,包括如下步骤:

(1)、获取su或者revit模型中进行排布的对象平面的顶点坐标,所述顶点坐标包括排布平面的外边界顶点和内部障碍物的顶点;

(2)、通过平行线算法进行预留边界的平行收缩和扩张,对外边界进行收缩变换,对障碍物进行扩张变换,通过平行线算法得到实际可用于布置的有效区域;

平行线算法的具体步骤如下:

(2-1)、从(1)中所获取的所有的顶点中,获取y坐标最大的一个点,记为a;

(2-2)、获取a的前后两个点,记为b和c,得到通过向量相减得到两个向量分别为n1(n1=a-b)和n2(n2=a-c),通过以下公式可以求得n1和n2夹角的度数:

式中:x1,y1:向量n1的x坐标和y坐标;

x2,y2:向量n2的x坐标和y坐标;

l1,l2:向量n1和n2的长度;

(2-3)、d为预留间距(即各边向内等距收缩的距离),通过计算得到n1和n2向量所对应的向量n3和n4;

(2-4)、可求得经过转换的坐标点d=a+n3+n4;

(2-5)、改变a点,向下一个顶点移动,重复步骤(2-2),(2-3),(2-4),多次重复得到所有经过收缩后的点的坐标。

(3)、根据步骤(2)所得到的实际可用于布置的有效区域,建立起关于边界和障碍物的四维数组;

四维数组是对于所有的边界线条建立的而不是针对边界点,其每个维度为:第一维度为线条的斜率;第二维度为线条的截距:第三维度为线条的y最大值;第四维度为线条的最小值。线条也会存在特殊情况如下:当斜率为无穷时,其截距为当前直线所在的x坐标;当斜率为0时,其截距为线条一端点的x坐标。

(4)、根据各顶点坐标选取多个布置起点,并获得所有起点所对应的的组件布置方案,并从中选取最优的方案;

扫描线算法的具体步骤如下:

(4-1)、确定布置的起点,布置的起点的确定决定最终的方案的数量,起点的范围ymin<y起点<ymin+wsolar+dy;

式中:ymin:边界的最小y值;

wsolar:组件在y方向上的投影;

dy:组件布置时,组件与组件之间在y方向上的间距;

(4-2)、进行双线扫描,一条线为当前扫描值y,另一条扫描值为y+wsolar;确定扫描值后开始进行扫描;

依次访问所有的线条,如果扫描值位于第三维度(最大值)与第四维度(最小值)之间时认为,当前所在的线条和扫描值有交点。交点的值存在如下四种情况:

情形一:在线上有交点

如图1所示,交点的坐标为

式中:y:当前的扫描值;

k:从步骤(3)中建立的四维数组中选取的当前边线所对应的斜率;

b:从步骤(3)中建立的四维数组中选取的当前边线所对应的截距;

情形二:上下顶点

如图2所示,该种情况为了满足两个点的情况,我们取出的两个点都是顶点,有效可布置范围在两点之间,即为0。

情形三:左右顶点

如图3所示,该种情况为了满足两个点的情况,与上面不同的我们只需取出来一个点。

情形四:碗型顶点

如图4所示,该种情况为了满足两个点相互配对的情况,所以要取出来两个点,即p1和p2。

情形5闪电型顶点

如图5所示,该种情况为了满足两个点相互配对的情况,与上面不同的是,所以要取出三个点即p1,p1,p2。

(4-3)、通过双线扫描得到关于两个扫描值的交点数组,其中y值所对应的交点数组为底部数组,y+wsolar值所对应的交点数组为顶部数组。结合底部数组和顶部数组两个数组通过数组叠加算法可以得到一个可布置范围数组;

数组叠加的算法如下:

算法分为两个叠加方向,一个方向是向外扩张,例[1,3]与[2,5]叠加为[1,5];另外一个为向内收缩,例[1,3]与[2,5]叠加为[2,3];

方向一:从步骤(4-2)中扫描的得到的底部数组和顶部数组所得到的数组的元素都是一一配对的,共偶数个元素,所以将排序后两个相邻的元素作为一组;后文中,数组是指多个元素所组成的集合,组是指从数组中所选取的两个元素为一组,即前面所述的组。

(a)在底部数组中取出一组,在顶部数组取出一组,两组叠加;

(b)叠加的数组和已有的结果数组合并,清除相同元素;

(c)换下一组底部数组,所选取顶部数组不变;

(d)所有的底部数组使用一次后,更改选取的顶部数组,直至全部选用一次;

方向二:在底部数组中选取一组,在顶部数组中找到所选组的两个元素所在的位置(w1和w2),将位置改为位置除以二后的商(s1和s2,s1≤s2)和余数(r1和r2);

所包含的所有情况及处理方式如下:

情况一:s1=s2,r1=r2=0

将当前所选组直接与顶部数组叠加;

情况二:s1≠s2,r1=r2=0

在底部数组中将w1+1和w2之间的所有元素清除,并将当前所选组与顶部数组叠加;

情况三:s1=s2,r1=r2=1

不做任何改变;

情况四:s1≠s2,r1=r2=1

在底部数组中将w1+1和w2之间的所有元素清除,并将当前所选组与顶部数组叠加;

情况五:r1=0,r2=1

在底部数组中将w1+1和w2之间的所有元素清除,并将当前所选组与顶部数组叠加;

情况六:r1=1,r2=0

在底部数组中将w1+1和w2之间的所有元素清除,并将当前所选组与顶部数组叠加。

(4-4)、通过可布置范围数组得到当前扫描值下能够布置的组件的数量和坐标;

(4-5)、更换扫描值,不断增加至y最大值时停止,不断重复(4-2)、(4-3)、(4-4)步骤得到当前起点的布置方案;

(4-6)、改变起点,产生多种布置方案,对比各个布置方案得到最优化布置方案。增多起点的量可以大量增加方案量,能够筛选出更好的方案的概率更大。但是大量的起点势必会带来计算量的大幅提高,严重拖慢计算速度。考虑到实际布置的情况,2-5厘米级来作为起点产生的间隔为最佳技术方案。

(5)、根据步骤(4)所得到的最优的布置方案,在su或者revit模型上进行组件的排布。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1