91精品一区二区三区久久久久久_欧美一级特黄大片色_欧美一区二区人人喊爽_精品一区二区三区av

位置:51電子網 » 技術資料 » 嵌入式系統

基于Lonworks技術的網絡打印服務器設計

發布時間:2008/6/3 0:00:00 訪問次數:548

        

    

    

    本文描述的網絡打印服務器(nps)可以為工業現場的多個智能裝置提供可靠的打印共享服務,極大地節約了系統成本;并且還可以方便地對nps的功能進一步擴充,構成一個分布式控制系統。lonworks網絡技術[1]是由echelon公司開發的一種現場總線網技術,具有通信可靠、抗干擾能力強的優點,使其在航天控制、工業過程控制、樓宇自動化、通信等領域得到了廣泛的應用。其采用的lontalk協議完全支持osi/iso網絡協議參考模型從物理層直至應用層的全部7層服務。toshiba公司的tmpn3150/3120神經元芯片[2]內嵌了lontalk協議,lontalk協議和一個網絡操作系統作為神經元芯片的固件提供給用戶,方便了用戶開發。神經元芯片支持多種通信介質、多信道和多種通信速率。nps硬件設計采用toshiba公司的tmpn3150神經元芯片,應用程序開發和調試工具為echelon公司的nodebuilder[3],其編程語言為neuron c語言l4,5]。nps能夠與多達64個其他智能設備(id—intelligent device)構成總線型網絡,通信介質為雙絞線,通信速率在78kbps時最大通信距離為1 200 m。系統結構如圖1所示。

    

    1 nps硬件設計

    如圖2所示,nps采用1塊tmpn315081af神經元芯片,配置1片64k×8位flash存儲器作為程序存儲器和1片128k×8位ram作為數據存儲器;神經元芯片的cp0~cp4雙向通信接口和78kbps的收發器構成lon-works網絡接口;tmpn315081af神經元芯片i/o引腳的功能可通過程序靈活配置。在此,i/00~i/07引腳接打印機接口的8位數據線,i/08引腳接打印機選通線(strb),i/09接打印機的“busy”信號線,并要在應用程序中用如下neuron c語句配置:

    io_0 output byte printdata;

    io_8 output bit printstb;

    io_9 output bit printbusy;。

    2 nps應用程序設計

    nps與各個智能節點之間為主從方式,通過查詢完成工作。網絡尋址為domain:subnet:node方式。網絡通信采用顯示報文格式。

    2.1 應用程序運行機制

    tmpn315081af神經元芯片固化了lontalk的全部七層協議[2],位于應用層的調度程序(scheduler)負責目標應用程序的啟動、任務調度運行,并且任務運行必須有一個特定的事件來觸發。根據這個調度機制,本文在nps的應用程序中實現了以下事件(events)及其對應任務的功能。

    (1) reset事件

    完成nps的網絡地址設置,建立lonworks網絡的域和地址,并完成打印機初始化工作。

    (2)timer_expires事件

    在程序中定義了3個周期性定時器:

    stimer repeating snetupdtr=12;

    mtimer repeating maddrtr=300;

    mtimer repeating mpolltr=1000;。

    

    秒級定時器snetupdtr啟動網絡更新,毫秒級定時器maddrtr事件對應的任務通過廣播報文查詢網絡上的節點地址,并更新程序中的所有節點列表。節點結構定義如下:

    typedef struct

    { unsigned int id_num;//唯一id

    char id_descrip[32];//描述網絡地址,定義在neu-ron c的addrdefs.h文件中msg_out_addr id_dest_addr;

    }id_info;

    毫秒級定時器mpolltr事件激發查詢任務,詢問網絡上的節點是否有打印信息。

    (3)msg_arrives事件

    當收到報文時,此事件為真,其對應的任務接收報文,根據報文類型字段,可以區分是命令報文還是欲打印數據報文。

    (4)io_in()事件

    在程序中對應when(io_in(print_busy)==0){…},就是當打印機一旦空閑,就啟動打印任務,把程序中打印緩沖區的數據輸出到打印機。整個nps應用程序的運行機制如圖3所示,每個任務在執行時都調用相應的函數來完成預定功能,函數代碼不在此詳述。

    2.2 應用程序通信協議

    之所以單獨提出這個問題,是因為通訊協議對網絡應用程序至關重要。本文中,nps和其他智能節點間的應用層通信協議為兩級協議:第一層,顯式報文嚴格按照neu-ron c定義的格式、填寫報文的個字段;第二層,對顯式報文中的數據段,應該定義自己的用戶數據規約。<

        

    

    

    本文描述的網絡打印服務器(nps)可以為工業現場的多個智能裝置提供可靠的打印共享服務,極大地節約了系統成本;并且還可以方便地對nps的功能進一步擴充,構成一個分布式控制系統。lonworks網絡技術[1]是由echelon公司開發的一種現場總線網技術,具有通信可靠、抗干擾能力強的優點,使其在航天控制、工業過程控制、樓宇自動化、通信等領域得到了廣泛的應用。其采用的lontalk協議完全支持osi/iso網絡協議參考模型從物理層直至應用層的全部7層服務。toshiba公司的tmpn3150/3120神經元芯片[2]內嵌了lontalk協議,lontalk協議和一個網絡操作系統作為神經元芯片的固件提供給用戶,方便了用戶開發。神經元芯片支持多種通信介質、多信道和多種通信速率。nps硬件設計采用toshiba公司的tmpn3150神經元芯片,應用程序開發和調試工具為echelon公司的nodebuilder[3],其編程語言為neuron c語言l4,5]。nps能夠與多達64個其他智能設備(id—intelligent device)構成總線型網絡,通信介質為雙絞線,通信速率在78kbps時最大通信距離為1 200 m。系統結構如圖1所示。

    

    1 nps硬件設計

    如圖2所示,nps采用1塊tmpn315081af神經元芯片,配置1片64k×8位flash存儲器作為程序存儲器和1片128k×8位ram作為數據存儲器;神經元芯片的cp0~cp4雙向通信接口和78kbps的收發器構成lon-works網絡接口;tmpn315081af神經元芯片i/o引腳的功能可通過程序靈活配置。在此,i/00~i/07引腳接打印機接口的8位數據線,i/08引腳接打印機選通線(strb),i/09接打印機的“busy”信號線,并要在應用程序中用如下neuron c語句配置:

    io_0 output byte printdata;

    io_8 output bit printstb;

    io_9 output bit printbusy;。

    2 nps應用程序設計

    nps與各個智能節點之間為主從方式,通過查詢完成工作。網絡尋址為domain:subnet:node方式。網絡通信采用顯示報文格式。

    2.1 應用程序運行機制

    tmpn315081af神經元芯片固化了lontalk的全部七層協議[2],位于應用層的調度程序(scheduler)負責目標應用程序的啟動、任務調度運行,并且任務運行必須有一個特定的事件來觸發。根據這個調度機制,本文在nps的應用程序中實現了以下事件(events)及其對應任務的功能。

    (1) reset事件

    完成nps的網絡地址設置,建立lonworks網絡的域和地址,并完成打印機初始化工作。

    (2)timer_expires事件

    在程序中定義了3個周期性定時器:

    stimer repeating snetupdtr=12;

    mtimer repeating maddrtr=300;

    mtimer repeating mpolltr=1000;。

    

    秒級定時器snetupdtr啟動網絡更新,毫秒級定時器maddrtr事件對應的任務通過廣播報文查詢網絡上的節點地址,并更新程序中的所有節點列表。節點結構定義如下:

    typedef struct

    { unsigned int id_num;//唯一id

    char id_descrip[32];//描述網絡地址,定義在neu-ron c的addrdefs.h文件中msg_out_addr id_dest_addr;

    }id_info;

    毫秒級定時器mpolltr事件激發查詢任務,詢問網絡上的節點是否有打印信息。

    (3)msg_arrives事件

    當收到報文時,此事件為真,其對應的任務接收報文,根據報文類型字段,可以區分是命令報文還是欲打印數據報文。

    (4)io_in()事件

    在程序中對應when(io_in(print_busy)==0){…},就是當打印機一旦空閑,就啟動打印任務,把程序中打印緩沖區的數據輸出到打印機。整個nps應用程序的運行機制如圖3所示,每個任務在執行時都調用相應的函數來完成預定功能,函數代碼不在此詳述。

    2.2 應用程序通信協議

    之所以單獨提出這個問題,是因為通訊協議對網絡應用程序至關重要。本文中,nps和其他智能節點間的應用層通信協議為兩級協議:第一層,顯式報文嚴格按照neu-ron c定義的格式、填寫報文的個字段;第二層,對顯式報文中的數據段,應該定義自己的用戶數據規約。<

相關IC型號

熱門點擊

 

推薦技術資料

DFRobot—玩的就是
    如果說新車間的特點是“靈動”,FQPF12N60C那么... [詳細]
版權所有:51dzw.COM
深圳服務熱線:13692101218  13751165337
粵ICP備09112631號-6(miitbeian.gov.cn)
公網安備44030402000607
深圳市碧威特網絡技術有限公司
付款方式


 復制成功!
修武县| 宿迁市| 梁河县| 五指山市| 布拖县| 丹棱县| 玉林市| 昭通市| 钦州市| 邹平县| 永安市| 长春市| 肃宁县| 庄浪县| 湘潭县| 准格尔旗| 聂荣县| 新巴尔虎左旗| 垦利县| 海晏县| 嵊州市| 岳池县| 阿荣旗| 双牌县| 炉霍县| 秦安县| 富裕县| 永修县| 比如县| 赤水市| 布拖县| 仲巴县| 洱源县| 公安县| 苍南县| 北安市| 墨玉县| 远安县| 安远县| 哈密市| 应城市|