找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

帖子
查看: 8059|回復: 3
打印 上一主題 下一主題
收起左側(cè)

[求助]單片機如何控制電機轉(zhuǎn)動的角度?

[復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:10918 發(fā)表于 2009-4-9 16:48 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
我現(xiàn)在在學這方面的知識,關(guān)于控制電機正反轉(zhuǎn)還有速度的資料都能找得到,但是控制它角度還不知道,請哪位大俠指點一下,
不勝感激!
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發(fā)
ID:10920 發(fā)表于 2009-4-9 17:34 | 只看該作者
我也對這個問題發(fā)愁, 我最近這在研究這個,有高手能幫助一下嗎?
回復

使用道具 舉報

板凳
ID:6481 發(fā)表于 2009-4-9 19:05 | 只看該作者

知道光敏電阻的原理吧 有光照 和沒光照在上面 它的電阻值是不一樣的
  在碼盤上安裝個紅外對管 
    自己做輪子的時候在上面 打孔 位置調(diào)整好 
   這些資料你應(yīng)該都有吧
 那么  把輸出腳 接 單片機的 外部中斷
  每個低電平的時候  就觸發(fā)一次中斷
在中斷程序里 計數(shù)變量 count 加1
 那么 在主程序中 當 碰到障礙要轉(zhuǎn)彎時 給電機設(shè)置好 脈沖
然后 設(shè)置標志位 為 SETB F0 ; F0 為1
再給 count 給初值比如 20
然后就 JB F0 $  ;為1就等待
那么在中斷程序里面 你用個DJNZ COUNT EXIT
判斷碼盤是位檢測到20次中斷  檢測到20次了
然后 清標志位
然后EXIT
這個值只是個假想值 實際你要根據(jù)你的電源 機械部分 等 做調(diào)整 就可以 實現(xiàn)小車 90度 180度 360 度 

當然另外還有種方法 也用中斷 不過 是用定時器T0 或者T1
T0 定時 50MS 時溢出  也要設(shè)置一個 計數(shù)值 COUNT
在主程序中 當 碰到障礙要轉(zhuǎn)彎時 給電機設(shè)置好 脈沖
然后 設(shè)置標志位 為 1   SETB F0 
然后 給count  給初值 20
然后就 JB F0 $  ;為1等待
在T0或者T1的中斷程序里面 你用個DJNZ COUNT EXIT
 這就是說是否轉(zhuǎn)了1秒了  轉(zhuǎn)完了 清標志位 EXIT
  但是這個方法有個缺點 由于機械部分 和電源 的影響 并不能保證每次轉(zhuǎn)的角度是精確的
 比如你剛沖滿電 他1秒能轉(zhuǎn)180度  但是當用了沒有多少電了 它1秒只給你轉(zhuǎn)90度
推薦還是用第一種
  都是些很基礎(chǔ)的知識 資料網(wǎng)上肯定有
我用通俗的解釋了
如果實在還是不懂 去看下書上的 中斷 定時 指令這些  
 

回復

使用道具 舉報

地板
ID:606 發(fā)表于 2009-4-11 11:45 | 只看該作者
好人真多
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表