第一篇:s-HR與cloud集成問題總結
上海尼歐信息科技發展有限公司
s-HR與cloud集成問題總結
近來發現產品論壇中對s-HR與cloud集成問題提問較多,特開此帖對出現的問題進行總結。
總結眾多已經出現并解決的問題,大多發現是沒有嚴格按照集成文檔操作導致的,所以請一定要有耐心的仔細查看集成文檔,并嚴格按照步驟一步一步操作。
集成幾點說明:cloud配置部署兩個IIS站點,一個用于s-HR新增修訂等變動時發消息通知某個ID有變化,此接口接到變化通知后,通知cloud另外一個接口調用s-HR提供的osf根據這個變化ID取數,所有的映射信息存儲在accese數據庫中,所以記得升級重裝IIS接口要備份此數據庫 后綴名為.accd或.accdb。cloud的多組織模式,因為cloud是多組織模式shr組織必須維護erpOrgCode與could對應,故需檢查腳本是否成功,log消息中這個字段是否有存在,且有值。IIS重啟服務,需在應用池中選中對應站點重啟,不能整個服務重啟。
一、操作應用類問題
問題1:shr與cloud集成,系統的日志文件的存放路徑
日志路徑:K3Cloud安裝目錄IntegrationServicePlatformApp_Data
問題2:k3cloud集成配置問題
第一次配置集成配置界面正常操作步驟如下:
1、填寫接口信息,不要勾選底下的選擇框,點擊保存,將接口信息保存至shr數據庫。
上海尼歐信息科技發展有限公司/金蝶軟件上海地區銷售中心/金蝶軟件上海地區服務中心
地址:上海市浦東新區高科西路551號尚電大廈A705室
上海尼歐信息科技發展有限公司
2、勾選底下選擇框,點擊同步按鈕,初始化對應接口。
常見錯誤如下:
1)s-HR系統[開發平臺]-[k3cloud集成配置],點擊同步按鈕時提示“webServiceaddress is null”
解決方法:
a、先確認IIS接口是否正常,將消息接口服務地址復制到瀏覽器地址回車,如果能夠訪問說明IIS接口正常,如果無法訪問則說明是IIS接口的問題,屬于cloud的問題; b、檢查HR集成工具地址是否填寫
上海尼歐信息科技發展有限公司/金蝶軟件上海地區銷售中心/金蝶軟件上海地區服務中心
地址:上海市浦東新區高科西路551號尚電大廈A705室
上海尼歐信息科技發展有限公司
c、需要保存這個界面的消息接口信息到shr的數據庫操作:不要勾選底下的框,點擊保存按鈕,成功后再點擊同步按鈕,否則會報webservice address is null
2)s-HR系統[開發平臺]-[k3cloud集成配置],點擊保存按鈕時,提示啟用接口前請先初始化
上海尼歐信息科技發展有限公司/金蝶軟件上海地區銷售中心/金蝶軟件上海地區服務中心
地址:上海市浦東新區高科西路551號尚電大廈A705室
上海尼歐信息科技發展有限公司
去掉打上的勾,然后點擊保存。
問題3:點擊HR系統[開發平臺]-[k3cloud集成配置]時報錯
集成接口應用包有問題,請嘗試卸載后重新安裝,還是報錯的話,聯系總部要正確的集成接口應用包
上海尼歐信息科技發展有限公司/金蝶軟件上海地區銷售中心/金蝶軟件上海地區服務中心
地址:上海市浦東新區高科西路551號尚電大廈A705室
第二篇:軟件集成技術總結
軟件集成技術總結 軟件集成系統
主要功能是實現各種應用軟件在本系統中的集成及調用,由于需要集成軟件的開發軟件,運行環境各有不同,所以在系統集成時調用的相關技術也不盡相同。本系統軟件的集成主要應用了一下三種技術:Java Applet技術,Exe軟件的調用方法,Matlab軟件的調用方法。相關技術 2.1 Java Applet技術
Applet可以翻譯為小應用程序,Java Applet就是用Java語言編寫的這樣的一些小應用程序,它們可以直接嵌入到網頁或者其他特定的容器中,并能夠產生特殊的效果。
Applet必須運行于某個特定的“容器”,這個容器可以是瀏覽器本身,也可以是通過各種插件,或者包括支持Applet的移動設備在內的其他各種程序來運行。與一般的Java應用程序不同,Applet不是通過main方法來運行的。在運行時Applet通常會與用戶進行互動,顯示動態的畫面,并且還會遵循嚴格的安全檢查,阻止潛在的不安全因素(例如根據安全策略,限Applet對客戶端文件系統的訪問)。
在Java Applet中,可以實現圖形繪制,字體和顏色控制,動畫和聲音的插入,人機交互及網絡交流等功能。Applet還提供了名為抽象窗口工具箱(Abstract Window Toolkit,AWT)的窗口環境開發工具。AWT利用用戶計算機的GUI元素,可以建立標準的圖形用戶界面,如窗口、按鈕、滾動條等等。目前,在網絡上有非常多的Applet范例來生動地展現這些功能,讀者可以去調閱相應的網頁以觀看它們的效果。
在Java Applet的生命周期中,共有四種狀態(初始態、運行態、停止態和消亡態)和四個方法:init()、start()、stop()和destroy()。a init()當創建Java Applet且第一次使用支持Java的瀏覽器載入時,就會執行init()方法。在Java Applet生命周期中,該方法只執行一次,因此可以利用這一點在init()方法中進行一些只需執行一次的初始化操作,例如對變量的初始化等。b start()調用完init()方法后,系統將自動調用start()方法。當用戶離開包含Applet的主頁后又再返回時,或者當瀏覽器從圖標狀態恢復為窗口時,系統都會自動再執行一遍start()方法。
和init()方法不同,start()方法在Applet的生命周期中被多次調用,該方法是Applet的主體。在start()方法中,可以執行一些任務,或者是啟動相關的線程來執行任務,如循環播放歌曲等。c stop()和star()方法相對應,當用戶離開Applet所在頁面或者是瀏覽器變成圖標時,系統都會調用stop()方法,因此該方法也是可以被多次調用的。
stop()方法起到這樣的作用:當用戶在當前時刻并不十分關注Applet時,停止一些耗用資源的工作,這樣就可以提高系統的運行速度,而且系統會自動調用該方法,并不需要人為干預。倘若編寫的Applet中不涉及動畫等多媒體,一般不必重寫該方法。51Testing軟件測試網 d destroy()當用戶關閉瀏覽器時,系統就會調用destroy()方法,應該注意stop()方法和destroy()方法的區別。
本系統中的Applet小程序調用流程:運行時,首先從服務器下載應用程序的ZIP壓縮文件到本地,然后解壓到本地,并在在本地運行,在Applet關閉時,停止exe運行,并刪除已下載的ZIP文件和解壓后的文件夾。
2.2 EXE軟件的調用方法
使用Runtime.getRuntime().exec()方法可以在java程序里運行外部程序。
該方法有6個可訪問版本:
1.exec(String
command)
2.exec(String
command,String
envp[],File
dir)
3.exec(String
cmd,String
envp[])
4.exec(String
cmdarray[])
5.exec(String
cmdarray[],String
envp[])
6.exec(String
cmdarray[],String
envp[],File
dir)
一般的應用程序可以直接使用第一版本,當有環境變量傳遞的時候使用后面的版本。
其中2和6版本可以傳遞一個目錄,標識當前目錄,因為有些程序是使用相對目錄的,所以就要使用這個版本.當要執行批處理的時候,不能直接傳遞批處理的文件名,而要使用:
cmd.exe
/C
start
批處理文件名
使用dos命令(比如dir)時也要使用掉調用。
如果想與調用的程序進行交互,那么就要使用該方法的返回對象Process了,通過Process的getInputStream(),getOutputStream(),getErrorStream()方法可以得到輸入輸出流,然后通過InputStream可以得到程序對控制臺的輸出信息,通過OutputStream可以給程序輸入指令,這樣就達到了程序的交換功能。
使用Runtime類.
try {
Runtime rt = Runtime.getRuntime();
rt.exec(“C:WINDOWSNOTEPAD.exe”);
} catch(Throwable t){ System.out.print(t.getMessage());
} 2.3 Matlab軟件的調用方法
Matlab軟件的調用分為三個步驟:一是在java里面調用matlab,matlab2006b以后的版本中都提供了java 調用matlab的接口matlab build for java;二是將調用matlab程序的java程序轉換為exe程序;三是按照2.1所述的方法調用Matlab的exe程序。
關鍵技術是java調用matlab程序的方法,下面是一個相關的例子:(一)在MATLAB中編輯operation.m, %定義一個函數operation(a,b),求a與b的加減乘除運算,并返回結果
%函數定義function 輸出變量列表[s,m,...] 函數名(輸入變量列表)sum,sub,mul,div中
function [sum,sub,mul,div] = operation(a,b);sum = a + b;sub = a-b;mul = a * b;div = a / b;end(二)生成Java調用文件
Matlab命令中輸入deploytool,新建一個matlab builder ja文件,在operationclass中添加operation.m文件,點擊bulid the project,生成一個供java調用的文件夾結構如下:
Operation-----|----distrib |
|-----operation.jar |
|-----readme.txt
|
-------src
|
|----operation
|
|----operationclass.java
|
|----operationMCRFactory.java
|----operationclassRemote.java
|
|----classes
|
|----operation
|
|----operation.ctf
|
|----operationclass$1.class
|----operationclass.class
|----operationclassRemote.class
|----operationMCRFactory.class |-------build.log |-------operation.ctf |-------operation.jar |-------mccExcludedFiles.log |-------readme.txt(三)Java中建立一個java project工程JavaTestMatlab,導入兩個庫文件javabuilder.jar(C:ProgramFilestoolboxjavabuilderjar)和operation.jar(D:My DocumentsMATLABoperationdistrib operation.jar),編寫java程序JavaTestMatlab.java程序如下: import operation.*;import java.util.Scanner;class JavaTestMatlab {
public static void main(String[] args)
{
Object result[] = null;
/* object是所有類的父類public Object[] operation(int nargout, Object...rhs)*/
operationclass myAdd = null;
/* Stores myadd class instance */
try
{
int a,b;
myAdd = new operationclass();
System.out.println(“從鍵盤輸入兩個操作數:”);
System.out.print(“
輸入第一個操作數:”);
Scanner scan = new Scanner(System.in);
//從控制臺讀入輸入的整數
a = scan.nextInt();
//從控制臺輸入第一個操作數
System.out.print(“
輸入第二個操作數: ”);
b = scan.nextInt();
//從控制臺輸入第二個操作數
result = myAdd.operation(4,a,b);//operation(4,a,b)中第一個參數是返回值的個數,a是第一個輸入參數,b是第二個輸入參數
System.out.print(“The sum of ” + Integer.toString(a)+ “ and ” + Integer.toString(b)+ “ is: ”);
System.out.println(result[0]);
System.out.print(“The sub of ” + Integer.toString(a)+ “ and ” + Integer.toString(b)+ “ is: ”);
System.out.println(result[1]);
System.out.print(“The mul of ” + Integer.toString(a)+ “ and ” + Integer.toString(b)+ “ is: ”);
System.out.println(result[2]);
System.out.print(“The div of ” + Integer.toString(a)+ “ and ” + Integer.toString(b)+ “ is: ”);
System.out.println(result[3]);
}
catch(Exception e)
{
System.out.println(e);
}
} } 測試結果如下:
從鍵盤輸入兩個操作數:
輸入第一個操作數:55
輸入第二個操作數: 22 The sum of 55 and 22 is: 77 The sub of 55 and 22 is: 33 The mul of 55 and 22 is: 1210 The div of 55 and 22 is: 3(四)錯誤調試
1.安裝matlab不完整,沒有toolboxjavabuilder下的文件 2.環境變量中classpath中添加兩個jar文件的路徑 已經集成的軟件
ORDEM2000 空間碎片評估系統(DAS2.0)增阻型離軌氣動分析及優化軟件 索型離軌技術模擬軟件TetherSim 衛星壽命計算軟件 再入安全評估軟件
GEO衛星離軌燃料估算軟件
第三篇:集成電路設計學習總結
集成電路設計學習總結
一. 課堂學習情況
集成電路教學采用了多媒體教學。采用這種方式在課堂上能夠直觀的了解到各元件的結構,特點,性能,參數等具體的物理和數學模型,而且節省了課堂板書時間,增加了學習的效率。我在課堂上學到了三方面的知識。第一:進一步理解了做人做學問的方法。老師平易近人,在課堂上不僅是想著傳授我們相關的專業知識,而且在不斷的督促,鞭策我們如何去做學問,如何在自身素質上不斷的提升自己,在這一點上我獲益匪淺。第二:學習了本課程以外的重要知識。我認為老師的做法很對,集成電路設計對于我們本科階段的學生來說,存在一定的難度,在知識層面上應該定義為了解其基本原理和理論知識。更重要的是,老師在課堂上培養我們一些重要的技能,特別是在論文如何寫,WORD如何更好的使用方面下了很大的功夫。這對我們今后的學習或者就業是有重要影響的,因此我也非常感興趣,聽得比較認真。第三:對集成電路設計專業知識有了大致的理解和理論體系的直觀概念。在課堂中,跟著老師的思路看著幻燈片,逐步對知識進行消化和吸收,這是個漫長的過程,我承認有時候有點靜不下心了。當自己把書上的相關內容瀏覽之后,看幻燈片的內容,就覺得自己知道了,沒有認真聽講解了,以至于丟失了一些細節的重要信息。這點是一個重大失誤。比如,對于方塊電阻的粗細,和用法還是朦朦朧朧的。所以,老師說的上課認真聽講,這點是十分正確的。
總之,在本課程中,我學習到的東西是遠大于這個課程內容本身的,我感覺收獲很大。
二. 論文寫作情況
在論文寫作方面,我感覺有了很大的提升。第一篇論文是集成電路專業知識方面的問題,我開始認為在各大搜索引擎上搜索一下,應該會有很多相關介紹。不料,關于閾值電壓的問題,搜索引擎上的專業介紹極少,而且不全面。我對此很苦惱,突然想到學校圖書管能提供各種論文檢索網站,而且可以免費下載,于是我迅速的轉向了圖書館的搜索庫,搜索并下載了大量的相關論文,然后研讀每篇論文,進行逐個的篩選。這次論文的寫作對我資料的查找能力有了較大的提升,對檢索論文資料有了初步的了解,積累了對專業論文的格式和方法從無到有的經驗。
第二篇論文,是對知識的總結。首先,逐步落實了格式上的要求,使自己的論文在格式上基本符合規范。其次,提煉出本書的要點知識,并加以歸納總結,既提升了自己對知識的歸納能力,同時也對知識進行了進一步的吸收并將其轉化問自己的東西,加深了對知識的理解。最后,鍛煉了自己的寫作能力,克服了對于長篇文章無從下手的困難。為以后的論文寫作打下了一定的基礎。論文的寫作過程雖然比較困難,繁雜,但是鍛煉了我的綜合能力,從查資料的過程中也發現了一些比較好的專業網站豐富了知識面,是很有益處的。
三. 課堂演講情況
首先,我認為課堂演講這種方式給學生提供了一個很好的平臺,對于我們是一種極大的鍛煉。當老師點名叫我第一個演講的時候,我并沒有猶豫,而是欣然接受了。因為這種鍛煉的機會并不多,正是鍛煉自己的能力,正確認識自己的絕佳機會,而且也免去了我自己掙扎是否該上臺演講的思想
斗爭。在這點上,希望老師還是該保持,多點鼓勵,即使點名也無所謂。而同學們也太矜持了,能大膽點更好。這次我作為第一個上臺演講的人,反而沒什么壓力,因為沒有前人作為比較。但是我沒有放松,因為我認為既然接受了個事情,那么做一件事情就要盡量做到最好。開始確定演講題目有點上腦筋,因為過于專業上的東西我自己想搞明白都難,更別說講給別人聽了。我上網搜索了大量的有關集成電路方面的知識,花了近兩天時間確定了集成電路驗證這個主題,作為對我們學習集成電路設計的一種課外知識擴展進行講解。確定主題之后花了一天時間進行相關信息的收集,然后對所搜集信息的篩選,總結,最后做了一個簡單的PPT。雖然很簡單,但是做的過程卻是很費了一番功夫,對于一些自己不能理解的專業術語還得分別查找,理解。最后還要看著PPT進行簡單的預演一下,理清講解思路和講解重點。整個過程花了5天時間。由于準備比較充分,所以上臺演講的時候比較自信,并不緊張,但是因為沒講課經驗,還是不能做到游刃有余,我自己都感覺講解速度過快。不過這并不重要了,關鍵的是我得到各方面了技能上的提升。
四. 上機實驗情況
由于第一次使用UNIX系統,開始有點不熟悉,照著上機實驗手冊的UNIX命令練習了一會就適應了。操作過程中發現UNIX系統還是比較友好的,鼠標右鍵功能還比較全面,不用所有操縱都在終端輸入命令執行。畫版圖的過程比較順利,按照書上的要求畫反相器版圖后,檢測出2個錯誤,是有源區距離過近,當即修改解決,感覺九天軟件的操作性還是比較不錯的。電路元件圖也很快畫好了,比較簡單。但是在LVS中修改參數的時候卻遇到了麻煩。由于對UNIX的VI編輯器命令和操作方法不熟悉,始終沒能修改成功,頗為惱火。由于上機手冊對VI命令介紹有限,第一天結束后我就回寢室在電腦上查了下VI命令的詳細介紹。第二天,問題輕松解決,并發現上機手冊上對于指令模式的介紹,K,J命令描述相反了。第二天的實驗很快就完成了。這兩天的實驗,基本是自己獨立完成,尋找錯誤,不懂的東西自己找資料解決,感覺這方面的能力有所提升。對于九天工具掌握了其基本用法。
五. 課程教學建議
對于本科教學來說,學校依然采用的是“填鴨”式的教學方法。老師在課堂上滿堂灌,學生在下面聽、記筆記,這就是現在教育的現狀。這種方式只能教出規規矩矩的人才,不利于學生思考能力和創新能力的提升。我認為可以在一些選修課程中改變這種方式,采取老師布置題目,學生在課后搜集資料,自己分析思考,然后在課堂上討論解答的方式,這一點可以參考國外大學的教學模式。這種方式可以積極的調動學生自主學習,參與研究的動力,又使課堂氣氛活躍,使學生和老師直接的交流更多,雙方都可以受益?,F在國家在提倡培養創新型人才,但是任然沿用中國幾千年不變的教學方式顯然是行不通的,要改革,但不能盲目??梢栽O試點科目進行改革,看效果,逐步摸索。老師您應該把您的這種教學方法推廣到其他課程中去,讓更多的學生受益。
通信1班
萬凱林 20072376
第四篇:集成光學考試總結
第一章
1.集成光學的分類:
? 按集成的方式劃分:個數集成和功能集成
? 按集成的類型劃分:光子集成回路(PIC)和光電子集成回路(OEIC)? 按集成的技術途徑劃分:單片集成和混合集成 ? 按研究內容劃分:導波光學和集成光路 2.集成光學的定義
(1)集成光學是在光電子學和微電子學基礎上,采用集成方法研究和發展光學器件和混合光學-電子學器件系統的一門新的學科。
(2)集成光學是研究介質薄膜中的光學現象,以及光學元器件集成化的一門學科。
(3)集成光學是研究集成光路的特性和制造技術以及與微電子學相結合的學科。3.集成光學的主要應用
光纖通信,光子計算機,光纖傳感 4.集成光學系統有什么優點?
1)集成光學系統與離散光學器件系統的比較
(1)光波在光波導中傳播,光波容易控制和保持其能量。(2)集成化帶來的穩固定位。
(3)器件尺寸和相互作用長度縮短;相關的電子器件的工作電壓也較低。
(4)功率密度高。沿波導傳輸的光被限制在狹小的局部空間,導致較高的功率密度,容易達到必要的器件工作閾值和利用非線性效應工作。
(5)體積小,重量輕。集成光學器件一般集成在厘米尺度的襯底上,其體積小,重量輕。
2)集成光路與集成電路的比較
把激光器、調制器、探測器等有源器件集成在同一襯底上,并用光波導、隔離器、耦合器和濾波器等無源器件連接起來構成的光學系統稱為集成光路,以實現光學系統的薄膜化、微型化和集成化。
用集成光路代替集成電路的優點包括帶寬增加,波分復用,多路開關。耦合損耗小,尺寸小,重量輕,功耗小,成批制備經濟性好,可靠性高等。由于光和物質的多種相互作用,還可以在集成光路的構成中,利用諸如光電效應、電光效應、聲光效應、磁光效應、熱光效應等多種物理效應,實現新型的器件功能。
第二章
1.光波導的分類
(a)平板波導(slab waveguide)(b)條形波導(strip waveguide)(c)圓柱波導(cylindrical waveguide)2.會利用射線光學方法分析平板波導的覆蓋層輻射波、襯底層輻射波和傳導波的形成條件。
3.TE、TM模的本征模方程(色散方程)是什么?TE、TM模的截止波長(截止頻率)、波導截止厚度的表達式?為什么對稱波導的基模不存在截止頻率?
4.會求給定平板波導所能傳輸的模式?
5.各種光束耦合器的工作原理和特點? 棱鏡耦合器:
棱鏡耦合法的優點:
1.在最佳條件下可以得到很高的效率(輸入時約為80%,輸出時約為100%)。2.可以從自由導波模中任選一種進行激勵。
3.不僅適用于平板波導,在條形波導的情況下也可以高效率地使用。4.棱鏡位置可即可離,能夠在實驗過程中調整,以實現最大耦合強度。缺點:
(1)棱鏡與波導間隙以及入射光束的位置需要進行精心調整,缺乏穩定性。
(2)棱鏡耦合器所用的材料除應滿足np>n1外,還要求對所用的光波長透明,無顯著吸收與散射。光柵耦合器
功能與棱鏡耦合器類似,用于實現自由空間和平面介質光波導之間的耦合,不同的是棱鏡和間隙介質被光柵薄膜代替。
光柵耦合器的優點:
1)不受光波導折射率大小的限制。
2)可以選擇所有導模中的任意一種進行激勵。
3)可以與波導集成。震動或外界環境的變化,不會改變耦合效率,穩定性好,體積小,價格便宜。4)調整光束的入射位置時不需要特別嚴格的精度。
5)也可以在橫向進行同樣的耦合,因此可以激勵寬度非常大的波導光。光柵耦合器的缺點:
1)由于光柵耦合與入射光角度的高度相干性,光柵耦合器不能有效地用于發散光束的耦合; 2)光柵耦合器設計過程需要進行復雜的理論計算,而且制作比較困難; 3)器件的參數在制作后無法進一步調整; 4)對于條形波導,光束截面的匹配比較困難。尖劈形薄膜耦合器
優點:制作簡單,可以實現有效的輸出耦合。缺點:用于輸入耦合時,很難獲得高的效率。
第三章
1.光波導的調制
內調制(直接調制)和外調制(間接調制):
內調制是利用調制信號直接控制激光器的振蕩參數,使輸出光的特性隨信號而改變。
外調制是用調制信號作用于激光腔外面的調制器,產生某種物理效應(如電光、磁光、聲光、熱光等效應),使通過調制器的激光束的某一個參量隨信號而變。2.光波調制
相位調制,強度調制,偏振調制
3.會求電光效應引起的折射率的變化
22x3x12x2?1?2?1?2?1?2?1??1??1?????x??x??x?2?xx?2?xx?2??2?1?2?2?2?3?2?23?2?13?2?x1x2?1 222n1n2n3?n?1?n?2?n?3?n?4
?n?5
?n?6
4.聲光效應的布拉格條件和Q判據?拉曼-奈斯衍射和布拉格衍射有何不同? 根據聲波和光波的波長以及相互作用區域的長度L的相對大小,存在兩種聲光衍射現象,即拉曼-奈斯(Raman-Nath)衍射和布拉格衍射
(1).拉曼-奈斯(Raman-Nath)衍射
此時聲波頻率較低,聲波束寬度L較小,由于聲速比光束小的多,在光束通過介質的時間內,折射率的變化可以忽略不計,可以把聲光介質看作相對靜止的“面相位光柵”或“薄光柵”,此時聲波的作用可視為與普通平面光柵相同的折射率光柵。由于光柵較薄,使得入射光在L距離內只受到一次衍射就偏離原方向從器件中輸出,從而形成多級衍射光束。
當入射光沿z方向(?i?0)時,各級衍射處所相應的方向
由下式給出
?sin??m?/na0m?0,?1,?2,?計算表明,拉曼-奈斯衍射的效率較低,其中一級衍射效率最大不超過35%,但這種衍射不受入射角的限制,因此調節方便,在許多領域仍得到廣泛應用。(2)Raman-Nath衍射條件: 當聲波束寬度滿足
n?a2 L??4?0時,即產生Raman-Nath衍射,可以忽略介質中各衍射光的相互影響。
5.自然旋光 旋光定義:
當線偏振光沿某些晶體(如石英)的光軸方向傳播,或通過某些溶液(如蔗糖)時,其振動面將以光的傳播方向為軸發生旋轉,這稱為旋光現象。
自然旋光現象的特征
(1)自然旋光具有可逆性。若迎著光傳播方向看去,振動面表現為右旋,則當光線逆反時,振動面仍表現為右旋,即左右旋與光的傳播方向無關!
(2)光束一正一反兩次通過自然旋光物質時,振動 面轉過角度為0。
5.什么是磁光效應,利用磁光效應可以構成哪些光學器件?
法拉第磁致旋轉效應:在外加磁場B作用下,某些原本各向同性的介質變成旋光性物質,偏振光通過該物質時其偏振面發生旋轉。
法拉第旋轉的特殊規律
(1)磁致旋光不可逆性。當光傳播方向平行于磁場時,若法拉第效應表現為右旋,則當光線逆反時,法拉第效應表現為左旋。
(2)光束一正一反兩次通過磁光介質時,振動面轉過角度 2?。法拉第旋轉的應用: 磁光隔離器(Isolators):放置于激光器及光放大器前面,防止系統中的反射光對器件性能的影響甚至損傷,即只允許光單向傳輸。
磁光環行器(Circulators):一種三端口(或四端口)的非互易磁性器件,在光網絡中用于信號的上、下載。
第四章
1.電子躍遷的種類 受激輻射 受激吸收 自發輻射
2.半導體激光器的分類
F-P腔激光器,分布反饋(DFB)激光器和分布Bragg反射器(DBR)激光器,量子限制激光器,垂直腔表面發射激光器(VCSEL),解理耦合腔半導體激光器(C3,cleaved coupled cavity)3.半導體激光器效率的各種定義和表達式,會求半導體激光器的發射波長
發射波長:??hc Edir4.DFB和DBR激光器在結構和工作上有何不同?如何求它們的發射波長?(1)DFB激光器的模式: 不正好是布拉格波長,而是對稱的位于
?B的兩側。
2?B假設?m是允許DFB發射的模式,此時?m??B?式中m是模數,L是衍射光柵有效長度。
2nL(m?1)
完全對稱的器件應具有兩個與λB等距離的模式;實際上,由于制造過程,或者有意使其不對稱,只能產生一個模式;又因為L>> λB,上式的第二項非常小,所以發射光的波長非常靠近λB
(2)DBR激光器除有源區外,還在緊靠其右側增加了一段分布式布拉格反射器,它起著衍射光柵的作用。
DBR激光器的輸出是反射光相長干涉的結果,只有當布拉格波長滿足
(2)DBR結構和DFB類似,區別在于DBR根據波導功能進行分區設計,光柵的周期性溝槽放在有源波導兩外側的無源波導上,從而避免了光柵制作過程中可能造成的晶格損傷。有源波導的增益性能和無源周期波導的Bragg反射作用相結合,只有位于Bragg頻率附近的光波才能得到激射。(3)DFB激光器的特點: 1)動態單縱模窄線寬振蕩
DFB激光器只有滿足Bragg反射條件的特定波長的光才能受到強烈反射而形成振蕩。多個微型諧振腔同步振蕩、共同選模,實現單縱模振蕩。
2)波長穩定性好
溫度漂移約為0.08nm/℃。3)動態譜線好
DFB激光器在高速調制時仍然保持單模特性。4)線性度好
現已研制出線性度非常好的DFB激光器,廣泛用于模擬調制的有線電視光纖傳輸系統中。
5)波長選擇性
改變光柵周期能夠在一定范圍內有控制地選擇激光器的發射波長。(4)DBR激光器的特點:
DFB激光器的增益區同光柵區重疊,當驅動電流改變時,輸出功率和發射波長同時改變;而DBR激光器的反射器和增益區分離,所以可以分別控制DBR激光器的輸出功率(通過改變流過激射區的電流)和發射波長(通過改變流過光柵段的電流)。所以DBR激光器比DFB激光器更易于控制和調整。
5.參數(1)峰值波長
在規定輸出光功率時,激光光譜內強度最大的光譜波長被定義為峰值波長。
(2)中心波長
在光源的發射光譜中,連接50%最大幅度值線段的中點所對應的波長稱為中心波長
(3)譜寬與線寬
包含所有振蕩模式在內的發射譜總的寬度稱為激光器的譜寬;某一單獨模式的寬度稱為線寬。
m(?Bneff)?2?
(4)邊模抑制比(SSR)
邊模抑制比是指在發射光譜中,在規定的輸出功率和規定的調制(或CW)時最高光譜峰值強度與次高光譜峰值強度之比。該參數僅用于單模LD,如DFB-LD。6.光檢測器
光檢測器是光信號的接收器件,是完成光信號轉變為電信號的一種有源器件,又稱光子計數器。它們檢測光信號的工作原理,可以分為三個步驟:(1)光信號產生光生載流子;
(2)光生載流子的遷移和可能的倍增(放大);(3)光電流與外電路的相互作用與聯系。
7.PIN光電檢測器的基本參數及定義,求PIN的響應度和量子效率(1)波長響應(光譜特性)(a)上截止波長:?c?hc1.24?(?m)EgEg(b)下截止波長:當入射光波長太短時,光子的吸收系數很強,使光電轉換效率大大下降。(2)光電轉換效率
(a)量子效率:量子效率定義為入射在檢測器上的一個光子所產生的對光電流有貢獻的光生載流子數目。即
(b)響應度:R?(3)響應速度
響應速度常用響應時間(上升時間和下降時間)來表示。輸入階躍光功率時,光生電流脈沖由前沿最大幅度的10%上升到的90%,后沿的90%下降到10%的時間定義為脈沖上升時間和下降時間。8.APD的工作原理 碰撞電離,雪崩倍增
光生的電子?空穴對經過高電場區時被加速。從而獲得足夠的能量,它們在高速運動中與 P 區晶格上的原子碰撞,使晶格中的原子電離,從而產生新的電子-空穴對。這種通過碰撞電離產生的電子?空穴對,稱為二次電子-空穴對。新產生的二次電子和空穴在高電場區里運動時又被加速,又可能碰撞別的原子,這樣多次碰撞電離的結果,使載流子迅速增加,反向電流迅速加大,形成雪崩倍增效應。
IpPin??e(?A?W)h?第五章
1.光無源器件分類
按功能分類:光耦合器、光開關、分波與合波器、透鏡、光偏轉器、衍射光柵、反射器、偏振模轉換器、光濾波器、光衰減器、光隔離器、光環行器等。
按所利用的物理效應分類:電光集成器件、聲光集成器件、熱光集成器件、磁光集成器件等。2.電光調制器的分類和工作原理(重點是單波導型和定向耦合器型)
(1)電光調制器的分類:單波導電光調制器,定向耦合器型電光開關與調制器,馬赫-曾德爾干涉儀型電光開關與調制器,全內反射型電光開關和調制器
(2)單波導型工作原理:這種調制器一般是在低折射率的襯底上制作高折射率的波導層并做上電極而構成的。這類
調制器中波導與襯底之間的總的折射率差?nt主要是由三種不同的原因造成的, ?nt?n1?n2??nchem??nCCR??nEO,只要設法改變器件的結構參數,從而改變上式等號右邊的三項的差值,就可以設計出不同狀態的調制器或開關。
(3)定向耦合器型工作原理:定向耦合式調制器是由平行且距離很小的兩個光波導組成,其中一個波導的光能耦合到另一個波導內,電極電場的作用是改變波導的傳播特性和促進兩波導間的橫向光耦合。在光的一個耦合周期內,當電極上無電壓時,一個波導內傳輸的光將完全禍合到另一個波導輸出;當電極上有電壓時,進入一個波導內的光,耦合后將完全再返回到原波導中傳播和輸出.因此光信號就受到了控制電壓的調制。3.TE-TM模式分離器和轉換器的工作原理
分離器:(1)在波導層的表面直接制作金屬薄膜,根據金屬薄膜對TE模和TM模的傳輸損耗的差異來實現某個模式的消除。(2)使用各向異性的晶體,在離子交換玻璃波導上,加載與LiNbO3同屬于三方晶系的負單軸晶體方解石(CaCO3)而構成偏振器。方解石對應于正常光線和異常光線的折射率,在波長為0.633μm時,分別為no=1.656,ne=1.458,當波導的折射率為ng,存在著no>ng>ne的關系。假設方解石的光軸與TE模的偏振光方向一致,那么TE模就可以在玻璃波導中傳輸;TM模則由于ng 轉換器:TE-TM模式轉換器的基本思想是采用沿導波傳播方向周期性地變化外加電場的方法來彌補TE模和TM模之間的相位失配,從而實現TE-TM之間的模式轉換。相位匹配關系為 共線集成聲光器件的基本結構單元是聲光TE-TM模式轉換器和偏振分束器,通過二者的組合,可以實現波長分波器、濾波器、波長選擇開關和分插復用器等。這類聲光器件的TE-TM光波模式轉換作用是由聲表面波引起的,而聲表面波是利用在壓電材料上制作的叉指換能器通過電-聲轉換獲得的。聲表面波的頻率決定了能發生偏振模轉換的光波長,從而可以實現光波長選擇。 第六章 1.光集成的方式有哪些?光集成的類型有哪兩種? 光集成方式:期間功能的集成,器件個數的集成 光集成的類型:全光集成(photonic integrated circuit, PIC),光電集成(opto-electronic integrated circuit, OEIC)2.單片集成與混合集成各有什么優點?(1)單片集成包括全光集成和混合電子集成。 優點:生產工藝決定一切,一旦技術確定下來后,可以大幅度降低成本;與混合集成相比,性能更穩定,提高可靠性。 (2)混合集成最大特征和優點:將有源器件、光波導光路采用不同的工藝設備,分別選擇各自最合適的材料、最合適的器件形式;大多光電混合集成器件在研究初期就可以得到滿足實用化條件的性能。 第七章 1.根據能帶結構,制作集成光學器件的半導體材料主要可以分為哪兩類,舉例說明? 分為間接帶隙半導體材料(Si,Ge) 直接帶隙半導體材料(GaAs,InP,GaN,) 2.光波導用的聚合物材料具有哪些優點,存在哪些不足? 優點:價格低,制作簡單; 材料可以淀積在半導體襯底上,便于實現混合光電集成; 聚合物光波導具有較低的傳輸損耗,與光纖的耦合損耗低; 可以有效利用折射率變化獲得強度和相位調制; 可以根據需要,通過調節有機材料的組分以實現電光、熱光等特性。缺點:機械強度和穩定性差,易被污染而且不易清洗。3.集成光學器件對材料有哪些要求? (1)材料要易于形成質量良好的光波導,且形成的光波導能滿足器件功能的要求。(2)集成性能好(3)經濟性 業務預警業務開發總結 最近研究了下業務預警的業務開發,我們有兩點需求目前平臺還支持不了,1、能本月預警下個月到期的數據; 2、預警結果可以顯示明細、也可以顯示匯總,甚至希望能顯示時間段內的數據 本文檔只是個人總結,還有很多不完善的地方希望和大家溝通,相互學習。這里以應收單的業務預警為例 1.BOSIDE中新建預警對象 平臺沒有提供模板,不過供應鏈做過,我們直接復制供應鏈的預警對象就好 預警對象中有5個參數 1、數據源:需要預警的數據來源,可以是單據、基礎資料、報表,我這里選擇的是應收單 2、預警方案解析插件: 預警方案建立并啟動后,后臺服務根據預警周期條件,自動執行預警方案,在此過程中,通過預警服務插件進行靈活干預和控制;可以重寫類Kingdee.BOS.Core.Warn.PlugIn.AbstractWarnServicePlugIn來實現干預; 2.1 解析消息變量之前事件 在此事件中,可以自定義需要保存到預警消息的關鍵數據。一般用于報表預警。以下是示例: /// /// 解析預警消息之前 /// 用途:主要用于報表預警,唯一確定一條報表數據所需要的關鍵數據是不一定,所有允許自定義 /// /// void BeforeParseWarnMessage(BeforeParseWarnMessageEventArgs e) { //添加預警數據關鍵字段,如以下示例(添加字段名稱為FName的關鍵數據,將保存到預警消息中,以便后續處理使用) e.KeyValueFieldNames.Add(“FName”); base.BeforeParseWarnMessage(e); } 2.2.解析預警條件之后事件 主要用于附加一些額外的過濾條件,適合一些硬編碼的條件。以下是示例: /// /// 觸發預警條件解析之后的事件 /// 用途:主要用于添加額外的一些過濾條件 /// /// void AfterWarnConditionParse(AfterWarnConditionParseArgs e) { //將客戶=‘海格科技’的過濾掉 string filter = “ FCUSTOMERNAME ='海格科技' ”; if(string.IsNullOrWhiteSpace(e.Filter)) { e.Filter = filter; } else { e.Filter = “ AND ” + filter; } base.AfterWarnConditionParse(e); } 2.3.預警執行事件 主要用于修改預警執行結果集合,不建議重寫此事件,以下是示例: /// /// 執行預警解析 /// 用途:主要用于修改執行后的數據集合,不建議重寫 /// void ExcuteWarnParse(ExcuteWarnParseEventArgs e) { base.ExcuteWarnParse(e); //將第一個數據中,客戶名稱改為 海格科技 //數據源是否為報表 if(this.WarnHelper.IsDataSourceReport) { e.WarnMessage.WarnObjectSysReportData.Rows[0][“FName”]=“海格科技”; } else { e.WarnMessage.WarnObjectDynamicObjects[0][“FName”] = “海格科技”; } } 2.4.消息解析之后事件 主要用于修改格式化后的預警消息,或者進一步使用自定義變量格式化預警消息 /// /// 解析預警消息之后 /// 用途:主要用于修改格式化后的預警消息,或者進一步使用自定義變量格式化預警消息 /// /// void AfterParseWarnMessage(AfterParseWarnMessageEventArgs e) { base.AfterParseWarnMessage(e); //將自定義變量{FCUSTOMERNAME.Custom} 格式化為 海格科技 for(int i = 0;i < e.WarnMessage.MessageEntityList.Count;i++) { MessageEntity item = e.WarnMessage.MessageEntityList[i].MessageEntity as MessageEntity; if(item!= null) { item.Content = item.Content.Replace(“{FCUSTOMERNAME.Custom}”, “海格科技”); } } } 2.5.消息發送之前事件 對發送消息進一步精確控制,以下是示例: /// /// 發送預警消息之前 /// 針對消息發送的精確控制 /// /// void BeforeSendWarnMessage(BeforeSendWarnMessageEventArgs e) { base.BeforeSendWarnMessage(e); //當消息發送條數大于100時,取消發送 if(e.WarnMessage.MessageEntityList.Count > 100) { e.Cancel = true; } } 3、客戶端插件重寫指導說明 在消息中心,或者首頁的預警消息功能下面,可以看到預警消息列表。此列表支持預警消息的查看和處理工作,通過預警方案的消息客戶端插件重寫,可以自定義處理預警消息和查看消息。 同樣可以把自己的插件注冊進來 重寫類:Kingdee.BOS.Core.Warn.PlugIn.AbstractWarnMessagePlugIn 3.1.查看消息 彈出指定的查看界面,如果不重寫,則彈出統一的消息查看界面,以下是示例: /// /// 顯示消息 /// public override void ShowWarnMessage(ShowWarnMessageEventArgs e) { //根據傳過來的關鍵數據,進行查看 if(e.MsgDataKeyValueList!= null && e.MsgDataKeyValueList.Count()> 0) { // DoShow 查看邏輯 } //標識從插件中查看,這樣就不會顯示公用的查看界面了 e.IsShowByPlugIn = true; base.ShowWarnMessage(e); } 3.2.處理消息 插件根據傳遞過來的關鍵數據,進行處理,以下是示例: /// /// 處理消息 /// public override void ProcessWarnMessage(ProcessWarnMessageEventArgs e) { if(e.MsgDataKeyValueList!= null && e.MsgDataKeyValueList.Count()> 0) { string message = string.Empty; message = DoProcess(e.MsgDataKeyValueList);//自定義處理邏輯 //插件中顯示了提示消息,公共的提示消息就不顯示了 e.Result.IsShowMessage = false; //標識已被插件處理 e.IsProcessByPlugin = true; this.ParentView.ShowMessage(message); } base.ProcessWarnMessage(e); } 4、預警條件窗體: 第一個是平臺的模板,我們也可以繼承這個模板自定義我們自己需要的預警條件,預警條件是一個單據; 5、預警方案插件重寫指導說明 預警方案維護界面中,對消息的配置支持變量,而變量是根據對應預警對象數據源的元數據構成的。如果開發者需要精簡一些無用的變量,則可以通過重寫預警方案插件來實現。 重寫類:Kingdee.BOS.Core.Warn.PlugIn.AbstractWarnSolutionEditPlugIn 5.1 設置預警條件之前事件 更改預警消息變量來源,適用于精簡一些無用的字段變量; 注意,需與下面的設置預警變量之前事件配套使用,否則會出錯; 以下是示例: /// /// 預警條件界面,在設置預警條件字段之前 /// public override void BeforeSetFilterFields(BeforeSetFilterFieldsEventArgs e) { //將字段名為FName的字段移除預警條件字段集合 for(int i = e.FilterFields.Count1;i >= 0;i--) { WarnMessageVeriable veriable = e.Veriablelist[i]; if(veriable.FiledName.ToUpperInvariant()== “FName”) { e.Veriablelist.RemoveAt(i); } } base.BeforeSetVeriableList(e); } 預警對象建立好后,我們需要用administrator進入我們的系統,然后設置預警方案 預警方案的新增界面,填好編號和名稱,選擇預警級別,然后選擇自己剛剛在BOS里設置的預警對象,選擇預警對象好會默認把BOS里配置的預警條件窗體攜帶到這里的預警條件下,同時會加載消息設置的東西 然后設置預警周期 設置好保存就可以了,最后設置你的消息提示; 明細表體和明細正文就是我們要設置的明細消息提示、用{}框起來需要提示的字段,這里的字段都是你預警對象數據源里的字段,保存這個預警方案,預警方案就算設置好了,然后啟動這個預警方案,就會自動執行,當然你也可以手動執行驗證; 執行后到預警執行情況列表里查看就行,同時也會發消息到對應的接收人第五篇:金蝶云K3 Cloud業務預警業務開發總結