$5 模擬量輸入輸出通道-new_第1頁
$5 模擬量輸入輸出通道-new_第2頁
$5 模擬量輸入輸出通道-new_第3頁
$5 模擬量輸入輸出通道-new_第4頁
$5 模擬量輸入輸出通道-new_第5頁
已閱讀5頁,還剩35頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、PCL-812PG實(shí)物照片CN1CN2CN3CN4工控機(jī)+采集卡構(gòu)成的模擬量輸出輸入通道信號調(diào)理電路信號調(diào)理電路驅(qū)動電路驅(qū)動電路端子板端子板var=Inportb (基地址基地址+偏移地址偏移地址) Outportb(基地址基地址+偏移地址偏移地址, 變量名變量名)工業(yè)系統(tǒng)工業(yè)系統(tǒng)傳感器傳感器執(zhí)行器執(zhí)行器采集卡采集卡模擬量輸入通道A/Dl任務(wù):任務(wù):把被控對象的模擬量信號(溫度、壓力、把被控對象的模擬量信號(溫度、壓力、 流量等)轉(zhuǎn)換成計(jì)算機(jī)可以接收的數(shù)字量信號;流量等)轉(zhuǎn)換成計(jì)算機(jī)可以接收的數(shù)字量信號;l組成:組成:一般由信號調(diào)理、多路模擬開關(guān)、前置放一般由信號調(diào)理、多路模擬開關(guān)、前置放 大

2、器、采樣保持器、模大器、采樣保持器、模/ /數(shù)轉(zhuǎn)換器、接口和數(shù)轉(zhuǎn)換器、接口和 控制電路組成;控制電路組成;l核心:核心:模模/ /數(shù)轉(zhuǎn)換器,簡稱數(shù)轉(zhuǎn)換器,簡稱A/D或或ADC (analog-to-digital converter)。模擬量輸入通道的一般組成A/D通道內(nèi)部工作原理多多路路開開關(guān)關(guān)MUX控制線控制線數(shù)據(jù)總線數(shù)據(jù)總線工業(yè)系統(tǒng)工業(yè)系統(tǒng)模擬傳感器模擬傳感器信號調(diào)理信號調(diào)理V1V2VkVn模擬傳感器模擬傳感器信號調(diào)理信號調(diào)理模擬傳感器模擬傳感器信號調(diào)理信號調(diào)理模擬傳感器模擬傳感器信號調(diào)理信號調(diào)理控制電路控制電路A/D轉(zhuǎn)換轉(zhuǎn)換S/HVkVGVhVd接口接口電路電路channel = kg

3、ain采樣采樣觸發(fā)觸發(fā)信號信號選通道:選通道:channel = k設(shè)定增益:設(shè)定增益:Gain選擇觸發(fā)方式選擇觸發(fā)方式先采樣,再保持先采樣,再保持可編程可編程放大器放大器每個通道輸入的模每個通道輸入的模擬量的范圍不同,擬量的范圍不同,選擇不同的增益選擇不同的增益保持保持采樣采樣C-+多路開關(guān)MUX的工作原理工業(yè)系統(tǒng)工業(yè)系統(tǒng)模擬傳感器模擬傳感器信號調(diào)理信號調(diào)理模擬傳感器模擬傳感器信號調(diào)理信號調(diào)理模擬傳感器模擬傳感器信號調(diào)理信號調(diào)理模擬傳感器模擬傳感器信號調(diào)理信號調(diào)理VkV1V2VkVnMUXchannel = k(0-15)A/D轉(zhuǎn)換的觸發(fā)方式及轉(zhuǎn)換結(jié)果的傳輸方式1. A/D轉(zhuǎn)換器接收到觸發(fā)信

4、號開始才轉(zhuǎn)換。轉(zhuǎn)換器接收到觸發(fā)信號開始才轉(zhuǎn)換。A/D轉(zhuǎn)換有三種觸發(fā)方轉(zhuǎn)換有三種觸發(fā)方式式l軟件觸發(fā)軟件觸發(fā) 簡單,但采樣間隔精度低。簡單,但采樣間隔精度低。(訓(xùn)練中采用訓(xùn)練中采用)l硬件定時器觸發(fā)硬件定時器觸發(fā) 精確、穩(wěn)定。精確、穩(wěn)定。l外部脈沖觸發(fā)外部脈沖觸發(fā)2. 轉(zhuǎn)換結(jié)果是二進(jìn)制數(shù),必須傳輸?shù)絻?nèi)存。轉(zhuǎn)換結(jié)果是二進(jìn)制數(shù),必須傳輸?shù)絻?nèi)存。A/D轉(zhuǎn)換結(jié)果有三種傳轉(zhuǎn)換結(jié)果有三種傳輸方式輸方式l查詢方式查詢方式:CPU主動查詢主動查詢A/D轉(zhuǎn)換完成標(biāo)志位,若完成,轉(zhuǎn)換完成標(biāo)志位,若完成,從端從端口讀取結(jié)果。口讀取結(jié)果。查詢占用查詢占用CPU的時間。的時間。 (訓(xùn)練中采用訓(xùn)練中采用) l中斷方式中斷方

5、式:轉(zhuǎn)換完成后,轉(zhuǎn)換完成后,A/D轉(zhuǎn)換器主動向轉(zhuǎn)換器主動向CPU發(fā)出中斷請求,發(fā)出中斷請求,CPU執(zhí)行執(zhí)行中斷服務(wù)程序,再從端口讀取結(jié)果。中斷服務(wù)程序,再從端口讀取結(jié)果。lDMA方式方式(從略)。(從略)。采用任何處理器處理模擬信號都要考慮這些問題。采用任何處理器處理模擬信號都要考慮這些問題。DMA-Direct Memory Access,直接內(nèi)存訪問。由于不直接訪直接內(nèi)存訪問。由于不直接訪問計(jì)算機(jī)的問計(jì)算機(jī)的CPU,數(shù)據(jù)直接在,數(shù)據(jù)直接在RAM與設(shè)備之間傳輸,因而大與設(shè)備之間傳輸,因而大大提高了數(shù)據(jù)傳輸速度大提高了數(shù)據(jù)傳輸速度,適用于適用于高速采集。高速采集。PCL-812PG如何實(shí)現(xiàn)模擬

6、量輸入?1+8個問題(16見p113)1.允許哪一路進(jìn)入?允許哪一路進(jìn)入?2.允許進(jìn)入的這一路信號需要放大幾倍?允許進(jìn)入的這一路信號需要放大幾倍?3.模擬電壓送到模擬電壓送到A/D轉(zhuǎn)換器后,如何使轉(zhuǎn)換器后,如何使A/D開始開始(觸發(fā)方式約定觸發(fā)方式約定)?4.如何實(shí)現(xiàn)觸發(fā),使如何實(shí)現(xiàn)觸發(fā),使A/D轉(zhuǎn)換器開始工作?轉(zhuǎn)換器開始工作?5.如何知道如何知道A/D轉(zhuǎn)換轉(zhuǎn)換12bits已完成?已完成?6.如何將如何將A/D轉(zhuǎn)換好的轉(zhuǎn)換好的12bits數(shù)據(jù)傳輸?shù)絻?nèi)存數(shù)據(jù)傳輸?shù)絻?nèi)存(傳輸方式約定傳輸方式約定) ?7.如何將如何將12bit二進(jìn)制碼解為量程二進(jìn)制碼解為量程(譬如譬如-10V,+10V)范圍的十進(jìn)

7、制電范圍的十進(jìn)制電壓值?壓值?0. 如何正確訪問到采集卡?如何正確訪問到采集卡?基地址已設(shè)為基地址已設(shè)為0 x220可用撥位開關(guān)改變基地址可用撥位開關(guān)改變基地址w 地址:地址:Base10 w 屬性:只寫屬性:只寫w 數(shù)據(jù)格式:數(shù)據(jù)格式:CL3CL0提供了提供了A/D通道號,對應(yīng)通道號,對應(yīng) 015號通道號通道 0000 1111 (AD0AD15) outportb(base10, channels )BitD7D6D5D4D3D2D1D0Base+10XXXXCL3CL2CL1CL0問題問題1. 允許哪一路進(jìn)入?允許哪一路進(jìn)入?l地址:地址:Base9l屬性:只寫屬性:只寫l數(shù)據(jù)格式:低數(shù)

8、據(jù)格式:低3位位G0G2提供了不同增益。提供了不同增益。BitD7D6D5D4D3D2D1D0Base+9XXXXXG2G1G0Gain最大輸入電壓模擬輸入范圍outportb(base9, Gain )采集卡的最大輸入電壓采集卡的最大輸入電壓10V(5V)模擬信號輸入模擬信號輸入的最大電壓的最大電壓R0R1R2XXXXXD0D1D2D3D4D5D6D7Base+90.625V(0.3125V)1.25V(0.625V)2.5V(1.25V)5V(2.5V)10V(5V)輸入范圍輸入范圍160018110401021001000GainR0R1R2outportb(base9, 0 ); /*

9、增益為增益為1*/問題問題2. 允許進(jìn)入的信號需要放大幾倍?允許進(jìn)入的信號需要放大幾倍?S2S1S0操作模式描述操作模式描述000禁止觸發(fā)禁止觸發(fā)A/DA/D001僅允許軟件觸發(fā)查詢方式傳輸(默認(rèn))僅允許軟件觸發(fā)查詢方式傳輸(默認(rèn))010僅允許卡自帶定時器觸發(fā)僅允許卡自帶定時器觸發(fā)DMADMA傳輸傳輸110允許卡自帶定時器觸發(fā)查詢方式或中斷傳輸允許卡自帶定時器觸發(fā)查詢方式或中斷傳輸outportb(base11, 1 )BitD7D6D5D4D3D2D1D0Base+11XXXXXS2S1S0l地址:地址:Base11l屬性:只寫屬性:只寫l數(shù)據(jù)格式:低數(shù)據(jù)格式:低3位位S2S0提供模式選擇。

10、提供模式選擇。問題問題3.如何使如何使A/D開始開始(觸發(fā)方式約定觸發(fā)方式約定)?outportb(BASE12, 0 )l如果給如果給PCL812PG的的A/D轉(zhuǎn)換產(chǎn)生一個觸發(fā)脈沖,轉(zhuǎn)換產(chǎn)生一個觸發(fā)脈沖,只要向這個軟件觸發(fā)寄存器寫一個任意值,然后只要向這個軟件觸發(fā)寄存器寫一個任意值,然后A/D轉(zhuǎn)換器將會被觸發(fā);轉(zhuǎn)換器將會被觸發(fā);l軟件觸發(fā)寄存器軟件觸發(fā)寄存器l地址:地址:Base12l屬性:只寫屬性:只寫問題問題4. 如何實(shí)現(xiàn)觸發(fā),使如何實(shí)現(xiàn)觸發(fā),使A/D轉(zhuǎn)換器開始工作?轉(zhuǎn)換器開始工作?任意值任意值Data ReaDY說明:說明:l地址:地址:Base+4 and Base+5lAD11AD

11、0:A/D轉(zhuǎn)換完成后的數(shù)據(jù)轉(zhuǎn)換完成后的數(shù)據(jù)。lDRDY:轉(zhuǎn)換完成標(biāo)志位。:轉(zhuǎn)換完成標(biāo)志位。1:A/D數(shù)據(jù)沒有準(zhǔn)備好;數(shù)據(jù)沒有準(zhǔn)備好;0:A/D轉(zhuǎn)換完成。轉(zhuǎn)換完成。Base+4D7D6D5D4D3D2D1D0低字節(jié)數(shù)據(jù)低字節(jié)數(shù)據(jù)AD7AD6AD5AD4AD3AD2AD1AD0Base+5D7D6D5D4D3D2D1D0高字節(jié)數(shù)據(jù)高字節(jié)數(shù)據(jù)000DRDYAD11AD10AD9AD8問題問題5. 如何知道如何知道A/D轉(zhuǎn)換轉(zhuǎn)換12bits已完成?已完成?Base+4D7D6D5D4D3D2D1D0低字節(jié)低字節(jié)A/D7A/D6A/D5A/D4A/D3A/D2A/D1A/D0Base+5D7D6D5D4

12、D3D2D1D0高字節(jié)高字節(jié)000DRDYA/D11A/D10A/D9 A/D8地址:地址:base5(高字節(jié))(高字節(jié))AD11AD8 base4(低字節(jié))(低字節(jié)) AD7AD0注意注意:讀取讀取A/D低字節(jié)寄存器(低字節(jié)寄存器(base+4)后,后,DRDY被重置為被重置為1。故必須故必須先讀先讀高字節(jié),高字節(jié),再讀再讀低字節(jié)。低字節(jié)。例:例:Hbyte=inportb(Base+5) Lbyte=inportb(Base+4)問題問題6. 如何讀取如何讀取A/D轉(zhuǎn)換完成后的數(shù)據(jù)?轉(zhuǎn)換完成后的數(shù)據(jù)?如何將高字節(jié)和低字節(jié)拼裝成一個 12位二進(jìn)制數(shù)?解決:解決:將高字節(jié)左移將高字節(jié)左移8位后

13、,與低字節(jié)相加。位后,與低字節(jié)相加。 例:例:temp=Hbyte8 +Lbyte(AD11AD8AD7AD0)問題7:如何用讀入的12位數(shù)據(jù)表示-10V, +10V 區(qū)間十進(jìn)制電壓值?轉(zhuǎn)換范圍轉(zhuǎn)換范圍(量程量程) 已設(shè)置為已設(shè)置為10V。12位二進(jìn)制數(shù)位二進(jìn)制數(shù)04095(=212-1)inputDataInportb(Base+5)&0 x0F8 + inportb(Base+4)V_olt=(inputData-2047)*20.0/4095V_olt=inputData*20.0/4095- -10.012位A/D的量化1111 1111 1111 =40950000 0000

14、 0000 = 00111 1111 1111 =2047 0000 0000 0001 = 11111 1111 1110 =4094umaxumin+ +10V- -10V10V0V0V5V0.002442Vq=( umax-umin)/ 2n-10.004884V1.選擇選擇A/D通道,通過多路轉(zhuǎn)換控制寄存器通道,通過多路轉(zhuǎn)換控制寄存器(Base+10);2.確定增益,通過增益控制寄存器確定增益,通過增益控制寄存器(Base+9);3.選擇工作模式,通過模式控制寄存器選擇工作模式,通過模式控制寄存器(Base+11);4.啟動軟件觸發(fā),通過軟件觸發(fā)寄存器啟動軟件觸發(fā),通過軟件觸發(fā)寄存器(

15、Base+12) ;5.通過判斷通過判斷DRDY(Base+5,5),等待,等待A/D完成;完成;6.從數(shù)據(jù)寄存器從數(shù)據(jù)寄存器(Base+5)(base+4)中讀數(shù)據(jù)中讀數(shù)據(jù)(inportb),先讀先讀高高字節(jié),字節(jié),再讀低再讀低字節(jié)字節(jié) 。7.將整數(shù)值轉(zhuǎn)換成模擬電壓值,用作計(jì)算機(jī)顯示。將整數(shù)值轉(zhuǎn)換成模擬電壓值,用作計(jì)算機(jī)顯示。譯碼譯碼A/D轉(zhuǎn)換轉(zhuǎn)換A/D初始化初始化軟件觸發(fā)方式的A/D流程圖選擇通道選擇通道設(shè)置增益設(shè)置增益設(shè)置觸發(fā)模式設(shè)置觸發(fā)模式觸發(fā)觸發(fā)A/D轉(zhuǎn)換轉(zhuǎn)換轉(zhuǎn)換完成?轉(zhuǎn)換完成?讀取讀取A/D寄存器數(shù)據(jù)寄存器數(shù)據(jù)拼接成拼接成12位二進(jìn)制碼位二進(jìn)制碼YNbase+10, channel

16、base+9, gainbase+11, 1base+12, 1DRDY=0?base+5, base+4Hbyte8)&0 x0f;Lbyte=out&0 xff;out =Outputdata*4095/10scanf(“%f”,&Outputdata)用用12位二進(jìn)制編碼表示位二進(jìn)制編碼表示n/N1 23 45 67 89 1011 1213 1415 1617 1819 20A/D 0A/D 1A/D 2A/D 3A/D 4A/D 5A/D 6A/D 7A/D 8A/D 9A.GNDA.GNDA.GNDA.GNDA.GNDA.GNDA.GNDA.GNDA.GND

17、A.GNDCN1模擬量單端輸入模擬量單端輸入1 23 45 67 89 1011 1213 1415 1617 1819 20A/D 10A/D 11A/D 12A/D 13A/D 14A/D 15D/A 1D/A 2V.REF1V.REF2A.GNDA.GNDA.GNDA.GNDA.GNDA.GNDA.GNDA.GNDA.GNDA.GNDCN2模擬量輸入與輸出模擬量輸入與輸出在關(guān)機(jī)狀態(tài)下接線!在關(guān)機(jī)狀態(tài)下接線!輸入輸入A/D通道的電通道的電壓嚴(yán)禁超出壓嚴(yán)禁超出10V!訓(xùn)練接線圖訓(xùn)練接線圖在關(guān)機(jī)狀態(tài)下接線!在關(guān)機(jī)狀態(tài)下接線!輸出輸出D/A通道嚴(yán)禁短通道嚴(yán)禁短路路接采集卡接采集卡CN2接信號發(fā)生

18、器或接信號發(fā)生器或直流穩(wěn)壓電源直流穩(wěn)壓電源接示接示波器波器ABB1B2B3B4B5B6B7B8B9B10B11B12B13B 14B15B16B17B18B20B19A1A2A3A4A5A6A7A8A9A10A11A12A13A14A15A16A17A18A20A19C1C20C2C21C3C22C4C23C5C24C6C25C7C26C8C27C9C28C29C10C11C30C12C31C13C32C14C33C15C34C16C35C17C36C18C37C19AD0AD8AD1AD9AD2AD10AD3AD11AD4AD12AD5AD13AD6AD14AD7AD15A.GNDA.GND

19、A.GNDA.GNDV.REFDA1Exterf2+12VDA2A.GNDGATED.GNDGATECOUT0N/CExtTrgN/CN/CExtCLK+5VExterf11192037接信號發(fā)生器或接信號發(fā)生器或直流穩(wěn)壓電源直流穩(wěn)壓電源接示接示波器波器在關(guān)機(jī)狀態(tài)下接線!在關(guān)機(jī)狀態(tài)下接線!輸入輸入A/D通道的電壓嚴(yán)通道的電壓嚴(yán)禁超出禁超出10V!在關(guān)機(jī)狀態(tài)下接線!在關(guān)機(jī)狀態(tài)下接線!輸出輸出D/A通道嚴(yán)禁短通道嚴(yán)禁短路路1.模擬量輸出通道模擬量輸出通道D/A該程序有以下功能:該程序有以下功能:將一個由鍵盤輸入的將一個由鍵盤輸入的010之間的十進(jìn)制數(shù)字值轉(zhuǎn)換成之間的十進(jìn)制數(shù)字值轉(zhuǎn)換成010V的模擬

20、直流電壓;的模擬直流電壓;產(chǎn)生一個方波信號,周期產(chǎn)生一個方波信號,周期1ms5ms可調(diào),幅值可調(diào),幅值010V可調(diào);可調(diào);產(chǎn)生一個正弦波信號,周期和幅值可調(diào);產(chǎn)生一個正弦波信號,周期和幅值可調(diào);這三種信號均可經(jīng)由這三種信號均可經(jīng)由1(2)號號D/A通道輸出。這樣,工控機(jī)和采集卡通道輸出。這樣,工控機(jī)和采集卡共同構(gòu)成了一個信號發(fā)生器。演示中可以用示波器觀察上述波形。共同構(gòu)成了一個信號發(fā)生器。演示中可以用示波器觀察上述波形。在在Turbo C環(huán)境下,單步運(yùn)行程序環(huán)境下,單步運(yùn)行程序DA_ONE.C(源程序見附錄(源程序見附錄6),),該程序?qū)⒁粋€直流電壓信號輸出,電壓值由鍵盤鍵入。程序運(yùn)行中,該程

21、序?qū)⒁粋€直流電壓信號輸出,電壓值由鍵盤鍵入。程序運(yùn)行中,利用利用“watch”區(qū)域觀察有關(guān)變量的值,確認(rèn)并記錄程序中的關(guān)鍵語區(qū)域觀察有關(guān)變量的值,確認(rèn)并記錄程序中的關(guān)鍵語句及其作用。注意對采集卡各端口的尋址和數(shù)據(jù)格式。句及其作用。注意對采集卡各端口的尋址和數(shù)據(jù)格式。 2.2.模擬量輸入通道模擬量輸入通道A/DA/D該程序可將以下三種信號經(jīng)由該程序可將以下三種信號經(jīng)由1010號號A/DA/D通道采入計(jì)算機(jī),在顯示器上顯通道采入計(jì)算機(jī),在顯示器上顯示:示:0010V10V的直流電壓的直流電壓正弦波信號正弦波信號 頻率不能太大頻率不能太大方波信號方波信號這相當(dāng)于一個數(shù)字示波器。演示中可以用信號發(fā)生器

22、作為信號源,也可這相當(dāng)于一個數(shù)字示波器。演示中可以用信號發(fā)生器作為信號源,也可以將演示程序以將演示程序D/AD/A部分所產(chǎn)生的信號作為信號源??梢允静ㄆ魍瑫r部分所產(chǎn)生的信號作為信號源??梢允静ㄆ魍瑫r測量被轉(zhuǎn)換的信號。測量被轉(zhuǎn)換的信號。在在Turbo CTurbo C環(huán)境下,單步運(yùn)行程序環(huán)境下,單步運(yùn)行程序AD_ONE.CAD_ONE.C(源程序見附錄(源程序見附錄6 6),該程),該程序?qū)⒁粋€直流電壓信號采入計(jì)算機(jī),以數(shù)字形式顯示,這相當(dāng)于一個數(shù)序?qū)⒁粋€直流電壓信號采入計(jì)算機(jī),以數(shù)字形式顯示,這相當(dāng)于一個數(shù)字電壓表。程序運(yùn)行中,利用字電壓表。程序運(yùn)行中,利用“watch”watch”區(qū)域觀察有關(guān)變量的值,確認(rèn)區(qū)域觀察有關(guān)變量的值,確認(rèn)程序中的關(guān)鍵語句及其作用,作記錄。注意對采集卡端口的尋址。程序中的關(guān)鍵語句及其作用,作記錄。注意對采集卡端口的尋址。#define BASS_ADDRESS 0 x220int Channel=10;main() unsigned short int DRDY; int hbyte,lbyte; float t

溫馨提示

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

評論

0/150

提交評論