如何實現(xiàn)28BYJ-48步進(jìn)電機(jī)遷移轉(zhuǎn)變精度及深化剖析,相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。
為如皋等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計制作服務(wù),及如皋網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為網(wǎng)站制作、成都網(wǎng)站建設(shè)、如皋網(wǎng)站設(shè)計,以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!
轉(zhuǎn)是轉(zhuǎn)了,然則不是覺得有點不太對勁呢?太慢了?別急,我們持續(xù)。依據(jù)本章掃尾解說的道理,八拍形式時,步進(jìn)電機(jī)轉(zhuǎn)過一圈是需求 64 個節(jié)奏,而我們程序中是每一個節(jié)奏繼續(xù) 2ms,那么轉(zhuǎn)一圈就應(yīng)當(dāng)是 128ms,即 1 秒鐘轉(zhuǎn) 7 圈多,可怎樣看上去它仿佛是 7 秒多才轉(zhuǎn)了一圈呢?
那么,是時分來理解“永磁式加速步進(jìn)電機(jī)”中這個“加速”的概念了。圖 9-7 是這個28BYJ-48 步進(jìn)電機(jī)的拆解圖,從圖中可以看到,位于最中間的誰人白色小齒輪才是步進(jìn)電機(jī)的轉(zhuǎn)子輸入,64 個節(jié)奏只是讓這個小齒輪轉(zhuǎn)了一圈,然后它帶動誰人淺藍(lán)色的大齒輪,這就是一級加速。人人看一下右上方的白色齒輪的構(gòu)造,除電機(jī)轉(zhuǎn)子和最終輸入軸外的 3 個傳動齒輪多是如許的構(gòu)造,由一層多齒和一層少齒組成,而每個齒輪都用本人的少齒層去驅(qū)動下一個齒輪的多齒層,如許每 2 個齒輪都組成一級加速,一共就有了 4 級加速,那么總的加速比是若干呢?即轉(zhuǎn)子要轉(zhuǎn)若干圈最終輸入軸才轉(zhuǎn)一圈呢?
圖 9-7 步進(jìn)電機(jī)外部齒輪表示圖
回頭看一下電機(jī)參數(shù)表中的加速比這個參數(shù)吧——1:64,轉(zhuǎn)子轉(zhuǎn) 64 圈,最終輸入軸才會轉(zhuǎn)一圈,也就是需求 64*64=4096 個節(jié)奏輸入軸才轉(zhuǎn)過一圈,2ms*4096=8192ms,8 秒多才轉(zhuǎn)一圈呢,是不是跟方才的試驗后果正好吻合了?4096 個節(jié)奏遷移轉(zhuǎn)變一圈,那么一個節(jié)奏遷移轉(zhuǎn)變的角度——步進(jìn)角度就是 360/4096,看一下表中的步進(jìn)角度參數(shù) 5.625/64,算一下就曉得這兩個值是相等的,一切都已吻合了。
關(guān)于根本的掌握道理本該到這里就全體完畢了,然則,我們愿望人人都能培育一種“理論是磨練真諦的獨一規(guī)范”的思想方法!回憶一下,步進(jìn)電機(jī)最大的特色是什么?準(zhǔn)確掌握遷移轉(zhuǎn)變量!那么我們是不是應(yīng)當(dāng)磨練一下它究竟是不是能準(zhǔn)確呢?準(zhǔn)確到什么水平呢?怎樣來磨練呢?讓它轉(zhuǎn)過 90 度,然后量一下準(zhǔn)禁絕?也行,然則假如它只差了 1 度乃至不到 1 度,你能精確丈量出來嗎?在沒有精細(xì)儀器的狀況很難。我們照樣讓它多轉(zhuǎn)幾個整圈,看看它最初停下的地位照樣不是本來的地位。對應(yīng)的,我們把程序修正一下,以便利掌握電機(jī)轉(zhuǎn)過恣意的圈數(shù)。
#include <reg52.h> void TurnMotor(unsigned long angle); void main(){ TurnMotor(360*25); //360 度*25,即 25 圈 while (1); } /* 軟件延時函數(shù),延時約 2ms */ void delay(){ unsigned int i = 200; while (i--); } /* 步進(jìn)電機(jī)遷移轉(zhuǎn)變函數(shù),angle-需轉(zhuǎn)過的角度 */ void TurnMotor(unsigned long angle){ unsigned char tmp; //暫時變量 unsigned char index = 0; //節(jié)奏輸入索引 unsigned long beats = 0; //所需節(jié)奏總數(shù) //步進(jìn)電機(jī)節(jié)奏對應(yīng)的 IO 掌握代碼 unsigned char code BeatCode[8] = { 0xE, 0xC, 0xD, 0x9, 0xB, 0x3, 0x7, 0x6 }; //盤算需求的節(jié)奏總數(shù),4096 拍對應(yīng)一圈 beats = (angle*4096) / 360; //判別 beats 不為 0 時履行輪回,然后自減 1 while (beats--){ tmp = P1; //用 tmp 把 P1 口以后值暫存 tmp = tmp & 0xF0; //用&操作清零低 4 位 tmp = tmp | BeatCode[index]; //用|操作把節(jié)奏代碼寫到低 4 位 P1 = tmp; //把低 4 位的節(jié)奏代碼和高 4 位的原值送回 P1 index++; //節(jié)奏輸入索引遞增 index = index & 0x07; //用&操作完成到 8 歸零 delay(); //延時 2ms,即 2ms 履行一拍 } P1 = P1 | 0x0F; //封閉電機(jī)一切的相 }
上述程序中,我們先編寫了一個掌握電機(jī)轉(zhuǎn)過指定角度的函數(shù),這個角度值由函數(shù)的方式參數(shù)給出,然后在主函數(shù)中就可以便利的經(jīng)過更改挪用時的實踐參數(shù)來掌握電機(jī)轉(zhuǎn)過恣意的角度了。我們用了 360*25,也就是 25 圈,當(dāng)然你也可以隨便改為其它的值,看看是什么后果。我們的程序會履行 25*8=200 秒的工夫,先記下輸入軸的初始地位,然后上電并耐煩等它履行終了,看一下,是不是有誤差?怎樣回事,哪兒出成績了,不是說能準(zhǔn)確掌握遷移轉(zhuǎn)變量嗎?
這個成績其實是出在了加速比上,再來看一下,廠家給出的加速比是 1:64,不論是哪個廠家消費的電機(jī),只需型號是 28BYJ-48,其標(biāo)稱的加速比就多是 1:64。但實踐上呢?經(jīng)由我們的拆解盤算發(fā)現(xiàn):真實精確的加速比并不是這個值 1:64,而是 1:63.684!得出這個數(shù)據(jù)的辦法也很復(fù)雜,實踐數(shù)一下每一個齒輪的齒數(shù),然后將各級加速比相乘,就可以得出后果了,實測的加速比為(32/9)*(22/11)*(26/9)*(31/10)≈63.684,從而得出實踐誤差為 0.0049,即約為百分之 0.5,轉(zhuǎn) 100 圈就會差出半圈,那么我們方才轉(zhuǎn)了 25 圈,是不是就差了八分之一圈了,也就是 45 度,看一下方才的誤差是 45 度吧。那么依照 1:63.684 的實踐加速比,可以得出轉(zhuǎn)過一圈所需求節(jié)奏數(shù)是 64*63.684≈4076。那么就把下面程序中電機(jī)驅(qū)動函數(shù)里的 4096 改成4076 再試一下吧。是不是看不出涓滴的誤差了?但實踐上誤差照樣存在的,由于下面的盤算后果多是約等得出的,實踐誤差大約是 0.000056,即萬分之 0.56,轉(zhuǎn)一萬圈才會差出半圈,曾經(jīng)可以疏忽不計了。
那么廠家的參數(shù)為什么會有誤差呢?豈非廠家不曉得嗎?要說明這個成績,我們得回到實踐使用中,步進(jìn)電機(jī)最平日的目標(biāo)是掌握目的轉(zhuǎn)過必定的角度,平日多是在 360 度之內(nèi)的,而這個 28BYJ-48 最后的設(shè)計目標(biāo)是用來掌握空調(diào)的扇葉的,扇葉的運動規(guī)模是不會超越 180度的,所以在這種使用場所下,廠商給出一個近似的整數(shù)加速比 1:64 曾經(jīng)足夠準(zhǔn)確了,這也是合情合理的。但是,正如我們的程序那樣,我們紛歧定是要用它來驅(qū)動空調(diào)扇葉,我們可以讓它遷移轉(zhuǎn)變許多圈來干其余,這個時分就需求更為準(zhǔn)確的數(shù)據(jù)了,這也是我們愿望同窗們都能理解并控制的,就是說我們要能本人“設(shè)計”零碎并處理個中發(fā)現(xiàn)的成績,而不要被所謂的“現(xiàn)成的計劃”限制住思緒。
看完上述內(nèi)容,你們掌握如何實現(xiàn)28BYJ-48步進(jìn)電機(jī)遷移轉(zhuǎn)變精度及深化剖析的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
網(wǎng)頁標(biāo)題:如何實現(xiàn)28BYJ-48步進(jìn)電機(jī)遷移轉(zhuǎn)變精度及深化剖析
URL地址:http://jinyejixie.com/article32/ghoppc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶體驗、建站公司、軟件開發(fā)、響應(yīng)式網(wǎng)站、網(wǎng)站營銷、網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)