• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于串行通信的壓電陶瓷驅(qū)動器的設(shè)計

    2011-07-25 00:33:54韋曉茹李朝明
    關(guān)鍵詞:波特率驅(qū)動器控件

    韋曉茹,李朝明

    (蘇州大學(xué) 信息光學(xué)工程研究所,江蘇 蘇州 215006)

    壓電陶瓷由于其奇妙的壓電效應(yīng)被科學(xué)家們應(yīng)用在與人們生活密切相關(guān)的領(lǐng)域,以實現(xiàn)能量轉(zhuǎn)換、傳感、驅(qū)動等功能。壓電陶瓷在電場作用下產(chǎn)生的形變量很小,最多不超過本身尺寸的千萬分之一。利用這微小的變化可以制作精確控制機構(gòu)——壓電驅(qū)動器,對于精密儀器和機械的控制等領(lǐng)域作用巨大。壓電驅(qū)動器具有很高的位移分辨率以及抗干擾能力,并且控制方法簡單,非常適用于微位移驅(qū)動,目前已被廣泛應(yīng)用于國防、生物醫(yī)學(xué)、光電子等諸多領(lǐng)域[1-2]。調(diào)節(jié)壓電陶瓷上的電壓可以采用手動和計算機控制的方式,隨著高性能D/A芯片的應(yīng)用,使得計算機控制更加精確。計算機和外部電路(含單片機)的通信可以通過串口來實現(xiàn)。由于串行通信[3]具有高效可靠、價格便宜、遵循統(tǒng)一的標(biāo)準(zhǔn)等特點,使得串口通信在系統(tǒng)控制[4-5]的范疇中一直占據(jù)著極其重要的地位。Visual Basic 6.0提供了串行通信控件,可以輕松實現(xiàn)串口數(shù)據(jù)的交換。本文介紹通過PC和單片機之間的串行通信來實現(xiàn)壓電陶瓷驅(qū)動器的設(shè)計,其中計算機作為上位機,單片機作為下位機。

    1 硬件基礎(chǔ)

    圖1所示為系統(tǒng)的結(jié)構(gòu)框圖。由于上下位機串行口工作電平不一致,它們之間通過MAX232芯片將TTL電平轉(zhuǎn)換為RS232電平。單片機選擇了ATMEL公司的精簡指令集單片機ATmega16,該款單片機功耗低,在正常模式下只有1.1 mA,最高工作頻率可達(dá)16 MHz,具有可擦寫的16 KB的可編程Flash,其內(nèi)部的USART是一個高度靈活的串行通信設(shè)備,使用起來非常方便。D/A芯片采用ANALOG公司的12 bit分辨率的AD5344,AD5344具有并行輸入接口,需要的控制線也不多,并且具有雙緩沖輸入邏輯,一片AD5344有4路輸出。計算機通過串行口將數(shù)據(jù)發(fā)送給單片機,單片機將接收到的數(shù)據(jù)放在內(nèi)部的SRAM中,接收完畢后,再將數(shù)據(jù)取出,通過數(shù)據(jù)端口輸出到D/A,D/A的模擬輸出信號 (電壓)用來控制壓電陶瓷。

    圖1 系統(tǒng)結(jié)構(gòu)框圖

    2 上位機程序設(shè)計

    上位機程序的編寫采用Visual Basic 6.0的編程環(huán)境,使用Visual Basic6.0的MSComm通信控件,非常容易就能實現(xiàn)串口通信,使用時要對串行通信的信息格式和協(xié)議進(jìn)行設(shè)置。每個通信控件對應(yīng)一個串口,如果要訪問多個通信口,則要設(shè)計多個通信控件。

    2.1 程序流程及界面設(shè)計

    計算機和單片機之間的通信采用查詢的工作方法,計算機為上位機 (主機),單片機為下位機 (從機)。上位機主要負(fù)責(zé)發(fā)送控制命令,以及數(shù)據(jù)的發(fā)送接收、處理、計算、數(shù)據(jù)的顯示等功能。上位機程序分為四個部分:界面設(shè)計、程序初始化、數(shù)據(jù)通信、數(shù)據(jù)處理。程序流程如圖2所示。

    主程序界面主要分為數(shù)據(jù)的輸入框和命令控件按鈕,輸入框用于輸入提供給壓電陶瓷電壓的數(shù)值,命令控件按鈕用于實現(xiàn)命令和數(shù)據(jù)的發(fā)送和接收,界面還放置一個顯示通信狀態(tài)的文本框。程序界面如圖3所示。

    圖3中的“設(shè)置”按鈕用于將文本框中的電壓值 (CH1~CH4)通過串口發(fā)送到單片機,單片機再把數(shù)據(jù)傳給模數(shù)轉(zhuǎn)換器?!扒辶恪卑粹o用于將輸出數(shù)據(jù)都設(shè)置為零。

    圖2 上位機程序設(shè)計流程圖

    圖3 程序界面

    2.2 程序代碼

    具體的程序代碼包括串口的初始化及數(shù)據(jù)的發(fā)送與接收。串口的初始化代碼如下:

    MSComm1.CommPort=1;使用 COM1串口

    MSComm1.Settings="9600,n,8,1";數(shù) 據(jù) 格 式 : 波 特率 9 600 b/s,無奇偶校驗,8位數(shù)據(jù),1位停止位

    MSComm1.OutBufferCount=0;清空發(fā)送緩沖區(qū)

    MSComm1.InBufferCount=0;清空接收緩沖區(qū)

    MSComm1.PortOpen=Tr ue;打開串口

    MSComm1.InputMode=1;以二進(jìn)制形式取回數(shù)據(jù)

    MSComm1.InputLen=0;一次讀取緩沖區(qū)內(nèi)全部數(shù)據(jù)

    由于篇幅的限制,關(guān)于數(shù)據(jù)的發(fā)送和接收部分的代碼不再給出了。

    3 下位機的通信程序設(shè)計

    下位機程序包括初始化部分、數(shù)據(jù)接收部分和數(shù)據(jù)輸出部分等。

    Atmega16內(nèi)部的USART是一個高度靈活的串行通信設(shè)備,使用起來非常方便,單片機串行通信的波特率發(fā)生器可由其片內(nèi)時鐘產(chǎn)生,波特率寄存器UBRR用于設(shè)置所需要的波特率,對于異步正常模式波特率的計算公式為BAUD=fosc/16(UBRR+1),對于 9 600 b/s的波特率(和上位機一致),在 fosc=8 MHz 的情況下,UBRR的值為51。數(shù)據(jù)的傳送格式為:1個起始位,8位數(shù)據(jù)位,1位停止位。程序流程如圖4所示。

    圖4 下位機程序設(shè)計流程圖

    初始化部分程序代碼如下:

    其他部分的代碼由于比較長,在這里就不列出了。

    基于串行通信設(shè)計了壓電陶瓷驅(qū)動器,使用Visual Basic 6.0提供的串行通信控件可以輕松實現(xiàn)串口數(shù)據(jù)的交換。系統(tǒng)的開發(fā)周期短、效率高,并且串行通信程序的調(diào)試可以借助很多的工具軟件 (如串口調(diào)試助手),因此使用串行通信好處很多。雖然現(xiàn)在有的計算機的主板并不帶串行接口(如筆記本電腦),而由USB接口替代,但同樣可以使用串行通信。方法是采用USB轉(zhuǎn)串口的方法,硬件上需要一根轉(zhuǎn)接線,使用的時候要安裝驅(qū)動,其串口號由Windows自動分配,即系統(tǒng)虛擬了一個串行端口,這個端口和真實的串行端口使用方法完全一樣。

    [1]陳修濤,侯再紅,譚逢富,等.一種基于壓電陶瓷的目標(biāo)精跟蹤系統(tǒng)[J].微計算機信息,2010,26(8-1):32-33.

    [2]朱華征,范大鵬,張智永,等.精密光路偏轉(zhuǎn)及焦距調(diào)整機構(gòu)的發(fā)展[J].激光與紅外,2009,39(10):1028-1032.

    [3]李肇慶,韓濤.串行端口技術(shù)[M].北京:國防工業(yè)出版社,2004.

    [4]吳愛萍.基于VB與單片機的溫度測控系統(tǒng)設(shè)計 [J].現(xiàn)代電子技術(shù),2010(8):208-210.

    [5]王平,張新東.基于智能儀表的數(shù)據(jù)采集系統(tǒng)設(shè)計[J].自動化與儀表,2009(4):9-10.

    猜你喜歡
    波特率驅(qū)動器控件
    CAN 總線波特率自適應(yīng)程序設(shè)計
    智能制造(2020年5期)2020-07-03 06:24:00
    藏起驅(qū)動器號確保數(shù)據(jù)安全
    電腦愛好者(2020年6期)2020-05-26 09:27:33
    關(guān)于.net控件數(shù)組的探討
    軟件(2018年7期)2018-08-13 09:44:42
    基于FPGA的異步串行通信波特率容錯設(shè)計
    電子測試(2018年7期)2018-05-16 06:27:18
    壓電陶瓷驅(qū)動器的遲滯特性
    SiC基和Si基永磁同步電動機驅(qū)動器的比較
    新型低電壓大變形微驅(qū)動器數(shù)值求解及仿真
    計算物理(2014年2期)2014-03-11 17:01:41
    C*Core芯片SCI串口波特率容限優(yōu)化
    就這樣玩會VBA中常見的自定義控件
    電腦迷(2012年24期)2012-04-29 00:44:03
    計算機多設(shè)備接口波特率不匹配的研究
    公安县| 花垣县| 郴州市| 靖远县| 土默特右旗| 石嘴山市| 康平县| 新疆| 临西县| 三原县| 桃江县| 荆州市| 玉屏| 兴文县| 建德市| 滁州市| 乌兰浩特市| 鲁甸县| 德江县| 阳春市| 青铜峡市| 宁陵县| 忻城县| 乌鲁木齐市| 云霄县| 江油市| 禹州市| 阳曲县| 宁强县| 电白县| 兴和县| 怀仁县| 卓尼县| 新乐市| 满洲里市| 望谟县| 南宫市| 嘉义市| 九龙坡区| 象州县| 西吉县|