<sup id="m6mg2"><code id="m6mg2"></code></sup>
<object id="m6mg2"><wbr id="m6mg2"></wbr></object>
<object id="m6mg2"><option id="m6mg2"></option></object>
<sup id="m6mg2"></sup>
<object id="m6mg2"><option id="m6mg2"></option></object>
<object id="m6mg2"></object>
<sup id="m6mg2"></sup><samp id="m6mg2"><object id="m6mg2"></object></samp>
<menu id="m6mg2"></menu>
<acronym id="m6mg2"><noscript id="m6mg2"></noscript></acronym>
返回首頁(yè) | 收藏本站 | 聯(lián)系我們
基于 FF 協(xié)議的壓力變送器通信卡軟件的開(kāi)發(fā)
現在位置: 壓力變送器 > 新聞中心 > 經(jīng)驗與文獻 > 正文

基于 FF 協(xié)議的壓力變送器通信卡軟件的開(kāi)發(fā)

時(shí)間:2017-09-21

  摘 要:根據#新開(kāi)發(fā)的#新一代 PDS8 壓力變送器對總線(xiàn)的要求,開(kāi)發(fā)基于 FF 協(xié)議的通信卡,該通信卡支持雙 CPU 通訊,提供 6mA/3.3V ,并支持多種 FF 標準功能塊。 本文介紹 FF 通信卡開(kāi)發(fā)流程和開(kāi)發(fā)工具,重點(diǎn)闡述用戶(hù)應用程序的開(kāi)發(fā)。開(kāi)發(fā)完成后使用 NI-FBUS 在線(xiàn)功能調試,結果表明基于 FF 協(xié)議的 PDS8 壓力變送器實(shí)現了雙 CPU 通訊功能。Ic4壓力變送器_差壓變送器_液位變送器_溫度變送器

 
 引言
        基金會(huì )現場(chǎng)總線(xiàn)( FF )是一種全數字化、串行的、雙向的、多站點(diǎn)式的通訊系統。它以 ISO/OSI 模型為基礎,取 OSI 的物理層、數據鏈路層、應用層為 FF 通信模型的相應層次,并在應用層上增加了用戶(hù)層。 用戶(hù)層主要針對自動(dòng)化測控應用的需求,定義了用戶(hù)通訊需求, 并采用設備描述語(yǔ)言規定了通用的功能塊集。FF 總線(xiàn)包括 H1-FF 和 HSE-FF 總線(xiàn), 前者為低速總線(xiàn),波特率為 31.25kbps ,支持過(guò)程控制應用;后者為高速總線(xiàn),可達 100Mbps ,用于高性能控制、子系統集成、高密度數據生成,并支持數據服務(wù)器。本文針對#新一代PDS8 壓力變送器開(kāi)發(fā)相應的 H1-FF 通信卡軟件部分。
 
1 軟件設計
        利用中科博微提供的協(xié)議; AT91SAM7 系列 MPU 進(jìn)行開(kāi)發(fā), 采用 NUCLEUS plus 操作系統平臺。 在已經(jīng)開(kāi)發(fā)好了的底層接口和協(xié)議棧的物理層、鏈路層、網(wǎng)絡(luò )層上,開(kāi)發(fā)其應用層。 硬件平臺同期正在開(kāi)發(fā)中,預計與軟件開(kāi)發(fā)同時(shí)完成。 儀表卡采用測控公司#新一代 PDS8 壓力變送器, 因此只需完成儀表與通信卡之間的雙 CPU 通訊、通訊卡與 FF 通訊的開(kāi)發(fā)即可。 雙卡之間采用串行通押么完成信息傳遞,由通訊卡完成與 FF 總線(xiàn)的通訊,從而使 PDS8 變送器具備總線(xiàn)現場(chǎng)儀表的基本功能。
 
1.1 開(kāi)發(fā)流程
        通訊卡軟件開(kāi)發(fā)分為固件開(kāi)發(fā)和設備描述開(kāi)發(fā)。
 
        固件開(kāi)發(fā)主要創(chuàng )建通訊卡各功能塊,并定義轉換塊結構體、視圖對象、塊參數描述表,編寫(xiě)讀寫(xiě)函數、報警函數、模式轉換函數等,然后采用某種協(xié)議與儀表卡進(jìn)行數據通訊。
 
        設備描述開(kāi)發(fā)是對設備 DD 文件和 CFF 文件的開(kāi)發(fā), DD 文件經(jīng)過(guò)編譯后生成 .sym 和 .ffo 文件, 然后在固件開(kāi)發(fā)中添加位于 .sym 中的參數 ID 號, #后利用在線(xiàn)調試工具 NI-FBUS 對加載 CFF 文件和 sym 和 .ffo 文件進(jìn)行調試。
 
        固件開(kāi)發(fā)完成后直接燒寫(xiě)在通信卡上,連接儀表卡即可使用,而設備描述開(kāi)發(fā)多用于可視化在線(xiàn)調試時(shí)加載使用,它們之間的關(guān)系如圖 1 所示。
 固件開(kāi)發(fā)與設備描述開(kāi)發(fā)之間的關(guān)系圖
        各個(gè)階段使用的開(kāi)發(fā)工具和編譯工具不同。 固件開(kāi)發(fā)使用 Source Insight 開(kāi)發(fā), Green Hills 編譯, JLINK下載; CFF 文件使用文本開(kāi)發(fā)、 DD 文件采用 DD Edit開(kāi)發(fā), DD_IDE 集成環(huán)境編譯,通過(guò) NI-FBUS 加載。 按圖 1 進(jìn)行調試環(huán)境配置并調試。
 
1.2 開(kāi)發(fā)重點(diǎn)
        用戶(hù)應用程序基于協(xié)議棧實(shí)現雙 CPU 通訊和儀表與通訊卡之間的數據傳遞。 根據函數功能的不同劃分為兩部分:用戶(hù)執行函數、轉換塊執行函數。
 
1.2.1 用戶(hù)執行函數
        用戶(hù)執行程序主要任務(wù)是根據指令進(jìn)行雙 CPU通訊,其具體流程(如圖 2 所示):
        ( 1 )與儀表卡進(jìn)行初始化握手。
        ( 2 )當握手成功后,分段讀取儀表參數(因為儀表參數地址不連續)。
        ( 3 )當地衣次讀取儀表參數完成后,進(jìn)入等待狀態(tài),同時(shí)檢測相應參數修改標志位是否改變,若改變則對參數下達修改命令進(jìn)行修改,#后讀取循環(huán)變量參數,并刷新儀表參數。
 用戶(hù)執行流程圖
1.2.2 轉換塊執行函數
        轉換塊執行函數任務(wù)是對轉換塊的模式進(jìn)行計算、報警條件監測、觸發(fā)報警后發(fā)送報警以及將儀表卡參數傳遞給轉換塊等。轉換塊執行流程(如圖 3 所示):
        ( 1 )報警監測以及發(fā)送 OS 報警。 判斷資源塊狀態(tài)和目標模式,當觸發(fā)報警后,調用 TB_ENTER_OS 函數進(jìn)入 OS 模式,設置 BLOCK_ERR 參數為 OS ,清除報警信息并發(fā)送功能塊 OS 報警。 此時(shí)測量主值和次值狀況為 OS 狀態(tài)。
        ( 2 )報警確認。 當 FBShell 接收到報警接收設備的報警確認后, 調用 FB_Alm_Comfirm 函數確認服務(wù)并設置報警參數。如將報警計數器減 1 ,設置報警參數的狀態(tài)為“激活 - 已經(jīng)發(fā)送”、“清除 - 已經(jīng)發(fā)送”或者“更新 - 已經(jīng)發(fā)送”。
        ( 3 )退出 OS 報警。 當目標模式為 AUTO 模式時(shí),功能塊退出 OS 模式,檢查靜態(tài)版本號,判斷是否需要發(fā)送事件更新報警, 并設置 BLOCK_ERR 參數清除OS 模式,將儀表參數傳遞給轉換塊參數。
 轉換塊執行流程
2 下載與調試
        完成通訊卡開(kāi)發(fā)后,使用 Green Hills Multi 集成開(kāi)環(huán)境進(jìn)行編譯,然后運行 make_round_release_bin.bat腳本文件連接 FBShell 庫和操作系統庫, 生成 bin 文件,將 bin 文件通過(guò) JLink 下載至通訊卡上,#后連接儀表卡后使用在線(xiàn)組態(tài)調試工具 NI-FBUS 進(jìn)行調試。
 
3 結語(yǔ)
        經(jīng)過(guò) NI-FBUS 組態(tài)調試工具調試后,儀表卡與通訊卡之間通訊正常,并且可進(jìn)行參數讀寫(xiě)、參數傳遞、儀表地址修改、儀表校準等操作,這表明整體設計方案具有可行性。 這款 FF 壓力變送器將經(jīng)過(guò)認證進(jìn)入實(shí)際應用中。
版權所有:http://www.meneki-ryoku.net/ 轉載請注明出處

看過(guò)本文的人還看過(guò)的文章

你可能感興趣的文章

相關(guān)產(chǎn)品

<sup id="m6mg2"><code id="m6mg2"></code></sup>
<object id="m6mg2"><wbr id="m6mg2"></wbr></object>
<object id="m6mg2"><option id="m6mg2"></option></object>
<sup id="m6mg2"></sup>
<object id="m6mg2"><option id="m6mg2"></option></object>
<object id="m6mg2"></object>
<sup id="m6mg2"></sup><samp id="m6mg2"><object id="m6mg2"></object></samp>
<menu id="m6mg2"></menu>
<acronym id="m6mg2"><noscript id="m6mg2"></noscript></acronym>
太谷县| 桦川县| 河南省| 无棣县| 邵阳市| 冀州市| 商洛市| 达拉特旗| 平顺县| 时尚| 吉木萨尔县| 阿鲁科尔沁旗| 白山市| 馆陶县| 大名县| 平陆县| 遵义市| 临泽县| 万源市| 长治市| 奇台县| 建宁县| 丰县| 琼结县| 孟村| 翁牛特旗| 广汉市| 开化县| 湖州市| 元氏县| 萍乡市| 额敏县| 渝中区| 武冈市| 靖江市| 大理市| 湖北省| 宁陕县| 三穗县| 东乌| 昌黎县| http://444 http://444 http://444 http://444 http://444 http://444