水廠全分布式管控一體化網絡前端測控系統的設計與實現
2 現場數據采集與控制程序設計
本系統采用HLC-1回路控制器,該智能節點主要完成模擬量、數字量的輸入輸出控制。筆者使用NodeBuilder開發設計了智能節點前端控制程序。數據采集設備的輸出信號通過變送器連接到智能節點的模擬輸入端;執行機構連接到智能節點的模擬輸出端。通過NodeBuilder編寫控制算法程序,經組態監控平臺下發控制命令,控制前端執行機構在要求的范圍內工作。
這里選用智能節點的Neurowire輸入/輸出作為I/O對象,實現與外部器件的同步通信。下面儀說明一個節點變量的定義,并以模擬量輸出、模擬量輸入和數字量輸出為例,說明程序設計。
1)Neurowire輸入/輸出對象語法結構定義:
IO_8 neuronwire masterlslave[select(pin—nbr)][timeout(pin—nbr)]
[kbaud(const—expr)Ⅱclockedge(+|-)]io—object—name
IO_8:Neurowire輸入/輸出對象使用引腳IO_8~IO_10,IO_8是時鐘引腳,IO_9是串行數據輸出引腳,IO_10是串行數據輸入引腳;
Master:指定Neuron 芯片在引腳IO_8上提供時鐘,被指定為輸出;
Slave:指定Neuron芯片檢測引腳IO_8上的時鐘,被設置為輸入;
Select(pin—nbr):為Neurowire master指定片選引腳,為IO_0~IO_7引腳之一;
Timeout(pin-nbr):為Neurowire slave指定一個可選擇的超時信號引腳,其范圍是IO_0~IO_7。當使用超時信號引腳時,當neuron芯片等待時鐘的上升沿或下降沿時,將檢查該引腳的邏輯電平。如果檢測到邏輯電平為“1”,則傳輸停止;
Kbaud(const-expr):為Neurowire master指定比特率,const-expr可以為1 kb/s、10 kb/s或20 kb/s;對于10 MHz的Neuron芯片輸入時鐘,缺省值為20 kb/s;
Clockedge(+|-):指定觸發時鐘信號極性,clockedge(+)為上升沿,clockedge(-)為下降沿;
io-object-name:由用戶為該I/O對象指定的名字。
2)模擬量輸出程序——電流表控制程序

液位計相關文章:磁翻板液位計原理
評論