用PSOC3實(shí)現(xiàn)虛擬示波器的系統(tǒng)解決方案,軟硬件實(shí)現(xiàn)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
虛擬儀器在近幾年發(fā)展較為迅速,虛擬儀器利用計(jì)算機(jī)強(qiáng)大的運(yùn)算與數(shù)據(jù)處理能力,節(jié)省的硬件開銷,又可以從充分利用計(jì)算機(jī)編程技術(shù)的優(yōu)勢實(shí)現(xiàn)較復(fù)雜的功能,基于此背景下項(xiàng)目使用Cypress Semiconductor 公司集成度高、開發(fā)周期短的PSoC3 芯片開發(fā)一款硬件開銷小及功能強(qiáng)大的虛擬示波器。示波器基于CY8C3866AXI 芯片實(shí)現(xiàn),被測量的模擬信號經(jīng)過芯片內(nèi)部ADC轉(zhuǎn)換成數(shù)字信號,該信號由PSoC3主控芯片通過串口(UART)發(fā)送到PC機(jī)上,PC機(jī)使用Visual basic 6.0開發(fā)一款可視化軟件,監(jiān)控串口發(fā)送過來的信號,并且將數(shù)字信號還原成模擬信號的波形,該軟件同時(shí)還提供控制面板可以控制示波器的顯示及參數(shù)設(shè)定。
0引言
示波器是電子設(shè)計(jì)一項(xiàng)最基本的儀器,該儀器可以用于觀察數(shù)字與模擬電路的波形,可以測量信號質(zhì)量、電壓、頻率等系列參數(shù)。但是這個(gè)設(shè)備一般只有學(xué)校實(shí)驗(yàn)室、研發(fā)部門才會(huì)擁有。該設(shè)備價(jià)格相對較貴,個(gè)人用戶一般不會(huì)擁有。網(wǎng)絡(luò)上還流傳一種利用系統(tǒng)API開發(fā)聲卡型示波器,該示波器能實(shí)現(xiàn)基本功能,但是因?yàn)闇y量時(shí)候因使用不慎會(huì)燒壞電腦的聲卡、甚至電腦主板,一臺筆記本本可能就這樣報(bào)廢。并且聲卡采用數(shù)據(jù)速率相當(dāng)?shù)挠邢?,這套方案有先天的缺點(diǎn),如果可以使用另一個(gè)解決方案,同時(shí)解決速率、成本、不燒壞電腦那么該產(chǎn)品一定可以在市場占有一席之地,經(jīng)過學(xué)習(xí)PSOC3發(fā)現(xiàn)這是一套非常完美的方案,Cypress Semiconductor 的PSOC 3 芯片內(nèi)包含USB 接口、MCU主控、高分辨率ADC。這樣為實(shí)現(xiàn)較高性能的、低價(jià)格、體積小的虛擬示波器提供了設(shè)計(jì)方便。
本設(shè)計(jì)利用PSOC的集成的內(nèi)部單元模組、通過編程的方式實(shí)現(xiàn)硬件電路功能。該P(yáng)SCOC芯片通過某種通訊方式與PC機(jī)通訊,計(jì)算機(jī)通過解析PSOC發(fā)送來的數(shù)據(jù)將數(shù)字信號還原成模擬波形。并且提供波形、電壓、周期等參數(shù)。
1總體設(shè)計(jì)方案
鑒于虛擬示波器產(chǎn)品體積、成本限制,本文構(gòu)建系統(tǒng)對以上因素進(jìn)行了綜合考慮。虛擬示波器核心在于利用PSOC3集成度高的優(yōu)勢,實(shí)現(xiàn)了體積小,成本低多功能的虛擬示波器。
圖1為PSOC構(gòu)建的虛擬示波器總體框圖,可分為三部分:(1)ADC采樣:采用PSOC3自帶8位ADC。(2)串口通訊:實(shí)現(xiàn)PSOC與上位機(jī)之間的通訊 (3)基于VB的示波器顯示軟件:利用計(jì)算機(jī)高分辨率波形顯示以及參數(shù)設(shè)置、測量等。
本設(shè)計(jì)中使用CY8C3866AXI 可編程器件,對模擬信號進(jìn)行采集轉(zhuǎn)換為數(shù)字信號,數(shù)字信號通過USB傳送到PC機(jī)中,PC機(jī)解析PSOC發(fā)送上來的數(shù)據(jù)流,還原成模擬波形信號。
圖1
幾種設(shè)計(jì)方案對比:
表:1
基于表 1的方案對比,我們方案3為優(yōu)選設(shè)計(jì)方案。方案4為備選方案,方案一為實(shí)驗(yàn)方案。
較于方案1、2,方案3中PSOC3 ADC配置更為靈活,輕巧方便,硬件設(shè)計(jì)更簡潔。集成度高大大降低了開發(fā)成本。PSOC3便于修改軟件程序而進(jìn)行功能擴(kuò)展。用戶不必不斷購買新儀器,投入小而收效大。
方案3中使用USB2.0高速數(shù)據(jù)傳輸,與高度芯片集成??梢栽O(shè)計(jì)出一款性能優(yōu)于體積較小的虛擬示波器產(chǎn)品。但不利于遠(yuǎn)距離工業(yè)檢測。
到方案4。為了實(shí)現(xiàn)工業(yè)檢測與控制領(lǐng)域的低頻小信號測量,方案4比較實(shí)用,而且利用PSOC3的高度集成性,節(jié)省了很多模擬調(diào)理電路。同時(shí)也減小了設(shè)備體積和增強(qiáng)系統(tǒng)工作的可靠性。因此本項(xiàng)目采用方案4。
2示波器硬件方案設(shè)計(jì)
2.1 采樣電路
采樣原理圖如圖2所示(上)電路。根據(jù)采集高電壓的需要,設(shè)計(jì)了低成本體積小的電路,實(shí)現(xiàn)峰峰值高電壓采樣。
采樣電路使用2個(gè)電阻R1與R2分壓, Vadc = Vsingal input * R2 / R2+R1 ,利用這個(gè)電路可以實(shí)現(xiàn)峰峰值較高的模擬信號的采樣。
例如:一個(gè)信號為 50V 而PSOC內(nèi)部參考電壓為1.024V 則可以選擇R2 =1K
R1 = 49K
PSOC配置了如圖2所示(下)電路:當(dāng)J1短路時(shí),電路采集低電壓。當(dāng)需要高電壓采集時(shí),按照采樣原理,配置R1、R2。
圖2(上)
圖2(下)
2.2 PSOC內(nèi)部電路設(shè)計(jì)
PSoC3架構(gòu)所具有的強(qiáng)大的精確模擬能力的實(shí)際應(yīng)用例子。有了這個(gè)工具包,基于虛P(yáng)SoC3擬示波器模擬集成的高水準(zhǔn),以及通過PSoC Creator ADC進(jìn)行模擬設(shè)計(jì)通過配置而顯得簡潔方便。
PSOC內(nèi)部多種基本單元電路模塊可以實(shí)現(xiàn)電路,在本方案中使用到了ADC模塊,UART、LED顯示。并且軟件上配置器件的配置信息。
電路如圖3所示:
圖3
2.3 串口電路實(shí)現(xiàn)
近幾年生產(chǎn)的筆記本電腦一般不配備串口,為了操作攜帶方便,在設(shè)計(jì)的時(shí)候添加了USB轉(zhuǎn)串口的電路,使用USB口既可以完成與計(jì)算機(jī)完成數(shù)據(jù)通訊。
圖4軟件設(shè)計(jì)
3.1 PSOC軟件設(shè)計(jì)(下位機(jī))
圖5
PSOC軟件啟動(dòng)先初始化所以設(shè)備,進(jìn)入while循環(huán)。首先執(zhí)行ADC 模擬信號處理,將數(shù)據(jù)送到LED燈中用于ADC采集信號顯示。將ADC的值返回到串口中,由串口發(fā)送ADC到計(jì)算機(jī)。
3.2 Visual basic軟件設(shè)計(jì)(上位機(jī))
3.2.1上位機(jī)基本原理
在Visual Basic中一個(gè)Microsoft Communication Control(簡稱Mscomm) 串口通訊控件,本作品就是靈活的使用該控件實(shí)現(xiàn)單片機(jī)與PC機(jī)通訊的,該控件可以使用查詢接受數(shù)據(jù),也可以使用事件驅(qū)動(dòng),使用事件驅(qū)動(dòng)具有節(jié)省PC資源響應(yīng)速度快的優(yōu)勢所以本文使用事件驅(qū)動(dòng)方式接收串口發(fā)送過來的數(shù)據(jù)流。
3.2.2 解析數(shù)據(jù)的方法
串口發(fā)送回來的數(shù)據(jù)為十六進(jìn)制數(shù)據(jù),該數(shù)據(jù)通過數(shù)據(jù)轉(zhuǎn)換為0—1000的數(shù)據(jù),轉(zhuǎn)換完成的數(shù)據(jù)將存儲的一個(gè)數(shù)據(jù)緩沖去中,該緩沖區(qū)存儲了一段時(shí)間的波形,這樣就可以實(shí)現(xiàn)按下暫停之后可以拖動(dòng)滾動(dòng)條查詢歷史的波形,波形的顯示使用一個(gè)picture控件,并且設(shè)置容器的大小為1000像素×1000像素,繪制好示波器界面,然后顯示出一定數(shù)量的緩沖去的數(shù)據(jù),該數(shù)據(jù)分別在容器中通過繪線的方式將數(shù)據(jù)轉(zhuǎn)換為波形。
3.2.3 軟件基本界面設(shè)計(jì)
軟件主要考慮到用戶使用方便的問題,設(shè)計(jì)示波器界面充分考慮親和性與易用性,所以界面也是仿照實(shí)際示波器的布局來設(shè)計(jì),左邊為CRT的顯示器,左邊為控制面板。這樣可以做到會(huì)使用實(shí)際示波器,也會(huì)使用虛擬示波器。
示波器界面中菜單有系統(tǒng)、設(shè)置、幫助三個(gè)選項(xiàng)??梢栽O(shè)置波特率等。采集波形時(shí)可零點(diǎn)上下移、波形大小調(diào)節(jié)、波形保存、X\Y增益調(diào)節(jié)等多種功能。與實(shí)際示波器功能相似、布置相同,易于操作。波形通過賽普拉斯高精度的ADC采集經(jīng)串口傳輸后,該界面可實(shí)現(xiàn)清晰準(zhǔn)確的顯示。采集三角波如圖6所示。
圖6
4結(jié)束語
基于PSOC虛擬儀器把計(jì)算機(jī)技術(shù)與傳統(tǒng)測試技術(shù)緊密結(jié)合起來,它充分利用計(jì)算機(jī)的信息處理能力,實(shí)現(xiàn)對多路輸入信號的實(shí)時(shí)采集和存儲,并進(jìn)行離線分析和處理。
與傳統(tǒng)示波器制作步驟相比較,PSOC工具包省去了畫電路圖、布線、底層協(xié)議等的麻煩,直接配置硬件,注入思想流程,易于操作實(shí)現(xiàn),節(jié)約經(jīng)費(fèi)。PSOC高精度可配置的ADC且內(nèi)部含參考電壓,這為制作虛擬示波器提供了可發(fā)展的空間。
本設(shè)計(jì)能獲得小于1K赫茲的任意波形,輸出幅度基本可以根據(jù)需要配置。1MHz/秒采樣速率,采樣數(shù)目以及采樣頻率通過軟件可調(diào)。本虛擬儀器使用簡單、方便、價(jià)格低廉,人機(jī)交互容易。結(jié)構(gòu)簡單使其體積小巧、便于攜帶,尤其適于配合便攜機(jī)野外使用。