国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于CATIA二次開發(fā)的微透鏡陣列仿真

2020-06-02 01:19嚴敉平
汽車零部件 2020年5期
關鍵詞:草圖透鏡坐標系

嚴敉平

(常州星宇車燈股份有限公司,江蘇常州 213003)

0 引言

汽車燈具的發(fā)展日新月異,近年來出現的新型燈種Logo燈逐漸流行。Logo燈可以根據客戶要求將圖形投射至地面,比較常見的是安裝在車門上的Logo燈可在車門下方投射出公司標志,起到迎賓的效果。另一些前沿的科技中Logo燈也被集成進大燈作為超小型投影儀使用,在車輛行駛過程時可以向其他交通參與者發(fā)出警告的信息,產生雙向的交互。例如邁巴赫S級的大燈可以在地面投射出諸如前方修路、雪天路滑、車距保持、行人斑馬線等標識,為道路安全提供保障。圖1給出了一個實例。

圖1 AMS微透鏡陣列MLA數字燈光[1]

Logo射燈雖然種類眾多,但其基本結構和原理大致相同,即光源發(fā)出的光通過圖案燈片形成形狀后經過燈內的成像透鏡投影至地面形成圖像。與安裝在車門的Logo燈不同,安裝在車前側的Logo燈光線是傾斜地投射至地面的,光型會被拉伸產生畸變,因此設計時需要對光源的圖像進行修正避免失真。

CATIA是汽車行業(yè)的首選輔助設計軟件,CATIA的二次開發(fā)接口和開放式的內部命令集合可用于解決各專業(yè)領域問題。本文作者具體介紹了一種在CATIA平臺上開發(fā)的用于微透鏡陣列仿真的程序。開發(fā)此程序的目的是對Logo燈中的光源原像進行快速設計。

1 原理概述

圖2所示的Logo燈內關鍵部件包含光源、圖案燈片和成像透鏡。光線經由光源發(fā)出,通過聚光透鏡聚光后打在圖案燈片上,燈片是一塊金屬制刻上了鏤空圖案的薄板,光線穿過鏤空部分形成圖案,最后由成像透鏡投影至屏幕形成最終圖像。其中燈片位于凸透鏡的1倍焦距和2倍焦距之間,因此屏幕上的像是倒立放大的實像。

安裝在車輛前側的Logo燈由于成像透鏡與地面屏幕并不是平行關系,地面也可能是曲面。光線傾斜地投射至地面時,圖形被拉伸產生畸變,得到的圖像就失去了原有的形狀。另一方面地面圖像的遠端部分由于距離光源較遠,因此會比近端更暗,造成了亮暗不均。為了解決以上問題,Logo燈中布置了若干個彼此呈陣列式排布的微透鏡,使各自投射出的圖像產生重疊,通過對微透鏡陣列進行配置,使更多的光投射至圖像的遠端部分,從而使得到的圖像均勻性更好。此外光學設計時需要對光源的原圖進行修正,才能保證傾斜投影時光線不會扭曲失真。

圖2 Logo燈原理[2]

圖3 微透鏡陣列在車前Logo燈的應用

2 建模

對整個機構進行建模時要盡可能地考慮簡化模型。為了便于介紹,以下將光源燈片上的原始圖像簡稱為“原像”或“燈片”,將投影至地面的圖像簡稱為“投像”。由于Logo燈中光源燈片位于透鏡焦距的1倍到2倍之間,此時投像為倒立放大實像,這種情況下透鏡成像的效果與小孔成像一致,對原像進行計算時可以將微透鏡等效為小孔,用點來表示。

2.1 建立坐標系

原像、透鏡以及投像分別形成3個平面,即原像平面、透鏡平面和地平面,以這3個平面為xy平面分別定義坐標系A0、A1、A2,如圖4所示。將A0定義為全局坐標系,A1、A2為局部坐標系。其中坐標系A1總以當前透鏡點為原點。

由于各平面采用不同的坐標系,計算時需要進行坐標系的轉化,兩軸系間的轉化要用到變換矩陣。變換矩陣可能是平移或繞三軸的自轉:

平移矩陣:

(1)

其中:d是平行移動的方向矢量:

(2)

圖4 建立空間內模型

繞x向旋轉θ的旋轉矩陣(遵循右手定則,逆時針為正,以下同理):

(3)

繞y向旋轉φ的旋轉矩陣:

(4)

繞z向旋轉ω的旋轉矩陣:

(5)

2.2 數字化投像

投像是指位于車輛前方投影至地面的圖像,以圖5所示的投像內容為例(假定地面為平面,不考慮曲面)。

圖5 投像內容

對圖片進行計算首先要對圖像進行數字化處理,圖片中對計算有用的部分是圖案的邊界,即由一些曲線或直線圍成的外輪廓。直線是能直接計算的,而對于曲線則需要采樣簡化。Douglas-Peucker算法是專門處理曲線離散化問題的方法,原理是在曲線上取有限個點,將其變?yōu)檎劬€,并且能夠在一定程度上保持原有的形狀。文中不多介紹此算法的詳細步驟,在CATIA中用戶只需將CATDrawing格式的2D文件轉化成Dwg格式就可以實現實心圖案到空心圖案的轉化,然后通過右鍵隔離功能將曲線離散,圖6是一個離散后的只由直線段構成的字母“O”。

圖6 離散后的曲線

通過以上方法得到的圖案雖不是原圖,但和原圖近乎相似,經過數字化處理后投像已被簡化成只存在線段的矢量投影。由于線段可以通過兩個端點來確定,因此線段的投影又可以簡化為點的投影。

2.3 建立方程

圖7 空間內模型示意

已知空間內平面公式(法向式):

xcosα+ycosβ+zcosγ=p

(6)

空間內的直線公式(兩點式):

(7)

(8)

(9)

(10)

(11)

(12)

z=0

(13)

2.4 全局坐標轉化

(14)

對于三維空間內任意兩個共原點的坐標系間的轉化,都可以通過3個歐拉角的旋轉來實現。歐拉角的使用順序科學界未達成共識,本文作者以zxz順規(guī)的歐拉角為例:參考圖8,設定XYZ軸為目標軸,xyz軸為待轉軸,xy平面與XY平面的共交線用N表示,α是x軸與N的夾角,β是z軸與Z軸的夾角,γ是N與X軸的夾角。xyz軸到XYZ軸的轉化順序為:先繞z軸旋轉α,再繞x軸旋轉β,最后再繞z軸旋轉γ。最終的轉化公式為

(15)

2.5 建立CATIA數據

在CATIA的part數據中按實物尺寸建立數據(見圖9)。燈具安裝在車輛的正前方,高度200 mm處,燈向下傾斜角度10°。燈具中包含有5×5的透鏡陣列,透鏡彼此間距4 mm,透鏡陣列與原像平面(燈片)平行,距離為8 mm,原像面大小為32 mm×27 mm,投像草圖已經過曲線離散化大小為1 375 mm×261 mm,草圖距離車輛682 mm。

圖8 歐拉角

圖9 CATIA數據模型

3 程序說明

3.1 程序界面

使用Visual Basic 6.0來編程,圖10展示了程序的主界面,其中包含6個部分:

(1)透鏡位置。顯示當前所選擇的透鏡點。

(2)燈片位置。顯示當前所選擇的原像面。

(3)地面草圖。顯示當前所選的投像草圖。

(4)批量作圖。勾選時同一幾何圖形集下所有透鏡點會進行批量計算,未勾選時只計算當前所選的透鏡點。

(5)開始。點擊后開始計算原像。

(6)選擇。當選擇區(qū)各參數都為未選擇時顯示為“選擇”按鈕,點擊后開始參數選擇功能;當選擇區(qū)已有參數時顯示為“清空”按鈕,點擊后將參數清空。

圖10 程序主界面

3.2 程序流程

首先點擊選擇按鈕并進入CATIA依次選擇目錄樹中對應參數(見圖9左上方),當選擇區(qū)參數選擇完畢后,點擊“開始按鈕”開始計算。通過前一章節(jié)的推導得知計算原像時,須求得投像點及透鏡點的全局坐標。而投像點和透鏡點的全局坐標又通過其局部坐標轉化而來,按照這一過程程序的具體計算步驟如下:

(1)首先遍歷投像草圖內所有線段,并記錄每個線段起點和終點的2D坐標。

(2)以投像草圖零點為原點,草圖水平軸為x軸、垂直軸為y軸建立局部坐標系A2,步驟(1)中記錄的2D坐標加上z=0即為投像點的局部坐標。

(3)在原像平面內任取一點為原點,以原像平面為xy平面建立全局坐標系A0。

(4)連接坐標系A2、A0的原點形成直線L1,測量L1長度d1,測量L1與坐標系A0的3個軸的夾角ω1、ω2、ω3,以此求得A2到A0的平移矩陣為(d1·cosω1,d1·cosω2,d1·cosω3,1)T。

(5)將坐標系A2的xy平面和坐標系A0的xy平面相交得直線N。

(6)測量zxz順規(guī)的3個歐拉角,即坐標系A2的x軸與N的夾角α,A2的z軸與A0的z軸夾角β,A0的x軸與N的夾角γ,由此求出3個旋轉矩陣依次是:Rz=Rz(α),Rx=Rx(β),Rz=Rz(γ)。

(7)將步驟(2)中的投像全局坐標、步驟(4)中的平移矩陣、步驟(6)中的3個旋轉矩陣代入公式(15)求出投像點的全局坐標。

(8)以當前透鏡點為原點建立局部坐標系A1,則透鏡點局部坐標為(0,0,0)。

(9)連接坐標系A1、A0原點形成直線L2,測量L2長度d2,測量L2與坐標系A0的3個軸的夾角δ1、δ2、δ3,以此求得A1到A0的平移矩陣為(d2·cosδ1,d2·cosδ2,d2·cosδ3,1)T。

(10)將步驟(8)中的透鏡點局部坐標和步驟(9)中的平移矩陣代入公式(14)求出透鏡點的全局坐標。

(11)將步驟(7)中的投像點全局坐標和步驟(10)中的透鏡點全局坐標代入公式(11)(12)(13)求出原像點的全局坐標。

(12)根據步驟(11)中的原像點全局坐標在原像平面內作出原像草圖。

(13)若批量作圖按鈕被選中則重復以上步驟(8)—(12)。

(14)新建零件幾何體,以原像面做0.5 mm厚的厚曲面,用步驟(12)中做出的草圖在厚曲面上開凹槽,得到完整的燈片數據。至此程序運算完畢。

4 結果和評價

對5×5的透鏡點進行批量運算,得到原像燈片結果如圖11所示。相較于投像,原像是一個倒立的畸變圖案,這正是對原像圖形進行修正的過程,因為只有這樣才能得到一個規(guī)整的投像圖案。在運算時間方面總計花費時間29 min 30 s。其中步驟(1)—(11)耗時50 s,步驟(12)—(14)耗時28 min 40 s。過程中總計處理了287 000個線段,CATIA花費了大量時間在作草圖線段這一步驟上(步驟12)。在處理大批量圖形數據時CATIA的運算效率不高,因此導致了此步驟運算時間較長,但CATIA的好處是可以直接生成設計所需的3D數據,此實例中最終的輸出物是燈片的實體數據。

圖11 原像燈片運算結果

因透鏡點呈陣列式分布,透鏡前的原像也是陣列式分布的。設計原像時,其尺寸應被局限在某一范圍內不能太大,否側兩原像之間會重疊沖突,這意味著地面投像在車身兩側方向受到限制,而在車身行駛方向不受限制,原因是當投影光線與地面平行時理論可投至前方無限遠位置。

猜你喜歡
草圖透鏡坐標系
引力透鏡
透鏡(部級優(yōu)課)
獨立坐標系橢球變換與坐標換算
草圖家具
極坐標系中的奇妙曲線
不能承受的生命之輕
三角函數的坐標系模型
求坐標系內三角形的面積
透鏡及其應用專題復習
透鏡光路圖大梳理