freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于單片機控制直流電機調(diào)速系統(tǒng)設(shè)計正文-預(yù)覽頁

2024-12-14 14:58 上一頁面

下一頁面
 

【正文】 線 8 個中斷向量源 三個 16 位定時器 /計數(shù)器 三級加密程序存儲器 全雙工 UART 串行通道 智能儀器綜合設(shè)計用紙 9 (二)、 AT89S52 各引腳功能介紹: 圖 VCC: AT89S52 電源正端輸入,接 +5V。 RESET: AT89S52 的重置引腳,高電平動作,當(dāng)要對晶片重置時,只要對此引腳電平提升至高電平并保持兩個機器周期以上的時間, AT89S51 便能完成系統(tǒng)重置的各項動作,使得內(nèi)部特 殊功能寄存器之內(nèi)容均被設(shè)成已知狀態(tài),并且至地址 0000H 處開始讀入程序代碼而執(zhí)行程序。此外,在將程序代碼燒錄至 8751內(nèi)部 EPROM 時,可以利用此引腳來輸入 21V 的燒錄高壓( Vpp)。此外在燒錄 8751 程序代碼時,此引腳會被當(dāng)成程序規(guī)劃的特殊功能來使用。其他三個 I/O 端口( P P P3)則不具有 此電路組態(tài),而是內(nèi)部有一提升電路, P0 在當(dāng)做 I/O 用時可以推動 8 個 LS 的 TTL 負(fù)載。 P2除了當(dāng)做一般I/O 端口使用外,若是在 AT89S52 擴充外接程序存儲器或數(shù)據(jù)存儲器時,也提供地址總線的高字節(jié) A8~ A15,這個時候 P2 便不能當(dāng)做 I/O來使用了。 其引腳分配如下: : RXD,串行通信輸入。 : T0,計時計數(shù)器 0輸入。 RST:復(fù)位輸入。在平時, ALE 端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的 1/6。此時, ALE 只有在執(zhí)行 MOVX, MOVC 指令是 ALE 才起作用。在由外部程序存儲器取指期間,每個機器周期兩次 /PSEN 有效。在 FLASH編程期間,此引腳也用于施加 12V 編程電源( VPP)。 PWM 的基本原理 : PWM 是通過控制固定電壓的直流電源開關(guān)頻率,改變負(fù)載兩端的電壓,從而達(dá)到控制要求的一種電壓調(diào)整方法。如圖 所示: 圖 PWM方波 設(shè)電機始終接通電源時,電機轉(zhuǎn)速最大為 Vmax,設(shè)占空比為 D= t1 / T,則電機的平均速度為 Va = Vmax * D,其中 Va 指的是電機的平均速度; Vmax 是指電機在全通電時的最大速度; D = t1 / T 是指占空比。其接口電路是把所有顯示器的 8 個筆劃段 ah 同名端連在一起,而每一個顯示器的公共極COM 是 各自獨立地受 I/O 線控制。在按鍵數(shù)量較多的場合,矩陣式鍵盤比獨立式鍵盤要節(jié)省很多的 I/O 口。 4. 高度的靈活性和低成本:首先,通過使用覆蓋距 離不同,功能不同的 Zigbee 網(wǎng)絡(luò)節(jié)點,以及其它非 Zigbee 系統(tǒng)的低成本的無線收發(fā)模塊,建立起一個 Zigbee 局部自動化控制網(wǎng),(這個網(wǎng)絡(luò)可以是星型,樹狀,網(wǎng)狀及其共同組成的復(fù)合網(wǎng)結(jié)構(gòu))再通過互聯(lián)網(wǎng)或移動網(wǎng)與遠(yuǎn)端的計算機相連,從而實現(xiàn)低成本,高效率的工業(yè)自動化遙測遙控; 智能儀器綜合設(shè)計用紙 15 轉(zhuǎn)動源模塊 圖 轉(zhuǎn)動源模塊 霍爾效應(yīng)是磁電效應(yīng)的一種,利用霍爾效應(yīng) 在電機上安裝磁片,而將霍爾集成片安裝在固定軸上,通過對脈沖的計數(shù)進(jìn)行電機速度的檢測 , 表達(dá)式 為 UH= KHIB,當(dāng)被測圓盤上裝上 N只磁性體時,轉(zhuǎn)盤每 轉(zhuǎn)一周磁場變化 N 次,每轉(zhuǎn)一周霍爾電勢就同頻率相應(yīng)變化,輸出電勢通過放大、整形和計數(shù)電路就可以測出被測旋轉(zhuǎn)物的轉(zhuǎn)速。②用 C語言或匯編語言創(chuàng)建源程序。 編程語言簡介 本設(shè)計采用 C語言進(jìn)行編程。③省去了人工分配單片機資源(包括寄存器、 RAM 等)的工作。 C語言較匯編語言的不足之處就是使用 C 語言寫出來的代碼會比用匯編語言占用的空間大 5%~ 20%,所以執(zhí)行起來效率就不及匯編語言。主程序主程序是一個循環(huán)程序,其主要思路是由單片機 口生數(shù)據(jù)送到 PWM信號發(fā)生電路,然后用 PID 算法輸出控制系數(shù)給 PWM 發(fā)生電路改變波形的占空比進(jìn)而控制電機的轉(zhuǎn)速。 TMOD=0x21。TL0=0X33。 TR1=1。amp。 state_flag=~state_flag。en_1 =0。 a=1。TR0=0。t1=0。 } } if(key1==1amp。key3==1amp。 set_count+=1。key2==1amp。state_flag==0) { while(key3==0)。 } else display_num4(stop_count)。amp。stop_count=run_count/2。如果系統(tǒng)處于設(shè)置模式,則關(guān)閉定時器中斷和外部中斷,同時初始化部分變量 , KEY2 為按鍵加 , KEY3 為按鍵減 。//計算輸出量 if(un 400)un = 400。 //更新誤差 wide += un/4。 ( 3) 由于增量式 PID 輸出的是控制量增量,如果計算機出現(xiàn)故障,誤動作影響較小,而執(zhí)行機構(gòu)本身有記憶功能,可仍保持原位,不會嚴(yán)重影響系統(tǒng)的工作,而位置式的輸出直接對應(yīng)對象的輸出,因此對系統(tǒng)影響較大。這種方法最大優(yōu)點就是整定參數(shù)時不依賴對 象的數(shù)學(xué)模型,簡單易行。 for(i=0。i++) display_num4(stop_count)。i++) for(j=0。 for(i=0。 //段顯 switch(num1) { case 1: P2=0x01。 case 3: P2=0x04。 default: break。 智能儀器綜合設(shè)計用紙 23 if(qian==0)qian=11。amp。 if(qian==11amp。shi==0)shi=11。 } : void int0() interrupt 0 //外部中斷 0 用于電機轉(zhuǎn)速測量 { EX0=0。a39。 TH0=0XFF。 if(t2==1000) //用于確定 PWM 的周期 , t2 乘以定時器的中斷周期即為 PWM 的周期 {PWM=1。t1=0。在下位機的主函數(shù)中設(shè)置 SCON=0x40 及 PCON=0x80,所以串行口工作于方式 1 且波特率倍增位 SMOD=1,為波特率可變的 8位異步通信接口。 T1 溢出率。下位機中 T1 設(shè)置的計數(shù)初值分別是 TL1=0xfa 和TH1=0xfa。其中字節(jié)總數(shù)端口,我們接收 8位數(shù)據(jù)自然輸入一個常量 課程設(shè)計所要使用的是異步通信,在異步通信中,數(shù)據(jù)通常以字符或字節(jié)為單位組成字符幀傳送。正常情況下,發(fā)送線為高電平,每當(dāng)接收端檢測到傳輸智能儀器綜合設(shè)計用紙 26 線上檢測到發(fā)送過來的低電平就知道發(fā)送端已經(jīng)開始發(fā)送數(shù)據(jù);當(dāng)接收端接收到字符幀中的停止位時,就確定發(fā)送完畢。 另外,我們需要用兩個開關(guān)按鈕指示是否打開串口和接收數(shù)據(jù),實現(xiàn)以上要求,需要兩個條件結(jié)構(gòu)的嵌套。該函數(shù)拆分字符串,通過匹配之前的子字符串和匹配+剩余字符串返回剩余的兩個字符串。 /指數(shù)字符串至數(shù)值轉(zhuǎn)換 從偏移量位置開始,使字符串中的下列字符: 0加號、減號、 e、 E、小數(shù)點(通常是句點)解析為工程、科學(xué)或分?jǐn)?shù)格式的浮點數(shù),通過數(shù)字返回。后來因為設(shè)置轉(zhuǎn)速改變的原因,導(dǎo)致波形圖不能顯示的問題,后來通過更改 Y標(biāo)尺幅值的大小得到解決。 經(jīng)過 3 個星期 的課程設(shè)計,留給我印象最深的是要設(shè)計一個成功的電路,必須要有要有扎實的理論基礎(chǔ),還要有堅持不懈的精神。 本次的課程設(shè)計 直流電機轉(zhuǎn)速測量與控制系統(tǒng)的設(shè)計 中,是分組分工 進(jìn)行。實驗中連線基本按圖連接,需要注意連線是否有損壞的而不能導(dǎo)通,以及多位連線的順序。課題最終的完成依賴與大家的努力,上位機和串口難度相當(dāng)之大也是課題的難點。 智能儀器綜合設(shè)計用紙 33 陳有淦: 在本次課程設(shè)計中,我主要負(fù)責(zé)的部分是上位機。 上位機部分需要用到的主要函數(shù)有: 配置串口 此函數(shù)主要的作用是 使 VISA 資源名稱指定的串口按特定設(shè)置初始化 。波特率= 2^SMOD/32據(jù)此可計算溢出率和波特率。 讀取 這個函數(shù)的作用是 從 VISA 資源名稱指定的設(shè)備或接口中讀取指定數(shù)量的字節(jié),并使智能儀器綜合設(shè)計用紙 34 數(shù)據(jù)返回至讀取緩沖區(qū) 。異步通信通過規(guī)定字符幀格式來協(xié)調(diào)發(fā)送端和接收端的數(shù)據(jù)發(fā)送和接收。 解 決的辦法是使用 Bytes at Port這個串口的屬性節(jié)點 ,在 VISASerialadvance 下 ,也可以在 VISA 資源線上右鍵 創(chuàng)建 屬性節(jié)點 串口設(shè)置 Bytes at Port, Bytes at Port 這個屬性節(jié)點讀取當(dāng)前串口緩沖區(qū)有 多少 字節(jié)數(shù) ,然后將它的輸出連接到 VISA 讀取 的 讀取字節(jié)數(shù) 這個輸入端上即可 ,這樣當(dāng)前緩沖區(qū)中有多少個字節(jié)就讀回多少個 ,不會有任何等待。在字符串中搜索 /拆分搜索字符串 /字符中指定的字符串或字符。在搜索字符串 /字符輸入端接入字符串常量 F 即可。剛開始遇到串口線不能使用的問題,所以我們只能接一根串口轉(zhuǎn) USB 線。 圖 3 轉(zhuǎn)速為 1000 的監(jiān)控圖像 智能儀器綜合設(shè)計用紙 38 圖 4 轉(zhuǎn)速為 2020 的監(jiān)控圖像 圖 5 轉(zhuǎn)速為 2500 的監(jiān)控圖像 智能儀器綜合設(shè)計用紙 39 圖 6 轉(zhuǎn)速為 3000 的監(jiān)控圖像 圖 7 轉(zhuǎn)速為 3400 的監(jiān)控圖像 智能儀器綜合設(shè)計用紙 40 孟國飛: 在 本次設(shè)計, 我主要負(fù)責(zé)的是 C 語言的編寫。當(dāng)然在本次設(shè) 計中還有需要改進(jìn)和完善的地方,比如可以進(jìn)一步完善系統(tǒng)的故障檢測和保護(hù),使故障檢測更加全面和高效,還可以設(shè)計一個 UPS 電源,防止在斷電的情況下造成系統(tǒng)損害,保證生產(chǎn)的連續(xù)運行。 這個設(shè)計的幾大模塊比較明確,在編寫程序時,我選擇先編寫出每一個模塊,讓每一個模塊實現(xiàn)其基本的功能,然后再逐步合并模塊,來實現(xiàn)設(shè)計的要求。 PID 的參數(shù)是通過試測法確定的。 本次實驗最重 要的困難就是串口通信和 C 語言的設(shè)計,設(shè)計過程中遇到了很多困難,比如監(jiān)測顯示中老是出現(xiàn)亂碼,導(dǎo)致前面的波形圖躍變得很厲害,這是 C 代碼程序部分出現(xiàn)了問題,經(jīng)過不斷的改進(jìn),終于發(fā)現(xiàn)了問題的所在,經(jīng)過修改后,沒出現(xiàn)亂碼,轉(zhuǎn)速很快就調(diào)節(jié)到了預(yù)設(shè)的值。 這次的課程設(shè)計終于順利完成了,在設(shè)計中遇到了很多編程問題,最后在 老師的辛勤指導(dǎo)下,終于迎刃而解。 定義位變量 sbit key1=P1^0。 //脈寬計數(shù) uint t1=0。 bit a=2。 uint set_count=100。 int en=0,en_1=0,en_2=0。 void delay1_ms(uint time)。 void main() 主函數(shù) { P1=0x00。 TL1=0xfa。//計數(shù)器 0 賦初值 ES=0。TR0=1。key2==1amp。 if(state_flag==1) { 智能儀器綜合設(shè)計用紙 45 EX0=1。en_2 =0。 //wide = set_count。 run_count=0。t2=0。amp。amp。 if(set_count300) set_count=100。amp。 delay1(20)。 } while(key1==1amp。key3==1amp。 run_count=0。//計算輸出量 if(un 400)un = 400。 //更新誤差 wide += un/4。 for(i=0。i++) display_num4(stop_count)。i++) for(j=0。 for(i=0。 //段顯 switch(num1) { case 1: P2=0x01。 case 3: P2=0x04。 default: break。 if(qian==0)qian=11。amp。 if(qian==11amp。shi==0)shi=11。 } void int0() interrupt 0 //外部中斷 0 用于電機轉(zhuǎn)速測量 { EX0=0。a39。 TH0=0XFF。 if(t2==1000) //用于確定 PWM 的周期 , t2 乘以定時器的中斷周期即為 PWM 的周期 智能儀器綜合設(shè)計用紙 49 {PWM=1。t1=
點擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1