ADAM模塊在液位檢測中的應用_第1頁
ADAM模塊在液位檢測中的應用_第2頁
ADAM模塊在液位檢測中的應用_第3頁
ADAM模塊在液位檢測中的應用_第4頁
ADAM模塊在液位檢測中的應用_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀

付費下載

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

ADAM模塊在液位檢測中的應用關鍵詞:ADAM4017,ADAM4520,VB軟件,集中液位實時采集,實時數(shù)據(jù)通訊一、概述山東泉林紙業(yè)有限責任公司是一個集制漿、造紙類綜合企業(yè),該企業(yè)銅版紙生產(chǎn)線所用附料液位監(jiān)視系統(tǒng)是自行開發(fā)的集中液位實時采集系統(tǒng),生產(chǎn)人員通過中心控制室的電腦屏幕即可得到料罐液位的實時數(shù)據(jù),從而決定是否配料。采用此系統(tǒng)還可減少為每個料罐配置一個液位顯示儀表而產(chǎn)生的繁瑣布線,只要把液位信號線集中鋪設到中控室與ADAM4017模塊連接即可。集中配料,物料通過管道輸送到各個料罐,一人可配多種料,減少了人力成本。本文主要討論 WINXP 操作系統(tǒng)下利用 VB軟件實現(xiàn)研華公司的 ADAM4520 與ADAM4017的實時數(shù)據(jù)通訊。矚慫潤厲釤瘞睞櫪。二、系統(tǒng)的實現(xiàn)方法數(shù)據(jù)采集框圖 監(jiān)視電腦ADAM4520ADAM4017 ADAM4017 ADAM4017液位信號液位信號 液位信號本系統(tǒng)要采集20種物料的液位,監(jiān)視畫面及電腦與ADAM4520的通訊由VB軟件實現(xiàn),ADAM4017用于接收4~20MA液位信號,ADAM4520用于電腦與ADAM4017之間數(shù)字信號和模擬信號的轉換。VB程序做出監(jiān)控畫面如下:1/12聞創(chuàng)溝燴鐺險愛氌。由于篇幅所限現(xiàn)只列出主程序代碼如下:PrivateSubCommand1_Click()UnloadForm1EndSubPrivateSubCommand2_Click()Form1.WindowState=1EndSubPrivateSubCommand3_Click()Timer1.Enabled=Falsesetup.ShowEndSubPrivateSubCommand4_Click()DimfreeFAsIntegerfreeF=FreeFile()Open"d:\gaodde\modival.dat"ForRandomAsfreeF "可以自行設置路徑"殘騖樓諍錈瀨濟溆。Fori=1To202/12PutfreeF,i,modifyVal(i-1)NextiClose(freeF)EndSubPrivateSuberrCode_Change()IfMVal(errCode)+1>=300ThenerrCode=0EndSubPrivateSubForm_DblClick()Form1.WindowState=1EndSubPrivateSubForm_KeyDown(KeyCodeAsInteger,ShiftAsInteger)釅錒極額閉鎮(zhèn)檜豬。IfShift=7ThenenabledSetup=1ElseIfShift=6ThenenabledSetup=2ElseenabledSetup=0EndIfEndSubPrivateSubForm_KeyUp(KeyCodeAsInteger,ShiftAsInteger)彈貿攝爾霽斃攬磚。enabledSetup=0EndSubPrivateSubForm_Load()DimfreeFAsIntegerMI(0)=1MI(1)=2MI(2)=43/12MII(0)=6MII(1)=5MII(2)=3freeF=FreeFile()Open"d:\gaodde\modival.dat"ForRandomAsfreeF"路徑可自行定義"謀蕎摶篋飆鐸懟類。IfLOF(freeF)=0ThenFori=1To20modifyVal(i-1)=0Text1(i-1).Text=modifyVal(i-1)PutfreeF,i,modifyVal(i-1)NextiElseFori=1To20GetfreeF,i,modifyVal(i-1)Text1(i-1).Text=modifyVal(i-1)NextiEndIfClose(freeF)'Open"com2,9600,8,N,1"ForRandomAsfreeFx=sio_open(PortNum)x=sio_ioctl(PortNum,B9600,BIT_8+STOP_1+P_NONE)廈礴懇蹣駢時盡繼。x=sio_flush(PortNum,2)Fori=0To2Label14(i)=""Label7(i)=""Label16(i)=""4/12Label17(i)=""Nextitongxun_ok=0EndSubPrivateSubLabel11_Click()IfenabledSetup=1ThenmyDelay=myDelay+100Label12=myDelayEndIfEndSubPrivateSubLabel16_Change(IndexAsInteger)IfMVal(Label16(Index))>9999ThenLabel16(Index)=0煢楨廣鰳鯡選塊網(wǎng)。EndSubPrivateSubLabel17_Change(IndexAsInteger)IfMVal(Label17(Index))>9999ThenLabel17(Index)=0鵝婭盡損鵪慘歷蘢。EndSubPrivateSubText1_KeyPress(IndexAsInteger,KeyAsciiAsInteger)籟叢媽羥為贍僨蟶。DimtempValtempVal=Val(Text1(Index).Text)tempVal=Int(tempVal*10)/10IftempVal<-3OrtempVal>3ThenText1(Index).Text=0tempVal=0EndIfmodifyVal(Index)=tempValIfKeyAscii=13ThenText1(Index).Text=tempValEndSub5/12PrivateSubTimer1_Timer()DimiAsInteger,jAsIntegerDimxAsLongDimcheckNumAsLong,rwNumAsLong----------------------------------------OnErrorGoToerrchuFori=1To3x=sio_flush(PortNum,2)ss="#"+Format$(i,"00")checkNum=0Forj=1To3checkNum=checkNum+Asc(Mid$(ss,j,1))Nextjss=ss+Hex$(checkNumAnd&HFF)+Chr$(13)x=sio_write(PortNum,ss,Len(ss))'BeepWhilex<>0x=sio_oqueue(PortNum)rwNum=rwNum+1IfrwNum>900000Thenx=MsgBox("通訊線路故障,請檢查通訊線路,排除故障后請確定,如果確定幾次后錯誤依然存在,請關機后重新啟動.",64)預頌圣鉉儐歲齦訝。ExitForEndIfWendSleep(200)=sio_iqueue(PortNum)IfLL>=60Then6/12=sio_read(PortNum,AA,60)IfLL<0ThenLL=0Label14(i-1)=Left$(AA,LL-1)'讀出字串Label7(i-1)=LL'字串長度checkNum=0Forj=1To57checkNum=checkNum+Asc(Mid$(AA,j,1))NextjIf(Hex$(checkNumAnd&HFF)=Mid$(AA,58,2))And(Asc(Mid$(AA,1,1))=&H3E)Then滲釤嗆儼勻諤鱉調。readNUM(i-1)=0errCode=MVal(errCode)AndMII(i-1)Forj=0To6wgV((i-1)*7+j)=MVal(Mid$(AA,j*7+2,7)) 鐃誅臥瀉噦圣騁貺。wgP((i-1)*7+j)=Int((wgV((i-1)*7+j)-3.85)*100016)/10+modifyVal((i-1)*7+j)擁締鳳襪備訊顎輪。NextjLabel16(i-1)=MVal(Label16(i-1))+1ElsereadNUM(i-1)=readNUM(i-1)+1IfreadNUM(i-1)=10ThenreadNUM(i-1)=0errCode=MVal(errCode)OrMI(i-1)EndIfLabel17(i-1)=MVal(Label17(i-1))+1EndIfElse7/12readNUM(i-1)=readNUM(i-1)+1IfreadNUM(i-1)>=10ThenreadNUM(i-1)=0errCode=MVal(errCode)OrMI(i-1)EndIfLabel17(i-1)=MVal(Label17(i-1))+1EndIfNextitongxun_ok=MVal(tongxun_ok)+1'為組態(tài)判斷DDE驅動程序異常所用贓熱俁閫歲匱閶鄴。ExitSuberrchu:x=MsgBox("系統(tǒng)錯誤,請確定,如果確定幾次后錯誤依然存在,請關機后重新啟動",64)ResumeNextEndSubPrivateSubtongxun_ok_Change()Iftongxun_ok>=9999Thentongxun_ok=0EndSub為實現(xiàn)ADAM4520與電腦通過RS232接口通訊,另做了一個DDE驅動程序,利用了VB串口通訊原理,詳細代碼這里不再列出。(有需要的朋友可聯(lián)系我)程序整理編譯后

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論