《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于PIC單片機和嵌入式TCP/IP技術的海水有機磷農藥數(shù)據(jù)采集系統(tǒng)
基于PIC單片機和嵌入式TCP/IP技術的海水有機磷農藥數(shù)據(jù)采集系統(tǒng)
葛玉榮,田玉周,王旭柱,李 怡
(中國海洋大學 電子工程系,山東 青島266071)
摘要: 介紹海水有機磷農藥現(xiàn)場實時數(shù)據(jù)采集系統(tǒng)的設計。具體討論了由PIC單片機構成的子系統(tǒng)和基于網絡單片機Sx52BD實現(xiàn)的數(shù)據(jù)傳輸模塊,并對LabWindows/CVI編寫的數(shù)據(jù)處理軟件進行了說明。
Abstract:
Key words :

摘   要: 介紹海水有機磷農藥現(xiàn)場實時數(shù)據(jù)采集系統(tǒng)的設計。具體討論了由PIC單片機構成的子系統(tǒng)和基于網絡單片機Sx52BD實現(xiàn)的數(shù)據(jù)傳輸模塊,并對LabWindows/CVI編寫的數(shù)據(jù)處理軟件進行了說明。
關鍵詞: FIFO  實時數(shù)據(jù)采集  TCP/IP協(xié)議

  海洋生態(tài)環(huán)境越來越受到人們的重視。如何快速有效、實時、定量地對海水中有機磷農藥的濃度進行現(xiàn)場監(jiān)測,是海洋生態(tài)環(huán)境現(xiàn)場快速監(jiān)測系統(tǒng)要解決的問題之一。為此,研制了用于海水有機磷農藥現(xiàn)場監(jiān)測的生物傳感器。該傳感器通過含有農藥的海水和不含農藥海水對生物酶的抑制作用的不同,用標準加入法[1][2]檢測海水中有機磷農藥的濃度。為實現(xiàn)對整個測試裝置的自動控制和實時、快速地讀取測量數(shù)據(jù),設計、開發(fā)了基于PIC單片機和嵌入式TCP/IP技術的快速、實時數(shù)據(jù)采集系統(tǒng)。
1  有機磷濃度的測量原理[2]
  對有機磷濃度的測量采用生物傳感器。利用含不同濃度農藥的海水對生物酶抑制作用不同,通過電極把抑制轉換成電信號,不同的濃度得到不同的峰值,通過峰值得到抑制率。抑制率的計算公式為:
  

  其中,f1為在標準海水中測得的峰值,f2為加入農藥之后測得的峰值。
  系統(tǒng)中設置四個測試通道,第一通道是純凈的海水,是參照通道;第二通道是要測試的海水;第三通道為加入已知濃度農藥的海水;第四通道為加入另外一個已知濃度的海水(和第三通道不同)。根據(jù)有機磷農藥濃度的對數(shù)與相應的酶活抑制率(即峰值下降百分率)在一定范圍內呈線性的關系,可以采用加標法原理推算得到海水樣品有機磷農藥的濃度。原理如圖1所示。由圖1得到計算有機磷濃度的公式:
  

其中,c1、c2為三、四通道加入標準農藥的濃度,cx為要測試海水中農藥的濃度,η0、η1、η2為二、三、四通道的抑制率。通過公式(2)可以求出在第二通道待測海水中農藥的濃度。
2  系統(tǒng)硬件原理
  由測試原理可知,需要同時采集四通道的信號,每通道求取二次基線和峰值,整個測試過程需要50分鐘。為確保精度,每隔1ms采集一次四個通道的數(shù)據(jù),要求系統(tǒng)能快速采集并完成數(shù)據(jù)傳輸。為實現(xiàn)快速采集,設計了由精簡指令集單片機PIC1673[3]和快速A/D轉換器組成的單片機數(shù)據(jù)采集控制模塊為實現(xiàn)大容量、快速的數(shù)據(jù)傳輸,系統(tǒng)設計了基于嵌入式TCP/IP技術的網絡傳輸模塊。鑒于PC機在數(shù)據(jù)處理上的優(yōu)勢,由上位機數(shù)據(jù)處理模塊對數(shù)據(jù)進行處理。單片機數(shù)據(jù)采集控制模塊和網絡傳輸模塊之間通過FIFO高速緩沖存儲器進行通信。系統(tǒng)框圖如圖2所示。

2.1 系統(tǒng)工作流程
  由上位機發(fā)出啟動命令和用于控制反應裝置工作的各電磁閥動作的時間參數(shù)給網絡傳輸模塊;網絡傳輸模塊把命令存入FIFO高速緩沖存儲器;采集模塊從FIFO高速緩沖存儲器中讀到命令,按照上位機傳來的時間參數(shù),控制整個反應裝置自動工作,同時把采集到的數(shù)據(jù)放入FIFO高速緩沖存儲器。網絡接口模塊采用TCP/IP協(xié)議對FIFO中的數(shù)據(jù)打包,傳給上位機。上位機對接到的數(shù)據(jù)進行處理,得到最后的濃度。
2.2 單片機數(shù)據(jù)采集模塊
  采集模塊的原理框圖如圖3所示。

  選擇多通道串行十二位A/D轉換器TCL2543進行A/D轉換。TCL2543的轉換速度為10?滋s一次,以滿足系統(tǒng)對采樣頻率的要求。同時由于是串行的A/D,所以占用系統(tǒng)的I/O線較少。TCL2543的基準電壓接入2.5V,因此要求輸入模擬信號的電壓范圍為0~2.5V。系統(tǒng)生物傳感器來的阻抗大約為1012Ω,范圍是-0.2V~+0.2V的電信號,所以信號在進入A/D轉換器之前,通過預處理電路進行了阻抗和電壓變換。
  CPU選擇PIC16C73B單片機,它是Microchip公司生產的一款基于EPROM 的8 位高性能微控制器。芯片上集成了一個8位算術邏輯單元和工作寄存器,4KB程序存儲器,192個數(shù)據(jù)寄存器,三個端口共22根I/O線,三個定時/計數(shù)器及二個串行口等。它具有精簡指令集(RISC)和哈佛結構,同時可運用二級流水線指令進行取數(shù)和執(zhí)行,指令大部分可在單周期執(zhí)行。該機可靠性好,速度比同類單片機快幾倍[3]。系統(tǒng)連接時,RA0~RA3與TLC2543進行通信;RB0~RB7接FIFO的數(shù)據(jù)端口;RC4~RC7作為雙向FIFO的控制線。
上位機發(fā)來的命令由網絡傳輸模塊存入命令FIFO。為使PIC1673B單片機能隨時判斷FIFO命令緩沖存儲器中是否有命令,把FIFO命令緩沖存儲器的不空狀態(tài)線接到單片機PIC1673的外部中斷引腳,一旦有中斷來,則馬上讀命令進行處理。采集來的數(shù)據(jù)寫入數(shù)據(jù)FIFO緩沖存儲器中,等待網絡傳輸模塊的讀取。
2.3 網絡傳輸模塊
  網絡傳輸模塊原理框圖如圖4所示。CPU采用網絡單片機Sx52BD芯片。Sx52BD是UBICOM公司的8位MCU,速度可達100 MHz,工作在50 MHz時執(zhí)行指令速度可達到50MIPS。它主要完成數(shù)據(jù)協(xié)議在網絡層和傳輸層的解包打包。當有數(shù)據(jù)從RJ45傳輸過來時,單片機對數(shù)據(jù)報進行分析,并將得到的數(shù)據(jù)存入FIFO高速命令緩沖存儲器;反之,當數(shù)據(jù)緩沖器不為空時,單片機對數(shù)據(jù)以TCP/IP協(xié)議打包,通過網絡傳輸?shù)缴衔粰C。

  以太網接口芯片CS8900主要完成數(shù)據(jù)鏈路層的協(xié)議。CS8900A是Cirrus Logic公司生產的低功耗、高性能的16位可編程以太網控制器[4]。它內部集成了在片RAM、10BASE-T收發(fā)濾波器,提供8位和16位二種接口,支持I/O、Memory、DMA三種傳輸模式。本系統(tǒng)選擇比較簡單易用的I/O模式,通過8位數(shù)據(jù)總線對其進行配置和數(shù)據(jù)的讀寫。
  在發(fā)送過程中,如果在一定的時間內接不到上位機接收數(shù)據(jù)的確認,則需要重發(fā)。如果要將數(shù)據(jù)從FIFO高速數(shù)據(jù)緩沖存儲器中再次讀出,則需要再次打包。為節(jié)約時間,在系統(tǒng)中擴展2KBSRAM,把當前發(fā)送的數(shù)據(jù)報備份,如果需要重發(fā),直接從SRAM中取出。
2.4 網絡傳輸模塊和數(shù)據(jù)采集模塊之間的數(shù)據(jù)傳輸
  PIC1673B單片機和SX52BD單片機I/O線都為三態(tài)線,理論上可以直接相連,通過I/O線傳送數(shù)據(jù)。但正因為是三態(tài)線,每次傳輸數(shù)據(jù)時首先要對端口初始化設置數(shù)據(jù)的傳輸方向,同時一方在發(fā)送時,要保證另一方處于接收狀態(tài),即雙方要同步。而且一次只能傳輸一個數(shù)據(jù),速度慢。因此,網絡傳輸模塊和數(shù)據(jù)采集模塊之間的數(shù)據(jù)傳輸采用共享存儲器的方式。用二個FIFO高速緩沖存儲器作為共享存儲器實現(xiàn)數(shù)據(jù)采集模塊和傳輸模塊之間的數(shù)據(jù)傳送。不需要Sx52BD單片機即可直接和PIC1673單片機通信,從而節(jié)省了單片機的開銷,提高了速度。
3  系統(tǒng)軟件設計
  系統(tǒng)軟件主要包括:采集模塊的數(shù)據(jù)采集程序,網絡傳輸模塊的通信程序,上位機的數(shù)據(jù)處理程序。
3.1 采集模塊程序
  采集模塊主要在命令FIFO存儲器不為空時,讀取啟動命令,控制反應裝置自動工作,同時采集數(shù)據(jù)。程序流程如圖5所示。

  03h命令是發(fā)送測試反應裝置各電磁閥動作時間參數(shù)的命令。單片機從命令FIFO存儲器讀到此命令后,把緊跟其后的13個數(shù)據(jù)作為裝置中13個電磁閥何時動作的參數(shù)賦值給相應的內部寄存器,以此做為電磁閥開關的定時時間。02h命令是啟動采集系統(tǒng)工作的命令。單片機讀到此命令后,控制裝置開始工作,同時啟動A/D轉換,開始數(shù)據(jù)采集。
  A/D轉換器TCL2543轉換的通道號和讀出數(shù)據(jù)的長度以及導前位由I/O周期的前8位設置[5],選擇輸出的數(shù)據(jù)長度為12位。注意在每次I/O周期讀取的數(shù)據(jù)都是上次轉換的結果,當前的轉換結果在下一個I/O周期中被串行移出。第一次讀數(shù)時由于內部的調整,讀取的結果可能不正確,應丟棄。為使讀取的數(shù)據(jù)更準確,消除干擾的影響,程序中對讀取的數(shù)據(jù)進行了均值濾波。讀入的A/D轉換的數(shù)據(jù)是單極性的,但輸入電壓范圍是-0.2V~+0.2V, 因此,在程序中需做數(shù)據(jù)的處理和定標,把單極性的電壓值變成雙極性的電壓值。
3.2 網絡傳輸模塊采用的TCP/IP協(xié)議
  網絡傳輸模塊采用簡化了的TCP/IP協(xié)議,主要有以下幾種:
  (1)ARP:地址解析協(xié)議,ARP為IP地址到對應的硬件地址之間提供動態(tài)映射。歸根結底,網內設備是靠其端口地址,即MAC地址來區(qū)分的,這個過程是自動完成的。因此系統(tǒng)要隨時響應主機發(fā)出的ARP請求,才能實現(xiàn)主機對它的訪問[6]。
  (2)ICMP:Internet控制報文協(xié)議,ICMP經常被認為是IP層的一個組成部分。它傳遞差錯報文以及其他需要注意的信息。ICMP實現(xiàn)了主機對本系統(tǒng)的連接故障檢測。
  (3)UDP:傳輸層協(xié)議。其作用是為不同的應用進程提供端口號。對于服務器而言,不同的端口對應不同的服務。它主要用于實時數(shù)據(jù)流的傳輸。
  (4)IP協(xié)議:負責整個通信子網數(shù)據(jù)包的傳輸。它只提供對數(shù)據(jù)包的盡力傳輸服務,如有連接、可靠傳輸?shù)绕渌眨瑒t要在更高層去實現(xiàn)。
  系統(tǒng)實現(xiàn)的協(xié)議間的承載關系為:IP/UDP,IP/ICMP,ARP直接在鏈路層之上。
3.3 網絡傳輸模塊通信程序
  網絡傳輸模塊收發(fā)數(shù)據(jù)流程如圖6所示。

  程序在初始化網卡時把CS8900的RXCFG寄存器設置為0103H。當接收到一個正確的數(shù)據(jù)報后,CS8900產生一個接收中斷。初始化后,主機方先要與本模塊建立握手連接。然后,如果CS8900有中斷產生,則接收上位機的數(shù)據(jù)報,把數(shù)據(jù)報讀入內部的RAM,根據(jù)數(shù)據(jù)報不同的類型做相應的處理。CS8900無中斷,說明無接收數(shù)據(jù),則檢測數(shù)據(jù)緩存FIFO是否為空。若不為空則讀出數(shù)據(jù),按照UDP協(xié)議進行打包后,送入CS8900發(fā)送。同時把打包后的數(shù)據(jù)暫存到外部SRAM中,啟動定時器。若在一定的時間內沒有從主機方收到確認,則重發(fā)該幀。
  對接收到的數(shù)據(jù)幀,如果收到ARP請求,則立刻發(fā)送ARP響應,以便主機得到本系統(tǒng)的MAC地址;若收到ICMP,則置其TTL值為128,再將原數(shù)據(jù)發(fā)出。系統(tǒng)收到UDP數(shù)據(jù)幀時,要判斷是上位機發(fā)來的命令還是接收數(shù)據(jù)確認的回應。如果是命令,則解碼后存入FIFO命令緩沖存儲器;如果是接收數(shù)據(jù)的確認回應,則清除SRAM中對應的數(shù)據(jù)報。
3.4 上位機數(shù)據(jù)處理程序
  上位機數(shù)據(jù)處理軟件采用LabWindows/CVI編寫。LabWindows/CVI是美國NI公司開發(fā)的32位面向計算機測控領域的軟件開發(fā)平臺。它將C語言平臺與數(shù)據(jù)采集、分析和表達等測控專業(yè)工具有機地結合起來,提供強大的函數(shù)庫以便于對采集的數(shù)據(jù)進行分析處理[7]。在本系統(tǒng)中,用LabWindows/CVI編寫了簡單易用的虛擬儀器面板,可以通過此面板對采集的參數(shù)進行設置,將工作時間參數(shù)和系統(tǒng)啟動信號打包發(fā)送給網絡傳輸模塊,以實現(xiàn)對數(shù)據(jù)采集全過程的控制;對上傳數(shù)據(jù)進行解碼;對解碼后的采集數(shù)據(jù)進行處理,形成四通道的時間-電壓曲線,求出最終的濃度。
4  結束語
  本采集系統(tǒng)用在海水有機磷農藥的現(xiàn)場實時監(jiān)測上,對馬拉硫磷的檢測限為0.5μg/L,測定值與理論值之間的誤差在10%以內。用Labwindows編寫的數(shù)據(jù)處理程序具有易于操作的界面,直觀的圖形顯示形式,能自動計算基線和峰值以及最終的濃度。同時,本系統(tǒng)還可以用在其他要求多通道快速實時數(shù)據(jù)采集的場合,只要根據(jù)不同的要求相應改變系統(tǒng)軟件即可。
參考文獻
1   孟范平,唐學璽,李永祺.有機磷農藥海洋生物傳感器監(jiān)測技術.海洋高新技術產業(yè)化高級論壇論文集,中國工程院,2000
2   何東海.利用乙酰膽堿酯酶生物傳感器監(jiān)測海水有機磷農藥.中國海洋大學碩士學位論文,2004,6
3   竇振中.PIC系列單片機原理和程序設計.北京:北京航空航天大學出版社,1998
4   陳學全,關宇東.嵌入式TCP/IP協(xié)議單片機技術在網絡通信中的應用.電子技術應用,2002;(8)
5   潘志東,劉增華.串行A/D轉換器TLC2543原理及應用.電測與儀表,2001;(3)
6   科默.TCP/IP網絡互連技術.北京:清華大學出版社,1995
7   王承,何志偉,許東芹.虛擬儀器-現(xiàn)代儀器發(fā)展的新階段.  測控技術,2001;20(10)
 

此內容為AET網站原創(chuàng),未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲精品久久久久久下一站| 欧美一级二区| 日韩午夜电影在线观看| 亚洲成人在线视频播放| 激情懂色av一区av二区av| 国产欧美日韩视频一区二区| 国产精品无码永久免费888| 国产精品国产精品| 国产精品美女久久福利网站| 国产精品久久久久久av福利软件 | 一区二区在线看| 一区二区三区在线高清| 在线观看日韩专区| 亚洲国产毛片完整版| 亚洲人www| 亚洲日本免费| 日韩视频一区二区在线观看 | 国产精品久久久久久五月尺| 欧美系列精品| 国产精品区免费视频| 国产精品一二| 国产一区二区精品久久91| 狠狠久久综合婷婷不卡| 亚洲成人在线网站| 亚洲人成啪啪网站| 一本大道久久a久久综合婷婷| 一区二区三区蜜桃网| 亚洲尤物影院| 久久gogo国模裸体人体| 亚洲国产你懂的| 亚洲国产精品国自产拍av秋霞| 亚洲精品少妇网址| 亚洲午夜精品久久| 久久gogo国模啪啪人体图| 久久在线视频在线| 欧美精品福利| 国产精品爽黄69| 精品1区2区| 亚洲免费观看在线观看| 亚洲永久字幕| 最新亚洲视频| 亚洲专区一区| 久久人人97超碰国产公开结果 | 久久久国产91| 欧美精品日韩精品| 国产精品日韩一区二区| 狠狠色丁香久久婷婷综合_中| 亚洲人成在线观看网站高清| 亚洲视频在线观看三级| 欧美伊人久久久久久午夜久久久久| 亚洲黄一区二区| 亚洲一区二区三区免费观看 | 亚洲欧美国产视频| 久久久久国产一区二区三区| 欧美激情精品久久久久久蜜臀 | 国产在线欧美日韩| 亚洲美女视频| 欧美一区二区黄色| 亚洲伦理精品| 久久av一区二区三区| 欧美激情在线| 国产性色一区二区| 亚洲精品社区| 久久精品国产久精国产爱| 亚洲天堂久久| 美女视频黄a大片欧美| 国产精品黄视频| 亚洲激情一区二区三区| 亚洲自拍偷拍色片视频| 亚洲精品一区二区网址| 久久精品国产精品亚洲| 欧美日韩免费精品| 一区二区三区在线高清| 亚洲男人的天堂在线观看| 日韩视频专区| 久久伊人一区二区| 国产精品一区二区三区四区五区 | 在线观看日产精品| 亚洲欧美日韩国产一区| 中文一区二区| 欧美大学生性色视频| 国产色产综合色产在线视频| 亚洲精品日韩在线| 亚洲国产精品va| 久久激情视频| 国产精品大片wwwwww| 最新69国产成人精品视频免费| 欧美一级在线播放| 午夜伦欧美伦电影理论片| 欧美日韩国产三区| 91久久精品日日躁夜夜躁欧美 | 亚洲精品一区二区三区蜜桃久| 久久久xxx| 国产视频一区在线观看一区免费| aa级大片欧美三级| 亚洲靠逼com| 男人的天堂亚洲在线| 狠狠色香婷婷久久亚洲精品| 亚洲欧美日产图| 午夜精品久久久久久久99水蜜桃| 欧美人在线视频| 亚洲激情一区二区| 亚洲人成啪啪网站| 免费视频一区二区三区在线观看| 国户精品久久久久久久久久久不卡 | 亚洲直播在线一区| 欧美日韩中文字幕| 日韩一区二区精品葵司在线| 日韩视频在线观看一区二区| 欧美高清在线视频| 亚洲国产精品女人久久久| 91久久精品日日躁夜夜躁国产| 久久久久国色av免费看影院| 国产欧美一区二区精品性色| 亚洲欧美在线一区二区| 欧美在线视频在线播放完整版免费观看| 国产精品高清在线观看| 一区二区三区免费观看| 亚洲一区二区三区影院| 国产精品成人国产乱一区| 这里只有精品视频在线| 亚洲欧美日韩国产一区| 国产精品视频成人| 亚洲欧美成人综合| 欧美综合第一页| 韩国成人福利片在线播放| 亚洲第一页在线| 欧美凹凸一区二区三区视频| 亚洲高清影视| 一区二区三区毛片| 欧美新色视频| 亚洲一区二区精品视频| 欧美在线观看网址综合| 国产主播精品在线| 亚洲国产精品高清久久久| 欧美激情中文不卡| 夜夜嗨av一区二区三区四季av| 亚洲中无吗在线| 国产日韩精品视频一区| 亚洲大片免费看| 欧美精品激情在线观看| 99在线热播精品免费| 校园激情久久| 一区精品久久| 一区二区三区精品视频| 国产精品亚洲视频| 亚洲二区在线视频| 欧美另类在线播放| 亚洲一区二区网站| 久久综合狠狠综合久久综青草| 亚洲精品久久久久中文字幕欢迎你 | 亚洲影视在线| 国产欧美日韩综合精品二区| 亚洲电影欧美电影有声小说| 欧美久久久久| 亚洲欧美日韩一区二区三区在线观看| 久久婷婷蜜乳一本欲蜜臀| 亚洲人成人99网站| 午夜亚洲性色视频| 精品91久久久久| 亚洲网站视频| 国产综合18久久久久久| 一本色道久久加勒比88综合| 亚洲久色影视| 亚洲成色777777女色窝| 99v久久综合狠狠综合久久| 欧美视频导航| 小处雏高清一区二区三区| 蜜桃久久精品乱码一区二区| 日韩午夜精品| 久久精品国产久精国产一老狼| 亚洲第一精品久久忘忧草社区| 亚洲一区二区精品在线| 黄网站色欧美视频| 亚洲性xxxx| 在线播放视频一区| 亚洲欧美激情四射在线日| 伊人久久婷婷| 午夜精品免费视频| 亚洲第一福利视频| 欧美一区二区三区日韩视频| 亚洲国产美女精品久久久久∴| 午夜精品视频在线| 亚洲国产精品久久久久婷婷老年 | 亚洲一区精品在线| 欧美电影在线观看完整版| 亚洲欧美日韩视频二区| 欧美精品国产精品| 欧美在线亚洲一区| 国产精品久久久久国产a级| 亚洲人精品午夜| 国产午夜精品美女毛片视频| 一区二区三区视频在线播放| 伊人久久亚洲影院| 久久精品二区亚洲w码| 一区二区三区三区在线| 欧美成人在线网站| 久久av一区二区| 国产精品一区二区三区四区| 亚洲视频1区|