<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設計應用 > 基于LonWorks水廠(chǎng)前端智能節點(diǎn)的配置與實(shí)現

基于LonWorks水廠(chǎng)前端智能節點(diǎn)的配置與實(shí)現

作者: 時(shí)間:2012-10-27 來(lái)源:網(wǎng)絡(luò ) 收藏

4 編程
在整個(gè)系統中,除了LonWorks提供的系統開(kāi)發(fā)程序之外,大量的應用程序須結合現場(chǎng)需求來(lái)編寫(xiě)。由于C語(yǔ)言提供位操作指令,因此是一種非常適合于編寫(xiě)與硬件相關(guān)的控制程序的語(yǔ)言。為了便于用戶(hù)使用,Echelon公司在推出Neuron Chip和系統開(kāi)發(fā)程序之外,還提供了Neuron C編程語(yǔ)言,一種基于A(yíng)NSI C而為神經(jīng)元芯片開(kāi)發(fā)設計的編程語(yǔ)言。對ANSI C進(jìn)行了擴展,允許程序員以自然的方式描述事件驅動(dòng)任務(wù),可控制任務(wù)執行的優(yōu)先級,可將I/O對象直接映射到處理器的I/O端口,通過(guò)定義網(wǎng)絡(luò )變量把受控對象聯(lián)系起來(lái),還可為用戶(hù)提供一種實(shí)現節點(diǎn)之間數據共享的簡(jiǎn)單方法,支持顯式報文傳送,還可直接對LonTalk協(xié)議的底層設備進(jìn)行訪(fǎng)問(wèn),便于設計LonWorks系統應用程序。
由于LonWorks系統程序中包含NodeBuilder,因此對編程可在NodeBuilder環(huán)境下進(jìn)行。步驟包括:1)定義IO對象;2)定義定時(shí)器對象;3)定義網(wǎng)絡(luò )變量;4)定義顯式報文;5)定義任務(wù);6)編寫(xiě)自定義函數等。
其中網(wǎng)絡(luò )變量和顯式報文是節點(diǎn)之間交換信息的載體,是在LonWorks網(wǎng)絡(luò )上傳送的數據包。節點(diǎn)之間的聯(lián)系主要是通過(guò)網(wǎng)絡(luò )變量來(lái)實(shí)現的,因此使用網(wǎng)絡(luò )變量可實(shí)現LonMark的互操作性,方便編程和安裝。而Neuron C編程的主要對象就是網(wǎng)絡(luò )變量NV(Network Variables),又稱(chēng)隱式消息,是節點(diǎn)上的一個(gè)對象。其類(lèi)型可以是整型、布爾型或字符串型數據,用戶(hù)可在應用程序中自由定義。顯式報文也稱(chēng)為顯式消息,其中數據長(cháng)度最大228個(gè)字節,而網(wǎng)絡(luò )變量最多31個(gè)字節。而任務(wù),是對事件的反應,即當某事件發(fā)生時(shí)應用程序執行何種操作。另外,還可以在Neuron C程序中由用戶(hù)編寫(xiě)自定義函數,以完成一些常用功能。和標準C不同,Neuron C必須要寫(xiě)出函數原形,也可以將一些常用的函數放到頭文件中,以供程序調用。
由于在進(jìn)行模擬量數據采集和控制的時(shí)候,通過(guò)串行口和神經(jīng)元芯片進(jìn)行通信,因此選擇Neurowire IO對象,即同步全雙工串行通信模式IO對象。對11個(gè)IO引腳的定義為:IO_0到IO_7是片選信號,IO_8是時(shí)鐘,IO_9是數據出,IO_10是數據入。就是說(shuō),該I/O對象使用全同步串行數據格式傳送數據,數據被移入的同時(shí)也進(jìn)行數據移出。NeurowireI/O對象還可被配置為主/從模式。主模式,時(shí)鐘信號輸出;從模式,時(shí)鐘信號是輸入。在主模式下,引腳IO_0~IO_7中的一個(gè)或多個(gè)可被用作片選信號,在從模式下,引腳IO_0~IO_7中的一個(gè)可被設計成超時(shí)引腳。
當使用具有不同比特率的多路復用串行對象或Neurowire I/O對象時(shí),必須使用編譯器指令“#pragmaenable_multiple_baud”,且在所用I/O函數(如io_in()和io_out())之前。其中,對Neurowire輸入/輸出對象進(jìn)行顯式配制的Neuron C語(yǔ)句如下:
IO_8 neurowire master |slave[select(pin-nbr)][timeout(pin-nbr)]
[kbaud(const-expr)][clockedge(+|-)]io-object-name;
作用是:IO_8:指定Neurowire輸入/輸出對象使用引腳IO_8~IO_10,其中IO_8時(shí)鐘信號,IO_9串行數據輸出,IO_10串行數據輸入;
Master:指定Neuron芯片在引腳IO_8上提供時(shí)鐘,輸出;
Slave:指定Neuron芯片檢測引腳IO_8上的時(shí)鐘,輸入;
Select(pin-nbr):為Neurowire master指定片選引腳,為IO_0~IO_7之一;
Timeout(pin-nbr):為Neumwire slave指定一個(gè)可選擇的超時(shí)信號引腳,其范圍是IO_0~IO_7;使用超時(shí)信號引腳,當neuron芯片等待時(shí)鐘的上升沿或下降沿時(shí),將檢查該引腳的邏輯電平,如果檢測到邏輯電平為“1”,停止傳輸;
Kbaud(eonst-expr):為Neurowire master指定比特率,const-expr可為1 kb/s、10 kb/s或20 kb/s;對于10 MHz的Neuron芯片輸入時(shí)鐘,缺省值為20 kb/s;
Clockedge(+|-):指定數據觸發(fā)時(shí)鐘信號極性,clockedge(+)為上升沿,clockedge(-)為下降沿;
io-object-name:由用戶(hù)為該I/O對象指定的名字。
將系統中所用設備和IO對象進(jìn)行定義,并對所用節點(diǎn)進(jìn)行編程后即可連網(wǎng)使用。例如利用采集開(kāi)關(guān)量信號來(lái)控制指示燈,來(lái)實(shí)現對數字量的輸入和輸出控制。其中數字量輸入程序如下:
d.jpg

5 結論
文中分析了LonWorks智能節點(diǎn)的組成原理、編程和使用,又介紹了用其構成網(wǎng)絡(luò )的底層控制網(wǎng)所用設備和組網(wǎng)方法。這對于任何設計自動(dòng)化生產(chǎn)線(xiàn)的工程項目,都有一定的參考價(jià)值。

本文引用地址:http://dyxdggzs.com/article/159752.htm

超聲波液位計相關(guān)文章:超聲波液位計原理


液位計相關(guān)文章:磁翻板液位計原理



上一頁(yè) 1 2 3 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>