freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

現(xiàn)場(chǎng)總線控制系統(tǒng)功能塊組態(tài)軟件設(shè)計(jì)本科畢業(yè)論文-資料下載頁(yè)

2025-08-17 09:55本頁(yè)面

【導(dǎo)讀】指導(dǎo)下進(jìn)行的研究工作及取得的成果。盡我所知,除文中特別加以標(biāo)注和。包含我為獲得及其它教育機(jī)構(gòu)的學(xué)位或?qū)W歷而使用過(guò)的材料。說(shuō)明并表示了謝意。以贏利為目的前提下,學(xué)校可以公布論文的部分或全部?jī)?nèi)容。其他個(gè)人或集體已經(jīng)發(fā)表或撰寫(xiě)的成果作品。對(duì)本文的研究做出重要貢獻(xiàn)。的個(gè)人和集體,均已在文中以明確方式標(biāo)明。本人完全意識(shí)到本聲明的法。律后果由本人承擔(dān)。涉密論文按學(xué)校規(guī)定處理。目前國(guó)際上已有多個(gè)自動(dòng)化設(shè)備生產(chǎn)商推出了以這個(gè)標(biāo)準(zhǔn)為基礎(chǔ)的控制系。研究基于IEC61131標(biāo)準(zhǔn)的控制系統(tǒng)意義重大。編程語(yǔ)言,基于MFC程序框架開(kāi)發(fā)完成的。該軟件可對(duì)現(xiàn)場(chǎng)網(wǎng)絡(luò)上的所有設(shè)備和資源進(jìn)。行配置和規(guī)劃,使現(xiàn)場(chǎng)網(wǎng)絡(luò)中的設(shè)備成為一個(gè)有機(jī)整體,協(xié)同工作完成控制功能。場(chǎng)設(shè)備監(jiān)控模塊、文件管理模塊、通信服務(wù)模塊及信息報(bào)告模塊。達(dá)形式的互轉(zhuǎn),用戶可以方便的下載上載功能塊程序。輯,編譯圖形化語(yǔ)言的一種方法。關(guān)鍵詞:現(xiàn)場(chǎng)總線;IEC61131-3標(biāo)準(zhǔn);功能塊組態(tài);可編程控制器;

  

【正文】 譯錯(cuò)誤等。 系統(tǒng)日志信息:記錄軟件的操作信息,用戶的操作信息。 設(shè)備日志信息:提示設(shè)備的上線下線,并且提示設(shè)備 IP沖突。 圖 28 信息報(bào)告模塊 本章小結(jié) 本章簡(jiǎn)單介紹了 PLC_Config 的 5 大模塊 ,在下一章詳細(xì)介紹功能塊程序的編輯模塊和編譯模塊。 ,PLC_Config 是基于功能塊的分布式控制系統(tǒng)的可視化組態(tài)程序。它通過(guò)創(chuàng)建鏈接對(duì)象,建立現(xiàn)場(chǎng)設(shè)備中各個(gè)功能塊之間連接關(guān)系,構(gòu)建成一個(gè)個(gè)控制回路,將組態(tài)信息下載現(xiàn)場(chǎng)設(shè)備中,完成對(duì)控制網(wǎng)絡(luò)的組態(tài)工作。整個(gè)組態(tài)過(guò)程以一種類似于搭建積木的方式,通過(guò)鼠標(biāo)拖拽、點(diǎn)擊完成,而不需要復(fù)雜的套接字編程,使得建立功能強(qiáng)大的應(yīng)用變得非常容易,大大降低了對(duì)工程師技術(shù)水平的要求,使用和操作起來(lái)更加簡(jiǎn)單、方便,縮短了整個(gè)工程的實(shí)施周期,降低了生產(chǎn)成本。 現(xiàn)場(chǎng)總線控制系統(tǒng)功能塊組態(tài)軟件設(shè)計(jì) –20– 3 PLC_Config 組態(tài)軟件可視化功能塊組態(tài)以及編譯 PLC_Config 可視化功能塊編輯程序的設(shè)計(jì) 文檔 /視圖( Document/View)結(jié)構(gòu) PLC_Config 是基于 MFC 框架設(shè)計(jì)開(kāi)發(fā)的, MFC 應(yīng)用程序的核心就是文檔 —— 視圖結(jié)構(gòu),利用文檔 — 視圖結(jié)構(gòu),可以把數(shù)據(jù)與數(shù)據(jù)的用戶視圖分開(kāi),一個(gè)明顯的好處是同一組數(shù)據(jù)可有有多個(gè)視圖。在 PLC_Config 中,程序的核心功能之一就是編輯功能塊程序,功能塊程序是一種圖形化的語(yǔ)言,用戶的編程過(guò)程是對(duì)圖形的操作,所以功能塊的繪制和操作都是由視圖部分來(lái)完成,在操作的同時(shí), 要保留操作的記錄,而且在保存功能塊程序時(shí)要將當(dāng)時(shí)的文件永久的保存在磁盤(pán)中,這些工作有文檔類來(lái)完成。文檔的保存格式不是唯一的,它可以是應(yīng)用程序序列化形成的特定格式文件,也可以是 XML 描述文件等。 [9][10] 在設(shè)計(jì)功能塊物件時(shí),要從三方面來(lái)考慮,一個(gè)是視圖角度,包括了物件的繪制,對(duì)物件操作時(shí)的重繪,對(duì)物件監(jiān)視時(shí)物件的變化等等,另一個(gè)就是文檔角度,包括了物件內(nèi)部數(shù)據(jù)的維護(hù),物件的保存,物件數(shù)據(jù)的讀取等,還有一點(diǎn)就是文檔與視圖的聯(lián)系,比如視圖的變化要保存到文檔,視圖的初始要讀取文檔等。 可視化功能 塊編輯程序設(shè)計(jì)類關(guān)系圖 通過(guò)對(duì)功能塊編輯程序的需求分析進(jìn)行分析,可以將一個(gè)功能塊的程序物件分解成5 大元素,分別是:功能塊物件,功能塊參數(shù)物件,功能塊網(wǎng)絡(luò)物件,鏈接線物件,和功能塊程序文件物件,這 5個(gè)物件之間的主要關(guān)系是包含關(guān)系,這是由功能塊程序內(nèi)在結(jié)構(gòu)定義的,用面向?qū)ο蟮慕嵌仍O(shè)計(jì),在設(shè)計(jì)時(shí)可以對(duì)每種物件定義一個(gè)類,包含物件的信息和操作方法,根據(jù)功能塊程序物件的結(jié)構(gòu)分析,得到了如下的類關(guān)系圖 31。 現(xiàn)場(chǎng)總線控制系統(tǒng)功能塊組態(tài)軟件設(shè)計(jì) –21– 功能塊的圖形表示 圖 32是一個(gè)功能塊的圖形表示。一個(gè)典型的功能塊從圖形結(jié)構(gòu)上可以分為兩個(gè)部分:功能塊參數(shù)部、功能塊體部。功能塊體部包含功能塊名稱,功能塊參數(shù)部包含功能塊的輸入和輸出參數(shù)單元。 功能塊的邏輯組成 每個(gè)功能塊從邏輯角度可以看做一個(gè)函數(shù),包括了輸入?yún)?shù)和輸出結(jié)果和函數(shù)功能的實(shí)現(xiàn),所以我們可以將一個(gè)功能塊從邏輯上分為三個(gè)部分,輸入?yún)?shù),輸出參數(shù)和函數(shù)執(zhí)行部分,由于功能塊的邏輯執(zhí)行是在 PLC 中實(shí)現(xiàn)的,所以在 PLC_Config 中不用考慮功能塊是怎樣實(shí)現(xiàn)邏 輯的,而輸入?yún)?shù)和輸出參數(shù)作為邏輯執(zhí)行函數(shù)的接口需要在功能塊文檔物件 功能塊網(wǎng)絡(luò)物件集合 功能塊物件集合 功能塊參數(shù)集合 鏈接線物件集合 圖 31 功能塊編輯程序類關(guān)系圖 圖 32 功能塊的圖形 功 能塊輸入?yún)?shù)單元 功能塊輸出 參數(shù)單元 功能塊名稱 功能塊體部 現(xiàn)場(chǎng)總線控制系統(tǒng)功能塊組態(tài)軟件設(shè)計(jì) –22– PLC_Config 中組織起來(lái),產(chǎn)生 PLC 可以識(shí)別的代碼(一組數(shù)據(jù)結(jié)構(gòu)),通過(guò)通訊模塊下載到 PLC 設(shè)備的 Flash Rom 中, PLC 通過(guò)嵌入式的軟件來(lái)分析這組數(shù)據(jù)結(jié)構(gòu)來(lái)實(shí)現(xiàn)邏輯上的運(yùn)算。 在 DCCE 系列 PLC 中的功能塊程序的表現(xiàn)形式 如上所述,功能塊程序通過(guò) PLC_Confug 編譯后,通過(guò)通訊接口下載到下位機(jī)中,由下位機(jī)的嵌入式程序來(lái)執(zhí)行功能塊的功能,在下位機(jī)中的功能塊也需要一定的數(shù)據(jù)結(jié)構(gòu)和組織形式,這樣才可以保證下位機(jī)程序正確的執(zhí)行功能塊 的邏輯。由于在 PLC 中,資源(內(nèi)存, CPU 時(shí)間等)是非常有限的,所以在下位機(jī)中功能塊的表現(xiàn)形式一定要非常的簡(jiǎn)單有效,可以從兩方面來(lái)體現(xiàn): 一是數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)結(jié)構(gòu)的大小是在保證信息充足的情況下越小越好,下載到 PLC中的數(shù)據(jù)只保留下位機(jī)程序需要的數(shù)據(jù),同時(shí)需要一些信息的類型轉(zhuǎn)化,比如將功能塊名字采用一個(gè) unsighed short 型的變量來(lái)標(biāo)示。 二是組織形式,在上位機(jī)中( PLC_Config)功能塊是由圖形表現(xiàn)抽象出組織邏輯的,如圖 33: 圖 33 功能塊程序 通過(guò)功能塊和連接線的圖形,形象明確的表現(xiàn)了邏輯關(guān)系: BOOL_5=(BOOL_0amp。amp。BOOL_1)||(BOOL_2amp。amp。BOOL_3) 但是不可能讓下位機(jī)的程序來(lái)解析這個(gè)圖形,因?yàn)檫@需要更大的數(shù)據(jù)結(jié)構(gòu),還耗費(fèi)大量的 CUP 時(shí)間,所以在下位機(jī)要采用更加直白,簡(jiǎn)單的方式來(lái)組織功能塊的信息,而且還要更加符合 PLC 指令的運(yùn)行順序。 實(shí)現(xiàn)從上位機(jī)功能塊程序的表現(xiàn)形式到下位機(jī)功能塊程序的轉(zhuǎn)化是編譯程序的工作,在設(shè)計(jì)功能塊程序編輯和編譯程序之前需要了解下位機(jī)功能塊的表現(xiàn)形式。 功能塊在下位機(jī)的基本數(shù)據(jù) 結(jié)構(gòu)如下: 現(xiàn)場(chǎng)總線控制系統(tǒng)功能塊組態(tài)軟件設(shè)計(jì) –23– 功能塊號(hào) ,輸入?yún)?shù) 1,輸入?yún)?shù) 2,輸入?yún)?shù) 3.. 輸出參數(shù) 1,輸出參數(shù) 2… 功能塊的執(zhí)行順序是在上位機(jī)編譯時(shí)確定的,通過(guò)通信模塊按照?qǐng)?zhí)行順序下載到下位機(jī)中按順序排放。 這樣下位機(jī)程序可以按順序依次執(zhí)行功能塊的邏輯,每個(gè)功能塊都提供了執(zhí)行邏輯必須的參數(shù),通過(guò)編譯最后轉(zhuǎn)化為 PLC 識(shí)別的機(jī)器碼在 PLC 上執(zhí)行功能塊。 功能塊類的設(shè)計(jì) (1) 成員變量的定義 這里定義一個(gè)類 CFBClass,這個(gè)類的實(shí)例代表了一個(gè)功能塊 物件,功能塊物件要求包含兩方面的信息:一是圖形界面信息,二是編譯時(shí) 需要的 邏輯 數(shù)據(jù)信息,于是從面向?qū)ο蟮慕嵌仍谠O(shè)計(jì) CFBClass 的成員數(shù)據(jù)時(shí),也要包括這兩方面的數(shù)據(jù)結(jié)構(gòu)。如圖 : 圖 34 CFBClass類成員 說(shuō)明:功能塊的所在網(wǎng)絡(luò)是指在界面中的網(wǎng)絡(luò)如圖 34: 圖 35 功能塊網(wǎng)絡(luò) CFBClass 圖形信息成員變量 邏輯 信息成員變量 功能塊所在網(wǎng)絡(luò)的行 int m_nAtRow 功能塊所在網(wǎng)絡(luò)的列 int m_nAtCol 功能塊列寬 int m_nSizeCol 功能塊行寬 int m_nSizeRow 功能塊左上點(diǎn)坐標(biāo) CPoint m_ptLTFB … . 輸入?yún)?shù)的集合 CListCFBParamClassm_FBInParam 輸出參數(shù)的集合 CListCFBParamClassm_FBOutParam 功能塊運(yùn)行順序 int m_RunOrder 功能塊名稱 CString m_strFBName … . 現(xiàn)場(chǎng)總線控制系統(tǒng)功能塊組態(tài)軟件設(shè)計(jì) –24– 網(wǎng)絡(luò)是由 CNetWork 類來(lái)實(shí)現(xiàn)的,將在以后介紹。 CParamList 是功能塊的參數(shù)類,由于一個(gè)功能塊 是由若干參數(shù)組成的,一個(gè)CParamList 實(shí)例就代表了一個(gè)參數(shù),參數(shù)也有自己的屬性信息和繪制信息 (后面介紹 ),在 CFBClass 中,采用了兩個(gè)鏈表 m_FBInParam,m_FBOutParam 分別來(lái)保存輸入?yún)?shù)和輸出參數(shù),保存參數(shù)的順序都是從上到下(順序的規(guī)定是由下位機(jī)的軟件決定的,因?yàn)橄挛粰C(jī)決定了功能塊的邏輯運(yùn)行的代碼,它確定了讀取功能塊參數(shù)的順序)。 功能塊種類很多,功能塊的主鍵就是功能塊名稱,這里采用 CString 類來(lái)保存,如”And” ,” OR” ,等等。在下位機(jī)軟件也要明確功能塊的種類, 采用的是一個(gè) int 型的數(shù)據(jù)。這樣需要設(shè)計(jì)一個(gè) MAP 一一影射功能塊名稱和功能塊號(hào)。 (2)主要成員函數(shù)的定義: 初始化函數(shù): DCCE 系列 PLC 支持多種功能塊,每種功能塊的參數(shù)屬性,所占網(wǎng)絡(luò)大小等等屬性都是不同的,針對(duì)不同的功能塊有不同的初始化方法。 但是大概的程序流程都是相同的,如圖: 圖 36 功能塊初始化 代碼說(shuō)明: InitFB()函數(shù)初始化了功能塊的名稱,大小,輸入數(shù)量和輸出數(shù)量 InitParam 函數(shù)中聲明了一個(gè) CFBParamClass 類型的變量,并且根據(jù)參數(shù)初始化了CFBParamClass 的實(shí)例的成員變量,例如:參數(shù)類型(位變量,字變量等),參數(shù)左上點(diǎn)的坐標(biāo),參數(shù)名稱等。最后根據(jù)參數(shù)的形式(輸入?yún)?shù)或者輸出參數(shù))添加到 CFBClass的成員變量 m_FBInParam ,m_FBOutParam 兩個(gè)鏈表中去。 (pFBParamClass)。 (pFBParamClass)。 繪制函數(shù): DrawFunBlock 初始化功能塊體 InitFB 依次初始化功能塊參數(shù) InitParam 現(xiàn)場(chǎng)總線控制系統(tǒng)功能塊組態(tài)軟件設(shè)計(jì) –25– 繪制函數(shù)采用 MFC 繪圖函數(shù),函數(shù)的接口是一個(gè)設(shè)備環(huán)境 CDC 類的指針。 流程如 程序 圖 : 圖 37 功能塊的繪制流程 功能塊在網(wǎng)格內(nèi)是可以拖動(dòng)的,這就需要一個(gè)鼠標(biāo)定位的程序,來(lái)判斷當(dāng)前的鼠標(biāo)是否在功能塊的內(nèi)部。 程序的實(shí)現(xiàn)流程:首先通過(guò)功能塊所在的網(wǎng)絡(luò),在網(wǎng)絡(luò)中所在的行和列計(jì)算出功能塊在整個(gè)視圖中的左上點(diǎn)坐標(biāo),然后創(chuàng)建一個(gè)矩形,坐標(biāo)是相對(duì)于視圖的,使用 LPtoDP(),函數(shù)將矩形和當(dāng)前的 鼠標(biāo)邏輯坐標(biāo)轉(zhuǎn)化為設(shè)備坐標(biāo)。最后用PtInRect 函數(shù)判斷鼠標(biāo)是否在矩形中。 其中 LPtoDP()函數(shù)是 CDC 中的成員函數(shù),是將邏輯坐標(biāo)轉(zhuǎn)換為設(shè)備坐標(biāo),這里涉及到 MFC 繪圖的映射模式,在設(shè)備坐標(biāo)中進(jìn)行所有的鍵擊操作測(cè)試,在設(shè)備坐標(biāo)中定義區(qū)域,像 : CRect::ptInRect 這樣的函數(shù),只有在使用設(shè)備坐標(biāo)時(shí),才能保證結(jié)果的正確性。 [9] 功能塊的參數(shù)的輸入的實(shí)現(xiàn)方法是用戶可雙擊參數(shù)區(qū)域從而直接配置功能塊參數(shù),也可以在參數(shù)區(qū)域上點(diǎn)右鍵,選擇一個(gè)現(xiàn)存的符號(hào)表參數(shù),將其配置到功能塊參數(shù)中。用戶雙擊參數(shù)區(qū)域時(shí),系 統(tǒng)會(huì)動(dòng)態(tài)生成一個(gè) CEdit 控件,然后根據(jù)參數(shù)所在的位置來(lái)初始化 CEdit 控件的位置,并調(diào)用 CEdit 控件的 Create 函數(shù),并將輸入焦點(diǎn)設(shè)置于 Edit控件上。實(shí)現(xiàn)了對(duì)參數(shù)的編輯,其實(shí)現(xiàn) 的方法是:創(chuàng)建一個(gè) CEdit 控件,根據(jù)功能塊參數(shù) 位置得到一個(gè)矩形,矩形的坐標(biāo)就是輸入?yún)?shù)變量的位置,然后將 CEdit 控件 Create繪制功能塊身體 繪制輸入?yún)?shù)鏈表中的每個(gè)參數(shù) 繪 制輸出參數(shù)鏈表中的每個(gè)參數(shù) 調(diào)用 調(diào)用 功能塊參數(shù)類中的繪圖函數(shù)DrawFBParam 現(xiàn)場(chǎng)總線控制系統(tǒng)功能塊組態(tài)軟件設(shè)計(jì) –26– 在這個(gè)矩形的位置上,當(dāng)用戶輸入變量名后, CEdit 控件把所得的字符傳遞給成員變量m_strParamVarName,同時(shí)在界面功能塊參數(shù)名稱的位置上輸出字符串。 此外還有用來(lái)設(shè)置私有成員變量的 Set , Get 函數(shù), 刷新功能塊函數(shù)等,這里不一一列出。 功能塊參數(shù)類的設(shè)計(jì) (1)成員變量 在功能塊類的設(shè)計(jì)中用到了功能塊參數(shù)類,設(shè)計(jì)一個(gè)獨(dú)立的類 CFBParamClass,如同功能塊類的設(shè)計(jì)思路,功能塊參數(shù)類的成員變量同樣從圖形 信息 數(shù)據(jù)和 邏輯 信息 數(shù)據(jù)兩個(gè)角度去定義。 圖 38 CFBParamClass類成員變量 說(shuō)明: m_nParamType 是此功能塊參數(shù)要求的類型,包括 3種,能流 或位變量(不允許懸空),變量或立即數(shù),能流或位變量(允許懸空) [11] m_nParamVarType 是用戶輸入的參數(shù)類型,例如, 是位變量類型, VW0是字變量類型等。 CFBParamClass 圖形信息成員變量 邏輯信息成員變量 相對(duì)功能塊位置的行偏移 int m_OffsetRow 相對(duì)功能塊位置的列偏移 int m_OffsetCol 參數(shù)引腳左上點(diǎn)坐標(biāo) CPoint m_ptLTLeg 參數(shù)引腳大小 CSize m_szLeg … . 參數(shù)變量 CString m_strParamVarName 位變量參數(shù)是否取反 bool m_bInvput 輸入?yún)?shù)還是 輸出參數(shù) int m_nParamOutI
點(diǎn)擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1