欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

帶語(yǔ)音提示的電子飛行檢查單系統(tǒng)的制作方法

文檔序號(hào):4147434閱讀:362來(lái)源:國(guó)知局
專利名稱:帶語(yǔ)音提示的電子飛行檢查單系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及帶語(yǔ)音提示的電子飛行檢査單系統(tǒng)。
背景技術(shù)
飛機(jī)是一個(gè)復(fù)雜的機(jī)電一體化系統(tǒng)。隨著飛機(jī)設(shè)計(jì)、制造水平的提高和維護(hù)經(jīng)驗(yàn)的積累, 由于飛機(jī)本身故障而發(fā)生的事故已很少,飛行事故大多由于飛行員操作不當(dāng)造成,而這些人 為事故又有70%是由于飛行檢查單使用不當(dāng)而引起。實(shí)際操作時(shí), 一些飛行員有依賴記憶而 忽視飛行檢查單和跳讀檢査單的習(xí)慣,這給飛行安全帶來(lái)隱患。

發(fā)明內(nèi)容
以波音747-400為例,飛行員通過(guò)飛行管理計(jì)算機(jī)(FMC)運(yùn)行本程序,通過(guò)該系統(tǒng)了解機(jī) 務(wù)對(duì)飛機(jī)檢査的結(jié)果,代替紙質(zhì)飛行檢査單進(jìn)行各項(xiàng)檢查,帶有語(yǔ)音提示,飛行員可通過(guò)聽(tīng) 語(yǔ)音而不是閱讀來(lái)查看檢查單,避免了跳讀檢查單帶來(lái)的事故隱患。
查看飛行檢查單在飛行檢查單系統(tǒng)點(diǎn)"飛行"菜單中的"波音747-400"(

圖1),在子 菜單中選擇"正常飛行檢査單",彈出"波音747-400正常飛行檢查單"對(duì)話框,先選擇飛行 階段單選鈕,右側(cè)"注意"欄內(nèi)將顯示注意事項(xiàng)(圖2),再在組合框中選擇要査看的詳細(xì)的 飛行階段檢査單,彈出"檢査項(xiàng)目"對(duì)話框,點(diǎn)其中"語(yǔ)音提示"右側(cè)的音頻播放器,可通 過(guò)聽(tīng)語(yǔ)音提示檢査各項(xiàng)目(圖3)。
圖1是系統(tǒng)的初始畫面。
圖2是正常飛行檢查單對(duì)話框,用一個(gè)驚嘆號(hào)提醒飛行員在啟動(dòng)發(fā)動(dòng)機(jī)時(shí)應(yīng)打開信號(hào)燈。 圖3是帶語(yǔ)音提示的檢査項(xiàng)目對(duì)話框,用MediaPlayer控件創(chuàng)建了成員變量,并結(jié)合相應(yīng)
的函數(shù),實(shí)現(xiàn)了使用同一個(gè)播放器播放不同音頻的功能。使用全局變量,控制"檢査項(xiàng)目"
對(duì)話框中的列表框。
實(shí)施方法
用同一個(gè)播放器播放不同音頻(見(jiàn)附圖3):在創(chuàng)建的對(duì)話框中加上ActiveX控件Windows MediaPlayer。右擊該控件,點(diǎn)"Class Wizard",在彈出的對(duì)話框中選"Member Variables"為
播放器建立成員變量(建立過(guò)程中,全部選用默認(rèn)設(shè)置)。然后在要用到該播放器的地方添加 函數(shù)SetUri("路徑名"),路徑名使用了相對(duì)路徑,以保證在各個(gè)電腦上都可用。使用全局變量,控制列表框,MediaPlayer控件
首先,在StdAfx.cpp中加上對(duì)全局變量的說(shuō)明 int course; int details;
再在StdAfx.h中"〃{{AFX_INSERT—LOCATION}}"之前加上 extern int course; extern int details)
這樣,在各個(gè)子程序中,都可以使用這四個(gè)變量。
course和details是用來(lái)在某對(duì)話框的單選按鈕及組合框中改變選項(xiàng)后,控制另一個(gè)對(duì)話 框在初始化時(shí)對(duì)它的列表框中的項(xiàng)目及播放器要播放的音頻的路徑作相應(yīng)響應(yīng)的。具體做法 如下先為對(duì)話框類Checklist747_400建立消息映射
OnRADIOBefore()
OnRADIOTakeoff()
OnRADIOFlying()
OnRADIOLanding()
OnSelchangeCombol()
在OnRADIOBefore()中加上關(guān)鍵代碼course=l ,在OnRADIOTakeoff ()中加上關(guān)鍵代 碼course=2,在OnRADIOFlying ()中加上關(guān)鍵代碼course=3,在OnRADIO Landing ()中 加上關(guān)鍵代碼course=4。這樣,選了相應(yīng)的單選按鈕,course就變?yōu)椴煌闹怠?br> 在OnSelchangeCombol()中加上以course的值作為判斷條件的4個(gè)if語(yǔ)句。在每個(gè)if語(yǔ) 句中寫上"details=m—ComCtl.GetCurSel()+x;"這句話,x的值,在course為l, 2, 3, 4時(shí)分 別為l, 7, 11, 12。這樣,飛行的各個(gè)詳細(xì)階段就變成了detail從l到14的14個(gè)值。為后 來(lái)的在同一個(gè)對(duì)話框中完成不同項(xiàng)目的顯示打下了基礎(chǔ)。
接著,在對(duì)話框類Before一l的OnInitDialog()函數(shù)中寫入由開關(guān)語(yǔ)句控制的代碼
switch(details){
case 1 :{strcpy(dis_before_strl [O],"設(shè)置飛機(jī)外部燈光"); strcpy(dis—before—strl[l],"確定起落架狀態(tài)"); strcpy(disJ)efore—strl[2],"確定頂板可用"); strcpy(dis_before—strl[3],"在FMC中輸入航跡數(shù)據(jù)"); strcpy(dis—before—strl[4],"核實(shí)RTE和LEGS頁(yè)的參數(shù)");
strcpy(dis—before—strl[5],"核實(shí)飛行航路頁(yè)的參數(shù)");strcpy(dis—before—strl[6],"核實(shí)性能參數(shù)頁(yè)"); strcpy(dis—before—strl[7],"核實(shí)航路點(diǎn)");
for(int i=0;i<8;i++)m—BeforeJ .AddString((LPCTSTR)dis—before一strl [i]);
m player.SetUrl("resWREC006.WAV") ;break;} case 2:(strcpy(dis—before—str2
,"確定著陸燈已關(guān)閉");
strcpy(dis—before—str2[ 1 ],"關(guān)閉滑行燈,頻閃燈");
strcpy(dis—before—str2 [2],"關(guān)燃油泵");
strcpy(dis—before—str2[3],"設(shè)置EFIS控制組");
strcpy(dis—before—str2[4],"打開F/D開關(guān)");
strcpy(dis—before—str2[5],"關(guān)自動(dòng)駕駛");
strcpy(dis_before—str2[6],"設(shè)IAS/MACH選擇");
strcpy(dis—before—str2 [7],"設(shè)置限定高度");
strcpy(dis—before—str2[8],"檢查時(shí)鐘");
strcpy(dis—before—str2[9],"檢查備用設(shè)備");
strcpy(dis—before—str2[ 10],"檢查GPS");
s加py(dis—before—str2[ll],"自動(dòng)剎車設(shè)于RTO檔");
strcpy(dis—before_str2 [ 12],"設(shè)置泊機(jī)剎車");
strcpy(dis—before—str2[13],"確認(rèn)擾流板位置");
strcpy (dis_before—str2 [ 14],"關(guān)閉偏航阻尼器");
strcpy(dis—before—str2[15],"關(guān)閉油門");
strcpy(dis—before—str2[16],"關(guān)閉反推");
strcpy(dis_before—str2[17],"檢查襟翼角度");
strcpy(disjDefore—str2[18],"設(shè)置應(yīng)答機(jī)");
strcpy(dis—before-Str2[19],"接收ATIS信息"); for(inti=0;i<20;i++)m—Before—l.AddString((LPCTSTR)dis—before—str2[i]); m_player.SetUrl("res\\REC007.WAV");break;}
case 3:{strcpy(dis_before—str3
,"核實(shí)Fuel sheet");
strcpy(dis—before—str3[l],"從ATC獲得起飛許可"); strcpy(dis—before—str3 [2],"復(fù)查起飛數(shù)據(jù)");
strcpy(dis—before—str3[3],"設(shè)定IAS/MACH選擇鈕");strcpy(dis—before—str3 [4],"設(shè)定航向"); strcpy(dis—before—str3[5〗,"設(shè)定高度"); strcpy(dis—before—str3[6],"完成離場(chǎng)簡(jiǎn)報(bào)"); strcpy(dis—before str3 P],"打開皮托管加熱"); for(inti=0;i<8;i++)m—Before—1.AddString((LPCTSTR)disbefore—str3[i]); m_player.SetUrl("res\\REC010.WAV");break;} case 4: {strcpy(dis_before—str4
,"關(guān)閉艙門");
strcpy(dis—before—str4[l],"確認(rèn)客艙準(zhǔn)備完畢"); strcpy(dis—before—str4[2],"確認(rèn)己獲得后推許可"); for(int i=0;i<3;i++)m—Before—l.AddString((LPCTSTR)dis—before—str4[i]); m_player.SetUrl("res\\REC011 .WAV");break;} case 5:{strcpy(dis—before—str5[O],"打開信號(hào)燈"); strcpy(dis—before—str5 [ 1 ],"打開燃油泵"); strcpy(dis_before—str5 [2],"打開頻閃燈"); for(inti=0;i<3;i++)m_Before—1.AddString((LPCTSTR)dis一before一str5[i]); m_player.SetUrl("res\\REC012.WAV");break;} case 6:{strcpy(dis—before—str6
,"顯示次發(fā)動(dòng)機(jī)參數(shù)"); strcpy(dis—before—str6[ 1 ],"啟動(dòng)點(diǎn)火器"); strcpy(dis_before—str6[2],"啟動(dòng)燃油供應(yīng)"); strcpy(dis—before—str6[3],"監(jiān)視發(fā)動(dòng)機(jī)參數(shù)"); strcpy(dis—before—str6[4],"發(fā)動(dòng)機(jī)啟動(dòng)后打開除冰開關(guān)"); strcpy(dis_before—str6[5],"獲取滑行道使用許可"); for(int i=0;i<6;i++)m_Before_l .AddString(dis一before—str6[i]); m_player.SetUrl("res\\RECO 13 .WAV");break;} case7:《strcpy(disjakeoff—strl
,"設(shè)置襟翼");
strcpy(dis—takeoff_str 1 [ 1 ],"檢査飛行控制"); strcpy(dis」akeoff—strl [2],"確認(rèn)起飛程序"); s加py(dis—takeoff—strl[3],"修正穩(wěn)定器"); strcpy(dis—takeoff—strl[4],"顯示LEGS頁(yè)"); strcpy(dis—takeoff—strl [5],"完成客艙通告"); strcpy(dis_takeoff—str 1 [6],"打開應(yīng)答機(jī)");strcpy(dis—takeoff—strl [7],"配置必要的自動(dòng)駕駛參數(shù)");
for(int i=0;i<8;i++)m—Before—1 .AddString(dis—takeoff_strl [i]);
m_player.SetUrl("res\\REC014.WAV");break;} case 8:{strcpy(dis—takeoff str2
,"從塔臺(tái)接收起飛許可"); strcpy(dis—takeoff—str2[ 1 ],"打開著陸燈"); strcpy(dis—takeoff—str2 [2],"松泊機(jī)剎車"); strcpy(dis—takeoff—str2[3],"根據(jù)地勤引導(dǎo)推出");
for(int i=0;i<4;i++)m—Before一l .AddString(dis一takeoff—str2[i]);
m_player,SetlM("res\\REC015.WAV");break;} case 9:{strcpy(dis—takeofflstr3
,"根據(jù)塔臺(tái)指示使用自動(dòng)駕駛儀");
strcpy(dis—takeoff—str3[l],"根據(jù)塔臺(tái)指示收襟翼,起落架輪"); strcpy(dis_takeoff—str3[2],"監(jiān)視發(fā)動(dòng)機(jī)推力"); strcpy(dis_takeoff—str3[3],"開偏航阻尼器");
for(int i=0;i<4;i++)m—BeforeJ .AddString(dis一takeoff—st鄰]);
m_player.SetUrl("res\\REC016,WAV");break;} case 10: {strcpy(dis—takeoff—str4
,"設(shè)置高度限定"); strcpy(dis—takeoff—str4 [ 1 ],"設(shè)定高度表"); strcpy(dis—takeoff—str4[2],"在6000ft處關(guān)著陸燈");
for(int i=0;i<3;i++)m_Before—1 .AddString(dis」akeoff—str4[i]);
m_player.SetUrl("res\\REC017.WAV");break;} case 11:(strcpy(diS-flying-Strl
,"監(jiān)視巡航推力"); strcpy(dis—flying—str 1 [ 1 ],"監(jiān)視飛行動(dòng)態(tài)"); strcpy(dis—flying_Strl [2],"監(jiān)視燃油管理系統(tǒng)");
for(int i=0;i<3;i++)m—Before—1 .AddString(dis—flying—strl [i]);
m_player.SetUrl("res\\REC018.WAV");break;} case 12:{strcpy(dis_landing—strl
,"接收ATIS信息"); strcpy(dis—landing一strl [l],"進(jìn)入進(jìn)近入口 "); strcpy(dis」anding—strl[2],"完成LEGS頁(yè)設(shè)置"); strcpy(dis—landing—strl[3],"完成進(jìn)近和著陸簡(jiǎn)報(bào)"); strcpy(dis—landing—strl[4],"按要求設(shè)定自動(dòng)剎車"); strcpy(dis—landing—strl[5],"在6000ft高度打開著陸燈");strcpy(dis—landing—str 1 [6],"設(shè)定高度表"); for(int i=0;i<7;i++)mJBefore_l .AddString(dis一landing—strl [i]); m_player.SetUrI("rcs\\REC019.WAV");break;} case 13: {strcpy(dis landing一str2
,"檢査飛行設(shè)備"); strcpy(dis—landing—str2[1 ],"按要求放出襟翼"); strcpy(dis—landing—str2[2],"放起落架"); strcpy(disjanding—str2[3],"擾流板預(yù)位"); strcpy(dis—landing—str2[4],"關(guān)偏航阻尼器"); for(int i=0;i<5;i++)m—Before—1 .AddString(dis」anding—str2[i]); irupIayer.SetUri("res\\REC020.WAV");break;} case 14: { strcpy(dis」anding—str3
,"關(guān)著陸燈"); strcpy(dis—landing—str3[l],"關(guān)自動(dòng)駕駛"); s加py(dis—landing—str3[2],"檢查擾流板已放下"); strcpy(dis—landing_str3 [3 ],"關(guān)頻閃燈"); strcpy(dis—landing—str3 [4],"關(guān)自動(dòng)殺lj車"); strcpy(dis_landing_str3 [5],"收襟翼"); strcpy(dis—landing—str3[6],"設(shè)應(yīng)答機(jī)為待機(jī)狀態(tài)"); strcpy(dis—landing—str3 [7],"在停機(jī)位拉上泊機(jī)剎車"); strcpy(dis」anding—str3[8],"關(guān)斷燃油供應(yīng)"); strcpy(dis—landing_str3 [9],"關(guān)燃油泵"); strcpy(dis_landing—str3 [ 10],"關(guān)外部燈光"); strcpy(dis」anding—str3[ll],"關(guān)皮托管加熱"); for(inti=0;i<12;i++)m_Before_l.AddString(dis—landing—str3[i]); m_player.SetUrl("res\\REC022.WAV");break;} 從以上代碼可以具體看出全局變量details是如何控制列表框的顯示及播放器播放的音頻 路徑的。
權(quán)利要求
1、帶語(yǔ)音提示的電子飛行檢查單系統(tǒng),其特征為通過(guò)該系統(tǒng)了解機(jī)務(wù)對(duì)飛機(jī)檢查的結(jié)果,代替紙質(zhì)飛行檢查單進(jìn)行各項(xiàng)檢查,可通過(guò)聽(tīng)語(yǔ)音提示檢查各項(xiàng)目。
2、 飛行檢査單系統(tǒng)的語(yǔ)音提示特征包括用同一個(gè)播放器播放不同音頻在創(chuàng)建的對(duì)話框中加上ActiveX控件Windows Media Player,為播放器建立成員變量;在要用到該播放器的 地方添加函數(shù)SetUrl("路徑名"),路徑名使用了相對(duì)路徑,以保證在各個(gè)電腦上都可用;使用 全局變量,控制列表框,MediaPlayer控件。
全文摘要
本發(fā)明涉及帶語(yǔ)音提示的電子飛行檢查單系統(tǒng)。飛行員通過(guò)飛行管理計(jì)算機(jī)(FMC)運(yùn)行本程序,通過(guò)該系統(tǒng)了解機(jī)務(wù)對(duì)飛機(jī)檢查的結(jié)果,代替紙質(zhì)飛行檢查單進(jìn)行各項(xiàng)檢查,帶有語(yǔ)音提示,飛行員可通過(guò)聽(tīng)語(yǔ)音而不是閱讀來(lái)查看檢查單,避免了一些飛行員有依賴記憶而忽視飛行檢查單和跳讀檢查單帶來(lái)的事故隱患。本發(fā)明使用方便,點(diǎn)擊飛行菜單中的飛機(jī)機(jī)型,在子菜單中選擇“正常飛行檢查單”,在彈出的對(duì)話框中,先選擇飛行階段單選鈕,右側(cè)“注意”欄內(nèi)將顯示注意事項(xiàng),再在組合框中選擇要查看的詳細(xì)的飛行階段檢查單,彈出“檢查項(xiàng)目”對(duì)話框,點(diǎn)其中“語(yǔ)音提示”右側(cè)的音頻播放器,可通過(guò)聽(tīng)語(yǔ)音提示檢查各項(xiàng)目。
文檔編號(hào)B64D47/00GK101434297SQ20081015548
公開日2009年5月20日 申請(qǐng)日期2008年10月6日 優(yōu)先權(quán)日2008年10月6日
發(fā)明者侃 倪 申請(qǐng)人:侃 倪
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
涟水县| 正定县| 翁牛特旗| 南涧| 通渭县| 凤台县| 蒙山县| 陆良县| 老河口市| 内江市| 台东市| 额济纳旗| 鄱阳县| 光泽县| 石家庄市| 汉阴县| 黎川县| 黔南| 呼和浩特市| 南昌市| 宜章县| 松原市| 益阳市| 瑞金市| 衡东县| 桦川县| 稷山县| 景洪市| 博客| 丰原市| 同德县| 澎湖县| 秀山| 中山市| 五华县| 宁阳县| 河津市| 林周县| 金乡县| 舞阳县| 曲周县|